@charset "UTF-8";
@import url("../assets/library/fontawesome/css/all.css");
@import url("../assets/library/fontawesome/fontawesome/fontawesome.css");
@import url("../assets/library/aos/aos.css");
@import url("../assets/library/swiper/swiper-bundle.min.css");
@import url("../assets/library/themify-icons/themify-icons.css");
@import url("../assets/library/select2/select2.min.css");
@import url("../assets/library/themifi/themify-icons.css");
@import url("../assets/library/gallery/lightgallery.min.css");
@import url("../assets/library/splitting/splitting.css");
@import url("../assets/library/fancybox/fancybox.css");
@import url("../assets/library/datetime/daterangepicker.css");
@import url("../assets/font/DMSans/stylesheet.css");
@import url("../assets/font/Libre/stylesheet.css");
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

.mona-content strong,
.mona-content b {
    font-weight: bold;
}

.mona-content em,
.mona-content i {
    font-style: italic;
}

.mona-content h1,
.mona-content h2,
.mona-content h3,
.mona-content h4,
.mona-content h5,
.mona-content h6 {
    line-height: 1.3;
    margin-bottom: 0.5em;
    margin-top: 0.6em;
}

.mona-content h1 {
    font-size: 1.7em;
}

.mona-content h2 {
    font-size: 1.6em;
}

.mona-content h3 {
    font-size: 1.25em;
}

.mona-content h4 {
    font-size: 1.125em;
}

.mona-content h5 {
    font-size: 1em;
}

.mona-content h6 {
    font-size: 0.85em;
}

.mona-content p {
    margin: 1em 0;
}

.mona-content ul,
.mona-content ol {
    margin: 1em 0;
    list-style-position: inside;
}

.mona-content ul ul,
.mona-content ul ol,
.mona-content ol ul,
.mona-content ol ol {
    margin-left: 1em;
}

.mona-content ul {
    list-style-type: disc;
}

.mona-content ol {
    list-style-type: decimal;
}

.mona-content ul ul,
.mona-content ol ul {
    list-style-type: circle;
}

.mona-content ol ol,
.mona-content ul ol {
    list-style-type: lower-latin;
}

.mona-content img,
.mona-content iframe {
    /* max-width: 100% !important; */
    height: auto;
}

.mona-content blockquote {
    background: #f9f9f9;
    border-left: 10px solid #ccc;
    margin: 1em 0;
    padding: 1em;
    quotes: "“" "”" "‘" "’";
}

.mona-content blockquote::before {
    color: #ccc;
    content: open-quote;
    font-size: 4em;
    line-height: 0.1em;
    margin-right: 0.25em;
    vertical-align: -0.4em;
}

.mona-content blockquote p {
    display: inline;
}

.mona-content table {
    border-collapse: collapse;
    max-width: 100%;
    margin: 1em 0;
    border: 1px solid #e1e1e1;
}

.mona-content table th,
.mona-content table td {
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    padding: 5px 10px;
    vertical-align: middle;
}

.mona-content .mona-youtube-wrap {
    position: relative;
    height: 0;
    padding-top: 56.25%;
}

.mona-content .mona-youtube-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mona-content .mona-table-wrap {
    overflow: auto;
}

:root {
    --size-hd: 10rem;
    --pd-sc: 10rem;
}

@media (max-width: 1200px) {
     :root {
        --pd-sc: 4rem;
        --radius: 0.8rem;
        --size-hd: 6rem;
    }
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

@media screen and (min-width: 2000px) {
    html {
        font-size: 100%;
    }
}

body {
    font-family: "DM Sans";
    font-size: 16px;
    line-height: 1.55;
    font-weight: 400;
    color: #121110;
    overflow: hidden auto;
}

@media screen and (min-width: 2000px) {
    body {
        font-size: 20px;
    }
}

a {
    text-decoration: none;
    color: inherit;
}

button,
select {
    border: none;
    outline: none;
    cursor: pointer;
    -webkit-appearance: none;
    cursor: pointer;
    font-family: "DM Sans", sans-serif;
}

button {
    padding: 0;
    background-color: transparent;
}

input,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: "DM Sans", sans-serif;
}

.main {
    min-height: 68vh;
    padding-top: var(--size-hd);
}

.container {
    width: 100%;
    max-width: 123rem;
    height: 100%;
    margin: 0 auto;
    padding: 0 1.5rem;
}

.over {
    overflow-x: auto;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
}

.over::-webkit-scrollbar {
    display: none;
}

.no-scroll {
    -ms-touch-action: none;
    touch-action: none;
    -webkit-overflow-scrolling: none;
    overflow: hidden;
    overscroll-behavior: none;
}

iframe {
    vertical-align: middle;
}

.load-item {
    display: none;
}

.show-hide-toggle {
    cursor: pointer;
}

img {
    max-width: 100%;
    border-radius: inherit;
    height: auto;
}

.global-title {
    max-width: 0;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}


/* Firefox */

input[type="number"] {
    -moz-appearance: textfield;
}

.row {
    --cg: 2.4rem;
    --rg: 2.4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 calc(var(--cg) / 2 * -1) calc(var(--rg) * -1);
}

.rows {
    --cg: 2.4rem;
    --rg: 2.4rem;
    margin: 0 calc(var(--cg) / 2 * -1);
}

.col {
    width: 100%;
    padding: 0 calc(var(--cg) / 2);
    margin-bottom: var(--rg);
}

.col-11 {
    width: calc(11/12 * 100%);
}

.col-10 {
    width: calc(10/12 * 100%);
}

.col-9 {
    width: calc(9/12 * 100%);
}

.col-8 {
    width: calc(8/12 * 100%);
}

.col-7 {
    width: calc(7/12 * 100%);
}

.col-6 {
    width: 50%;
}

.col-5 {
    width: calc(5/12 * 100%);
}

.col-4 {
    width: calc(4/12 * 100%);
}

.col-3 {
    width: calc(3/12 * 100%);
}

.col-2 {
    width: calc(2/12 * 100%);
}

.col-1 {
    width: calc(1/12 * 100%);
}

.col-5i {
    width: calc(100% / 5);
}

.col-4i {
    width: calc(100% / 4);
}

@-webkit-keyframes phoneRing {
    0% {
        -webkit-transform: rotate(0) scale(1) skew(1deg);
        transform: rotate(0) scale(1) skew(1deg);
    }
    10% {
        -webkit-transform: rotate(-25deg) scale(1) skew(1deg);
        transform: rotate(-25deg) scale(1) skew(1deg);
    }
    20% {
        -webkit-transform: rotate(25deg) scale(1) skew(1deg);
        transform: rotate(25deg) scale(1) skew(1deg);
    }
    30% {
        -webkit-transform: rotate(-25deg) scale(1) skew(1deg);
        transform: rotate(-25deg) scale(1) skew(1deg);
    }
    40% {
        -webkit-transform: rotate(25deg) scale(1) skew(1deg);
        transform: rotate(25deg) scale(1) skew(1deg);
    }
    50% {
        -webkit-transform: rotate(0) scale(1) skew(1deg);
        transform: rotate(0) scale(1) skew(1deg);
    }
    100% {
        -webkit-transform: rotate(0) scale(1) skew(1deg);
        transform: rotate(0) scale(1) skew(1deg);
    }
}

@keyframes phoneRing {
    0% {
        -webkit-transform: rotate(0) scale(1) skew(1deg);
        transform: rotate(0) scale(1) skew(1deg);
    }
    10% {
        -webkit-transform: rotate(-25deg) scale(1) skew(1deg);
        transform: rotate(-25deg) scale(1) skew(1deg);
    }
    20% {
        -webkit-transform: rotate(25deg) scale(1) skew(1deg);
        transform: rotate(25deg) scale(1) skew(1deg);
    }
    30% {
        -webkit-transform: rotate(-25deg) scale(1) skew(1deg);
        transform: rotate(-25deg) scale(1) skew(1deg);
    }
    40% {
        -webkit-transform: rotate(25deg) scale(1) skew(1deg);
        transform: rotate(25deg) scale(1) skew(1deg);
    }
    50% {
        -webkit-transform: rotate(0) scale(1) skew(1deg);
        transform: rotate(0) scale(1) skew(1deg);
    }
    100% {
        -webkit-transform: rotate(0) scale(1) skew(1deg);
        transform: rotate(0) scale(1) skew(1deg);
    }
}

@-webkit-keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

@-webkit-keyframes ZoomIn {
    0% {
        -webkit-transform: scale(0.95);
        transform: scale(0.95);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes ZoomIn {
    0% {
        -webkit-transform: scale(0.95);
        transform: scale(0.95);
        opacity: 0;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@-webkit-keyframes Spinner {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes Spinner {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@-webkit-keyframes BTT {
    0% {
        opacity: 0;
    }
    33% {
        opacity: 1;
    }
    66% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}

@keyframes BTT {
    0% {
        opacity: 0;
    }
    33% {
        opacity: 1;
    }
    66% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 20%, 0);
        transform: translate3d(0, 20%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 20%, 0);
        transform: translate3d(0, 20%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@-webkit-keyframes halo {
    from {
        -webkit-transform: translate(-50%, -50%) scale(0);
        transform: translate(-50%, -50%) scale(0);
    }
    to {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
    }
}

@keyframes halo {
    from {
        -webkit-transform: translate(-50%, -50%) scale(0);
        transform: translate(-50%, -50%) scale(0);
    }
    to {
        -webkit-transform: translate(-50%, -50%) scale(1);
        transform: translate(-50%, -50%) scale(1);
    }
}

@-webkit-keyframes float {
    0% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
    50% {
        -webkit-transform: translatey(-20px);
        transform: translatey(-20px);
    }
    100% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
}

@keyframes float {
    0% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
    50% {
        -webkit-transform: translatey(-20px);
        transform: translatey(-20px);
    }
    100% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
}

@-webkit-keyframes mirror {
    100% {
        -webkit-transform: translate3d(2000%, 0, 0) rotate(35deg);
        transform: translate3d(2000%, 0, 0) rotate(35deg);
    }
}

@keyframes mirror {
    100% {
        -webkit-transform: translate3d(2000%, 0, 0) rotate(35deg);
        transform: translate3d(2000%, 0, 0) rotate(35deg);
    }
}

@-webkit-keyframes DownUp {
    0% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
    50% {
        -webkit-transform: translatey(-10px);
        transform: translatey(-10px);
    }
    100% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
}

@keyframes DownUp {
    0% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
    50% {
        -webkit-transform: translatey(-10px);
        transform: translatey(-10px);
    }
    100% {
        -webkit-transform: translatey(0px);
        transform: translatey(0px);
    }
}

@-webkit-keyframes jelly {
    25% {
        -webkit-transform: scale(0.9, 1.1);
        transform: scale(0.9, 1.1);
    }
    50% {
        -webkit-transform: scale(1.1, 0.9);
        transform: scale(1.1, 0.9);
    }
    75% {
        -webkit-transform: scale(0.95, 1.05);
        transform: scale(0.95, 1.05);
    }
}

@keyframes jelly {
    25% {
        -webkit-transform: scale(0.9, 1.1);
        transform: scale(0.9, 1.1);
    }
    50% {
        -webkit-transform: scale(1.1, 0.9);
        transform: scale(1.1, 0.9);
    }
    75% {
        -webkit-transform: scale(0.95, 1.05);
        transform: scale(0.95, 1.05);
    }
}

@-webkit-keyframes jellyTranForm {
    25% {
        -webkit-transform: translate(-50%, -50%) scale(0.9, 1.1);
        transform: translate(-50%, -50%) scale(0.9, 1.1);
    }
    50% {
        -webkit-transform: translate(-50%, -50%) scale(1.1, 0.9);
        transform: translate(-50%, -50%) scale(1.1, 0.9);
    }
    75% {
        -webkit-transform: translate(-50%, -50%) scale(0.95, 1.05);
        transform: translate(-50%, -50%) scale(0.95, 1.05);
    }
}

@keyframes jellyTranForm {
    25% {
        -webkit-transform: translate(-50%, -50%) scale(0.9, 1.1);
        transform: translate(-50%, -50%) scale(0.9, 1.1);
    }
    50% {
        -webkit-transform: translate(-50%, -50%) scale(1.1, 0.9);
        transform: translate(-50%, -50%) scale(1.1, 0.9);
    }
    75% {
        -webkit-transform: translate(-50%, -50%) scale(0.95, 1.05);
        transform: translate(-50%, -50%) scale(0.95, 1.05);
    }
}

@-webkit-keyframes jittery {
    5%,
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    10% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    15% {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
    20% {
        -webkit-transform: scale(1.05) rotate(-5deg);
        transform: scale(1.05) rotate(-5deg);
    }
    25% {
        -webkit-transform: scale(1.05) rotate(5deg);
        transform: scale(1.05) rotate(5deg);
    }
    30% {
        -webkit-transform: scale(1.05) rotate(-3deg);
        transform: scale(1.05) rotate(-3deg);
    }
    35% {
        -webkit-transform: scale(1.05) rotate(2deg);
        transform: scale(1.05) rotate(2deg);
    }
    40% {
        -webkit-transform: scale(1.05) rotate(0);
        transform: scale(1.05) rotate(0);
    }
}

@keyframes jittery {
    5%,
    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    10% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    15% {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
    20% {
        -webkit-transform: scale(1.05) rotate(-5deg);
        transform: scale(1.05) rotate(-5deg);
    }
    25% {
        -webkit-transform: scale(1.05) rotate(5deg);
        transform: scale(1.05) rotate(5deg);
    }
    30% {
        -webkit-transform: scale(1.05) rotate(-3deg);
        transform: scale(1.05) rotate(-3deg);
    }
    35% {
        -webkit-transform: scale(1.05) rotate(2deg);
        transform: scale(1.05) rotate(2deg);
    }
    40% {
        -webkit-transform: scale(1.05) rotate(0);
        transform: scale(1.05) rotate(0);
    }
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    70% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes pulse {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    70% {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes grow {
    from {
        -webkit-transform: scale(0, 0);
        transform: scale(0, 0);
        opacity: 1;
    }
    to {
        -webkit-transform: scale(1.5, 1.5);
        transform: scale(1.5, 1.5);
        opacity: 0;
    }
}

@keyframes grow {
    from {
        -webkit-transform: scale(0, 0);
        transform: scale(0, 0);
        opacity: 1;
    }
    to {
        -webkit-transform: scale(1.5, 1.5);
        transform: scale(1.5, 1.5);
        opacity: 0;
    }
}

@-webkit-keyframes txt-focus {
    0% {
        -webkit-filter: blur(12px);
        filter: blur(12px);
        opacity: 0;
    }
    100% {
        -webkit-filter: blur(0px);
        filter: blur(0px);
        opacity: 1;
    }
}

@keyframes txt-focus {
    0% {
        -webkit-filter: blur(12px);
        filter: blur(12px);
        opacity: 0;
    }
    100% {
        -webkit-filter: blur(0px);
        filter: blur(0px);
        opacity: 1;
    }
}

@-webkit-keyframes MaskPlay {
    from {
        -webkit-mask-position: 0 0;
        mask-position: 0 0;
    }
    to {
        -webkit-mask-position: 100% 0;
        mask-position: 100% 0;
    }
}

@keyframes MaskPlay {
    from {
        -webkit-mask-position: 0 0;
        mask-position: 0 0;
    }
    to {
        -webkit-mask-position: 100% 0;
        mask-position: 100% 0;
    }
}

.back-to-top {
    width: 4rem;
    height: 4rem;
    border-radius: 0.6rem;
    background-color: #8a2784;
    -webkit-box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
    position: fixed;
    bottom: 6rem;
    right: 3rem;
    z-index: 7;
    -webkit-transform: translateX(3rem);
    transform: translateX(3rem);
    opacity: 0;
    -webkit-transition: 0.5s linear;
    transition: 0.5s linear;
    cursor: pointer;
    visibility: hidden;
    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: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .back-to-top {
        right: 1.5rem;
    }
}

.back-to-top.active {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
}

.back-to-top .triangle {
    display: block;
    width: 0;
    height: 0;
    z-index: 2;
    border: 8px solid transparent;
    border-bottom: 6px solid #fff;
    margin-top: -6px;
    border-radius: 5px;
}

.back-to-top .triangle:nth-child(1) {
    -webkit-animation: BTT 1.5s linear 0.6s infinite;
    animation: BTT 1.5s linear 0.6s infinite;
}

.back-to-top .triangle:nth-child(2) {
    -webkit-animation: BTT 1.5s linear 0.3s infinite;
    animation: BTT 1.5s linear 0.3s infinite;
}

.back-to-top .triangle:nth-child(3) {
    -webkit-animation: BTT 1.5s linear 0s infinite;
    animation: BTT 1.5s linear 0s infinite;
}

@media only screen and (min-width: 901px) {
    .back-to-top:hover {
        visibility: visible;
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

[data-aos="fade-up-cus"] {
    -webkit-transform: translate(0, 4rem);
    transform: translate(0, 4rem);
    opacity: 0;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
}

[data-aos="fade-up-cus"].aos-animate {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1;
}

[data-aos="fade-down-cus"] {
    -webkit-transform: translate(0, -4rem);
    transform: translate(0, -4rem);
    opacity: 0;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
}

[data-aos="fade-down-cus"].aos-animate {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1;
}

[data-aos="fade-left-cus"] {
    -webkit-transform: translate(4rem, 0);
    transform: translate(4rem, 0);
    opacity: 0;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
}

[data-aos="fade-left-cus"].aos-animate {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1;
}

[data-aos="fade-right-cus"] {
    -webkit-transform: translate(-4rem, 0);
    transform: translate(-4rem, 0);
    opacity: 0;
    -webkit-transition-property: opacity, -webkit-transform;
    transition-property: opacity, -webkit-transform;
    transition-property: transform, opacity;
    transition-property: transform, opacity, -webkit-transform;
}

[data-aos="fade-right-cus"].aos-animate {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1;
}

.hd-nav {
    margin-right: 1.2rem;
}

@media screen and (max-width: 1200px) {
    .hd-nav {
        display: none;
    }
}

.hd-nav .menu-nav {
    height: 100%;
}

.hd-nav .menu-nav>.menu-list {
    height: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -1rem;
}

.hd-nav .menu-nav>.menu-list>.menu-item {
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.hd-nav .menu-nav>.menu-list>.menu-item:last-child>.menu-list {
    left: initial;
    right: 0;
}

.hd-nav .menu-nav>.menu-list>.menu-item::before {
    content: "";
    position: absolute;
    bottom: 0;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    height: 0.2rem;
    background: #403d3a;
    width: 0;
    border-radius: 10rem;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
}

.hd-nav .menu-nav>.menu-list>.menu-item:hover:not(.dropdown)::before,
.hd-nav .menu-nav>.menu-list>.menu-item:has(.current-menu-item)::before {
    width: calc(100% - 2rem);
}

.hd-nav .menu-nav>.menu-list>.menu-item.dropdown:hover::before {
    width: 0;
}

.hd-nav .menu-nav>.menu-list>.menu-item:hover>a i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.hd-nav .menu-nav>.menu-list>.menu-item>.menu-link {
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #403d3a;
    padding: 0 1rem;
}

.hd-nav .menu-nav>.menu-list>.menu-item.current_page_item>a,
.hd-nav .menu-nav>.menu-list>.menu-item.current-menu-item>a,
.hd-nav .menu-nav>.menu-list>.menu-item.current_page_parent>a,
.hd-nav .menu-nav>.menu-list>.menu-item.current-menu-parent>a,
.hd-nav .menu-nav>.menu-list>.menu-item.current-post-parent>a {
    font-weight: 700;
}

.hd-nav .menu-nav>.menu-list>.menu-item.current_page_item::before,
.hd-nav .menu-nav>.menu-list>.menu-item.current-menu-item::before,
.hd-nav .menu-nav>.menu-list>.menu-item.current_page_parent::before,
.hd-nav .menu-nav>.menu-list>.menu-item.current-menu-parent::before,
.hd-nav .menu-nav>.menu-list>.menu-item.current-post-parent::before {
    width: calc(100% - 2rem);
}

.hd-nav .menu-nav>.menu-list>.menu-item>.menu-list {
    top: calc(100% + 1rem);
}

.hd-nav .menu-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.hd-nav .menu-item {
    position: relative;
    transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
}

.hd-nav .menu-item:hover>.menu-list {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.hd-nav .menu-item:hover>.menu-list>.menu-item.current_page_item>a,
.hd-nav .menu-item:hover>.menu-list>.menu-item.current-menu-item>a {
    color: #403d3a;
}

.hd-nav .menu-item .menu-link,
.hd-nav .menu-item a {
    transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
}

.hd-nav .menu-item .menu-link i,
.hd-nav .menu-item a i {
    transition: 0.2s ease-in-out;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -ms-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
}

.hd-nav .menu-item>.menu-link,
.hd-nav .menu-item>a {
    color: #403d3a;
    font-weight: 400;
    display: block;
    font-size: 1.8rem;
}

.hd-nav .menu-item>.menu-link>i,
.hd-nav .menu-item>a>i {
    display: none;
    font-weight: 600;
    margin-left: 0.4rem;
    font-size: 1.6rem;
    color: #403d3a;
}

.hd-nav .menu-item.dropdown>a>i {
    display: inline-block;
}

.hd-nav .menu-item>.menu-list {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 25rem;
    max-width: 28rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    background: white;
    -webkit-box-shadow: 0px 20px 24px -4px rgba(16, 24, 40, 0.08), 0px 8px 8px -4px rgba(16, 24, 40, 0.03);
    box-shadow: 0px 20px 24px -4px rgba(16, 24, 40, 0.08), 0px 8px 8px -4px rgba(16, 24, 40, 0.03);
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translate(0, -5px);
    transform: translate(0, -5px);
}

.hd-nav .menu-item>.menu-list>.menu-item {
    margin-left: 0;
    width: 100%;
}

.hd-nav .menu-item>.menu-list>.menu-item:hover::after {
    opacity: 1;
}

.hd-nav .menu-item>.menu-list>.menu-item:hover>.menu-link,
.hd-nav .menu-item>.menu-list>.menu-item:hover>a {
    color: #121110;
}

.hd-nav .menu-item>.menu-list>.menu-item:hover>.menu-link::after,
.hd-nav .menu-item>.menu-list>.menu-item:hover>a::after {
    height: 100%;
}

.hd-nav .menu-item>.menu-list>.menu-item>.menu-link,
.hd-nav .menu-item>.menu-list>.menu-item>a {
    padding: 0.8rem 1.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
}

.hd-nav .menu-item>.menu-list>.menu-item>.menu-link::after,
.hd-nav .menu-item>.menu-list>.menu-item>a::after {
    content: "";
    position: absolute;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    height: 0;
    background: #403d3a;
    width: 0.2rem;
    z-index: -1;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
    left: 0;
}

.hd-nav .menu-item>.menu-list>.menu-item>.menu-link>i,
.hd-nav .menu-item>.menu-list>.menu-item>a>i {
    -webkit-transform: rotate(-90deg) translate(5px, 0);
    transform: rotate(-90deg) translate(5px, 0);
    margin-top: 0.8rem;
    font-size: 1rem;
}

.hd-nav .menu-item>.menu-list>.menu-item>.menu-list {
    left: 100%;
}

.mobile-nav .menu-nav>.menu-list>.menu-item.current_page_item>a,
.mobile-nav .menu-nav>.menu-list>.menu-item.current-menu-item>a,
.mobile-nav .menu-nav>.menu-list>.menu-item.current_page_parent>a,
.mobile-nav .menu-nav>.menu-list>.menu-item.current-menu-parent>a,
.mobile-nav .menu-nav>.menu-list>.menu-item.current-post-parent>a {
    color: #8a2784;
    padding-left: 3rem;
}

.mobile-nav .menu-nav>.menu-list>.menu-item.current_page_item>a::after,
.mobile-nav .menu-nav>.menu-list>.menu-item.current-menu-item>a::after,
.mobile-nav .menu-nav>.menu-list>.menu-item.current_page_parent>a::after,
.mobile-nav .menu-nav>.menu-list>.menu-item.current-menu-parent>a::after,
.mobile-nav .menu-nav>.menu-list>.menu-item.current-post-parent>a::after {
    opacity: 1;
}

.mobile-nav .menu-nav>.menu-list>.menu-item:has(.current-menu-item)>a {
    color: #8a2784;
}

.mobile-nav .menu-nav>.menu-list>.menu-item>a {
    padding: 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #303030;
    font-size: 1.4rem;
    font-weight: 600;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    position: relative;
}

.mobile-nav .menu-nav>.menu-list>.menu-item>a::before {
    display: none;
}

.mobile-nav .menu-item.dropdown>a>i {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.mobile-nav .menu-item.active>a>i {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.mobile-nav .menu-item a {
    position: relative;
}

.mobile-nav .menu-item a i {
    width: 2rem;
    height: 2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    display: none;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
}

.mobile-nav .menu-item>a {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1.2rem;
    font-size: 1.4rem;
    color: #696460;
    font-weight: 500;
    text-transform: uppercase;
}

.mobile-nav .menu-item>.menu-list {
    display: none;
    margin-left: 1.6rem;
    position: relative;
}

.mobile-nav .menu-item>.menu-list::before {
    content: "";
    position: absolute;
    top: 2rem;
    bottom: 2rem;
    left: 0;
    width: 1px;
    background-color: rgba(0, 0, 0, 0.1);
}

.mobile-nav .menu-item>.menu-list>.menu-item.current_page_item>a,
.mobile-nav .menu-item>.menu-list>.menu-item.current-menu-item>a {
    color: #8a2784;
}

.mobile-nav .menu-item>.menu-list>.menu-item:has(.current-menu-item)>a {
    color: #8a2784;
}

::-webkit-scrollbar {
    width: 0.5rem;
}


/* Track */

::-webkit-scrollbar-track {
    background: #f1f1f1;
}


/* Handle */

::-webkit-scrollbar-thumb {
    background: #8a2784;
}


/* Handle on hover */

::-webkit-scrollbar-thumb:hover {
    background: #8a2784;
}

.hd {
    position: fixed;
    width: 100%;
    top: 0;
    height: var(--size-hd);
    -webkit-box-shadow: 0px 0.4rem 0.8rem 0px rgba(0, 0, 0, 0.06);
    box-shadow: 0px 0.4rem 0.8rem 0px rgba(0, 0, 0, 0.06);
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    z-index: 20;
    background: #fff;
}

.hd.sticky {
    --size-hd: 6rem;
}

.hd.sticky .custom-logo-link {
    width: 12rem;
}

.hd-home {
    -webkit-box-shadow: unset;
    box-shadow: unset;
    background: transparent;
}

.hd-home.sticky {
    -webkit-box-shadow: 0px 0.4rem 0.8rem 0px rgba(0, 0, 0, 0.06);
    box-shadow: 0px 0.4rem 0.8rem 0px rgba(0, 0, 0, 0.06);
    background: #fff;
}

.hd-wrap {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: inherit;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -1.2rem;
}

.hd-logo {
    padding: 0 1.2rem;
}

@media screen and (max-width: 1200px) {
    .hd-logo {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        padding: 0;
    }
}

.hd-logo .custom-logo-link {
    width: 16rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

@media screen and (max-width: 500px) {
    .hd-logo .custom-logo-link {
        width: 10rem !important;
    }
}

.hd-side {
    padding: 0 1.2rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.hd-out {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    gap: 2rem;
}

.hd-ctr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
}

@media screen and (max-width: 1200px) {
    .hd-ctr {
        gap: 1.2rem;
    }
}

@media screen and (max-width: 500px) {
    .hd-ctr {
        gap: 0.6rem;
    }
}

@media screen and (min-width: 1201px) {
    .hd-ctr .btn .icon {
        display: none;
    }
}

@media screen and (max-width: 1200px) {
    .hd-ctr .btn {
        width: 3.2rem;
        height: 3.2rem;
        min-height: unset;
        min-width: unset;
    }
    .hd-ctr .btn .inner {
        display: none;
    }
}

.hd-lang {
    position: relative;
    cursor: pointer;
}

@media (hover: hover) {
    .hd-lang:hover .hd-lang-pos {
        opacity: 1;
        visibility: visible;
    }
}

@media screen and (max-width: 1200px) {
    .hd-lang {
        display: none;
    }
}

.hd-lang-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.4rem;
}

.hd-lang-gr .t-text {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .hd-lang-gr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .hd-lang-gr .t-text {
        font-size: 1.5rem;
    }
}

.hd-lang-gr .icon {
    width: 1.6rem;
    height: 1.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.hd-lang-pos {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%;
    opacity: 0;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    visibility: hidden;
}

.hd-lang-pos .t-link {
    font-size: 1.8rem;
    color: #403d3a;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media (hover: hover) {
    .hd-lang-pos .t-link:hover {
        color: #8a2784;
    }
}

.hd-user {
    width: 2.6rem;
    height: 2.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    cursor: pointer;
}

.hd-user .icon-user {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

@media screen and (max-width: 500px) {
    .hd-user {
        width: 3.2rem;
        height: 3.2rem;
    }
    .hd-user .icon-user {
        width: 2.6rem;
        height: 2.6rem;
    }
}

.hd-search {
    width: 2.6rem;
    height: 2.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    cursor: pointer;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 500px) {
    .hd-search {
        width: 3.2rem;
        height: 3.2rem;
    }
    .hd-search .icon-search {
        width: 2.6rem;
        height: 2.6rem;
    }
}

.hd-search .icon-search {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.hd-search-wrap {
    position: fixed;
    left: 0;
    right: 0;
    width: 100%;
    top: 0;
    height: 0;
    background: #1e1e1e;
    z-index: 10;
    visibility: hidden;
}

.hd-search-close {
    position: absolute;
    top: 1rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    color: #fff;
    display: inline-block;
    padding-bottom: 0.1rem;
    border-bottom: 0.2rem solid #fff;
    font-weight: 500;
    cursor: pointer;
    overflow: hidden;
}

.hd-search-form {
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    width: 123rem;
    padding: 0 1.5rem;
    max-width: 100%;
    margin: 0 auto;
}

.hd-search-form .tt-search {
    font-size: 10vw;
    font-family: "Libre Baskerville", sans-serif;
    color: #fff;
    font-weight: 500;
    line-height: 1.2;
}

.hd-search-form form {
    width: 100%;
}

.hd-search-over {
    overflow: hidden;
}

.hd-search-ip {
    width: 100%;
    margin: 0 auto;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.hd-search-ip input {
    width: 100%;
    border: unset;
    outline: unset;
    height: 6rem;
    text-align: center;
    padding: 0 1.2rem;
    font-size: 1.8rem;
    text-transform: capitalize;
}

@media only screen and (max-width: 1200px) {
    .hd-search-ip input {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .hd-search-ip input {
        font-size: 1.5rem;
    }
}

.hd-search-ip input::-webkit-input-placeholder {
    color: #8c8782;
}

.hd-search-btn {
    width: 6rem;
    height: 6rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    background: #121110;
}

.hd-search-btn .icon {
    width: 4rem;
}

.ft {
    background: #f7f6f5;
}

.ft-row {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 830px) {
    .ft-row .col {
        width: 100%;
    }
}

.ft-logo .custom-logo-link {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 26rem;
    max-width: 100%;
}

.ft-logo .custom-logo-link img {
    width: 100%;
}

.ft-tdes {
    margin-top: 1.2rem;
    font-size: 1.3rem;
    color: #696460;
}

.ft-tt {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #121110;
    margin-bottom: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .ft-tt {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .ft-tt {
        font-size: 1.7rem;
    }
}

.ft-igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 2.4rem;
    margin: 0 -1.2rem;
}

.ft-box {
    width: calc(100% / 3);
    padding: 0 1.2rem;
}

@media screen and (max-width: 500px) {
    .ft-box {
        width: 50%;
    }
}

.ft-nav .menu-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.2rem;
}

.ft-nav .menu-list .menu-item.current_page_item .menu-link {
    color: #8a2784;
    font-weight: 500;
}

.ft-nav .menu-list .menu-link {
    font-size: 1.6rem;
    color: #403d3a;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media (hover: hover) {
    .ft-nav .menu-list .menu-link:hover {
        color: #8a2784;
    }
}

.hd-burger {
    padding: 1rem 1.2rem;
    cursor: pointer;
}

@media screen and (min-width: 1201px) {
    .hd-burger {
        display: none;
    }
}

.hd-burger.active .line:nth-child(1) {
    -webkit-transform: translate3d(0, 0.3rem, 0) rotate(45deg) !important;
    transform: translate3d(0, 0.3rem, 0) rotate(45deg) !important;
}

.hd-burger.active .line:nth-child(2) {
    -webkit-transform: translate3d(0, -0.4rem, 0) rotate(135deg) !important;
    transform: translate3d(0, -0.4rem, 0) rotate(135deg) !important;
    width: 2.4rem;
}

.burger {
    position: relative;
}

.hamburger .line {
    width: 2.4rem;
    height: 0.2rem;
    border-radius: 0.4rem;
    background: #121110;
    display: block;
    margin: 0.5rem 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}

.hamburger .line:nth-child(2) {
    width: 1.8rem;
    margin-left: auto;
}

.mobile {
    position: fixed;
    z-index: 140;
    top: var(--size-hd);
    left: 0;
    bottom: 0;
    min-width: 50rem;
    width: 50rem;
    background-color: white;
    -webkit-box-shadow: 0px 10px 24px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 10px 24px rgba(0, 0, 0, 0.05);
    transition: 0.4s linear;
    -webkit-transition: 0.4s linear;
    -moz-transition: 0.4s linear;
    -ms-transition: 0.4s linear;
    -o-transition: 0.4s linear;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
    -webkit-transform: translateX(-110%);
    transform: translateX(-110%);
}

@media screen and (max-width: 500px) {
    .mobile {
        width: 70%;
        min-width: initial;
    }
}

.mobile.sticky {
    top: var(--size-hd);
}

.mobile.open {
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

@media screen and (min-width: 1200px) {
    .mobile {
        display: none;
    }
}

.mobile-con {
    width: 100%;
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow-y: auto;
}

.mobile-heading {
    font-size: 1.8rem;
    line-height: 1.5;
    color: #8a2784;
    font-weight: 700;
    margin-bottom: 2rem;
    text-transform: uppercase;
}

.mobile-overlay {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    background-color: rgba(0, 0, 0, 0.8);
    transition: 0.6s ease;
    -webkit-transition: 0.6s ease;
    -moz-transition: 0.6s ease;
    -ms-transition: 0.6s ease;
    -o-transition: 0.6s ease;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateX(-110%);
    transform: translateX(-110%);
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    top: var(--size-hd);
}

.mobile-overlay.sticky {
    top: var(--size-hd);
}

.mobile-overlay.open {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}

@media screen and (min-width: 1200px) {
    .mobile-overlay {
        display: none;
    }
}

.mobile-wr {
    padding-bottom: 6rem;
    position: relative;
}

.mobile-list {
    margin-bottom: 2rem;
}

.mobile-content {
    padding: 2.4rem 1.6rem;
}

.mobile-title {
    font-size: 1.6rem;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 1.6rem;
}

.mobile-mxh {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.mobile-mxh-link {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 100%;
    background-color: white;
    cursor: pointer;
    font-size: 1.3rem;
}

.mobile-mxh-link:not(:first-child) {
    border-left: 1px solid rgba(0, 0, 0, 0.1);
}

.mobile-mxh-link img {
    width: 2.4rem;
    height: 2.4rem;
}

.mobile-text {
    font-size: 1.4rem;
    display: block;
    color: #8a2784;
    word-break: break-word;
    font-weight: 500;
}

.mobile-text:not(:last-child) {
    margin-bottom: 0.8rem;
}

.mobile-account {
    position: absolute;
    top: 1rem;
    left: 1rem;
}

.mobile-re {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.mobile-re-link {
    font-size: 1.6rem;
    color: #8a2784;
    text-decoration: underline;
}

.mobile-re-link:not(:first-child) {
    margin-left: 16px;
}

.mobile-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 3.5rem;
    height: 3.5rem;
    border: 1px solid #8a2784;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    cursor: pointer;
    background-color: white;
}

.mobile-close:hover .icon {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}

.mobile-close .icon {
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
    font-weight: 500;
    font-size: 1.8rem;
    color: #8a2784;
}

.mobile-lang {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1.2rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.mobile-lang .t-text {
    color: #303030;
    font-size: 1.4rem;
    font-weight: 600;
    text-transform: uppercase;
}

.mobile-lang .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.6rem;
}

.mobile-lang .igr .t-link {
    font-size: 1.4rem;
}

.mobile-lang .igr .t-link.active {
    color: #8a2784;
    font-weight: 500;
}

.mobile-fl .fw-6 {
    margin-bottom: 0.8rem;
    margin-bottom: 0.8rem;
    display: inline;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 1.4rem;
}

.mobile-fl .mobile-text {
    display: inline;
    font-size: 1.4rem;
}

.mobile-fl .dot {
    display: none;
}

.select2-container {
    height: 4.8rem;
    background-color: transparent;
    border-radius: 6px;
}

.select2.select2-container {
    width: 100% !important;
}

.selection {
    width: 100%;
}

.select2-container--default .select2-selection--single {
    border: none;
    border-radius: 0.8rem;
    color: #ffffff;
    height: 4.8rem;
    background-color: transparent;
    border: 0.1rem solid rgba(0, 0, 0, 0.1);
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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;
    width: 100%;
}

.select2.select2-container .select2-selection--multiple {
    height: auto;
    min-height: 34px;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    background-color: transparent;
    border: 1px solid transparent;
    color: #000000;
    font-size: 1.4rem;
    font-weight: 400;
    display: inline !important;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    width: 100%;
}

.select2.select2-container .select2-selection--multiple .select2-selection__rendered {
    display: block;
    padding: 0 4px;
    padding-left: 1.4rem;
}

.select2-container .select2-dropdown {
    background: transparent;
    border: none;
}

.select2-container .select2-dropdown .select2-search {
    padding: 0;
}

.select2-container .select2-dropdown .select2-search input {
    outline: none !important;
    border: none;
    border-bottom: none !important;
    padding: 4px 6px !important;
    background-color: #000000;
    color: #000000;
}

.select2-container .select2-dropdown .select2-results ul {
    background: #e6eeed;
    color: #000000;
}

.select2-container .select2-dropdown .select2-results ul .select2-results__option--highlighted[aria-selected] {
    background-color: #8a2784;
    font-size: 1.4rem;
}

.select2-container--default .select2-results__option--selected {
    background-color: #e6eeed;
    color: #000000;
    font-size: 1.4rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
    border-color: #000 transparent transparent transparent;
}

.select2-search.select2-search--dropdown {
    display: none !important;
}

.select2-results__option {
    font-size: 1.6rem;
}

.select2-results {
    display: block;
    border-radius: 6px !important;
    overflow: hidden;
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single {
    border-radius: 0.8rem !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    padding-left: 1.4rem;
    font-weight: 700;
    color: #696460;
    padding-right: 3rem;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #696460;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
    margin-left: -1.2rem;
}

.select2-container .select2-dropdown .select2-results ul .select2-results__option--highlighted[aria-selected] {
    font-size: 1.6rem;
}

.effectShine {
    position: relative;
    overflow: hidden;
}

.effectShine::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2;
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.3)));
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%);
    -webkit-transform: skewX(-25deg);
    transform: skewX(-25deg);
}

.effectShine:hover::before {
    -webkit-animation: shine 1s;
    animation: shine 1s;
}

.sl-cus {
    position: relative;
}

.sl-cus.min {
    min-width: 12rem;
}

.sl-cus.min:not(:first-child) {
    margin-left: 0.5rem;
}

.sl-head {
    background-color: #f8f8f8;
    height: 4rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 0 1.5rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 5;
    cursor: pointer;
    border-radius: 0.6rem;
}

.sl-head::before {
    content: "";
    position: absolute;
    right: 10px;
    top: 13px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 5px solid #121110;
}

.sl-head::after {
    content: "";
    position: absolute;
    right: 1rem;
    bottom: 1.3rem;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid #121110;
}

.sl-main {
    font-size: 1.5rem;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.5px;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.sl-list {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-top: none;
    background-color: white;
    z-index: 10;
    display: none;
    overflow: hidden;
    border-radius: 0 0 6px 6px;
    max-height: 20rem;
    overflow-y: auto;
}

.sl-item {
    font-size: 1.4rem;
    line-height: 1.5;
    letter-spacing: 0.5px;
    color: #000000;
    padding: 1rem 1.5rem;
    cursor: pointer;
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

.sl-item:hover {
    background-color: #121110;
    color: white;
}

.popup {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.popup.popup-noti .popup-main {
    width: 55rem;
    border-radius: 1.2rem;
}

.popup.popup-noti .popup-wrapper {
    padding: 4rem;
    min-height: unset;
}

.popup.popup-noti .popup-over {
    min-height: unset;
}

.popup.popup-noti .popup-overlay {
    background: rgba(18, 17, 16, 0.4);
    -webkit-backdrop-filter: blur(0.7rem);
    backdrop-filter: blur(0.7rem);
}

.popup.popup-noti .head-gr {
    margin-bottom: 4.8rem;
}

@media screen and (max-width: 600px) {
    .popup.popup-noti .head-gr {
        text-align: center;
        margin-bottom: 2.4rem;
    }
}

.popup.popup-noti .head-gr .t-text {
    font-family: "Libre Baskerville", sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
    color: #121110;
}

@media only screen and (max-width: 1200px) {
    .popup.popup-noti .head-gr .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .popup.popup-noti .head-gr .t-text {
        font-size: 1.7rem;
    }
}

.popup.popup-noti .head-gr .t-txt {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .popup.popup-noti .head-gr .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .popup.popup-noti .head-gr .t-txt {
        font-size: 1.5rem;
    }
}

.popup.popup-noti .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.6rem;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

@media screen and (max-width: 600px) {
    .popup.popup-noti .igr {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .popup.popup-noti .igr .btn {
        width: 100%;
    }
}

.popup.open {
    visibility: visible;
    pointer-events: visible;
    opacity: 1;
}

.popup.open .popup-overlay {
    opacity: 1;
    visibility: visible;
    height: 100%;
}

.popup.open .popup-main {
    opacity: 1;
    visibility: visible;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition-delay: 0.1s;
    -webkit-transition-delay: 0.1s;
    -moz-transition-delay: 0.1s;
    -ms-transition-delay: 0.1s;
    -o-transition-delay: 0.1s;
}

.popup-overlay {
    position: absolute;
    background-color: rgba(0, 0, 0, 0.8);
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
}

.popup-main {
    z-index: 2;
    width: 70rem;
    max-width: 95%;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.popup-main-wrapper {
    overflow: hidden;
    border-radius: 6px;
}

.popup-over {
    overflow-y: auto;
    min-height: 40vh;
    max-height: 80vh;
}

.popup-wrapper {
    background-color: white;
    width: 100%;
    min-height: 40vh;
    position: relative;
    padding: 4.8rem 2rem 2rem 2rem;
}

.popup-title {
    font-size: 2.4rem;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .popup-title {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .popup-title {
        font-size: 1.7rem;
    }
}

.popup-close {
    position: absolute;
    top: 1.6rem;
    right: 1.6rem;
    cursor: pointer;
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
    width: 3rem;
    height: 3rem;
    border: 1px solid rgba(0, 0, 0, 0.3);
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    background-color: white;
    z-index: 3;
}

.popup-close:hover .icon {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
}

.popup-close .icon {
    color: #000000;
    font-weight: 300;
    font-size: 2.4rem;
    transition: 0.6s ease-in-out;
    -webkit-transition: 0.6s ease-in-out;
    -moz-transition: 0.6s ease-in-out;
    -ms-transition: 0.6s ease-in-out;
    -o-transition: 0.6s ease-in-out;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
}

.popup-gg .popup-wrapper {
    padding: 2.4rem;
    max-height: 80vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

@media screen and (max-width: 600px) {
    .popup-gg .popup-wrapper {
        padding: 1.6rem;
    }
}

.popup-gg .popup-main-wrapper {
    border-radius: 1.6rem;
}

@media screen and (max-width: 600px) {
    .popup-gg .popup-main-wrapper {
        border-radius: 0.8rem;
    }
}

.popup-gg .popup-over {
    overflow: hidden;
}

.popup-gg-body {
    margin-top: 1.6rem;
    margin-right: -0.8rem;
    padding-right: 0.8rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    overflow-y: auto;
}

.popup-gg-body::-webkit-scrollbar {
    width: 0.2rem;
}

.dateTime {
    position: relative;
    height: 5.6rem;
    border-radius: 0.4rem;
    border: 0.1rem solid #e8e4e1;
    z-index: 2;
    overflow: hidden;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.dateTime .icon {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 1.6rem;
    height: 1.6rem;
    position: relative;
    z-index: 2;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 2.4rem;
}

.dateTimeItem {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
}

.dateTimeText {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0 2.4rem;
    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;
    pointer-events: none;
    background-color: white;
    z-index: 2;
    font-size: 1.8rem;
    line-height: 1;
}

.dateTimeText.disable {
    opacity: 0;
    visibility: hidden;
}

.dateTimeInput {
    padding: 0.8rem 2.4rem;
    background-color: transparent;
    width: 100%;
    font-family: "DM Sans", sans-serif;
    border: none;
    outline: none;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    font-size: 1.8rem;
    height: 100% !important;
    font-family: "DM Sans", sans-serif;
    border-radius: inherit;
}

@-webkit-keyframes bounce {
    from,
    20%,
    53%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
        transform: translate3d(0, -30px, 0) scaleY(1.1);
    }
    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
        transform: translate3d(0, -15px, 0) scaleY(1.05);
    }
    80% {
        -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
        transform: translate3d(0, 0, 0) scaleY(0.95);
    }
    90% {
        -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
        transform: translate3d(0, -4px, 0) scaleY(1.02);
    }
}

@keyframes bounce {
    from,
    20%,
    53%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    40%,
    43% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
        transform: translate3d(0, -30px, 0) scaleY(1.1);
    }
    70% {
        -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
        -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
        transform: translate3d(0, -15px, 0) scaleY(1.05);
    }
    80% {
        -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transform: translate3d(0, 0, 0) scaleY(0.95);
        transform: translate3d(0, 0, 0) scaleY(0.95);
    }
    90% {
        -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
        transform: translate3d(0, -4px, 0) scaleY(1.02);
    }
}

.animate__bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
}

@-webkit-keyframes flash {
    from,
    50%,
    to {
        opacity: 1;
    }
    25%,
    75% {
        opacity: 0;
    }
}

@keyframes flash {
    from,
    50%,
    to {
        opacity: 1;
    }
    25%,
    75% {
        opacity: 0;
    }
}

.animate__flash {
    -webkit-animation-name: flash;
    animation-name: flash;
}


/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes pulse {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    50% {
        -webkit-transform: scale3d(1.05, 1.05, 1.05);
        transform: scale3d(1.05, 1.05, 1.05);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.animate__pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}

@-webkit-keyframes rubberBand {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes rubberBand {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    30% {
        -webkit-transform: scale3d(1.25, 0.75, 1);
        transform: scale3d(1.25, 0.75, 1);
    }
    40% {
        -webkit-transform: scale3d(0.75, 1.25, 1);
        transform: scale3d(0.75, 1.25, 1);
    }
    50% {
        -webkit-transform: scale3d(1.15, 0.85, 1);
        transform: scale3d(1.15, 0.85, 1);
    }
    65% {
        -webkit-transform: scale3d(0.95, 1.05, 1);
        transform: scale3d(0.95, 1.05, 1);
    }
    75% {
        -webkit-transform: scale3d(1.05, 0.95, 1);
        transform: scale3d(1.05, 0.95, 1);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.animate__rubberBand {
    -webkit-animation-name: rubberBand;
    animation-name: rubberBand;
}

@-webkit-keyframes shakeX {
    from,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
}

@keyframes shakeX {
    from,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(-10px, 0, 0);
        transform: translate3d(-10px, 0, 0);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(10px, 0, 0);
        transform: translate3d(10px, 0, 0);
    }
}

.animate__shakeX {
    -webkit-animation-name: shakeX;
    animation-name: shakeX;
}

@-webkit-keyframes shakeY {
    from,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
}

@keyframes shakeY {
    from,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    10%,
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0);
    }
    20%,
    40%,
    60%,
    80% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0);
    }
}

.animate__shakeY {
    -webkit-animation-name: shakeY;
    animation-name: shakeY;
}

@-webkit-keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg);
    }
    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg);
    }
    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg);
    }
    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg);
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes headShake {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    6.5% {
        -webkit-transform: translateX(-6px) rotateY(-9deg);
        transform: translateX(-6px) rotateY(-9deg);
    }
    18.5% {
        -webkit-transform: translateX(5px) rotateY(7deg);
        transform: translateX(5px) rotateY(7deg);
    }
    31.5% {
        -webkit-transform: translateX(-3px) rotateY(-5deg);
        transform: translateX(-3px) rotateY(-5deg);
    }
    43.5% {
        -webkit-transform: translateX(2px) rotateY(3deg);
        transform: translateX(2px) rotateY(3deg);
    }
    50% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

.animate__headShake {
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-name: headShake;
    animation-name: headShake;
}

@-webkit-keyframes swing {
    20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg);
    }
    40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg);
    }
    60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg);
    }
    80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg);
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
        transform: rotate3d(0, 0, 1, 0deg);
    }
}

@keyframes swing {
    20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg);
    }
    40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg);
    }
    60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg);
    }
    80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg);
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 0deg);
        transform: rotate3d(0, 0, 1, 0deg);
    }
}

.animate__swing {
    -webkit-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: swing;
    animation-name: swing;
}

@-webkit-keyframes tada {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    10%,
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    }
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes tada {
    from {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
    10%,
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    }
    30%,
    50%,
    70%,
    90% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }
    40%,
    60%,
    80% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
        transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }
    to {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.animate__tada {
    -webkit-animation-name: tada;
    animation-name: tada;
}


/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    }
    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    }
    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    }
    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    }
    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes wobble {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    15% {
        -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
        transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    }
    30% {
        -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
        transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    }
    45% {
        -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
        transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    }
    60% {
        -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
        transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    }
    75% {
        -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
        transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__wobble {
    -webkit-animation-name: wobble;
    animation-name: wobble;
}

@-webkit-keyframes jello {
    from,
    11.1%,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
        transform: skewX(0.39063deg) skewY(0.39063deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
}

@keyframes jello {
    from,
    11.1%,
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    22.2% {
        -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
        transform: skewX(-12.5deg) skewY(-12.5deg);
    }
    33.3% {
        -webkit-transform: skewX(6.25deg) skewY(6.25deg);
        transform: skewX(6.25deg) skewY(6.25deg);
    }
    44.4% {
        -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
        transform: skewX(-3.125deg) skewY(-3.125deg);
    }
    55.5% {
        -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
        transform: skewX(1.5625deg) skewY(1.5625deg);
    }
    66.6% {
        -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
        transform: skewX(-0.78125deg) skewY(-0.78125deg);
    }
    77.7% {
        -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
        transform: skewX(0.39063deg) skewY(0.39063deg);
    }
    88.8% {
        -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
        transform: skewX(-0.19531deg) skewY(-0.19531deg);
    }
}

.animate__jello {
    -webkit-animation-name: jello;
    animation-name: jello;
    -webkit-transform-origin: center;
    transform-origin: center;
}

@-webkit-keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    28% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes heartBeat {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    14% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    28% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    42% {
        -webkit-transform: scale(1.3);
        transform: scale(1.3);
    }
    70% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.animate__heartBeat {
    -webkit-animation-name: heartBeat;
    animation-name: heartBeat;
    -webkit-animation-duration: calc(1s * 1.3);
    animation-duration: calc(1s * 1.3);
    -webkit-animation-duration: calc(var(--animate-duration) * 1.3);
    animation-duration: calc(var(--animate-duration) * 1.3);
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
}


/* Back entrances */

@-webkit-keyframes backInDown {
    0% {
        -webkit-transform: translateY(-1200px) scale(0.7);
        transform: translateY(-1200px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes backInDown {
    0% {
        -webkit-transform: translateY(-1200px) scale(0.7);
        transform: translateY(-1200px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInDown {
    -webkit-animation-name: backInDown;
    animation-name: backInDown;
}

@-webkit-keyframes backInLeft {
    0% {
        -webkit-transform: translateX(-2000px) scale(0.7);
        transform: translateX(-2000px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes backInLeft {
    0% {
        -webkit-transform: translateX(-2000px) scale(0.7);
        transform: translateX(-2000px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInLeft {
    -webkit-animation-name: backInLeft;
    animation-name: backInLeft;
}

@-webkit-keyframes backInRight {
    0% {
        -webkit-transform: translateX(2000px) scale(0.7);
        transform: translateX(2000px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes backInRight {
    0% {
        -webkit-transform: translateX(2000px) scale(0.7);
        transform: translateX(2000px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInRight {
    -webkit-animation-name: backInRight;
    animation-name: backInRight;
}

@-webkit-keyframes backInUp {
    0% {
        -webkit-transform: translateY(1200px) scale(0.7);
        transform: translateY(1200px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes backInUp {
    0% {
        -webkit-transform: translateY(1200px) scale(0.7);
        transform: translateY(1200px) scale(0.7);
        opacity: 0.7;
    }
    80% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
}

.animate__backInUp {
    -webkit-animation-name: backInUp;
    animation-name: backInUp;
}


/* Back exits */

@-webkit-keyframes backOutDown {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateY(700px) scale(0.7);
        transform: translateY(700px) scale(0.7);
        opacity: 0.7;
    }
}

@keyframes backOutDown {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateY(700px) scale(0.7);
        transform: translateY(700px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutDown {
    -webkit-animation-name: backOutDown;
    animation-name: backOutDown;
}

@-webkit-keyframes backOutLeft {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateX(-2000px) scale(0.7);
        transform: translateX(-2000px) scale(0.7);
        opacity: 0.7;
    }
}

@keyframes backOutLeft {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateX(-2000px) scale(0.7);
        transform: translateX(-2000px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutLeft {
    -webkit-animation-name: backOutLeft;
    animation-name: backOutLeft;
}

@-webkit-keyframes backOutRight {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateX(2000px) scale(0.7);
        transform: translateX(2000px) scale(0.7);
        opacity: 0.7;
    }
}

@keyframes backOutRight {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateX(0px) scale(0.7);
        transform: translateX(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateX(2000px) scale(0.7);
        transform: translateX(2000px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutRight {
    -webkit-animation-name: backOutRight;
    animation-name: backOutRight;
}

@-webkit-keyframes backOutUp {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateY(-700px) scale(0.7);
        transform: translateY(-700px) scale(0.7);
        opacity: 0.7;
    }
}

@keyframes backOutUp {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 1;
    }
    20% {
        -webkit-transform: translateY(0px) scale(0.7);
        transform: translateY(0px) scale(0.7);
        opacity: 0.7;
    }
    100% {
        -webkit-transform: translateY(-700px) scale(0.7);
        transform: translateY(-700px) scale(0.7);
        opacity: 0.7;
    }
}

.animate__backOutUp {
    -webkit-animation-name: backOutUp;
    animation-name: backOutUp;
}


/* Bouncing entrances  */

@-webkit-keyframes bounceIn {
    from,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }
    to {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

@keyframes bounceIn {
    from,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    40% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03);
    }
    80% {
        -webkit-transform: scale3d(0.97, 0.97, 0.97);
        transform: scale3d(0.97, 0.97, 0.97);
    }
    to {
        opacity: 1;
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
    }
}

.animate__bounceIn {
    -webkit-animation-duration: calc(1s * 0.75);
    animation-duration: calc(1s * 0.75);
    -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    -webkit-animation-name: bounceIn;
    animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
        transform: translate3d(0, -3000px, 0) scaleY(3);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
        transform: translate3d(0, 25px, 0) scaleY(0.9);
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
        transform: translate3d(0, -10px, 0) scaleY(0.95);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
        transform: translate3d(0, 5px, 0) scaleY(0.985);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInDown {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, -3000px, 0) scaleY(3);
        transform: translate3d(0, -3000px, 0) scaleY(3);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, 25px, 0) scaleY(0.9);
        transform: translate3d(0, 25px, 0) scaleY(0.9);
    }
    75% {
        -webkit-transform: translate3d(0, -10px, 0) scaleY(0.95);
        transform: translate3d(0, -10px, 0) scaleY(0.95);
    }
    90% {
        -webkit-transform: translate3d(0, 5px, 0) scaleY(0.985);
        transform: translate3d(0, 5px, 0) scaleY(0.985);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInDown {
    -webkit-animation-name: bounceInDown;
    animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
        transform: translate3d(-3000px, 0, 0) scaleX(3);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
        transform: translate3d(25px, 0, 0) scaleX(1);
    }
    75% {
        -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
        transform: translate3d(-10px, 0, 0) scaleX(0.98);
    }
    90% {
        -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
        transform: translate3d(5px, 0, 0) scaleX(0.995);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInLeft {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
        transform: translate3d(-3000px, 0, 0) scaleX(3);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(25px, 0, 0) scaleX(1);
        transform: translate3d(25px, 0, 0) scaleX(1);
    }
    75% {
        -webkit-transform: translate3d(-10px, 0, 0) scaleX(0.98);
        transform: translate3d(-10px, 0, 0) scaleX(0.98);
    }
    90% {
        -webkit-transform: translate3d(5px, 0, 0) scaleX(0.995);
        transform: translate3d(5px, 0, 0) scaleX(0.995);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInLeft {
    -webkit-animation-name: bounceInLeft;
    animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
        transform: translate3d(3000px, 0, 0) scaleX(3);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
        transform: translate3d(-25px, 0, 0) scaleX(1);
    }
    75% {
        -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
        transform: translate3d(10px, 0, 0) scaleX(0.98);
    }
    90% {
        -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
        transform: translate3d(-5px, 0, 0) scaleX(0.995);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInRight {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
        transform: translate3d(3000px, 0, 0) scaleX(3);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(-25px, 0, 0) scaleX(1);
        transform: translate3d(-25px, 0, 0) scaleX(1);
    }
    75% {
        -webkit-transform: translate3d(10px, 0, 0) scaleX(0.98);
        transform: translate3d(10px, 0, 0) scaleX(0.98);
    }
    90% {
        -webkit-transform: translate3d(-5px, 0, 0) scaleX(0.995);
        transform: translate3d(-5px, 0, 0) scaleX(0.995);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInRight {
    -webkit-animation-name: bounceInRight;
    animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
        transform: translate3d(0, 3000px, 0) scaleY(5);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }
    75% {
        -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
        transform: translate3d(0, 10px, 0) scaleY(0.95);
    }
    90% {
        -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
        transform: translate3d(0, -5px, 0) scaleY(0.985);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes bounceInUp {
    from,
    60%,
    75%,
    90%,
    to {
        -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
        animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    }
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 3000px, 0) scaleY(5);
        transform: translate3d(0, 3000px, 0) scaleY(5);
    }
    60% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }
    75% {
        -webkit-transform: translate3d(0, 10px, 0) scaleY(0.95);
        transform: translate3d(0, 10px, 0) scaleY(0.95);
    }
    90% {
        -webkit-transform: translate3d(0, -5px, 0) scaleY(0.985);
        transform: translate3d(0, -5px, 0) scaleY(0.985);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__bounceInUp {
    -webkit-animation-name: bounceInUp;
    animation-name: bounceInUp;
}


/* Bouncing exits  */

@-webkit-keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    50%,
    55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
}

@keyframes bounceOut {
    20% {
        -webkit-transform: scale3d(0.9, 0.9, 0.9);
        transform: scale3d(0.9, 0.9, 0.9);
    }
    50%,
    55% {
        opacity: 1;
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
}

.animate__bounceOut {
    -webkit-animation-duration: calc(1s * 0.75);
    animation-duration: calc(1s * 0.75);
    -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    -webkit-animation-name: bounceOut;
    animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
        transform: translate3d(0, 10px, 0) scaleY(0.985);
    }
    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
        transform: translate3d(0, 2000px, 0) scaleY(3);
    }
}

@keyframes bounceOutDown {
    20% {
        -webkit-transform: translate3d(0, 10px, 0) scaleY(0.985);
        transform: translate3d(0, 10px, 0) scaleY(0.985);
    }
    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, -20px, 0) scaleY(0.9);
        transform: translate3d(0, -20px, 0) scaleY(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0) scaleY(3);
        transform: translate3d(0, 2000px, 0) scaleY(3);
    }
}

.animate__bounceOutDown {
    -webkit-animation-name: bounceOutDown;
    animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
        transform: translate3d(20px, 0, 0) scaleX(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
        transform: translate3d(-2000px, 0, 0) scaleX(2);
    }
}

@keyframes bounceOutLeft {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(20px, 0, 0) scaleX(0.9);
        transform: translate3d(20px, 0, 0) scaleX(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0) scaleX(2);
        transform: translate3d(-2000px, 0, 0) scaleX(2);
    }
}

.animate__bounceOutLeft {
    -webkit-animation-name: bounceOutLeft;
    animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
        transform: translate3d(-20px, 0, 0) scaleX(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
        transform: translate3d(2000px, 0, 0) scaleX(2);
    }
}

@keyframes bounceOutRight {
    20% {
        opacity: 1;
        -webkit-transform: translate3d(-20px, 0, 0) scaleX(0.9);
        transform: translate3d(-20px, 0, 0) scaleX(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0) scaleX(2);
        transform: translate3d(2000px, 0, 0) scaleX(2);
    }
}

.animate__bounceOutRight {
    -webkit-animation-name: bounceOutRight;
    animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
        transform: translate3d(0, -10px, 0) scaleY(0.985);
    }
    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
        transform: translate3d(0, 20px, 0) scaleY(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
        transform: translate3d(0, -2000px, 0) scaleY(3);
    }
}

@keyframes bounceOutUp {
    20% {
        -webkit-transform: translate3d(0, -10px, 0) scaleY(0.985);
        transform: translate3d(0, -10px, 0) scaleY(0.985);
    }
    40%,
    45% {
        opacity: 1;
        -webkit-transform: translate3d(0, 20px, 0) scaleY(0.9);
        transform: translate3d(0, 20px, 0) scaleY(0.9);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0) scaleY(3);
        transform: translate3d(0, -2000px, 0) scaleY(3);
    }
}

.animate__bounceOutUp {
    -webkit-animation-name: bounceOutUp;
    animation-name: bounceOutUp;
}


/* Fading entrances  */

@-webkit-keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.animate__fadeIn {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInDown {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInDown {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInDownBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInDownBig {
    -webkit-animation-name: fadeInDownBig;
    animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInLeft {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInLeftBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInLeftBig {
    -webkit-animation-name: fadeInLeftBig;
    animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInRightBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInRightBig {
    -webkit-animation-name: fadeInRightBig;
    animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInUpBig {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInUpBig {
    -webkit-animation-name: fadeInUpBig;
    animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeInTopLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, -100%, 0);
        transform: translate3d(-100%, -100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInTopLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, -100%, 0);
        transform: translate3d(-100%, -100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInTopLeft {
    -webkit-animation-name: fadeInTopLeft;
    animation-name: fadeInTopLeft;
}

@-webkit-keyframes fadeInTopRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, -100%, 0);
        transform: translate3d(100%, -100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInTopRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, -100%, 0);
        transform: translate3d(100%, -100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInTopRight {
    -webkit-animation-name: fadeInTopRight;
    animation-name: fadeInTopRight;
}

@-webkit-keyframes fadeInBottomLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 100%, 0);
        transform: translate3d(-100%, 100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInBottomLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 100%, 0);
        transform: translate3d(-100%, 100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInBottomLeft {
    -webkit-animation-name: fadeInBottomLeft;
    animation-name: fadeInBottomLeft;
}

@-webkit-keyframes fadeInBottomRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 100%, 0);
        transform: translate3d(100%, 100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes fadeInBottomRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100%, 100%, 0);
        transform: translate3d(100%, 100%, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__fadeInBottomRight {
    -webkit-animation-name: fadeInBottomRight;
    animation-name: fadeInBottomRight;
}


/* Fading exits */

@-webkit-keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.animate__fadeOut {
    -webkit-animation-name: fadeOut;
    animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}

@keyframes fadeOutDown {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}

.animate__fadeOutDown {
    -webkit-animation-name: fadeOutDown;
    animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
}

@keyframes fadeOutDownBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, 2000px, 0);
        transform: translate3d(0, 2000px, 0);
    }
}

.animate__fadeOutDownBig {
    -webkit-animation-name: fadeOutDownBig;
    animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

@keyframes fadeOutLeft {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

.animate__fadeOutLeft {
    -webkit-animation-name: fadeOutLeft;
    animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
}

@keyframes fadeOutLeftBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-2000px, 0, 0);
        transform: translate3d(-2000px, 0, 0);
    }
}

.animate__fadeOutLeftBig {
    -webkit-animation-name: fadeOutLeftBig;
    animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}

@keyframes fadeOutRight {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}

.animate__fadeOutRight {
    -webkit-animation-name: fadeOutRight;
    animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
}

@keyframes fadeOutRightBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(2000px, 0, 0);
        transform: translate3d(2000px, 0, 0);
    }
}

.animate__fadeOutRightBig {
    -webkit-animation-name: fadeOutRightBig;
    animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}

@keyframes fadeOutUp {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}

.animate__fadeOutUp {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}

@keyframes fadeOutUpBig {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(0, -2000px, 0);
        transform: translate3d(0, -2000px, 0);
    }
}

.animate__fadeOutUpBig {
    -webkit-animation-name: fadeOutUpBig;
    animation-name: fadeOutUpBig;
}

@-webkit-keyframes fadeOutTopLeft {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, -100%, 0);
        transform: translate3d(-100%, -100%, 0);
    }
}

@keyframes fadeOutTopLeft {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, -100%, 0);
        transform: translate3d(-100%, -100%, 0);
    }
}

.animate__fadeOutTopLeft {
    -webkit-animation-name: fadeOutTopLeft;
    animation-name: fadeOutTopLeft;
}

@-webkit-keyframes fadeOutTopRight {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, -100%, 0);
        transform: translate3d(100%, -100%, 0);
    }
}

@keyframes fadeOutTopRight {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, -100%, 0);
        transform: translate3d(100%, -100%, 0);
    }
}

.animate__fadeOutTopRight {
    -webkit-animation-name: fadeOutTopRight;
    animation-name: fadeOutTopRight;
}

@-webkit-keyframes fadeOutBottomRight {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 100%, 0);
        transform: translate3d(100%, 100%, 0);
    }
}

@keyframes fadeOutBottomRight {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 100%, 0);
        transform: translate3d(100%, 100%, 0);
    }
}

.animate__fadeOutBottomRight {
    -webkit-animation-name: fadeOutBottomRight;
    animation-name: fadeOutBottomRight;
}

@-webkit-keyframes fadeOutBottomLeft {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 100%, 0);
        transform: translate3d(-100%, 100%, 0);
    }
}

@keyframes fadeOutBottomLeft {
    from {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 100%, 0);
        transform: translate3d(-100%, 100%, 0);
    }
}

.animate__fadeOutBottomLeft {
    -webkit-animation-name: fadeOutBottomLeft;
    animation-name: fadeOutBottomLeft;
}


/* Flippers */

@-webkit-keyframes flip {
    from {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    to {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

@keyframes flip {
    from {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    40% {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    50% {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    80% {
        -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    to {
        -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
}

.animate__animated.animate__flip {
    -webkit-backface-visibility: visible;
    backface-visibility: visible;
    -webkit-animation-name: flip;
    animation-name: flip;
}

@-webkit-keyframes flipInX {
    from {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}

@keyframes flipInX {
    from {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}

.animate__flipInX {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInX;
    animation-name: flipInX;
}

@-webkit-keyframes flipInY {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}

@keyframes flipInY {
    from {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
        opacity: 0;
    }
    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    60% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    }
    to {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
}

.animate__flipInY {
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipInY;
    animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
    }
    to {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0;
    }
}

@keyframes flipOutX {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        opacity: 1;
    }
    to {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        opacity: 0;
    }
}

.animate__flipOutX {
    -webkit-animation-duration: calc(1s * 0.75);
    animation-duration: calc(1s * 0.75);
    -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    -webkit-animation-name: flipOutX;
    animation-name: flipOutX;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1;
    }
    to {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0;
    }
}

@keyframes flipOutY {
    from {
        -webkit-transform: perspective(400px);
        transform: perspective(400px);
    }
    30% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
        opacity: 1;
    }
    to {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        opacity: 0;
    }
}

.animate__flipOutY {
    -webkit-animation-duration: calc(1s * 0.75);
    animation-duration: calc(1s * 0.75);
    -webkit-animation-duration: calc(var(--animate-duration) * 0.75);
    animation-duration: calc(var(--animate-duration) * 0.75);
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important;
    -webkit-animation-name: flipOutY;
    animation-name: flipOutY;
}


/* Lightspeed */

@-webkit-keyframes lightSpeedInRight {
    from {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes lightSpeedInRight {
    from {
        -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
        transform: translate3d(100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: skewX(20deg);
        transform: skewX(20deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: skewX(-5deg);
        transform: skewX(-5deg);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__lightSpeedInRight {
    -webkit-animation-name: lightSpeedInRight;
    animation-name: lightSpeedInRight;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
        transform: translate3d(-100%, 0, 0) skewX(30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: skewX(-20deg);
        transform: skewX(-20deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes lightSpeedInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
        transform: translate3d(-100%, 0, 0) skewX(30deg);
        opacity: 0;
    }
    60% {
        -webkit-transform: skewX(-20deg);
        transform: skewX(-20deg);
        opacity: 1;
    }
    80% {
        -webkit-transform: skewX(5deg);
        transform: skewX(5deg);
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__lightSpeedInLeft {
    -webkit-animation-name: lightSpeedInLeft;
    animation-name: lightSpeedInLeft;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOutRight {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0;
    }
}

@keyframes lightSpeedOutRight {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
        transform: translate3d(100%, 0, 0) skewX(30deg);
        opacity: 0;
    }
}

.animate__lightSpeedOutRight {
    -webkit-animation-name: lightSpeedOutRight;
    animation-name: lightSpeedOutRight;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
}

@-webkit-keyframes lightSpeedOutLeft {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
        transform: translate3d(-100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
}

@keyframes lightSpeedOutLeft {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: translate3d(-100%, 0, 0) skewX(-30deg);
        transform: translate3d(-100%, 0, 0) skewX(-30deg);
        opacity: 0;
    }
}

.animate__lightSpeedOutLeft {
    -webkit-animation-name: lightSpeedOutLeft;
    animation-name: lightSpeedOutLeft;
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
}


/* Rotating entrances */

@-webkit-keyframes rotateIn {
    from {
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes rotateIn {
    from {
        -webkit-transform: rotate3d(0, 0, 1, -200deg);
        transform: rotate3d(0, 0, 1, -200deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateIn {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
    -webkit-transform-origin: center;
    transform-origin: center;
}

@-webkit-keyframes rotateInDownLeft {
    from {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes rotateInDownLeft {
    from {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInDownLeft {
    -webkit-animation-name: rotateInDownLeft;
    animation-name: rotateInDownLeft;
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
}

@-webkit-keyframes rotateInDownRight {
    from {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes rotateInDownRight {
    from {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInDownRight {
    -webkit-animation-name: rotateInDownRight;
    animation-name: rotateInDownRight;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
}

@-webkit-keyframes rotateInUpLeft {
    from {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes rotateInUpLeft {
    from {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInUpLeft {
    -webkit-animation-name: rotateInUpLeft;
    animation-name: rotateInUpLeft;
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
}

@-webkit-keyframes rotateInUpRight {
    from {
        -webkit-transform: rotate3d(0, 0, 1, -90deg);
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

@keyframes rotateInUpRight {
    from {
        -webkit-transform: rotate3d(0, 0, 1, -90deg);
        transform: rotate3d(0, 0, 1, -90deg);
        opacity: 0;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        opacity: 1;
    }
}

.animate__rotateInUpRight {
    -webkit-animation-name: rotateInUpRight;
    animation-name: rotateInUpRight;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
}


/* Rotating exits */

@-webkit-keyframes rotateOut {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0;
    }
}

@keyframes rotateOut {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 200deg);
        transform: rotate3d(0, 0, 1, 200deg);
        opacity: 0;
    }
}

.animate__rotateOut {
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut;
    -webkit-transform-origin: center;
    transform-origin: center;
}

@-webkit-keyframes rotateOutDownLeft {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownLeft {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 45deg);
        transform: rotate3d(0, 0, 1, 45deg);
        opacity: 0;
    }
}

.animate__rotateOutDownLeft {
    -webkit-animation-name: rotateOutDownLeft;
    animation-name: rotateOutDownLeft;
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
}

@-webkit-keyframes rotateOutDownRight {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
}

@keyframes rotateOutDownRight {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
}

.animate__rotateOutDownRight {
    -webkit-animation-name: rotateOutDownRight;
    animation-name: rotateOutDownRight;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
}

@-webkit-keyframes rotateOutUpLeft {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpLeft {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, -45deg);
        transform: rotate3d(0, 0, 1, -45deg);
        opacity: 0;
    }
}

.animate__rotateOutUpLeft {
    -webkit-animation-name: rotateOutUpLeft;
    animation-name: rotateOutUpLeft;
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
}

@-webkit-keyframes rotateOutUpRight {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0;
    }
}

@keyframes rotateOutUpRight {
    from {
        opacity: 1;
    }
    to {
        -webkit-transform: rotate3d(0, 0, 1, 90deg);
        transform: rotate3d(0, 0, 1, 90deg);
        opacity: 0;
    }
}

.animate__rotateOutUpRight {
    -webkit-animation-name: rotateOutUpRight;
    animation-name: rotateOutUpRight;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
}


/* Specials */

@-webkit-keyframes hinge {
    0% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate3d(0, 0, 1, 80deg);
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40%,
    80% {
        -webkit-transform: rotate3d(0, 0, 1, 60deg);
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1;
    }
    to {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0;
    }
}

@keyframes hinge {
    0% {
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    20%,
    60% {
        -webkit-transform: rotate3d(0, 0, 1, 80deg);
        transform: rotate3d(0, 0, 1, 80deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
    }
    40%,
    80% {
        -webkit-transform: rotate3d(0, 0, 1, 60deg);
        transform: rotate3d(0, 0, 1, 60deg);
        -webkit-animation-timing-function: ease-in-out;
        animation-timing-function: ease-in-out;
        opacity: 1;
    }
    to {
        -webkit-transform: translate3d(0, 700px, 0);
        transform: translate3d(0, 700px, 0);
        opacity: 0;
    }
}

.animate__hinge {
    -webkit-animation-duration: calc(1s * 2);
    animation-duration: calc(1s * 2);
    -webkit-animation-duration: calc(var(--animate-duration) * 2);
    animation-duration: calc(var(--animate-duration) * 2);
    -webkit-animation-name: hinge;
    animation-name: hinge;
    -webkit-transform-origin: top left;
    transform-origin: top left;
}

@-webkit-keyframes jackInTheBox {
    from {
        opacity: 0;
        -webkit-transform: scale(0.1) rotate(30deg);
        transform: scale(0.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }
    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg);
    }
    to {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes jackInTheBox {
    from {
        opacity: 0;
        -webkit-transform: scale(0.1) rotate(30deg);
        transform: scale(0.1) rotate(30deg);
        -webkit-transform-origin: center bottom;
        transform-origin: center bottom;
    }
    50% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    70% {
        -webkit-transform: rotate(3deg);
        transform: rotate(3deg);
    }
    to {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.animate__jackInTheBox {
    -webkit-animation-name: jackInTheBox;
    animation-name: jackInTheBox;
}


/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes rollIn {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__rollIn {
    -webkit-animation-name: rollIn;
    animation-name: rollIn;
}


/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    }
}

@keyframes rollOut {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
        transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    }
}

.animate__rollOut {
    -webkit-animation-name: rollOut;
    animation-name: rollOut;
}


/* Zooming entrances */

@-webkit-keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

@keyframes zoomIn {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    50% {
        opacity: 1;
    }
}

.animate__zoomIn {
    -webkit-animation-name: zoomIn;
    animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInDown {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInDown {
    -webkit-animation-name: zoomInDown;
    animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInLeft {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInLeft {
    -webkit-animation-name: zoomInLeft;
    animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInRight {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInRight {
    -webkit-animation-name: zoomInRight;
    animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomInUp {
    from {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomInUp {
    -webkit-animation-name: zoomInUp;
    animation-name: zoomInUp;
}


/* Zooming exits */

@-webkit-keyframes zoomOut {
    from {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    to {
        opacity: 0;
    }
}

@keyframes zoomOut {
    from {
        opacity: 1;
    }
    50% {
        opacity: 0;
        -webkit-transform: scale3d(0.3, 0.3, 0.3);
        transform: scale3d(0.3, 0.3, 0.3);
    }
    to {
        opacity: 0;
    }
}

.animate__zoomOut {
    -webkit-animation-name: zoomOut;
    animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomOutDown {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomOutDown {
    -webkit-animation-name: zoomOutDown;
    animation-name: zoomOutDown;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
}

@-webkit-keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
    }
}

@keyframes zoomOutLeft {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
        transform: scale(0.1) translate3d(-2000px, 0, 0);
    }
}

.animate__zoomOutLeft {
    -webkit-animation-name: zoomOutLeft;
    animation-name: zoomOutLeft;
    -webkit-transform-origin: left center;
    transform-origin: left center;
}

@-webkit-keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
    }
}

@keyframes zoomOutRight {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    }
    to {
        opacity: 0;
        -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
        transform: scale(0.1) translate3d(2000px, 0, 0);
    }
}

.animate__zoomOutRight {
    -webkit-animation-name: zoomOutRight;
    animation-name: zoomOutRight;
    -webkit-transform-origin: right center;
    transform-origin: right center;
}

@-webkit-keyframes zoomOutUp {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

@keyframes zoomOutUp {
    40% {
        opacity: 1;
        -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
        animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    }
    to {
        opacity: 0;
        -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
        -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
        animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    }
}

.animate__zoomOutUp {
    -webkit-animation-name: zoomOutUp;
    animation-name: zoomOutUp;
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
}


/* Sliding entrances */

@-webkit-keyframes slideInDown {
    from {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slideInDown {
    from {
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInDown {
    -webkit-animation-name: slideInDown;
    animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slideInLeft {
    from {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInLeft {
    -webkit-animation-name: slideInLeft;
    animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
    from {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slideInRight {
    from {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInRight {
    -webkit-animation-name: slideInRight;
    animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
    from {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

@keyframes slideInUp {
    from {
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
        visibility: visible;
    }
    to {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}

.animate__slideInUp {
    -webkit-animation-name: slideInUp;
    animation-name: slideInUp;
}


/* Sliding exits */

@-webkit-keyframes slideOutDown {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}

@keyframes slideOutDown {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }
}

.animate__slideOutDown {
    -webkit-animation-name: slideOutDown;
    animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

@keyframes slideOutLeft {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

.animate__slideOutLeft {
    -webkit-animation-name: slideOutLeft;
    animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}

@keyframes slideOutRight {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }
}

.animate__slideOutRight {
    -webkit-animation-name: slideOutRight;
    animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}

@keyframes slideOutUp {
    from {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    to {
        visibility: hidden;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0);
    }
}

.animate__slideOutUp {
    -webkit-animation-name: slideOutUp;
    animation-name: slideOutUp;
}

.custom-bounce {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounce.active {
    animation: bounce var(--duration) forwards;
    -webkit-animation: bounce var(--duration) forwards;
    -moz-animation: bounce var(--duration) forwards;
    -ms-animation: bounce var(--duration) forwards;
    -o-animation: bounce var(--duration) forwards;
}

.custom-bounceIn {
    opacity: 0;
    -webkit-transform: scale(0.3);
    transform: scale(0.3);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceIn.active {
    animation: bounceIn var(--duration) forwards;
    -webkit-animation: bounceIn var(--duration) forwards;
    -moz-animation: bounceIn var(--duration) forwards;
    -ms-animation: bounceIn var(--duration) forwards;
    -o-animation: bounceIn var(--duration) forwards;
}

.custom-bounceInRight {
    -webkit-transform: translate3d(3000px, 0, 0) scaleX(3);
    transform: translate3d(3000px, 0, 0) scaleX(3);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceInRight.active {
    animation: bounceInRight var(--duration) forwards;
    -webkit-animation: bounceInRight var(--duration) forwards;
    -moz-animation: bounceInRight var(--duration) forwards;
    -ms-animation: bounceInRight var(--duration) forwards;
    -o-animation: bounceInRight var(--duration) forwards;
}

.custom-bouncenInLeft {
    -webkit-transform: translate3d(-3000px, 0, 0) scaleX(3);
    transform: translate3d(-3000px, 0, 0) scaleX(3);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bouncenInLeft.active {
    animation: bounceInLeft var(--duration) forwards;
    -webkit-animation: bounceInLeft var(--duration) forwards;
    -moz-animation: bounceInLeft var(--duration) forwards;
    -ms-animation: bounceInLeft var(--duration) forwards;
    -o-animation: bounceInLeft var(--duration) forwards;
}

.custom-bounceInUp {
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceInUp.active {
    animation: bounceInUp var(--duration) forwards;
    -webkit-animation: bounceInUp var(--duration) forwards;
    -moz-animation: bounceInUp var(--duration) forwards;
    -ms-animation: bounceInUp var(--duration) forwards;
    -o-animation: bounceInUp var(--duration) forwards;
}

.custom-bounceInDown {
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceInDown.active {
    animation: bounceInDown var(--duration) forwards;
    -webkit-animation: bounceInDown var(--duration) forwards;
    -moz-animation: bounceInDown var(--duration) forwards;
    -ms-animation: bounceInDown var(--duration) forwards;
    -o-animation: bounceInDown var(--duration) forwards;
}

.custom-bounceOut {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceOut.active {
    animation: bounceOut var(--duration) forwards;
    -webkit-animation: bounceOut var(--duration) forwards;
    -moz-animation: bounceOut var(--duration) forwards;
    -ms-animation: bounceOut var(--duration) forwards;
    -o-animation: bounceOut var(--duration) forwards;
}

.custom-bounceOutDown {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceOutDown.active {
    animation: bounceOutDown var(--duration) forwards;
    -webkit-animation: bounceOutDown var(--duration) forwards;
    -moz-animation: bounceOutDown var(--duration) forwards;
    -ms-animation: bounceOutDown var(--duration) forwards;
    -o-animation: bounceOutDown var(--duration) forwards;
}

.custom-bounceOutLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceOutLeft.active {
    animation: bounceOutLeft var(--duration) forwards;
    -webkit-animation: bounceOutLeft var(--duration) forwards;
    -moz-animation: bounceOutLeft var(--duration) forwards;
    -ms-animation: bounceOutLeft var(--duration) forwards;
    -o-animation: bounceOutLeft var(--duration) forwards;
}

.custom-bounceOutRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceOutRight.active {
    animation: bounceOutRight var(--duration) forwards;
    -webkit-animation: bounceOutRight var(--duration) forwards;
    -moz-animation: bounceOutRight var(--duration) forwards;
    -ms-animation: bounceOutRight var(--duration) forwards;
    -o-animation: bounceOutRight var(--duration) forwards;
}

.custom-bounceOutUp {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-bounceOutUp.active {
    animation: bounceOutUp var(--duration) forwards;
    -webkit-animation: bounceOutUp var(--duration) forwards;
    -moz-animation: bounceOutUp var(--duration) forwards;
    -ms-animation: bounceOutUp var(--duration) forwards;
    -o-animation: bounceOutUp var(--duration) forwards;
}

.custom-fadeIn {
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeIn.active {
    animation: fadeIn var(--duration) forwards;
    -webkit-animation: fadeIn var(--duration) forwards;
    -moz-animation: fadeIn var(--duration) forwards;
    -ms-animation: fadeIn var(--duration) forwards;
    -o-animation: fadeIn var(--duration) forwards;
}

.custom-fadeInDown {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInDown.active {
    animation: fadeInDown var(--duration) forwards;
    -webkit-animation: fadeInDown var(--duration) forwards;
    -moz-animation: fadeInDown var(--duration) forwards;
    -ms-animation: fadeInDown var(--duration) forwards;
    -o-animation: fadeInDown var(--duration) forwards;
}

.custom-fadeInLeft {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInLeft.active {
    animation: fadeInLeft var(--duration) forwards;
    -webkit-animation: fadeInLeft var(--duration) forwards;
    -moz-animation: fadeInLeft var(--duration) forwards;
    -ms-animation: fadeInLeft var(--duration) forwards;
    -o-animation: fadeInLeft var(--duration) forwards;
}

.custom-fadeInRight {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInRight.active {
    animation: fadeInRight var(--duration) forwards;
    -webkit-animation: fadeInRight var(--duration) forwards;
    -moz-animation: fadeInRight var(--duration) forwards;
    -ms-animation: fadeInRight var(--duration) forwards;
    -o-animation: fadeInRight var(--duration) forwards;
}

.custom-fadeInUp {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInUp.active {
    animation: fadeInUp var(--duration) forwards;
    -webkit-animation: fadeInUp var(--duration) forwards;
    -moz-animation: fadeInUp var(--duration) forwards;
    -ms-animation: fadeInUp var(--duration) forwards;
    -o-animation: fadeInUp var(--duration) forwards;
}

.custom-fadeInLeftBig {
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
    opacity: 0;
}

.custom-fadeInLeftBig.active {
    animation: fadeInLeftBig var(--duration) forwards;
    -webkit-animation: fadeInLeftBig var(--duration) forwards;
    -moz-animation: fadeInLeftBig var(--duration) forwards;
    -ms-animation: fadeInLeftBig var(--duration) forwards;
    -o-animation: fadeInLeftBig var(--duration) forwards;
}

.custom-fadeInRightBig {
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
    opacity: 0;
}

.custom-fadeInRightBig.active {
    -webkit-animation: fadeInRightBig var(--duration) forwards;
    animation: fadeInRightBig var(--duration) forwards;
}

.custom-fadeInUpBig {
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInUpBig.active {
    animation: fadeInUpBig var(--duration) forwards;
    -webkit-animation: fadeInUpBig var(--duration) forwards;
    -moz-animation: fadeInUpBig var(--duration) forwards;
    -ms-animation: fadeInUpBig var(--duration) forwards;
    -o-animation: fadeInUpBig var(--duration) forwards;
}

.custom-fadeInDownBig {
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInDownBig.active {
    animation: fadeInDownBig var(--duration) forwards;
    -webkit-animation: fadeInDownBig var(--duration) forwards;
    -moz-animation: fadeInDownBig var(--duration) forwards;
    -ms-animation: fadeInDownBig var(--duration) forwards;
    -o-animation: fadeInDownBig var(--duration) forwards;
}

.custom-fadeInTopLeft {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInTopLeft.active {
    animation: fadeInTopLeft var(--duration) forwards;
    -webkit-animation: fadeInTopLeft var(--duration) forwards;
    -moz-animation: fadeInTopLeft var(--duration) forwards;
    -ms-animation: fadeInTopLeft var(--duration) forwards;
    -o-animation: fadeInTopLeft var(--duration) forwards;
}

.custom-fadeInTopRight {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInTopRight.active {
    animation: fadeInTopRight var(--duration) forwards;
    -webkit-animation: fadeInTopRight var(--duration) forwards;
    -moz-animation: fadeInTopRight var(--duration) forwards;
    -ms-animation: fadeInTopRight var(--duration) forwards;
    -o-animation: fadeInTopRight var(--duration) forwards;
}

.custom-fadeInBottomLeft {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInBottomLeft.active {
    animation: fadeInBottomLeft var(--duration) forwards;
    -webkit-animation: fadeInBottomLeft var(--duration) forwards;
    -moz-animation: fadeInBottomLeft var(--duration) forwards;
    -ms-animation: fadeInBottomLeft var(--duration) forwards;
    -o-animation: fadeInBottomLeft var(--duration) forwards;
}

.custom-fadeInBottomRight {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeInBottomRight.active {
    animation: fadeInBottomRight var(--duration) forwards;
    -webkit-animation: fadeInBottomRight var(--duration) forwards;
    -moz-animation: fadeInBottomRight var(--duration) forwards;
    -ms-animation: fadeInBottomRight var(--duration) forwards;
    -o-animation: fadeInBottomRight var(--duration) forwards;
}

.custom-fadeOut {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOut.active {
    animation: fadeOut var(--duration) forwards;
    -webkit-animation: fadeOut var(--duration) forwards;
    -moz-animation: fadeOut var(--duration) forwards;
    -ms-animation: fadeOut var(--duration) forwards;
    -o-animation: fadeOut var(--duration) forwards;
}

.custom-fadeOutDown {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutDown.active {
    animation: fadeOutDown var(--duration) forwards;
    -webkit-animation: fadeOutDown var(--duration) forwards;
    -moz-animation: fadeOutDown var(--duration) forwards;
    -ms-animation: fadeOutDown var(--duration) forwards;
    -o-animation: fadeOutDown var(--duration) forwards;
}

.custom-fadeOutDownBig {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutDownBig.active {
    animation: fadeOutDownBig var(--duration) forwards;
    -webkit-animation: fadeOutDownBig var(--duration) forwards;
    -moz-animation: fadeOutDownBig var(--duration) forwards;
    -ms-animation: fadeOutDownBig var(--duration) forwards;
    -o-animation: fadeOutDownBig var(--duration) forwards;
}

.custom-fadeOutLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutLeft.active {
    animation: fadeOutLeft var(--duration) forwards;
    -webkit-animation: fadeOutLeft var(--duration) forwards;
    -moz-animation: fadeOutLeft var(--duration) forwards;
    -ms-animation: fadeOutLeft var(--duration) forwards;
    -o-animation: fadeOutLeft var(--duration) forwards;
}

.custom-fadeOutLeftBig {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutLeftBig.active {
    animation: fadeOutLeftBig var(--duration) forwards;
    -webkit-animation: fadeOutLeftBig var(--duration) forwards;
    -moz-animation: fadeOutLeftBig var(--duration) forwards;
    -ms-animation: fadeOutLeftBig var(--duration) forwards;
    -o-animation: fadeOutLeftBig var(--duration) forwards;
}

.custom-fadeOutRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutRight.active {
    animation: fadeOutRight var(--duration) forwards;
    -webkit-animation: fadeOutRight var(--duration) forwards;
    -moz-animation: fadeOutRight var(--duration) forwards;
    -ms-animation: fadeOutRight var(--duration) forwards;
    -o-animation: fadeOutRight var(--duration) forwards;
}

.custom-fadeOutRightBig {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutRightBig.active {
    animation: fadeOutRightBig var(--duration) forwards;
    -webkit-animation: fadeOutRightBig var(--duration) forwards;
    -moz-animation: fadeOutRightBig var(--duration) forwards;
    -ms-animation: fadeOutRightBig var(--duration) forwards;
    -o-animation: fadeOutRightBig var(--duration) forwards;
}

.custom-fadeOutUp {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutUp.active {
    animation: fadeOutUp var(--duration) forwards;
    -webkit-animation: fadeOutUp var(--duration) forwards;
    -moz-animation: fadeOutUp var(--duration) forwards;
    -ms-animation: fadeOutUp var(--duration) forwards;
    -o-animation: fadeOutUp var(--duration) forwards;
}

.custom-fadeOutUpBig {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutUpBig.active {
    animation: fadeOutUpBig var(--duration) forwards;
    -webkit-animation: fadeOutUpBig var(--duration) forwards;
    -moz-animation: fadeOutUpBig var(--duration) forwards;
    -ms-animation: fadeOutUpBig var(--duration) forwards;
    -o-animation: fadeOutUpBig var(--duration) forwards;
}

.custom-fadeOutTopLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutTopLeft.active {
    animation: fadeOutTopLeft var(--duration) forwards;
    -webkit-animation: fadeOutTopLeft var(--duration) forwards;
    -moz-animation: fadeOutTopLeft var(--duration) forwards;
    -ms-animation: fadeOutTopLeft var(--duration) forwards;
    -o-animation: fadeOutTopLeft var(--duration) forwards;
}

.custom-fadeOutTopRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutTopRight.active {
    animation: fadeOutTopRight var(--duration) forwards;
    -webkit-animation: fadeOutTopRight var(--duration) forwards;
    -moz-animation: fadeOutTopRight var(--duration) forwards;
    -ms-animation: fadeOutTopRight var(--duration) forwards;
    -o-animation: fadeOutTopRight var(--duration) forwards;
}

.custom-fadeOutBottomRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutBottomRight.active {
    animation: fadeOutBottomRight var(--duration) forwards;
    -webkit-animation: fadeOutBottomRight var(--duration) forwards;
    -moz-animation: fadeOutBottomRight var(--duration) forwards;
    -ms-animation: fadeOutBottomRight var(--duration) forwards;
    -o-animation: fadeOutBottomRight var(--duration) forwards;
}

.custom-fadeOutBottomLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-fadeOutBottomLeft.active {
    animation: fadeOutBottomLeft var(--duration) forwards;
    -webkit-animation: fadeOutBottomLeft var(--duration) forwards;
    -moz-animation: fadeOutBottomLeft var(--duration) forwards;
    -ms-animation: fadeOutBottomLeft var(--duration) forwards;
    -o-animation: fadeOutBottomLeft var(--duration) forwards;
}

.custom-zoomIn {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomIn.active {
    animation: zoomIn var(--duration) forwards;
    -webkit-animation: zoomIn var(--duration) forwards;
    -moz-animation: zoomIn var(--duration) forwards;
    -ms-animation: zoomIn var(--duration) forwards;
    -o-animation: zoomIn var(--duration) forwards;
}

.custom-zoomInDown {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomInDown.active {
    animation: zoomInDown var(--duration) forwards;
    -webkit-animation: zoomInDown var(--duration) forwards;
    -moz-animation: zoomInDown var(--duration) forwards;
    -ms-animation: zoomInDown var(--duration) forwards;
    -o-animation: zoomInDown var(--duration) forwards;
}

.custom-zoomInLeft {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomInLeft.active {
    animation: zoomInLeft var(--duration) forwards;
    -webkit-animation: zoomInLeft var(--duration) forwards;
    -moz-animation: zoomInLeft var(--duration) forwards;
    -ms-animation: zoomInLeft var(--duration) forwards;
    -o-animation: zoomInLeft var(--duration) forwards;
}

.custom-zoomInRight {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomInRight.active {
    animation: zoomInRight var(--duration) forwards;
    -webkit-animation: zoomInRight var(--duration) forwards;
    -moz-animation: zoomInRight var(--duration) forwards;
    -ms-animation: zoomInRight var(--duration) forwards;
    -o-animation: zoomInRight var(--duration) forwards;
}

.custom-zoomInUp {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomInUp.active {
    animation: zoomInUp var(--duration) forwards;
    -webkit-animation: zoomInUp var(--duration) forwards;
    -moz-animation: zoomInUp var(--duration) forwards;
    -ms-animation: zoomInUp var(--duration) forwards;
    -o-animation: zoomInUp var(--duration) forwards;
}

.custom-zoomOut {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomOut.active {
    animation: zoomOut var(--duration) forwards;
    -webkit-animation: zoomOut var(--duration) forwards;
    -moz-animation: zoomOut var(--duration) forwards;
    -ms-animation: zoomOut var(--duration) forwards;
    -o-animation: zoomOut var(--duration) forwards;
}

.custom-zoomOutDown {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomOutDown.active {
    animation: zoomOutDown var(--duration) forwards;
    -webkit-animation: zoomOutDown var(--duration) forwards;
    -moz-animation: zoomOutDown var(--duration) forwards;
    -ms-animation: zoomOutDown var(--duration) forwards;
    -o-animation: zoomOutDown var(--duration) forwards;
}

.custom-zoomOutLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomOutLeft.active {
    animation: zoomOutLeft var(--duration) forwards;
    -webkit-animation: zoomOutLeft var(--duration) forwards;
    -moz-animation: zoomOutLeft var(--duration) forwards;
    -ms-animation: zoomOutLeft var(--duration) forwards;
    -o-animation: zoomOutLeft var(--duration) forwards;
}

.custom-zoomOutRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomOutRight.active {
    animation: zoomOutRight var(--duration) forwards;
    -webkit-animation: zoomOutRight var(--duration) forwards;
    -moz-animation: zoomOutRight var(--duration) forwards;
    -ms-animation: zoomOutRight var(--duration) forwards;
    -o-animation: zoomOutRight var(--duration) forwards;
}

.custom-zoomOutUp {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-zoomOutUp.active {
    animation: zoomOutUp var(--duration) forwards;
    -webkit-animation: zoomOutUp var(--duration) forwards;
    -moz-animation: zoomOutUp var(--duration) forwards;
    -ms-animation: zoomOutUp var(--duration) forwards;
    -o-animation: zoomOutUp var(--duration) forwards;
}

.custom-slideInDown {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideInDown.active {
    animation: slideInDown var(--duration) forwards;
    -webkit-animation: slideInDown var(--duration) forwards;
    -moz-animation: slideInDown var(--duration) forwards;
    -ms-animation: slideInDown var(--duration) forwards;
    -o-animation: slideInDown var(--duration) forwards;
}

.custom-slideInLeft {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideInLeft.active {
    animation: slideInLeft var(--duration) forwards;
    -webkit-animation: slideInLeft var(--duration) forwards;
    -moz-animation: slideInLeft var(--duration) forwards;
    -ms-animation: slideInLeft var(--duration) forwards;
    -o-animation: slideInLeft var(--duration) forwards;
}

.custom-slideInRight {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideInRight.active {
    animation: slideInRight var(--duration) forwards;
    -webkit-animation: slideInRight var(--duration) forwards;
    -moz-animation: slideInRight var(--duration) forwards;
    -ms-animation: slideInRight var(--duration) forwards;
    -o-animation: slideInRight var(--duration) forwards;
}

.custom-slideInUp {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideInUp.active {
    animation: slideInUp var(--duration) forwards;
    -webkit-animation: slideInUp var(--duration) forwards;
    -moz-animation: slideInUp var(--duration) forwards;
    -ms-animation: slideInUp var(--duration) forwards;
    -o-animation: slideInUp var(--duration) forwards;
}

.custom-slideOutDown {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideOutDown.active {
    animation: slideOutDown var(--duration) forwards;
    -webkit-animation: slideOutDown var(--duration) forwards;
    -moz-animation: slideOutDown var(--duration) forwards;
    -ms-animation: slideOutDown var(--duration) forwards;
    -o-animation: slideOutDown var(--duration) forwards;
}

.custom-slideOutLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideOutLeft.active {
    animation: slideOutLeft var(--duration) forwards;
    -webkit-animation: slideOutLeft var(--duration) forwards;
    -moz-animation: slideOutLeft var(--duration) forwards;
    -ms-animation: slideOutLeft var(--duration) forwards;
    -o-animation: slideOutLeft var(--duration) forwards;
}

.custom-slideOutRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideOutRight.active {
    animation: slideOutRight var(--duration) forwards;
    -webkit-animation: slideOutRight var(--duration) forwards;
    -moz-animation: slideOutRight var(--duration) forwards;
    -ms-animation: slideOutRight var(--duration) forwards;
    -o-animation: slideOutRight var(--duration) forwards;
}

.custom-slideOutUp {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-slideOutUp.active {
    animation: slideOutUp var(--duration) forwards;
    -webkit-animation: slideOutUp var(--duration) forwards;
    -moz-animation: slideOutUp var(--duration) forwards;
    -ms-animation: slideOutUp var(--duration) forwards;
    -o-animation: slideOutUp var(--duration) forwards;
}

.custom-hinge {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-hinge.active {
    animation: hinge var(--duration) forwards;
    -webkit-animation: hinge var(--duration) forwards;
    -moz-animation: hinge var(--duration) forwards;
    -ms-animation: hinge var(--duration) forwards;
    -o-animation: hinge var(--duration) forwards;
}

.custom-jackInTheBox {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
    transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-jackInTheBox.active {
    animation: jackInTheBox var(--duration) forwards;
    -webkit-animation: jackInTheBox var(--duration) forwards;
    -moz-animation: jackInTheBox var(--duration) forwards;
    -ms-animation: jackInTheBox var(--duration) forwards;
    -o-animation: jackInTheBox var(--duration) forwards;
}

.custom-rollIn {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rollIn.active {
    animation: rollIn var(--duration) forwards;
    -webkit-animation: rollIn var(--duration) forwards;
    -moz-animation: rollIn var(--duration) forwards;
    -ms-animation: rollIn var(--duration) forwards;
    -o-animation: rollIn var(--duration) forwards;
}

.custom-rollOut {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rollOut.active {
    animation: rollOut var(--duration) forwards;
    -webkit-animation: rollOut var(--duration) forwards;
    -moz-animation: rollOut var(--duration) forwards;
    -ms-animation: rollOut var(--duration) forwards;
    -o-animation: rollOut var(--duration) forwards;
}

.custom-lightSpeedInRight {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-lightSpeedInRight.active {
    animation: lightSpeedInRight var(--duration) forwards;
    -webkit-animation: lightSpeedInRight var(--duration) forwards;
    -moz-animation: lightSpeedInRight var(--duration) forwards;
    -ms-animation: lightSpeedInRight var(--duration) forwards;
    -o-animation: lightSpeedInRight var(--duration) forwards;
}

.custom-lightSpeedInLeft {
    -webkit-transform: translate3d(-100%, 0, 0) skewX(30deg);
    transform: translate3d(-100%, 0, 0) skewX(30deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-lightSpeedInLeft.active {
    animation: lightSpeedInLeft var(--duration) forwards;
    -webkit-animation: lightSpeedInLeft var(--duration) forwards;
    -moz-animation: lightSpeedInLeft var(--duration) forwards;
    -ms-animation: lightSpeedInLeft var(--duration) forwards;
    -o-animation: lightSpeedInLeft var(--duration) forwards;
}

.custom-lightSpeedOutRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-lightSpeedOutRight.active {
    animation: lightSpeedOutRight var(--duration) forwards;
    -webkit-animation: lightSpeedOutRight var(--duration) forwards;
    -moz-animation: lightSpeedOutRight var(--duration) forwards;
    -ms-animation: lightSpeedOutRight var(--duration) forwards;
    -o-animation: lightSpeedOutRight var(--duration) forwards;
}

.custom-lightSpeedOutLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-lightSpeedOutLeft.active {
    animation: lightSpeedOutLeft var(--duration) forwards;
    -webkit-animation: lightSpeedOutLeft var(--duration) forwards;
    -moz-animation: lightSpeedOutLeft var(--duration) forwards;
    -ms-animation: lightSpeedOutLeft var(--duration) forwards;
    -o-animation: lightSpeedOutLeft var(--duration) forwards;
}

.custom-rotateIn {
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateIn.active {
    animation: rotateIn var(--duration) forwards;
    -webkit-animation: rotateIn var(--duration) forwards;
    -moz-animation: rotateIn var(--duration) forwards;
    -ms-animation: rotateIn var(--duration) forwards;
    -o-animation: rotateIn var(--duration) forwards;
}

.custom-rotateInDownLeft {
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateInDownLeft.active {
    animation: rotateInDownLeft var(--duration) forwards;
    -webkit-animation: rotateInDownLeft var(--duration) forwards;
    -moz-animation: rotateInDownLeft var(--duration) forwards;
    -ms-animation: rotateInDownLeft var(--duration) forwards;
    -o-animation: rotateInDownLeft var(--duration) forwards;
}

.custom-rotateInDownRight {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateInDownRight.active {
    animation: rotateInDownRight var(--duration) forwards;
    -webkit-animation: rotateInDownRight var(--duration) forwards;
    -moz-animation: rotateInDownRight var(--duration) forwards;
    -ms-animation: rotateInDownRight var(--duration) forwards;
    -o-animation: rotateInDownRight var(--duration) forwards;
}

.custom-rotateInUpLeft {
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateInUpLeft.active {
    animation: rotateInUpLeft var(--duration) forwards;
    -webkit-animation: rotateInUpLeft var(--duration) forwards;
    -moz-animation: rotateInUpLeft var(--duration) forwards;
    -ms-animation: rotateInUpLeft var(--duration) forwards;
    -o-animation: rotateInUpLeft var(--duration) forwards;
}

.custom-rotateInUpRight {
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateInUpRight.active {
    animation: rotateInUpRight var(--duration) forwards;
    -webkit-animation: rotateInUpRight var(--duration) forwards;
    -moz-animation: rotateInUpRight var(--duration) forwards;
    -ms-animation: rotateInUpRight var(--duration) forwards;
    -o-animation: rotateInUpRight var(--duration) forwards;
}

.custom-rotateOut {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateOut.active {
    animation: rotateOut var(--duration) forwards;
    -webkit-animation: rotateOut var(--duration) forwards;
    -moz-animation: rotateOut var(--duration) forwards;
    -ms-animation: rotateOut var(--duration) forwards;
    -o-animation: rotateOut var(--duration) forwards;
}

.custom-rotateOutDownLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateOutDownLeft.active {
    animation: rotateOutDownLeft var(--duration) forwards;
    -webkit-animation: rotateOutDownLeft var(--duration) forwards;
    -moz-animation: rotateOutDownLeft var(--duration) forwards;
    -ms-animation: rotateOutDownLeft var(--duration) forwards;
    -o-animation: rotateOutDownLeft var(--duration) forwards;
}

.custom-rotateOutDownRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateOutDownRight.active {
    animation: rotateOutDownRight var(--duration) forwards;
    -webkit-animation: rotateOutDownRight var(--duration) forwards;
    -moz-animation: rotateOutDownRight var(--duration) forwards;
    -ms-animation: rotateOutDownRight var(--duration) forwards;
    -o-animation: rotateOutDownRight var(--duration) forwards;
}

.custom-rotateOutUpLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateOutUpLeft.active {
    animation: rotateOutUpLeft var(--duration) forwards;
    -webkit-animation: rotateOutUpLeft var(--duration) forwards;
    -moz-animation: rotateOutUpLeft var(--duration) forwards;
    -ms-animation: rotateOutUpLeft var(--duration) forwards;
    -o-animation: rotateOutUpLeft var(--duration) forwards;
}

.custom-rotateOutUpRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rotateOutUpRight.active {
    animation: rotateOutUpRight var(--duration) forwards;
    -webkit-animation: rotateOutUpRight var(--duration) forwards;
    -moz-animation: rotateOutUpRight var(--duration) forwards;
    -ms-animation: rotateOutUpRight var(--duration) forwards;
    -o-animation: rotateOutUpRight var(--duration) forwards;
}

.custom-flip {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-flip.active {
    animation: flip var(--duration) forwards;
    -webkit-animation: flip var(--duration) forwards;
    -moz-animation: flip var(--duration) forwards;
    -ms-animation: flip var(--duration) forwards;
    -o-animation: flip var(--duration) forwards;
}

.custom-flipInX {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-flipInX.active {
    animation: flipInX var(--duration) forwards;
    -webkit-animation: flipInX var(--duration) forwards;
    -moz-animation: flipInX var(--duration) forwards;
    -ms-animation: flipInX var(--duration) forwards;
    -o-animation: flipInX var(--duration) forwards;
}

.custom-flipInY {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-flipInY.active {
    animation: flipInY var(--duration) forwards;
    -webkit-animation: flipInY var(--duration) forwards;
    -moz-animation: flipInY var(--duration) forwards;
    -ms-animation: flipInY var(--duration) forwards;
    -o-animation: flipInY var(--duration) forwards;
}

.custom-flipOutX {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-flipOutX.active {
    animation: flipOutX var(--duration) forwards;
    -webkit-animation: flipOutX var(--duration) forwards;
    -moz-animation: flipOutX var(--duration) forwards;
    -ms-animation: flipOutX var(--duration) forwards;
    -o-animation: flipOutX var(--duration) forwards;
}

.custom-flipOutY {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-flipOutY.active {
    animation: flipOutY var(--duration) forwards;
    -webkit-animation: flipOutY var(--duration) forwards;
    -moz-animation: flipOutY var(--duration) forwards;
    -ms-animation: flipOutY var(--duration) forwards;
    -o-animation: flipOutY var(--duration) forwards;
}

.custom-flash {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-flash.active {
    animation: flash var(--duration) forwards;
    -webkit-animation: flash var(--duration) forwards;
    -moz-animation: flash var(--duration) forwards;
    -ms-animation: flash var(--duration) forwards;
    -o-animation: flash var(--duration) forwards;
}

.custom-pulse {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-pulse.active {
    animation: pulse var(--duration) forwards;
    -webkit-animation: pulse var(--duration) forwards;
    -moz-animation: pulse var(--duration) forwards;
    -ms-animation: pulse var(--duration) forwards;
    -o-animation: pulse var(--duration) forwards;
}

.custom-rubberBand {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-rubberBand.active {
    animation: rubberBand var(--duration) forwards;
    -webkit-animation: rubberBand var(--duration) forwards;
    -moz-animation: rubberBand var(--duration) forwards;
    -ms-animation: rubberBand var(--duration) forwards;
    -o-animation: rubberBand var(--duration) forwards;
}

.custom-shakeX {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-shakeX.active {
    animation: shakeX var(--duration) forwards;
    -webkit-animation: shakeX var(--duration) forwards;
    -moz-animation: shakeX var(--duration) forwards;
    -ms-animation: shakeX var(--duration) forwards;
    -o-animation: shakeX var(--duration) forwards;
}

.custom-shakeX {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-shakeX.active {
    animation: shakeX var(--duration) forwards;
    -webkit-animation: shakeX var(--duration) forwards;
    -moz-animation: shakeX var(--duration) forwards;
    -ms-animation: shakeX var(--duration) forwards;
    -o-animation: shakeX var(--duration) forwards;
}

.custom-headShake {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-headShake.active {
    animation: headShake var(--duration) forwards;
    -webkit-animation: headShake var(--duration) forwards;
    -moz-animation: headShake var(--duration) forwards;
    -ms-animation: headShake var(--duration) forwards;
    -o-animation: headShake var(--duration) forwards;
}

.custom-swing {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-swing.active {
    animation: swing var(--duration) forwards;
    -webkit-animation: swing var(--duration) forwards;
    -moz-animation: swing var(--duration) forwards;
    -ms-animation: swing var(--duration) forwards;
    -o-animation: swing var(--duration) forwards;
}

.custom-tada {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-tada.active {
    animation: tada var(--duration) forwards;
    -webkit-animation: tada var(--duration) forwards;
    -moz-animation: tada var(--duration) forwards;
    -ms-animation: tada var(--duration) forwards;
    -o-animation: tada var(--duration) forwards;
}

.custom-wobble {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-wobble.active {
    animation: wobble var(--duration) forwards;
    -webkit-animation: wobble var(--duration) forwards;
    -moz-animation: wobble var(--duration) forwards;
    -ms-animation: wobble var(--duration) forwards;
    -o-animation: wobble var(--duration) forwards;
}

.custom-jello {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-jello.active {
    animation: jello var(--duration) forwards;
    -webkit-animation: jello var(--duration) forwards;
    -moz-animation: jello var(--duration) forwards;
    -ms-animation: jello var(--duration) forwards;
    -o-animation: jello var(--duration) forwards;
}

.custom-heartBeat {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-heartBeat.active {
    animation: heartBeat var(--duration) forwards;
    -webkit-animation: heartBeat var(--duration) forwards;
    -moz-animation: heartBeat var(--duration) forwards;
    -ms-animation: heartBeat var(--duration) forwards;
    -o-animation: heartBeat var(--duration) forwards;
}

.custom-backInDown {
    -webkit-transform: translateY(-1200px) scale(0.7);
    transform: translateY(-1200px) scale(0.7);
    opacity: 0.7;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backInDown.active {
    animation: backInDown var(--duration) forwards;
    -webkit-animation: backInDown var(--duration) forwards;
    -moz-animation: backInDown var(--duration) forwards;
    -ms-animation: backInDown var(--duration) forwards;
    -o-animation: backInDown var(--duration) forwards;
}

.custom-backInLeft {
    -webkit-transform: translateX(-2000px) scale(0.7);
    transform: translateX(-2000px) scale(0.7);
    opacity: 0.7;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backInLeft.active {
    animation: backInLeft var(--duration) forwards;
    -webkit-animation: backInLeft var(--duration) forwards;
    -moz-animation: backInLeft var(--duration) forwards;
    -ms-animation: backInLeft var(--duration) forwards;
    -o-animation: backInLeft var(--duration) forwards;
}

.custom-backInRight {
    -webkit-transform: translateX(2000px) scale(0.7);
    transform: translateX(2000px) scale(0.7);
    opacity: 0.7;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backInRight.active {
    animation: backInRight var(--duration) forwards;
    -webkit-animation: backInRight var(--duration) forwards;
    -moz-animation: backInRight var(--duration) forwards;
    -ms-animation: backInRight var(--duration) forwards;
    -o-animation: backInRight var(--duration) forwards;
}

.custom-backInUp {
    -webkit-transform: translateY(1200px) scale(0.7);
    transform: translateY(1200px) scale(0.7);
    opacity: 0.7;
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backInUp.active {
    animation: backInUp var(--duration) forwards;
    -webkit-animation: backInUp var(--duration) forwards;
    -moz-animation: backInUp var(--duration) forwards;
    -ms-animation: backInUp var(--duration) forwards;
    -o-animation: backInUp var(--duration) forwards;
}

.custom-backOutDown {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backOutDown.active {
    animation: backOutDown var(--duration) forwards;
    -webkit-animation: backOutDown var(--duration) forwards;
    -moz-animation: backOutDown var(--duration) forwards;
    -ms-animation: backOutDown var(--duration) forwards;
    -o-animation: backOutDown var(--duration) forwards;
}

.custom-backOutLeft {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backOutLeft.active {
    animation: backOutLeft var(--duration) forwards;
    -webkit-animation: backOutLeft var(--duration) forwards;
    -moz-animation: backOutLeft var(--duration) forwards;
    -ms-animation: backOutLeft var(--duration) forwards;
    -o-animation: backOutLeft var(--duration) forwards;
}

.custom-backOutRight {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backOutRight.active {
    animation: backOutRight var(--duration) forwards;
    -webkit-animation: backOutRight var(--duration) forwards;
    -moz-animation: backOutRight var(--duration) forwards;
    -ms-animation: backOutRight var(--duration) forwards;
    -o-animation: backOutRight var(--duration) forwards;
}

.custom-backOutUp {
    -webkit-animation-delay: var(--delay) !important;
    animation-delay: var(--delay) !important;
}

.custom-backOutUp.active {
    animation: backOutUp var(--duration) forwards;
    -webkit-animation: backOutUp var(--duration) forwards;
    -moz-animation: backOutUp var(--duration) forwards;
    -ms-animation: backOutUp var(--duration) forwards;
    -o-animation: backOutUp var(--duration) forwards;
}

.swiper-wrapper.row {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.swiper.rows .col {
    margin-bottom: 0;
}

.swiper-container {
    overflow: hidden;
}

.swiper-slide {
    height: initial;
    overflow: hidden;
}

.swiper-pagination {
    position: static;
    margin-top: 1.6rem;
}

.swiper-pagination-bullet {
    --circle: -0.4rem;
    background: #f6dbea;
    opacity: 1;
    position: relative;
    border-radius: 1.6rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.swiper-pagination-bullet-active {
    width: 6rem;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), to(#f58a25));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%);
}

.swiper-control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.6rem;
    --size: 4rem;
}

.swiper-control-btn {
    width: var(--size);
    height: var(--size);
    border-radius: 100rem;
    background-color: white;
    border: 0.1rem solid #121110;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    cursor: pointer;
    transition: 0.3s ease-in-out;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -ms-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    z-index: 5;
    position: relative;
    overflow: hidden;
    font-size: 1.6rem;
    color: #121110;
}

.swiper-control-btn::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #8a2784;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

.swiper-control-btn::after {
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
}

.swiper-control-btn>* {
    position: relative;
    z-index: 2;
}

.swiper-control-btn.swiper-button-disabled {
    background-color: #dddddd;
    opacity: 0.5;
    cursor: default;
    -webkit-box-shadow: none;
    box-shadow: none;
}

@media (hover: hover) {
    .swiper-control-btn:hover:not(.swiper-button-disabled) {
        color: white !important;
        border-color: transparent;
    }
    .swiper-control-btn:hover:not(.swiper-button-disabled)::after {
        left: 0;
        width: 100%;
    }
}

.swiper-control.white .swiper-control-btn {
    background-color: transparent;
    border-color: white;
    color: white;
}

@media screen and (max-width: 1350px) {
    .swiper-control.white.mobile-plus .swiper-control-btn {
        background-color: white;
        border-color: #8a2784;
        color: #8a2784;
    }
}

.swiper-control.posi .swiper-control-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
}

.swiper-control.posi.minus .swiper-prev {
    right: calc(100% + 4rem);
}

@media screen and (max-width: 1350px) {
    .swiper-control.posi.minus .swiper-prev {
        right: unset;
        left: calc(var(--size) / 2 * -1);
    }
}

.swiper-control.posi.minus .swiper-next {
    left: calc(100% + 4rem);
}

@media screen and (max-width: 1350px) {
    .swiper-control.posi.minus .swiper-next {
        left: unset;
        right: calc(var(--size) / 2 * -1);
    }
}

@media screen and (max-width: 1199px) {
    .swiper-control.posi.minus.mobile-plus .swiper-prev {
        left: calc((var(--size) / 2 * -1) + (1.5rem / 2));
    }
    .swiper-control.posi.minus.mobile-plus .swiper-next {
        right: calc((var(--size) / 2 * -1) + (1.5rem / 2));
    }
}

.swiper-control.posi.midle .swiper-prev {
    left: calc(var(--size) / 2 * -1);
}

.swiper-control.posi.midle .swiper-next {
    right: calc(var(--size) / 2 * -1);
}

.swiper-control.posi.plus .swiper-prev {
    left: 1rem;
}

.swiper-control.posi.plus .swiper-next {
    right: 1rem;
}

@media screen and (max-width: 1199px) {
    .swiper-control.posi.mobile-plus .swiper-prev {
        left: calc((var(--size) / 2 * -1) + (1.5rem / 2));
    }
    .swiper-control.posi.mobile-plus .swiper-next {
        right: calc((var(--size) / 2 * -1) + (1.5rem / 2));
    }
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.1);
    height: 0.1rem !important;
}

.swiper-pagination-progressbar-fill {
    background-color: #121110 !important;
}

.load-img {
    position: relative;
    overflow: hidden;
}

.load-img::before,
.load-img::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
}

.load-img img,
.load-img form {
    opacity: 0;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}

.load-img:before {
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.6) 100%);
}

.load-img:after {
    background-color: #f8f8f8;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
}

.load-img.is-inview img,
.load-img.is-inview form {
    opacity: 1;
}

.load-img.is-inview:before {
    -webkit-transition: 1.6s ease;
    transition: 1.6s ease;
    width: 0;
}

.load-img.is-inview:after {
    -webkit-transition: 0.8s ease;
    transition: 0.8s ease;
    width: 0;
}

.load-img-second {
    position: relative;
    overflow: hidden;
}

.load-img-second::before {
    position: absolute;
    content: "";
    inset: 0;
    background-color: #8a2784;
    z-index: 1;
    width: 100%;
    height: 100%;
    -webkit-transform: translate(0);
    transform: translate(0);
    transition: 0.8s ease-out;
    -webkit-transition: 0.8s ease-out;
    -moz-transition: 0.8s ease-out;
    -ms-transition: 0.8s ease-out;
    -o-transition: 0.8s ease-out;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
    pointer-events: none;
    z-index: 3;
}

.load-img-second::after {
    position: absolute;
    content: "";
    inset: 0;
    background-color: #8a2784;
    z-index: 1;
    width: 100%;
    height: 100%;
    -webkit-transform: translate(0);
    transform: translate(0);
    transition: 0.8s ease-out;
    -webkit-transition: 0.8s ease-out;
    -moz-transition: 0.8s ease-out;
    -ms-transition: 0.8s ease-out;
    -o-transition: 0.8s ease-out;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
    pointer-events: none;
    z-index: 3;
}

.load-img-second.is-inview::after {
    -webkit-transform: translate(0, -110%);
    transform: translate(0, -110%);
}

.load-img-second.is-inview::before {
    -webkit-transform: translate(0, 110%);
    transform: translate(0, 110%);
}

.load-img-third {
    position: relative;
    overflow: hidden;
}

.load-img-third img {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
    opacity: 0;
    transition: 1.2s ease;
    -webkit-transition: 1.2s ease;
    -moz-transition: 1.2s ease;
    -ms-transition: 1.2s ease;
    -o-transition: 1.2s ease;
    transition-delay: 1s;
    -webkit-transition-delay: 1s;
    -moz-transition-delay: 1s;
    -ms-transition-delay: 1s;
    -o-transition-delay: 1s;
}

.load-img-third.is-inview::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 100%;
    left: 0;
    margin-bottom: -10px;
    background-color: #e2dbc0;
    z-index: 3;
    -webkit-animation: 1s reveal-img-before cubic-bezier(0.6, 0, 0.195, 1);
    animation: 1s reveal-img-before cubic-bezier(0.6, 0, 0.195, 1);
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.load-img-third.is-inview img {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 1;
    display: block;
}

.load-img-third.second.is-inview img {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    display: block;
}

@-webkit-keyframes reveal-img-before {
    0% {
        top: 0;
        right: 100%;
        bottom: 100%;
        margin-bottom: -10px;
    }
    40% {
        top: 0;
        right: 0;
        bottom: 100%;
        margin-bottom: -10px;
    }
    60% {
        top: 0;
    }
    80% {
        right: 0;
        bottom: -1px;
        margin-bottom: 0;
    }
    100% {
        top: 100%;
        right: 0;
        bottom: -1px;
        margin-bottom: 0;
    }
}

@keyframes reveal-img-before {
    0% {
        top: 0;
        right: 100%;
        bottom: 100%;
        margin-bottom: -10px;
    }
    40% {
        top: 0;
        right: 0;
        bottom: 100%;
        margin-bottom: -10px;
    }
    60% {
        top: 0;
    }
    80% {
        right: 0;
        bottom: -1px;
        margin-bottom: 0;
    }
    100% {
        top: 100%;
        right: 0;
        bottom: -1px;
        margin-bottom: 0;
    }
}

@-webkit-keyframes imgLoad {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

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

@-webkit-keyframes slide-in-right {
    0% {
        -webkit-transform: translate3D(-100%, 0, 0);
        transform: translate3D(-100%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@keyframes slide-in-right {
    0% {
        -webkit-transform: translate3D(-100%, 0, 0);
        transform: translate3D(-100%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@-webkit-keyframes slide-out-right {
    0% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(100%, 0, 0);
        transform: translate3D(100%, 0, 0);
    }
}

@keyframes slide-out-right {
    0% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(100%, 0, 0);
        transform: translate3D(100%, 0, 0);
    }
}

@-webkit-keyframes slide-in-right-50 {
    0% {
        -webkit-transform: translate3D(-50%, 0, 0);
        transform: translate3D(-50%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@keyframes slide-in-right-50 {
    0% {
        -webkit-transform: translate3D(-50%, 0, 0);
        transform: translate3D(-50%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@-webkit-keyframes slide-in-left {
    0% {
        -webkit-transform: translate3D(100%, 0, 0);
        transform: translate3D(100%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@keyframes slide-in-left {
    0% {
        -webkit-transform: translate3D(100%, 0, 0);
        transform: translate3D(100%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@-webkit-keyframes slide-out-left {
    0% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(-100%, 0, 0);
        transform: translate3D(-100%, 0, 0);
    }
}

@keyframes slide-out-left {
    0% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(-100%, 0, 0);
        transform: translate3D(-100%, 0, 0);
    }
}

@-webkit-keyframes slide-in-top {
    0% {
        -webkit-transform: translate3D(0, -100%, 0);
        transform: translate3D(0, -100%, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@keyframes slide-in-top {
    0% {
        -webkit-transform: translate3D(0, -100%, 0);
        transform: translate3D(0, -100%, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@-webkit-keyframes slide-out-left-50 {
    0% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(-50%, 0, 0);
        transform: translate3D(-50%, 0, 0);
    }
}

@keyframes slide-out-left-50 {
    0% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(-50%, 0, 0);
        transform: translate3D(-50%, 0, 0);
    }
}

@-webkit-keyframes slide-in-left-50 {
    0% {
        -webkit-transform: translate3D(50%, 0, 0);
        transform: translate3D(50%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@keyframes slide-in-left-50 {
    0% {
        -webkit-transform: translate3D(50%, 0, 0);
        transform: translate3D(50%, 0, 0);
    }
    100% {
        -webkit-transform: translate3D(0, 0, 0);
        transform: translate3D(0, 0, 0);
    }
}

@-webkit-keyframes revealRTL {
    0% {
        width: 0;
        right: 0;
    }
    65% {
        width: 100%;
        right: 0;
    }
    100% {
        width: 0;
        right: 100%;
    }
}

@keyframes revealRTL {
    0% {
        width: 0;
        right: 0;
    }
    65% {
        width: 100%;
        right: 0;
    }
    100% {
        width: 0;
        right: 100%;
    }
}

.gsaptxt {
    overflow: hidden;
}

.breadcrumb {
    padding: 4rem 0;
    position: relative;
    z-index: 4;
}

@media screen and (max-width: 1200px) {
    .breadcrumb {
        padding: 2.4rem 0;
    }
}

.breadcrumb-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    overflow: hidden;
    gap: 0.8rem;
}

.breadcrumb-item {
    font-size: 1.8rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.8rem;
    font-weight: 700;
    color: #8a2784;
}

.breadcrumb-item:not(:first-child)::before {
    display: inline-block;
    content: "/";
    font-size: 1.4rem;
    color: #8a2784;
    vertical-align: middle;
    font-weight: 500;
}

.breadcrumb-item:last-child {
    color: #403d3a;
    pointer-events: none;
    font-weight: 400;
}

.breadcrumb-link {
    color: inherit;
    -webkit-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

.bks .breadcrumb {
    padding: unset;
    margin-bottom: 4rem;
}

.bks .breadcrumb-item:not(:first-child)::before {
    content: "\f054";
    font-family: "Font Awesome 5 Pro";
}

.bks .breadcrumb-item.active .breadcrumb-link {
    color: #403d3a;
    font-weight: 700;
}

.bks .breadcrumb-link {
    color: #8c8782;
    font-weight: 400;
    pointer-events: none;
}

.btn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
    cursor: pointer;
    padding: 1rem 1.2rem;
    border-radius: 0.4rem;
    transition: 0.5s ease;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
    transition-delay: 0s;
    -webkit-transition-delay: 0s;
    -moz-transition-delay: 0s;
    -ms-transition-delay: 0s;
    -o-transition-delay: 0s;
    overflow: hidden;
    position: relative;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    gap: 0.8rem;
    color: white;
    font-size: 1.6rem;
    min-width: 16rem;
    min-height: 4.4rem;
    font-weight: 700;
}

.btn>* {
    position: relative;
    z-index: 2;
}

.btn .icon {
    width: 1.4rem;
    height: 1.4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.btn.center {
    margin: 0 auto;
}

.btn.full {
    width: 100%;
}

.btn.trans {
    background: transparent;
    color: #8a2784;
}

@media (hover: hover) {
    .btn.trans:hover {
        color: #fff;
    }
}

.btn.trans::after {
    background: #696460;
}

.btn.second {
    background: #fff;
    color: #121110;
    border: 0.1rem solid #121110;
}

@media (hover: hover) {
    .btn.second:hover {
        border-color: transparent;
    }
}

.btn::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 1;
}

@media (hover: hover) {
    .btn:hover::after {
        left: 0;
        width: 100%;
    }
}

.btn__center {
    margin: 0 auto;
}

.btn__cir {
    width: 4rem;
    height: 4rem;
    padding: unset;
}

.input {
    font-family: "DM Sans", sans-serif;
    width: 100%;
}

.input-area {
    height: auto;
}

.re-label {
    color: #000000;
    font-weight: 700;
    margin-bottom: 0.8rem;
    display: block;
    font-size: 1.4rem;
}

.re-input {
    padding: 1.4rem;
    width: 100%;
    font-family: "DM Sans", sans-serif;
    border: none;
    outline: none;
    display: block;
    border: 0.1rem solid rgba(0, 0, 0, 0.1);
    border-radius: .8rem;
    font-size: 1.4rem;
    font-weight: 600;
}

.re-input:focus {
    border-color: #121110;
}

.re-input.placeholder {
    color: #696460;
}

.re-input:-moz-placeholder {
    color: #696460;
}

.re-input::-moz-placeholder {
    color: #696460;
}

.re-input:-ms-input-placeholder {
    color: #696460;
}

.re-input::-webkit-input-placeholder {
    color: #696460;
}

textarea {
    resize: none;
}

form .wpcf7-not-valid-tip {
    color: #8a2784;
    bottom: .1rem;
    right: .6rem;
}

form .btn .wpcf7-spinner {
    position: absolute;
}

form .wpcf7-form-control-wrap {
    display: block;
    position: relative;
}

.wpcf7-response-output {
    text-align: center;
    color: #8a2784 !important;
}

.ft-regi-btn {
    cursor: pointer;
}

ul.page-numbers {
    margin-top: 4.8rem;
}

.page-numbers {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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;
    position: relative;
    z-index: 5;
}

.page-numbers>li:not(:first-child) {
    margin-left: 0.8rem;
}

.page-numbers>li>.page-numbers {
    width: 4.8rem;
    height: 4.8rem;
    border-radius: 0.4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    background-color: #fff;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    color: #121110;
    font-size: 1.6rem;
}

.page-numbers>li>.page-numbers::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #121110;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

.page-numbers>li>.page-numbers:after {
    z-index: -1;
}

@media (hover: hover) {
    .page-numbers>li>.page-numbers:hover:not(.dot) {
        color: white;
    }
    .page-numbers>li>.page-numbers:hover:not(.dot)::after {
        left: 0;
        width: 100%;
    }
}

.page-numbers>li>.page-numbers.current {
    color: #ffffff;
}

.page-numbers>li>.page-numbers.current::after {
    left: 0;
    width: 100%;
}

.page-numbers>li>.page-numbers.dot {
    background-color: transparent;
}

.page-numbers>li>.page-numbers i {
    font-weight: 400;
}

.t-title {
    font-size: 4rem;
    font-weight: 700;
    color: #121110;
    font-family: "Libre Baskerville", sans-serif;
}

@media only screen and (max-width: 1200px) {
    .t-title {
        font-size: 3.5rem;
    }
}

@media only screen and (max-width: 800px) {
    .t-title {
        font-size: 2.7rem;
    }
}

@media screen and (max-width: 600px) {
    .t-title {
        font-size: 3.2rem;
    }
}

.t-title-second {
    color: #403d3a;
}

.t-title-second {
    font-size: 3.2rem;
    font-weight: 700;
    color: #8a2784;
}

@media only screen and (max-width: 1200px) {
    .t-title-second {
        font-size: 2.7rem;
    }
}

@media only screen and (max-width: 800px) {
    .t-title-second {
        font-size: 2.2rem;
    }
}

.ss-pd {
    padding: var(--pd-sc) 0;
}

.ss-pd-t {
    padding-top: var(--pd-sc);
}

.ss-pd-b {
    padding-bottom: var(--pd-sc);
}

.t-center {
    text-align: center;
}

.fw-1 {
    font-weight: 100;
}

.fw-2 {
    font-weight: 200;
}

.fw-3 {
    font-weight: 300;
}

.fw-5 {
    font-weight: 500;
}

.fw-6 {
    font-weight: 600;
}

.fw-7 {
    font-weight: 700;
}

.fw-8 {
    font-weight: 800;
}

.fw-b {
    font-weight: bold;
}

.fsi {
    font-style: italic;
}

.t-up {
    text-transform: uppercase;
}

.t9 {
    font-size: 0.9rem;
}

.t11 {
    font-size: 1.1rem;
}

.t12 {
    font-size: 1.2rem;
}

.t14 {
    font-size: 1.4rem;
}

.t16 {
    font-size: 1.6rem;
}

.t18 {
    font-size: 1.8rem;
}

@media only screen and (max-width: 1200px) {
    .t18 {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .t18 {
        font-size: 1.5rem;
    }
}

.t20 {
    font-size: 2rem;
}

@media only screen and (max-width: 1200px) {
    .t20 {
        font-size: 1.8rem;
    }
}

@media only screen and (max-width: 800px) {
    .t20 {
        font-size: 1.6rem;
    }
}

.t24 {
    font-size: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .t24 {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .t24 {
        font-size: 1.7rem;
    }
}

.t32 {
    font-size: 3.2rem;
}

@media only screen and (max-width: 1200px) {
    .t32 {
        font-size: 2.7rem;
    }
}

@media only screen and (max-width: 800px) {
    .t32 {
        font-size: 2.2rem;
    }
}

.t40 {
    font-size: 4rem;
}

@media only screen and (max-width: 1200px) {
    .t40 {
        font-size: 3.5rem;
    }
}

@media only screen and (max-width: 800px) {
    .t40 {
        font-size: 2.7rem;
    }
}

.t48 {
    font-size: 4.8rem;
}

@media only screen and (max-width: 1200px) {
    .t48 {
        font-size: 4.3rem;
    }
}

@media only screen and (max-width: 800px) {
    .t48 {
        font-size: 3.3rem;
    }
}

.t56 {
    font-size: 5.6rem;
}

@media only screen and (max-width: 1200px) {
    .t56 {
        font-size: 5.1rem;
    }
}

@media only screen and (max-width: 800px) {
    .t56 {
        font-size: 4rem;
    }
}

.t64 {
    font-size: 6.4rem;
}

@media only screen and (max-width: 1200px) {
    .t64 {
        font-size: 3.9rem;
    }
}

@media only screen and (max-width: 800px) {
    .t64 {
        font-size: 2.9rem;
    }
}

.t72 {
    font-size: 7.2rem;
}

@media only screen and (max-width: 1200px) {
    .t72 {
        font-size: 5rem;
    }
}

@media only screen and (max-width: 800px) {
    .t72 {
        font-size: 4rem;
    }
}

.c-pri {
    color: #8a2784;
}

.c-second {
    color: #121110;
}

.c-third {
    color: #403d3a;
}

.c-four {
    color: #696460;
}

.c-five {
    color: #f05123;
}

.c-white {
    color: white;
}

.c-black {
    color: #000000;
}

.c-txt {
    color: #696460;
}

.c-txt-s {
    color: #363636;
}

.bc-pri {
    background-color: #8a2784;
}

.bc-second {
    background-color: #121110;
}

.bc-third {
    background-color: #403d3a;
}

.bc-four {
    background-color: #696460;
}

.bc-five {
    background-color: #f05123;
}

.over-hd {
    overflow: hidden;
}

.z-i-1 {
    z-index: 1;
}

.z-i-2 {
    z-index: 2;
}

.z-i-3 {
    z-index: 3;
}

.z-i-4 {
    z-index: 4;
}

.z-i-5 {
    z-index: 5;
}

.m-mid {
    margin: 0 auto;
}

.m-end {
    margin-left: auto;
}

.m-top {
    margin-top: 2.4rem;
}

.m-start {
    margin-right: auto;
}

.f-mid {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.f-end {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.lg-download,
#lg-actual-size,
#lg-share {
    display: none;
}

.lg-backdrop,
.lg-outer {
    z-index: 99999;
}

.lg-outer .lg-thumb-item {
    border: 0.2rem solid #8a2784;
    -webkit-transition: 0.2s ease;
    transition: 0.2s ease;
}

.lg-outer .lg-thumb-item.active {
    border-color: #403d3a;
}

@media (hover: hover) {
    .lg-outer .lg-thumb-item:hover {
        border-color: #403d3a;
    }
}

.lg-prev.lg-icon::after {
    display: none;
}

.lg-next.lg-icon::before {
    display: none;
}

.lg-prev.lg-icon,
.lg-next.lg-icon {
    width: 4rem;
    height: 4rem;
}

.lg-prev.lg-icon i,
.lg-next.lg-icon i {
    background: #f36f3f;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.lg-outer .lg-thumb-outer {
    background-color: #000;
}

.lg-close.lg-icon {
    background: #f36f3f;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
}

.lg-outer .lg-toogle-thumb {
    background: #f36f3f;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    width: 4rem;
    height: 4rem;
}

.lg-img-wrap {
    border-radius: .8rem;
}

.lg-thumb-item {
    border-radius: .8rem;
}

.lg-outer .lg-thumb {
    margin: 0 auto -5px;
}

.tabBtn {
    cursor: pointer;
}

.orders-table .status,
table .status {
    font-weight: 700;
}

.orders-table .status.waiting,
table .status.waiting {
    color: #F2C524;
}

.orders-table .status.success,
table .status.success {
    color: #403d3a;
}

.orders-table .status.cancle,
table .status.cancle {
    color: #D31D1D;
}

.slider {
    position: relative;
}

.relative {
    position: relative;
}

.head {
    margin-bottom: 3.2rem;
}

.head.space {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.head.center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.head.end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.head.start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 700px) {
    .head.mb-center {
        text-align: center;
    }
    .head.mb-center .left {
        width: 100%;
    }
    .head.mb-center .right {
        width: 100%;
    }
    .head.mb-center .cdw {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .head.mb-center .btn {
        margin: 0 auto;
    }
}

.hv-bd {
    position: relative;
}

.hv-bd::before {
    content: "";
    position: absolute;
    left: 0.8rem;
    top: 0.8rem;
    right: 0.8rem;
    bottom: 0.8rem;
    border: 0.1rem solid white;
    z-index: 1;
    -webkit-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0;
    border-radius: 1rem;
}

.hv-bd img {
    -webkit-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out;
}

@media (hover: hover) {
    .hv-bd:hover::before {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    .hv-bd:hover img {
        transform: translate(-50%, -50%) scale(1.05);
        -webkit-transform: translate(-50%, -50%) scale(1.05);
        -moz-transform: translate(-50%, -50%) scale(1.05);
        -o-transform: translate(-50%, -50%) scale(1.05);
    }
}

.gItem {
    cursor: pointer;
}

.parallaxJS img {
    position: relative;
}

@media screen and (min-width: 1200px) {
    .hidden-desk {
        display: none !important;
    }
}

@media screen and (max-width: 1199px) {
    .hidden-mobile {
        display: none !important;
    }
}

.full {
    width: 100%;
}

.wp-block-image {
    border-radius: 1.2rem;
}

.wp-block-image img {
    display: block;
    margin: 0 auto;
}

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

.mb-2 {
    margin-bottom: 0.2rem;
}

.mb-4 {
    margin-bottom: 0.4rem;
}

.mb-6 {
    margin-bottom: 0.6rem;
}

.mb-8 {
    margin-bottom: 0.8rem;
}

.mb-8s:not(:last-child) {
    margin-bottom: 0.8rem;
}

.mb-10 {
    margin-bottom: 1rem;
}

.mb-10s:not(:last-child) {
    margin-bottom: 1rem;
}

.mb-12 {
    margin-bottom: 1.2rem;
}

.mb-12s:not(:last-child) {
    margin-bottom: 1.2rem;
}

.mb-14 {
    margin-bottom: 1.4rem;
}

.mb-14s:not(:last-child) {
    margin-bottom: 1.4rem;
}

.mb-15 {
    margin-bottom: 1.5rem;
}

.mb-15s:not(:last-child) {
    margin-bottom: 1.5rem;
}

.mb-16 {
    margin-bottom: 1.6rem;
}

.mb-16s:not(:last-child) {
    margin-bottom: 1.6rem;
}

.mb-18 {
    margin-bottom: 1.8rem;
}

.mb-18s:not(:last-child) {
    margin-bottom: 1.8rem;
}

.mb-20 {
    margin-bottom: 2rem;
}

.mb-20s:not(:last-child) {
    margin-bottom: 2rem;
}

.mb-24 {
    margin-bottom: 2.4rem;
}

.mb-24s:not(:last-child) {
    margin-bottom: 2.4rem;
}

.mb-25 {
    margin-bottom: 2.5rem;
}

.mb-25s:not(:last-child) {
    margin-bottom: 2.5rem;
}

.mb-30 {
    margin-bottom: 3rem;
}

.mb-30s:not(:last-child) {
    margin-bottom: 3rem;
}

.mb-32 {
    margin-bottom: 3.2rem;
}

.mb-32s:not(:last-child) {
    margin-bottom: 3.2rem;
}

.mb-40 {
    margin-bottom: 4rem;
}

.mb-40s:not(:last-child) {
    margin-bottom: 4rem;
}

.mb-48 {
    margin-bottom: 4.8rem;
}

.mb-48s:not(:last-child) {
    margin-bottom: 4.8rem;
}

.mb-56 {
    margin-bottom: 5.6rem;
}

.mb-56s:not(:last-child) {
    margin-bottom: 5.6rem;
}

.mb-64 {
    margin-bottom: 6.4rem;
}

.mb-64s:not(:last-child) {
    margin-bottom: 6.4rem;
}

.mb-72 {
    margin-bottom: 7.2rem;
}

.mb-72s:not(:last-child) {
    margin-bottom: 7.2rem;
}

.mb-80 {
    margin-bottom: 8rem;
}

.mb-80s:not(:last-child) {
    margin-bottom: 8rem;
}

.ss-mg {
    margin: var(--pd-sc) 0;
}

.ss-mg-t {
    margin-top: var(--pd-sc);
}

.ss-mg-b {
    margin-bottom: var(--pd-sc);
}

.ss-pd {
    padding: var(--pd-sc) 0;
}

.ss-pd-t {
    padding-top: var(--pd-sc);
}

.ss-pd-b {
    padding-bottom: var(--pd-sc);
}

.recheck-item {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.recheck-item.active .recheck-checkbox::before {
    opacity: 1;
}

.recheck-item.active .recheck-radio {
    border: 0.1rem solid #8a2784;
}

.recheck-item.active .recheck-radio::before {
    opacity: 1;
}

.recheck-checkbox {
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 0.4rem;
    background-color: transparent;
    border: 1px solid #8a2784;
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.recheck-checkbox::before {
    content: "";
    position: absolute;
    left: -0.2rem;
    top: -0.2rem;
    right: -0.2rem;
    bottom: -0.2rem;
    background-image: url(../assets/images/tick.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-size: cover;
    -webkit-transition: 0.1s ease-in-out;
    transition: 0.1s ease-in-out;
    opacity: 0;
}

.recheck-radio {
    width: 1.6rem;
    height: 1.6rem;
    border-radius: 100rem;
    border: 0.1rem solid #363636;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
}

.recheck-radio::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 0.8rem;
    height: 0.8rem;
    border-radius: 100rem;
    background-color: #8a2784;
    opacity: 0;
}

.recheck-method {
    width: 4.8rem;
    height: 4.8rem;
    border: 0.1rem solid #EBEBEB;
    border-radius: 0.8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    margin-left: 0.8rem;
}

.recheck-method img {
    width: 2.4rem;
    height: 2.4rem;
}

.recheck-text {
    margin-left: 0.8rem;
    line-height: 1.1;
    color: #696460;
}

.star {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: start;
    align-content: start;
}

.star-list {
    position: relative;
    height: 2.6rem;
}

.star-flex {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.star-flex .icon {
    width: 2.4rem;
    height: 2.4rem;
}

.star-flex .icon:not(:first-child) {
    margin-left: 0.4rem;
}

.star-filter {
    overflow: hidden;
    position: absolute;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    left: 0;
    height: 100%;
    width: 0;
}

@media screen and (max-width: 1199px) {
    .side-fixed {
        position: fixed;
        width: 300px;
        max-width: 100%;
        top: 0;
        bottom: 0;
        right: 0;
        background-color: white;
        z-index: 51;
        -webkit-transition: 0.4s ease-in-out;
        transition: 0.4s ease-in-out;
        opacity: 0;
        -webkit-transform: translateX(110%);
        transform: translateX(110%);
        visibility: hidden;
    }
    .side-fixed.open {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        visibility: visible;
    }
}

@media screen and (max-width: 1199px) {
    .side-fixed-wrap {
        padding: 5.5rem 1.5rem 1.5rem 1.5rem;
        width: 100%;
        height: 100%;
        overflow-y: auto;
    }
}

.side-overlay {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 50;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    opacity: 0;
    -webkit-transform: translateX(110%);
    transform: translateX(110%);
    visibility: hidden;
}

.side-overlay.open {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    visibility: visible;
}

@media screen and (min-width: 1200px) {
    .side-overlay {
        display: none;
    }
}

.side-open {
    width: 4rem;
    height: 4rem;
    right: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    position: fixed;
    z-index: 40;
    background-color: #8a2784;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem 0 0 100rem;
    cursor: pointer;
    -webkit-transition: 0.4s ease-in-out;
    transition: 0.4s ease-in-out;
}

.side-open.side-open-bks {
    width: 7rem;
    height: 6rem;
    top: 19rem;
}

@media screen and (max-width: 386px) {
    .side-open.side-open-bks {
        top: 23rem;
    }
}

.side-open.close {
    opacity: 0;
    -webkit-transform: translate(100%, -50%);
    transform: translate(100%, -50%);
    visibility: visible;
}

@media screen and (min-width: 1200px) {
    .side-open {
        display: none;
    }
}

.side-open-wrap {
    width: 3rem;
    height: 3rem;
    border-radius: 100rem;
    background-color: white;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.side-open-wrap .icon {
    color: #121110;
    font-weight: 600;
    font-size: 1.6rem;
}

.side-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4.5rem;
    padding: 0 0 0 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    color: white;
    background-color: #121110;
}

@media screen and (min-width: 1200px) {
    .side-top {
        display: none;
    }
}

.side-top .text {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.side-close:not(.bks-ovw-btn) {
    width: 4.5rem;
    height: 4.5rem;
    background-color: #8a2784;
    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;
    position: absolute;
    top: 0;
    right: 0;
}

.side-close:not(.bks-ovw-btn) .icon {
    font-size: 1.8rem;
    font-weight: 400;
    color: #fff;
    -webkit-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
}

@media screen and (min-width: 1200px) {
    .side-close:not(.bks-ovw-btn) {
        display: none;
    }
}

.social-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
}

.social-link {
    display: block;
    width: 3.2rem;
    height: 3.2rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    cursor: pointer;
}

.social-link:hover {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
}

.social-link img {
    width: 100%;
    display: block;
}

.page-home {
    overflow: hidden;
}

.sec-hhead {
    padding: 10rem 0;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 768px) {
    .sec-hhead {
        padding: 6rem 0;
    }
}

@media screen and (max-width: 500px) {
    .sec-hhead {
        padding-top: 4rem;
    }
}

.hhead-dcor {
    position: absolute;
    width: 30%;
    left: 0;
    top: -15%;
    z-index: -1;
    pointer-events: none;
}

.hhead-dcor img {
    display: block;
    width: 100%;
}

.hhead-dcor2 {
    position: absolute;
    width: 40%;
    right: 0;
    top: 0%;
    z-index: -1;
    pointer-events: none;
}

.hhead-dcor2 img {
    display: block;
    width: 100%;
}

.hhead-wrap {
    width: calc((8 / 12) * 100%);
}

@media screen and (max-width: 600px) {
    .hhead-wrap {
        width: 100%;
    }
}

.hhead-ctn .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
}

@media screen and (max-width: 500px) {
    .hhead-ctn .igr {
        display: none;
    }
}

.hhead-ctn .igr .t-text {
    font-size: 2.4rem;
    color: #121110;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .hhead-ctn .igr .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .hhead-ctn .igr .t-text {
        font-size: 1.7rem;
    }
}

.hhead-ctn .igr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.4rem;
}

.hhead-ctn .igr .igrs .i-link {
    width: 4rem;
    height: 4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

@media screen and (max-width: 600px) {
    .hhead-ctn .igr .igrs .i-link {
        width: 3.2rem;
        height: 3.2rem;
    }
}

.hhead-ctn .igr .igrs .i-link img {
    display: block;
}

.hhead-title {
    font-size: 6.4rem;
    color: #403d3a;
    font-size: 6.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    margin-bottom: 4.8rem;
    margin-top: 1.2rem;
}

@media only screen and (max-width: 1200px) {
    .hhead-title {
        font-size: 3.9rem;
    }
}

@media only screen and (max-width: 800px) {
    .hhead-title {
        font-size: 2.9rem;
    }
}

@media only screen and (max-width: 1200px) {
    .hhead-title {
        font-size: 3.9rem;
    }
}

@media only screen and (max-width: 800px) {
    .hhead-title {
        font-size: 2.9rem;
    }
}

@media screen and (max-width: 500px) {
    .hhead-title {
        margin-bottom: 2.4rem;
    }
}

@media screen and (max-width: 500px) {
    .hhead-title {
        font-size: 8vw;
    }
}

.hhead-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    margin-top: 1.6rem;
}

.hhead-gr .t-num {
    color: #121110;
    font-weight: 700;
    font-style: italic;
    font-size: 2.2rem;
}

@media only screen and (max-width: 1200px) {
    .hhead-gr .t-num {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .hhead-gr .t-num {
        font-size: 1.9rem;
    }
}

.hhead-gr .t-text {
    font-size: 2.2rem;
    font-style: italic;
    color: #696460;
}

@media only screen and (max-width: 1200px) {
    .hhead-gr .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .hhead-gr .t-text {
        font-size: 1.9rem;
    }
}

.hhead-switch {
    margin-top: 14rem;
}

@media screen and (max-width: 600px) {
    .hhead-switch {
        margin-top: 6rem;
    }
}

.sec-hsl {
    position: relative;
}

@media screen and (max-width: 768px) {
    .hsl-slider .rows {
        --cg: 1.2rem;
        --rg: 1.2rem;
    }
}

.hsl-slider .rows .col {
    width: 50%;
}

@media screen and (max-width: 500px) {
    .hsl-slider .rows .col {
        width: 100%;
    }
}

.hsl-in .inner {
    display: block;
    padding-top: calc((334 / 592) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

.hsl-in .inner::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #8a2784;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

@media screen and (max-width: 768px) {
    .hsl-in .inner {
        border-radius: 0.8rem;
    }
}

@media (hover: hover) {
    .hsl-in .inner:hover::after {
        width: 100%;
        left: 0;
    }
}

.hsl-in .inner::after {
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
    opacity: 0.5;
}

.hsl-in .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.sec-huge.fix {
    position: relative;
}

@media screen and (max-width: 500px) {
    .sec-huge.fix {
        display: none;
    }
}

.sec-huge.fix .huge-block {
    margin-bottom: 4rem;
}

@media screen and (max-width: 500px) {
    .sec-huge.fix .huge-block {
        margin-bottom: 2.4rem;
        margin-top: 2.4rem;
    }
}

@media screen and (max-width: 500px) {
    .sec-huge.fix .huge-item.col {
        width: 100%;
    }
}

@media screen and (max-width: 500px) {
    .sec-huge.fix .huge-item.col .huge-box {
        padding: 2.4rem 1.2rem;
        position: relative;
        background: #fff;
        border-radius: 1.2rem;
        max-width: 24rem;
        margin: 0 auto;
    }
    .sec-huge.fix .huge-item.col .huge-box::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
        margin: -0.4rem;
        border-radius: 1.6rem;
        z-index: -1;
    }
    .sec-huge.fix .huge-item.col .huge-box .icon {
        width: 8rem;
        height: 8rem;
    }
    .sec-huge.fix .huge-item.col .huge-box .t-text {
        font-size: 2.4rem;
    }
    .sec-huge.fix .huge-item.col .huge-box .igr .t-txt {
        display: none;
    }
}

.sec-huge .huge-dcor {
    position: absolute;
    top: 90%;
    left: 0;
    width: 20%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.sec-huge .huge-dcor img {
    display: block;
    width: 100%;
}

.sec-hser .ser-it .ser-tagl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 1.2rem;
}

.sec-hser .ser-it .ser-tagl .t-link-tag {
    display: inline-block;
    padding: 0.4rem 1.2rem;
    background: #f7f6f5;
    border-radius: 0.4rem;
    color: #696460;
}

.htr-head {
    text-align: center;
}

@media screen and (max-width: 500px) {
    .htr-head .t-title {
        font-size: 6vw;
    }
}

.htr-head .t-des {
    font-size: 2.4rem;
    color: #696460;
    margin-top: 1.2rem;
}

@media only screen and (max-width: 1200px) {
    .htr-head .t-des {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .htr-head .t-des {
        font-size: 1.7rem;
    }
}

.htr-block {
    margin-top: 3.8rem;
}

@media screen and (max-width: 768px) {
    .htr-row {
        --cg: 1.2rem;
        --rg: 1.2rem;
    }
}

@media screen and (max-width: 768px) {
    .htr-row .col {
        width: 50%;
    }
}

.htr-box {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.2rem;
    text-align: center;
}

.htr-box .t-text {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .htr-box .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .htr-box .t-text {
        font-size: 1.7rem;
    }
}

.htr-box .t-num {
    font-size: 9.6rem;
    font-weight: 700;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 500px) {
    .htr-box .t-num {
        font-size: 20vw;
    }
}

.htr-bot {
    margin-top: 3.8rem;
}

@media screen and (max-width: 500px) {
    .htr-bot {
        margin-top: 2.4rem;
    }
}

.htr-py {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    gap: 1.2rem;
}

@media screen and (max-width: 768px) {
    .htr-py {
        padding: 2.4rem 1.2rem;
        height: 100%;
        position: relative;
        border-radius: 0.8rem;
    }
    .htr-py::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        z-index: -1;
        background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
        background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
        border-radius: inherit;
        margin: -0.2rem;
    }
}

.htr-py .t-text {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .htr-py .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .htr-py .t-text {
        font-size: 1.7rem;
    }
}

.htr-py .t-des {
    font-size: 1.6rem;
    color: #696460;
}

.htr-in {
    height: 100%;
    background: #fff;
}

@media screen and (max-width: 768px) {
    .htr-in {
        border-radius: 0.6rem;
    }
}

.hmas-block {
    margin-top: 3.2rem;
}

.hmas-in .inner {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 1.2rem;
    overflow: hidden;
}

.hmas-in .inner img {
    display: block;
}

.hmas-content {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.2rem;
    margin-top: 1.2rem;
}

.hmas-content .t-link {
    font-family: "Libre Baskerville", sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .hmas-content .t-link {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .hmas-content .t-link {
        font-size: 1.7rem;
    }
}

.hmas-content .t-des {
    font-size: 1.8rem;
    color: #696460;
}

@media only screen and (max-width: 1200px) {
    .hmas-content .t-des {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .hmas-content .t-des {
        font-size: 1.5rem;
    }
}

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

@media screen and (min-width: 651px) {
    .har-row {
        --cg: 0rem;
    }
}

@media screen and (max-width: 650px) {
    .har-row .col {
        width: 100%;
    }
}

.har-list {
    margin-bottom: 4rem;
}

.har-item {
    border-top: 0.1rem solid #403d3a;
}

.har-item:last-child {
    border-bottom: 0.1rem solid #403d3a;
}

.har-py {
    padding: 5.6rem 2.4rem;
    -webkit-box-shadow: 0px 0.4rem 2.4rem 0px rgba(0, 0, 0, 0.08);
    box-shadow: 0px 0.4rem 2.4rem 0px rgba(0, 0, 0, 0.08);
}

.har-image .inner {
    display: block;
    padding-top: calc((740 / 592) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

.har-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.har-in {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.2rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 1.2rem 0;
}

.har-in .t-link {
    color: #403d3a;
    font-family: "Libre Baskerville", sans-serif;
    font-size: 2.4rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .har-in .t-link {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .har-in .t-link {
        font-size: 1.7rem;
    }
}

@media (hover: hover) {
    .har-in .t-link:hover {
        color: #8a2784;
    }
}

.har-in .icon {
    width: 2.4rem;
    height: 2.4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    color: #403d3a;
    font-size: 1.6rem;
}

.har-in .icon i {
    font-weight: 700;
}

.serdt-rw .trw-sw .rows .swiper-slide.col {
    width: 50%;
}

@media screen and (max-width: 500px) {
    .serdt-rw .trw-sw .rows .swiper-slide.col {
        width: 100%;
    }
}

.serdt-rw .trw-head .t-title {
    font-size: 2.4rem;
}

.cts-py {
    padding: 4rem;
    border-radius: 1.2rem 0px 0px 1.2rem;
    border-top: 0.1rem solid #e8e4e1;
    border-bottom: 0.1rem solid #e8e4e1;
    border-left: 0.1rem solid #e8e4e1;
    background: #fff;
}

@media screen and (max-width: 1000px) {
    .cts-py {
        padding: 2.4rem;
    }
}

@media screen and (max-width: 768px) {
    .cts-py {
        border: 0.1rem solid #e8e4e1;
        border-radius: 1.2rem;
    }
}

@media screen and (max-width: 500px) {
    .cts-py {
        padding: 2.4rem 1.2rem;
    }
}

.cts-head {
    margin-bottom: 4rem;
}

.cts-row {
    --cg: 0;
    --rg: 0;
}

@media screen and (max-width: 768px) {
    .cts-row {
        --rg: 2.4rem;
    }
}

@media screen and (max-width: 768px) {
    .cts-row .col {
        width: 100%;
    }
}

.cts-form .t-text {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #121110;
    margin-bottom: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .cts-form .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .cts-form .t-text {
        font-size: 1.7rem;
    }
}

.cts-form-btn {
    margin-top: 2.4rem;
}

.cts-sc {
    height: 100%;
}

.cts-sc-py {
    padding: 4rem 8rem;
    border-radius: 0px 1.2rem 1.2rem 0px;
    background: #121110;
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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;
}

@media screen and (max-width: 1000px) {
    .cts-sc-py {
        padding: 4rem 2.4rem;
    }
}

@media screen and (max-width: 768px) {
    .cts-sc-py {
        border-radius: 1.2rem;
    }
}

@media screen and (max-width: 500px) {
    .cts-sc-py {
        padding: 2.4rem 1.2rem;
    }
}

.cts-sc-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 6rem;
}

@media screen and (max-width: 768px) {
    .cts-sc-list {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        gap: unset;
        row-gap: 2.4rem;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -1.2rem;
    }
}

@media screen and (max-width: 768px) {
    .cts-sc-item {
        width: 50%;
        padding: 0 1.2rem;
    }
    .cts-sc-item:last-child {
        width: 100%;
    }
}

.cts-sc-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.8rem;
}

@media screen and (max-width: 768px) {
    .cts-sc-gr {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
    }
}

.cts-sc-gr .icon {
    width: 4.8rem;
    height: 4.8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

@media screen and (max-width: 500px) {
    .cts-sc-gr .icon {
        width: 3.2rem;
        height: 3.2rem;
    }
}

.cts-sc-gr .t-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #f7f6f5;
}

@media only screen and (max-width: 1200px) {
    .cts-sc-gr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .cts-sc-gr .t-text {
        font-size: 1.5rem;
    }
}

.cts-sc-gr .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.cts-sc-gr .igr .t-link {
    font-size: 1.6rem;
    color: #e8e4e1;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    word-break: break-word;
}

@media screen and (max-width: 500px) {
    .cts-sc-gr .igr .t-link {
        font-size: 1.3rem;
    }
}

@media (hover: hover) {
    .cts-sc-gr .igr .t-link:hover {
        color: #8a2784;
    }
}

.cts-val {
    padding-top: var(--pd-sc);
}

.cts-val-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 1.6rem;
    margin: 0 -1.6rem;
}

@media screen and (max-width: 768px) {
    .cts-val-list {
        margin: 0 -0.8rem;
    }
}

.cts-val-item {
    width: calc(100% / 3);
    padding: 0 1.6rem;
}

@media screen and (max-width: 768px) {
    .cts-val-item {
        padding: 0 0.8rem;
    }
}

@media screen and (max-width: 600px) {
    .cts-val-item {
        width: 100%;
    }
}

.cts-val-box {
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    padding: 3.2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
}

@media screen and (max-width: 1000px) {
    .cts-val-box {
        padding: 2.4rem 1.6rem;
    }
}

.cts-val-box .icon {
    margin-bottom: 4rem;
    width: 4.8rem;
    height: 4.8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

@media screen and (max-width: 600px) {
    .cts-val-box .icon {
        margin-bottom: 2.4rem;
    }
}

.cts-val-box .t-text {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #121110;
}

@media only screen and (max-width: 1200px) {
    .cts-val-box .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .cts-val-box .t-text {
        font-size: 1.7rem;
    }
}

.cts-val-box .t-des {
    color: #696460;
    font-size: 1.6rem;
}

.page-about {
    overflow: hidden;
}

.sec-ab {
    overflow: hidden;
}

.ab-head {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.6rem;
}

.ab-head .t-tag {
    font-size: 2.4rem;
    color: #121110;
}

@media only screen and (max-width: 1200px) {
    .ab-head .t-tag {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .ab-head .t-tag {
        font-size: 1.7rem;
    }
}

.ab-slider {
    margin-top: 4.8rem;
}

.ab-slider {
    padding-bottom: 6rem;
}

@media screen and (max-width: 500px) {
    .ab-slider {
        padding-bottom: 0;
    }
}

.ab-slider-wrappper {
    max-width: 164rem;
    margin: 0 auto;
    padding: 0 1.5rem;
    width: 100%;
}

.ab-slider-row {
    --rg: 0;
}

@media screen and (max-width: 1200px) {
    .ab-slider-row {
        --cg: 1.2rem;
    }
}

@media screen and (max-width: 768px) {
    .ab-slider-row {
        --cg: 0.8rem;
        --rg: 0.8rem;
    }
}

.ab-slider-row .col {
    width: auto;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

@media screen and (max-width: 500px) {
    .ab-slider-row .col {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        width: 50%;
    }
}

.ab-slider-row .col:nth-child(3) {
    -webkit-box-flex: 1.5;
    -ms-flex: 1.5;
    flex: 1.5;
}

@media screen and (max-width: 500px) {
    .ab-slider-row .col:nth-child(3) {
        -webkit-box-flex: unset;
        -ms-flex: unset;
        flex: unset;
        width: 100%;
    }
}

.ab-slider-row .col:nth-child(2) .ab-slider-in {
    -webkit-transform: translateY(70%);
    transform: translateY(70%);
}

@media screen and (max-width: 500px) {
    .ab-slider-row .col:nth-child(2) .ab-slider-in {
        -webkit-transform: unset;
        transform: unset;
    }
}

.ab-slider-row .col:nth-child(4) .ab-slider-in {
    -webkit-transform: translateY(70%);
    transform: translateY(70%);
}

@media screen and (max-width: 500px) {
    .ab-slider-row .col:nth-child(4) .ab-slider-in {
        -webkit-transform: unset;
        transform: unset;
    }
}

.ab-slider-in .inner {
    display: block;
    padding-top: calc((216 / 287) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

@media screen and (max-width: 768px) {
    .ab-slider-in .inner {
        border-radius: 0.6rem;
    }
}

.ab-slider-in .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.abi-content .t-des {
    margin-top: 1.6rem;
    font-size: 1.6rem;
    color: #403d3a;
}

.abi-pos {
    margin-top: 8rem;
}

@media screen and (max-width: 768px) {
    .abi-pos {
        margin-top: 4rem;
    }
}

.abi-pos-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -2.4rem;
}

@media screen and (max-width: 500px) {
    .abi-pos-list {
        margin: 0 -1.2rem;
    }
}

.abi-pos-item {
    width: calc(100% / 3);
    padding: 0 2.4rem;
}

@media screen and (max-width: 500px) {
    .abi-pos-item {
        padding: 0 1.2rem;
    }
}

.abi-pos-item:nth-child(2) {
    border: 0.1rem solid #e8e4e1;
    border-top: unset;
    border-bottom: unset;
}

.abi-pos-item .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
    row-gap: 0.8rem;
}

.abi-pos-item .igr .t-gr {
    font-size: 4rem;
    position: relative;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    font-weight: 700;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 1200px) {
    .abi-pos-item .igr .t-gr {
        font-size: 3.5rem;
    }
}

@media only screen and (max-width: 800px) {
    .abi-pos-item .igr .t-gr {
        font-size: 2.7rem;
    }
}

.abi-pos-item .igr .t-gr .t-dcor {
    position: absolute;
    top: 4%;
    right: 0;
    -webkit-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    line-height: 1;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.abi-pos-item .igr .t-des {
    font-size: 1.6rem;
    color: #696460;
}

.abi-row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 1200px) {
    .abi-row .col-5 {
        width: 50%;
    }
}

@media screen and (max-width: 768px) {
    .abi-row .col {
        width: 100%;
    }
}

.abi-gal {
    position: relative;
    z-index: 1;
}

.abi-gal::after {
    content: "";
    position: absolute;
    width: 150%;
    padding-top: 150%;
    border-radius: 100rem;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, left bottom, from(#ff7bca), to(rgba(255, 197, 111, 0.46)));
    background: linear-gradient(180deg, #ff7bca 0%, rgba(255, 197, 111, 0.46) 100%);
    -webkit-filter: blur(10rem);
    filter: blur(10rem);
    top: 0;
    left: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: -1;
}

.abi-gal::before {
    content: "";
    position: absolute;
    width: 70%;
    padding-top: 70%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, rgba(245, 138, 37, 0)), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, rgba(245, 138, 37, 0) 100%, #7061a3 100%);
    border-radius: 100rem;
    -webkit-filter: blur(5rem);
    filter: blur(5rem);
}

.abi-gal-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1.6rem;
}

@media screen and (max-width: 930px) {
    .abi-gal-list {
        margin: 0 -0.6rem;
    }
}

.abi-gal-left {
    width: 50%;
    padding: 0 1.6rem;
}

@media screen and (max-width: 930px) {
    .abi-gal-left {
        padding: 0 0.6rem;
    }
}

.abi-gal-left .abi-gal-gr {
    position: relative;
    top: 7rem;
}

.abi-gal-right {
    width: 50%;
    padding: 0 1.6rem;
}

@media screen and (max-width: 930px) {
    .abi-gal-right {
        padding: 0 0.6rem;
    }
}

.abi-gal-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 3.2rem;
}

@media screen and (max-width: 930px) {
    .abi-gal-gr {
        row-gap: 1.2rem;
    }
}

.abi-gal-in .inner {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 1.2rem;
}

.abi-gal-in .inner img {
    width: 100%;
    display: block;
}

.abs-head {
    margin-bottom: 4rem;
}

.abs-image .inner {
    display: block;
    padding-top: calc((592 / 384) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

.abs-image .inner::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #8a2784;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

@media (hover: hover) {
    .abs-image .inner:hover::after {
        left: 0;
        width: 100%;
    }
}

.abs-image .inner::after {
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
    opacity: 0.5;
}

.abs-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.abs-block {
    padding-bottom: 16%;
}

@media screen and (max-width: 768px) {
    .abs-slider .rows {
        --cg: 1.2rem;
        --rg: 1.2rem;
    }
}

.abs-slider .rows .col {
    width: calc(100% / 3);
}

@media screen and (max-width: 600px) {
    .abs-slider .rows .col {
        width: 70%;
    }
}

.abs-slider .swiper .swiper-slide {
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.abs-slider .swiper .swiper-slide .abs-item {
    margin-top: 10rem;
}

.abs-slider .swiper .swiper-slide.swiper-slide-active .abs-item {
    margin-top: 0;
}

.abs-item {
    -webkit-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
}

.abs-content {
    margin-top: 3.2rem;
}

.abs-content .t-link {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    color: #403d3a;
    font-weight: 700;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .abs-content .t-link {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .abs-content .t-link {
        font-size: 1.7rem;
    }
}

@media (hover: hover) {
    .abs-content .t-link:hover {
        color: #8a2784;
    }
}

@media screen and (max-width: 500px) {
    .abs-content .t-link {
        font-size: 2.4rem;
    }
}

.abs-content .t-des {
    font-size: 1.8rem;
    color: #696460;
    margin-top: 1.2rem;
}

@media only screen and (max-width: 1200px) {
    .abs-content .t-des {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .abs-content .t-des {
        font-size: 1.5rem;
    }
}

.sec-fbs.fix .fbs-tdes {
    font-family: "DM Sans", sans-serif;
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .sec-fbs.fix .fbs-tdes {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .sec-fbs.fix .fbs-tdes {
        font-size: 1.5rem;
    }
}

.sec-fbs.fix .fbs-content {
    padding: 3rem 0;
}

@media screen and (max-width: 768px) {
    .sec-fbs.fix .fbs-content .btn {
        margin: 0 auto;
    }
}

.abb-head {
    width: 50rem;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}

.abb-head .t-des {
    font-size: 1.8rem;
    color: #696460;
    margin-top: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .abb-head .t-des {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .abb-head .t-des {
        font-size: 1.5rem;
    }
}

.abb-block {
    margin-top: 4.8rem;
}

.abb-slider .rows {
    --cg: 8rem;
    --rg: 0rem;
}

@media screen and (max-width: 1200px) {
    .abb-slider .rows {
        --cg: 2.4rem;
    }
}

.abb-slider .swiper .swiper-slide {
    width: calc(100% / 5);
}

@media screen and (max-width: 768px) {
    .abb-slider .swiper .swiper-slide {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 500px) {
    .abb-slider .swiper .swiper-slide {
        width: 50%;
    }
}

.abb-item {
    height: 3.2rem;
}

.abb-item .inner {
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media (hover: hover) {
    .abb-item .inner:hover {
        -webkit-filter: unset;
        filter: unset;
    }
}

.abb-item .inner img {
    display: block;
    height: 100%;
    width: auto;
    -o-object-fit: contain;
    object-fit: contain;
}

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

@media screen and (max-width: 1000px) {
    .abm-row .col {
        width: 100%;
    }
}

@media screen and (max-width: 1000px) {
    .abm-content {
        width: 50rem;
        margin: 0 auto;
        max-width: 100%;
        text-align: center;
    }
    .abm-content .btn {
        margin: 0 auto;
    }
}

.abm-content .t-des {
    margin-top: 1.2rem;
    margin-bottom: 4rem;
    color: #403d3a;
    font-size: 1.6rem;
}

.abm-image {
    margin-right: -18rem;
}

@media screen and (max-width: 1000px) {
    .abm-image {
        margin-right: unset;
        width: 50rem;
        margin: 0 auto;
        max-width: 100%;
    }
}

.abm-image .inner {
    position: relative;
    z-index: 1;
}

.abm-image .inner::after {
    content: "";
    position: absolute;
    width: 50%;
    padding-top: 50%;
    border-radius: 100rem;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, left bottom, from(#ff7bca), to(rgba(255, 197, 111, 0.46)));
    background: linear-gradient(180deg, #ff7bca 0%, rgba(255, 197, 111, 0.46) 100%);
    -webkit-filter: blur(10rem);
    filter: blur(10rem);
    top: 65%;
    left: 75%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
}

.abm-image .inner::before {
    content: "";
    position: absolute;
    width: 40%;
    padding-top: 40%;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: -1;
    opacity: 0.5;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, rgba(245, 138, 37, 0)), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, rgba(245, 138, 37, 0) 100%, #7061a3 100%);
    border-radius: 100rem;
    -webkit-filter: blur(5rem);
    filter: blur(5rem);
}

.abm-image .inner img {
    width: 100%;
    display: block;
}

.ser-head-bn {
    position: relative;
    z-index: 1;
}

.ser-head-bg {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border-radius: 1.2rem;
    z-index: -1;
}

.ser-head-bg::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.5)));
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%);
}

.ser-head-bg img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.ser-head-py {
    min-height: 60rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .ser-head-py {
        min-height: 40rem;
    }
}

.ser-head-ctn {
    padding: 2.4rem;
    width: 84rem;
    max-width: 100%;
    margin: 0 auto;
}

.ser-head-title {
    width: 55rem;
    max-width: 100%;
    margin: 0 auto;
    font-size: 4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #f7f6f5;
}

@media only screen and (max-width: 1200px) {
    .ser-head-title {
        font-size: 3.5rem;
    }
}

@media only screen and (max-width: 800px) {
    .ser-head-title {
        font-size: 2.7rem;
    }
}

@media screen and (max-width: 500px) {
    .ser-head-title {
        font-size: 5vw;
    }
}

.ser-head-des {
    margin-top: 1.6rem;
    color: #f2f0ed;
    font-size: 1.8rem;
}

@media only screen and (max-width: 1200px) {
    .ser-head-des {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .ser-head-des {
        font-size: 1.5rem;
    }
}

.ser-our-tab {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    gap: 10rem;
    margin-top: 2rem;
}

@media screen and (max-width: 600px) {
    .ser-our-tab {
        gap: 2.4rem;
    }
}

.ser-our-btn {
    position: relative;
}

.ser-our-btn.active::before {
    width: 100%;
}

@media (hover: hover) {
    .ser-our-btn:hover::before {
        width: 100%;
    }
}

.ser-our-btn::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0.1rem;
    background: #403d3a;
    left: 0;
    bottom: 0;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.ser-our-btn .t-text {
    display: inline-block;
    font-size: 2.4rem;
    color: #403d3a;
    font-family: "Libre Baskerville", sans-serif;
    cursor: pointer;
}

@media only screen and (max-width: 1200px) {
    .ser-our-btn .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .ser-our-btn .t-text {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 500px) {
    .ser-our-btn .t-text {
        font-size: 1.4rem;
    }
}

.ser-our-fl {
    margin-top: 4rem;
}

.ser-our-tag {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1.6rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 1.2rem;
}

@media screen and (max-width: 1200px) {
    .ser-our-tag {
        margin: 0 -0.4rem;
    }
}

.ser-our-tag .t-tag {
    padding: 0 1.2rem;
}

.ser-our-tag .t-tag input:checked~.t-link {
    color: #fff;
    background: #121110;
    border-color: transparent;
}

@media screen and (max-width: 1200px) {
    .ser-our-tag .t-tag {
        padding: 0 0.4rem;
    }
}

.ser-our-tag .t-tag .t-link {
    display: inline-block;
    padding: 1.6rem 4.8rem;
    font-size: 1.8rem;
    color: #696460;
    border-radius: 100rem;
    border: 0.1rem solid #c4bfbb;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    cursor: pointer;
}

@media only screen and (max-width: 1200px) {
    .ser-our-tag .t-tag .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .ser-our-tag .t-tag .t-link {
        font-size: 1.5rem;
    }
}

.ser-our-tag .t-tag .t-link.active {
    color: #fff;
    background: #121110;
    border-color: transparent;
}

@media (hover: hover) {
    .ser-our-tag .t-tag .t-link:hover {
        color: #fff;
        background: #121110;
        border-color: transparent;
    }
}

@media screen and (max-width: 1200px) {
    .ser-our-tag .t-tag .t-link {
        padding: 0.6rem 1.6rem;
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 1200px) {
    .ser-row {
        --rg: 1.2rem;
        --cg: 1.2rem;
    }
}

@media screen and (max-width: 840px) {
    .ser-row .col {
        width: 50%;
    }
}

@media screen and (max-width: 500px) {
    .ser-row .col {
        width: 100%;
    }
}

.ser-it {
    height: 100%;
}

.ser-in {
    border-radius: 1.2rem;
    overflow: hidden;
    border: 0.1rem solid #bbc3c4;
    background: #fff;
    height: 100%;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.ser-image .inner {
    display: block;
    padding-top: calc((216 / 384) * 100%);
    position: relative;
    overflow: hidden;
}

.ser-image .inner::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #8a2784;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

.ser-image .inner::after {
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
    opacity: 0.5;
}

@media (hover: hover) {
    .ser-image .inner:hover::after {
        left: 0;
        width: 100%;
    }
}

.ser-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.ser-block {
    margin-top: 4.8rem;
}

.ser-ctn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
    padding: 2.4rem;
}

@media screen and (max-width: 1200px) {
    .ser-ctn {
        padding: 1.6rem;
    }
}

@media screen and (max-width: 600px) {
    .ser-ctn {
        padding: 0.8rem;
    }
}

.ser-tag {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -0.4rem;
}

.ser-tag .t-tag {
    padding: 0 0.4rem;
}

.ser-tag .t-tag .t-link {
    display: inline-block;
    padding: 0.4rem 1.2rem;
    border-radius: 0.4rem;
    font-size: 1.6rem;
}

.ser-tag .t-tag .t-link.t-pop {
    color: #8a2784;
    background: rgba(138, 39, 132, 0.15);
}

.ser-tag .t-tag .t-link.t-deal {
    color: #3b8a00;
    background: rgba(59, 138, 0, 0.15);
}

@media screen and (max-width: 600px) {
    .ser-tag .t-tag .t-link {
        font-size: 1.3rem;
    }
}

.ser-box {
    margin-top: 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.4rem;
    padding-bottom: 1.2rem;
}

.ser-box .t-link {
    font-size: 2.4rem;
    color: #403d3a;
    font-family: "Libre Baskerville", sans-serif;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .ser-box .t-link {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .ser-box .t-link {
        font-size: 1.7rem;
    }
}

@media (hover: hover) {
    .ser-box .t-link:hover {
        color: #8a2784;
    }
}

@media screen and (max-width: 500px) {
    .ser-box .t-link {
        font-size: 2.4rem;
    }
}

.ser-box .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.ser-box .igr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.4rem;
}

.ser-box .igr .igrs .t-num {
    font-size: 1.3rem;
    color: #403d3a;
}

.ser-box .igr .igrs .icon {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 1.2rem;
    height: 1.2rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.ser-box .igr .t-text {
    font-size: 1.3rem;
    color: #403d3a;
}

.ser-box .t-price {
    font-size: 2.4rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .ser-box .t-price {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .ser-box .t-price {
        font-size: 1.7rem;
    }
}

.ser-box .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.6rem;
    color: #403d3a;
}

.ser-des {
    margin-top: auto;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    font-size: 1.6rem;
    color: #696460;
}

.trw-head {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 3.2rem;
}

@media screen and (max-width: 500px) {
    .trw-head {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
    }
}

.trw-it {
    height: 100%;
}

.trw-in {
    min-height: 38rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 2.4rem;
    border-radius: 1.2rem;
    background: #f7f6f5;
    height: 100%;
}

@media screen and (max-width: 600px) {
    .trw-in {
        padding: 1.6rem;
    }
}

.trw-top {
    padding-bottom: 4rem;
}

.trw-tt {
    color: #403d3a;
    font-size: 2.4rem;
    font-weight: 700;
    font-family: "Libre Baskerville", sans-serif;
    margin-bottom: 1.2rem;
    margin-top: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .trw-tt {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .trw-tt {
        font-size: 1.7rem;
    }
}

.trw-des {
    font-size: 1.6rem;
    color: #403d3a;
}

.trw-sw .rows {
    --cg: 3.2rem;
    --rg: 0;
}

@media screen and (max-width: 1200px) {
    .trw-sw .rows {
        --cg: 1.2rem;
    }
}

.trw-sw .rows .swiper-slide.col {
    width: calc(100% / 3);
}

@media screen and (max-width: 840px) {
    .trw-sw .rows .swiper-slide.col {
        width: 50%;
    }
}

@media screen and (max-width: 500px) {
    .trw-sw .rows .swiper-slide.col {
        width: 100%;
    }
}

.trw-bot {
    margin-top: auto;
}

.trw-bot .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
}

.trw-bot .igr .icon-avt {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 5.6rem;
    height: 5.6rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: 100rem;
}

.trw-bot .igr .icon-avt img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.trw-bot .igr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.trw-bot .igr .igrs .t-name {
    font-size: 1.6rem;
    font-weight: 500;
    color: #403d3a;
}

.trw-bot .igr .igrs .t-text {
    color: #696460;
    font-size: 1.3rem;
}

.blog-head {
    margin-bottom: 4rem;
}

.blog-htag {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1.8rem;
    row-gap: 1.6rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 1200px) {
    .blog-htag {
        row-gap: 1.2rem;
        margin: 0 -0.4rem;
    }
}

.blog-htag-item {
    padding: 0 1.8rem;
}

@media screen and (max-width: 1200px) {
    .blog-htag-item {
        padding: 0 0.4rem;
    }
}

.blog-htag-item .t-link {
    display: inline-block;
    padding: 1.6rem 1.2rem;
    text-align: center;
    font-size: 1.8rem;
    color: #696460;
    border-radius: 100rem;
    border: 0.1rem solid #c4bfbb;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    min-width: 20rem;
}

@media only screen and (max-width: 1200px) {
    .blog-htag-item .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .blog-htag-item .t-link {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 1200px) {
    .blog-htag-item .t-link {
        min-width: unset;
        padding: 0.6rem 1.6rem;
    }
}

@media screen and (max-width: 500px) {
    .blog-htag-item .t-link {
        font-size: 1.2rem;
    }
}

@media (hover: hover) {
    .blog-htag-item .t-link:hover {
        background: #121110;
        color: #fff;
    }
}

.blog-htag-item .t-link.active {
    background: #121110;
    color: #fff;
}

.blog-block {
    margin-top: 4.8rem;
}

.blog-image .inner {
    display: block;
    padding-top: calc((216 / 384) * 100%);
    position: relative;
    overflow: hidden;
}

.blog-image .inner::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #121110;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

.blog-image .inner:after {
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
    opacity: 0.4;
}

@media (hover: hover) {
    .blog-image .inner:hover::after {
        left: 0;
        width: 100%;
    }
}

.blog-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media screen and (max-width: 1200px) {
    .blog-row {
        --cg: 1.2rem;
        --rg: 1.2rem;
    }
}

@media screen and (max-width: 768px) {
    .blog-row .col {
        width: 50%;
    }
}

@media screen and (max-width: 500px) {
    .blog-row .col {
        width: 100%;
    }
}

.blog-item {
    height: 100%;
}

.blog-inner {
    border-radius: 1.2rem;
    border: 0.1rem solid #bbc3c4;
    overflow: hidden;
    height: 100%;
}

@media screen and (max-width: 900px) {
    .blog-inner {
        border-radius: 0.8rem;
    }
}

.blog-ctn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.8rem;
    padding: 2.4rem;
}

@media screen and (max-width: 900px) {
    .blog-ctn {
        padding: 2.4rem 1.2rem;
    }
}

.blog-ctn .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.blog-ctn .t-tag {
    display: inline-block;
    padding: 0.4rem 1.2rem;
    font-size: 1.6rem;
    color: #8a2784;
    background: rgba(139, 39, 133, 0.12);
    border-radius: 0.4rem;
}

.blog-ctn .t-link {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    font-size: 2.4rem;
    font-weight: 700;
    color: #403d3a;
    font-family: "Libre Baskerville", sans-serif;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media (hover: hover) {
    .blog-ctn .t-link:hover {
        color: #8a2784;
    }
}

.blog-ctn .t-time {
    font-size: 1.3rem;
    color: #696460;
}

.blog-ctn .t-des {
    font-size: 1.6rem;
    color: #403d3a;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

.blogdt-head {
    width: 80rem;
    max-width: 100%;
    margin: 0 auto;
}

.blogdt-head .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 2.4rem;
}

.blogdt-head .igr .t-tag {
    font-size: 1.6rem;
    color: #8a2784;
    display: inline-block;
    padding: 0.4rem 1.6rem;
    border-radius: 0.4rem;
    background: rgba(138, 39, 132, 0.15);
}

.blogdt-head .igr-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.2rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 4rem;
}

.blogdt-head .igr-gr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.6rem;
}

.blogdt-head .igr-gr .igrs .icon-avt {
    width: 4.8rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: 4.8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
}

.blogdt-head .igr-gr .igrs .icon-avt img {
    width: 100%;
}

.blogdt-head .igr-gr .igrs .igrc {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.blogdt-head .igr-gr .igrs .igrc .t-text {
    font-size: 1.6rem;
    font-weight: 600;
}

.blogdt-head .igr-gr .igrs .igrc .t-time {
    font-size: 1.4rem;
    color: #696460;
}

.blogdt-head .igr-gr .igrsc {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
}

.blogdt-head .igr-gr .igrsc .i-link {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 100rem;
    background: #f2f0ed;
}

.blogdt-head .igr-gr .igrsc .i-link img {
    width: 1.8rem;
    border-radius: unset;
}

.blogdt-pimage {
    margin-top: 4rem;
}

.blogdt-pimage .inner {
    display: block;
    padding-top: calc((600 / 1200) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

.blogdt-pimage .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.blogdt-content {
    width: 80rem;
    margin: 0 auto 6.4rem;
    max-width: 100%;
}

.blogdt-content .mona-content {
    color: #696460;
    font-size: 1.6rem;
}

.blogdt-bot {
    width: 80rem;
    margin: 0 auto;
    max-width: 100%;
}

.blogdt-bot .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.blogdt-bot .igr .igrc {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.6rem;
}

.blogdt-bot .igr .igrc .t-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #696460;
}

@media only screen and (max-width: 1200px) {
    .blogdt-bot .igr .igrc .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .blogdt-bot .igr .igrc .t-text {
        font-size: 1.5rem;
    }
}

.blogdt-bot .igr .igrc .igrsc {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
}

.blogdt-bot .igr .igrc .igrsc .i-link {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 100rem;
    background: #f2f0ed;
}

.blogdt-bot .igr .igrc .igrsc .i-link img {
    width: 1.8rem;
    border-radius: unset;
}

.blogdt-bot .igr .igr-tag {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.blogdt-bot .igr .igr-tag .t-link {
    font-size: 1.6rem;
    color: #696460;
    display: inline-block;
    padding: 0.4rem 1.6rem;
    background: #f7f6f5;
    border-radius: 0.4rem;
}

.blogrl-block {
    margin-top: 4rem;
}

@media screen and (max-width: 600px) {
    .blogrl-block {
        margin-top: 1.2rem;
    }
}

.blogrl-slider {
    position: relative;
}

@media screen and (max-width: 1200px) {
    .blogrl-slider .rows {
        --cg: 1.2rem;
        --rg: 1.2rem;
    }
}

@media screen and (max-width: 768px) {
    .blogrl-slider .rows .col {
        width: 50%;
    }
}

@media screen and (max-width: 500px) {
    .blogrl-slider .rows .col {
        width: 100%;
    }
}

@media screen and (max-width: 500px) {
    .blogrl-slider .swiper-control.posi {
        display: none;
    }
}

.form-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -1.2rem;
    row-gap: 2.4rem;
}

.form-list .ip {
    padding: 0 1.2rem;
    width: 100%;
}

.form-list .ip.x2 {
    width: 50%;
}

@media screen and (max-width: 500px) {
    .form-list .ip.x2 {
        width: 100%;
    }
}

.form-list .ip .t-label {
    font-size: 1.8rem;
    font-weight: 700;
    color: #121110;
    margin-bottom: 0.8rem;
    display: block;
}

@media only screen and (max-width: 1200px) {
    .form-list .ip .t-label {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .form-list .ip .t-label {
        font-size: 1.5rem;
    }
}

.form-list .ip input {
    width: 100%;
    padding: 0 2.4rem;
    height: 5.6rem;
    border-radius: 0.4rem;
    border: 0.1rem solid #e8e4e1;
    outline: unset;
    font-size: 1.8rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .form-list .ip input {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .form-list .ip input {
        font-size: 1.5rem;
    }
}

.form-list .ip input::-webkit-input-placeholder {
    color: #8c8782;
}

.form-list .ip input::-moz-placeholder {
    color: #8c8782;
}

.form-list .ip input::-ms-input-placeholder {
    color: #8c8782;
}

.form-list .ip input::placeholder {
    color: #8c8782;
}

.form-list .ip input:focus {
    border-color: #121110;
}

.form-list .ip textarea {
    border-radius: 0.4rem;
    border: 0.1rem solid #e8e4e1;
    padding: 1.2rem 2.4rem;
    outline: unset;
    font-size: 1.8rem;
    width: 100%;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    min-height: 14rem;
}

@media only screen and (max-width: 1200px) {
    .form-list .ip textarea {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .form-list .ip textarea {
        font-size: 1.5rem;
    }
}

.form-list .ip textarea::-webkit-input-placeholder {
    color: #8c8782;
}

.form-list .ip textarea::-moz-placeholder {
    color: #8c8782;
}

.form-list .ip textarea::-ms-input-placeholder {
    color: #8c8782;
}

.form-list .ip textarea::placeholder {
    color: #8c8782;
}

.form-list .ip textarea:focus {
    border-color: #121110;
}

.form-list .ip .ip-feild {
    position: relative;
}

.form-list .ip .ip-feild input {
    padding-right: 4rem;
}

.form-list .ip .ip-feild .icon {
    position: absolute;
    top: 50%;
    right: 1.5rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 2.4rem;
    height: 2.4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    color: #121110;
    cursor: pointer;
    font-weight: 400;
}

.form-btn {
    margin-top: 4.8rem;
}

.login {
    position: relative;
    overflow: hidden;
}

.login-head {
    margin-bottom: 4rem;
}

.login-wrap {
    border-radius: 1.2rem;
    border: 0.5rem solid rgba(232, 228, 225, 0.3);
    background: #fff;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .login-row .col {
        width: 100%;
    }
}

.login-ctn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -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;
}

.login-py {
    padding: 6.4rem;
    height: 100%;
}

@media screen and (max-width: 1000px) {
    .login-py {
        padding: 2.4rem;
    }
}

.login-image {
    height: 100%;
}

.login-image .inner {
    display: block;
    padding-top: calc((760 / 520) * 100%);
    position: relative;
    overflow: hidden;
    height: 100%;
}

.login-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.login-row {
    --rg: 0rem;
}

.login-ot {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 2rem;
}

.login-ot .t-text {
    display: inline-block;
    margin-bottom: 2rem;
    font-size: 1.6rem;
    color: #696460;
    text-decoration: underline;
}

.login-ot .t-txt {
    font-size: 1.8rem;
    color: #353535;
}

@media only screen and (max-width: 1200px) {
    .login-ot .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .login-ot .t-txt {
        font-size: 1.5rem;
    }
}

.login-ot .t-link {
    color: #8a2784;
    font-size: 1.8rem;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .login-ot .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .login-ot .t-link {
        font-size: 1.5rem;
    }
}

.login-ot .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 2.4rem;
    gap: 1.2rem;
}

.login-ot .igr .btn {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.bg-dcor {
    position: absolute;
    width: 40%;
    padding-top: 40%;
    -webkit-animation: textColor 10s ease infinite;
    animation: textColor 10s ease infinite;
    left: 0;
    top: 0;
    z-index: -1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.bg-dcor:after {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    opacity: 0.7;
    z-index: -1;
    height: 100%;
    width: 100%;
    margin: 0 auto;
    border-radius: 100rem;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-filter: blur(10rem);
    -moz-filter: blur(10rem);
    -ms-filter: blur(10rem);
    filter: blur(10rem);
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), to(rgba(255, 197, 111, 0.46)));
    background: linear-gradient(180deg, #f22fb0, rgba(255, 197, 111, 0.46));
    background-size: 200% 200%;
    -webkit-animation: animateGlow 10s ease infinite;
    animation: animateGlow 10s ease infinite;
}

@-webkit-keyframes animateGlow {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

@keyframes animateGlow {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.bg-dcor.x2 {
    right: 0;
    top: 0;
    left: unset;
    -webkit-transform: translateY(50%);
    transform: translateY(50%);
}

.leg-head {
    position: relative;
}

.leg-head::before {
    content: "";
    position: absolute;
    width: 100vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 0.1rem;
    bottom: 0;
    background: #e8e4e1;
}

@media screen and (max-width: 1200px) {
    .leg-head::before {
        display: none;
    }
}

.leg-pos {
    white-space: nowrap;
    overflow-x: auto;
}

.leg-pos::-webkit-scrollbar {
    height: 0rem;
}

@media screen and (max-width: 768px) {
    .leg-row .col {
        width: 100%;
    }
}

.leg-hlist {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.2rem;
}

@media screen and (max-width: 768px) {
    .leg-hlist {
        gap: 1.2rem;
    }
}

.leg-hitem .t-link {
    font-size: 1.8rem;
    color: #403d3a;
    display: inline-block;
    padding-bottom: 1.6rem;
    position: relative;
}

@media only screen and (max-width: 1200px) {
    .leg-hitem .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .leg-hitem .t-link {
        font-size: 1.5rem;
    }
}

.leg-hitem .t-link.active {
    font-weight: 700;
}

.leg-hitem .t-link.active::after {
    left: 0;
    width: 100%;
}

.leg-hitem .t-link::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0.2rem;
    bottom: 0;
    right: 0;
    background: #403d3a;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 1;
}

@media (hover: hover) {
    .leg-hitem .t-link:hover::after {
        left: 0;
        width: 100%;
    }
}

.leg-block {
    margin-top: 4.5rem;
}

.leg-toc {
    position: sticky;
    top: 6rem;
}

.leg-toc .t-text {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    color: #403d3a;
    font-weight: 700;
    margin-bottom: 0.8rem;
}

@media only screen and (max-width: 1200px) {
    .leg-toc .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .leg-toc .t-text {
        font-size: 1.7rem;
    }
}

.leg-toc-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.8rem;
}

.leg-toc-link {
    font-size: 1.8rem;
    color: #403d3a;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .leg-toc-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .leg-toc-link {
        font-size: 1.5rem;
    }
}

.leg-toc-link.active {
    color: #8a2784;
    text-decoration: underline;
}

@media (hover: hover) {
    .leg-toc-link:hover {
        color: #8a2784;
    }
}

.leg-cthead {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.8rem;
}

.leg-cthead .t-time {
    color: #696460;
    font-size: 1.6rem;
}

.leg-content {
    margin-top: 6rem;
}

.leg-content-wrap .mona-content h3 {
    font-family: "Libre Baskerville", sans-serif;
    color: #403d3a;
    font-size: 2.4rem;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .leg-content-wrap .mona-content h3 {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .leg-content-wrap .mona-content h3 {
        font-size: 1.7rem;
    }
}

.leg-content-wrap .mona-content p,
.leg-content-wrap .mona-content ul {
    color: #696460;
}

@media screen and (max-width: 768px) {
    .nsf {
        text-align: center;
    }
}

.nsf-row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .nsf-row .col {
        width: 100%;
    }
}

.nsf-form-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.6rem;
}

@media screen and (max-width: 500px) {
    .nsf-form-gr {
        gap: 0.8rem;
    }
}

.nsf-form-gr .ip {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.nsf-form-gr .ip input {
    width: 100%;
    outline: unset;
    height: 4.6rem;
    border-radius: 0.4rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    border: 0.1rem solid #c4bfbb;
    padding: 0 1.2rem;
    font-size: 1.6rem;
}

.nsf-form-gr .ip input::-webkit-input-placeholder {
    color: #8c8782;
}

.nsf-form-gr .ip input::-moz-placeholder {
    color: #8c8782;
}

.nsf-form-gr .ip input::-ms-input-placeholder {
    color: #8c8782;
}

.nsf-form-gr .ip input::placeholder {
    color: #8c8782;
}

.nsf-form-gr .ip input:focus {
    border-color: #121110;
}

.nsf-form-gr .btn {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    min-width: unset;
    min-height: unset;
    height: 4.6rem;
}

.nsf-form .t-des {
    margin-top: 1.6rem;
    font-size: 1.6rem;
    color: #696460;
}

.nsf-form .t-des .t-link {
    text-decoration: underline;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media (hover: hover) {
    .nsf-form .t-des .t-link:hover {
        color: #8a2784;
    }
}

.ogal-head {
    width: 95rem;
    max-width: 100%;
    margin: 0 auto;
}

.ogal-title {
    width: 65rem;
    max-width: 100%;
    margin: 0 auto 1.6rem;
    text-align: center;
}

@media screen and (max-width: 500px) {
    .ogal-title .t-title {
        font-size: 5vw;
    }
}

.ogal-tdes {
    font-size: 1.8rem;
    color: #696460;
    text-align: center;
}

@media only screen and (max-width: 1200px) {
    .ogal-tdes {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .ogal-tdes {
        font-size: 1.5rem;
    }
}

.ogal-tdes .t-text {
    font-style: italic;
    margin-top: 1.6rem;
}

.ogal-tag {
    margin-top: 10rem;
    margin-bottom: 4.8rem;
}

@media screen and (max-width: 1200px) {
    .ogal-tag {
        margin-top: 4rem;
        margin-bottom: 2.4rem;
    }
}

.ogal-tag-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1.6rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 1.6rem;
}

@media screen and (max-width: 1200px) {
    .ogal-tag-list {
        row-gap: 1.2rem;
        margin: 0 -0.4rem;
    }
}

.ogal-tag-item {
    padding: 0 1.6rem;
}

@media screen and (max-width: 1200px) {
    .ogal-tag-item {
        padding: 0 0.4rem;
    }
}

.ogal-tag-item .t-link {
    display: inline-block;
    padding: 1.6rem 4.8rem;
    border-radius: 100rem;
    border: 0.1rem solid #c4bfbb;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    font-size: 1.8rem;
    color: #696460;
}

@media only screen and (max-width: 1200px) {
    .ogal-tag-item .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .ogal-tag-item .t-link {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 1200px) {
    .ogal-tag-item .t-link {
        padding: 0.6rem 1.6rem;
    }
}

@media screen and (max-width: 500px) {
    .ogal-tag-item .t-link {
        font-size: 1.2rem;
    }
}

@media (hover: hover) {
    .ogal-tag-item .t-link:hover {
        background: #121110;
        color: #fff;
    }
}

.ogal-tag-item .t-link.active {
    background: #121110;
    color: #fff;
}

.serdt-head {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.4rem;
}

.serdt-head .t-txt {
    font-size: 2.4rem;
    color: #121110;
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .serdt-head .t-txt {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-head .t-txt {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 768px) {
    .serdt-head .t-title {
        font-size: 2.4rem;
    }
}

.serdt-bn {
    margin-top: 4.8rem;
}

.serdt-bn .inner {
    display: block;
    padding-top: calc((600 / 1200) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

.serdt-bn .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

@media screen and (max-width: 1200px) {
    .serdt-row .col {
        width: 100%;
    }
}

.serdt-wrapper {
    margin-top: 6rem;
}

.serdt-ctr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.2rem;
    white-space: nowrap;
    overflow: auto;
    border-bottom: 0.1rem solid #e8e4e1;
}

.serdt-ctr::-webkit-scrollbar {
    height: 0;
}

.serdt-ctr-btn {
    padding-bottom: 1.6rem;
    position: relative;
    cursor: pointer;
}

.serdt-ctr-btn.active::before {
    width: 100%;
}

.serdt-ctr-btn.active .t-text {
    color: #8a2784;
}

@media (hover: hover) {
    .serdt-ctr-btn:hover::before {
        width: 100%;
    }
    .serdt-ctr-btn:hover .t-text {
        color: #8a2784;
    }
}

.serdt-ctr-btn::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0.2rem;
    background: #8a2784;
    left: 0;
    bottom: 0;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.serdt-ctr-btn .t-text {
    display: inline-block;
    color: #403d3a;
    font-size: 1.8rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .serdt-ctr-btn .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-ctr-btn .t-text {
        font-size: 1.5rem;
    }
}

.serdt-op {
    margin-top: 4rem;
}

.serdt-op .ourst-slider .st-ctn {
    padding: 1.2rem;
}

@media screen and (min-width: 1201px) {
    .serdt-op .ourst-slider .swiper-control {
        display: none;
    }
}

.serdt-tt {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    margin-bottom: 1.6rem;
}

@media screen and (max-width: 500px) {
    .serdt-tt {
        margin-bottom: 0.8rem;
    }
}

.serdt-table {
    border-radius: 1.2rem;
    overflow: hidden;
    border: 0.1rem solid #e8e4e1;
}

.serdt-table table {
    width: 100%;
}

.serdt-table table thead {
    border-bottom: 0.1rem solid #e8e4e1;
}

.serdt-table table thead tr th {
    width: 50%;
}

.serdt-table table tbody tr:nth-child(even) {
    background: #f7f6f5;
}

.serdt-table table .t-txt {
    display: block;
    padding: 2.4rem 1.6rem;
    font-size: 1.8rem;
    color: #403d3a;
    text-align: left;
    font-weight: 600;
}

@media only screen and (max-width: 1200px) {
    .serdt-table table .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-table table .t-txt {
        font-size: 1.5rem;
    }
}

.serdt-rw-star .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2.4rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.serdt-rw-star .igr .t-text {
    display: inline-block;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-size: 6rem;
    font-weight: 700;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 1200px) {
    .serdt-rw-star .igr .t-text {
        font-size: 3.5rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-rw-star .igr .t-text {
        font-size: 2.5rem;
    }
}

.serdt-rw-star .igr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.2rem;
}

.serdt-rw-star .igr .igrs .t-txt {
    font-size: 1.6rem;
    color: #403d3a;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
}

.serdt-rw-pro {
    width: 42rem;
    max-width: 100%;
}

.serdt-rw-pro .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.8rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.serdt-rw-pro .igr .t-text {
    font-size: 1.8rem;
    color: #403d3a;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media only screen and (max-width: 1200px) {
    .serdt-rw-pro .igr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-rw-pro .igr .t-text {
        font-size: 1.5rem;
    }
}

.serdt-rw-pro .igr .t-text:first-child {
    width: 5.7rem;
}

.serdt-rw-pro .igr .t-text:last-child {
    width: 4.5rem;
}

.serdt-rw-pro .igr .dline {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    height: 0.4rem;
    position: relative;
    background: #e8e4e1;
}

.serdt-rw-pro .igr .dline-inner {
    position: absolute;
    left: 0;
    height: 100%;
    top: 0;
    bottom: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
}

.serdt-rw-mh {
    max-height: 52rem;
    -webkit-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    overflow: hidden;
}

.serdt-rw-bl input:checked~.serdt-rw-mh {
    max-height: unset;
}

.serdt-rw-bl input:checked~.btn-drop-text .t-txt:first-child {
    display: none;
}

.serdt-rw-bl input:checked~.btn-drop-text .t-txt:nth-child(2) {
    display: block;
}

.serdt-rw-bl input:checked~.btn-drop-text .icon {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

.serdt-rw-ps {
    margin-top: 2.4rem;
}

.serdt-rw-ps .t-text {
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .serdt-rw-ps .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-rw-ps .t-text {
        font-size: 1.5rem;
    }
}

.serdt-rw-ps .btn-drop-text {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
    margin-top: 2.4rem;
    cursor: pointer;
}

.serdt-rw-ps .btn-drop-text .t-txt {
    font-size: 1.6rem;
    color: #8a2784;
    font-weight: 700;
}

.serdt-rw-ps .btn-drop-text .t-txt:nth-child(2) {
    display: none;
}

.serdt-rw-ps .btn-drop-text .icon {
    width: 1.6rem;
    height: 1.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    color: #8a2784;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.serdt-rw-ps .btn-drop-text .icon i {
    font-weight: 700;
}

.serdt-rw-it {
    height: 100%;
}

.serdt-rw-py {
    padding: 2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    height: 100%;
}

.serdt-rw-py .t-des {
    font-size: 1.6rem;
    color: #696460;
    margin-top: 0.8rem;
}

.serdt-rw-py .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
}

.serdt-rw-py .igr .icon-avt {
    width: 7rem;
    height: 7rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
}

.serdt-rw-py .igr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1rem;
}

.serdt-rw-py .igr .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.serdt-rw-py .igr .t-gr .t-txt {
    font-size: 1.3rem;
    color: #696460;
}

.serdt-rw-form {
    margin-top: 2.4rem;
}

@media screen and (max-width: 500px) {
    .serdt-rw-form .btn {
        margin: 0 auto;
    }
}

.serdt-rw-form .t-text {
    margin-bottom: 1.6rem;
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .serdt-rw-form .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-rw-form .t-text {
        font-size: 1.5rem;
    }
}

.serdt-rw-form .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.8rem;
    margin-bottom: 1.8rem;
}

.serdt-rw-form .igr .t-txt {
    display: inline-block;
}

.serdt-rw-form .igr textarea {
    width: 100%;
    min-height: 14rem;
    padding: 1.2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    background: #fff;
    outline: unset;
    font-size: 1.6rem;
}

.serdt-rw-form .igr textarea::-webkit-input-placeholder {
    color: #8c8782;
}

.serdt-rw-form .igr textarea::-moz-placeholder {
    color: #8c8782;
}

.serdt-rw-form .igr textarea::-ms-input-placeholder {
    color: #8c8782;
}

.serdt-rw-form .igr textarea::placeholder {
    color: #8c8782;
}

.serdt-rw-form .igr .stars {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.2rem;
}

.serdt-rw-form .igr .stars input:nth-child(1):checked~label:nth-of-type(-n+1),
.serdt-rw-form .igr .stars input:nth-child(2):checked~label:nth-of-type(-n+2),
.serdt-rw-form .igr .stars input:nth-child(3):checked~label:nth-of-type(-n+3),
.serdt-rw-form .igr .stars input:nth-child(4):checked~label:nth-of-type(-n+4),
.serdt-rw-form .igr .stars input:nth-child(5):checked~label:nth-of-type(-n+5) {
    background: url(../assets/images/icon-star2.svg);
    background-repeat: no-repeat;
}

.serdt-rw-form .igr .stars label {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    height: 1.9rem;
    width: 1.9rem;
    background: url(../assets/images/star-opa.svg);
    font-size: 0;
    cursor: pointer;
    background-size: contain;
}

.serdt-bk {
    position: sticky;
    top: 6.4rem;
}

.serdt-bk-py {
    padding: 2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    background: #fff;
}

.serdt-bk-py .btn {
    width: 100%;
}

.serdt-bk-if {
    margin: 2.4rem 0;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 2.4rem;
    padding-bottom: 2.4rem;
    border-bottom: 0.1rem solid #e8e4e1;
}

.serdt-bk-if .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.8rem;
}

.serdt-bk-if .igr .icon {
    width: 2rem;
    height: 2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.serdt-bk-if .igr .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.6rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    row-gap: 0.4rem;
}

.serdt-bk-if .igr .t-gr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.4rem;
}

.serdt-bk-if .igr .t-gr .igrs:first-child .t-txt:first-child {
    color: #3b8a00;
}

.serdt-bk-if .igr .t-gr .igrs:last-child .t-txt:first-child {
    color: #d6a77c;
}

.serdt-bk-if .igr .t-gr .t-link {
    color: #8a2784;
    font-size: 1.6rem;
}

.serdt-bk-price {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.2rem;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.serdt-bk-price .t-text {
    font-size: 1.6rem;
    color: #403d3a;
}

.serdt-bk-price .t-num {
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .serdt-bk-price .t-num {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-bk-price .t-num {
        font-size: 1.5rem;
    }
}

.serdt-bk-mid {
    margin-top: 3.2rem;
}

.serdt-bk-vls {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.6rem;
}

.serdt-bk-vli .inner {
    padding: 1.6rem 3.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.6rem;
    background: #fff;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
}

.serdt-bk-vli .inner .icon {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 3.2rem;
    height: 3.2rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.serdt-bk-vli .inner .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.8rem;
}

.serdt-bk-vli .inner .igr .t-text {
    font-size: 1.6rem;
    color: #403d3a;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
}

.serdt-bk-vli .inner .igr .t-des {
    font-size: 1.3rem;
    color: #696460;
}

.serdt-bk-bot {
    margin-top: 2.2rem;
}

.serdt-bk-bot .t-text {
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .serdt-bk-bot .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .serdt-bk-bot .t-text {
        font-size: 1.5rem;
    }
}

.serdt-bk-bot .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.6rem;
    row-gap: 1.2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 500px) {
    .serdt-bk-bot .igr {
        gap: 1rem;
        row-gap: 1.2rem;
    }
}

.serdt-bk-bot .igr .icon {
    width: 3.8rem;
}

.serdt-bk-bot .igr .icon img {
    display: block;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.sec-ser .empty-product {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    max-width: 50rem;
    margin: 0 auto;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 2.4rem;
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .sec-ser .empty-product {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .sec-ser .empty-product {
        font-size: 1.5rem;
    }
}

.sec-ser .btn.noic.product-empty-button {
    margin: 0 auto;
}

.leg-toc #ez-toc-container {
    padding: 1rem;
    padding-right: 1rem;
}

@media screen and (min-width: 1201px) {
    .leg-toc #ez-toc-container {
        border: unset;
    }
}

@media screen and (max-width: 768px) {
    .leg-toc #ez-toc-container {
        width: 100%;
    }
}

.leg-toc #ez-toc-container ul li {
    font-size: inherit;
    line-height: 1.8;
}

.leg-toc #ez-toc-container ul li a {
    color: #403d3a;
    font-size: 1.8rem;
}

@media only screen and (max-width: 1200px) {
    .leg-toc #ez-toc-container ul li a {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .leg-toc #ez-toc-container ul li a {
        font-size: 1.5rem;
    }
}

.leg-toc #ez-toc-container a:visited {
    color: #8a2784;
}

.leg-content .mona-content {
    color: #696460;
}

.page-bks .wc-empty-cart-message {
    font-size: 3.2rem;
    text-align: center;
    font-weight: 500;
    font-family: "Libre Baskerville", sans-serif;
}

@media only screen and (max-width: 1200px) {
    .page-bks .wc-empty-cart-message {
        font-size: 2.7rem;
    }
}

@media only screen and (max-width: 800px) {
    .page-bks .wc-empty-cart-message {
        font-size: 2.2rem;
    }
}

.page-bks .image-empty-cart {
    width: 40rem;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
}

.page-bks .empty-cart .text {
    font-size: 2.4rem;
    text-align: center;
    max-width: 76rem;
    margin: 0 auto 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .page-bks .empty-cart .text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .page-bks .empty-cart .text {
        font-size: 1.7rem;
    }
}

.woocommerce-shipping-fields .shipping_address label {
    margin-bottom: 0.8rem;
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
    display: block;
}

.woocommerce-shipping-fields .shipping_address input {
    padding: 0 2.4rem !important;
    height: 5.6rem !important;
    border-radius: 0.4rem !important;
    border: 0.1rem solid #e8e4e1 !important;
    outline: unset !important;
    font-size: 1.8rem !important;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.acf-block {
    margin-top: 4rem;
}

.acf-row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 768px) {
    .acf-row {
        row-gap: 4rem;
    }
}

@media screen and (max-width: 1200px) {
    .acf-row .col-3 {
        width: calc((4 / 12) * 100%);
    }
}

@media screen and (max-width: 768px) {
    .acf-row .col-3 {
        width: 53rem;
        margin: 0 auto;
        max-width: 100%;
    }
}

@media screen and (max-width: 768px) {
    .acf-row .col-8 {
        width: 100%;
    }
}

.acf-py {
    padding: 3.2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 4rem;
}

@media screen and (max-width: 840px) {
    .acf-py {
        padding: 3.2rem 2.4rem;
    }
}

@media screen and (max-width: 768px) {
    .acf-py {
        row-gap: 2.4rem;
    }
}

.acf-side-top {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 768px) {
    .acf-side-top {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
    }
}

.acf-side-avt {
    width: 8rem;
    height: 8rem;
    border-radius: 100rem;
    overflow: hidden;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.acf-side-avt img {
    display: block;
    width: 100%;
}

.acf-side-if {
    margin-top: 1.6rem;
}

.acf-side-if .t-name {
    font-size: 2.4rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .acf-side-if .t-name {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-side-if .t-name {
        font-size: 1.7rem;
    }
}

.acf-side-if .t-text {
    color: #696460;
    font-size: 1.6rem;
    word-break: break-all;
}

.acf-side-mid {
    padding: 4rem 0;
    border-bottom: 0.1rem solid #e8e4e1;
    border-top: 0.1rem solid #e8e4e1;
}

@media screen and (max-width: 768px) {
    .acf-side-mid {
        text-align: center;
        padding: 2.4rem 0;
    }
}

.acf-side-links {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.2rem;
}

.acf-side-links .t-link {
    font-size: 1.8rem;
    color: #696460;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .acf-side-links .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-side-links .t-link {
        font-size: 1.5rem;
    }
}

@media (hover: hover) {
    .acf-side-links .t-link:hover {
        color: #8a2784;
    }
}

.acf-side-links .t-link.active {
    color: #8a2784;
}

.acf-profile {
    margin-bottom: 2.4rem;
}

.acf-profile-image {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.4rem;
    margin: 0 auto;
}

.acf-profile-image .inner {
    width: 8rem;
    height: 8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
}

.acf-profile-image .inner img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.acf-profile-image .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    gap: 0.4rem;
    cursor: pointer;
}

.acf-profile-image .igr .t-text {
    color: #696460;
}

.acf-form-btn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 2.4rem;
}

.acf-form-btn.fix {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
}

.acf-table table {
    width: 100%;
}

.acf-table table thead {
    background: #f7f6f5;
    border-radius: 1.2rem;
    overflow: hidden;
}

@media screen and (max-width: 600px) {
    .acf-table table thead {
        display: none;
    }
}

.acf-table table thead tr th .t-head {
    font-size: 1.8rem;
    font-weight: 700;
    color: #121110;
    display: block;
    padding: 1rem;
}

@media only screen and (max-width: 1200px) {
    .acf-table table thead tr th .t-head {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-table table thead tr th .t-head {
        font-size: 1.5rem;
    }
}

.acf-table table thead tr th.t-col6 {
    width: 50%;
}

.acf-table table thead tr th.t-col1 {
    width: 15%;
}

.acf-table table thead tr th.t-col2 {
    width: 20%;
}

.acf-table table thead tr th:first-child {
    text-align: left;
}

.acf-table table tbody tr {
    border: 0.1rem solid #e8e4e1;
}

@media screen and (max-width: 600px) {
    .acf-table table tbody tr:not(:last-child) {
        border-bottom: 0.1rem solid #efefef;
    }
}

.acf-table table tbody td {
    padding: 1rem 0;
    vertical-align: middle;
    text-align: center;
}

@media screen and (max-width: 600px) {
    .acf-table table tbody td {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 100%;
        padding: 1.2rem !important;
        position: relative;
        padding: unset;
        text-align: left;
    }
    .acf-table table tbody td::before {
        content: attr(data-text);
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        font-size: 1.8rem;
        font-weight: 700;
        color: #121110;
        text-align: left;
        white-space: nowrap;
    }
}

@media only screen and (max-width: 600px) and (max-width: 1200px) {
    .acf-table table tbody td::before {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 600px) and (max-width: 800px) {
    .acf-table table tbody td::before {
        font-size: 1.5rem;
    }
}

.acf-table table tbody td:first-child {
    padding-left: 1rem;
    text-align: left;
}

.acf-table table tbody td:last-child {
    padding-right: 1rem;
}

.acf-table table tbody td .t-total {
    font-size: 1.6rem;
    color: #121110;
}

.acf-table table tbody td .t-status {
    font-size: 1.6rem;
    font-weight: 700;
}

.acf-table table tbody td .t-status.t-ss {
    color: #d6a77c;
}

.acf-table table tbody td .t-status.t-sch {
    color: #40ae0c;
}

.acf-table table tbody td .t-status.t-cancel {
    color: #bf2929;
}

.acf-table table tbody td .t-links {
    font-size: 1.6rem;
    color: #121110;
    text-decoration: underline;
}

.acf-ser {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.2rem;
}

@media screen and (max-width: 600px) {
    .acf-ser {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        width: 70%;
        text-align: right;
    }
}

.acf-ser-image {
    width: 15rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media screen and (max-width: 1200px) {
    .acf-ser-image {
        width: 10rem;
    }
}

@media screen and (max-width: 600px) {
    .acf-ser-image {
        width: 20rem;
        max-width: 100%;
    }
}

.acf-ser-image .inner {
    display: block;
    padding-top: calc((100 / 150) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 0.4rem;
}

.acf-ser-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.acf-ser-inner {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.4rem;
}

.acf-ser-inner .t-link {
    color: #121110;
    font-weight: 700;
    font-size: 1.6rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

.acf-ser-inner .t-time {
    text-transform: uppercase;
    font-size: 1.3rem;
    color: #403d3a;
}

.acf-ser-inner .t-gr {
    font-size: 1.3rem;
    color: #403d3a;
}

.acf-dt-head {
    margin-bottom: 2.4rem;
}

.acf-dt-head .t-text {
    font-size: 2.4rem;
    font-weight: 700;
    font-family: "Libre Baskerville", sans-serif;
    color: #121110;
}

@media only screen and (max-width: 1200px) {
    .acf-dt-head .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-dt-head .t-text {
        font-size: 1.7rem;
    }
}

.acf-dt-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 2.4rem;
}

.acf-pro {
    position: relative;
}

.acf-pro-line {
    position: absolute;
    height: 0.1rem;
    background: 0.1rem;
    background: #aba5a1;
    width: 68%;
    left: 50%;
    top: 5.6rem;
    z-index: -1;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.acf-pro-line::after {
    content: "";
    position: absolute;
    width: 50%;
    left: 0;
    height: 100%;
    background: #f22fb0;
}

.acf-pro-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1.2rem;
}

.acf-pro-col {
    width: calc(100% / 3);
    padding: 0 1.2rem;
}

.acf-pro-box {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    row-gap: 0.4rem;
}

.acf-pro-box .icon {
    width: 4.8rem;
    height: 4.8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.acf-pro-box .idot {
    width: 0.8rem;
    height: 0.8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
}

.acf-pro-box .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    text-align: center;
}

.acf-pro-box .igr .t-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #121110;
}

@media only screen and (max-width: 1200px) {
    .acf-pro-box .igr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-pro-box .igr .t-text {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 500px) {
    .acf-pro-box .igr .t-text {
        font-size: 1.3rem;
    }
}

.acf-pro-box .igr .t-time {
    font-size: 1.3rem;
    color: #403d3a;
}

@media screen and (max-width: 500px) {
    .acf-pro-box .igr .t-time {
        font-size: 1.2rem;
    }
}

.acf-content {
    margin-top: 4.8rem;
}

.acf-content .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
}

.acf-content .t-gr .t-text {
    color: #121110;
    font-size: 1.8rem;
    font-weight: 700;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

@media only screen and (max-width: 1200px) {
    .acf-content .t-gr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-content .t-gr .t-text {
        font-size: 1.5rem;
    }
}

.acf-content .t-gr .t-txt {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .acf-content .t-gr .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-content .t-gr .t-txt {
        font-size: 1.5rem;
    }
}

.acf-content .t-gr .t-txt.t-ss {
    color: #d6a77c;
}

.acf-content .t-gr .t-txt.t-sch {
    color: #40ae0c;
}

.acf-content .t-gr .t-txt.t-cancel {
    color: #bf2929;
}

.acf-ifs {
    margin-top: 2.4rem;
}

.acf-ifs-list {
    margin-top: 2.4rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 2.4rem;
}

.acf-ifs-inner {
    padding: 1rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
}

.acf-ifs-image {
    width: 15rem;
}

.acf-ifs-image .inner {
    display: block;
    padding-top: calc((100 / 150) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 0.4rem;
}

.acf-ifs-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.acf-ifs-ctn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2.4rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 600px) {
    .acf-ifs-ctn {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }
}

.acf-ifs-content {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.8rem;
}

.acf-ifs-content .t-link {
    font-size: 1.8rem;
    font-weight: 700;
    color: #121110;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

@media only screen and (max-width: 1200px) {
    .acf-ifs-content .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-ifs-content .t-link {
        font-size: 1.5rem;
    }
}

.acf-ifs-content .t-time,
.acf-ifs-content .t-text {
    color: #403d3a;
    font-size: 1.6rem;
}

.acf-fil {
    margin-top: 1.6rem;
    padding-top: 1.6rem;
    border-top: 0.1rem solid #e8e4e1;
}

.acf-fil-item:last-child {
    margin-top: 1.6rem;
    padding: 1.6rem 0;
    border-top: 0.1rem solid #e8e4e1;
}

.acf-fil-item .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.acf-fil-item .igr .t-text {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .acf-fil-item .igr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-fil-item .igr .t-text {
        font-size: 1.5rem;
    }
}

.acf-fil-item .igr .t-txt {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .acf-fil-item .igr .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-fil-item .igr .t-txt {
        font-size: 1.5rem;
    }
}

.acf-cus {
    margin-top: 4.8rem;
}

.acf-cus-py {
    padding: 4rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
}

@media screen and (max-width: 768px) {
    .acf-cus-py {
        padding: 2.4rem;
    }
}

.acf-cus-tt {
    font-family: "Libre Baskerville", sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
    color: #121110;
    margin-bottom: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .acf-cus-tt {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-cus-tt {
        font-size: 1.7rem;
    }
}

.acf-cus-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1rem;
    row-gap: 1.6rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.acf-cus-col {
    padding: 0 1rem;
    width: calc(100% / 3);
}

.acf-cus-col:last-child {
    width: 100%;
}

@media screen and (max-width: 600px) {
    .acf-cus-col {
        width: 100%;
    }
}

.acf-cus-box {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.8rem;
}

.acf-cus-box .t-text {
    font-size: 1.8rem;
    color: #121110;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .acf-cus-box .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .acf-cus-box .t-text {
        font-size: 1.5rem;
    }
}

.acf-cus-box .t-txt {
    font-size: 1.6rem;
    color: #403d3a;
    word-wrap: break-word;
}

.sec-acf-pass .acf-form {
    width: 38rem;
    max-width: 100%;
}

@media screen and (max-width: 768px) {
    .sec-acf-pass .acf-form {
        width: 100%;
    }
}

.sec-acf-pass .acf-form-btn.fix {
    -webkit-box-pack: unset;
    -ms-flex-pack: unset;
    justify-content: unset;
}

.sec-acf-pass .acf-form-btn.fix .btn {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    min-width: unset;
}

@media (max-width: 480px) {
    .masonry {
        margin: 2% 2%;
    }
    .masonry .grid-sizer {
        width: 49%;
    }
    .masonry .gutter-sizer {
        width: 2%;
    }
    .masonry .item {
        width: 49%;
        margin-bottom: 2%;
        border-radius: 1.2rem;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (max-width: 480px) and (max-width: 768px) {
    .masonry .item {
        border-radius: 0.6rem;
    }
}

@media (max-width: 480px) and (hover: hover) {
    .masonry .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (max-width: 480px) {
    .masonry .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media only screen and (max-width: xxspx) {
    .masonry {
        margin: 2% 2%;
    }
    .masonry .grid-sizer {
        width: 49%;
    }
    .masonry .gutter-sizer {
        width: 2%;
    }
    .masonry .item {
        width: 49%;
        margin-bottom: 2%;
        border-radius: 1.2rem;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media only screen and (max-width: xxspx) and (max-width: 768px) {
    .masonry .item {
        border-radius: 0.6rem;
    }
}

@media only screen and (max-width: xxspx) and (hover: hover) {
    .masonry .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media only screen and (max-width: xxspx) {
    .masonry .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .masonry {
        margin: 1.5% 1.5%;
    }
    .masonry .grid-sizer {
        width: 32.33333%;
    }
    .masonry .gutter-sizer {
        width: 1.5%;
    }
    .masonry .item {
        width: 32.33333%;
        margin-bottom: 1.5%;
        border-radius: 1.2rem;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 481px) and (max-width: 767px) and (max-width: 768px) {
    .masonry .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 481px) and (max-width: 767px) and (hover: hover) {
    .masonry .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .masonry .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 768px) {
    .masonry {
        margin: 1.5% 1.5%;
    }
    .masonry .grid-sizer {
        width: 32.33333%;
    }
    .masonry .gutter-sizer {
        width: 1.5%;
    }
    .masonry .item {
        width: 32.33333%;
        margin-bottom: 1.5%;
        border-radius: 1.2rem;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 768px) and (max-width: 768px) {
    .masonry .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 768px) and (hover: hover) {
    .masonry .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 768px) {
    .masonry .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 992px) {
    .masonry {
        margin: 1.5% 1.5%;
    }
    .masonry .grid-sizer {
        width: 32.33333%;
    }
    .masonry .gutter-sizer {
        width: 1.5%;
    }
    .masonry .item {
        width: 32.33333%;
        margin-bottom: 1.5%;
        border-radius: 1.2rem;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 992px) and (max-width: 768px) {
    .masonry .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 992px) and (hover: hover) {
    .masonry .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 992px) {
    .masonry .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 1200px) {
    .masonry {
        margin: 1.5% 1.5%;
    }
    .masonry .grid-sizer {
        width: 32.33333%;
    }
    .masonry .gutter-sizer {
        width: 1.5%;
    }
    .masonry .item {
        width: 32.33333%;
        margin-bottom: 1.5%;
        border-radius: 1.2rem;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 1200px) and (max-width: 768px) {
    .masonry .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 1200px) and (hover: hover) {
    .masonry .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 1200px) {
    .masonry .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

.fancybox-image,
.fancybox-spaceball {
    border-radius: 1.2rem;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .fancybox-image,
    .fancybox-spaceball {
        border-radius: 0.6rem;
    }
}

@media (max-width: 480px) {
    .masonry2 {
        margin: 3% 3%;
    }
    .masonry2 .grid-sizer {
        width: 48.5%;
    }
    .masonry2 .gutter-sizer {
        width: 3%;
    }
    .masonry2 .item {
        width: 48.5%;
        margin-bottom: 3%;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (max-width: 480px) and (max-width: 768px) {
    .masonry2 .item {
        border-radius: 0.6rem;
    }
}

@media (max-width: 480px) and (hover: hover) {
    .masonry2 .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (max-width: 480px) {
    .masonry2 .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media only screen and (max-width: xxspx) {
    .masonry2 {
        margin: 3% 3%;
    }
    .masonry2 .grid-sizer {
        width: 48.5%;
    }
    .masonry2 .gutter-sizer {
        width: 3%;
    }
    .masonry2 .item {
        width: 48.5%;
        margin-bottom: 3%;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media only screen and (max-width: xxspx) and (max-width: 768px) {
    .masonry2 .item {
        border-radius: 0.6rem;
    }
}

@media only screen and (max-width: xxspx) and (hover: hover) {
    .masonry2 .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media only screen and (max-width: xxspx) {
    .masonry2 .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .masonry2 {
        margin: 2.25% 2.25%;
    }
    .masonry2 .grid-sizer {
        width: 31.83333%;
    }
    .masonry2 .gutter-sizer {
        width: 2.25%;
    }
    .masonry2 .item {
        width: 31.83333%;
        margin-bottom: 2.25%;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 481px) and (max-width: 767px) and (max-width: 768px) {
    .masonry2 .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 481px) and (max-width: 767px) and (hover: hover) {
    .masonry2 .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .masonry2 .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 768px) {
    .masonry2 {
        margin: 2.25% 2.25%;
    }
    .masonry2 .grid-sizer {
        width: 31.83333%;
    }
    .masonry2 .gutter-sizer {
        width: 2.25%;
    }
    .masonry2 .item {
        width: 31.83333%;
        margin-bottom: 2.25%;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 768px) and (max-width: 768px) {
    .masonry2 .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 768px) and (hover: hover) {
    .masonry2 .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 768px) {
    .masonry2 .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 992px) {
    .masonry2 {
        margin: 2.25% 2.25%;
    }
    .masonry2 .grid-sizer {
        width: 31.83333%;
    }
    .masonry2 .gutter-sizer {
        width: 2.25%;
    }
    .masonry2 .item {
        width: 31.83333%;
        margin-bottom: 2.25%;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 992px) and (max-width: 768px) {
    .masonry2 .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 992px) and (hover: hover) {
    .masonry2 .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 992px) {
    .masonry2 .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

@media (min-width: 1200px) {
    .masonry2 {
        margin: 2% 2%;
    }
    .masonry2 .grid-sizer {
        width: 23.5%;
    }
    .masonry2 .gutter-sizer {
        width: 2%;
    }
    .masonry2 .item {
        width: 23.5%;
        margin-bottom: 2%;
        overflow: hidden;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        cursor: pointer;
    }
}

@media screen and (min-width: 1200px) and (max-width: 768px) {
    .masonry2 .item {
        border-radius: 0.6rem;
    }
}

@media (min-width: 1200px) and (hover: hover) {
    .masonry2 .item:hover img {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

@media (min-width: 1200px) {
    .masonry2 .item img {
        width: 100%;
        display: block;
        height: 100%;
        vertical-align: middle;
        -webkit-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}

.page-stylist {
    overflow: hidden;
}

.sec-stl {
    position: relative;
    z-index: 1;
}

.sec-stl::before {
    content: "";
    position: absolute;
    width: 100%;
    bottom: 5%;
    left: 50%;
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    width: 120%;
    padding-top: calc(120% / 1.2);
    background: #f7f6f5;
    border-radius: 120%;
    z-index: -1;
}

@media screen and (max-width: 970px) {
    .sec-stl::before {
        display: none;
    }
}

.stl-head {
    width: 60rem;
    max-width: 100%;
}

@media screen and (max-width: 970px) {
    .stl-head {
        margin: 0 auto;
        text-align: center;
    }
}

.stl-head .t-tag {
    font-size: 2.4rem;
    color: #121110;
    display: inline-block;
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .stl-head .t-tag {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .stl-head .t-tag {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 500px) {
    .stl-head .t-title {
        font-size: 6vw;
    }
}

.stl-gal {
    width: calc((8 / 12) * 100%);
    margin-left: auto;
}

@media screen and (max-width: 970px) {
    .stl-gal {
        width: 100%;
    }
}

.stl-gal-block {
    margin-top: -15%;
}

@media screen and (max-width: 970px) {
    .stl-gal-block {
        margin-top: 4rem;
    }
}

.stl-gal .inner-img {
    overflow: hidden;
}

.stl-gal .inner-img .inner {
    border-radius: 1.2rem;
    overflow: hidden;
}

.stl-gal .inner-img .inner img {
    display: block;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.stl-gal-row {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1.6rem;
}

@media screen and (max-width: 768px) {
    .stl-gal-row {
        margin: 0 -0.4rem;
    }
}

.stl-gal-left {
    padding: 0 1.6rem;
    width: calc((3 / 8) * 100%);
}

@media screen and (max-width: 768px) {
    .stl-gal-left {
        padding: 0 0.4rem;
    }
}

.stl-gal-left .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3.2rem;
    height: 100%;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

@media screen and (max-width: 768px) {
    .stl-gal-left .igr {
        gap: 0.8rem;
    }
}

.stl-gal-left .igr .inner-img.x2 {
    width: calc((2 / 3) * 100%);
    margin-left: auto;
}

.stl-gal-mid {
    padding: 0 1.6rem;
    width: calc((3 / 8) * 100%);
}

@media screen and (max-width: 768px) {
    .stl-gal-mid {
        padding: 0 0.4rem;
    }
}

.stl-gal-mid .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3.2rem;
}

@media screen and (max-width: 768px) {
    .stl-gal-mid .igr {
        gap: 0.8rem;
    }
}

.stl-gal-right {
    padding: 0 1.6rem;
    width: calc((2 / 7) * 100%);
}

@media screen and (max-width: 768px) {
    .stl-gal-right {
        padding: 0 0.4rem;
    }
}

.stl-gal-right .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 3.2rem;
}

@media screen and (max-width: 768px) {
    .stl-gal-right .igr {
        gap: 0.8rem;
    }
}

.cnw-row {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 970px) {
    .cnw-row .col {
        width: 100%;
    }
}

@media screen and (max-width: 970px) {
    .cnw-content {
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        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-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
    }
}

.cnw-content .t-des {
    font-size: 1.6rem;
    color: #696460;
    margin-top: 1.6rem;
    margin-bottom: 4rem;
}

.cnw-image .inner {
    display: block;
    padding-top: calc((334 / 592) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
}

.cnw-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.huge-head {
    width: 74rem;
    max-width: 100%;
    margin: 0 auto;
}

@media screen and (max-width: 500px) {
    .huge-head .t-title {
        font-size: 5vw;
    }
}

.huge-block {
    margin-top: 4.8rem;
}

.huge-row {
    --cg: 3rem;
    --rg: 0rem;
}

@media screen and (max-width: 768px) {
    .huge-row {
        --cg: 2.4rem;
        --rg: 2.4rem;
    }
    .huge-row .col {
        width: 50%;
    }
    .huge-row .col:last-child {
        width: 100%;
    }
}

.huge-box {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    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-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.huge-box .icon {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 10rem;
    height: 10rem;
    margin-bottom: 4rem;
}

@media screen and (max-width: 768px) {
    .huge-box .icon {
        width: 6rem;
        height: 6rem;
        margin-bottom: 2.4rem;
    }
}

.huge-box .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.2rem;
    text-align: center;
}

.huge-box .igr .t-text {
    font-size: 2.4rem;
    font-family: "Libre Baskerville", sans-serif;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .huge-box .igr .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .huge-box .igr .t-text {
        font-size: 1.7rem;
    }
}

@media screen and (max-width: 500px) {
    .huge-box .igr .t-text {
        font-size: 2rem;
    }
}

.huge-box .igr .t-txt {
    color: #696460;
    font-size: 1.8rem;
}

@media only screen and (max-width: 1200px) {
    .huge-box .igr .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .huge-box .igr .t-txt {
        font-size: 1.5rem;
    }
}

.fbs-row {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    --rg: 0rem;
}

@media screen and (max-width: 600px) {
    .fbs-row .col {
        width: 100%;
    }
}

.fbs-tdes {
    font-size: 2.4rem;
    color: #403d3a;
    margin-bottom: 3.2rem;
    font-family: "Libre Baskerville", sans-serif;
}

@media only screen and (max-width: 1200px) {
    .fbs-tdes {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .fbs-tdes {
        font-size: 1.7rem;
    }
}

.fbs-py {
    padding: 0 8rem;
    position: relative;
    border-radius: 1.2rem;
    z-index: 1;
}

@media screen and (max-width: 768px) {
    .fbs-py {
        padding: 0 2.4rem;
        padding-bottom: 0;
        text-align: center;
    }
}

.fbs-py::before {
    content: "";
    position: absolute;
    bottom: 0%;
    top: 0;
    left: 0;
    right: 0;
    background: #ffacd6;
    z-index: -1;
    border-radius: inherit;
}

.fbs-content {
    padding: 6rem 0;
}

@media screen and (max-width: 768px) {
    .fbs-content {
        padding: 2.4rem 0;
    }
}

@media screen and (max-width: 500px) {
    .fbs-content .t-title {
        font-size: 5vw;
    }
}

.fbs-igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.fbs-igr .t-text {
    font-size: 2.4rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .fbs-igr .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .fbs-igr .t-text {
        font-size: 1.7rem;
    }
}

.fbs-igr .t-des {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .fbs-igr .t-des {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .fbs-igr .t-des {
        font-size: 1.5rem;
    }
}

.fbs-image {
    position: relative;
    z-index: 1;
    margin-top: -6rem;
}

@media screen and (max-width: 600px) {
    .fbs-image {
        margin-top: 0;
    }
}

.fbs-image::before {
    content: "";
    position: absolute;
    width: 100%;
    padding-top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: #f8e8ee;
    z-index: -1;
    -webkit-clip-path: circle(50% at 50% 94%);
    clip-path: circle(50% at 50% 94%);
    bottom: 0;
}

.fbs-image .inner {
    width: 34rem;
    margin: 0 auto;
    max-width: 100%;
}

.fbs-image .inner img {
    width: 100%;
    display: block;
}

.ourst-head {
    width: 60rem;
    max-width: 100%;
    margin: 0 auto;
}

@media screen and (max-width: 500px) {
    .ourst-head .t-title {
        font-size: 6vw;
    }
}

.ourst-sw {
    position: relative;
}

@media screen and (max-width: 1200px) {
    .ourst-sw .rows {
        --cg: 1.2rem;
        --rg: 0rem;
    }
}

.ourst-sw .rows .col {
    width: calc(100% / 4);
}

@media screen and (max-width: 870px) {
    .ourst-sw .rows .col {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 600px) {
    .ourst-sw .rows .col {
        width: 50%;
    }
}

.ourst-block {
    margin-top: 4.8rem;
}

.st-inner {
    position: relative;
}

@media (hover: hover) {
    .st-inner:hover .st-image .inner::after {
        left: 0;
        width: 100%;
    }
}

.st-image .inner {
    display: block;
    padding-top: calc((376 / 280) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem;
    z-index: 2;
}

.st-image .inner::after {
    position: absolute;
    content: "";
    width: 0;
    height: 100%;
    top: 0;
    right: 0;
    background: #8a2784;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: 1;
    pointer-events: none;
}

.st-image .inner:after {
    opacity: 0.5;
    background: linear-gradient(60deg, #ff7bca 0%, rgba(255, 197, 111, 0.8) 100%);
}

.st-image .inner::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(70.35%, rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 70.35%, rgba(0, 0, 0, 0.6) 100%);
    pointer-events: none;
    z-index: 1;
}

.st-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.st-item.st-disable {
    pointer-events: none;
}

.st-item.st-disable .st-inner {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
}

.st-ctn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: absolute;
    bottom: 0%;
    left: 0;
    right: 0;
    padding: 2.4rem;
    padding-top: 0;
    z-index: 2;
}

@media screen and (max-width: 1200px) {
    .st-ctn {
        padding: 1.2rem;
    }
}

.st-ctn .t-link {
    font-size: 1.8rem;
    font-weight: 700;
    color: #fff;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
}

@media only screen and (max-width: 1200px) {
    .st-ctn .t-link {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .st-ctn .t-link {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 500px) {
    .st-ctn .t-link {
        font-size: 1.4rem;
    }
}

.st-ctn .igr {
    padding: 0.4rem 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.8rem;
    border-radius: 0.4rem;
    background: #f7f6f5;
    margin-top: 0.4rem;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

@media screen and (max-width: 500px) {
    .st-ctn .igr {
        padding: 0.4rem;
        gap: 0.4rem;
    }
}

.st-ctn .igr .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.4rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.st-ctn .igr .igrs .t-num {
    font-size: 1.3rem;
    color: #403d3a;
    font-weight: 500;
}

.st-ctn .igr .igrs .icon {
    width: 1.2rem;
    height: 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.st-ctn .igr .igrs .icon img {
    display: block;
}

.st-ctn .igr .t-text {
    font-size: 1.6rem;
    color: #696460;
}

@media screen and (max-width: 500px) {
    .st-ctn .igr .t-text {
        font-size: 1.2rem;
    }
}

.wsay-sw .rows {
    --cg: 6rem;
    --rg: 0;
}

@media screen and (max-width: 1200px) {
    .wsay-sw .rows {
        --cg: 2.4rem;
    }
}

@media screen and (max-width: 600px) {
    .wsay-sw .rows {
        --cg: 1.2rem;
    }
}

.wsay-sw .rows .col {
    width: 50%;
}

@media screen and (max-width: 400px) {
    .wsay-sw .rows .col {
        width: 70%;
    }
}

.wsay-head {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

@media screen and (max-width: 500px) {
    .wsay-head {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        text-align: center;
    }
}

.wsay-inner {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -1rem;
    row-gap: 2.4rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.wsay-image {
    padding: 0 1rem;
    width: calc((2.6 / 6) * 100%);
}

@media screen and (max-width: 950px) {
    .wsay-image {
        width: 100%;
    }
}

.wsay-image .inner {
    display: block;
    padding-top: calc((319 / 239) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 1.2rem 0px 0px 1.2rem;
}

@media screen and (max-width: 950px) {
    .wsay-image .inner {
        border-radius: 1.2rem;
    }
}

.wsay-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.wsay-content {
    padding: 0 1rem;
    width: calc((3.4 / 6) * 100%);
}

@media screen and (max-width: 950px) {
    .wsay-content {
        width: 100%;
    }
}

.wsay-block {
    margin-top: 4rem;
}

.wsay-igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 100%;
}

.wsay-igr .icon {
    width: 3.2rem;
    height: 3.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.wsay-igr .t-des {
    font-size: 1.6rem;
    color: #403d3a;
    margin-top: 1.6rem;
}

@media screen and (max-width: 500px) {
    .wsay-igr .t-des {
        font-size: 1.4rem;
    }
}

.wsay-igr .igr-bot {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-top: 2.4rem;
    margin-top: auto;
}

.wsay-igr .igr-bot .igr-star {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.4rem;
}

.wsay-igr .igr-bot .igr-star .icon {
    width: 1.2rem;
    height: 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.wsay-igr .igr-bot .t-name {
    font-size: 2.4rem;
    color: #403d3a;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .wsay-igr .igr-bot .t-name {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .wsay-igr .igr-bot .t-name {
        font-size: 1.7rem;
    }
}

.wsay-igr .igr-bot .t-text {
    font-size: 1.6rem;
    color: #696460;
}

.woocommerce-checkout-review-order.mcart-block {
    margin-bottom: 2.4rem;
}

@media screen and (min-width: 1201px) {
    .sec-bks .side-fixed-wrap {
        position: sticky;
        top: 7rem;
    }
}

@media screen and (max-width: 1200px) {
    .bks-row .col-8 {
        width: 100%;
    }
}

@media screen and (max-width: 1199px) {
    .bks-row .col-4 {
        width: 40rem;
        margin-bottom: 0;
        padding: 0;
    }
}

.bks .fieldset {
    display: none;
}

.bks .fieldset.open {
    display: block;
}

.bks-ifs-pay {
    padding: 2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    margin-top: 1.2rem;
}

.bks-ifs-pay .recheck-item {
    gap: 1.2rem;
}

.bks-ifs-pay .recheck-item.active .mcart-block-head {
    color: #8a2784;
}

.bks-ifs-pay .mcart-block-head {
    font-size: 1.6rem;
    font-weight: 700;
    color: #403d3a;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.bks-ifs-pay .t-text {
    margin-bottom: 2.4rem;
    font-size: 2.4rem;
    color: #403d3a;
    font-weight: 700;
}

.bks-ifs #billing_country_field .woocommerce-input-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 5.6rem !important;
}

.bks-ifs #billing_country_field .woocommerce-input-wrapper select {
    border-radius: 0.4rem !important;
    border: 0.1rem solid #e8e4e1 !important;
    outline: unset !important;
    padding: 0 2.4rem !important;
    font-size: 1.8rem !important;
    width: 100%;
}

.bks-ifs #billing_custom_field_field {
    width: 10rem !important;
}

.bks-ifs #billing_custom_field_field input {
    padding: 0.6rem !important;
    text-align: center;
    border-right: unset !important;
    border-top-right-radius: unset !important;
    border-bottom-right-radius: unset !important;
}

.bks-ifs #billing_phone_field {
    width: calc(50% - 10rem) !important;
    margin-left: -2.4rem;
}

@media screen and (max-width: 500px) {
    .bks-ifs #billing_phone_field {
        width: calc(100% - 7.9rem) !important;
    }
}

.bks-ifs #billing_phone_field label {
    margin-left: -7rem;
}

.bks-ifs #billing_phone_field input {
    border-top-left-radius: unset !important;
    border-bottom-left-radius: unset !important;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper {
    --cg: 0;
    --rg: 0;
    margin-top: 4rem;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper label {
    margin-bottom: 0.8rem;
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
    display: block;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper textarea {
    border-radius: 0.4rem !important;
    border: 0.1rem solid #e8e4e1 !important;
    padding: 1.2rem 2.4rem !important;
    outline: unset !important;
    font-size: 1.8rem !important;
    width: 100% !important;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    min-height: 14rem !important;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper textarea::-webkit-input-placeholder {
    color: #8c8782;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper textarea::-moz-placeholder {
    color: #8c8782;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper textarea::-ms-input-placeholder {
    color: #8c8782;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper textarea::placeholder {
    color: #8c8782;
}

.bks-ifs .woocommerce-additional-fields__field-wrapper textarea:focus {
    border-color: #121110;
}

.bks-ifs .t-text {
    margin-bottom: 2.4rem;
    font-size: 2.4rem;
    color: #403d3a;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .bks-ifs .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-ifs .t-text {
        font-size: 1.7rem;
    }
}

.bks-ifs-cus {
    margin-top: 4rem;
}

@media screen and (max-width: 500px) {
    .bks-ifs-cus {
        margin-top: 0;
    }
}

.bks-ifs-cus .form-list {
    margin: unset;
}

.bks-ifs-cus .form-list .ip input {
    padding: 0 2.4rem !important;
    height: 5.6rem !important;
    border-radius: 0.4rem !important;
    border: 0.1rem solid #e8e4e1 !important;
    outline: unset !important;
    font-size: 1.8rem !important;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.bks-ifs-cus .form-list label {
    margin-bottom: 0.8rem;
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
    display: block;
}

.bks-ifs-dis {
    margin-top: 4rem;
}

.bks-ifs-dis .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.2rem;
}

@media screen and (max-width: 500px) {
    .bks-ifs-dis .igr {
        gap: 1.2rem;
    }
}

.bks-ifs-dis .igr .btn {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 12rem;
    min-width: unset;
}

.bks-ifs-dis .igr .igr-ip {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.bks-ifs-note {
    margin-top: 4rem;
}

.bks-ifs-note .form-list textarea {
    padding: 2.4rem;
}

.bks-ifs-loca {
    margin-top: 4rem;
}

.bks-ifs-loca .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.8rem;
    padding: 1.8rem 1.6rem;
    border-radius: 0.4rem;
    border: 0.1rem solid #e8e4e1;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.bks-ifs-loca .igrs .icon {
    width: 1.6rem;
    height: 1.6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
    top: 0.4rem;
}

.bks-ifs-loca .igrs .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.4rem;
}

.bks-ifs-loca .igrs .igr .t-txt {
    font-size: 1.6rem;
    color: #403d3a;
}

@media screen and (max-width: 500px) {
    .bks-ifs-loca .igrs .igr .t-txt {
        font-weight: 700;
    }
}

.bks-ifs-loca .igrs .igr .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
}

@media screen and (max-width: 500px) {
    .bks-ifs-loca .igrs .igr .t-gr {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 1.2rem;
    }
}

.bks-ifs-loca .igrs .igr .t-des {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.3rem;
    color: #696460;
}

.bks-ifs-loca .igrs .igr .t-des:not(:last-child)::after {
    content: "";
    height: 2rem;
    width: 0.1rem;
    background: #c4bfbb;
    display: inline-block;
}

@media screen and (max-width: 500px) {
    .bks-ifs-loca .igrs .igr .t-des:not(:last-child)::after {
        display: none;
    }
}

.bks-ifs-loca .igr-ctr {
    margin: 2.4rem 0;
}

.bks-ifs-loca .igr-ctr .ip-ctr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 3.2rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
    .bks-ifs-loca .igr-ctr .ip-ctr {
        gap: 1.2rem;
    }
}

.bks-ifs-loca .igr-ctr .ip-ctr-it {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
}

.bks-ifs-loca .igr-ctr .ip-ctr-it.active .t-txt {
    background: #121110;
    color: #fff;
}

.bks-ifs-loca .igr-ctr .ip-ctr-it.disable {
    pointer-events: none;
}

.bks-ifs-loca .igr-ctr .ip-ctr-it .t-txt {
    display: inline-block;
    font-size: 1.8rem;
    color: #aba5a1;
    background: #fff;
    padding: 1.6rem 4.8rem;
    border-radius: 10rem;
    border: 0.1rem solid #c4bfbb;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .bks-ifs-loca .igr-ctr .ip-ctr-it .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-ifs-loca .igr-ctr .ip-ctr-it .t-txt {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 768px) {
    .bks-ifs-loca .igr-ctr .ip-ctr-it .t-txt {
        padding: 0.6rem 1.6rem;
        font-size: 1.4rem;
    }
}

.bks-select-hs {
    margin-top: 4rem;
}

.bks-select-hl {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.6rem;
    padding: 0.4rem;
    max-height: 50rem;
    overflow-y: auto;
}

.bks-select-hb {
    border-radius: 0.4rem;
    border: 0.1rem solid #e8e4e1;
    background: #fff;
}

.bks-select-hb.active .t-text::before {
    opacity: 1;
}

.bks-select-hb .t-text {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    border-radius: inherit;
    padding: 1.6rem 2.4rem;
    width: 100%;
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .bks-select-hb .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-select-hb .t-text {
        font-size: 1.5rem;
    }
}

.bks-select-hb .t-text::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    margin: -0.2rem;
    z-index: -1;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    opacity: 0;
}

.bks-time {
    max-width: 70rem;
    width: 100%;
}

.bks-time-slide {
    margin-top: 4rem;
}

@media screen and (max-width: 500px) {
    .bks-time-slide {
        margin-top: 0;
    }
}

.bks-time-slide .igr-flex {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
    margin-bottom: 1.6rem;
}

.bks-time-slide .igr-flex .t-text {
    font-size: 2.4rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .bks-time-slide .igr-flex .t-text {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-time-slide .igr-flex .t-text {
        font-size: 1.7rem;
    }
}

.bks-time-slide .igr-flex .igr-control .swiper-control-btn {
    border: unset;
}

.bks-time-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4.6rem;
}

@media screen and (max-width: 768px) {
    .bks-time-list {
        gap: 2.4rem;
        max-width: 100%;
        overflow-x: auto;
    }
    .bks-time-list::-webkit-scrollbar {
        height: 0;
    }
}

.bks-time-box {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.8rem;
    text-align: center;
}

.bks-time-box.active .box-time {
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
}

.bks-time-box.active .box-time .t-num {
    color: #fff;
}

.bks-time-box.disable {
    pointer-events: none;
    opacity: 0.5;
    cursor: not-allowed;
}

.bks-time-box .box-time {
    width: 6rem;
    height: 6rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
    border: 0.1rem solid #e8e4e1;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

.bks-time-box .box-time .t-num {
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}

@media only screen and (max-width: 1200px) {
    .bks-time-box .box-time .t-num {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-time-box .box-time .t-num {
        font-size: 1.5rem;
    }
}

.bks-time-box .box-day {
    font-size: 1.8rem;
    color: #696460;
}

@media only screen and (max-width: 1200px) {
    .bks-time-box .box-day {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-time-box .box-day {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 800px) {
    .bks-sty-row {
        --rg: 1.2rem;
        --cg: 1.2rem;
    }
}

.bks-sty-row .col {
    width: calc(100% / 4);
}

@media screen and (max-width: 768px) {
    .bks-sty-row .col {
        width: calc(100% / 3);
    }
}

@media screen and (max-width: 600px) {
    .bks-sty-row .col {
        width: 50%;
    }
}

.bks-sty-gr {
    margin-top: 4rem;
}

@media screen and (max-width: 500px) {
    .bks-sty-gr {
        margin-top: 0;
    }
}

.bks-sty-gr .t-txt {
    font-size: 2.4rem;
    color: #403d3a;
    font-weight: 700;
    margin-bottom: 2.4rem;
}

@media only screen and (max-width: 1200px) {
    .bks-sty-gr .t-txt {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-sty-gr .t-txt {
        font-size: 1.7rem;
    }
}

.bks-sty-it.recheck-item {
    display: block;
}

.bks-sty-it.recheck-item.disable {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
    pointer-events: none;
}

.bks-sty-it.recheck-item.active .st-item::before {
    opacity: 1;
}

.bks-sty-it .st-ctn {
    padding: 1.2rem;
}

.bks-sty-it .st-item {
    position: relative;
}

.bks-sty-it .st-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    margin: -0.3rem;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    border-radius: 1.4rem;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    opacity: 0;
}

.bks-ovw-py {
    padding: 2rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
    background: #fff;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 50rem;
}

.bks-ovw-py .t-head {
    font-size: 2.4rem;
    font-weight: 700;
    color: #403d3a;
    margin-bottom: 1.6rem;
}

@media only screen and (max-width: 1200px) {
    .bks-ovw-py .t-head {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-ovw-py .t-head {
        font-size: 1.7rem;
    }
}

.bks-ovw-py .gr-btn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.6rem;
}

.bks-ovw-btn {
    margin-top: auto;
}

.bks-ovw-top .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.6rem;
}

.bks-ovw-top .igrs .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
}

.bks-ovw-top .igrs .igr .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.4rem;
}

.bks-ovw-top .igrs .igr .t-gr .t-text {
    font-size: 1.6rem;
    font-weight: 500;
    color: #403d3a;
}

.bks-ovw-top .igrs .igr .t-gr .t-time {
    font-size: 1.3rem;
    color: #696460;
}

.bks-ovw-top .igrs .igr .t-price {
    font-size: 1.6rem;
    color: #403d3a;
}

.bks-ovw-top .igr-bot {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 1.6rem 0;
    margin-top: 1.6rem;
    border-top: 0.1rem solid #e8e4e1;
}

.bks-ovw-mid .igrs .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.6rem;
}

.bks-ovw-mid .igrs .igr .icon-avt {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 4.8rem;
    height: 4.8rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: 100rem;
    overflow: hidden;
}

.bks-ovw-mid .igrs .igr .icon-avt img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.bks-ovw-mid .igrs .igr .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.bks-ovw-mid .igrs .igr .t-gr .t-text {
    font-size: 1.6rem;
    font-weight: 700;
    color: #403d3a;
}

.bks-ovw-mid .igr-time {
    margin-top: 1.6rem;
}

.bks-ovw-mid .igr-time .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.6rem;
}

.bks-ovw-mid .igr-time .igr .icon {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 4.8rem;
    height: 4.8rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    border-radius: 100rem;
    overflow: hidden;
    background: #e8e4e1;
}

.bks-ovw-mid .igr-time .igr .icon img {
    border-radius: unset;
}

.bks-ovw-mid .igr-time .igr .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.bks-ovw-mid .igr-time .igr .t-text {
    font-size: 1.6rem;
    color: #403d3a;
    font-weight: 700;
}

.bks-ovw-mid .igr-time .igr .t-time {
    font-size: 1.3rem;
    color: #696460;
}

.bks-sl {
    margin-bottom: 4rem;
}

@media screen and (max-width: 500px) {
    .bks-sl {
        margin-bottom: 0;
    }
}

.bks-sl-slider {
    margin-top: 4rem;
}

.bks-sl-slider .rows {
    --rg: 1.6rem;
    --cg: 1.6rem;
    width: 100%;
}

.bks-sl-slider .swiper .swiper-slide.col {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.bks-sl-tagi.active .t-tag {
    background: #121110;
    color: #fff;
}

.bks-sl-tagi .t-tag {
    display: inline-block;
    padding: 1.6rem 4.8rem;
    border-radius: 100rem;
    border: 0.1rem solid #c4bfbb;
    font-size: 1.8rem;
    color: #696460;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    margin-left: 0;
}

@media only screen and (max-width: 1200px) {
    .bks-sl-tagi .t-tag {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-sl-tagi .t-tag {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 1200px) {
    .bks-sl-tagi .t-tag {
        padding: 0.6rem 1.6rem;
    }
}

.bks-pop-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 1.6rem;
}

.bks-pop-it.active .recheck-text .icon.icon-check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
    color: #fff;
}

.bks-pop-it.active .recheck-text .icon.icon-plus {
    display: none;
}

@media (hover: hover) {
    .bks-pop-it.active:hover .recheck-text .icon.icon-remove {
        opacity: 1;
        visibility: visible;
    }
    .bks-pop-it.active:hover .recheck-text .icon.icon-check {
        opacity: 0;
    }
}

.bks-pop-it.active .bks-pop-in::before {
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), to(#f58a25));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%);
}

.bks-pop-in {
    padding: 1.2rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.2rem;
    width: 100%;
    position: relative;
    background: #fff;
    border-radius: 1.2rem;
}

.bks-pop-in::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: -0.1rem;
    border-radius: inherit;
    background: #e8e4e1;
    z-index: -1;
}

.bks-pop-igr {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 -1.2rem;
}

@media screen and (max-width: 500px) {
    .bks-pop-igr {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 1.2rem;
        -webkit-box-align: unset;
        -ms-flex-align: unset;
        align-items: unset;
    }
}

.bks-pop-image {
    padding: 0 1.2rem;
    width: 30%;
}

@media screen and (max-width: 500px) {
    .bks-pop-image {
        width: 18rem;
    }
}

.bks-pop-image .inner {
    display: block;
    padding-top: calc((130 / 196) * 100%);
    position: relative;
    overflow: hidden;
    border-radius: 0.4rem;
}

.bks-pop-image .inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.bks-pop .recheck-text {
    width: 4.8rem;
    height: 4.8rem;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
}

@media screen and (max-width: 500px) {
    .bks-pop .recheck-text {
        width: 3.8rem;
        height: 3.8rem;
    }
}

.bks-pop .recheck-text .icon {
    border-radius: 100rem;
    background: #e8e4e1;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 1.8rem;
}

.bks-pop .recheck-text .icon i {
    font-weight: 600;
}

.bks-pop .recheck-text .icon.icon-check {
    display: none;
}

.bks-pop .recheck-text .icon.icon-remove {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    background: #e8e4e1;
    border-radius: 100rem;
}

.bks-pop-ctn {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 1.2rem;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.bks-pop-ctn .t-name {
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .bks-pop-ctn .t-name {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .bks-pop-ctn .t-name {
        font-size: 1.5rem;
    }
}

@media screen and (max-width: 500px) {
    .bks-pop-ctn .t-name {
        font-size: 1.6rem;
    }
}

.bks-pop-ctn .t-gr {
    color: #696460;
    font-size: 1.6rem;
}

.bks-pop-ctn .t-link {
    font-size: 1.3rem;
    text-decoration: underline;
    color: #8a2784;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}

.stk-wrap {
    width: calc((10 / 12) * 100%);
    margin: 0 auto;
}

@media screen and (max-width: 1200px) {
    .stk-wrap {
        width: 100%;
    }
}

.stk-head {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.stk-head .icon {
    width: 8rem;
    height: 8rem;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-justify-content: center;
    border-radius: 100rem;
    font-size: 2.6rem;
    color: #fff;
    background: -webkit-gradient(linear, left top, left bottom, from(#f22fb0), color-stop(100%, #f58a25), to(#7061a3));
    background: linear-gradient(180deg, #f22fb0 0%, #f58a25 100%, #7061a3 100%);
}

.stk-head .icon i {
    font-weight: 700;
}

.stk-head .t-title {
    margin-top: 4rem;
    margin-bottom: 1.6rem;
}

.stk-if {
    margin-top: 4rem;
}

.stk-if-py {
    padding: 4rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
}

@media screen and (max-width: 768px) {
    .stk-if-py {
        padding: 2.4rem;
    }
}

.stk-if-list {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    row-gap: 0.8rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -1.2rem;
}

.stk-if-it {
    padding: 0 1.2rem;
}

.stk-if-in {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    row-gap: 0.4rem;
}

.stk-if-in .t-text {
    font-size: 1.6rem;
    color: #696460;
}

.stk-if-in .t-txt {
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .stk-if-in .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-if-in .t-txt {
        font-size: 1.5rem;
    }
}

.stk-dt {
    margin-top: 3.2rem;
    margin-bottom: 6rem;
}

.stk-dt-py {
    padding: 4rem;
    border-radius: 1.2rem;
    border: 0.1rem solid #e8e4e1;
}

@media screen and (max-width: 768px) {
    .stk-dt-py {
        padding: 2.4rem;
    }
}

.stk-dt-py .t-head {
    text-align: center;
    font-size: 2.4rem;
    font-weight: 700;
    font-family: "Libre Baskerville", sans-serif;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .stk-dt-py .t-head {
        font-size: 2rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-dt-py .t-head {
        font-size: 1.7rem;
    }
}

.stk-dt-box {
    padding: 1.6rem 0;
    border-bottom: 0.1rem solid #e8e4e1;
}

.stk-dt-box .t-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
    margin-bottom: 0.8rem;
}

@media only screen and (max-width: 1200px) {
    .stk-dt-box .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-dt-box .t-text {
        font-size: 1.5rem;
    }
}

.stk-dt-box .igrs {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
}

.stk-dt-box .igrs .t-gr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.stk-dt-box .igrs .t-gr .t-txt {
    font-size: 1.6rem;
    color: #403d3a;
}

.stk-dt-box .igrs .t-gr .t-time {
    font-size: 1.3rem;
    color: #696460;
}

.stk-dt-ot {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.6rem;
    padding: 1.6rem 0;
}

.stk-dt-ot .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.stk-dt-ot .igr .t-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .stk-dt-ot .igr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-dt-ot .igr .t-text {
        font-size: 1.5rem;
    }
}

.stk-dt-ot .igr .t-txt {
    font-size: 1.8rem;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .stk-dt-ot .igr .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-dt-ot .igr .t-txt {
        font-size: 1.5rem;
    }
}

.stk-dt-tt {
    padding-top: 1.6rem;
    border-top: 0.1rem solid #e8e4e1;
}

.stk-dt-tt .igr {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    gap: 1.2rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.stk-dt-tt .igr .t-text {
    font-size: 1.8rem;
    font-weight: 700;
    color: #403d3a;
}

@media only screen and (max-width: 1200px) {
    .stk-dt-tt .igr .t-text {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-dt-tt .igr .t-text {
        font-size: 1.5rem;
    }
}

.stk-dt-tt .igr .t-txt {
    font-size: 1.8rem;
    color: #403d3a;
    font-weight: 700;
}

@media only screen and (max-width: 1200px) {
    .stk-dt-tt .igr .t-txt {
        font-size: 1.6rem;
    }
}

@media only screen and (max-width: 800px) {
    .stk-dt-tt .igr .t-txt {
        font-size: 1.5rem;
    }
}

.bks-time-list {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-overflow-scrolling: touch;
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
}

.bks-time-list::-webkit-scrollbar {
    height: 0;
}

.bks-time-list .bks-time-box {
    scroll-snap-align: start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
    text-align: center;
    width: 6rem;
}

.bks-time-list .bks-time-box:first-child() {
    scroll-snap-align: start;
}

.bks-time-list .bks-time-box:last-child() {
    scroll-snap-align: end;
}

.bks-time-list .box-day {
    width: 100%;
}

.tab-ctr-panel.tabPanel {
    display: none;
}


/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiY29yZS9fcmVzZXQuc2NzcyIsImNvcmUvX21vbmEuc2NzcyIsImNvcmUvX3ZhcmlhYmxlLnNjc3MiLCJjb3JlL19mb250LnNjc3MiLCJjb3JlL19taXhpbi5zY3NzIiwiY29yZS9fYmFzZS5zY3NzIiwiY29yZS9fZmxleC5zY3NzIiwiY29yZS9fYW5pbWF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19iYWNrdG90b3Auc2NzcyIsImNvbXBvbmVudHMvX2Fvcy5zY3NzIiwiY29tcG9uZW50cy9fc21lbnUuc2NzcyIsImNvbXBvbmVudHMvX3Njcm9sbC5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2J1cmdlci5zY3NzIiwiY29tcG9uZW50cy9fbW9iaWxlLnNjc3MiLCJjb21wb25lbnRzL19zZWxlY3QyLnNjc3MiLCJjb21wb25lbnRzL19taXJyb3Iuc2NzcyIsImNvbXBvbmVudHMvX3NsLnNjc3MiLCJjb21wb25lbnRzL19wb3B1cC5zY3NzIiwiY29tcG9uZW50cy9fbG9hZGVyLnNjc3MiLCJjb21wb25lbnRzL19kYXRldGltZS5zY3NzIiwiY29tcG9uZW50cy9fYW5pbWF0aW9uLXNjci5zY3NzIiwiY29tcG9uZW50cy9fY3VzdG9tLWFuaW1hdGlvbi5zY3NzIiwibGF5b3V0cy9fYmFubmVyLnNjc3MiLCJsYXlvdXRzL19zd2lwZXIuc2NzcyIsImxheW91dHMvX2FuaS5zY3NzIiwibGF5b3V0cy9fYnJlYWRjcnVtYi5zY3NzIiwibGF5b3V0cy9fYnRuLnNjc3MiLCJsYXlvdXRzL19pbnB1dC5zY3NzIiwibGF5b3V0cy9fcGFnaS5zY3NzIiwibGF5b3V0cy9fcHJvLnNjc3MiLCJsYXlvdXRzL19zZWFyY2guc2NzcyIsImxheW91dHMvX3NpZGViYXIuc2NzcyIsImxheW91dHMvX3RleHQuc2NzcyIsImxheW91dHMvX2NvbXBvbmVudC5zY3NzIiwibGF5b3V0cy9fZGlzdGFuY2Uuc2NzcyIsImxheW91dHMvX3JlY2hlY2suc2NzcyIsImxheW91dHMvX3N0YXIuc2NzcyIsImxheW91dHMvX3NpZGUuc2NzcyIsImxheW91dHMvX3VzZXIuc2NzcyIsImxheW91dHMvX214aC5zY3NzIiwibGF5b3V0cy9fY2FydC5zY3NzIiwibGF5b3V0cy9fcHJsLnNjc3MiLCJwYWdlcy9fY29tbW9uLnNjc3MiLCJwYWdlcy9faG9tZS5zY3NzIiwicGFnZXMvX2NvbnRhY3Quc2NzcyIsInBhZ2VzL19hYm91dC5zY3NzIiwicGFnZXMvX25ld3Muc2NzcyIsInBhZ2VzL19ibG9nLnNjc3MiLCJwYWdlcy9fZGV0YWlsLnNjc3MiLCJwYWdlcy9fcmVnaS5zY3NzIiwicGFnZXMvX2FjZi5zY3NzIiwicGFnZXMvX21hc29ucnkuc2NzcyIsInBhZ2VzL19zdGwuc2NzcyIsInBhZ2VzL19ia3Muc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMaWJyYXJ5XHJcbkBpbXBvcnQgdXJsKFwiLi4vYXNzZXRzL2xpYnJhcnkvZm9udGF3ZXNvbWUvY3NzL2FsbC5jc3NcIik7XHJcbkBpbXBvcnQgdXJsKFwiLi4vYXNzZXRzL2xpYnJhcnkvZm9udGF3ZXNvbWUvZm9udGF3ZXNvbWUvZm9udGF3ZXNvbWUuY3NzXCIpO1xyXG5AaW1wb3J0IHVybChcIi4uL2Fzc2V0cy9saWJyYXJ5L2Fvcy9hb3MuY3NzXCIpO1xyXG5AaW1wb3J0IHVybChcIi4uL2Fzc2V0cy9saWJyYXJ5L3N3aXBlci9zd2lwZXItYnVuZGxlLm1pbi5jc3NcIik7XHJcbkBpbXBvcnQgdXJsKFwiLi4vYXNzZXRzL2xpYnJhcnkvdGhlbWlmeS1pY29ucy90aGVtaWZ5LWljb25zLmNzc1wiKTtcclxuQGltcG9ydCB1cmwoXCIuLi9hc3NldHMvbGlicmFyeS9zZWxlY3QyL3NlbGVjdDIubWluLmNzc1wiKTtcclxuQGltcG9ydCB1cmwoXCIuLi9hc3NldHMvbGlicmFyeS90aGVtaWZpL3RoZW1pZnktaWNvbnMuY3NzXCIpO1xyXG5AaW1wb3J0IHVybChcIi4uL2Fzc2V0cy9saWJyYXJ5L2dhbGxlcnkvbGlnaHRnYWxsZXJ5Lm1pbi5jc3NcIik7XHJcbkBpbXBvcnQgdXJsKFwiLi4vYXNzZXRzL2xpYnJhcnkvc3BsaXR0aW5nL3NwbGl0dGluZy5jc3NcIik7XHJcbkBpbXBvcnQgdXJsKFwiLi4vYXNzZXRzL2xpYnJhcnkvZmFuY3lib3gvZmFuY3lib3guY3NzXCIpO1xyXG5AaW1wb3J0IHVybChcIi4uL2Fzc2V0cy9saWJyYXJ5L2RhdGV0aW1lL2RhdGVyYW5nZXBpY2tlci5jc3NcIik7XHJcbi8vIENvcmVcclxuQGltcG9ydCBcIi4vY29yZS9yZXNldFwiO1xyXG5AaW1wb3J0IFwiLi9jb3JlL21vbmFcIjtcclxuQGltcG9ydCBcIi4vY29yZS92YXJpYWJsZVwiO1xyXG5AaW1wb3J0IFwiLi9jb3JlL2ZvbnRcIjtcclxuQGltcG9ydCBcIi4vY29yZS9taXhpblwiO1xyXG5AaW1wb3J0IFwiLi9jb3JlL2Jhc2VcIjtcclxuQGltcG9ydCBcIi4vY29yZS9mbGV4XCI7XHJcbkBpbXBvcnQgXCIuL2NvcmUvYW5pbWF0aW9uXCI7XHJcbi8vIENvbXBvbmVudFxyXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL2JhY2t0b3RvcFwiO1xyXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL2Fvc1wiO1xyXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL3NtZW51XCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvc2Nyb2xsXCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvaGVhZGVyXCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvZm9vdGVyXCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvYnVyZ2VyXCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvbW9iaWxlXCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvc2VsZWN0MlwiO1xyXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL21pcnJvclwiO1xyXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL3NsXCI7XHJcbkBpbXBvcnQgXCIuL2NvbXBvbmVudHMvcG9wdXBcIjtcclxuQGltcG9ydCBcIi4vY29tcG9uZW50cy9sb2FkZXJcIjtcclxuQGltcG9ydCBcIi4vY29tcG9uZW50cy9kYXRldGltZVwiO1xyXG5AaW1wb3J0IFwiLi9jb21wb25lbnRzL2FuaW1hdGlvbi1zY3JcIjtcclxuQGltcG9ydCBcIi4vY29tcG9uZW50cy9jdXN0b20tYW5pbWF0aW9uXCI7XHJcbi8vIExheW91dFxyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL2Jhbm5lclwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL3N3aXBlclwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL2FuaVwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL2JyZWFkY3J1bWJcIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9idG5cIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9pbnB1dFwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL3BhZ2lcIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9wcm9cIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9zZWFyY2hcIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9zaWRlYmFyXCI7XHJcbkBpbXBvcnQgXCIuL2xheW91dHMvdGV4dFwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL2NvbXBvbmVudFwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL2Rpc3RhbmNlXCI7XHJcbkBpbXBvcnQgXCIuL2xheW91dHMvcmVjaGVja1wiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL3N0YXJcIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9zaWRlXCI7XHJcbkBpbXBvcnQgXCIuL2xheW91dHMvdXNlclwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL214aFwiO1xyXG5AaW1wb3J0IFwiLi9sYXlvdXRzL2NhcnRcIjtcclxuQGltcG9ydCBcIi4vbGF5b3V0cy9wcmxcIjtcclxuLy8gUGFnZXNcclxuQGltcG9ydCBcIi4vcGFnZXMvY29tbW9uXCI7XHJcbkBpbXBvcnQgXCIuL3BhZ2VzL2hvbWVcIjtcclxuQGltcG9ydCBcIi4vcGFnZXMvY29udGFjdFwiO1xyXG5AaW1wb3J0IFwiLi9wYWdlcy9hYm91dFwiO1xyXG5AaW1wb3J0IFwiLi9wYWdlcy9uZXdzXCI7XHJcbkBpbXBvcnQgXCIuL3BhZ2VzL2Jsb2dcIjtcclxuQGltcG9ydCBcIi4vcGFnZXMvZGV0YWlsXCI7XHJcbkBpbXBvcnQgXCIuL3BhZ2VzL3JlZ2lcIjtcclxuQGltcG9ydCBcIi4vcGFnZXMvYWNmXCI7XHJcbkBpbXBvcnQgXCIuL3BhZ2VzL21hc29ucnlcIjtcclxuQGltcG9ydCBcIi4vcGFnZXMvc3RsXCI7XHJcbkBpbXBvcnQgXCIuL3BhZ2VzL2Jrc1wiO1xyXG4iLCJodG1sLFxyXG5ib2R5LFxyXG5kaXYsXHJcbnNwYW4sXHJcbmFwcGxldCxcclxub2JqZWN0LFxyXG5pZnJhbWUsXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYsXHJcbnAsXHJcbmJsb2NrcXVvdGUsXHJcbnByZSxcclxuYSxcclxuYWJicixcclxuYWNyb255bSxcclxuYWRkcmVzcyxcclxuYmlnLFxyXG5jaXRlLFxyXG5jb2RlLFxyXG5kZWwsXHJcbmRmbixcclxuZW0sXHJcbmltZyxcclxuaW5zLFxyXG5rYmQsXHJcbnEsXHJcbnMsXHJcbnNhbXAsXHJcbnNtYWxsLFxyXG5zdHJpa2UsXHJcbnN0cm9uZyxcclxuc3ViLFxyXG5zdXAsXHJcbnR0LFxyXG52YXIsXHJcbmIsXHJcbnUsXHJcbmksXHJcbmNlbnRlcixcclxuZGwsXHJcbmR0LFxyXG5kZCxcclxub2wsXHJcbnVsLFxyXG5saSxcclxuZmllbGRzZXQsXHJcbmZvcm0sXHJcbmxhYmVsLFxyXG5sZWdlbmQsXHJcbnRhYmxlLFxyXG5jYXB0aW9uLFxyXG50Ym9keSxcclxudGZvb3QsXHJcbnRoZWFkLFxyXG50cixcclxudGgsXHJcbnRkLFxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuY2FudmFzLFxyXG5kZXRhaWxzLFxyXG5lbWJlZCxcclxuZmlndXJlLFxyXG5maWdjYXB0aW9uLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tZW51LFxyXG5uYXYsXHJcbm91dHB1dCxcclxucnVieSxcclxuc2VjdGlvbixcclxuc3VtbWFyeSxcclxudGltZSxcclxubWFyayxcclxuYXVkaW8sXHJcbnZpZGVvIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBmb250LXNpemU6IDEwMCU7XHJcbiAgICBmb250OiBpbmhlcml0O1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbm9sLFxyXG51bCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlLFxyXG5xIHtcclxuICAgIHF1b3Rlczogbm9uZTtcclxufVxyXG5cclxuYmxvY2txdW90ZTpiZWZvcmUsXHJcbmJsb2NrcXVvdGU6YWZ0ZXIsXHJcbnE6YmVmb3JlLFxyXG5xOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBjb250ZW50OiBub25lO1xyXG59XHJcblxyXG50YWJsZSB7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbn0iLCIubW9uYS1jb250ZW50IHtcclxuICAgIHN0cm9uZyxcclxuICAgIGIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG4gICAgZW0sXHJcbiAgICBpIHtcclxuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICB9XHJcbiAgICBoMSxcclxuICAgIGgyLFxyXG4gICAgaDMsXHJcbiAgICBoNCxcclxuICAgIGg1LFxyXG4gICAgaDYge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMC42ZW07XHJcbiAgICB9XHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjdlbTtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDEuNmVtO1xyXG4gICAgfVxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcclxuICAgIH1cclxuICAgIGg1IHtcclxuICAgICAgICBmb250LXNpemU6IDFlbTtcclxuICAgIH1cclxuICAgIGg2IHtcclxuICAgICAgICBmb250LXNpemU6IDAuODVlbTtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICAgIG1hcmdpbjogMWVtIDA7XHJcbiAgICB9XHJcbiAgICB1bCxcclxuICAgIG9sIHtcclxuICAgICAgICBtYXJnaW46IDFlbSAwO1xyXG4gICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxuICAgIH1cclxuICAgIHVsIHVsLFxyXG4gICAgdWwgb2wsXHJcbiAgICBvbCB1bCxcclxuICAgIG9sIG9sIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xyXG4gICAgfVxyXG4gICAgdWwge1xyXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuICAgIH1cclxuICAgIG9sIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XHJcbiAgICB9XHJcbiAgICB1bCB1bCxcclxuICAgIG9sIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTtcclxuICAgIH1cclxuICAgIG9sIG9sLFxyXG4gICAgdWwgb2wge1xyXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbG93ZXItbGF0aW47XHJcbiAgICB9XHJcbiAgICBpbWcsXHJcbiAgICBpZnJhbWUge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgI2NjYztcclxuICAgICAgICBtYXJnaW46IDFlbSAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDFlbTtcclxuICAgICAgICBxdW90ZXM6IFwiXFwyMDFDXCJcIlxcMjAxRFwiXCJcXDIwMThcIlwiXFwyMDE5XCI7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29sb3I6ICNjY2M7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IG9wZW4tcXVvdGU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC4xZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHRhYmxlIHtcclxuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IDFlbSAwO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XHJcbiAgICAgICAgdGgsXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTFlMWUxO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UxZTFlMTtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1vbmEteW91dHViZS13cmFwIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XHJcbiAgICAgICAgaWZyYW1lIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1vbmEtdGFibGUtd3JhcCB7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICB9XHJcbn0iLCI6cm9vdCB7XHJcbiAgLS1zaXplLWhkOiAxMHJlbTtcclxuXHJcbiAgLy8gZGlzdGFuY2Ugc2VjdGlvblxyXG4gIC0tcGQtc2M6IDEwcmVtO1xyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAtLXBkLXNjOiA0cmVtO1xyXG4gICAgLS1yYWRpdXM6IDAuOHJlbTtcclxuICAgIC0tc2l6ZS1oZDogNnJlbTtcclxuICB9XHJcbn1cclxuXHJcbiRjb2xvci1wcmktbG46ICNmMzZmM2Y7XHJcbiRjb2xvci1wcmk6ICM4YTI3ODQ7XHJcbiRjb2xvci1zZWNvbmQ6ICMxMjExMTA7XHJcbiRjb2xvci10aGlyZDogIzQwM2QzYTtcclxuJGNvbG9yLWZvdXI6ICM2OTY0NjA7XHJcbiRjb2xvci1maXZlOiAjZjA1MTIzO1xyXG4kY29sb3ItYmxhY2s6ICMwMDAwMDA7XHJcbiRjb2xvci13aGl0ZTogI2ZmZmZmZjtcclxuJGNvbG9yLXRleHQ6ICM2OTY0NjA7XHJcbiRjb2xvci10ZXh0LXNlY29uZDogIzM2MzYzNjtcclxuJGNvbG9yLWJvcmRlci0wMTogcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4kY29sb3ItYm9yZGVyLTAyOiByZ2JhKDAsIDAsIDAsIDAuMik7XHJcbiRjb2xvci1ib3JkZXItMDM6IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuJGNvbG9yLWJvcmRlci0wNDogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4kY29sb3ItYm9yZGVyLTA1OiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiRjb2xvci1ib3JkZXItMDY6IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuJGNvbG9yLWJvcmRlci0wNzogcmdiYSgwLCAwLCAwLCAwLjcpO1xyXG4kY29sb3ItYm9yZGVyLTA4OiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiRjb2xvci1ib3JkZXItMDk6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuJGNvbG9yLW9wYS13aGl0ZS0wMTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4kY29sb3Itb3BhLXdoaXRlLTAyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbiRjb2xvci1vcGEtd2hpdGUtMDM6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcclxuJGNvbG9yLW9wYS13aGl0ZS0wNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xyXG4kY29sb3Itb3BhLXdoaXRlLTA1OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiRjb2xvci1vcGEtd2hpdGUtMDY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcclxuJGNvbG9yLW9wYS13aGl0ZS0wNzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xyXG4kY29sb3Itb3BhLXdoaXRlLTA4OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiRjb2xvci1vcGEtd2hpdGUtMDk6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuLy9SZXNwb25zaXZlXHJcbiRyZXMtbW9iaWxlOiAxMTk5cHg7XHJcbiRyZXMtbW9iaWxlLW1pbjogMTIwMHB4O1xyXG4kbW9iaWxlOiA1MDBweDtcclxuLy9EaXN0YW5jZVxyXG4kcmFkaXVzOiAwLjZyZW07XHJcbi8vIGN1YmljXHJcbiRjdWJpYzogY3ViaWMtYmV6aWVyKDAuNzIsIDAuMDQsIDAuNDksIDAuODIpO1xyXG4iLCJAbWl4aW4gZnotMjAwIHtcclxuICAgIGZvbnQtc2l6ZTogMjByZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDE1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEwcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotOTAge1xyXG4gICAgZm9udC1zaXplOiA5cmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA2cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDQuNXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTcyIHtcclxuICAgIGZvbnQtc2l6ZTogNy4ycmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei02NSB7XHJcbiAgICBmb250LXNpemU6IDYuNXJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotNjQge1xyXG4gICAgZm9udC1zaXplOiA2LjRyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDMuOXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjlyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei02MCB7XHJcbiAgICBmb250LXNpemU6IDZyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei01NiB7XHJcbiAgICBmb250LXNpemU6IDUuNnJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNS4xcmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei01NSB7XHJcbiAgICBmb250LXNpemU6IDUuNXJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzLjlyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei01MCB7XHJcbiAgICBmb250LXNpemU6IDVyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDQuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzLjRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei00OCB7XHJcbiAgICBmb250LXNpemU6IDQuOHJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNC4zcmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDMuM3JlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTQ1IHtcclxuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA0cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei00NCB7XHJcbiAgICBmb250LXNpemU6IDQuNHJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotNDIge1xyXG4gICAgZm9udC1zaXplOiA0LjJyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei00MCB7XHJcbiAgICBmb250LXNpemU6IDRyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjdyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei0zOCB7XHJcbiAgICBmb250LXNpemU6IDMuOHJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMy40cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTM2IHtcclxuICAgIGZvbnQtc2l6ZTogMy42cmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzLjFyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi42cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMzUge1xyXG4gICAgZm9udC1zaXplOiAzLjVyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDNyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMzQge1xyXG4gICAgZm9udC1zaXplOiAzLjRyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuOXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei0zMiB7XHJcbiAgICBmb250LXNpemU6IDMuMnJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi43cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTMwIHtcclxuICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi43cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTI5IHtcclxuICAgIGZvbnQtc2l6ZTogMi45cmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMjgge1xyXG4gICAgZm9udC1zaXplOiAyLjhyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjFyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei0yNiB7XHJcbiAgICBmb250LXNpemU6IDIuNnJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuOXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTI1IHtcclxuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjFyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMjQge1xyXG4gICAgZm9udC1zaXplOiAyLjRyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMjIge1xyXG4gICAgZm9udC1zaXplOiAyLjJyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS45cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMjAge1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZnotMTkge1xyXG4gICAgZm9udC1zaXplOiAxLjlyZW07XHJcblxyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBmei0xOCB7XHJcbiAgICBmb250LXNpemU6IDEuOHJlbTtcclxuXHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZ6LTE3IHtcclxuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xyXG59XHJcblxyXG5AbWl4aW4gZnotMTYge1xyXG4gICAgZm9udC1zaXplOiAxLjZyZW07XHJcbn1cclxuXHJcbkBtaXhpbiBmei0xNSB7XHJcbiAgICBmb250LXNpemU6IDEuNXJlbTtcclxufVxyXG5cclxuQG1peGluIGZ6LTE0IHtcclxuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG59XHJcblxyXG5AbWl4aW4gZnotMTMge1xyXG4gICAgZm9udC1zaXplOiAxLjNyZW07XHJcbn1cclxuXHJcbkBtaXhpbiBmei0xMiB7XHJcbiAgICBmb250LXNpemU6IDEuMnJlbTtcclxufVxyXG5cclxuQG1peGluIGZ6LTExIHtcclxuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xyXG59XHJcblxyXG5AbWl4aW4gZnotMTAge1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG59XHJcblxyXG5AbWl4aW4gZnotOSB7XHJcbiAgICBmb250LXNpemU6IDAuOXJlbTtcclxufSIsIkBtaXhpbiBtYXgoJHZhbHVlKSB7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHZhbHVlKSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtaW4tbWF4KCRtaW4sICRtYXgpIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1pbigkdmFsdWUpIHtcclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdmFsdWUpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5AbWl4aW4gYmFja2xpZ2h0KCR4LCAkeSwgJHNwcmVhZCwgJHNpemUsICRjb2xvckEsICRjb2xvckIsICRkdXJhdGlvbikge1xyXG4gICY6YWZ0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHRvcDogJHk7XHJcbiAgICBsZWZ0OiAkeDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgb3BhY2l0eTogMC43O1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgkc2l6ZSk7XHJcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cigkc3ByZWFkKTtcclxuICAgIC1tb3otZmlsdGVyOiBibHVyKCRzcHJlYWQpO1xyXG4gICAgLW1zLWZpbHRlcjogYmx1cigkc3ByZWFkKTtcclxuICAgIGZpbHRlcjogYmx1cigkc3ByZWFkKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICRjb2xvckEsICRjb2xvckIpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDIwMCU7XHJcbiAgICBhbmltYXRpb246IGFuaW1hdGVHbG93ICRkdXJhdGlvbiBlYXNlIGluZmluaXRlO1xyXG5cclxuICAgIEBrZXlmcmFtZXMgYW5pbWF0ZUdsb3cge1xyXG4gICAgICAwJSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xyXG4gICAgICB9XHJcbiAgICAgIDUwJSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XHJcbiAgICAgIH1cclxuICAgICAgMTAwJSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWlkKCkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4KCkge1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICBkaXNwbGF5OiAtbW96LWZsZXg7XHJcbiAgZGlzcGxheTogLW1zLWZsZXg7XHJcbiAgZGlzcGxheTogLW8tZmxleDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC13cigpIHtcclxuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgZGlzcGxheTogLW1vei1mbGV4O1xyXG4gIGRpc3BsYXk6IC1tcy1mbGV4O1xyXG4gIGRpc3BsYXk6IC1vLWZsZXg7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LXN0KCkge1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICBkaXNwbGF5OiAtbW96LWZsZXg7XHJcbiAgZGlzcGxheTogLW1zLWZsZXg7XHJcbiAgZGlzcGxheTogLW8tZmxleDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIC1tcy1hbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuQG1peGluIG1pZC1mbGV4KCkge1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICBkaXNwbGF5OiAtbW96LWZsZXg7XHJcbiAgZGlzcGxheTogLW1zLWZsZXg7XHJcbiAgZGlzcGxheTogLW8tZmxleDtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIC1tcy1hbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWNvbCB7XHJcbiAgQGluY2x1ZGUgZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1saXN0KCRtOiAwIC0xLjJyZW0sICRtYjogLTIuNHJlbSkge1xyXG4gIEBpbmNsdWRlIGZsZXgtd3I7XHJcbiAgbWFyZ2luOiAkbTtcclxuICBtYXJnaW4tYm90dG9tOiAkbWI7XHJcblxyXG4gIEBpbmNsdWRlIG1heCgkbW9iaWxlKSB7XHJcbiAgICBtYXJnaW46IDAgLTAuNHJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IC0wLjhyZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gZmxleC1pdGVtKCRwOiAwIDEuMnJlbSwgJG1iOiAyLjRyZW0pIHtcclxuICBAaW5jbHVkZSBmbGV4LXdyO1xyXG4gIHBhZGRpbmc6ICRwO1xyXG4gIG1hcmdpbi1ib3R0b206ICRtYjtcclxuXHJcbiAgQGluY2x1ZGUgbWF4KCRtb2JpbGUpIHtcclxuICAgIHBhZGRpbmc6IDAgMC40cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGV4Y2VycHQoXHJcbiAgJGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemUsXHJcbiAgJGxpbmUtaGVpZ2h0OiAxLjQsXHJcbiAgJGxpbmVzLXRvLXNob3c6IDMsXHJcbiAgJGV4Y2VycHQtYmc6IHRyYW5zcGFyZW50XHJcbikge1xyXG4gIGJhY2tncm91bmQ6ICRleGNlcnB0LWJnO1xyXG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gIGZvbnQtc2l6ZTogMS40O1xyXG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XHJcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiAkbGluZXMtdG8tc2hvdztcclxuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbkBtaXhpbiBpbWdQZCgkdmVyLCAkaG9yaSkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmctdG9wOiBjYWxjKCgjeyR2ZXJ9IC8gI3skaG9yaX0pICogMTAwJSk7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbkBtaXhpbiBpbWdDb3ZlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgb2JqZWN0LWZpdDogY292ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBpbWdDb250YWluIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBvYmplY3QtZml0OiBjb250YWluO1xyXG59XHJcblxyXG5AbWl4aW4gbGMoJHZhbHVlOiAzKSB7XHJcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiAkdmFsdWU7XHJcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbmZvcm0oJHZhbHVlKSB7XHJcbiAgdHJhbnNmb3JtOiAkdmFsdWU7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICR2YWx1ZTtcclxuICAtbW96LXRyYW5zZm9ybTogJHZhbHVlO1xyXG4gIC1tcy10cmFuc2Zvcm06ICR2YWx1ZTtcclxuICAtby10cmFuc2Zvcm06ICR2YWx1ZTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHRpbWU6IDAuMXMsICRzdHlsZTogZWFzZS1pbi1vdXQsICRkZWxheTogMHMpIHtcclxuICB0cmFuc2l0aW9uOiAkdGltZSAkc3R5bGU7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdGltZSAkc3R5bGU7XHJcbiAgLW1vei10cmFuc2l0aW9uOiAkdGltZSAkc3R5bGU7XHJcbiAgLW1zLXRyYW5zaXRpb246ICR0aW1lICRzdHlsZTtcclxuICAtby10cmFuc2l0aW9uOiAkdGltZSAkc3R5bGU7XHJcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xyXG4gIC1tb3otdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xyXG4gIC1tcy10cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XHJcbiAgLW8tdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNpdGlvblJlIHtcclxuICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgLW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgLW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuQG1peGluIGhvdmVyKCR2YWx1ZTogMTAyNXB4KSB7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdmFsdWUpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc3FyKCR2YWx1ZTogNHJlbSkge1xyXG4gIHdpZHRoOiAkdmFsdWU7XHJcbiAgaGVpZ2h0OiAkdmFsdWU7XHJcbn1cclxuXHJcbkBtaXhpbiBjaXIoJHZhbHVlOiA0cmVtKSB7XHJcbiAgd2lkdGg6ICR2YWx1ZTtcclxuICBoZWlnaHQ6ICR2YWx1ZTtcclxuICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxufVxyXG5cclxuQG1peGluIGRlZmF1bHQtYmFja2dyb3VuZCgkcmVwZWF0OiBuby1yZXBlYXQsICRwb3NpdGlvbjogY2VudGVyLCAkc2l6ZTogY292ZXIpIHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogJHJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbiAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZTtcclxufVxyXG5cclxuQG1peGluIGNsZWFyIHtcclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzY3JvbGwtaGlkZGVuIHtcclxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGZ1bGwtZml4ZWQoJGw6IDAsICR0OiAwLCAkcjogMCwgJGI6IDApIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgbGVmdDogJGw7XHJcbiAgdG9wOiAkdDtcclxuICByaWdodDogJHI7XHJcbiAgYm90dG9tOiAkYjtcclxufVxyXG5cclxuQG1peGluIGZ1bGwoJGw6IDAsICR0OiAwLCAkcjogMCwgJGI6IDApIHtcclxuICBsZWZ0OiAkbDtcclxuICB0b3A6ICR0O1xyXG4gIHJpZ2h0OiAkcjtcclxuICBib3R0b206ICRiO1xyXG59XHJcblxyXG5AbWl4aW4gZnVsbC1zaXplKCRzaXplOiAwKSB7XHJcbiAgbGVmdDogJHNpemU7XHJcbiAgdG9wOiAkc2l6ZTtcclxuICByaWdodDogJHNpemU7XHJcbiAgYm90dG9tOiAkc2l6ZTtcclxufVxyXG5cclxuQG1peGluIGZ1bGwtc2Vjb25kIHtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbkBtaXhpbiBob3Zlci1zY2FsZSB7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4wNSk7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjA1KTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xyXG59XHJcblxyXG5AbWl4aW4gcG9zaS12ZXJ0aWNhbCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBwb3NpLWhvcml6b250YWwge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGhpZGRlbigkeDogMCwgJHk6IDApIHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xyXG59XHJcblxyXG5AbWl4aW4gc2hvdyB7XHJcbiAgb3BhY2l0eTogMTtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG59XHJcblxyXG5AbWl4aW4gaG92ZXIge1xyXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gaG92ZXItem9vbSgkc2NhbGU6IDEuMDUpIHtcclxuICB0cmFuc2Zvcm06IHNjYWxlKCRzY2FsZSk7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRzY2FsZSk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKCRzY2FsZSk7XHJcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkc2NhbGUpO1xyXG59XHJcblxyXG5AbWl4aW4gaG92ZXItem9vbS1hYnMoJHNjYWxlOiAxLjA1KSB7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSgkc2NhbGUpO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkc2NhbGUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgkc2NhbGUpO1xyXG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoJHNjYWxlKTtcclxufVxyXG5cclxuQG1peGluIG1pZGxlKCRwKSB7XHJcbiAgQGlmICRwPT0gXCJhYnMtdmVyXCIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCwgLTUwJSk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLCAtNTAlKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAsIC01MCUpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAsIC01MCUpO1xyXG4gIH0gQGVsc2UgaWYgJHA9PSBcImFicy1ob3JpXCIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gIH0gQGVsc2UgaWYgJHA9PSBcIm1pZC1mbGV4XCIge1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xyXG4gICAgZGlzcGxheTogLW1zLWZsZXg7XHJcbiAgICBkaXNwbGF5OiAtby1mbGV4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIC1tcy1hbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICB9IEBlbHNlIGlmICRwPT0gXCJtaWQtYmxvY2tcIiB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAmLnBsYWNlaG9sZGVyIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgJjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcblxyXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBoaWRlLWlucHV0LW51bWJlciB7XHJcbiAgJlt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG4gICZbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC1vLWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGhpZGUtYXBwZWFyYW5jZSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcclxuICAtby1hcHBlYXJhbmNlOiBub25lO1xyXG4gIGFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbkBtaXhpbiBib3JkZXJBcnJvdygkcDogZG93biwgJHNpemU6IDVweCwgJGNvbG9yOiAjMDAwKSB7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG5cclxuICBAaWYgKCRwPT1sZWZ0KSB7XHJcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAoJHA9PXJpZ2h0KSB7XHJcbiAgICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICgkcD09ZG93bikge1xyXG4gICAgYm9yZGVyLWxlZnQ6ICRzaXplIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci10b3A6ICRzaXplIHNvbGlkICRjb2xvcjtcclxuICB9IEBlbHNlIHtcclxuICAgIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlci1yaWdodDogJHNpemUgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBAbWl4aW4gc2Nyb2xsLWJhcigkc2l6ZS13OiAwLjVyZW0sICRzaXplLWgsICRicjogI2YxZjFmMSwgJGxpbmU6ICMwMDApIHtcclxuLy8gICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuLy8gICAgICAgICB3aWR0aDogJHNpemUtdztcclxuLy8gICAgICAgICBoZWlnaHQ6ICRzaXplLWg7XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgLyogVHJhY2sgKi9cclxuLy8gICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuLy8gICAgICAgICBiYWNrZ3JvdW5kOiAkYnI7XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgLyogSGFuZGxlICovXHJcbi8vICAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbi8vICAgICAgICAgYmFja2dyb3VuZDogJGxpbmU7XHJcbi8vICAgICB9XHJcbi8vIH1cclxuXHJcbkBtaXhpbiBwc2V1ZG8oKSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbkBtaXhpbiBob3Zlci1nbG9iYWwge1xyXG4gIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGNpcmNsZSgkY2lyY2xlOiAxMDAlKSB7XHJcbiAgd2lkdGg6ICRjaXJjbGU7XHJcbiAgaGVpZ2h0OiAkY2lyY2xlO1xyXG4gIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxufVxyXG5cclxuQG1peGluIHNxcigkdzogMTAwJSwgJGg6IDEwMCUpIHtcclxuICB3aWR0aDogJHc7XHJcbiAgaGVpZ2h0OiAkaDtcclxufVxyXG5cclxuQG1peGluIHJlc2V0LWlucHV0IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB3aWR0aDogMTAwJTtcclxuICBAaW5jbHVkZSBmb250LXByaSgpO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1nYXAoJGdhcDogMS4ycmVtKSB7XHJcbiAgQGluY2x1ZGUgZmxleC13cjtcclxuICBnYXA6ICRnYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWdhcC1pdGVtKCR3OiAxMDAlLCAkZ2FwOiAxLjJyZW0pIHtcclxuICB3aWR0aDogY2FsYygkdyAtICRnYXApO1xyXG59XHJcblxyXG5AbWl4aW4gdHh0LWxuIHtcclxuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gIHRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbkBtaXhpbiBpdGVtLXNocmluaygkc2l6ZSkge1xyXG4gIHdpZHRoOiAkc2l6ZTtcclxuICBoZWlnaHQ6ICRzaXplO1xyXG4gIGZsZXgtc2hyaW5rOiAwO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG5cclxuQG1peGluIG1iLWxpc3Qge1xyXG4gIEBpbmNsdWRlIG1heCgkbW9iaWxlKSB7XHJcbiAgICBtYXJnaW46IDAgLTAuNHJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IC0wLjhyZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWItaXRlbSB7XHJcbiAgQGluY2x1ZGUgbWF4KCRtb2JpbGUpIHtcclxuICAgIHBhZGRpbmc6IDAgMC40cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJyLXVuZGVyKCRjb2xvcjogJGNvbG9yLXByaSwgJGluZGV4OiAtMikge1xyXG4gIEBpbmNsdWRlIHBzZXVkbygpO1xyXG4gIEBpbmNsdWRlIGZ1bGw7XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yO1xyXG4gIHotaW5kZXg6ICRpbmRleDtcclxufVxyXG5cclxuQG1peGluIGFmZnRlcigkY29sb3I6ICRjb2xvci1wcmkpIHtcclxuICAmOjphZnRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gaG92ZXJBZmZ0ZXIge1xyXG4gIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4ga2V5ZnJhbWVzKCRhbmltYXRpb24tbmFtZSkge1xyXG4gIEAtd2Via2l0LWtleWZyYW1lcyAjeyRhbmltYXRpb24tbmFtZX0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG5cclxuICBALW1vei1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgQC1tcy1rZXlmcmFtZXMgI3skYW5pbWF0aW9uLW5hbWV9IHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgQC1vLWtleWZyYW1lcyAjeyRhbmltYXRpb24tbmFtZX0ge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBhbmltYXRpb24oJHN0cikge1xyXG4gIGFuaW1hdGlvbjogI3skc3RyfTtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogI3skc3RyfTtcclxuICAtbW96LWFuaW1hdGlvbjogI3skc3RyfTtcclxuICAtbXMtYW5pbWF0aW9uOiAjeyRzdHJ9O1xyXG4gIC1vLWFuaW1hdGlvbjogI3skc3RyfTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zZm9ybSgkYXJncykge1xyXG4gIHRyYW5zZm9ybTogJGFyZ3M7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICRhcmdzO1xyXG4gIC1tb3otdHJhbnNmb3JtOiAkYXJncztcclxuICAtbXMtdHJhbnNmb3JtOiAkYXJncztcclxuICAtby10cmFuc2Zvcm06ICRhcmdzO1xyXG59XHJcblxyXG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkYXJncykge1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46ICRhcmdzO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJGFyZ3M7XHJcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkYXJncztcclxuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJGFyZ3M7XHJcbiAgLW8tdHJhbnNmb3JtLW9yaWdpbjogJGFyZ3M7XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCRhcmdzKSB7XHJcbiAgdHJhbnNpdGlvbi1kZWxheTogJGFyZ3M7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkYXJncztcclxuICAtbW96LXRyYW5zaXRpb24tZGVsYXk6ICRhcmdzO1xyXG4gIC1tcy10cmFuc2l0aW9uLWRlbGF5OiAkYXJncztcclxuICAtby10cmFuc2l0aW9uLWRlbGF5OiAkYXJncztcclxufVxyXG5cclxuQG1peGluIGNsaXAtcGF0aCgkc3RyaW5nKSB7XHJcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKCk7XHJcbiAgLXdlYmtpdC1jbGlwLXBhdGg6ICRzdHJpbmc7XHJcbiAgLW1vei1jbGlwLXBhdGg6ICRzdHJpbmc7XHJcbiAgLW1zLWNsaXAtcGF0aDogJHN0cmluZztcclxuICAtby1jbGlwLXBhdGg6ICRzdHJpbmc7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LXByaSgkbmFtZTogXCJETSBTYW5zXCIpIHtcclxuICBmb250LWZhbWlseTogJG5hbWUsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbkBtaXhpbiBmb250LXNlY29uZCgkbmFtZTogXCJMaWJyZSBCYXNrZXJ2aWxsZVwiKSB7XHJcbiAgZm9udC1mYW1pbHk6ICRuYW1lLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG5AbWl4aW4gZ2FwKCRnYXAsICRjb2wpIHtcclxuICB3aWR0aDogY2FsYygxMDAlIC8gJGNvbCAtICgkZ2FwIC0gKCRnYXAgLyAkY29sKSkpO1xyXG59XHJcblxyXG5AbWl4aW4gbWFzaygkdXJsKSB7XHJcbiAgbWFzay1pbWFnZTogJHVybDtcclxuICAtd2Via2l0LW1hc2staW1hZ2U6ICR1cmw7XHJcbiAgLW1vei1tYXNrLWltYWdlOiAkdXJsO1xyXG4gIC1tcy1tYXNrLWltYWdlOiAkdXJsO1xyXG4gIC1vLW1hc2staW1hZ2U6ICR1cmw7XHJcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xyXG4gIC13ZWJraXQtbWFzay1wb3NpdGlvbjogY2VudGVyO1xyXG4gIC13ZWJraXQtbWFzay1zaXplOiBjb3ZlcjtcclxuICAtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgLW1vei1tYXNrLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgLW1vei1tYXNrLXNpemU6IGNvdmVyO1xyXG4gIC1tb3otbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAtbXMtbWFzay1wb3NpdGlvbjogY2VudGVyO1xyXG4gIC1tcy1tYXNrLXNpemU6IGNvdmVyO1xyXG4gIC1tcy1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIC1vLW1hc2stcG9zaXRpb246IGNlbnRlcjtcclxuICAtby1tYXNrLXNpemU6IGNvdmVyO1xyXG4gIC1vLW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuIiwiQGltcG9ydCB1cmwoXCIuLi9hc3NldHMvZm9udC9ETVNhbnMvc3R5bGVzaGVldC5jc3NcIik7XHJcbkBpbXBvcnQgdXJsKFwiLi4vYXNzZXRzL2ZvbnQvTGlicmUvc3R5bGVzaGVldC5jc3NcIik7XHJcblxyXG4qIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5odG1sIHtcclxuICBmb250LXNpemU6IDYyLjUlO1xyXG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMDAwcHgpIHtcclxuICAgIGZvbnQtc2l6ZTogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIjtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTU7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICBvdmVyZmxvdzogaGlkZGVuIGF1dG87XHJcblxyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIwMDBweCkge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuYSB7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG59XHJcblxyXG5idXR0b24sXHJcbnNlbGVjdCB7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgQGluY2x1ZGUgZm9udC1wcmk7XHJcbn1cclxuXHJcbmJ1dHRvbiB7XHJcbiAgcGFkZGluZzogMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuaW5wdXQsXHJcbnRleHRhcmVhIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgQGluY2x1ZGUgZm9udC1wcmk7XHJcbn1cclxuXHJcbi5tYWluIHtcclxuICBtaW4taGVpZ2h0OiA2OHZoO1xyXG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLWhkKTtcclxufVxyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAxMjNyZW07XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIHBhZGRpbmc6IDAgMS41cmVtO1xyXG59XHJcblxyXG4ub3ZlciB7XHJcbiAgb3ZlcmZsb3cteDogYXV0bztcclxuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcclxuXHJcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5uby1zY3JvbGwge1xyXG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogbm9uZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XHJcbn1cclxuXHJcbmlmcmFtZSB7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLmxvYWQtaXRlbSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnNob3ctaGlkZS10b2dnbGUge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuaW1nIHtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5nbG9iYWwtdGl0bGUge1xyXG4gIG1heC13aWR0aDogMDtcclxuICBtYXgtaGVpZ2h0OiAwO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcbmlucHV0Ojotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogRmlyZWZveCAqL1xyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcclxufVxyXG4iLCIucm93IHtcclxuICAgIC0tY2c6IDIuNHJlbTtcclxuICAgIC0tcmc6IDIuNHJlbTtcclxuICAgIEBpbmNsdWRlIGZsZXgtd3I7XHJcbiAgICBtYXJnaW46IDAgY2FsYyh2YXIoLS1jZykgLyAyICogLTEpIGNhbGModmFyKC0tcmcpICogLTEpO1xyXG59XHJcblxyXG4ucm93cyB7XHJcbiAgICAtLWNnOiAyLjRyZW07XHJcbiAgICAtLXJnOiAyLjRyZW07XHJcbiAgICBtYXJnaW46IDAgY2FsYyh2YXIoLS1jZykgLyAyICogLTEpO1xyXG59XHJcblxyXG4uY29sIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCBjYWxjKHZhcigtLWNnKSAvIDIpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcmcpO1xyXG5cclxuICAgICYtMTEge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDExLzEyICogMTAwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0xMCB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAvMTIgKiAxMDAlKTtcclxuICAgIH1cclxuXHJcbiAgICAmLTkge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDkvMTIgKiAxMDAlKTtcclxuICAgIH1cclxuXHJcbiAgICAmLTgge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDgvMTIgKiAxMDAlKTtcclxuICAgIH1cclxuXHJcbiAgICAmLTcge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDcvMTIgKiAxMDAlKTtcclxuICAgIH1cclxuXHJcbiAgICAmLTYge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi01IHtcclxuICAgICAgICB3aWR0aDogY2FsYyg1LzEyICogMTAwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi00IHtcclxuICAgICAgICB3aWR0aDogY2FsYyg0LzEyICogMTAwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0zIHtcclxuICAgICAgICB3aWR0aDogY2FsYygzLzEyICogMTAwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0yIHtcclxuICAgICAgICB3aWR0aDogY2FsYygyLzEyICogMTAwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0xIHtcclxuICAgICAgICB3aWR0aDogY2FsYygxLzEyICogMTAwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi01aSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDUpO1xyXG4gICAgfVxyXG5cclxuICAgICYtNGkge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTtcclxuICAgIH1cclxufSIsIkBpbmNsdWRlIGtleWZyYW1lcyhwaG9uZVJpbmcpIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKSBza2V3KDFkZWcpO1xyXG4gICAgfVxyXG4gICAgMTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjVkZWcpIHNjYWxlKDEpIHNrZXcoMWRlZyk7XHJcbiAgICB9XHJcbiAgICAyMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI1ZGVnKSBzY2FsZSgxKSBza2V3KDFkZWcpO1xyXG4gICAgfVxyXG4gICAgMzAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjVkZWcpIHNjYWxlKDEpIHNrZXcoMWRlZyk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI1ZGVnKSBzY2FsZSgxKSBza2V3KDFkZWcpO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKSBza2V3KDFkZWcpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCkgc2NhbGUoMSkgc2tldygxZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gcGhvbmUgcmluZyAtIGVuZFxyXG5AaW5jbHVkZSBrZXlmcmFtZXMoZmFkZUluKSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyhzaGluZSkge1xyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgbGVmdDogMTI1JTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKFpvb21Jbikge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKFNwaW5uZXIpIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyhCVFQpIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgMzMlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgNjYlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKGZhZGVJblVwKSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAlLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyhoYWxvKSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxKTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKGZsb2F0KSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KDBweCk7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgtMjBweCk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXkoMHB4KTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKG1pcnJvcikge1xyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwJSwgMCwgMCkgcm90YXRlKDM1ZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKERvd25VcCkge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRleSgwcHgpO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZXkoLTEwcHgpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGV5KDBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyhqZWxseSkge1xyXG4gICAgMjUlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSwgMS4xKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEsIDAuOSk7XHJcbiAgICB9XHJcbiAgICA3NSUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSwgMS4wNSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyhqZWxseVRyYW5Gb3JtKSB7XHJcbiAgICAyNSUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuOSwgMS4xKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMS4xLCAwLjkpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwLjk1LCAxLjA1KTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKGppdHRlcnkpIHtcclxuICAgIDUlLFxyXG4gICAgNTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG4gICAgMTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XHJcbiAgICB9XHJcbiAgICAxNSUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbiAgICB9XHJcbiAgICAyMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSkgcm90YXRlKC01ZGVnKTtcclxuICAgIH1cclxuICAgIDI1JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSByb3RhdGUoNWRlZyk7XHJcbiAgICB9XHJcbiAgICAzMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSkgcm90YXRlKC0zZGVnKTtcclxuICAgIH1cclxuICAgIDM1JSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KSByb3RhdGUoMmRlZyk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSkgcm90YXRlKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBrZXlmcmFtZXMocHVsc2UpIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG4gICAgNzAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyhncm93KSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDFcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSwgMS41KTtcclxuICAgICAgICBvcGFjaXR5OiAwXHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGtleWZyYW1lcyh0eHQtZm9jdXMpIHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LWZpbHRlcjogYmx1cigxMnB4KTtcclxuICAgICAgICBmaWx0ZXI6IGJsdXIoMTJweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDBweCk7XHJcbiAgICAgICAgZmlsdGVyOiBibHVyKDBweCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUga2V5ZnJhbWVzKE1hc2tQbGF5KSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LW1hc2stcG9zaXRpb246IDAgMDtcclxuICAgICAgICBtYXNrLXBvc2l0aW9uOiAwIDBcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LW1hc2stcG9zaXRpb246IDEwMCUgMDtcclxuICAgICAgICBtYXNrLXBvc2l0aW9uOiAxMDAlIDBcclxuICAgIH1cclxufSIsIi5iYWNrLXRvLXRvcCB7XHJcbiAgICB3aWR0aDogNHJlbTtcclxuICAgIGhlaWdodDogNHJlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICBib3gtc2hhZG93OiByZ2JhKDE0OSwgMTU3LCAxNjUsIDAuMikgMHB4IDhweCAyNHB4O1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiA2cmVtO1xyXG4gICAgcmlnaHQ6IDNyZW07XHJcbiAgICB6LWluZGV4OiA3O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDNyZW0pO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IDAuNXMgbGluZWFyO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgcmlnaHQ6IDEuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAudHJpYW5nbGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIGJvcmRlcjogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC02cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogQlRUIDEuNXMgbGluZWFyIDAuNnMgaW5maW5pdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogQlRUIDEuNXMgbGluZWFyIDAuM3MgaW5maW5pdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogQlRUIDEuNXMgbGluZWFyIDBzIGluZmluaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMXB4KSB7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGMteWVsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIltkYXRhLWFvcz1cImZhZGUtdXAtY3VzXCJdIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDRyZW0pO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgICYuYW9zLWFuaW1hdGUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbltkYXRhLWFvcz1cImZhZGUtZG93bi1jdXNcIl0ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTRyZW0pO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgICYuYW9zLWFuaW1hdGUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbltkYXRhLWFvcz1cImZhZGUtbGVmdC1jdXNcIl0ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNHJlbSwgMCk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xyXG4gICAgJi5hb3MtYW5pbWF0ZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuW2RhdGEtYW9zPVwiZmFkZS1yaWdodC1jdXNcIl0ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTRyZW0sIDApO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcclxuICAgICYuYW9zLWFuaW1hdGUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn0iLCIuaGQtbmF2IHtcclxuICBtYXJnaW4tcmlnaHQ6IDEuMnJlbTtcclxuICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAubWVudSB7XHJcbiAgICAmLW5hdiB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgID4gLm1lbnUtbGlzdCB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBtYXJnaW46IDAgLTFyZW07XHJcbiAgICAgICAgPiAubWVudS1pdGVtIHtcclxuICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgID4gLm1lbnUtbGlzdCB7XHJcbiAgICAgICAgICAgICAgbGVmdDogaW5pdGlhbDtcclxuICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwb3NpLWhvcml6b250YWw7XHJcbiAgICAgICAgICAgIGhlaWdodDogMC4ycmVtO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHJlbTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvblJlO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXI6bm90KC5kcm9wZG93biksXHJcbiAgICAgICAgICAmOmhhcyguY3VycmVudC1tZW51LWl0ZW0pIHtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICA+IC5tZW51LWxpbmsge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtLFxyXG4gICAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSxcclxuICAgICAgICAgICYuY3VycmVudF9wYWdlX3BhcmVudCxcclxuICAgICAgICAgICYuY3VycmVudC1tZW51LXBhcmVudCxcclxuICAgICAgICAgICYuY3VycmVudC1wb3N0LXBhcmVudCB7XHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgID4gLm1lbnUtbGlzdCB7XHJcbiAgICAgICAgICAgIHRvcDogY2FsYygxMDAlICsgMXJlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1saXN0IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4ycywgZWFzZS1pbi1vdXQpO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgPiAubWVudS1saXN0IHtcclxuICAgICAgICAgIEBpbmNsdWRlIHNob3c7XHJcblxyXG4gICAgICAgICAgPiAubWVudS1pdGVtIHtcclxuICAgICAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSxcclxuICAgICAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSB7XHJcbiAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAubWVudS1saW5rLFxyXG4gICAgICBhIHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMsIGVhc2UtaW4tb3V0KTtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuMnMsIGVhc2UtaW4tb3V0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4gLm1lbnUtbGluayxcclxuICAgICAgPiBhIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XHJcblxyXG4gICAgICAgID4gaSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjRyZW07XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmRyb3Bkb3duIHtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgPiAubWVudS1saXN0IHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyNXJlbTtcclxuICAgICAgICBtYXgtd2lkdGg6IDI4cmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggMjBweCAyNHB4IC00cHggcmdiYSgxNiwgMjQsIDQwLCAwLjA4KSxcclxuICAgICAgICAgIDBweCA4cHggOHB4IC00cHggcmdiYSgxNiwgMjQsIDQwLCAwLjAzKTtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uUmU7XHJcbiAgICAgICAgQGluY2x1ZGUgaGlkZGVuKDAsIC01cHgpO1xyXG5cclxuICAgICAgICA+IC5tZW51LWl0ZW0ge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiAubWVudS1saW5rLFxyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG5cclxuICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgLy8gY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgID4gLm1lbnUtbGluayxcclxuICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjZyZW07XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkbztcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBwb3NpLWhvcml6b250YWw7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAgICAgICB3aWR0aDogMC4ycmVtO1xyXG4gICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSg1cHgsIDApO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuOHJlbTtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICA+IC5tZW51LWxpc3Qge1xyXG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1vYmlsZS1uYXYge1xyXG4gIC5tZW51IHtcclxuICAgICYtbmF2IHtcclxuICAgICAgPiAubWVudS1saXN0IHtcclxuICAgICAgICA+IC5tZW51LWl0ZW0ge1xyXG4gICAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSxcclxuICAgICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0sXHJcbiAgICAgICAgICAmLmN1cnJlbnRfcGFnZV9wYXJlbnQsXHJcbiAgICAgICAgICAmLmN1cnJlbnQtbWVudS1wYXJlbnQsXHJcbiAgICAgICAgICAmLmN1cnJlbnQtcG9zdC1wYXJlbnQge1xyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM3JlbTtcclxuXHJcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAmOmhhcyguY3VycmVudC1tZW51LWl0ZW0pIHtcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMnJlbTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogIzMwMzAzMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItYm9yZGVyLTAxO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICAmLmRyb3Bkb3duIHtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICB3aWR0aDogMnJlbTtcclxuICAgICAgICAgIGhlaWdodDogMnJlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25SZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAvLyBwYWRkaW5nOiAxLjJyZW0gMS4ycmVtIDEuMnJlbSAyLjRyZW07XHJcbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGV4dDtcclxuICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgID4gLm1lbnUtbGlzdCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMS42cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDJyZW07XHJcbiAgICAgICAgICBib3R0b206IDJyZW07XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ib3JkZXItMDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC5tZW51LWl0ZW0ge1xyXG4gICAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSxcclxuICAgICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJjpoYXMoLmN1cnJlbnQtbWVudS1pdGVtKSB7XHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICB3aWR0aDogMC41cmVtO1xyXG59XHJcblxyXG5cclxuLyogVHJhY2sgKi9cclxuXHJcbjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcclxufVxyXG5cclxuXHJcbi8qIEhhbmRsZSAqL1xyXG5cclxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpO1xyXG59XHJcblxyXG5cclxuLyogSGFuZGxlIG9uIGhvdmVyICovXHJcblxyXG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1wcmk7XHJcbn0iLCIuaGQge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB3aWR0aDogMTAwJTtcclxuICB0b3A6IDA7XHJcbiAgaGVpZ2h0OiB2YXIoLS1zaXplLWhkKTtcclxuICBib3gtc2hhZG93OiAwcHggMC40cmVtIDAuOHJlbSAwcHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gIHotaW5kZXg6IDIwO1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgJi5zdGlja3kge1xyXG4gICAgLS1zaXplLWhkOiA2cmVtO1xyXG4gICAgLmN1c3RvbS1sb2dvLWxpbmsge1xyXG4gICAgICB3aWR0aDogMTJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaG9tZSB7XHJcbiAgICBib3gtc2hhZG93OiB1bnNldDtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgJi5zdGlja3kge1xyXG4gICAgICBib3gtc2hhZG93OiAwcHggMC40cmVtIDAuOHJlbSAwcHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIH1cclxuICB9XHJcbiAgJi13cmFwIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgaGVpZ2h0OiBpbmhlcml0O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgbWFyZ2luOiAwIC0xLjJyZW07XHJcbiAgfVxyXG4gICYtbG9nbyB7XHJcbiAgICBwYWRkaW5nOiAwIDEuMnJlbTtcclxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICAgIC5jdXN0b20tbG9nby1saW5rIHtcclxuICAgICAgd2lkdGg6IDE2cmVtO1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwcmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1zaWRlIHtcclxuICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgZmxleDogMTtcclxuICB9XHJcbiAgJi1vdXQge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgZ2FwOiAycmVtO1xyXG4gIH1cclxuICAmLWN0ciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMnJlbTtcclxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgZ2FwOiAwLjZyZW07XHJcbiAgICB9XHJcbiAgICAuYnRuIHtcclxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICB3aWR0aDogMy4ycmVtO1xyXG4gICAgICAgIGhlaWdodDogMy4ycmVtO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgLmlubmVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtbGFuZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgIC5oZC1sYW5nLXBvcyB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmLWdyIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZ2FwOiAwLjRyZW07XHJcbiAgICAgIC50LXRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIH1cclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiAxLjZyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAxLjZyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtcG9zIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDEwMCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAudC1saW5rIHtcclxuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcclxuICAgICAgICBjb2xvcjogIzQwM2QzYTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXVzZXIge1xyXG4gICAgd2lkdGg6IDIuNnJlbTtcclxuICAgIGhlaWdodDogMi42cmVtO1xyXG4gICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIC5pY29uLXVzZXIge1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIHdpZHRoOiAzLjJyZW07XHJcbiAgICAgIGhlaWdodDogMy4ycmVtO1xyXG4gICAgICAuaWNvbi11c2VyIHtcclxuICAgICAgICB3aWR0aDogMi42cmVtO1xyXG4gICAgICAgIGhlaWdodDogMi42cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtc2VhcmNoIHtcclxuICAgIHdpZHRoOiAyLjZyZW07XHJcbiAgICBoZWlnaHQ6IDIuNnJlbTtcclxuICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgd2lkdGg6IDMuMnJlbTtcclxuICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgIC5pY29uLXNlYXJjaCB7XHJcbiAgICAgICAgd2lkdGg6IDIuNnJlbTtcclxuICAgICAgICBoZWlnaHQ6IDIuNnJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmljb24tc2VhcmNoIHtcclxuICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICB9XHJcbiAgICAmLXdyYXAge1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMxZTFlMWU7XHJcbiAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgICAmLWNsb3NlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDFyZW07XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC4xcmVtO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwLjJyZW0gc29saWQgI2ZmZjtcclxuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG4gICAgJi1mb3JtIHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTIzcmVtO1xyXG4gICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgLnR0LXNlYXJjaCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMHZ3O1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgICAgfVxyXG4gICAgICBmb3JtIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1vdmVyIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxuICAgICYtaXAge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBpbnB1dCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyOiB1bnNldDtcclxuICAgICAgICBvdXRsaW5lOiB1bnNldDtcclxuICAgICAgICBoZWlnaHQ6IDZyZW07XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgY29sb3I6ICM4Yzg3ODI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJ0biB7XHJcbiAgICAgIHdpZHRoOiA2cmVtO1xyXG4gICAgICBoZWlnaHQ6IDZyZW07XHJcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZDtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiA0cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5mdCB7XHJcbiAgYmFja2dyb3VuZDogI2Y3ZjZmNTtcclxuICAmLXJvdyB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg4MzBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtbG9nbyB7XHJcbiAgICAuY3VzdG9tLWxvZ28tbGluayB7XHJcbiAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICB3aWR0aDogMjZyZW07XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXRkZXMge1xyXG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xyXG4gICAgQGluY2x1ZGUgZnotMTM7XHJcbiAgICBjb2xvcjogIzY5NjQ2MDtcclxuICB9XHJcbiAgJi10dCB7XHJcbiAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xyXG4gIH1cclxuICAmLWlnciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgcm93LWdhcDogMi40cmVtO1xyXG4gICAgbWFyZ2luOiAwIC0xLjJyZW07XHJcbiAgfVxyXG4gICYtYm94IHtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcclxuICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtbmF2IHtcclxuICAgIC5tZW51LWxpc3Qge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICByb3ctZ2FwOiAxLjJyZW07XHJcbiAgICAgIC5tZW51LWl0ZW0ge1xyXG4gICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0ge1xyXG4gICAgICAgICAgLm1lbnUtbGluayB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLm1lbnUtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgY29sb3I6ICM0MDNkM2E7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmhkLWJ1cmdlciB7XHJcbiAgcGFkZGluZzogMXJlbSAxLjJyZW07XHJcbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbiAgJi5hY3RpdmUgLmxpbmU6bnRoLWNoaWxkKDEpIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjNyZW0sIDApIHJvdGF0ZSg0NWRlZykgIWltcG9ydGFudDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC4zcmVtLCAwKSByb3RhdGUoNDVkZWcpICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAmLmFjdGl2ZSAubGluZTpudGgtY2hpbGQoMikge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjRyZW0sIDApIHJvdGF0ZSgxMzVkZWcpICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjRyZW0sIDApIHJvdGF0ZSgxMzVkZWcpICFpbXBvcnRhbnQ7XHJcbiAgICB3aWR0aDogMi40cmVtO1xyXG4gIH1cclxuXHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uYnVyZ2VyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5oYW1idXJnZXIgLmxpbmUge1xyXG4gIHdpZHRoOiAyLjRyZW07XHJcbiAgaGVpZ2h0OiAwLjJyZW07XHJcbiAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiAwLjVyZW0gMDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcclxuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xyXG5cclxuICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICB3aWR0aDogMS44cmVtO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgfVxyXG59XHJcbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi5tb2JpbGUge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB6LWluZGV4OiAxNDA7XHJcbiAgdG9wOiB2YXIoLS1zaXplLWhkKTtcclxuICBsZWZ0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICBtaW4td2lkdGg6IDUwcmVtO1xyXG4gIHdpZHRoOiA1MHJlbTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICBib3gtc2hhZG93OiAwcHggMTBweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjRzLCBsaW5lYXIpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTEwJSk7XHJcblxyXG4gIEBpbmNsdWRlIG1heCgkbW9iaWxlKSB7XHJcbiAgICB3aWR0aDogNzAlO1xyXG4gICAgbWluLXdpZHRoOiBpbml0aWFsO1xyXG4gIH1cclxuXHJcbiAgJi5zdGlja3kge1xyXG4gICAgdG9wOiB2YXIoLS1zaXplLWhkKTtcclxuICB9XHJcblxyXG4gICYub3BlbiB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtaW4oJHJlcy1tb2JpbGUtbWluKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJi1jb24ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgfVxyXG5cclxuICAmLWhlYWRpbmcge1xyXG4gICAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICAmLW92ZXJsYXkge1xyXG4gICAgQGluY2x1ZGUgZnVsbC1maXhlZDtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC42cywgZWFzZSk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMTAlKTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItYm9yZGVyLTAxO1xyXG4gICAgdG9wOiB2YXIoLS1zaXplLWhkKTtcclxuXHJcbiAgICAmLnN0aWNreSB7XHJcbiAgICAgIHRvcDogdmFyKC0tc2l6ZS1oZCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5vcGVuIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1pbigkcmVzLW1vYmlsZS1taW4pIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtd3Ige1xyXG4gICAgcGFkZGluZy1ib3R0b206IDZyZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAmLWxpc3Qge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICB9XHJcblxyXG4gICYtY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiAyLjRyZW0gMS42cmVtO1xyXG4gIH1cclxuXHJcbiAgJi10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gIH1cclxuXHJcbiAgJi1teGgge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA0cmVtO1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWJvcmRlci0wMTtcclxuXHJcbiAgICAmLWxpbmsge1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgZmxleDogMTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3ItYm9yZGVyLTAxO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAyLjRyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBmei0xNDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuXHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLWFjY291bnQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxcmVtO1xyXG4gICAgbGVmdDogMXJlbTtcclxuICB9XHJcblxyXG4gICYtcmUge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJi1saW5rIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLWNsb3NlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMXJlbTtcclxuICAgIHJpZ2h0OiAxcmVtO1xyXG4gICAgd2lkdGg6IDMuNXJlbTtcclxuICAgIGhlaWdodDogMy41cmVtO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXByaTtcclxuICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcblxyXG4gICAgJjpob3ZlciAuaWNvbiB7XHJcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICBmb250LXNpemU6IDEuOHJlbTtcclxuICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtbGFuZyB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMS4ycmVtO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgcGFkZGluZzogMS4ycmVtO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIC50LXRleHQge1xyXG4gICAgICBjb2xvcjogIzMwMzAzMDtcclxuICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcbiAgICAuaWdyIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZ2FwOiAwLjZyZW07XHJcbiAgICAgIC50LWxpbmsge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1mbCB7XHJcbiAgICAuZnctNiB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZS10ZXh0IHtcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuZG90IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNlbGVjdDItY29udGFpbmVyIHtcclxuICAgIGhlaWdodDogNC44cmVtO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbn1cclxuXHJcbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zZWxlY3Rpb24ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgaGVpZ2h0OiA0LjhyZW07XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICRjb2xvci1ib3JkZXItMDE7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWluLWhlaWdodDogMzRweDtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcclxuICAgIEBpbmNsdWRlIGxjKDEpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5zZWxlY3QyLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDAgNHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxLjRyZW07XHJcbn1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoIGlucHV0IHtcclxuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDRweCA2cHggIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbn1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biAuc2VsZWN0Mi1yZXN1bHRzIHVsIHtcclxuICAgIGJhY2tncm91bmQ6ICNlNmVlZWQ7XHJcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG59XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24gLnNlbGVjdDItcmVzdWx0cyB1bCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkW2FyaWEtc2VsZWN0ZWRdIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0ZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZWVlZDtcclxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxufVxyXG5cclxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4uc2VsZWN0Mi1zZWFyY2guc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcclxuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xyXG59XHJcblxyXG4uc2VsZWN0Mi1yZXN1bHRzIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xyXG59XHJcblxyXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbn1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC0xLjJyZW07XHJcbn1cclxuXHJcbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biAuc2VsZWN0Mi1yZXN1bHRzIHVsIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xyXG4gICAgZm9udC1zaXplOiAxLjZyZW07XHJcbn0iLCIuZWZmZWN0U2hpbmUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmVmZmVjdFNoaW5lOjpiZWZvcmUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogLTc1JTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjMpIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4zKSAxMDAlKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMjVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMjVkZWcpO1xyXG59XHJcblxyXG4uZWZmZWN0U2hpbmU6aG92ZXI6OmJlZm9yZSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc2hpbmUgMXM7XHJcbiAgICBhbmltYXRpb246IHNoaW5lIDFzO1xyXG59IiwiLnNsIHtcclxuICAgICYtY3VzIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgJi5taW4ge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDEycmVtO1xyXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWhlYWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XHJcbiAgICAgICAgaGVpZ2h0OiA0cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB0b3A6IDEzcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJGNvbG9yLXNlY29uZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xyXG4gICAgICAgICAgICBib3R0b206IDEuM3JlbTtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYtbWFpbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxuICAgICAgICBAaW5jbHVkZSBsYygxKTtcclxuICAgIH1cclxuICAgICYtbGlzdCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDEwO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNnB4IDZweDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAyMHJlbTtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgJi1pdGVtIHtcclxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnBvcHVwIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgQGluY2x1ZGUgZnVsbDtcclxuICB6LWluZGV4OiA5OTk7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAmLnBvcHVwLW5vdGkge1xyXG4gICAgLnBvcHVwLW1haW4ge1xyXG4gICAgICB3aWR0aDogNTVyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgIH1cclxuICAgIC5wb3B1cC13cmFwcGVyIHtcclxuICAgICAgcGFkZGluZzogNHJlbTtcclxuICAgICAgbWluLWhlaWdodDogdW5zZXQ7XHJcbiAgICB9XHJcbiAgICAucG9wdXAtb3ZlciB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgfVxyXG4gICAgLnBvcHVwLW92ZXJsYXkge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDE4LCAxNywgMTYsIDAuNCk7XHJcbiAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigwLjdyZW0pO1xyXG4gICAgfVxyXG4gICAgLmhlYWQtZ3Ige1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjhyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgfVxyXG4gICAgICAudC10eHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pZ3Ige1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBnYXA6IDAuNnJlbTtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgQGluY2x1ZGUgbWF4KDYwMHB4KSB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLm9wZW4ge1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC5wb3B1cC1vdmVybGF5IHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3B1cC1tYWluIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzLCBlYXNlLWluLW91dCwgMC4xcyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3I6ICRjb2xvci1ibGFjaywgJGFscGhhOiAwLjgpO1xyXG4gICAgQGluY2x1ZGUgZnVsbDtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uUmU7XHJcbiAgICAvLyBvcGFjaXR5OiAwO1xyXG4gICAgLy8gdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgJi1tYWluIHtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICB3aWR0aDogNzByZW07XHJcbiAgICBtYXgtd2lkdGg6IDk1JTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25SZTtcclxuICAgIEBpbmNsdWRlIG1pZDtcclxuICAgIC8vIG9wYWNpdHk6IDA7XHJcbiAgICAvLyB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAmLXdyYXBwZXIge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLW92ZXIge1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIG1pbi1oZWlnaHQ6IDQwdmg7XHJcbiAgICBtYXgtaGVpZ2h0OiA4MHZoO1xyXG4gIH1cclxuXHJcbiAgJi13cmFwcGVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiA0MHZoO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcGFkZGluZzogNC44cmVtIDJyZW0gMnJlbSAycmVtO1xyXG4gIH1cclxuXHJcbiAgJi10aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gIH1cclxuXHJcbiAgJi1jbG9zZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDEuNnJlbTtcclxuICAgIHJpZ2h0OiAxLjZyZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2UtaW4tb3V0O1xyXG4gICAgd2lkdGg6IDNyZW07XHJcbiAgICBoZWlnaHQ6IDNyZW07XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgei1pbmRleDogMztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNnMsIGVhc2UtaW4tb3V0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtZ2cge1xyXG4gICAgLnBvcHVwIHtcclxuICAgICAgJi13cmFwcGVyIHtcclxuICAgICAgICBwYWRkaW5nOiAyLjRyZW07XHJcbiAgICAgICAgbWF4LWhlaWdodDogODB2aDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgICAgcGFkZGluZzogMS42cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi1tYWluLXdyYXBwZXIge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNnJlbTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDYwMHB4KSB7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLW92ZXIge1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWJvZHkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOHJlbTtcclxuICAgICAgcGFkZGluZy1yaWdodDogMC44cmVtO1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG5cclxuICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgIHdpZHRoOiAwLjJyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiIiwiLmRhdGVUaW1lIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgaGVpZ2h0OiA1LjZyZW07XHJcbiAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xyXG4gIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgei1pbmRleDogMjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgLmljb24ge1xyXG4gICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICB3aWR0aDogMS42cmVtO1xyXG4gICAgaGVpZ2h0OiAxLjZyZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDIuNHJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5kYXRlVGltZUl0ZW0ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBAaW5jbHVkZSBmdWxsO1xyXG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi5kYXRlVGltZVRleHQge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBAaW5jbHVkZSBmdWxsO1xyXG4gIHBhZGRpbmc6IDAgMi40cmVtO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICB6LWluZGV4OiAyO1xyXG4gIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAmLmRpc2FibGUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICB9XHJcbn1cclxuXHJcbi5kYXRlVGltZUlucHV0IHtcclxuICBwYWRkaW5nOiAwLjhyZW0gMi40cmVtO1xyXG4gIEBpbmNsdWRlIHJlc2V0LWlucHV0O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBAaW5jbHVkZSBmdWxsO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgQGluY2x1ZGUgZm9udC1wcmk7XHJcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcclxufVxyXG4iLCJALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHtcclxuICAgIGZyb20sXHJcbiAgICAyMCUsXHJcbiAgICA1MyUsXHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIDQwJSxcclxuICAgIDQzJSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApIHNjYWxlWSgxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApIHNjYWxlWSgxLjEpO1xyXG4gICAgfVxyXG4gICAgNzAlIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCkgc2NhbGVZKDEuMDUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApIHNjYWxlWSgxLjA1KTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICB9XHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlIHtcclxuICAgIGZyb20sXHJcbiAgICAyMCUsXHJcbiAgICA1MyUsXHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIDQwJSxcclxuICAgIDQzJSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApIHNjYWxlWSgxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApIHNjYWxlWSgxLjEpO1xyXG4gICAgfVxyXG4gICAgNzAlIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCkgc2NhbGVZKDEuMDUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApIHNjYWxlWSgxLjA1KTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICB9XHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKSBzY2FsZVkoMS4wMik7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19ib3VuY2Uge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmbGFzaCB7XHJcbiAgICBmcm9tLFxyXG4gICAgNTAlLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAyNSUsXHJcbiAgICA3NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxhc2gge1xyXG4gICAgZnJvbSxcclxuICAgIDUwJSxcclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgMjUlLFxyXG4gICAgNzUlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmxhc2gge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxhc2g7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxhc2g7XHJcbn1cclxuXHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBwdWxzZSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcHVsc2Uge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fcHVsc2Uge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcHVsc2U7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBydWJiZXJCYW5kIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIH1cclxuICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xyXG4gICAgfVxyXG4gICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICAgIH1cclxuICAgIDY1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMC45NSwgMSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgfVxyXG4gICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xyXG4gICAgfVxyXG4gICAgNjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45NSwgMS4wNSwgMSk7XHJcbiAgICB9XHJcbiAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19ydWJiZXJCYW5kIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlWCB7XHJcbiAgICBmcm9tLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgMTAlLFxyXG4gICAgMzAlLFxyXG4gICAgNTAlLFxyXG4gICAgNzAlLFxyXG4gICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgMjAlLFxyXG4gICAgNDAlLFxyXG4gICAgNjAlLFxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZVgge1xyXG4gICAgZnJvbSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIDEwJSxcclxuICAgIDMwJSxcclxuICAgIDUwJSxcclxuICAgIDcwJSxcclxuICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgIH1cclxuICAgIDIwJSxcclxuICAgIDQwJSxcclxuICAgIDYwJSxcclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19zaGFrZVgge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2VYO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlWDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlWSB7XHJcbiAgICBmcm9tLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgMTAlLFxyXG4gICAgMzAlLFxyXG4gICAgNTAlLFxyXG4gICAgNzAlLFxyXG4gICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgfVxyXG4gICAgMjAlLFxyXG4gICAgNDAlLFxyXG4gICAgNjAlLFxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZVkge1xyXG4gICAgZnJvbSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIDEwJSxcclxuICAgIDMwJSxcclxuICAgIDUwJSxcclxuICAgIDcwJSxcclxuICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgIH1cclxuICAgIDIwJSxcclxuICAgIDQwJSxcclxuICAgIDYwJSxcclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19zaGFrZVkge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2VZO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlWTtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGhlYWRTaGFrZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG4gICAgNi41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xyXG4gICAgfVxyXG4gICAgMTguNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xyXG4gICAgfVxyXG4gICAgMzEuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcclxuICAgIH1cclxuICAgIDQzLjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGhlYWRTaGFrZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG4gICAgNi41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpO1xyXG4gICAgfVxyXG4gICAgMTguNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xyXG4gICAgfVxyXG4gICAgMzEuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zcHgpIHJvdGF0ZVkoLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcclxuICAgIH1cclxuICAgIDQzLjUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9faGVhZFNoYWtlIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGhlYWRTaGFrZTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZyB7XHJcbiAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgICB9XHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3dpbmcge1xyXG4gICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpO1xyXG4gICAgfVxyXG4gICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XHJcbiAgICB9XHJcbiAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fc3dpbmcge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgdGFkYSB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB9XHJcbiAgICAxMCUsXHJcbiAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgfVxyXG4gICAgMzAlLFxyXG4gICAgNTAlLFxyXG4gICAgNzAlLFxyXG4gICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICB9XHJcbiAgICA0MCUsXHJcbiAgICA2MCUsXHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB0YWRhIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIH1cclxuICAgIDEwJSxcclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICB9XHJcbiAgICAzMCUsXHJcbiAgICA1MCUsXHJcbiAgICA3MCUsXHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgIH1cclxuICAgIDQwJSxcclxuICAgIDYwJSxcclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fdGFkYSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB0YWRhO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7XHJcbn1cclxuXHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICAxNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICB9XHJcbiAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgIH1cclxuICAgIDQ1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB3b2JibGUge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICAxNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICB9XHJcbiAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcclxuICAgIH1cclxuICAgIDQ1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3dvYmJsZSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB3b2JibGU7XHJcbiAgICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8ge1xyXG4gICAgZnJvbSxcclxuICAgIDExLjElLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgMjIuMiUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcclxuICAgIH1cclxuICAgIDMzLjMlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcclxuICAgIH1cclxuICAgIDQ0LjQlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gICAgfVxyXG4gICAgNTUuNSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICB9XHJcbiAgICA2Ni42JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xyXG4gICAgfVxyXG4gICAgNzcuNyUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICAgIH1cclxuICAgIDg4LjglIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBqZWxsbyB7XHJcbiAgICBmcm9tLFxyXG4gICAgMTEuMSUsXHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICAyMi4yJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgfVxyXG4gICAgMzMuMyUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gICAgfVxyXG4gICAgNDQuNCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7XHJcbiAgICB9XHJcbiAgICA1NS41JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgIH1cclxuICAgIDY2LjYlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XHJcbiAgICB9XHJcbiAgICA3Ny43JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xyXG4gICAgfVxyXG4gICAgODguOCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9famVsbG8ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogamVsbG87XHJcbiAgICBhbmltYXRpb24tbmFtZTogamVsbG87XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGhlYXJ0QmVhdCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgICAxNCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcclxuICAgIH1cclxuICAgIDI4JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbiAgICA0MiUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcclxuICAgIH1cclxuICAgIDcwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgaGVhcnRCZWF0IHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICAgIDE0JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xyXG4gICAgfVxyXG4gICAgMjglIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxuICAgIDQyJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xyXG4gICAgfVxyXG4gICAgNzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2hlYXJ0QmVhdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoZWFydEJlYXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogaGVhcnRCZWF0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGMoMXMgKiAxLjMpO1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKDFzICogMS4zKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMS4zKTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDEuMyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcblxyXG4vKiBCYWNrIGVudHJhbmNlcyAqL1xyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tJbkRvd24ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJhY2tJbkRvd24ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fYmFja0luRG93biB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBiYWNrSW5Eb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tJbkRvd247XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrSW5MZWZ0IHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBiYWNrSW5MZWZ0IHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JhY2tJbkxlZnQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja0luTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBiYWNrSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja0luUmlnaHQge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBiYWNrSW5SaWdodCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fYmFja0luUmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja0luUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYmFja0luUmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrSW5VcCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTIwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJhY2tJblVwIHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyMDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19iYWNrSW5VcCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBiYWNrSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBiYWNrSW5VcDtcclxufVxyXG5cclxuXHJcbi8qIEJhY2sgZXhpdHMgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBiYWNrT3V0RG93biB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBiYWNrT3V0RG93biB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JhY2tPdXREb3duIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXREb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja091dExlZnQge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJhY2tPdXRMZWZ0IHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNztcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JhY2tPdXRMZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRMZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja091dFJpZ2h0IHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYmFja091dFJpZ2h0IHtcclxuICAgIDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19iYWNrT3V0UmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYmFja091dFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRSaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tPdXRVcCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJhY2tPdXRVcCB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fYmFja091dFVwIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJhY2tPdXRVcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBiYWNrT3V0VXA7XHJcbn1cclxuXHJcblxyXG4vKiBCb3VuY2luZyBlbnRyYW5jZXMgICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW4ge1xyXG4gICAgZnJvbSxcclxuICAgIDIwJSxcclxuICAgIDQwJSxcclxuICAgIDYwJSxcclxuICAgIDgwJSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgfVxyXG4gICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgfVxyXG4gICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgICB9XHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VJbiB7XHJcbiAgICBmcm9tLFxyXG4gICAgMjAlLFxyXG4gICAgNDAlLFxyXG4gICAgNjAlLFxyXG4gICAgODAlLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICB9XHJcbiAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XHJcbiAgICB9XHJcbiAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgIH1cclxuICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45NywgMC45NywgMC45Nyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fYm91bmNlSW4ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGMoMXMgKiAwLjc1KTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYygxcyAqIDAuNzUpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xyXG4gICAgZnJvbSxcclxuICAgIDYwJSxcclxuICAgIDc1JSxcclxuICAgIDkwJSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgfVxyXG4gICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKSBzY2FsZVkoMC45KTtcclxuICAgIH1cclxuICAgIDc1JSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTUpO1xyXG4gICAgfVxyXG4gICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XHJcbiAgICBmcm9tLFxyXG4gICAgNjAlLFxyXG4gICAgNzUlLFxyXG4gICAgOTAlLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICB9XHJcbiAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCkgc2NhbGVZKDMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCkgc2NhbGVZKDMpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKSBzY2FsZVkoMC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApIHNjYWxlWSgwLjkpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHNjYWxlWSgwLjk1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICB9XHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApIHNjYWxlWSgwLjk4NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApIHNjYWxlWSgwLjk4NSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19ib3VuY2VJbkRvd24ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XHJcbiAgICBmcm9tLFxyXG4gICAgNjAlLFxyXG4gICAgNzUlLFxyXG4gICAgOTAlLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICB9XHJcbiAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCkgc2NhbGVYKDMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCkgc2NhbGVYKDMpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKSBzY2FsZVgoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKSBzY2FsZVgoMSk7XHJcbiAgICB9XHJcbiAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTtcclxuICAgIH1cclxuICAgIDkwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xyXG4gICAgZnJvbSxcclxuICAgIDYwJSxcclxuICAgIDc1JSxcclxuICAgIDkwJSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgfVxyXG4gICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCkgc2NhbGVYKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCkgc2NhbGVYKDEpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApIHNjYWxlWCgwLjk4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKSBzY2FsZVgoMC45OCk7XHJcbiAgICB9XHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19ib3VuY2VJbkxlZnQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xyXG4gICAgZnJvbSxcclxuICAgIDYwJSxcclxuICAgIDc1JSxcclxuICAgIDkwJSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgfVxyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKSBzY2FsZVgoMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApIHNjYWxlWCgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKSBzY2FsZVgoMSk7XHJcbiAgICB9XHJcbiAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKSBzY2FsZVgoMC45OCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKSBzY2FsZVgoMC45OCk7XHJcbiAgICB9XHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKSBzY2FsZVgoMC45OTUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcclxuICAgIGZyb20sXHJcbiAgICA2MCUsXHJcbiAgICA3NSUsXHJcbiAgICA5MCUsXHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcclxuICAgIH1cclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCkgc2NhbGVYKDMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKSBzY2FsZVgoMyk7XHJcbiAgICB9XHJcbiAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKSBzY2FsZVgoMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCkgc2NhbGVYKDEpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCkgc2NhbGVYKDAuOTgpO1xyXG4gICAgfVxyXG4gICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCkgc2NhbGVYKDAuOTk1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApIHNjYWxlWCgwLjk5NSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19ib3VuY2VJblJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAge1xyXG4gICAgZnJvbSxcclxuICAgIDYwJSxcclxuICAgIDc1JSxcclxuICAgIDkwJSxcclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xyXG4gICAgfVxyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKSBzY2FsZVkoNSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApIHNjYWxlWSg1KTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHNjYWxlWSgwLjkpO1xyXG4gICAgfVxyXG4gICAgNzUlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgc2NhbGVZKDAuOTUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgc2NhbGVZKDAuOTUpO1xyXG4gICAgfVxyXG4gICAgOTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCkgc2NhbGVZKDAuOTg1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApIHNjYWxlWSgwLjk4NSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlSW5VcCB7XHJcbiAgICBmcm9tLFxyXG4gICAgNjAlLFxyXG4gICAgNzUlLFxyXG4gICAgOTAlLFxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XHJcbiAgICB9XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApIHNjYWxlWSg1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCkgc2NhbGVZKDUpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICB9XHJcbiAgICA3NSUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45NSk7XHJcbiAgICB9XHJcbiAgICA5MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCkgc2NhbGVZKDAuOTg1KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JvdW5jZUluVXAge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xyXG59XHJcblxyXG5cclxuLyogQm91bmNpbmcgZXhpdHMgICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0IHtcclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOSwgMC45LCAwLjkpO1xyXG4gICAgfVxyXG4gICAgNTAlLFxyXG4gICAgNTUlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xyXG4gICAgMjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7XHJcbiAgICB9XHJcbiAgICA1MCUsXHJcbiAgICA1NSUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fYm91bmNlT3V0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKDFzICogMC43NSk7XHJcbiAgICBhbmltYXRpb24tZHVyYXRpb246IGNhbGMoMXMgKiAwLjc1KTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7XHJcbiAgICBhbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk4NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgfVxyXG4gICAgNDAlLFxyXG4gICAgNDUlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKSBzY2FsZVkoMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcclxuICAgIDIwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHNjYWxlWSgwLjk4NSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgfVxyXG4gICAgNDAlLFxyXG4gICAgNDUlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgc2NhbGVZKDAuOSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKSBzY2FsZVkoMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JvdW5jZU91dERvd24ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XHJcbiAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApIHNjYWxlWCgwLjkpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkgc2NhbGVYKDIpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCkgc2NhbGVYKDIpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xyXG4gICAgMjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKSBzY2FsZVgoMC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApIHNjYWxlWCgwLjkpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JvdW5jZU91dExlZnQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xyXG4gICAgMjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCkgc2NhbGVYKDAuOSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKSBzY2FsZVgoMik7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XHJcbiAgICAyMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKSBzY2FsZVgoMC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKSBzY2FsZVgoMC45KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApIHNjYWxlWCgyKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCkgc2NhbGVYKDIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fYm91bmNlT3V0UmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRVcCB7XHJcbiAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTg1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgfVxyXG4gICAgNDAlLFxyXG4gICAgNDUlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKSBzY2FsZVkoMC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApIHNjYWxlWSgwLjkpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7XHJcbiAgICAyMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgc2NhbGVZKDAuOTg1KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSBzY2FsZVkoMC45ODUpO1xyXG4gICAgfVxyXG4gICAgNDAlLFxyXG4gICAgNDUlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKSBzY2FsZVkoMC45KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApIHNjYWxlWSgwLjkpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApIHNjYWxlWSgzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2JvdW5jZU91dFVwIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xyXG59XHJcblxyXG5cclxuLyogRmFkaW5nIGVudHJhbmNlcyAgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlSW4ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVJbkRvd24ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlSW5Eb3duQmlnIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVJbkxlZnQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlSW5MZWZ0QmlnIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlSW5SaWdodCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVJblJpZ2h0QmlnIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVJblVwIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZUluVXBCaWcge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Ub3BMZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluVG9wTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZUluVG9wTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Ub3BMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblRvcExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Ub3BSaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5Ub3BSaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVJblRvcFJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblRvcFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblRvcFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluQm90dG9tTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5Cb3R0b21MZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAxMDAlLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZUluQm90dG9tTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Cb3R0b21MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkJvdHRvbUxlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Cb3R0b21SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluQm90dG9tUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAxMDAlLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZUluQm90dG9tUmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluQm90dG9tUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluQm90dG9tUmlnaHQ7XHJcbn1cclxuXHJcblxyXG4vKiBGYWRpbmcgZXhpdHMgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXREb3duIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZU91dERvd25CaWcge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXRMZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXRMZWZ0QmlnIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZU91dFJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXRSaWdodEJpZyB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXRVcCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmFkZU91dFVwQmlnIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VG9wTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgLTEwMCUsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRUb3BMZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAtMTAwJSwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlT3V0VG9wTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VG9wTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VG9wTGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRUb3BSaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0VG9wUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAtMTAwJSwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlT3V0VG9wUmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFRvcFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRUb3BSaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRCb3R0b21SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dEJvdHRvbVJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAxMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZhZGVPdXRCb3R0b21SaWdodCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0Qm90dG9tUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dEJvdHRvbVJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dEJvdHRvbUxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dEJvdHRvbUxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mYWRlT3V0Qm90dG9tTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0Qm90dG9tTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0Qm90dG9tTGVmdDtcclxufVxyXG5cclxuXHJcbi8qIEZsaXBwZXJzICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgfVxyXG4gICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICB9XHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDAuOTUsIDAuOTUsIDAuOTUpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIDBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZsaXAge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDApIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICAgIH1cclxuICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKDEsIDEsIDEpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMSwgMSwgMSkgdHJhbnNsYXRlM2QoMCwgMCwgMCkgcm90YXRlM2QoMCwgMSwgMCwgMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgxLCAxLCAxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKSByb3RhdGUzZCgwLCAxLCAwLCAwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2FuaW1hdGVkLmFuaW1hdGVfX2ZsaXAge1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblgge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxpcEluWCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDQwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICB9XHJcbiAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZsaXBJblgge1xyXG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5ZIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNDAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICA0MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19mbGlwSW5ZIHtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWTtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFgge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgIH1cclxuICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmbGlwT3V0WCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgfVxyXG4gICAgMzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fZmxpcE91dFgge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGMoMXMgKiAwLjc1KTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYygxcyAqIDAuNzUpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDAuNzUpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFg7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XHJcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRZIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB9XHJcbiAgICAzMCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxpcE91dFkge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgIH1cclxuICAgIDMwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2ZsaXBPdXRZIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKDFzICogMC43NSk7XHJcbiAgICBhbmltYXRpb24tZHVyYXRpb246IGNhbGMoMXMgKiAwLjc1KTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiBjYWxjKHZhcigtLWFuaW1hdGUtZHVyYXRpb24pICogMC43NSk7XHJcbiAgICBhbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAwLjc1KTtcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFk7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmxpcE91dFk7XHJcbn1cclxuXHJcblxyXG4vKiBMaWdodHNwZWVkICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBsaWdodFNwZWVkSW5SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fbGlnaHRTcGVlZEluUmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluUmlnaHQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkSW5MZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0yMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goNWRlZyk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbGlnaHRTcGVlZEluTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0yMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICA4MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDVkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fbGlnaHRTcGVlZEluTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW5MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbkxlZnQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0UmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dFJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fbGlnaHRTcGVlZE91dFJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0UmlnaHQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZE91dExlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXRMZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX2xpZ2h0U3BlZWRPdXRMZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXRMZWZ0O1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxufVxyXG5cclxuXHJcbi8qIFJvdGF0aW5nIGVudHJhbmNlcyAqL1xyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb3RhdGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb3RhdGVJbiB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3JvdGF0ZUluRG93bkxlZnQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb3RhdGVJblVwTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fcm90YXRlSW5VcFJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxufVxyXG5cclxuXHJcbi8qIFJvdGF0aW5nIGV4aXRzICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb3RhdGVPdXQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb3RhdGVPdXREb3duTGVmdCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fcm90YXRlT3V0RG93blJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fcm90YXRlT3V0VXBMZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb3RhdGVPdXRVcFJpZ2h0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG59XHJcblxyXG5cclxuLyogU3BlY2lhbHMgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgIDIwJSxcclxuICAgIDYwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgNDAlLFxyXG4gICAgODAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgaGluZ2Uge1xyXG4gICAgMCUge1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICAyMCUsXHJcbiAgICA2MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICAgIDQwJSxcclxuICAgIDgwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9faGluZ2Uge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGMoMXMgKiAyKTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYygxcyAqIDIpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IGNhbGModmFyKC0tYW5pbWF0ZS1kdXJhdGlvbikgKiAyKTtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogY2FsYyh2YXIoLS1hbmltYXRlLWR1cmF0aW9uKSAqIDIpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaGluZ2U7XHJcbiAgICBhbmltYXRpb24tbmFtZTogaGluZ2U7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBqYWNrSW5UaGVCb3gge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcclxuICAgIH1cclxuICAgIDcwJSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGphY2tJblRoZUJveCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xyXG4gICAgfVxyXG4gICAgNzAlIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDNkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19qYWNrSW5UaGVCb3gge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogamFja0luVGhlQm94O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGphY2tJblRoZUJveDtcclxufVxyXG5cclxuXHJcbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb2xsSW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb2xsSW4ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbEluO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcclxufVxyXG5cclxuXHJcbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb2xsT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19yb2xsT3V0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogcm9sbE91dDtcclxufVxyXG5cclxuXHJcbi8qIFpvb21pbmcgZW50cmFuY2VzICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21JbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3pvb21JbiB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW47XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbUluO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluRG93biB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21JbkRvd24ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3pvb21JbkRvd24ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluTGVmdCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21JbkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3pvb21JbkxlZnQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluUmlnaHQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICB9XHJcbiAgICA2MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tSW5SaWdodCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fem9vbUluUmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5VcCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIDYwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21JblVwIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgfVxyXG4gICAgNjAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX196b29tSW5VcCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcclxufVxyXG5cclxuXHJcbi8qIFpvb21pbmcgZXhpdHMgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbiAgICA1MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbU91dCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fem9vbU91dCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7XHJcbiAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tT3V0RG93biB7XHJcbiAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3pvb21PdXREb3duIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcclxuICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbU91dExlZnQge1xyXG4gICAgNDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3pvb21PdXRMZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcclxuICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcclxuICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX196b29tT3V0UmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFVwIHtcclxuICAgIDQwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21PdXRVcCB7XHJcbiAgICA0MCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xyXG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3pvb21PdXRVcCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XHJcbiAgICBhbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxufVxyXG5cclxuXHJcbi8qIFNsaWRpbmcgZW50cmFuY2VzICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3NsaWRlSW5Eb3duIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3NsaWRlSW5MZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hbmltYXRlX19zbGlkZUluUmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5VcCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fc2xpZGVJblVwIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluVXA7XHJcbn1cclxuXHJcblxyXG4vKiBTbGlkaW5nIGV4aXRzICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dERvd24ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fc2xpZGVPdXREb3duIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dExlZnQge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcbiAgICB0byB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fc2xpZGVPdXRMZWZ0IHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dFJpZ2h0IHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuLmFuaW1hdGVfX3NsaWRlT3V0UmlnaHQge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRVcCB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcclxuICAgIGZyb20ge1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYW5pbWF0ZV9fc2xpZGVPdXRVcCB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwO1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XHJcbn0iLCIvLyBib3VuY2VcclxuLmN1c3RvbS1ib3VuY2Uge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oYm91bmNlIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcylcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1ib3VuY2VJbiB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4zKTtcclxuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKC4zKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoLjMpO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oYm91bmNlSW4gdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJvdW5jZUluUmlnaHQge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCkgc2NhbGVYKDMpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJvdW5jZUluUmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJvdW5jZW5JbkxlZnQge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApIHNjYWxlWCgzKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCkgc2NhbGVYKDMpO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oYm91bmNlSW5MZWZ0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcylcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1ib3VuY2VJblVwIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJvdW5jZUluVXAgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJvdW5jZUluRG93biB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJvdW5jZUluRG93biB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tYm91bmNlT3V0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJvdW5jZU91dCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tYm91bmNlT3V0RG93biB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihib3VuY2VPdXREb3duIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcylcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1ib3VuY2VPdXRMZWZ0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJvdW5jZU91dExlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJvdW5jZU91dFJpZ2h0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJvdW5jZU91dFJpZ2h0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcylcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1ib3VuY2VPdXRVcCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihib3VuY2VPdXRVcCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGZhZGVcclxuLmN1c3RvbS1mYWRlSW4ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVJbiB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVJbkRvd24ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlSW5Eb3duIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZUluTGVmdCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVJbkxlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlSW5SaWdodCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlSW5SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVJblVwIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVJblVwIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZUluTGVmdEJpZyB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVJbkxlZnRCaWcgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlSW5SaWdodEJpZyB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGFuaW1hdGlvbjogZmFkZUluUmlnaHRCaWcgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVJblVwQmlnIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlSW5VcEJpZyB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVJbkRvd25CaWcge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVJbkRvd25CaWcgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlSW5Ub3BMZWZ0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIC0xMDAlLCAwKTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVJblRvcExlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlSW5Ub3BSaWdodCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIC0xMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgLTEwMCUsIDApO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oZmFkZUluVG9wUmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlSW5Cb3R0b21MZWZ0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMTAwJSwgMCk7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlSW5Cb3R0b21MZWZ0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZUluQm90dG9tUmlnaHQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMTAwJSwgMCk7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlSW5Cb3R0b21SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVPdXQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oZmFkZU91dCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVPdXREb3duIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXREb3duIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZU91dERvd25CaWcge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oZmFkZU91dERvd25CaWcgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlT3V0TGVmdCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlT3V0TGVmdCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVPdXRMZWZ0QmlnIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXRMZWZ0QmlnIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZU91dFJpZ2h0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXRSaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVPdXRSaWdodEJpZyB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlT3V0UmlnaHRCaWcgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlT3V0VXAge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oZmFkZU91dFVwIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZU91dFVwQmlnIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXRVcEJpZyB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVPdXRUb3BMZWZ0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXRUb3BMZWZ0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmFkZU91dFRvcFJpZ2h0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZhZGVPdXRUb3BSaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZhZGVPdXRCb3R0b21SaWdodCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlT3V0Qm90dG9tUmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mYWRlT3V0Qm90dG9tTGVmdCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmYWRlT3V0Qm90dG9tTGVmdCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBab29tXHJcbi5jdXN0b20tem9vbUluIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHpvb21JbiB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXpvb21JbkRvd24ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oem9vbUluRG93biB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXpvb21JbkxlZnQge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oem9vbUluTGVmdCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXpvb21JblJpZ2h0IHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbih6b29tSW5SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXpvb21JblVwIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbih6b29tSW5VcCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXpvb21PdXQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oem9vbU91dCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXpvb21PdXREb3duIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHpvb21PdXREb3duIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tem9vbU91dExlZnQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oem9vbU91dExlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS16b29tT3V0UmlnaHQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oem9vbU91dFJpZ2h0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tem9vbU91dFVwIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHpvb21PdXRVcCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBzbGlkZVxyXG4uY3VzdG9tLXNsaWRlSW5Eb3duIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihzbGlkZUluRG93biB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXNsaWRlSW5MZWZ0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihzbGlkZUluTGVmdCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXNsaWRlSW5SaWdodCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHNsaWRlSW5SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXNsaWRlSW5VcCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHNsaWRlSW5VcCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXNsaWRlT3V0RG93biB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihzbGlkZU91dERvd24gdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1zbGlkZU91dExlZnQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oc2xpZGVPdXRMZWZ0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tc2xpZGVPdXRSaWdodCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihzbGlkZU91dFJpZ2h0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tc2xpZGVPdXRVcCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihzbGlkZU91dFVwIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vU3BlY2lhbHNcclxuLmN1c3RvbS1oaW5nZSB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihoaW5nZSB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWphY2tJblRoZUJveCB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSByb3RhdGUoMzBkZWcpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGphY2tJblRoZUJveCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXJvbGxJbiB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocm9sbEluIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tcm9sbE91dCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihyb2xsT3V0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIExpZ2h0c3BlZWRcclxuLmN1c3RvbS1saWdodFNwZWVkSW5SaWdodCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihsaWdodFNwZWVkSW5SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWxpZ2h0U3BlZWRJbkxlZnQge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24obGlnaHRTcGVlZEluTGVmdCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWxpZ2h0U3BlZWRPdXRSaWdodCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihsaWdodFNwZWVkT3V0UmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1saWdodFNwZWVkT3V0TGVmdCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihsaWdodFNwZWVkT3V0TGVmdCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSb3RhdGluZ1xyXG4uY3VzdG9tLXJvdGF0ZUluIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocm90YXRlSW4gdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1yb3RhdGVJbkRvd25MZWZ0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHJvdGF0ZUluRG93bkxlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1yb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocm90YXRlSW5Eb3duUmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1yb3RhdGVJblVwTGVmdCB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocm90YXRlSW5VcExlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1yb3RhdGVJblVwUmlnaHQge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocm90YXRlSW5VcFJpZ2h0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tcm90YXRlT3V0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHJvdGF0ZU91dCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXJvdGF0ZU91dERvd25MZWZ0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHJvdGF0ZU91dERvd25MZWZ0IHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tcm90YXRlT3V0RG93blJpZ2h0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHJvdGF0ZU91dERvd25SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXJvdGF0ZU91dFVwTGVmdCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihyb3RhdGVPdXRVcExlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1yb3RhdGVPdXRVcFJpZ2h0IHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHJvdGF0ZU91dFVwUmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gRmxpcHBlcnNcclxuLmN1c3RvbS1mbGlwIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZsaXAgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1mbGlwSW5YIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmbGlwSW5YIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmxpcEluWSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oZmxpcEluWSB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWZsaXBPdXRYIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGZsaXBPdXRYIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tZmxpcE91dFkge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oZmxpcE91dFkgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQXR0ZW50aW9uIHNlZWtlcnNcclxuLmN1c3RvbS1mbGFzaCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihmbGFzaCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tcHVsc2Uge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocHVsc2UgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXJ1YmJlckJhbmQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24ocnViYmVyQmFuZCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tc2hha2VYIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHNoYWtlWCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tc2hha2VYIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHNoYWtlWCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20taGVhZFNoYWtlIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGhlYWRTaGFrZSB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tc3dpbmcge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oc3dpbmcgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLXRhZGEge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24odGFkYSB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20td29iYmxlIHtcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKHdvYmJsZSB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tamVsbG8ge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oamVsbG8gdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWhlYXJ0QmVhdCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihoZWFydEJlYXQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBCYWNrXHJcbi5jdXN0b20tYmFja0luRG93biB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTIwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihiYWNrSW5Eb3duIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcylcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1iYWNrSW5MZWZ0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgc2NhbGUoMC43KTtcclxuICAgIG9wYWNpdHk6IDAuNztcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJhY2tJbkxlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJhY2tJblJpZ2h0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCkgc2NhbGUoMC43KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHNjYWxlKDAuNyk7XHJcbiAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihiYWNrSW5SaWdodCB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tYmFja0luVXAge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTIwMHB4KSBzY2FsZSgwLjcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyMDBweCkgc2NhbGUoMC43KTtcclxuICAgIG9wYWNpdHk6IDAuNztcclxuICAgIGFuaW1hdGlvbi1kZWxheTogdmFyKC0tZGVsYXkpICFpbXBvcnRhbnQ7XHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGJhY2tJblVwIHZhcigtLWR1cmF0aW9uKSBmb3J3YXJkcylcclxuICAgIH1cclxufVxyXG5cclxuLmN1c3RvbS1iYWNrT3V0RG93biB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihiYWNrT3V0RG93biB2YXIoLS1kdXJhdGlvbikgZm9yd2FyZHMpXHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdXN0b20tYmFja091dExlZnQge1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kZWxheSkgIWltcG9ydGFudDtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24oYmFja091dExlZnQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJhY2tPdXRSaWdodCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihiYWNrT3V0UmlnaHQgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWJhY2tPdXRVcCB7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IHZhcigtLWRlbGF5KSAhaW1wb3J0YW50O1xyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGFuaW1hdGlvbihiYWNrT3V0VXAgdmFyKC0tZHVyYXRpb24pIGZvcndhcmRzKVxyXG4gICAgfVxyXG59IiwiIiwiLnN3aXBlci13cmFwcGVyLnJvdyB7XHJcbiAgZmxleC13cmFwOiBub3dyYXA7XHJcbn1cclxuXHJcbi5zd2lwZXIucm93cyB7XHJcbiAgLmNvbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnN3aXBlci1jb250YWluZXIge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5zd2lwZXItc2xpZGUge1xyXG4gIGhlaWdodDogaW5pdGlhbDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xyXG4gIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgbWFyZ2luLXRvcDogMS42cmVtO1xyXG5cclxuICAmLWJ1bGxldCB7XHJcbiAgICAtLWNpcmNsZTogLTAuNHJlbTtcclxuICAgIGJhY2tncm91bmQ6ICNmNmRiZWE7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMS42cmVtO1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgIC8vICY6OmJlZm9yZSB7XHJcbiAgICAvLyAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIC8vICAgdG9wOiB2YXIoLS1jaXJjbGUpO1xyXG4gICAgLy8gICByaWdodDogdmFyKC0tY2lyY2xlKTtcclxuICAgIC8vICAgYm90dG9tOiB2YXIoLS1jaXJjbGUpO1xyXG4gICAgLy8gICBsZWZ0OiB2YXIoLS1jaXJjbGUpO1xyXG4gICAgLy8gICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpO1xyXG4gICAgLy8gICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAvLyAgIG9wYWNpdHk6IDA7XHJcbiAgICAvLyAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAvLyB9XHJcblxyXG4gICAgJi1hY3RpdmUge1xyXG4gICAgICB3aWR0aDogNnJlbTtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2YyMmZiMCAwJSwgI2Y1OGEyNSAxMDAlKTtcclxuICAgICAgLy8gICAmOjpiZWZvcmUge1xyXG4gICAgICAvLyAgICAgb3BhY2l0eTogMTtcclxuICAgICAgLy8gICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc3dpcGVyLWNvbnRyb2wge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBnYXA6IDEuNnJlbTtcclxuICAtLXNpemU6IDRyZW07XHJcblxyXG4gICYtYnRuIHtcclxuICAgIHdpZHRoOiB2YXIoLS1zaXplKTtcclxuICAgIGhlaWdodDogdmFyKC0tc2l6ZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICRjb2xvci1zZWNvbmQ7XHJcbiAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb25SZTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICBAaW5jbHVkZSBhZmZ0ZXIoJGNvbG9yLXByaSk7XHJcbiAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgIDYwZGVnLFxyXG4gICAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgICAgcmdiYSgyNTUsIDE5NywgMTExLCAwLjgpIDEwMCVcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgID4gKiB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuXHJcbiAgICAmLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xyXG4gICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBpIHtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICY6bm90KC5zd2lwZXItYnV0dG9uLWRpc2FibGVkKSB7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLndoaXRlIHtcclxuICAgIC5zd2lwZXItY29udHJvbC1idG4ge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgICYubW9iaWxlLXBsdXMge1xyXG4gICAgICAuc3dpcGVyLWNvbnRyb2wtYnRuIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoMTM1MHB4KSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5wb3NpIHtcclxuICAgIC5zd2lwZXItY29udHJvbC1idG4ge1xyXG4gICAgICBAaW5jbHVkZSBwb3NpLXZlcnRpY2FsO1xyXG4gICAgfVxyXG5cclxuICAgICYubWludXMge1xyXG4gICAgICAuc3dpcGVyLXByZXYge1xyXG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyA0cmVtKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDEzNTBweCkge1xyXG4gICAgICAgICAgcmlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgbGVmdDogY2FsYyh2YXIoLS1zaXplKSAvIDIgKiAtMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuc3dpcGVyLW5leHQge1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIDRyZW0pO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtYXgoMTM1MHB4KSB7XHJcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcclxuICAgICAgICAgIHJpZ2h0OiBjYWxjKHZhcigtLXNpemUpIC8gMiAqIC0xKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYubW9iaWxlLXBsdXMge1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCgkcmVzLW1vYmlsZSkge1xyXG4gICAgICAgICAgLnN3aXBlci1wcmV2IHtcclxuICAgICAgICAgICAgbGVmdDogY2FsYygodmFyKC0tc2l6ZSkgLyAyICogLTEpICsgKDEuNXJlbSAvIDIpKTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuc3dpcGVyLW5leHQge1xyXG4gICAgICAgICAgICByaWdodDogY2FsYygodmFyKC0tc2l6ZSkgLyAyICogLTEpICsgKDEuNXJlbSAvIDIpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm1pZGxlIHtcclxuICAgICAgLnN3aXBlci1wcmV2IHtcclxuICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLXNpemUpIC8gMiAqIC0xKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnN3aXBlci1uZXh0IHtcclxuICAgICAgICByaWdodDogY2FsYyh2YXIoLS1zaXplKSAvIDIgKiAtMSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnBsdXMge1xyXG4gICAgICAuc3dpcGVyLXByZXYge1xyXG4gICAgICAgIGxlZnQ6IDFyZW07XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zd2lwZXItbmV4dCB7XHJcbiAgICAgICAgcmlnaHQ6IDFyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLm1vYmlsZS1wbHVzIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KCRyZXMtbW9iaWxlKSB7XHJcbiAgICAgICAgLnN3aXBlci1wcmV2IHtcclxuICAgICAgICAgIGxlZnQ6IGNhbGMoKHZhcigtLXNpemUpIC8gMiAqIC0xKSArICgxLjVyZW0gLyAyKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3dpcGVyLW5leHQge1xyXG4gICAgICAgICAgcmlnaHQ6IGNhbGMoKHZhcigtLXNpemUpIC8gMiAqIC0xKSArICgxLjVyZW0gLyAyKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1ib3JkZXItMDE7XHJcbiAgaGVpZ2h0OiAwLjFyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmQgIWltcG9ydGFudDtcclxufVxyXG4iLCIubG9hZC1pbWcge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICRjLW1haW46ICRjb2xvci1wcmk7XHJcbiAgJGMtc2Vjb25kOiAjZjhmOGY4O1xyXG4gICY6OmJlZm9yZSxcclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG4gIH1cclxuXHJcbiAgaW1nLFxyXG4gIGZvcm0ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjRzO1xyXG4gIH1cclxuXHJcbiAgJjpiZWZvcmUge1xyXG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGMtbWFpbjtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgNjBkZWcsXHJcbiAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgIHJnYmEoMjU1LCAxOTcsIDExMSwgMC42KSAxMDAlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1zZWNvbmQ7XHJcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xyXG4gIH1cclxuXHJcbiAgJi5pcy1pbnZpZXcge1xyXG4gICAgaW1nLFxyXG4gICAgZm9ybSB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICB0cmFuc2l0aW9uOiAxLjZzIGVhc2U7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjhzIGVhc2U7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmxvYWQtaW1nLXNlY29uZCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICY6OmJlZm9yZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuOHMsIGVhc2Utb3V0KTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgei1pbmRleDogMztcclxuICB9XHJcblxyXG4gICY6OmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBpbnNldDogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwKTtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC44cywgZWFzZS1vdXQpO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB6LWluZGV4OiAzO1xyXG4gIH1cclxuXHJcbiAgJi5pcy1pbnZpZXcge1xyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtMTEwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTEwJSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubG9hZC1pbWctdGhpcmQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gIH1cclxuXHJcbiAgaW1nIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigxLjJzLCBlYXNlLCAxcyk7XHJcbiAgfVxyXG5cclxuICAmLmlzLWludmlldyB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDEwMCU7XHJcbiAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlMmRiYzA7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgIGFuaW1hdGlvbjogMXMgcmV2ZWFsLWltZy1iZWZvcmUgY3ViaWMtYmV6aWVyKDAuNiwgMCwgMC4xOTUsIDEpO1xyXG4gICAgICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5zZWNvbmQuaXMtaW52aWV3IHtcclxuICAgIGltZyB7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJldmVhbC1pbWctYmVmb3JlIHtcclxuICAwJSB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMTAwJTtcclxuICAgIGJvdHRvbTogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTEwcHg7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgdG9wOiAwO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAtMXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdG9wOiAxMDAlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IC0xcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBpbWdMb2FkIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZS1pbi1yaWdodCB7XHJcbiAgMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgtMTAwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlLW91dC1yaWdodCB7XHJcbiAgMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgxMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGUtaW4tcmlnaHQtNTAge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoLTUwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlLWluLWxlZnQge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoMTAwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlLW91dC1sZWZ0IHtcclxuICAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDAsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGUtaW4tdG9wIHtcclxuICAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNEKDAsIC0xMDAlLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGUtb3V0LWxlZnQtNTAge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoMCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoLTUwJSwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlLWluLWxlZnQtNTAge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM0QoNTAlLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzRCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcmV2ZWFsUlRMIHtcclxuICAwJSB7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgNjUlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgcmlnaHQ6IDEwMCU7XHJcbiAgfVxyXG59XHJcbi5nc2FwdHh0IHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbiIsIi5icmVhZGNydW1iIHtcclxuICBwYWRkaW5nOiA0cmVtIDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDQ7XHJcbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgcGFkZGluZzogMi40cmVtIDA7XHJcbiAgfVxyXG5cclxuICAmLXdyYXBwZXIge1xyXG4gIH1cclxuXHJcbiAgJi1saXN0IHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGdhcDogMC44cmVtO1xyXG4gIH1cclxuXHJcbiAgJi1pdGVtIHtcclxuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDAuOHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBjb250ZW50OiBcIi9cIjtcclxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAvLyAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgJi1saW5rIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiAxO1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgfVxyXG59XHJcbi5ia3Mge1xyXG4gIC5icmVhZGNydW1iIHtcclxuICAgIHBhZGRpbmc6IHVuc2V0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcclxuICAgICYtaXRlbSB7XHJcbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xyXG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgUHJvXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAuYnJlYWRjcnVtYi1saW5rIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1saW5rIHtcclxuICAgICAgY29sb3I6ICM4Yzg3ODI7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuYnRuIHtcclxuICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBwYWRkaW5nOiAxcmVtIDEuMnJlbTtcclxuICBib3JkZXItcmFkaXVzOiAwLjRyZW07XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjVzLCBlYXNlKTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAvLyAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmQ7XHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2YyMmZiMCAwJSwgI2Y1OGEyNSAxMDAlLCAjNzA2MWEzIDEwMCUpO1xyXG4gIGdhcDogMC44cmVtO1xyXG4gIGNvbG9yOiB3aGl0ZTtcclxuICBmb250LXNpemU6IDEuNnJlbTtcclxuICBtaW4td2lkdGg6IDE2cmVtO1xyXG4gIG1pbi1oZWlnaHQ6IDQuNHJlbTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gID4gKiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gIH1cclxuICAudGV4dCB7XHJcbiAgfVxyXG4gIC5pY29uIHtcclxuICAgIHdpZHRoOiAxLjRyZW07XHJcbiAgICBoZWlnaHQ6IDEuNHJlbTtcclxuICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgfVxyXG4gICYuY2VudGVyIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuICAmLmZ1bGwge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gICYudHJhbnMge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci10ZXh0O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLnNlY29uZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAkY29sb3Itc2Vjb25kO1xyXG4gICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gIH1cclxuICAmOjphZnRlciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgNjBkZWcsXHJcbiAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgIHJnYmEoMjU1LCAxOTcsIDExMSwgMC44KSAxMDAlXHJcbiAgICApO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgIC8vICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICZfX2NlbnRlciB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcbiAgJl9fY2lyIHtcclxuICAgIHdpZHRoOiA0cmVtO1xyXG4gICAgaGVpZ2h0OiA0cmVtO1xyXG4gICAgcGFkZGluZzogdW5zZXQ7XHJcbiAgfVxyXG59XHJcbiIsIi5pbnB1dCB7XHJcbiAgICBAaW5jbHVkZSBmb250LXByaTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICYtYXJlYSB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnJlIHtcclxuICAgICYtbGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJi1pbnB1dCB7XHJcbiAgICAgICAgcGFkZGluZzogMS40cmVtO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtcHJpO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGJvcmRlcjogLjFyZW0gc29saWQgJGNvbG9yLWJvcmRlci0wMTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAuOHJlbTtcclxuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuICAgIHJlc2l6ZTogbm9uZTtcclxufVxyXG5cclxuZm9ybSB7XHJcbiAgICAud3BjZjctbm90LXZhbGlkLXRpcCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgICAgYm90dG9tOiAuMXJlbTtcclxuICAgICAgICByaWdodDogLjZyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgLndwY2Y3LXNwaW5uZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53cGNmNy1mb3JtLWNvbnRyb2wtd3JhcCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgY29sb3I6ICRjb2xvci1wcmkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmZ0LXJlZ2ktYnRuIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufSIsInVsLnBhZ2UtbnVtYmVycyB7XHJcbiAgbWFyZ2luLXRvcDogNC44cmVtO1xyXG59XHJcbi5wYWdlLW51bWJlcnMge1xyXG4gIEBpbmNsdWRlIGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogNTtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDAuOHJlbTtcclxuICAgIH1cclxuICAgICYgPiAucGFnZS1udW1iZXJzIHtcclxuICAgICAgd2lkdGg6IDQuOHJlbTtcclxuICAgICAgaGVpZ2h0OiA0LjhyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICAgIEBpbmNsdWRlIGFmZnRlcigkY29sb3Itc2Vjb25kKTtcclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICY6bm90KC5kb3QpIHtcclxuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuY3VycmVudCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuZG90IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgfVxyXG4gICAgICBpIHtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5wcm8ge30iLCIiLCIiLCIudC10aXRsZSB7XHJcbiAgQGluY2x1ZGUgZnotNDA7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xyXG4gIH1cclxuICAmLXNlY29uZCB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gIH1cclxufVxyXG5cclxuLnQtdGl0bGUtc2Vjb25kIHtcclxuICBAaW5jbHVkZSBmei0zMjtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGNvbG9yOiAkY29sb3ItcHJpO1xyXG59XHJcblxyXG4uc3MtcGQge1xyXG4gIHBhZGRpbmc6IHZhcigtLXBkLXNjKSAwO1xyXG59XHJcbi5zcy1wZC10IHtcclxuICBwYWRkaW5nLXRvcDogdmFyKC0tcGQtc2MpO1xyXG59XHJcbi5zcy1wZC1iIHtcclxuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tcGQtc2MpO1xyXG59XHJcbi50LWNlbnRlciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uZnctMSB7XHJcbiAgZm9udC13ZWlnaHQ6IDEwMDtcclxufVxyXG5cclxuLmZ3LTIge1xyXG4gIGZvbnQtd2VpZ2h0OiAyMDA7XHJcbn1cclxuXHJcbi5mdy0zIHtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG59XHJcblxyXG4uZnctNSB7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZ3LTYge1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5mdy03IHtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uZnctOCB7XHJcbiAgZm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuLmZ3LWIge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uZnNpIHtcclxuICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi50LXVwIHtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4udDkge1xyXG4gIEBpbmNsdWRlIGZ6LTk7XHJcbn1cclxuXHJcbi50MTEge1xyXG4gIEBpbmNsdWRlIGZ6LTExO1xyXG59XHJcblxyXG4udDEyIHtcclxuICBAaW5jbHVkZSBmei0xMjtcclxufVxyXG5cclxuLnQxNCB7XHJcbiAgQGluY2x1ZGUgZnotMTQ7XHJcbn1cclxuXHJcbi50MTYge1xyXG4gIEBpbmNsdWRlIGZ6LTE2O1xyXG59XHJcblxyXG4udDE4IHtcclxuICBAaW5jbHVkZSBmei0xODtcclxufVxyXG5cclxuLnQyMCB7XHJcbiAgQGluY2x1ZGUgZnotMjA7XHJcbn1cclxuXHJcbi50MjQge1xyXG4gIEBpbmNsdWRlIGZ6LTI0O1xyXG59XHJcblxyXG4udDMyIHtcclxuICBAaW5jbHVkZSBmei0zMjtcclxufVxyXG5cclxuLnQ0MCB7XHJcbiAgQGluY2x1ZGUgZnotNDA7XHJcbn1cclxuXHJcbi50NDgge1xyXG4gIEBpbmNsdWRlIGZ6LTQ4O1xyXG59XHJcblxyXG4udDU2IHtcclxuICBAaW5jbHVkZSBmei01NjtcclxufVxyXG5cclxuLnQ2NCB7XHJcbiAgQGluY2x1ZGUgZnotNjQ7XHJcbn1cclxuXHJcbi50NzIge1xyXG4gIEBpbmNsdWRlIGZ6LTcyO1xyXG59XHJcbiIsIi5jLXByaSB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXByaTtcclxufVxyXG5cclxuLmMtc2Vjb25kIHtcclxuICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG59XHJcblxyXG4uYy10aGlyZCB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG59XHJcblxyXG4uYy1mb3VyIHtcclxuICAgIGNvbG9yOiAkY29sb3ItZm91cjtcclxufVxyXG5cclxuLmMtZml2ZSB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWZpdmU7XHJcbn1cclxuXHJcbi5jLXdoaXRlIHtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmMtYmxhY2sge1xyXG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxufVxyXG5cclxuLmMtdHh0IHtcclxuICAgIGNvbG9yOiAkY29sb3ItdGV4dDtcclxufVxyXG5cclxuLmMtdHh0LXMge1xyXG4gICAgY29sb3I6ICRjb2xvci10ZXh0LXNlY29uZDtcclxufVxyXG5cclxuLmJjLXByaSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xyXG59XHJcblxyXG4uYmMtc2Vjb25kIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbn1cclxuXHJcbi5iYy10aGlyZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbn1cclxuXHJcbi5iYy1mb3VyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1mb3VyO1xyXG59XHJcblxyXG4uYmMtZml2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZml2ZTtcclxufVxyXG5cclxuLm92ZXItaGQge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnotaS0xIHtcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi56LWktMiB7XHJcbiAgICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4uei1pLTMge1xyXG4gICAgei1pbmRleDogMztcclxufVxyXG5cclxuLnotaS00IHtcclxuICAgIHotaW5kZXg6IDQ7XHJcbn1cclxuXHJcbi56LWktNSB7XHJcbiAgICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4ubS1taWQge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5tLWVuZCB7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLm0tdG9wIHtcclxuICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcclxufVxyXG5cclxuLm0tc3RhcnQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uZi1taWQge1xyXG4gICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbn1cclxuXHJcbi5mLWVuZCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG5cclxuXHJcblxyXG5cclxuLmxnLWRvd25sb2FkLFxyXG4jbGctYWN0dWFsLXNpemUsXHJcbiNsZy1zaGFyZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubGctYmFja2Ryb3AsXHJcbi5sZy1vdXRlciB7XHJcbiAgICB6LWluZGV4OiA5OTk5OTtcclxufVxyXG5cclxuLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtIHtcclxuICAgIGJvcmRlcjogMC4ycmVtIHNvbGlkICRjb2xvci1wcmk7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2U7XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgIH1cclxufVxyXG5cclxuLmxnLXByZXYubGctaWNvbiB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmxnLW5leHQubGctaWNvbiB7XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sZy1wcmV2LmxnLWljb24sXHJcbi5sZy1uZXh0LmxnLWljb24ge1xyXG4gICAgd2lkdGg6IDRyZW07XHJcbiAgICBoZWlnaHQ6IDRyZW07XHJcblxyXG4gICAgaSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXByaS1sbjtcclxuICAgICAgICBAaW5jbHVkZSB0eHQtbG47XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxufVxyXG5cclxuLmxnLWNsb3NlLmxnLWljb24ge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXByaS1sbjtcclxuICAgIEBpbmNsdWRlIHR4dC1sbjtcclxufVxyXG5cclxuLmxnLW91dGVyIC5sZy10b29nbGUtdGh1bWIge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXByaS1sbjtcclxuICAgIEBpbmNsdWRlIHR4dC1sbjtcclxuICAgIHdpZHRoOiA0cmVtO1xyXG4gICAgaGVpZ2h0OiA0cmVtO1xyXG59XHJcblxyXG4ubGctaW1nLXdyYXAge1xyXG4gICAgYm9yZGVyLXJhZGl1czogLjhyZW07XHJcbn1cclxuXHJcbi5sZy10aHVtYi1pdGVtIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IC44cmVtO1xyXG59XHJcblxyXG4ubGctb3V0ZXIgLmxnLXRodW1iIHtcclxuICAgIG1hcmdpbjogMCBhdXRvIC01cHg7XHJcbn1cclxuXHJcbi50YWJQYW5lbCB7fVxyXG5cclxuLnRhYlBhbmVsLXNlY29uZCB7fVxyXG5cclxuLnRhYkJ0biB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5vcmRlcnMtdGFibGUsXHJcbnRhYmxlIHtcclxuICAgIC5zdGF0dXMge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gICAgICAgICYud2FpdGluZyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjRjJDNTI0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zdWNjZXNzIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY2FuY2xlIHtcclxuICAgICAgICAgICAgY29sb3I6ICNEMzFEMUQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnJlbGF0aXZlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmhlYWQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xyXG5cclxuICAgICYuc3BhY2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtd3I7XHJcbiAgICAgICAgZ2FwOiAxcmVtO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxuXHJcbiAgICAmLmNlbnRlciB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLmVuZCB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG5cclxuICAgICYuc3RhcnQge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgICYubWItY2VudGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNzAwcHgpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLmxlZnQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5yaWdodCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNkdyB7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmh2LWJkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIHBzZXVkbztcclxuICAgICAgICBAaW5jbHVkZSBmdWxsLXNpemUoLjhyZW0pO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHdoaXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGFsbCBlYXNlLWluLW91dDtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGFsbCBlYXNlLWluLW91dDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyLXNjYWxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmdJdGVtIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLnBhcmFsbGF4SlMge1xyXG4gICAgaW1nIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oaWRkZW4tZGVzayB7XHJcbiAgICBAaW5jbHVkZSBtaW4oJHJlcy1tb2JpbGUtbWluKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGlkZGVuLW1vYmlsZSB7XHJcbiAgICBAaW5jbHVkZSBtYXgoJHJlcy1tb2JpbGUpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mdWxsIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ud3AtYmxvY2staW1hZ2Uge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbn0iLCIubWItMCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tYi0yIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcclxufVxyXG5cclxuLm1iLTQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC40cmVtO1xyXG59XHJcblxyXG4ubWItNiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XHJcbn1cclxuXHJcbi5tYi04IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxufVxyXG5cclxuLm1iLThzIHtcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWItMTAge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLm1iLTEwcyB7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi0xMiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XHJcbn1cclxuXHJcbi5tYi0xMnMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi0xNCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XHJcbn1cclxuXHJcbi5tYi0xNHMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi0xNSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbn1cclxuXHJcbi5tYi0xNXMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi0xNiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XHJcbn1cclxuXHJcbi5tYi0xNnMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi0xOCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjhyZW07XHJcbn1cclxuXHJcbi5tYi0xOHMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjhyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi0yMCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG59XHJcblxyXG4ubWItMjBzIHtcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLm1iLTI0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxufVxyXG5cclxuLm1iLTI0cyB7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLm1iLTI1IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcclxufVxyXG5cclxuLm1iLTI1cyB7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLm1iLTMwIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XHJcbn1cclxuXHJcbi5tYi0zMHMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWItMzIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xyXG59XHJcblxyXG4ubWItMzJzIHtcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWItNDAge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcclxufVxyXG5cclxuLm1iLTQwcyB7XHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi00OCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0LjhyZW07XHJcbn1cclxuXHJcbi5tYi00OHMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjhyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi01NiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1LjZyZW07XHJcbn1cclxuXHJcbi5tYi01NnMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1LjZyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi02NCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2LjRyZW07XHJcbn1cclxuXHJcbi5tYi02NHMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2LjRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi03MiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA3LjJyZW07XHJcbn1cclxuXHJcbi5tYi03MnMge1xyXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA3LjJyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYi04MCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA4cmVtO1xyXG59XHJcblxyXG4ubWItODBzIHtcclxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLnNzLW1nIHtcclxuICAgIG1hcmdpbjogdmFyKC0tcGQtc2MpIDA7XHJcbn1cclxuXHJcbi5zcy1tZy10IHtcclxuICAgIG1hcmdpbi10b3A6IHZhcigtLXBkLXNjKTtcclxufVxyXG5cclxuLnNzLW1nLWIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tcGQtc2MpO1xyXG59XHJcblxyXG4uc3MtcGQge1xyXG4gICAgcGFkZGluZzogdmFyKC0tcGQtc2MpIDA7XHJcbn1cclxuXHJcbi5zcy1wZC10IHtcclxuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1wZC1zYyk7XHJcbn1cclxuXHJcbi5zcy1wZC1iIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1wZC1zYyk7XHJcbn0iLCIucmVjaGVjayB7XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgLnJlY2hlY2stY2hlY2tib3gge1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucmVjaGVjay1yYWRpbyB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAkY29sb3ItcHJpO1xyXG5cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNoZWNrYm94IHtcclxuICAgICAgICB3aWR0aDogMS42cmVtO1xyXG4gICAgICAgIGhlaWdodDogMS42cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmdWxsLXNpemUoLS4ycmVtKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2Fzc2V0cy9pbWFnZXMvdGljay5zdmcpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBkZWZhdWx0LWJhY2tncm91bmQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtcmFkaW8ge1xyXG4gICAgICAgIHdpZHRoOiAxLjZyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAxLjZyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICRjb2xvci10ZXh0LXNlY29uZDtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtaWQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAwLjhyZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogMC44cmVtO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtbWV0aG9kIHtcclxuICAgICAgICB3aWR0aDogNC44cmVtO1xyXG4gICAgICAgIGhlaWdodDogNC44cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNFQkVCRUI7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjhyZW07XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogMi40cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXRleHQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjhyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcbiAgICB9XHJcbn0iLCIuc3RhciB7XHJcbiAgQGluY2x1ZGUgZmxleDtcclxuICBhbGlnbi1jb250ZW50OiBzdGFydDtcclxuICAmLWxpc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgaGVpZ2h0OiAyLjZyZW07XHJcbiAgfVxyXG4gICYtZmxleCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgLmljb24ge1xyXG4gICAgICB3aWR0aDogMi40cmVtO1xyXG4gICAgICBoZWlnaHQ6IDIuNHJlbTtcclxuICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWZpbHRlciB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgQGluY2x1ZGUgcG9zaS12ZXJ0aWNhbDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMDtcclxuICB9XHJcbn1cclxuIiwiLnNpZGUge1xyXG4gICYtZml4ZWQge1xyXG4gICAgQGluY2x1ZGUgbWF4KCRyZXMtbW9iaWxlKSB7XHJcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgIHotaW5kZXg6IDUxO1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTEwJSk7XHJcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHJcbiAgICAgICYub3BlbiB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi13cmFwIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KCRyZXMtbW9iaWxlKSB7XHJcbiAgICAgICAgcGFkZGluZzogNS41cmVtIDEuNXJlbSAxLjVyZW0gMS41cmVtO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgQGluY2x1ZGUgZnVsbDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yOiAkY29sb3ItYmxhY2ssICRhbHBoYTogMC42KTtcclxuICAgIHotaW5kZXg6IDUwO1xyXG4gICAgdHJhbnNpdGlvbjogMC41cyBlYXNlLWluLW91dDtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTEwJSk7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcblxyXG4gICAgJi5vcGVuIHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWluKCRyZXMtbW9iaWxlLW1pbikge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi1vcGVuIHtcclxuICAgIHdpZHRoOiA0cmVtO1xyXG4gICAgaGVpZ2h0OiA0cmVtO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBAaW5jbHVkZSBwb3NpLXZlcnRpY2FsO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgei1pbmRleDogNDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMDByZW0gMCAwIDEwMHJlbTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAmLnNpZGUtb3Blbi1ia3Mge1xyXG4gICAgICB3aWR0aDogN3JlbTtcclxuICAgICAgaGVpZ2h0OiA2cmVtO1xyXG4gICAgICB0b3A6IDE5cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoMzg2cHgpIHtcclxuICAgICAgICB0b3A6IDIzcmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmNsb3NlIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSwgLTUwJSk7XHJcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWluKCRyZXMtbW9iaWxlLW1pbikge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYtd3JhcCB7XHJcbiAgICAgIHdpZHRoOiAzcmVtO1xyXG4gICAgICBoZWlnaHQ6IDNyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG5cclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtdG9wIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNC41cmVtO1xyXG4gICAgcGFkZGluZzogMCAwIDAgMS41cmVtO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG5cclxuICAgIEBpbmNsdWRlIG1pbigkcmVzLW1vYmlsZS1taW4pIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAudGV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGxjKDEpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi1jbG9zZSB7XHJcbiAgICAmOm5vdCguYmtzLW92dy1idG4pIHtcclxuICAgICAgd2lkdGg6IDQuNXJlbTtcclxuICAgICAgaGVpZ2h0OiA0LjVyZW07XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcblxyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjZzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtaW4oJHJlcy1tb2JpbGUtbWluKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIiLCIuc29jaWFsIHtcclxuICAgICYtbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMS4ycmVtO1xyXG4gICAgfVxyXG5cclxuICAgICYtbGluayB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDMuMnJlbTtcclxuICAgICAgICBoZWlnaHQ6IDMuMnJlbTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59IiwiIiwiIiwiIiwiLnBhZ2UtaG9tZSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4uc2VjLWhoZWFkIHtcclxuICBwYWRkaW5nOiAxMHJlbSAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxO1xyXG4gIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgcGFkZGluZzogNnJlbSAwO1xyXG4gIH1cclxuICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgIHBhZGRpbmctdG9wOiA0cmVtO1xyXG4gIH1cclxufVxyXG4uaGhlYWQge1xyXG4gICYtZGNvciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMzAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogLTE1JTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtZGNvcjIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDQwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwJTtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtd3JhcCB7XHJcbiAgICB3aWR0aDogY2FsYygoOCAvIDEyKSAqIDEwMCUpO1xyXG4gICAgQGluY2x1ZGUgbWF4KDYwMHB4KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWN0biB7XHJcbiAgICAuaWdyIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG4gICAgICAuaWdycyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMC40cmVtO1xyXG4gICAgICAgIC5pLWxpbmsge1xyXG4gICAgICAgICAgd2lkdGg6IDRyZW07XHJcbiAgICAgICAgICBoZWlnaHQ6IDRyZW07XHJcbiAgICAgICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMy4ycmVtO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMuMnJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXRpdGxlIHtcclxuICAgIEBpbmNsdWRlIGZ6LTY0O1xyXG4gICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgIEBpbmNsdWRlIGZ6LTY0O1xyXG4gICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNC44cmVtO1xyXG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICBmb250LXNpemU6IDh2dztcclxuICAgIH1cclxuICB9XHJcbiAgJi1nciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZ2FwOiAwLjRyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICAudC1udW0ge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICBAaW5jbHVkZSBmei0yMjtcclxuICAgIH1cclxuICAgIC50LXRleHQge1xyXG4gICAgICBAaW5jbHVkZSBmei0yMjtcclxuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgIH1cclxuICB9XHJcbiAgJi1zd2l0Y2gge1xyXG4gICAgbWFyZ2luLXRvcDogMTRyZW07XHJcbiAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgbWFyZ2luLXRvcDogNnJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLnNlYy1oc2wge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4uaHNsIHtcclxuICAmLXNsaWRlciB7XHJcbiAgICAucm93cyB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIC0tY2c6IDEuMnJlbTtcclxuICAgICAgICAtLXJnOiAxLjJyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWluIHtcclxuICAgIC5pbm5lciB7XHJcbiAgICAgIEBpbmNsdWRlIGltZ1BkKDMzNCwgNTkyKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBAaW5jbHVkZSBhZmZ0ZXIoJGNvbG9yLXByaSk7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgNjBkZWcsXHJcbiAgICAgICAgICAjZmY3YmNhIDAlLFxyXG4gICAgICAgICAgcmdiYSgyNTUsIDE5NywgMTExLCAwLjgpIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zZWMtaHVnZSB7XHJcbiAgJi5maXgge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmh1Z2UtYmxvY2sge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaHVnZS1pdGVtLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICAgIC5odWdlLWJveCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICBwYWRkaW5nOiAyLjRyZW0gMS4ycmVtO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgICAgIG1heC13aWR0aDogMjRyZW07XHJcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZnVsbDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAgIDYwZGVnLFxyXG4gICAgICAgICAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgICAgICAgICAgcmdiYSgyNTUsIDE5NywgMTExLCAwLjgpIDEwMCVcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgbWFyZ2luOiAtMC40cmVtO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxLjZyZW07XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICB3aWR0aDogOHJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiA4cmVtO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmlnciB7XHJcbiAgICAgICAgICAgIC50LXR4dCB7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAuaHVnZS1kY29yIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogOTAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAyMCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zZWMtaHNlciB7XHJcbiAgLnNlci1pdCB7XHJcbiAgICAuc2VyLXRhZ2wge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGdhcDogMC40cmVtO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XHJcbiAgICAgIC50LWxpbmstdGFnIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMC40cmVtIDEuMnJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmNmY1O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uaHRyIHtcclxuICAmLWhlYWQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLnQtdGl0bGUge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDZ2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnQtZGVzIHtcclxuICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYmxvY2sge1xyXG4gICAgbWFyZ2luLXRvcDogMy44cmVtO1xyXG4gIH1cclxuICAmLXJvdyB7XHJcbiAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgLS1jZzogMS4ycmVtO1xyXG4gICAgICAtLXJnOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgICAuY29sIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWJveCB7XHJcbiAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBnYXA6IDEuMnJlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAudC10ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgfVxyXG4gICAgLnQtbnVtIHtcclxuICAgICAgZm9udC1zaXplOiA5LjZyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICk7XHJcbiAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYm90IHtcclxuICAgIG1hcmdpbi10b3A6IDMuOHJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAyLjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtcHkge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBnYXA6IDEuMnJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICBwYWRkaW5nOiAyLjRyZW0gMS4ycmVtO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ1bGw7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAgICNmNThhMjUgMTAwJSxcclxuICAgICAgICAgICM3MDYxYTMgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcclxuICAgICAgICBtYXJnaW46IC0wLjJyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50LXRleHQge1xyXG4gICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICB9XHJcbiAgICAudC1kZXMge1xyXG4gICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaW4ge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5obWFzIHtcclxuICAmLWJsb2NrIHtcclxuICAgIG1hcmdpbi10b3A6IDMuMnJlbTtcclxuICB9XHJcbiAgJi1pbiB7XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGdhcDogMS4ycmVtO1xyXG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xyXG4gICAgLnQtbGluayB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIH1cclxuICAgIC50LWRlcyB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmhhciB7XHJcbiAgJi1yb3cge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIG1pbig2NTFweCkge1xyXG4gICAgICAtLWNnOiAwcmVtO1xyXG4gICAgfVxyXG4gICAgLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg2NTBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtbGlzdCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gIH1cclxuICAmLWl0ZW0ge1xyXG4gICAgYm9yZGVyLXRvcDogMC4xcmVtIHNvbGlkICM0MDNkM2E7XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgIzQwM2QzYTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1weSB7XHJcbiAgICBwYWRkaW5nOiA1LjZyZW0gMi40cmVtO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDAuNHJlbSAyLjRyZW0gMHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgfVxyXG4gICYtaW1hZ2Uge1xyXG4gICAgLmlubmVyIHtcclxuICAgICAgQGluY2x1ZGUgaW1nUGQoNzQwLCA1OTIpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1pbiB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZ2FwOiAxLjJyZW07XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMS4ycmVtIDA7XHJcbiAgICAudC1saW5rIHtcclxuICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pY29uIHtcclxuICAgICAgd2lkdGg6IDIuNHJlbTtcclxuICAgICAgaGVpZ2h0OiAyLjRyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgICAgaSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uc2VyZHQtcncgLnRydy1zdyAucm93cyAuc3dpcGVyLXNsaWRlLmNvbCB7XHJcbiAgd2lkdGg6IDUwJTtcclxuICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG4uc2VyZHQtcncgLnRydy1oZWFkIHtcclxuICAudC10aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICB9XHJcbn1cclxuIiwiLmN0cyB7XHJcbiAgJi1weSB7XHJcbiAgICBwYWRkaW5nOiA0cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMS4ycmVtIDBweCAwcHggMS4ycmVtO1xyXG4gICAgYm9yZGVyLXRvcDogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgIGJvcmRlci1sZWZ0OiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBAaW5jbHVkZSBtYXgoMTAwMHB4KSB7XHJcbiAgICAgIHBhZGRpbmc6IDIuNHJlbTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgcGFkZGluZzogMi40cmVtIDEuMnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1oZWFkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgfVxyXG4gICYtcm93IHtcclxuICAgIC0tY2c6IDA7XHJcbiAgICAtLXJnOiAwO1xyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgIC0tcmc6IDIuNHJlbTtcclxuICAgIH1cclxuICAgIC5jb2wge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWZvcm0ge1xyXG4gICAgLnQtdGV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgIH1cclxuICAgICYtYnRuIHtcclxuICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXNjIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgICYtcHkge1xyXG4gICAgICBwYWRkaW5nOiA0cmVtIDhyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAxLjJyZW0gMS4ycmVtIDBweDtcclxuICAgICAgYmFja2dyb3VuZDogIzEyMTExMDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEwMDBweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMi40cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAyLjRyZW0gMS4ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxpc3Qge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBnYXA6IDZyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgZ2FwOiB1bnNldDtcclxuICAgICAgICByb3ctZ2FwOiAyLjRyZW07XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIG1hcmdpbjogMCAtMS4ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtZ3Ige1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBnYXA6IDAuOHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiA0LjhyZW07XHJcbiAgICAgICAgaGVpZ2h0OiA0LjhyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICB3aWR0aDogMy4ycmVtO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50LXRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgY29sb3I6ICNmN2Y2ZjU7XHJcbiAgICAgIH1cclxuICAgICAgLmlnciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIC50LWxpbmsge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgICBjb2xvcjogI2U4ZTRlMTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi12YWwge1xyXG4gICAgcGFkZGluZy10b3A6IHZhcigtLXBkLXNjKTtcclxuICAgICYtbGlzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgcm93LWdhcDogMS42cmVtO1xyXG4gICAgICBtYXJnaW46IDAgLTEuNnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIC0wLjhyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtaXRlbSB7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcclxuICAgICAgcGFkZGluZzogMCAxLjZyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMC44cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJveCB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiAzLjJyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEwMDBweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbSAxLjZyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgICAgICAgd2lkdGg6IDQuOHJlbTtcclxuICAgICAgICBoZWlnaHQ6IDQuOHJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgfVxyXG4gICAgICAudC1kZXMge1xyXG4gICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5wYWdlLWFib3V0IHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi5zZWMtYWIge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLmFiIHtcclxuICAmLWhlYWQge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICByb3ctZ2FwOiAxLjZyZW07XHJcbiAgICAudC10YWcge1xyXG4gICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtc2xpZGVyIHtcclxuICAgIG1hcmdpbi10b3A6IDQuOHJlbTtcclxuICAgIC8vICAuc3dpcGVyLWNvbnRhaW5lci5yb3dzIHtcclxuICAgIC8vICAgIG92ZXJmbG93OiB1bnNldDtcclxuICAgIC8vICB9XHJcbiAgICAvLyAgLnN3aXBlciB7XHJcbiAgICAvLyAgICBvdmVyZmxvdzogdW5zZXQ7XHJcbiAgICAvLyAgICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcclxuICAgIC8vICAgIC5zd2lwZXItc2xpZGUge1xyXG4gICAgLy8gICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgLy8gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1OCUsIC0yMCUpIHNjYWxlKDAuNik7XHJcbiAgICAvLyAgICAgICsgLnN3aXBlci1zbGlkZS1wcmV2IHtcclxuICAgIC8vICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyMCUsIDMwJSkgc2NhbGUoMC42KTtcclxuICAgIC8vICAgICAgfVxyXG4gICAgLy8gICAgICArIC5zd2lwZXItc2xpZGUtbmV4dCB7XHJcbiAgICAvLyAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTIwJSwgMzAlKSBzY2FsZSgwLjYpO1xyXG4gICAgLy8gICAgICAgICsgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAvLyAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTglLCAtMjAlKSBzY2FsZSgwLjYpO1xyXG4gICAgLy8gICAgICAgIH1cclxuICAgIC8vICAgICAgfVxyXG4gICAgLy8gICAgICAmLnN3aXBlci1zbGlkZS1hY3RpdmUge1xyXG4gICAgLy8gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2NhbGUoMSkgIWltcG9ydGFudDtcclxuICAgIC8vICAgICAgfVxyXG4gICAgLy8gICAgICAmLmNvbCB7XHJcbiAgICAvLyAgICAgICAgd2lkdGg6IDUwcmVtO1xyXG4gICAgLy8gICAgICB9XHJcbiAgICAvLyAgICB9XHJcbiAgICAvLyAgfVxyXG4gIH1cclxuICAvLyAgICYtaGl0ZW0ge1xyXG4gIC8vICAgICAuaW5uZXIge1xyXG4gIC8vICAgICAgIEBpbmNsdWRlIGltZ1BkKDIxNiwgMjg3KTtcclxuICAvLyAgICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgLy8gICAgICAgaW1nIHtcclxuICAvLyAgICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xyXG4gIC8vICAgICAgIH1cclxuICAvLyAgICAgfVxyXG4gIC8vICAgfVxyXG4gICYtc2xpZGVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi13cmFwcHBlciB7XHJcbiAgICAgIG1heC13aWR0aDogMTY0cmVtO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgcGFkZGluZzogMCAxLjVyZW07XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJi1yb3cge1xyXG4gICAgICAtLXJnOiAwO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgICAgLS1jZzogMS4ycmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIC0tY2c6IDAuOHJlbTtcclxuICAgICAgICAtLXJnOiAwLjhyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIGZsZXg6IHVuc2V0O1xyXG4gICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgZmxleDogMS41O1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICAgIGZsZXg6IHVuc2V0O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgLmFiLXNsaWRlci1pbiB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MCUpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6bnRoLWNoaWxkKDQpIHtcclxuICAgICAgICAgIC5hYi1zbGlkZXItaW4ge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzAlKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1pbiB7XHJcbiAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nUGQoMjE2LCAyODcpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYWJpIHtcclxuICAmLWNvbnRlbnQge1xyXG4gICAgLnQtZGVzIHtcclxuICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xyXG4gICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgIH1cclxuICB9XHJcbiAgJi1wb3Mge1xyXG4gICAgbWFyZ2luLXRvcDogOHJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gICAgfVxyXG4gICAgJi1saXN0IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgbWFyZ2luOiAwIC0yLjRyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMS4ycmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XHJcbiAgICAgIHBhZGRpbmc6IDAgMi40cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcclxuICAgICAgfVxyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICByb3ctZ2FwOiAwLjhyZW07XHJcbiAgICAgICAgLnQtZ3Ige1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotNDA7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIDE4MGRlZyxcclxuICAgICAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAgICAgI2Y1OGEyNSAxMDAlLFxyXG4gICAgICAgICAgICAjNzA2MWEzIDEwMCVcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAudC1kY29yIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDQlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnQtZGVzIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtcm93IHtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIC5jb2wtNSB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29sIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1nYWwge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB3aWR0aDogMTUwJTtcclxuICAgICAgcGFkZGluZy10b3A6IDE1MCU7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgICAgcmdiYSgyNTUsIDE5NywgMTExLCAwLjQ2KSAxMDAlXHJcbiAgICAgICk7XHJcblxyXG4gICAgICBmaWx0ZXI6IGJsdXIoMTByZW0pO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgei1pbmRleDogLTE7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgIHBhZGRpbmctdG9wOiA3MCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICNmMjJmYjAgMCUsXHJcbiAgICAgICAgcmdiYSgyNDUsIDEzOCwgMzcsIDApIDEwMCUsXHJcbiAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgZmlsdGVyOiBibHVyKDVyZW0pO1xyXG4gICAgfVxyXG4gICAgJi1saXN0IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgbWFyZ2luOiAwIC0xLjZyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg5MzBweCkge1xyXG4gICAgICAgIG1hcmdpbjogMCAtMC42cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxlZnQge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBwYWRkaW5nOiAwIDEuNnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDkzMHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwLjZyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmFiaS1nYWwtZ3Ige1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IDdyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtcmlnaHQge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBwYWRkaW5nOiAwIDEuNnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDkzMHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwLjZyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtZ3Ige1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICByb3ctZ2FwOiAzLjJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg5MzBweCkge1xyXG4gICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1pbiB7XHJcbiAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5hYnMge1xyXG4gICYtaGVhZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gIH1cclxuICAmLWltYWdlIHtcclxuICAgIC5pbm5lciB7XHJcbiAgICAgIEBpbmNsdWRlIGltZ1BkKDU5MiwgMzg0KTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBAaW5jbHVkZSBhZmZ0ZXIoJGNvbG9yLXByaSk7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICA2MGRlZyxcclxuICAgICAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgICAgICByZ2JhKDI1NSwgMTk3LCAxMTEsIDAuOCkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICB9XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ibG9jayB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTYlO1xyXG4gIH1cclxuICAmLXNsaWRlciB7XHJcbiAgICAucm93cyB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIC0tY2c6IDEuMnJlbTtcclxuICAgICAgICAtLXJnOiAxLjJyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zd2lwZXIge1xyXG4gICAgICAuc3dpcGVyLXNsaWRlIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIC5hYnMtaXRlbSB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XHJcbiAgICAgICAgICAuYWJzLWl0ZW0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWl0ZW0ge1xyXG4gICAgdHJhbnNpdGlvbjogMC44cyBlYXNlLWluLW91dDtcclxuICB9XHJcbiAgJi1jb250ZW50IHtcclxuICAgIG1hcmdpbi10b3A6IDMuMnJlbTtcclxuICAgIC50LWxpbmsge1xyXG4gICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnQtZGVzIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zZWMtZmJzIHtcclxuICAmLmZpeCB7XHJcbiAgICAuZmJzLXRkZXMge1xyXG4gICAgICBAaW5jbHVkZSBmb250LXByaTtcclxuICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICB9XHJcbiAgICAuZmJzLWNvbnRlbnQge1xyXG4gICAgICBwYWRkaW5nOiAzcmVtIDA7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIC5idG4ge1xyXG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5hYmIge1xyXG4gICYtaGVhZCB7XHJcbiAgICB3aWR0aDogNTByZW07XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIC50LWRlcyB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWJsb2NrIHtcclxuICAgIG1hcmdpbi10b3A6IDQuOHJlbTtcclxuICB9XHJcbiAgJi1zbGlkZXIge1xyXG4gICAgLnJvd3Mge1xyXG4gICAgICAtLWNnOiA4cmVtO1xyXG4gICAgICAtLXJnOiAwcmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgICAgLS1jZzogMi40cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuc3dpcGVyIHtcclxuICAgICAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDUpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaXRlbSB7XHJcbiAgICBoZWlnaHQ6IDMuMnJlbTtcclxuICAgIC5pbm5lciB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xyXG4gICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgZmlsdGVyOiB1bnNldDtcclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5hYm0ge1xyXG4gICYtcm93IHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAuY29sIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEwMDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBtYXgoMTAwMHB4KSB7XHJcbiAgICAgIHdpZHRoOiA1MHJlbTtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAuYnRuIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnQtZGVzIHtcclxuICAgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgIH1cclxuICB9XHJcbiAgJi1pbWFnZSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0xOHJlbTtcclxuICAgIEBpbmNsdWRlIG1heCgxMDAwcHgpIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiB1bnNldDtcclxuICAgICAgd2lkdGg6IDUwcmVtO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLmlubmVyIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTAlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgI2ZmN2JjYSAwJSxcclxuICAgICAgICAgIHJnYmEoMjU1LCAxOTcsIDExMSwgMC40NikgMTAwJVxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGZpbHRlcjogYmx1cigxMHJlbSk7XHJcbiAgICAgICAgdG9wOiA2NSU7XHJcbiAgICAgICAgbGVmdDogNzUlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICB9XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNDAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAgIHJnYmEoMjQ1LCAxMzgsIDM3LCAwKSAxMDAlLFxyXG4gICAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgICAgZmlsdGVyOiBibHVyKDVyZW0pO1xyXG4gICAgICB9XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNlciB7XHJcbiAgJi1oZWFkIHtcclxuICAgICYtYm4ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbiAgICAmLWJnIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBAaW5jbHVkZSBmdWxsO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGluY2x1ZGUgZnVsbDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgIDBkZWcsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuNSkgMCUsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuNSkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtcHkge1xyXG4gICAgICBtaW4taGVpZ2h0OiA2MHJlbTtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDByZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtY3RuIHtcclxuICAgICAgcGFkZGluZzogMi40cmVtO1xyXG4gICAgICB3aWR0aDogODRyZW07XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgd2lkdGg6IDU1cmVtO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICBAaW5jbHVkZSBmei00MDtcclxuICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGNvbG9yOiAjZjdmNmY1O1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDV2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1kZXMge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICAgIGNvbG9yOiAjZjJmMGVkO1xyXG4gICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgIH1cclxuICB9XHJcbiAgJi1vdXIge1xyXG4gICAgJi10YWIge1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgZ2FwOiAxMHJlbTtcclxuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDYwMHB4KSB7XHJcbiAgICAgICAgZ2FwOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtYnRuIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIGhlaWdodDogMC4xcmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci10aGlyZDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICAgIC50LXRleHQge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1mbCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJi10YWcge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBtYXJnaW46IDAgLTEuNnJlbTtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICByb3ctZ2FwOiAxLjJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICBtYXJnaW46IDAgLTAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgICAudC10YWcge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICAgIH4gLnQtbGluayB7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzEyMTExMDtcclxuICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMC40cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudC1saW5rIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbSA0LjhyZW07XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2M0YmZiYjtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTIxMTEwO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogIzEyMTExMDtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMC42cmVtIDEuNnJlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtcm93IHtcclxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgLS1yZzogMS4ycmVtO1xyXG4gICAgICAtLWNnOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgICAuY29sIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDg0MHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWl0IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcbiAgJi1pbiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2JiYzNjNDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICB9XHJcbiAgJi1pbWFnZSB7XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICBAaW5jbHVkZSBpbWdQZCgyMTYsIDM4NCk7XHJcbiAgICAgIEBpbmNsdWRlIGFmZnRlcigkY29sb3ItcHJpKTtcclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgIDYwZGVnLFxyXG4gICAgICAgICAgI2ZmN2JjYSAwJSxcclxuICAgICAgICAgIHJnYmEoMjU1LCAxOTcsIDExMSwgMC44KSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaW1nIHtcclxuICAgICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWJsb2NrIHtcclxuICAgIG1hcmdpbi10b3A6IDQuOHJlbTtcclxuICB9XHJcbiAgJi1jdG4ge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAyLjRyZW07XHJcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgIHBhZGRpbmc6IDEuNnJlbTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICBwYWRkaW5nOiAwLjhyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtdGFnIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW46IDAgLTAuNHJlbTtcclxuICAgIC50LXRhZyB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMC40cmVtO1xyXG5cclxuICAgICAgLnQtbGluayB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNHJlbSAxLjJyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICYudC1wb3Age1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEzOCwgMzksIDEzMiwgMC4xNSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudC1kZWFsIHtcclxuICAgICAgICAgIGNvbG9yOiAjM2I4YTAwO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSg1OSwgMTM4LCAwLCAwLjE1KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDYwMHB4KSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ib3gge1xyXG4gICAgbWFyZ2luLXRvcDogMS4ycmVtO1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICByb3ctZ2FwOiAwLjRyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4ycmVtO1xyXG4gICAgLnQtbGluayB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcclxuICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlnciB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAuaWdycyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMC40cmVtO1xyXG4gICAgICAgIC50LW51bSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgd2lkdGg6IDEuMnJlbTtcclxuICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xyXG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50LXRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTEzO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50LXByaWNlIHtcclxuICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICB9XHJcbiAgICAudC1nciB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWRlcyB7XHJcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XHJcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgfVxyXG59XHJcbi50cncge1xyXG4gICYtaGVhZCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMS4ycmVtO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMy4ycmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbiAgJi1pdCB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG4gICYtaW4ge1xyXG4gICAgbWluLWhlaWdodDogMzhyZW07XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHBhZGRpbmc6IDIuNHJlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgIGJhY2tncm91bmQ6ICNmN2Y2ZjU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgcGFkZGluZzogMS42cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLXRvcCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcclxuICB9XHJcbiAgJi10dCB7XHJcbiAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxLjJyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAyLjRyZW07XHJcbiAgfVxyXG4gICYtZGVzIHtcclxuICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICB9XHJcbiAgJi1zdyB7XHJcbiAgICAucm93cyB7XHJcbiAgICAgIC0tY2c6IDMuMnJlbTtcclxuICAgICAgLS1yZzogMDtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgIC0tY2c6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgICAuc3dpcGVyLXNsaWRlIHtcclxuICAgICAgICAmLmNvbCB7XHJcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtYXgoODQwcHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ib3Qge1xyXG4gICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgIC5pZ3Ige1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAgLmljb24tYXZ0IHtcclxuICAgICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgICB3aWR0aDogNS42cmVtO1xyXG4gICAgICAgIGhlaWdodDogNS42cmVtO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmlncnMge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAudC1uYW1lIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50LXRleHQge1xyXG4gICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmJsb2cge1xyXG4gICYtaGVhZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xyXG4gIH1cclxuICAmLWh0YWcge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIG1hcmdpbjogMCAtMS44cmVtO1xyXG4gICAgcm93LWdhcDogMS42cmVtO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICByb3ctZ2FwOiAxLjJyZW07XHJcbiAgICAgIG1hcmdpbjogMCAtMC40cmVtO1xyXG4gICAgfVxyXG4gICAgJi1pdGVtIHtcclxuICAgICAgcGFkZGluZzogMCAxLjhyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgICAudC1saW5rIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMS42cmVtIDEuMnJlbTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNjNGJmYmI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICBtaW4td2lkdGg6IDIwcmVtO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMS42cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ibG9jayB7XHJcbiAgICBtYXJnaW4tdG9wOiA0LjhyZW07XHJcbiAgfVxyXG4gICYtaW1hZ2Uge1xyXG4gICAgLmlubmVyIHtcclxuICAgICAgQGluY2x1ZGUgaW1nUGQoMjE2LCAzODQpO1xyXG4gICAgICBAaW5jbHVkZSBhZmZ0ZXIoJGNvbG9yLXNlY29uZCk7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgIDYwZGVnLFxyXG4gICAgICAgICAgI2ZmN2JjYSAwJSxcclxuICAgICAgICAgIHJnYmEoMjU1LCAxOTcsIDExMSwgMC44KSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBvcGFjaXR5OiAwLjQ7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaW1nIHtcclxuICAgICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXJvdyB7XHJcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgIC0tY2c6IDEuMnJlbTtcclxuICAgICAgLS1yZzogMS4ycmVtO1xyXG4gICAgfVxyXG4gICAgLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1pdGVtIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcbiAgJi1pbm5lciB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjYmJjM2M0O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIEBpbmNsdWRlIG1heCg5MDBweCkge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY3RuIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcm93LWdhcDogMC44cmVtO1xyXG4gICAgcGFkZGluZzogMi40cmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDkwMHB4KSB7XHJcbiAgICAgIHBhZGRpbmc6IDIuNHJlbSAxLjJyZW07XHJcbiAgICB9XHJcbiAgICAuaWdyIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZ2FwOiAwLjRyZW07XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIH1cclxuICAgIC50LXRhZyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogMC40cmVtIDEuMnJlbTtcclxuICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgIGNvbG9yOiAjOGEyNzg0O1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEzOSwgMzksIDEzMywgMC4xMik7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgIH1cclxuICAgIC50LWxpbmsge1xyXG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xyXG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgZm9udC1zaXplOiAyLjRyZW07XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGNvbG9yOiAjNDAzZDNhO1xyXG4gICAgICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudC10aW1lIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTM7XHJcbiAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgfVxyXG4gICAgLnQtZGVzIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XHJcbiAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYmxvZ2R0IHtcclxuICAmLWhlYWQge1xyXG4gICAgd2lkdGg6IDgwcmVtO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAuaWdyIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZ2FwOiAwLjhyZW07XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xyXG4gICAgICAudC10YWcge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgIGNvbG9yOiAjOGEyNzg0O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAwLjRyZW0gMS42cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDEzOCwgMzksIDEzMiwgMC4xNSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pZ3ItZ3Ige1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAgIC5pZ3JzIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGdhcDogMS42cmVtO1xyXG4gICAgICAgIC5pY29uLWF2dCB7XHJcbiAgICAgICAgICB3aWR0aDogNC44cmVtO1xyXG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQuOHJlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pZ3JjIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnQtdGltZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZ6LTE0O1xyXG4gICAgICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmlncnNjIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICAgIC5pLWxpbmsge1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgICB3aWR0aDogMy4ycmVtO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjJmMGVkO1xyXG4gICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEuOHJlbTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtcGltYWdlIHtcclxuICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICBAaW5jbHVkZSBpbWdQZCg2MDAsIDEyMDApO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1jb250ZW50IHtcclxuICAgIHdpZHRoOiA4MHJlbTtcclxuICAgIG1hcmdpbjogMCBhdXRvIDYuNHJlbTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIC5tb25hLWNvbnRlbnQge1xyXG4gICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYm90IHtcclxuICAgIHdpZHRoOiA4MHJlbTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgLmlnciB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAuaWdyYyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGdhcDogMS42cmVtO1xyXG4gICAgICAgIC50LXRleHQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pZ3JzYyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgZ2FwOiAwLjhyZW07XHJcbiAgICAgICAgICAuaS1saW5rIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzLjJyZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogMy4ycmVtO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmMmYwZWQ7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEuOHJlbTtcclxuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaWdyLXRhZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBnYXA6IDAuOHJlbTtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgLnQtbGluayB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgcGFkZGluZzogMC40cmVtIDEuNnJlbTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICNmN2Y2ZjU7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ibG9ncmwge1xyXG4gICYtYmxvY2sge1xyXG4gICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtc2xpZGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5yb3dzIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgIC0tY2c6IDEuMnJlbTtcclxuICAgICAgICAtLXJnOiAxLjJyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN3aXBlci1jb250cm9sLnBvc2kge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5mb3JtIHtcclxuICAmLWxpc3Qge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIG1hcmdpbjogMCAtMS4ycmVtO1xyXG4gICAgcm93LWdhcDogMi40cmVtO1xyXG5cclxuICAgIC5pcCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgJi54MiB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudC1sYWJlbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMi40cmVtO1xyXG4gICAgICAgIGhlaWdodDogNS42cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICAgIG91dGxpbmU6IHVuc2V0O1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgY29sb3I6ICM4Yzg3ODI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgICAgcGFkZGluZzogMS4ycmVtIDIuNHJlbTtcclxuICAgICAgICBvdXRsaW5lOiB1bnNldDtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE0cmVtO1xyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgIGNvbG9yOiAjOGM4NzgyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmlwLWZlaWxkIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICByaWdodDogMS41cmVtO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICB3aWR0aDogMi40cmVtO1xyXG4gICAgICAgICAgaGVpZ2h0OiAyLjRyZW07XHJcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICAgICAgICBkaXNwbGF5OiAtbW96LWZsZXg7XHJcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcclxuICAgICAgICAgIGRpc3BsYXk6IC1vLWZsZXg7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgLW1zLWFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWJ0biB7XHJcbiAgICBtYXJnaW4tdG9wOiA0LjhyZW07XHJcbiAgfVxyXG59XHJcbi5sb2dpbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgJi1oZWFkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgfVxyXG4gICYtd3JhcCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICBib3JkZXI6IDAuNXJlbSBzb2xpZCByZ2JhKDIzMiwgMjI4LCAyMjUsIDAuMyk7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcbiAgJi1yb3cge1xyXG4gICAgLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY3RuIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgfVxyXG4gICYtcHkge1xyXG4gICAgcGFkZGluZzogNi40cmVtO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgQGluY2x1ZGUgbWF4KDEwMDBweCkge1xyXG4gICAgICBwYWRkaW5nOiAyLjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaW1hZ2Uge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgLmlubmVyIHtcclxuICAgICAgQGluY2x1ZGUgaW1nUGQoNzYwLCA1MjApO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1yb3cge1xyXG4gICAgLS1yZzogMHJlbTtcclxuICB9XHJcbiAgJi1vdCB7XHJcbiAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgLnQtdGV4dCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICAgIC50LXR4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICBjb2xvcjogIzM1MzUzNTtcclxuICAgIH1cclxuICAgIC50LWxpbmsge1xyXG4gICAgICBjb2xvcjogIzhhMjc4NDtcclxuICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB9XHJcbiAgICAuaWdyIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAgLmJ0biB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5iZy1kY29yIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDQwJTtcclxuICBwYWRkaW5nLXRvcDogNDAlO1xyXG4gIGFuaW1hdGlvbjogdGV4dENvbG9yIDEwcyBlYXNlIGluZmluaXRlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHotaW5kZXg6IC0xO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIEBpbmNsdWRlIGJhY2tsaWdodCgwLCAwLCAxMHJlbSwgMSwgI2YyMmZiMCwgcmdiYSgyNTUsIDE5NywgMTExLCAwLjQ2KSwgMTBzKTtcclxuICAmLngyIHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogdW5zZXQ7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcclxuICB9XHJcbn1cclxuLmxlZyB7XHJcbiAgJi1oZWFkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgd2lkdGg6IDEwMHZ3O1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgaGVpZ2h0OiAwLjFyZW07XHJcbiAgICAgIGJvdHRvbTogMDtcclxuICAgICAgYmFja2dyb3VuZDogI2U4ZTRlMTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1wb3Mge1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgIGhlaWdodDogMHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1yb3cge1xyXG4gICAgLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaGxpc3Qge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGdhcDogMy4ycmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgIGdhcDogMS4ycmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWhpdGVtIHtcclxuICAgIC8vIHBhZGRpbmc6IDAgMS42cmVtO1xyXG4gICAgLnQtbGluayB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjZyZW07XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAwLjJyZW07XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci10aGlyZDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ibG9jayB7XHJcbiAgICBtYXJnaW4tdG9wOiA0LjVyZW07XHJcbiAgfVxyXG4gICYtdG9jIHtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICB0b3A6IDZyZW07XHJcbiAgICAudC10ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICB9XHJcbiAgICAmLWxpc3Qge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICByb3ctZ2FwOiAwLjhyZW07XHJcbiAgICB9XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgfVxyXG4gICAgJi1saW5rIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1jdGhlYWQge1xyXG4gICAgQGluY2x1ZGUgZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICByb3ctZ2FwOiAwLjhyZW07XHJcbiAgICAudC10aW1lIHtcclxuICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWNvbnRlbnQge1xyXG4gICAgbWFyZ2luLXRvcDogNnJlbTtcclxuICAgICYtd3JhcCB7XHJcbiAgICAgIC5tb25hLWNvbnRlbnQge1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCxcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLm5zZiB7XHJcbiAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG4gICYtcm93IHtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAuY29sIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1mb3JtIHtcclxuICAgICYtZ3Ige1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBnYXA6IDEuNnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgZ2FwOiAwLjhyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmlwIHtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIGlucHV0IHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgb3V0bGluZTogdW5zZXQ7XHJcbiAgICAgICAgICBoZWlnaHQ6IDQuNnJlbTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjYzRiZmJiO1xyXG4gICAgICAgICAgcGFkZGluZzogMCAxLjJyZW07XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICM4Yzg3ODI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuYnRuIHtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgICAgIGhlaWdodDogNC42cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAudC1kZXMge1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgLnQtbGluayB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLm9nYWwge1xyXG4gICYtaGVhZCB7XHJcbiAgICB3aWR0aDogOTVyZW07XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcbiAgJi10aXRsZSB7XHJcbiAgICB3aWR0aDogNjVyZW07XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgYXV0byAxLjZyZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAudC10aXRsZSB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNXZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtdGRlcyB7XHJcbiAgICBAaW5jbHVkZSBmei0xODtcclxuICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgLnQtdGV4dCB7XHJcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHJcbiAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi10YWcge1xyXG4gICAgbWFyZ2luLXRvcDogMTByZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0LjhyZW07XHJcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgIH1cclxuICAgICYtbGlzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIG1hcmdpbjogMCAtMS42cmVtO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIHJvdy1nYXA6IDEuNnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgICBtYXJnaW46IDAgLTAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1pdGVtIHtcclxuICAgICAgcGFkZGluZzogMCAxLjZyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgICAudC1saW5rIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZzogMS42cmVtIDQuOHJlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2M0YmZiYjtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAuNnJlbSAxLjZyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uc2VyZHQge1xyXG4gICYtaGVhZCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHJvdy1nYXA6IDAuNHJlbTtcclxuICAgIC50LXR4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gICAgfVxyXG4gICAgLnQtdGl0bGUge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWJuIHtcclxuICAgIG1hcmdpbi10b3A6IDQuOHJlbTtcclxuICAgIC5pbm5lciB7XHJcbiAgICAgIEBpbmNsdWRlIGltZ1BkKDYwMCwgMTIwMCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgaW1nIHtcclxuICAgICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXJvdyB7XHJcbiAgICAuY29sIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtd3JhcHBlciB7XHJcbiAgICBtYXJnaW4tdG9wOiA2cmVtO1xyXG4gIH1cclxuICAmLWN0ciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZ2FwOiAzLjJyZW07XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgJi1idG4ge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS42cmVtO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDAuMnJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItcHJpO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLW9wIHtcclxuICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAub3Vyc3Qtc2xpZGVyIHtcclxuICAgICAgLnN0LWN0biB7XHJcbiAgICAgICAgcGFkZGluZzogMS4ycmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5zd2lwZXItY29udHJvbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi10dCB7XHJcbiAgICBmb250LXNpemU6IDIuNHJlbTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtdGFibGUge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0aGVhZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0Ym9keSB7XHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmNmY1O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudC10eHQge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbSAxLjZyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ydyB7XHJcbiAgICAmLXN0YXIge1xyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGdhcDogMi40cmVtO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTYwO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgICAjZjIyZmIwIDAlLFxyXG4gICAgICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgICAgICM3MDYxYTMgMTAwJVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaWdycyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgICAgIC50LXR4dCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtcHJvIHtcclxuICAgICAgd2lkdGg6IDQycmVtO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIC5pZ3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZ2FwOiAxLjhyZW07XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAudC10ZXh0IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1LjdyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICB3aWR0aDogNC41cmVtO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZGxpbmUge1xyXG4gICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgIGhlaWdodDogMC40cmVtO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogI2U4ZTRlMTtcclxuICAgICAgICAgICYtaW5uZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLW1oIHtcclxuICAgICAgbWF4LWhlaWdodDogNTJyZW07XHJcbiAgICAgIHRyYW5zaXRpb246IDAuOHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgICAmLWJsIHtcclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICAgICB+IC5zZXJkdC1ydy1taCB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgfiAuYnRuLWRyb3AtdGV4dCB7XHJcbiAgICAgICAgICAgIC50LXR4dCB7XHJcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXBzIHtcclxuICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5idG4tZHJvcC10ZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAudC10eHQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIHdpZHRoOiAxLjZyZW07XHJcbiAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWl0IHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJi1weSB7XHJcbiAgICAgIHBhZGRpbmc6IDJyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAudC1kZXMge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAuOHJlbTtcclxuICAgICAgfVxyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAycmVtO1xyXG4gICAgICAgIC5pY29uLWF2dCB7XHJcbiAgICAgICAgICB3aWR0aDogN3JlbTtcclxuICAgICAgICAgIGhlaWdodDogN3JlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaWdycyB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIHJvdy1nYXA6IDFyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50LWdyIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgLnQtdHh0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZnotMTM7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1mb3JtIHtcclxuICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgICAuYnRuIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogIzQwM2QzYTtcclxuICAgICAgfVxyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcm93LWdhcDogMC44cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcclxuICAgICAgICAudC10eHQge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIG1pbi1oZWlnaHQ6IDE0cmVtO1xyXG4gICAgICAgICAgcGFkZGluZzogMS4ycmVtO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICBvdXRsaW5lOiB1bnNldDtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogIzhjODc4MjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnN0YXJzIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgZ2FwOiAwLjJyZW07XHJcbiAgICAgICAgICBpbnB1dDpudGgtY2hpbGQoMSk6Y2hlY2tlZCB+IGxhYmVsOm50aC1vZi10eXBlKC1uICsgMSksXHJcbiAgICAgICAgICBpbnB1dDpudGgtY2hpbGQoMik6Y2hlY2tlZCB+IGxhYmVsOm50aC1vZi10eXBlKC1uICsgMiksXHJcbiAgICAgICAgICBpbnB1dDpudGgtY2hpbGQoMyk6Y2hlY2tlZCB+IGxhYmVsOm50aC1vZi10eXBlKC1uICsgMyksXHJcbiAgICAgICAgICBpbnB1dDpudGgtY2hpbGQoNCk6Y2hlY2tlZCB+IGxhYmVsOm50aC1vZi10eXBlKC1uICsgNCksXHJcbiAgICAgICAgICBpbnB1dDpudGgtY2hpbGQoNSk6Y2hlY2tlZCB+IGxhYmVsOm50aC1vZi10eXBlKC1uICsgNSkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vYXNzZXRzL2ltYWdlcy9pY29uLXN0YXIyLnN2Zyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEuOXJlbTtcclxuICAgICAgICAgICAgd2lkdGg6IDEuOXJlbTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2Fzc2V0cy9pbWFnZXMvc3Rhci1vcGEuc3ZnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1iayB7XHJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgdG9wOiA2LjRyZW07XHJcblxyXG4gICAgJi1weSB7XHJcbiAgICAgIHBhZGRpbmc6IDJyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgLmJ0biB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtaWYge1xyXG4gICAgICBtYXJnaW46IDIuNHJlbSAwO1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICByb3ctZ2FwOiAyLjRyZW07XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjRyZW07XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAwLjhyZW07XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgd2lkdGg6IDJyZW07XHJcbiAgICAgICAgICBoZWlnaHQ6IDJyZW07XHJcbiAgICAgICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudC1nciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgIGdhcDogMS42cmVtO1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgcm93LWdhcDogMC40cmVtO1xyXG4gICAgICAgICAgLmlncnMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBnYXA6IDAuNHJlbTtcclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgLnQtdHh0IHtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogIzNiOGEwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAudC10eHQge1xyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZDZhNzdjO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnQtbGluayB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtcHJpY2Uge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICB9XHJcbiAgICAgIC50LW51bSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLW1pZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDMuMnJlbTtcclxuICAgIH1cclxuICAgICYtdmxzIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgcm93LWdhcDogMS42cmVtO1xyXG4gICAgfVxyXG4gICAgJi12bGkge1xyXG4gICAgICAuaW5uZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbSAzLjJyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMS42cmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgICB3aWR0aDogMy4ycmVtO1xyXG4gICAgICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlnciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIHJvdy1nYXA6IDAuOHJlbTtcclxuICAgICAgICAgIC50LXRleHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudC1kZXMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJvdCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIuMnJlbTtcclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcclxuICAgICAgfVxyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGdhcDogMS42cmVtO1xyXG4gICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICBnYXA6IDFyZW07XHJcbiAgICAgICAgICByb3ctZ2FwOiAxLjJyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIHdpZHRoOiAzLjhyZW07XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zZWMtc2VyIHtcclxuICAuZW1wdHktcHJvZHVjdCB7XHJcbiAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgIG1heC13aWR0aDogNTByZW07XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICByb3ctZ2FwOiAyLjRyZW07XHJcbiAgICBAaW5jbHVkZSBmei0xODtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgfVxyXG4gIC5idG4ubm9pYy5wcm9kdWN0LWVtcHR5LWJ1dHRvbiB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICB9XHJcbn1cclxuLmxlZy10b2Mge1xyXG4gICNlei10b2MtY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xyXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xyXG4gICAgICBib3JkZXI6IHVuc2V0O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgdWwgbGkge1xyXG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjNDAzZDNhO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBhOnZpc2l0ZWQge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmxlZy1jb250ZW50IHtcclxuICAubW9uYS1jb250ZW50IHtcclxuICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gIH1cclxufVxyXG4ucGFnZS1ia3Mge1xyXG4gIC53Yy1lbXB0eS1jYXJ0LW1lc3NhZ2Uge1xyXG4gICAgQGluY2x1ZGUgZnotMzI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgQGluY2x1ZGUgZm9udC1zZWNvbmQ7XHJcbiAgfVxyXG4gIC5pbWFnZS1lbXB0eS1jYXJ0IHtcclxuICAgIHdpZHRoOiA0MHJlbTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAuZW1wdHktY2FydCB7XHJcbiAgICAudGV4dCB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIG1heC13aWR0aDogNzZyZW07XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIuNHJlbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyB7XHJcbiAgLnNoaXBwaW5nX2FkZHJlc3Mge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gICAgICBjb2xvcjogIzQwM2QzYTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICBpbnB1dCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMi40cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIGhlaWdodDogNS42cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxICFpbXBvcnRhbnQ7XHJcbiAgICAgIG91dGxpbmU6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiIiwiLmFjZiB7XHJcbiAgJi1ibG9jayB7XHJcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gIH1cclxuICAmLXJvdyB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgcm93LWdhcDogNHJlbTtcclxuICAgIH1cclxuICAgIC5jb2wtMyB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICB3aWR0aDogY2FsYygoNCAvIDEyKSAqIDEwMCUpO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA1M3JlbTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb2wtOCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtcHkge1xyXG4gICAgcGFkZGluZzogMy4ycmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcm93LWdhcDogNHJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg4NDBweCkge1xyXG4gICAgICBwYWRkaW5nOiAzLjJyZW0gMi40cmVtO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgIHJvdy1nYXA6IDIuNHJlbTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtc2lkZSB7XHJcbiAgICAmLXRvcCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1hdnQge1xyXG4gICAgICB3aWR0aDogOHJlbTtcclxuICAgICAgaGVpZ2h0OiA4cmVtO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWlmIHtcclxuICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xyXG4gICAgICAudC1uYW1lIHtcclxuICAgICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiAjNDAzZDNhO1xyXG4gICAgICB9XHJcbiAgICAgIC50LXRleHQge1xyXG4gICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1taWQge1xyXG4gICAgICBwYWRkaW5nOiA0cmVtIDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICBib3JkZXItdG9wOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDIuNHJlbSAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWxpbmtzIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgcm93LWdhcDogMS4ycmVtO1xyXG4gICAgICAudC1saW5rIHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1wcm9maWxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgICYtaW1hZ2Uge1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgZ2FwOiAwLjRyZW07XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAuaW5uZXIge1xyXG4gICAgICAgIHdpZHRoOiA4cmVtO1xyXG4gICAgICAgIGhlaWdodDogOHJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDByZW07XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5pZ3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgIGdhcDogMC40cmVtO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAudC10ZXh0IHtcclxuICAgICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWZvcm0ge1xyXG4gICAgJi1idG4ge1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xyXG4gICAgICAmLmZpeCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBnYXA6IDAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXRhYmxlIHtcclxuICAgIHRhYmxlIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHRoZWFkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmNmY1O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAudC1oZWFkIHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50LWNvbDYge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50LWNvbDEge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAxNSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi50LWNvbDIge1xyXG4gICAgICAgICAgICAgIHdpZHRoOiAyMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICB0Ym9keSB7XHJcbiAgICAgICAgdHIge1xyXG4gICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZWZlZmVmO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcclxuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMS4ycmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRleHQpO1xyXG4gICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudC10b3RhbCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50LXN0YXR1cyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAmLnQtc3Mge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAjZDZhNzdjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudC1zY2gge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAjNDBhZTBjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudC1jYW5jZWwge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAjYmYyOTI5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudC1saW5rcyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtc2VyIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBnYXA6IDEuMnJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgJi1pbWFnZSB7XHJcbiAgICAgIHdpZHRoOiAxNXJlbTtcclxuICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICB3aWR0aDogMTByZW07XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgbWF4KDYwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDIwcmVtO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgICAuaW5uZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGltZ1BkKDEwMCwgMTUwKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1pbm5lciB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIHJvdy1nYXA6IDAuNHJlbTtcclxuICAgICAgLnQtbGluayB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGltZSB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICB9XHJcbiAgICAgIC50LWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtZHQge1xyXG4gICAgJi1oZWFkIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJ0biB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1wcm8ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgJi1saW5lIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBoZWlnaHQ6IDAuMXJlbTtcclxuICAgICAgYmFja2dyb3VuZDogMC4xcmVtO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjYWJhNWExO1xyXG4gICAgICB3aWR0aDogNjglO1xyXG4gICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgIHRvcDogNS42cmVtO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmMjJmYjA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGlzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIG1hcmdpbjogMCAtMS4ycmVtO1xyXG4gICAgfVxyXG4gICAgJi1jb2wge1xyXG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XHJcbiAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgfVxyXG4gICAgJi1ib3gge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHJvdy1nYXA6IDAuNHJlbTtcclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiA0LjhyZW07XHJcbiAgICAgICAgaGVpZ2h0OiA0LjhyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgIH1cclxuICAgICAgLmlkb3Qge1xyXG4gICAgICAgIHdpZHRoOiAwLjhyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAwLjhyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgIDE4MGRlZyxcclxuICAgICAgICAgICNmMjJmYjAgMCUsXHJcbiAgICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgICAjNzA2MWEzIDEwMCVcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICAgIC5pZ3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnQtdGltZSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY29udGVudCB7XHJcbiAgICBtYXJnaW4tdG9wOiA0LjhyZW07XHJcbiAgICAudC1nciB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIC50LXR4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAmLnQtc3Mge1xyXG4gICAgICAgICAgY29sb3I6ICNkNmE3N2M7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudC1zY2gge1xyXG4gICAgICAgICAgY29sb3I6ICM0MGFlMGM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudC1jYW5jZWwge1xyXG4gICAgICAgICAgY29sb3I6ICNiZjI5Mjk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaWZzIHtcclxuICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcclxuICAgICYtbGlzdCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgcm93LWdhcDogMi40cmVtO1xyXG4gICAgfVxyXG4gICAgJi1pbm5lciB7XHJcbiAgICAgIHBhZGRpbmc6IDFyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICBnYXA6IDEuMnJlbTtcclxuICAgIH1cclxuICAgICYtaW1hZ2Uge1xyXG4gICAgICB3aWR0aDogMTVyZW07XHJcbiAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nUGQoMTAwLCAxNTApO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWN0biB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGdhcDogMi40cmVtO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBnYXA6IDAuOHJlbTtcclxuICAgICAgLnQtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGltZSxcclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWZpbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICBwYWRkaW5nLXRvcDogMS42cmVtO1xyXG4gICAgYm9yZGVyLXRvcDogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAmLWl0ZW0ge1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcclxuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMDtcclxuICAgICAgICBib3JkZXItdG9wOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgfVxyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIC50LXRleHQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIH1cclxuICAgICAgICAudC10eHQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWN1cyB7XHJcbiAgICBtYXJnaW4tdG9wOiA0LjhyZW07XHJcbiAgICAmLXB5IHtcclxuICAgICAgcGFkZGluZzogNHJlbTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtdHQge1xyXG4gICAgICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY3VzIHtcclxuICAgICYtbGlzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIG1hcmdpbjogMCAtMXJlbTtcclxuICAgICAgcm93LWdhcDogMS42cmVtO1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9XHJcbiAgICAmLWNvbCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMXJlbTtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJveCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIHJvdy1nYXA6IDAuOHJlbTtcclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgfVxyXG4gICAgICAudC10eHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zZWMtYWNmLXBhc3Mge1xyXG4gIC5hY2YtZm9ybSB7XHJcbiAgICB3aWR0aDogMzhyZW07XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5hY2YtZm9ybS1idG4uZml4IHtcclxuICAgIGp1c3RpZnktY29udGVudDogdW5zZXQ7XHJcbiAgICAuYnRuIHtcclxuICAgICAgZmxleDogMTtcclxuICAgICAgbWluLXdpZHRoOiB1bnNldDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQG1peGluIG1xKCRtZWRpYSkge1xyXG4gIEBpZiAkbWVkaWEgPT0geHhzIHtcclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbiAgQGlmICRtZWRpYSA9PSB4cyB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRtZWRpYSA9PSBzbSB7XHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWVkaWEgPT0gbWQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJG1lZGlhID09IGxnIHtcclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkbWVkaWEgPT0gbm9uLXJldGluYSB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvOiAxKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJG1lZGlhID09IHJldGluYSB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAjeyRtZWRpYX1weCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEknbiBub3QgZ29vZCBhdCBtYXRoLCB0b29rIG1lIGxvbmdlciB0aGFuIGl0IHNob3VsZCB0byBmaWd1cmUgb3V0IHRoaXMgbWl4aW5cclxuQG1peGluIG1hc29ucnkoJGNvbHVtbnMsICRndXR0ZXItc2l6ZSkge1xyXG4gICRjb2x1bW4td2lkdGg6IDEwMCUgLyAkY29sdW1ucyAtICRndXR0ZXItc2l6ZSAhZ2xvYmFsO1xyXG4gICRndXR0ZXI6ICgxMDAgLSAoJGNvbHVtbnMgKiAkY29sdW1uLXdpZHRoKSkgLyAoJGNvbHVtbnMgLSAxKSAhZ2xvYmFsO1xyXG5cclxuICAubWFzb25yeSB7XHJcbiAgICBtYXJnaW46ICRndXR0ZXIgJGd1dHRlcjtcclxuXHJcbiAgICAuZ3JpZC1zaXplciB7XHJcbiAgICAgIHdpZHRoOiAkY29sdW1uLXdpZHRoO1xyXG4gICAgfVxyXG5cclxuICAgIC5ndXR0ZXItc2l6ZXIge1xyXG4gICAgICB3aWR0aDogJGd1dHRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuaXRlbSB7XHJcbiAgICAgIHdpZHRoOiAkY29sdW1uLXdpZHRoO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC42cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBUaGlzIGlzIHdoZXJlIHRoZSBtYWdpYyBoYXBwZW5zXHJcbi8vIHNldCB0aGUgJGd1dHRlci13aWR0aCAlXHJcbiRndXR0ZXItd2lkdGg6IDE7XHJcblxyXG4vLyBzZXQgbnVtYmVyIG9mIGNvbHVtbnMgZm9yIGJyZWFrcG9udHNcclxuQGluY2x1ZGUgbXEoeHhzKSB7XHJcbiAgQGluY2x1ZGUgbWFzb25yeSgyLCAkZ3V0dGVyLXdpZHRoKTsgLy8gMiBjb2x1bW5zXHJcbn1cclxuXHJcbkBpbmNsdWRlIG1xKHhzKSB7XHJcbiAgQGluY2x1ZGUgbWFzb25yeSgzLCAkZ3V0dGVyLXdpZHRoKTsgLy8gMyBjb2x1bW5zXHJcbn1cclxuXHJcbkBpbmNsdWRlIG1xKHNtKSB7XHJcbiAgQGluY2x1ZGUgbWFzb25yeSgzLCAkZ3V0dGVyLXdpZHRoKTsgLy8gNCBjb2x1bW5zXHJcbn1cclxuXHJcbkBpbmNsdWRlIG1xKG1kKSB7XHJcbiAgQGluY2x1ZGUgbWFzb25yeSgzLCAkZ3V0dGVyLXdpZHRoKTsgLy8gNSBjb2x1bW5zXHJcbn1cclxuXHJcbkBpbmNsdWRlIG1xKGxnKSB7XHJcbiAgQGluY2x1ZGUgbWFzb25yeSgzLCAkZ3V0dGVyLXdpZHRoKTsgLy8gNiBjb2x1bW5zXHJcbn1cclxuLmZhbmN5Ym94LWltYWdlLFxyXG4uZmFuY3lib3gtc3BhY2ViYWxsIHtcclxuICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNnJlbTtcclxuICB9XHJcbn1cclxuQG1peGluIG1hc29ucnkyKCRjb2x1bW5zLCAkZ3V0dGVyLXNpemUpIHtcclxuICAkY29sdW1uLXdpZHRoOiAxMDAlIC8gJGNvbHVtbnMgLSAkZ3V0dGVyLXNpemUgIWdsb2JhbDtcclxuICAkZ3V0dGVyOiAoMTAwIC0gKCRjb2x1bW5zICogJGNvbHVtbi13aWR0aCkpIC8gKCRjb2x1bW5zIC0gMSkgIWdsb2JhbDtcclxuXHJcbiAgLm1hc29ucnkyIHtcclxuICAgIG1hcmdpbjogJGd1dHRlciAkZ3V0dGVyO1xyXG5cclxuICAgIC5ncmlkLXNpemVyIHtcclxuICAgICAgd2lkdGg6ICRjb2x1bW4td2lkdGg7XHJcbiAgICB9XHJcblxyXG4gICAgLmd1dHRlci1zaXplciB7XHJcbiAgICAgIHdpZHRoOiAkZ3V0dGVyO1xyXG4gICAgfVxyXG4gICAgLml0ZW0ge1xyXG4gICAgICB3aWR0aDogJGNvbHVtbi13aWR0aDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIFRoaXMgaXMgd2hlcmUgdGhlIG1hZ2ljIGhhcHBlbnNcclxuLy8gc2V0IHRoZSAkZ3V0dGVyLXdpZHRoICVcclxuJGd1dHRlci13aWR0aDogMS41O1xyXG5cclxuLy8gc2V0IG51bWJlciBvZiBjb2x1bW5zIGZvciBicmVha3BvbnRzXHJcbkBpbmNsdWRlIG1xKHh4cykge1xyXG4gIEBpbmNsdWRlIG1hc29ucnkyKDIsICRndXR0ZXItd2lkdGgpOyAvLyAyIGNvbHVtbnNcclxufVxyXG5cclxuQGluY2x1ZGUgbXEoeHMpIHtcclxuICBAaW5jbHVkZSBtYXNvbnJ5MigzLCAkZ3V0dGVyLXdpZHRoKTsgLy8gMyBjb2x1bW5zXHJcbn1cclxuXHJcbkBpbmNsdWRlIG1xKHNtKSB7XHJcbiAgQGluY2x1ZGUgbWFzb25yeTIoMywgJGd1dHRlci13aWR0aCk7IC8vIDQgY29sdW1uc1xyXG59XHJcblxyXG5AaW5jbHVkZSBtcShtZCkge1xyXG4gIEBpbmNsdWRlIG1hc29ucnkyKDMsICRndXR0ZXItd2lkdGgpOyAvLyA1IGNvbHVtbnNcclxufVxyXG5cclxuQGluY2x1ZGUgbXEobGcpIHtcclxuICBAaW5jbHVkZSBtYXNvbnJ5Mig0LCAkZ3V0dGVyLXdpZHRoKTsgLy8gNiBjb2x1bW5zXHJcbn1cclxuIiwiLnBhZ2Utc3R5bGlzdCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4uc2VjLXN0bCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvdHRvbTogNSU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XHJcbiAgICB3aWR0aDogMTIwJTtcclxuICAgIHBhZGRpbmctdG9wOiBjYWxjKDEyMCUgLyAxLjIpO1xyXG4gICAgYmFja2dyb3VuZDogI2Y3ZjZmNTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEyMCU7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIEBpbmNsdWRlIG1heCg5NzBweCkge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uc3RsIHtcclxuICAmLWhlYWQge1xyXG4gICAgd2lkdGg6IDYwcmVtO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgQGluY2x1ZGUgbWF4KDk3MHB4KSB7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAudC10YWcge1xyXG4gICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgY29sb3I6ICMxMjExMTA7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gICAgfVxyXG4gICAgLnQtdGl0bGUge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDZ2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi1nYWwge1xyXG4gICAgd2lkdGg6IGNhbGMoKDggLyAxMikgKiAxMDAlKTtcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgQGluY2x1ZGUgbWF4KDk3MHB4KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJi1ibG9jayB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0xNSU7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg5NzBweCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pbm5lci1pbWcge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAuaW5uZXIge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLXJvdyB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIG1hcmdpbjogMCAtMS42cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICBtYXJnaW46IDAgLTAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1sZWZ0IHtcclxuICAgICAgcGFkZGluZzogMCAxLjZyZW07XHJcbiAgICAgIHdpZHRoOiBjYWxjKCgzIC8gOCkgKiAxMDAlKTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAwLjRyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmlnciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGdhcDogMy4ycmVtO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgICAgZ2FwOiAwLjhyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbm5lci1pbWcge1xyXG4gICAgICAgICAgJi54MiB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCgyIC8gMykgKiAxMDAlKTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLW1pZCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMS42cmVtO1xyXG4gICAgICB3aWR0aDogY2FsYygoMyAvIDgpICogMTAwJSk7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMC40cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5pZ3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBnYXA6IDMuMnJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1yaWdodCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMS42cmVtO1xyXG4gICAgICB3aWR0aDogY2FsYygoMiAvIDcpICogMTAwJSk7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMC40cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5pZ3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBnYXA6IDMuMnJlbTtcclxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uY253IHtcclxuICAmLXJvdyB7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLmNvbCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg5NzBweCkge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBtYXgoOTcwcHgpIHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgLnQtZGVzIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtaW1hZ2Uge1xyXG4gICAgLmlubmVyIHtcclxuICAgICAgQGluY2x1ZGUgaW1nUGQoMzM0LCA1OTIpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLmh1Z2Uge1xyXG4gICYtaGVhZCB7XHJcbiAgICB3aWR0aDogNzRyZW07XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIC50LXRpdGxlIHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiA1dnc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1ibG9jayB7XHJcbiAgICBtYXJnaW4tdG9wOiA0LjhyZW07XHJcbiAgfVxyXG4gICYtcm93IHtcclxuICAgIC0tY2c6IDNyZW07XHJcbiAgICAtLXJnOiAwcmVtO1xyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgIC0tY2c6IDIuNHJlbTtcclxuICAgICAgLS1yZzogMi40cmVtO1xyXG5cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYm94IHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC5pY29uIHtcclxuICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgIHdpZHRoOiAxMHJlbTtcclxuICAgICAgaGVpZ2h0OiAxMHJlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDZyZW07XHJcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmlnciB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiAjNDAzZDNhO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudC10eHQge1xyXG4gICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5mYnMge1xyXG4gICYtcm93IHtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIC0tcmc6IDByZW07XHJcbiAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgLy8gLS1yZzogMi40cmVtO1xyXG4gICAgICAuY29sIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi10ZGVzIHtcclxuICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgIG1hcmdpbi1ib3R0b206IDMuMnJlbTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2Vjb25kO1xyXG4gIH1cclxuICAmLXB5IHtcclxuICAgIHBhZGRpbmc6IDAgOHJlbTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgcGFkZGluZzogMCAyLjRyZW07XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMCU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZmFjZDY7XHJcbiAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWNvbnRlbnQge1xyXG4gICAgcGFkZGluZzogNnJlbSAwO1xyXG4gICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgIHBhZGRpbmc6IDIuNHJlbSAwO1xyXG4gICAgfVxyXG4gICAgLnQtdGl0bGUge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDV2dztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWlnciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIC50LXRleHQge1xyXG4gICAgICBAaW5jbHVkZSBmei0yNDtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgIH1cclxuICAgIC50LWRlcyB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWltYWdlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICBtYXJnaW4tdG9wOiAtNnJlbTtcclxuICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcGFkZGluZy10b3A6IDEwMCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZjhlOGVlO1xyXG4gICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgY2xpcC1wYXRoOiBjaXJjbGUoNTAlIGF0IDUwJSA5NCUpO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICB3aWR0aDogMzRyZW07XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLm91cnN0IHtcclxuICAmLWhlYWQge1xyXG4gICAgd2lkdGg6IDYwcmVtO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAudC10aXRsZSB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNnZ3O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtc3cge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLnJvd3Mge1xyXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgICAgLS1jZzogMS4ycmVtO1xyXG4gICAgICAgIC0tcmc6IDByZW07XHJcbiAgICAgIH1cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg4NzBweCkge1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtYmxvY2sge1xyXG4gICAgbWFyZ2luLXRvcDogNC44cmVtO1xyXG4gIH1cclxufVxyXG4uc3Qge1xyXG4gICYtaW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAuc3QtaW1hZ2Uge1xyXG4gICAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLWltYWdlIHtcclxuICAgIC5pbm5lciB7XHJcbiAgICAgIEBpbmNsdWRlIGltZ1BkKDM3NiwgMjgwKTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICB6LWluZGV4OiAyO1xyXG4gICAgICBAaW5jbHVkZSBhZmZ0ZXIoJGNvbG9yLXByaSk7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICA2MGRlZyxcclxuICAgICAgICAgICNmZjdiY2EgMCUsXHJcbiAgICAgICAgICByZ2JhKDI1NSwgMTk3LCAxMTEsIDAuOCkgMTAwJVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGluY2x1ZGUgZnVsbDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgICByZ2JhKDAsIDAsIDAsIDApIDcwLjM1JSxcclxuICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC42KSAxMDAlXHJcbiAgICAgICAgKTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICB9XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1pdGVtIHtcclxuICAgICYuc3QtZGlzYWJsZSB7XHJcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAuc3QtaW5uZXIge1xyXG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY3RuIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHBhZGRpbmc6IDIuNHJlbTtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgcGFkZGluZzogMS4ycmVtO1xyXG4gICAgfVxyXG4gICAgLnQtbGluayB7XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMTtcclxuICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuaWdyIHtcclxuICAgICAgcGFkZGluZzogMC40cmVtIDEuMnJlbTtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZ2FwOiAwLjhyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgYmFja2dyb3VuZDogI2Y3ZjZmNTtcclxuICAgICAgbWFyZ2luLXRvcDogMC40cmVtO1xyXG4gICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNHJlbTtcclxuICAgICAgICBnYXA6IDAuNHJlbTtcclxuICAgICAgfVxyXG4gICAgICAuaWdycyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBnYXA6IDAuNHJlbTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAudC1udW0ge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgd2lkdGg6IDEuMnJlbTtcclxuICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLndzYXkge1xyXG4gICYtc3cge1xyXG4gICAgLnJvd3Mge1xyXG4gICAgICAtLWNnOiA2cmVtO1xyXG4gICAgICAtLXJnOiAwO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgICAgLS1jZzogMi40cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIG1heCg2MDBweCkge1xyXG4gICAgICAgIC0tY2c6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgICAuY29sIHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg0MDBweCkge1xyXG4gICAgICAgICAgd2lkdGg6IDcwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1oZWFkIHtcclxuICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuICB9XHJcbiAgJi1pbm5lciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgbWFyZ2luOiAwIC0xcmVtO1xyXG4gICAgcm93LWdhcDogMi40cmVtO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gIH1cclxuICAmLWltYWdlIHtcclxuICAgIHBhZGRpbmc6IDAgMXJlbTtcclxuICAgIHdpZHRoOiBjYWxjKCgyLjYgLyA2KSAqIDEwMCUpO1xyXG4gICAgQGluY2x1ZGUgbWF4KDk1MHB4KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgLmlubmVyIHtcclxuICAgICAgQGluY2x1ZGUgaW1nUGQoMzE5LCAyMzkpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW0gMHB4IDBweCAxLjJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg5NTBweCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtY29udGVudCB7XHJcbiAgICBwYWRkaW5nOiAwIDFyZW07XHJcbiAgICB3aWR0aDogY2FsYygoMy40IC8gNikgKiAxMDAlKTtcclxuICAgIEBpbmNsdWRlIG1heCg5NTBweCkge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgJi1ibG9jayB7XHJcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gIH1cclxuICAmLWlnciB7XHJcbiAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIC5pY29uIHtcclxuICAgICAgd2lkdGg6IDMuMnJlbTtcclxuICAgICAgaGVpZ2h0OiAzLjJyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgfVxyXG4gICAgLnQtZGVzIHtcclxuICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDEuNnJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5pZ3ItYm90IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgcGFkZGluZy10b3A6IDIuNHJlbTtcclxuICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgLmlnci1zdGFyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAwLjRyZW07XHJcbiAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgd2lkdGg6IDEuMnJlbTtcclxuICAgICAgICAgIGhlaWdodDogMS4ycmVtO1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50LW5hbWUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgfVxyXG4gICAgICAudC10ZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLm1jYXJ0LWJsb2NrIHtcclxuICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbn1cclxuLnNlYy1ia3Mge1xyXG4gIC5zaWRlLWZpeGVkLXdyYXAge1xyXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xyXG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xyXG4gICAgICB0b3A6IDdyZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5ia3Mge1xyXG4gICYtcm93IHtcclxuICAgIC5jb2wtOCB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbC00IHtcclxuICAgICAgQGluY2x1ZGUgbWF4KDExOTlweCkge1xyXG4gICAgICAgIHdpZHRoOiA0MHJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmZpZWxkc2V0IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcbiAgLy8gICAmLXNlbGVjdC1zZXJ2aWNlIHtcclxuICAvLyAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgLy8gICB9XHJcbiAgLy8gICAmLXNlbGVjdC1zdHlsaXN0IHtcclxuICAvLyAgICAgZGlzcGxheTogbm9uZTtcclxuICAvLyAgIH1cclxuICAvLyAgICYtc2VsZWN0LXRpbWUge1xyXG4gIC8vICAgICBkaXNwbGF5OiBub25lO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgJi1zZWxlY3QtaWYge1xyXG4gIC8vICAgICBkaXNwbGF5OiBub25lO1xyXG4gIC8vICAgfVxyXG4gICYtaWZzIHtcclxuICAgICYtcGF5IHtcclxuICAgICAgcGFkZGluZzogMnJlbTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxLjJyZW07XHJcbiAgICAgIC5yZWNoZWNrLWl0ZW0ge1xyXG4gICAgICAgIGdhcDogMS4ycmVtO1xyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIC5tY2FydC1ibG9jay1oZWFkIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5tY2FydC1ibG9jay1oZWFkIHtcclxuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiAjNDAzZDNhO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIH1cclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xyXG4gICAgICAgIGNvbG9yOiAjNDAzZDNhO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIH1cclxuICAgICAgLm1jYXJ0LWJsb2NrLWNvbGxhcHNlIHtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI2JpbGxpbmdfY291bnRyeV9maWVsZCB7XHJcbiAgICAgIC53b29jb21tZXJjZS1pbnB1dC13cmFwcGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGhlaWdodDogNS42cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgb3V0bGluZTogdW5zZXQgIWltcG9ydGFudDtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMi40cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEuOHJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAjYmlsbGluZ19jdXN0b21fZmllbGRfZmllbGQge1xyXG4gICAgICB3aWR0aDogMTByZW0gIWltcG9ydGFudDtcclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNnJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICNiaWxsaW5nX3Bob25lX2ZpZWxkIHtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTByZW0pICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMi40cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNy45cmVtKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogLTdyZW07XHJcbiAgICAgIH1cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdW5zZXQgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzX19maWVsZC13cmFwcGVyIHtcclxuICAgICAgLS1jZzogMDtcclxuICAgICAgLS1yZzogMDtcclxuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcclxuXHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgICAgICAgY29sb3I6ICM0MDNkM2E7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICB0ZXh0YXJlYSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbSAyLjRyZW0gIWltcG9ydGFudDtcclxuICAgICAgICBvdXRsaW5lOiB1bnNldCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDE0cmVtICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgIGNvbG9yOiAjOGM4NzgyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50LXRleHQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG4gICAgJi1jdXMge1xyXG4gICAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIC5mb3JtLWxpc3Qge1xyXG4gICAgICAgIG1hcmdpbjogdW5zZXQ7XHJcbiAgICAgICAgLmlwIGlucHV0IHtcclxuICAgICAgICAgIHBhZGRpbmc6IDAgMi40cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBoZWlnaHQ6IDUuNnJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICBvdXRsaW5lOiB1bnNldCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjhyZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gICAgICAgICAgY29sb3I6ICM0MDNkM2E7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWRpcyB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAgIC5pZ3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgZ2FwOiAzLjJyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgIHdpZHRoOiAxMnJlbTtcclxuICAgICAgICAgIG1pbi13aWR0aDogdW5zZXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pZ3ItaXAge1xyXG4gICAgICAgICAgZmxleDogMTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtbm90ZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAgIC5mb3JtLWxpc3Qge1xyXG4gICAgICAgIHRleHRhcmVhIHtcclxuICAgICAgICAgIHBhZGRpbmc6IDIuNHJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtbG9jYSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAgIC5pZ3JzIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDEuOHJlbSAxLjZyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIHdpZHRoOiAxLjZyZW07XHJcbiAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcclxuICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB0b3A6IDAuNHJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlnciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIGdhcDogMC40cmVtO1xyXG4gICAgICAgICAgLnQtdHh0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50LWdyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgICAgZ2FwOiAycmVtO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnQtZGVzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgICAgZ2FwOiAycmVtO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcclxuICAgICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMnJlbTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwLjFyZW07XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjYzRiZmJiO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5pZ3ItY3RyIHtcclxuICAgICAgICBtYXJnaW46IDIuNHJlbSAwO1xyXG4gICAgICAgIC5pcC1jdHIge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgIGdhcDogMy4ycmVtO1xyXG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGdhcDogMS4ycmVtO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi1pdCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgLnQtdHh0IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWNvbmQ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5kaXNhYmxlIHtcclxuICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudC10eHQge1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICAgICAgICBjb2xvcjogI2FiYTVhMTtcclxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEuNnJlbSA0LjhyZW07XHJcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTByZW07XHJcbiAgICAgICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2M0YmZiYjtcclxuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC42cmVtIDEuNnJlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXNlbGVjdCB7XHJcbiAgICAmLWhzIHtcclxuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgIH1cclxuICAgICYtaGwge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBnYXA6IDEuNnJlbTtcclxuICAgICAgcGFkZGluZzogMC40cmVtO1xyXG4gICAgICBtYXgtaGVpZ2h0OiA1MHJlbTtcclxuICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIH1cclxuICAgICYtaGIge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XHJcbiAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAudC10ZXh0IHtcclxuICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50LXRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XHJcbiAgICAgICAgcGFkZGluZzogMS42cmVtIDIuNHJlbTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmdWxsO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgICAjZjIyZmIwIDAlLFxyXG4gICAgICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgICAgICM3MDYxYTMgMTAwJVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIG1hcmdpbjogLTAuMnJlbTtcclxuICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYtdGltZSB7XHJcbiAgICBtYXgtd2lkdGg6IDcwcmVtO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAmLXNsaWRlIHtcclxuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgICAuaWdyLWZsZXgge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gICAgICAgIC50LXRleHQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlnci1jb250cm9sIHtcclxuICAgICAgICAgIC5zd2lwZXItY29udHJvbC1idG4ge1xyXG4gICAgICAgICAgICBib3JkZXI6IHVuc2V0O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1saXN0IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZ2FwOiA0LjZyZW07XHJcbiAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgIGdhcDogMi40cmVtO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtYm94IHtcclxuICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGdhcDogMC44cmVtO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAuYm94LXRpbWUge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgICAgICNmMjJmYjAgMCUsXHJcbiAgICAgICAgICAgICNmNThhMjUgMTAwJSxcclxuICAgICAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgLnQtbnVtIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuZGlzYWJsZSB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgIH1cclxuICAgICAgLmJveC10aW1lIHtcclxuICAgICAgICB3aWR0aDogNnJlbTtcclxuICAgICAgICBoZWlnaHQ6IDZyZW07XHJcbiAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAudC1udW0ge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5ib3gtZGF5IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXN0eSB7XHJcbiAgICAmLXJvdyB7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg4MDBweCkge1xyXG4gICAgICAgIC0tcmc6IDEuMnJlbTtcclxuICAgICAgICAtLWNnOiAxLjJyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmNvbCB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBtYXgoNjAwcHgpIHtcclxuICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWdyIHtcclxuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgfVxyXG4gICAgICAudC10eHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtaXQge1xyXG4gICAgICAmLnJlY2hlY2staXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgJi5kaXNhYmxlIHtcclxuICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEpO1xyXG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgIC5zdC1pdGVtIHtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5zdC1jdG4ge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbTtcclxuICAgICAgfVxyXG4gICAgICAuc3QtaXRlbSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ1bGw7XHJcbiAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgIG1hcmdpbjogLTAuM3JlbTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgICAjZjIyZmIwIDAlLFxyXG4gICAgICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgICAgICM3MDYxYTMgMTAwJVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNHJlbTtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLW92dyB7XHJcbiAgICAmLXB5IHtcclxuICAgICAgcGFkZGluZzogMnJlbTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBtaW4taGVpZ2h0OiA1MHJlbTtcclxuICAgICAgLnQtaGVhZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcclxuICAgICAgfVxyXG4gICAgICAuZ3ItYnRuIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcm93LWdhcDogMC42cmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJ0biB7XHJcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICB9XHJcbiAgICAmLXRvcCB7XHJcbiAgICAgIC5pZ3JzIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZ2FwOiAxLjZyZW07XHJcbiAgICAgICAgLmlnciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICAgICAgICAudC1nciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGdhcDogMC40cmVtO1xyXG4gICAgICAgICAgICAudC10ZXh0IHtcclxuICAgICAgICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnQtdGltZSB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZnotMTM7XHJcbiAgICAgICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50LXByaWNlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5pZ3ItYm90IHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxLjZyZW07XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMC4xcmVtIHNvbGlkICNlOGU0ZTE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtbWlkIHtcclxuICAgICAgLmlncnMge1xyXG4gICAgICAgIC5pZ3Ige1xyXG4gICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBnYXA6IDEuNnJlbTtcclxuICAgICAgICAgIC5pY29uLWF2dCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgICAgICB3aWR0aDogNC44cmVtO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQuOHJlbTtcclxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50LWdyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5pZ3ItdGltZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xyXG4gICAgICAgIC5pZ3Ige1xyXG4gICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBnYXA6IDEuNnJlbTtcclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0LjhyZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogNC44cmVtO1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZThlNGUxO1xyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudC1nciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudC10ZXh0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudC10aW1lIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZnotMTM7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAmLXNsIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcbiAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgICYtc2xpZGVyIHtcclxuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgICAgLnJvd3Mge1xyXG4gICAgICAgIC0tcmc6IDEuNnJlbTtcclxuICAgICAgICAtLWNnOiAxLjZyZW07XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgLnN3aXBlciB7XHJcbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XHJcbiAgICAgICAgICAmLmNvbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtdGFnaSB7XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAudC10YWcge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlY29uZDtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudC10YWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxLjZyZW0gNC44cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjYzRiZmJiO1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgIGNvbG9yOiAjNjk2NDYwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgICAgcGFkZGluZzogMC42cmVtIDEuNnJlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1wb3Age1xyXG4gICAgJi1saXN0IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgcm93LWdhcDogMS42cmVtO1xyXG4gICAgfVxyXG4gICAgJi1pdCB7XHJcbiAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAucmVjaGVjay10ZXh0IHtcclxuICAgICAgICAgIC5pY29uLmljb24tY2hlY2sge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgMTgwZGVnLFxyXG4gICAgICAgICAgICAgICNmMjJmYjAgMCUsXHJcbiAgICAgICAgICAgICAgI2Y1OGEyNSAxMDAlLFxyXG4gICAgICAgICAgICAgICM3MDYxYTMgMTAwJVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5pY29uLmljb24tcGx1cyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICAgIC5yZWNoZWNrLXRleHQge1xyXG4gICAgICAgICAgICAuaWNvbi5pY29uLXJlbW92ZSB7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pY29uLmljb24tY2hlY2sge1xyXG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmJrcy1wb3AtaW4ge1xyXG4gICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2YyMmZiMCAwJSwgI2Y1OGEyNSAxMDAlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtaW4ge1xyXG4gICAgICBwYWRkaW5nOiAxLjJyZW07XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGdhcDogMS4ycmVtO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxLjJyZW07XHJcbiAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgQGluY2x1ZGUgZnVsbDtcclxuICAgICAgICBtYXJnaW46IC0wLjFyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZThlNGUxO1xyXG4gICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWlnciB7XHJcbiAgICAgIGZsZXg6IDE7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIG1hcmdpbjogMCAtMS4ycmVtO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNTAwcHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcclxuICAgICAgICBhbGlnbi1pdGVtczogdW5zZXQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtaW1hZ2Uge1xyXG4gICAgICBwYWRkaW5nOiAwIDEuMnJlbTtcclxuICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDUwMHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDE4cmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgaW1nUGQoMTMwLCAxOTYpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAucmVjaGVjay10ZXh0IHtcclxuICAgICAgd2lkdGg6IDQuOHJlbTtcclxuICAgICAgaGVpZ2h0OiA0LjhyZW07XHJcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgIHdpZHRoOiAzLjhyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAzLjhyZW07XHJcbiAgICAgIH1cclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZThlNGUxO1xyXG4gICAgICAgIEBpbmNsdWRlIG1pZC1mbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcclxuICAgICAgICBpIHtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaWNvbi1jaGVjayB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmljb24tcmVtb3ZlIHtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ1bGw7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZThlNGUxO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi1jdG4ge1xyXG4gICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBwYWRkaW5nOiAwIDEuMnJlbTtcclxuICAgICAgZmxleDogMTtcclxuICAgICAgLnQtbmFtZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIEBpbmNsdWRlIG1heCg1MDBweCkge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC50LWdyIHtcclxuICAgICAgICBjb2xvcjogIzY5NjQ2MDtcclxuICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgfVxyXG4gICAgICAudC1saW5rIHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLnN0ayB7XHJcbiAgJi13cmFwIHtcclxuICAgIHdpZHRoOiBjYWxjKCgxMCAvIDEyKSAqIDEwMCUpO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWhlYWQge1xyXG4gICAgQGluY2x1ZGUgbWlkLWZsZXg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgLmljb24ge1xyXG4gICAgICB3aWR0aDogOHJlbTtcclxuICAgICAgaGVpZ2h0OiA4cmVtO1xyXG4gICAgICBAaW5jbHVkZSBtaWQtZmxleDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTAwcmVtO1xyXG4gICAgICBmb250LXNpemU6IDIuNnJlbTtcclxuICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAxODBkZWcsXHJcbiAgICAgICAgI2YyMmZiMCAwJSxcclxuICAgICAgICAjZjU4YTI1IDEwMCUsXHJcbiAgICAgICAgIzcwNjFhMyAxMDAlXHJcbiAgICAgICk7XHJcbiAgICAgIGkge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC50LXRpdGxlIHtcclxuICAgICAgbWFyZ2luLXRvcDogNHJlbTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLWlmIHtcclxuICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICAmLXB5IHtcclxuICAgICAgcGFkZGluZzogNHJlbTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xyXG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZThlNGUxO1xyXG4gICAgICBAaW5jbHVkZSBtYXgoNzY4cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtbGlzdCB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIHJvdy1nYXA6IDAuOHJlbTtcclxuICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIG1hcmdpbjogMCAtMS4ycmVtO1xyXG4gICAgfVxyXG4gICAgJi1pdCB7XHJcbiAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xyXG4gICAgfVxyXG4gICAgJi1pbiB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIHJvdy1nYXA6IDAuNHJlbTtcclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTY7XHJcbiAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgIH1cclxuICAgICAgLnQtdHh0IHtcclxuICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJi1kdCB7XHJcbiAgICBtYXJnaW4tdG9wOiAzLjJyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2cmVtO1xyXG4gICAgJi1weSB7XHJcbiAgICAgIHBhZGRpbmc6IDRyZW07XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuMnJlbTtcclxuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMi40cmVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudC1oZWFkIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMjQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBAaW5jbHVkZSBmb250LXNlY29uZDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLWJveCB7XHJcbiAgICAgIHBhZGRpbmc6IDEuNnJlbSAwO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgLnQtdGV4dCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXRoaXJkO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxuICAgICAgfVxyXG4gICAgICAuaWdycyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICAgICAgLnQtZ3Ige1xyXG4gICAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAudC10eHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmei0xNjtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50LXRpbWUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmei0xMztcclxuICAgICAgICAgICAgY29sb3I6ICM2OTY0NjA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLW90IHtcclxuICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgZ2FwOiAxLjZyZW07XHJcbiAgICAgIHBhZGRpbmc6IDEuNnJlbSAwO1xyXG4gICAgICAuaWdyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICBnYXA6IDEuMnJlbTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIC50LXRleHQge1xyXG4gICAgICAgICAgQGluY2x1ZGUgZnotMTg7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnQtdHh0IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYtdHQge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMS42cmVtO1xyXG4gICAgICBib3JkZXItdG9wOiAwLjFyZW0gc29saWQgI2U4ZTRlMTtcclxuICAgICAgLmlnciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgZ2FwOiAxLjJyZW07XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAudC10ZXh0IHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE4O1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50LXR4dCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmei0xODtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uYmtzLXRpbWUtbGlzdCB7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBvdmVyZmxvdy14OiBzY3JvbGw7XHJcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG4gIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xyXG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIGhlaWdodDogMDtcclxuICB9XHJcbiAgLmJrcy10aW1lLWJveCB7XHJcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogNnJlbTtcclxuICAgICY6Zmlyc3QtY2hpbGQoKSB7XHJcbiAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcclxuICAgIH1cclxuICAgICY6bGFzdC1jaGlsZCgpIHtcclxuICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGVuZDtcclxuICAgIH1cclxuICB9XHJcbiAgLmJveC1kYXkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG59XHJcbi50YWItY3RyLXBhbmVsLnRhYlBhbmVsIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxDQUFDLGdEQUFJO0FBQ1osT0FBTyxDQUFDLGdFQUFJO0FBQ1osT0FBTyxDQUFDLG9DQUFJO0FBQ1osT0FBTyxDQUFDLHFEQUFJO0FBQ1osT0FBTyxDQUFDLHdEQUFJO0FBQ1osT0FBTyxDQUFDLGdEQUFJO0FBQ1osT0FBTyxDQUFDLGtEQUFJO0FBQ1osT0FBTyxDQUFDLHFEQUFJO0FBQ1osT0FBTyxDQUFDLGdEQUFJO0FBQ1osT0FBTyxDQUFDLDhDQUFJO0FBQ1osT0FBTyxDQUFDLHFEQUFJO0FNWFosT0FBTyxDQUFDLDJDQUFJO0FBQ1osT0FBTyxDQUFDLDBDQUFJO0FMRFosQUFBQSxJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxJQUFJO0FBQ0osTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsQ0FBQztBQUNELFVBQVU7QUFDVixHQUFHO0FBQ0gsQ0FBQztBQUNELElBQUk7QUFDSixPQUFPO0FBQ1AsT0FBTztBQUNQLEdBQUc7QUFDSCxJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxHQUFHO0FBQ0gsRUFBRTtBQUNGLEdBQUc7QUFDSCxHQUFHO0FBQ0gsR0FBRztBQUNILENBQUM7QUFDRCxDQUFDO0FBQ0QsSUFBSTtBQUNKLEtBQUs7QUFDTCxNQUFNO0FBQ04sTUFBTTtBQUNOLEdBQUc7QUFDSCxHQUFHO0FBQ0gsRUFBRTtBQUNGLEdBQUc7QUFDSCxDQUFDO0FBQ0QsQ0FBQztBQUNELENBQUM7QUFDRCxNQUFNO0FBQ04sRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsUUFBUTtBQUNSLElBQUk7QUFDSixLQUFLO0FBQ0wsTUFBTTtBQUNOLEtBQUs7QUFDTCxPQUFPO0FBQ1AsS0FBSztBQUNMLEtBQUs7QUFDTCxLQUFLO0FBQ0wsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsT0FBTztBQUNQLEtBQUs7QUFDTCxNQUFNO0FBQ04sT0FBTztBQUNQLEtBQUs7QUFDTCxNQUFNO0FBQ04sVUFBVTtBQUNWLE1BQU07QUFDTixNQUFNO0FBQ04sTUFBTTtBQUNOLElBQUk7QUFDSixHQUFHO0FBQ0gsTUFBTTtBQUNOLElBQUk7QUFDSixPQUFPO0FBQ1AsT0FBTztBQUNQLElBQUk7QUFDSixJQUFJO0FBQ0osS0FBSztBQUNMLEtBQUssQ0FBQztFQUNGLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsQ0FBQztFQUNULFNBQVMsRUFBRSxJQUFJO0VBQ2YsSUFBSSxFQUFFLE9BQU87RUFDYixjQUFjLEVBQUUsUUFBUSxHQUMzQjs7QUFFRCxBQUFBLE9BQU87QUFDUCxLQUFLO0FBQ0wsT0FBTztBQUNQLFVBQVU7QUFDVixNQUFNO0FBQ04sTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sSUFBSTtBQUNKLEdBQUc7QUFDSCxPQUFPLENBQUM7RUFDSixPQUFPLEVBQUUsS0FBSyxHQUNqQjs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNELFdBQVcsRUFBRSxDQUFDLEdBQ2pCOztBQUVELEFBQUEsRUFBRTtBQUNGLEVBQUUsQ0FBQztFQUNDLFVBQVUsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEsVUFBVTtBQUNWLENBQUMsQ0FBQztFQUNFLE1BQU0sRUFBRSxJQUFJLEdBQ2Y7O0FBRUQsQUFBQSxVQUFVLEFBQUEsT0FBTztBQUNqQixVQUFVLEFBQUEsTUFBTTtBQUNoQixDQUFDLEFBQUEsT0FBTztBQUNSLENBQUMsQUFBQSxNQUFNLENBQUM7RUFDSixPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxJQUFJLEdBQ2hCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0YsZUFBZSxFQUFFLFFBQVE7RUFDekIsY0FBYyxFQUFFLENBQUMsR0FDcEI7O0FDaElELEFBQ0ksYUFEUyxDQUNULE1BQU07QUFEVixhQUFhLENBRVQsQ0FBQyxDQUFDO0VBQ0UsV0FBVyxFQUFFLElBQUksR0FDcEI7O0FBSkwsQUFLSSxhQUxTLENBS1QsRUFBRTtBQUxOLGFBQWEsQ0FNVCxDQUFDLENBQUM7RUFDRSxVQUFVLEVBQUUsTUFBTSxHQUNyQjs7QUFSTCxBQVNJLGFBVFMsQ0FTVCxFQUFFO0FBVE4sYUFBYSxDQVVULEVBQUU7QUFWTixhQUFhLENBV1QsRUFBRTtBQVhOLGFBQWEsQ0FZVCxFQUFFO0FBWk4sYUFBYSxDQWFULEVBQUU7QUFiTixhQUFhLENBY1QsRUFBRSxDQUFDO0VBQ0MsV0FBVyxFQUFFLEdBQUc7RUFDaEIsYUFBYSxFQUFFLEtBQUs7RUFDcEIsVUFBVSxFQUFFLEtBQUssR0FDcEI7O0FBbEJMLEFBbUJJLGFBbkJTLENBbUJULEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxLQUFLLEdBQ25COztBQXJCTCxBQXNCSSxhQXRCUyxDQXNCVCxFQUFFLENBQUM7RUFDQyxTQUFTLEVBQUUsS0FBSyxHQUNuQjs7QUF4QkwsQUF5QkksYUF6QlMsQ0F5QlQsRUFBRSxDQUFDO0VBQ0MsU0FBUyxFQUFFLE1BQU0sR0FDcEI7O0FBM0JMLEFBNEJJLGFBNUJTLENBNEJULEVBQUUsQ0FBQztFQUNDLFNBQVMsRUFBRSxPQUFPLEdBQ3JCOztBQTlCTCxBQStCSSxhQS9CUyxDQStCVCxFQUFFLENBQUM7RUFDQyxTQUFTLEVBQUUsR0FBRyxHQUNqQjs7QUFqQ0wsQUFrQ0ksYUFsQ1MsQ0FrQ1QsRUFBRSxDQUFDO0VBQ0MsU0FBUyxFQUFFLE1BQU0sR0FDcEI7O0FBcENMLEFBcUNJLGFBckNTLENBcUNULENBQUMsQ0FBQztFQUNFLE1BQU0sRUFBRSxLQUFLLEdBQ2hCOztBQXZDTCxBQXdDSSxhQXhDUyxDQXdDVCxFQUFFO0FBeENOLGFBQWEsQ0F5Q1QsRUFBRSxDQUFDO0VBQ0MsTUFBTSxFQUFFLEtBQUs7RUFDYixtQkFBbUIsRUFBRSxNQUFNLEdBQzlCOztBQTVDTCxBQTZDSSxhQTdDUyxDQTZDVCxFQUFFLENBQUMsRUFBRTtBQTdDVCxhQUFhLENBOENULEVBQUUsQ0FBQyxFQUFFO0FBOUNULGFBQWEsQ0ErQ1QsRUFBRSxDQUFDLEVBQUU7QUEvQ1QsYUFBYSxDQWdEVCxFQUFFLENBQUMsRUFBRSxDQUFDO0VBQ0YsV0FBVyxFQUFFLEdBQUcsR0FDbkI7O0FBbERMLEFBbURJLGFBbkRTLENBbURULEVBQUUsQ0FBQztFQUNDLGVBQWUsRUFBRSxJQUFJLEdBQ3hCOztBQXJETCxBQXNESSxhQXREUyxDQXNEVCxFQUFFLENBQUM7RUFDQyxlQUFlLEVBQUUsT0FBTyxHQUMzQjs7QUF4REwsQUF5REksYUF6RFMsQ0F5RFQsRUFBRSxDQUFDLEVBQUU7QUF6RFQsYUFBYSxDQTBEVCxFQUFFLENBQUMsRUFBRSxDQUFDO0VBQ0YsZUFBZSxFQUFFLE1BQU0sR0FDMUI7O0FBNURMLEFBNkRJLGFBN0RTLENBNkRULEVBQUUsQ0FBQyxFQUFFO0FBN0RULGFBQWEsQ0E4RFQsRUFBRSxDQUFDLEVBQUUsQ0FBQztFQUNGLGVBQWUsRUFBRSxXQUFXLEdBQy9COztBQWhFTCxBQWlFSSxhQWpFUyxDQWlFVCxHQUFHO0FBakVQLGFBQWEsQ0FrRVQsTUFBTSxDQUFDO0VBQ0gsU0FBUyxFQUFFLGVBQWU7RUFDMUIsTUFBTSxFQUFFLElBQUksR0FDZjs7QUFyRUwsQUFzRUksYUF0RVMsQ0FzRVQsVUFBVSxDQUFDO0VBQ1AsVUFBVSxFQUFFLE9BQU87RUFDbkIsV0FBVyxFQUFFLGVBQWU7RUFDNUIsTUFBTSxFQUFFLEtBQUs7RUFDYixPQUFPLEVBQUUsR0FBRztFQUNaLE1BQU0sRUFBRSxJQUFPLENBQUEsSUFBTyxDQUFBLElBQU8sQ0FBQSxJQUFPLEdBWXZDO0VBdkZMLEFBNEVRLGFBNUVLLENBc0VULFVBQVUsQUFNTCxRQUFRLENBQUM7SUFDTixLQUFLLEVBQUUsSUFBSTtJQUNYLE9BQU8sRUFBRSxVQUFVO0lBQ25CLFNBQVMsRUFBRSxHQUFHO0lBQ2QsV0FBVyxFQUFFLEtBQUs7SUFDbEIsWUFBWSxFQUFFLE1BQU07SUFDcEIsY0FBYyxFQUFFLE1BQU0sR0FDekI7RUFuRlQsQUFvRlEsYUFwRkssQ0FzRVQsVUFBVSxDQWNOLENBQUMsQ0FBQztJQUNFLE9BQU8sRUFBRSxNQUFNLEdBQ2xCOztBQXRGVCxBQXdGSSxhQXhGUyxDQXdGVCxLQUFLLENBQUM7RUFDRixlQUFlLEVBQUUsUUFBUTtFQUN6QixTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxLQUFLO0VBQ2IsTUFBTSxFQUFFLGlCQUFpQixHQVE1QjtFQXBHTCxBQTZGUSxhQTdGSyxDQXdGVCxLQUFLLENBS0QsRUFBRTtFQTdGVixhQUFhLENBd0ZULEtBQUssQ0FNRCxFQUFFLENBQUM7SUFDQyxZQUFZLEVBQUUsaUJBQWlCO0lBQy9CLGFBQWEsRUFBRSxpQkFBaUI7SUFDaEMsT0FBTyxFQUFFLFFBQVE7SUFDakIsY0FBYyxFQUFFLE1BQU0sR0FDekI7O0FBbkdULEFBcUdJLGFBckdTLENBcUdULGtCQUFrQixDQUFDO0VBQ2YsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLENBQUM7RUFDVCxXQUFXLEVBQUUsTUFBTSxHQVF0QjtFQWhITCxBQXlHUSxhQXpHSyxDQXFHVCxrQkFBa0IsQ0FJZCxNQUFNLENBQUM7SUFDSCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNmOztBQS9HVCxBQWlISSxhQWpIUyxDQWlIVCxnQkFBZ0IsQ0FBQztFQUNiLFFBQVEsRUFBRSxJQUFJLEdBQ2pCOztBQ25ITCxBQUFBLEtBQUssQ0FBQztFQUNKLFNBQVMsQ0FBQSxNQUFDO0VBR1YsT0FBTyxDQUFBLE1BQUMsR0FPVDtFQUxDLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJQU4zQixBQUFBLEtBQUssQ0FBQztNQU9GLE9BQU8sQ0FBQSxLQUFDO01BQ1IsUUFBUSxDQUFBLE9BQUM7TUFDVCxTQUFTLENBQUEsS0FBQyxHQUViOztBR1JELEFBQUEsQ0FBQyxDQUFDO0VBQ0EsVUFBVSxFQUFFLFVBQVUsR0FDdkI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDSCxTQUFTLEVBQUUsS0FBSztFQUNoQixlQUFlLEVBQUUsTUFBTSxHQUt4QjtFQUhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SUFKdEMsQUFBQSxJQUFJLENBQUM7TUFLRCxTQUFTLEVBQUUsSUFBSSxHQUVsQjs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxTQUFTO0VBQ3RCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLElBQUk7RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFSE5RLE9BQU87RUdPcEIsUUFBUSxFQUFFLFdBQVcsR0FLdEI7RUFIQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lBUnRDLEFBQUEsSUFBSSxDQUFDO01BU0QsU0FBUyxFQUFFLElBQUksR0FFbEI7O0FBRUQsQUFBQSxDQUFDLENBQUM7RUFDQSxlQUFlLEVBQUUsSUFBSTtFQUNyQixLQUFLLEVBQUUsT0FBTyxHQUNmOztBQUVELEFBQUEsTUFBTTtBQUNOLE1BQU0sQ0FBQztFQUNMLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsT0FBTztFQUNmLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsTUFBTSxFQUFFLE9BQU87RUQwakJmLFdBQVcsRUFEVSxTQUFTLEVBQ1YsVUFBVSxHQ3hqQi9COztBQUVELEFBQUEsTUFBTSxDQUFDO0VBQ0wsT0FBTyxFQUFFLENBQUM7RUFDVixnQkFBZ0IsRUFBRSxXQUFXLEdBQzlCOztBQUVELEFBQUEsS0FBSztBQUNMLFFBQVEsQ0FBQztFQUNQLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsZUFBZSxFQUFFLElBQUk7RUFDckIsVUFBVSxFQUFFLElBQUk7RUQ2aUJoQixXQUFXLEVBRFUsU0FBUyxFQUNWLFVBQVUsR0MzaUIvQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFdBQVcsRUFBRSxjQUFjLEdBQzVCOztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsTUFBTTtFQUNqQixNQUFNLEVBQUUsSUFBSTtFQUNaLE1BQU0sRUFBRSxNQUFNO0VBQ2QsT0FBTyxFQUFFLFFBQVEsR0FDbEI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDSixVQUFVLEVBQUUsSUFBSTtFQUNoQixnQkFBZ0IsRUFBRSxXQUFXLEdBSzlCO0VBUEQsQUFJRSxLQUpHLEFBSUYsbUJBQW1CLENBQUM7SUFDbkIsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFHSCxBQUFBLFVBQVUsQ0FBQztFQUNULFlBQVksRUFBRSxJQUFJO0VBQ2xCLDBCQUEwQixFQUFFLElBQUk7RUFDaEMsUUFBUSxFQUFFLE1BQU07RUFDaEIsbUJBQW1CLEVBQUUsSUFBSSxHQUMxQjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNMLGNBQWMsRUFBRSxNQUFNLEdBQ3ZCOztBQUVELEFBQUEsVUFBVSxDQUFDO0VBQ1QsT0FBTyxFQUFFLElBQUksR0FDZDs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBQ2hCLE1BQU0sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsR0FBRyxDQUFDO0VBQ0YsU0FBUyxFQUFFLElBQUk7RUFDZixhQUFhLEVBQUUsT0FBTztFQUN0QixNQUFNLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEsYUFBYSxDQUFDO0VBQ1osU0FBUyxFQUFFLENBQUM7RUFDWixVQUFVLEVBQUUsQ0FBQztFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLE1BQU0sR0FDbkI7O0FBQ0QsQUFBQSxLQUFLLEFBQUEsMkJBQTJCO0FBQ2hDLEtBQUssQUFBQSwyQkFBMkIsQ0FBQztFQUMvQixrQkFBa0IsRUFBRSxJQUFJO0VBQ3hCLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBRUQsYUFBYTtBQUNiLEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixFQUFlO0VBQ25CLGVBQWUsRUFBRSxTQUFTLEdBQzNCOztBQ3ZIRCxBQUFBLElBQUksQ0FBQztFQUNELElBQUksQ0FBQSxPQUFDO0VBQ0wsSUFBSSxDQUFBLE9BQUM7RUZtRVAsT0FBTyxFQUFFLFlBQVk7RUFDckIsT0FBTyxFQUFFLFNBQVM7RUFDbEIsT0FBTyxFQUFFLFFBQVE7RUFDakIsT0FBTyxFQUFFLE9BQU87RUFDaEIsT0FBTyxFQUFFLElBQUk7RUFDYixTQUFTLEVBQUUsSUFBSTtFRXRFYixNQUFNLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLG9CQUFvQixHQUMxRDs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNGLElBQUksQ0FBQSxPQUFDO0VBQ0wsSUFBSSxDQUFBLE9BQUM7RUFDTCxNQUFNLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QixHQUNyQzs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNELEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLENBQUMsQ0FBQyxtQkFBbUI7RUFDOUIsYUFBYSxFQUFFLFNBQVMsR0FxRDNCO0VBbkRJLEFBQUQsT0FBSSxDQUFDO0lBQ0QsS0FBSyxFQUFFLGtCQUFrQixHQUM1QjtFQUVBLEFBQUQsT0FBSSxDQUFDO0lBQ0QsS0FBSyxFQUFFLGtCQUFrQixHQUM1QjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLEdBQUcsR0FDYjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsTUFBRyxDQUFDO0lBQ0EsS0FBSyxFQUFFLGlCQUFpQixHQUMzQjtFQUVBLEFBQUQsT0FBSSxDQUFDO0lBQ0QsS0FBSyxFQUFFLGNBQWMsR0FDeEI7RUFFQSxBQUFELE9BQUksQ0FBQztJQUNELEtBQUssRUFBRSxjQUFjLEdBQ3hCOztBRmdlSCxrQkFBa0IsQ0FBbEIsU0FBa0I7RUduaUJoQixFQUFFO0lBQ0UsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUU1QyxHQUFHO0lBQ0MsU0FBUyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVqRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVoRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVqRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVoRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUU1QyxJQUFJO0lBQ0EsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVTs7QUhvaEI5QyxlQUFlLENBQWYsU0FBZTtFR3ZpQmIsRUFBRTtJQUNFLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFNUMsR0FBRztJQUNDLFNBQVMsRUFBRSxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFakQsR0FBRztJQUNDLFNBQVMsRUFBRSxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFaEQsR0FBRztJQUNDLFNBQVMsRUFBRSxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFakQsR0FBRztJQUNDLFNBQVMsRUFBRSxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFaEQsR0FBRztJQUNDLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFNUMsSUFBSTtJQUNBLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVU7O0FId2hCOUMsY0FBYyxDQUFkLFNBQWM7RUczaUJaLEFBQUEsRUFBRSxDQUFDO0lBQ0MsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUMzQztFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUNoRDtFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUMvQztFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUNoRDtFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUMvQztFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUMzQztFQUNELEFBQUEsSUFBSSxDQUFDO0lBQ0QsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUMzQzs7QUgyaEJILGFBQWEsQ0FBYixTQUFhO0VHL2lCWCxFQUFFO0lBQ0UsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUU1QyxHQUFHO0lBQ0MsU0FBUyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVqRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVoRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLGNBQWMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVqRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLGFBQWEsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUVoRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVTtFQUU1QyxJQUFJO0lBQ0EsU0FBUyxFQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVTs7QUhnaUI5QyxVQUFVLENBQVYsU0FBVTtFR25qQlIsRUFBRTtJQUNFLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFNUMsR0FBRztJQUNDLFNBQVMsRUFBRSxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFakQsR0FBRztJQUNDLFNBQVMsRUFBRSxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFaEQsR0FBRztJQUNDLFNBQVMsRUFBRSxjQUFjLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFakQsR0FBRztJQUNDLFNBQVMsRUFBRSxhQUFhLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFaEQsR0FBRztJQUNDLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVU7RUFFNUMsSUFBSTtJQUNBLFNBQVMsRUFBRSxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVU7O0FIZ2hCOUMsa0JBQWtCLENBQWxCLE1BQWtCO0VHMWdCaEIsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDOztBSDBnQmhCLGVBQWUsQ0FBZixNQUFlO0VHOWdCYixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7O0FIOGdCaEIsY0FBYyxDQUFkLE1BQWM7RUdsaEJaLEFBQUEsSUFBSSxDQUFDO0lBQ0QsT0FBTyxFQUFFLENBQUMsR0FDYjtFQUNELEFBQUEsRUFBRSxDQUFDO0lBQ0MsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUhpaEJILGFBQWEsQ0FBYixNQUFhO0VHdGhCWCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7O0FIc2hCaEIsVUFBVSxDQUFWLE1BQVU7RUcxaEJSLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQzs7QUhzZ0JoQixrQkFBa0IsQ0FBbEIsS0FBa0I7RUdqZ0JoQixJQUFJO0lBQ0EsSUFBSSxFQUFFLElBQUk7O0FIb2dCaEIsZUFBZSxDQUFmLEtBQWU7RUdyZ0JiLElBQUk7SUFDQSxJQUFJLEVBQUUsSUFBSTs7QUh3Z0JoQixjQUFjLENBQWQsS0FBYztFR3pnQlosQUFBQSxJQUFJLENBQUM7SUFDRCxJQUFJLEVBQUUsSUFBSSxHQUNiOztBSDJnQkgsYUFBYSxDQUFiLEtBQWE7RUc3Z0JYLElBQUk7SUFDQSxJQUFJLEVBQUUsSUFBSTs7QUhnaEJoQixVQUFVLENBQVYsS0FBVTtFR2poQlIsSUFBSTtJQUNBLElBQUksRUFBRSxJQUFJOztBSGdnQmhCLGtCQUFrQixDQUFsQixNQUFrQjtFRzNmaEIsRUFBRTtJQUNFLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLE9BQU8sRUFBRSxDQUFDO0VBRWQsSUFBSTtJQUNBLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDOztBSHlmaEIsZUFBZSxDQUFmLE1BQWU7RUcvZmIsRUFBRTtJQUNFLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLE9BQU8sRUFBRSxDQUFDO0VBRWQsSUFBSTtJQUNBLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDOztBSDZmaEIsY0FBYyxDQUFkLE1BQWM7RUduZ0JaLEFBQUEsRUFBRSxDQUFDO0lBQ0MsU0FBUyxFQUFFLFdBQVc7SUFDdEIsT0FBTyxFQUFFLENBQUMsR0FDYjtFQUNELEFBQUEsSUFBSSxDQUFDO0lBQ0QsU0FBUyxFQUFFLFFBQVE7SUFDbkIsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUhnZ0JILGFBQWEsQ0FBYixNQUFhO0VHdmdCWCxFQUFFO0lBQ0UsU0FBUyxFQUFFLFdBQVc7SUFDdEIsT0FBTyxFQUFFLENBQUM7RUFFZCxJQUFJO0lBQ0EsU0FBUyxFQUFFLFFBQVE7SUFDbkIsT0FBTyxFQUFFLENBQUM7O0FIcWdCaEIsVUFBVSxDQUFWLE1BQVU7RUczZ0JSLEVBQUU7SUFDRSxTQUFTLEVBQUUsV0FBVztJQUN0QixPQUFPLEVBQUUsQ0FBQztFQUVkLElBQUk7SUFDQSxTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQzs7QUhxZmhCLGtCQUFrQixDQUFsQixPQUFrQjtFR2hmaEIsRUFBRTtJQUNFLFNBQVMsRUFBRSxTQUFTO0VBRXhCLElBQUk7SUFDQSxTQUFTLEVBQUUsY0FBYzs7QUhnZi9CLGVBQWUsQ0FBZixPQUFlO0VHcGZiLEVBQUU7SUFDRSxTQUFTLEVBQUUsU0FBUztFQUV4QixJQUFJO0lBQ0EsU0FBUyxFQUFFLGNBQWM7O0FIb2YvQixjQUFjLENBQWQsT0FBYztFR3hmWixBQUFBLEVBQUUsQ0FBQztJQUNDLFNBQVMsRUFBRSxTQUFTLEdBQ3ZCO0VBQ0QsQUFBQSxJQUFJLENBQUM7SUFDRCxTQUFTLEVBQUUsY0FBYyxHQUM1Qjs7QUh1ZkgsYUFBYSxDQUFiLE9BQWE7RUc1ZlgsRUFBRTtJQUNFLFNBQVMsRUFBRSxTQUFTO0VBRXhCLElBQUk7SUFDQSxTQUFTLEVBQUUsY0FBYzs7QUg0Zi9CLFVBQVUsQ0FBVixPQUFVO0VHaGdCUixFQUFFO0lBQ0UsU0FBUyxFQUFFLFNBQVM7RUFFeEIsSUFBSTtJQUNBLFNBQVMsRUFBRSxjQUFjOztBSDRlL0Isa0JBQWtCLENBQWxCLEdBQWtCO0VHdmVoQixFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7RUFFZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7O0FIaWVoQixlQUFlLENBQWYsR0FBZTtFRzNlYixFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7RUFFZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7O0FIcWVoQixjQUFjLENBQWQsR0FBYztFRy9lWixBQUFBLEVBQUUsQ0FBQztJQUNDLE9BQU8sRUFBRSxDQUFDLEdBQ2I7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLE9BQU8sRUFBRSxDQUFDLEdBQ2I7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLE9BQU8sRUFBRSxDQUFDLEdBQ2I7RUFDRCxBQUFBLElBQUksQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDLEdBQ2I7O0FId2VILGFBQWEsQ0FBYixHQUFhO0VHbmZYLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztFQUVkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQzs7QUg2ZWhCLFVBQVUsQ0FBVixHQUFVO0VHdmZSLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztFQUVkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQzs7QUg2ZGhCLGtCQUFrQixDQUFsQixRQUFrQjtFR3hkaEIsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsb0JBQW9COztBSHNkckMsZUFBZSxDQUFmLFFBQWU7RUc1ZGIsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsb0JBQW9COztBSDBkckMsY0FBYyxDQUFkLFFBQWM7RUdoZVosQUFBQSxJQUFJLENBQUM7SUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSxzQkFBc0IsR0FDcEM7RUFDRCxBQUFBLEVBQUUsQ0FBQztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLG9CQUFvQixHQUNsQzs7QUg2ZEgsYUFBYSxDQUFiLFFBQWE7RUdwZVgsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsb0JBQW9COztBSGtlckMsVUFBVSxDQUFWLFFBQVU7RUd4ZVIsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsb0JBQW9COztBSGtkckMsa0JBQWtCLENBQWxCLElBQWtCO0VHN2NoQixJQUFJO0lBQ0EsU0FBUyxFQUFFLHFCQUFxQixDQUFDLFFBQVE7RUFFN0MsRUFBRTtJQUNFLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxRQUFROztBSDZjL0MsZUFBZSxDQUFmLElBQWU7RUdqZGIsSUFBSTtJQUNBLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRO0VBRTdDLEVBQUU7SUFDRSxTQUFTLEVBQUUscUJBQXFCLENBQUMsUUFBUTs7QUhpZC9DLGNBQWMsQ0FBZCxJQUFjO0VHcmRaLEFBQUEsSUFBSSxDQUFDO0lBQ0QsU0FBUyxFQUFFLHFCQUFxQixDQUFDLFFBQVEsR0FDNUM7RUFDRCxBQUFBLEVBQUUsQ0FBQztJQUNDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRLEdBQzVDOztBSG9kSCxhQUFhLENBQWIsSUFBYTtFR3pkWCxJQUFJO0lBQ0EsU0FBUyxFQUFFLHFCQUFxQixDQUFDLFFBQVE7RUFFN0MsRUFBRTtJQUNFLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxRQUFROztBSHlkL0MsVUFBVSxDQUFWLElBQVU7RUc3ZFIsSUFBSTtJQUNBLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxRQUFRO0VBRTdDLEVBQUU7SUFDRSxTQUFTLEVBQUUscUJBQXFCLENBQUMsUUFBUTs7QUh5Yy9DLGtCQUFrQixDQUFsQixLQUFrQjtFR3BjaEIsRUFBRTtJQUNFLFNBQVMsRUFBRSxlQUFlO0VBRTlCLEdBQUc7SUFDQyxTQUFTLEVBQUUsaUJBQWlCO0VBRWhDLElBQUk7SUFDQSxTQUFTLEVBQUUsZUFBZTs7QUhpY2hDLGVBQWUsQ0FBZixLQUFlO0VHeGNiLEVBQUU7SUFDRSxTQUFTLEVBQUUsZUFBZTtFQUU5QixHQUFHO0lBQ0MsU0FBUyxFQUFFLGlCQUFpQjtFQUVoQyxJQUFJO0lBQ0EsU0FBUyxFQUFFLGVBQWU7O0FIcWNoQyxjQUFjLENBQWQsS0FBYztFRzVjWixBQUFBLEVBQUUsQ0FBQztJQUNDLFNBQVMsRUFBRSxlQUFlLEdBQzdCO0VBQ0QsQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsaUJBQWlCLEdBQy9CO0VBQ0QsQUFBQSxJQUFJLENBQUM7SUFDRCxTQUFTLEVBQUUsZUFBZSxHQUM3Qjs7QUh3Y0gsYUFBYSxDQUFiLEtBQWE7RUdoZFgsRUFBRTtJQUNFLFNBQVMsRUFBRSxlQUFlO0VBRTlCLEdBQUc7SUFDQyxTQUFTLEVBQUUsaUJBQWlCO0VBRWhDLElBQUk7SUFDQSxTQUFTLEVBQUUsZUFBZTs7QUg2Y2hDLFVBQVUsQ0FBVixLQUFVO0VHcGRSLEVBQUU7SUFDRSxTQUFTLEVBQUUsZUFBZTtFQUU5QixHQUFHO0lBQ0MsU0FBUyxFQUFFLGlCQUFpQjtFQUVoQyxJQUFJO0lBQ0EsU0FBUyxFQUFFLGVBQWU7O0FINmJoQyxrQkFBa0IsQ0FBbEIsTUFBa0I7RUd4YmhCLElBQUk7SUFDQSxTQUFTLEVBQUUsd0JBQXdCLENBQUMsYUFBYTs7QUgyYnZELGVBQWUsQ0FBZixNQUFlO0VHNWJiLElBQUk7SUFDQSxTQUFTLEVBQUUsd0JBQXdCLENBQUMsYUFBYTs7QUgrYnZELGNBQWMsQ0FBZCxNQUFjO0VHaGNaLEFBQUEsSUFBSSxDQUFDO0lBQ0QsU0FBUyxFQUFFLHdCQUF3QixDQUFDLGFBQWEsR0FDcEQ7O0FIa2NILGFBQWEsQ0FBYixNQUFhO0VHcGNYLElBQUk7SUFDQSxTQUFTLEVBQUUsd0JBQXdCLENBQUMsYUFBYTs7QUh1Y3ZELFVBQVUsQ0FBVixNQUFVO0VHeGNSLElBQUk7SUFDQSxTQUFTLEVBQUUsd0JBQXdCLENBQUMsYUFBYTs7QUh1YnZELGtCQUFrQixDQUFsQixNQUFrQjtFR2xiaEIsRUFBRTtJQUNFLFNBQVMsRUFBRSxlQUFlO0VBRTlCLEdBQUc7SUFDQyxTQUFTLEVBQUUsaUJBQWlCO0VBRWhDLElBQUk7SUFDQSxTQUFTLEVBQUUsZUFBZTs7QUgrYWhDLGVBQWUsQ0FBZixNQUFlO0VHdGJiLEVBQUU7SUFDRSxTQUFTLEVBQUUsZUFBZTtFQUU5QixHQUFHO0lBQ0MsU0FBUyxFQUFFLGlCQUFpQjtFQUVoQyxJQUFJO0lBQ0EsU0FBUyxFQUFFLGVBQWU7O0FIbWJoQyxjQUFjLENBQWQsTUFBYztFRzFiWixBQUFBLEVBQUUsQ0FBQztJQUNDLFNBQVMsRUFBRSxlQUFlLEdBQzdCO0VBQ0QsQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsaUJBQWlCLEdBQy9CO0VBQ0QsQUFBQSxJQUFJLENBQUM7SUFDRCxTQUFTLEVBQUUsZUFBZSxHQUM3Qjs7QUhzYkgsYUFBYSxDQUFiLE1BQWE7RUc5YlgsRUFBRTtJQUNFLFNBQVMsRUFBRSxlQUFlO0VBRTlCLEdBQUc7SUFDQyxTQUFTLEVBQUUsaUJBQWlCO0VBRWhDLElBQUk7SUFDQSxTQUFTLEVBQUUsZUFBZTs7QUgyYmhDLFVBQVUsQ0FBVixNQUFVO0VHbGNSLEVBQUU7SUFDRSxTQUFTLEVBQUUsZUFBZTtFQUU5QixHQUFHO0lBQ0MsU0FBUyxFQUFFLGlCQUFpQjtFQUVoQyxJQUFJO0lBQ0EsU0FBUyxFQUFFLGVBQWU7O0FIMmFoQyxrQkFBa0IsQ0FBbEIsS0FBa0I7RUd0YWhCLEdBQUc7SUFDQyxTQUFTLEVBQUUsZUFBZTtFQUU5QixHQUFHO0lBQ0MsU0FBUyxFQUFFLGVBQWU7RUFFOUIsR0FBRztJQUNDLFNBQVMsRUFBRSxpQkFBaUI7O0FIbWFsQyxlQUFlLENBQWYsS0FBZTtFRzFhYixHQUFHO0lBQ0MsU0FBUyxFQUFFLGVBQWU7RUFFOUIsR0FBRztJQUNDLFNBQVMsRUFBRSxlQUFlO0VBRTlCLEdBQUc7SUFDQyxTQUFTLEVBQUUsaUJBQWlCOztBSHVhbEMsY0FBYyxDQUFkLEtBQWM7RUc5YVosQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsZUFBZSxHQUM3QjtFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLGVBQWUsR0FDN0I7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLFNBQVMsRUFBRSxpQkFBaUIsR0FDL0I7O0FIMGFILGFBQWEsQ0FBYixLQUFhO0VHbGJYLEdBQUc7SUFDQyxTQUFTLEVBQUUsZUFBZTtFQUU5QixHQUFHO0lBQ0MsU0FBUyxFQUFFLGVBQWU7RUFFOUIsR0FBRztJQUNDLFNBQVMsRUFBRSxpQkFBaUI7O0FIK2FsQyxVQUFVLENBQVYsS0FBVTtFR3RiUixHQUFHO0lBQ0MsU0FBUyxFQUFFLGVBQWU7RUFFOUIsR0FBRztJQUNDLFNBQVMsRUFBRSxlQUFlO0VBRTlCLEdBQUc7SUFDQyxTQUFTLEVBQUUsaUJBQWlCOztBSCtabEMsa0JBQWtCLENBQWxCLGFBQWtCO0VHMVpoQixHQUFHO0lBQ0MsU0FBUyxFQUFFLHFCQUFxQixDQUFDLGVBQWU7RUFFcEQsR0FBRztJQUNDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxlQUFlO0VBRXBELEdBQUc7SUFDQyxTQUFTLEVBQUUscUJBQXFCLENBQUMsaUJBQWlCOztBSHVaeEQsZUFBZSxDQUFmLGFBQWU7RUc5WmIsR0FBRztJQUNDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxlQUFlO0VBRXBELEdBQUc7SUFDQyxTQUFTLEVBQUUscUJBQXFCLENBQUMsZUFBZTtFQUVwRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLHFCQUFxQixDQUFDLGlCQUFpQjs7QUgyWnhELGNBQWMsQ0FBZCxhQUFjO0VHbGFaLEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLHFCQUFxQixDQUFDLGVBQWUsR0FDbkQ7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxlQUFlLEdBQ25EO0VBQ0QsQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUscUJBQXFCLENBQUMsaUJBQWlCLEdBQ3JEOztBSDhaSCxhQUFhLENBQWIsYUFBYTtFR3RhWCxHQUFHO0lBQ0MsU0FBUyxFQUFFLHFCQUFxQixDQUFDLGVBQWU7RUFFcEQsR0FBRztJQUNDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxlQUFlO0VBRXBELEdBQUc7SUFDQyxTQUFTLEVBQUUscUJBQXFCLENBQUMsaUJBQWlCOztBSG1heEQsVUFBVSxDQUFWLGFBQVU7RUcxYVIsR0FBRztJQUNDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxlQUFlO0VBRXBELEdBQUc7SUFDQyxTQUFTLEVBQUUscUJBQXFCLENBQUMsZUFBZTtFQUVwRCxHQUFHO0lBQ0MsU0FBUyxFQUFFLHFCQUFxQixDQUFDLGlCQUFpQjs7QUhtWnhELGtCQUFrQixDQUFsQixPQUFrQjtFRzlZaEIsRUFBRTtFQUNGLEdBQUc7SUFDQyxTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsU0FBUyxFQUFFLFVBQVU7RUFFekIsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXO0VBRTFCLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLGFBQWE7RUFFeEMsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXLENBQUMsWUFBWTtFQUV2QyxHQUFHO0lBQ0MsU0FBUyxFQUFFLFdBQVcsQ0FBQyxhQUFhO0VBRXhDLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLFlBQVk7RUFFdkMsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXLENBQUMsU0FBUzs7QUgyWHRDLGVBQWUsQ0FBZixPQUFlO0VHbFpiLEVBQUU7RUFDRixHQUFHO0lBQ0MsU0FBUyxFQUFFLFFBQVE7RUFFdkIsR0FBRztJQUNDLFNBQVMsRUFBRSxVQUFVO0VBRXpCLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVztFQUUxQixHQUFHO0lBQ0MsU0FBUyxFQUFFLFdBQVcsQ0FBQyxhQUFhO0VBRXhDLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLFlBQVk7RUFFdkMsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXLENBQUMsYUFBYTtFQUV4QyxHQUFHO0lBQ0MsU0FBUyxFQUFFLFdBQVcsQ0FBQyxZQUFZO0VBRXZDLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLFNBQVM7O0FIK1h0QyxjQUFjLENBQWQsT0FBYztFR3RaWixBQUFBLEVBQUU7RUFDRixHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsUUFBUSxHQUN0QjtFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLFVBQVUsR0FDeEI7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLFNBQVMsRUFBRSxXQUFXLEdBQ3pCO0VBQ0QsQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsV0FBVyxDQUFDLGFBQWEsR0FDdkM7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLFNBQVMsRUFBRSxXQUFXLENBQUMsWUFBWSxHQUN0QztFQUNELEFBQUEsR0FBRyxDQUFDO0lBQ0EsU0FBUyxFQUFFLFdBQVcsQ0FBQyxhQUFhLEdBQ3ZDO0VBQ0QsQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsV0FBVyxDQUFDLFlBQVksR0FDdEM7RUFDRCxBQUFBLEdBQUcsQ0FBQztJQUNBLFNBQVMsRUFBRSxXQUFXLENBQUMsU0FBUyxHQUNuQzs7QUhrWUgsYUFBYSxDQUFiLE9BQWE7RUcxWlgsRUFBRTtFQUNGLEdBQUc7SUFDQyxTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsU0FBUyxFQUFFLFVBQVU7RUFFekIsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXO0VBRTFCLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLGFBQWE7RUFFeEMsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXLENBQUMsWUFBWTtFQUV2QyxHQUFHO0lBQ0MsU0FBUyxFQUFFLFdBQVcsQ0FBQyxhQUFhO0VBRXhDLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLFlBQVk7RUFFdkMsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXLENBQUMsU0FBUzs7QUh1WXRDLFVBQVUsQ0FBVixPQUFVO0VHOVpSLEVBQUU7RUFDRixHQUFHO0lBQ0MsU0FBUyxFQUFFLFFBQVE7RUFFdkIsR0FBRztJQUNDLFNBQVMsRUFBRSxVQUFVO0VBRXpCLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVztFQUUxQixHQUFHO0lBQ0MsU0FBUyxFQUFFLFdBQVcsQ0FBQyxhQUFhO0VBRXhDLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLFlBQVk7RUFFdkMsR0FBRztJQUNDLFNBQVMsRUFBRSxXQUFXLENBQUMsYUFBYTtFQUV4QyxHQUFHO0lBQ0MsU0FBUyxFQUFFLFdBQVcsQ0FBQyxZQUFZO0VBRXZDLEdBQUc7SUFDQyxTQUFTLEVBQUUsV0FBVyxDQUFDLFNBQVM7O0FIdVh0QyxrQkFBa0IsQ0FBbEIsS0FBa0I7RUdsWGhCLEVBQUU7SUFDRSxTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsU0FBUyxFQUFFLFVBQVM7RUFFeEIsSUFBSTtJQUNBLFNBQVMsRUFBRSxRQUFROztBSCtXekIsZUFBZSxDQUFmLEtBQWU7RUd0WGIsRUFBRTtJQUNFLFNBQVMsRUFBRSxRQUFRO0VBRXZCLEdBQUc7SUFDQyxTQUFTLEVBQUUsVUFBUztFQUV4QixJQUFJO0lBQ0EsU0FBUyxFQUFFLFFBQVE7O0FIbVh6QixjQUFjLENBQWQsS0FBYztFRzFYWixBQUFBLEVBQUUsQ0FBQztJQUNDLFNBQVMsRUFBRSxRQUFRLEdBQ3RCO0VBQ0QsQUFBQSxHQUFHLENBQUM7SUFDQSxTQUFTLEVBQUUsVUFBUyxHQUN2QjtFQUNELEFBQUEsSUFBSSxDQUFDO0lBQ0QsU0FBUyxFQUFFLFFBQVEsR0FDdEI7O0FIc1hILGFBQWEsQ0FBYixLQUFhO0VHOVhYLEVBQUU7SUFDRSxTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsU0FBUyxFQUFFLFVBQVM7RUFFeEIsSUFBSTtJQUNBLFNBQVMsRUFBRSxRQUFROztBSDJYekIsVUFBVSxDQUFWLEtBQVU7RUdsWVIsRUFBRTtJQUNFLFNBQVMsRUFBRSxRQUFRO0VBRXZCLEdBQUc7SUFDQyxTQUFTLEVBQUUsVUFBUztFQUV4QixJQUFJO0lBQ0EsU0FBUyxFQUFFLFFBQVE7O0FIMld6QixrQkFBa0IsQ0FBbEIsSUFBa0I7RUd0V2hCLElBQUk7SUFDQSxTQUFTLEVBQUUsV0FBVztJQUN0QixPQUFPLEVBQUUsQ0FDYjtFQUNBLEVBQUU7SUFDRSxTQUFTLEVBQUUsZUFBZTtJQUMxQixPQUFPLEVBQUUsQ0FDYjs7QUhtV0YsZUFBZSxDQUFmLElBQWU7RUcxV2IsSUFBSTtJQUNBLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLE9BQU8sRUFBRSxDQUNiO0VBQ0EsRUFBRTtJQUNFLFNBQVMsRUFBRSxlQUFlO0lBQzFCLE9BQU8sRUFBRSxDQUNiOztBSHVXRixjQUFjLENBQWQsSUFBYztFRzlXWixBQUFBLElBQUksQ0FBQztJQUNELFNBQVMsRUFBRSxXQUFXO0lBQ3RCLE9BQU8sRUFBRSxDQUNiLEdBQUM7RUFDRCxBQUFBLEVBQUUsQ0FBQztJQUNDLFNBQVMsRUFBRSxlQUFlO0lBQzFCLE9BQU8sRUFBRSxDQUNiLEdBQUM7O0FIMldILGFBQWEsQ0FBYixJQUFhO0VHbFhYLElBQUk7SUFDQSxTQUFTLEVBQUUsV0FBVztJQUN0QixPQUFPLEVBQUUsQ0FDYjtFQUNBLEVBQUU7SUFDRSxTQUFTLEVBQUUsZUFBZTtJQUMxQixPQUFPLEVBQUUsQ0FDYjs7QUgrV0YsVUFBVSxDQUFWLElBQVU7RUd0WFIsSUFBSTtJQUNBLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLE9BQU8sRUFBRSxDQUNiO0VBQ0EsRUFBRTtJQUNFLFNBQVMsRUFBRSxlQUFlO0lBQzFCLE9BQU8sRUFBRSxDQUNiOztBSCtWRixrQkFBa0IsQ0FBbEIsU0FBa0I7RUczVmhCLEVBQUU7SUFDRSxjQUFjLEVBQUUsVUFBVTtJQUMxQixNQUFNLEVBQUUsVUFBVTtJQUNsQixPQUFPLEVBQUUsQ0FBQztFQUVkLElBQUk7SUFDQSxjQUFjLEVBQUUsU0FBUztJQUN6QixNQUFNLEVBQUUsU0FBUztJQUNqQixPQUFPLEVBQUUsQ0FBQzs7QUh1VmhCLGVBQWUsQ0FBZixTQUFlO0VHL1ZiLEVBQUU7SUFDRSxjQUFjLEVBQUUsVUFBVTtJQUMxQixNQUFNLEVBQUUsVUFBVTtJQUNsQixPQUFPLEVBQUUsQ0FBQztFQUVkLElBQUk7SUFDQSxjQUFjLEVBQUUsU0FBUztJQUN6QixNQUFNLEVBQUUsU0FBUztJQUNqQixPQUFPLEVBQUUsQ0FBQzs7QUgyVmhCLGNBQWMsQ0FBZCxTQUFjO0VHbldaLEFBQUEsRUFBRSxDQUFDO0lBQ0MsY0FBYyxFQUFFLFVBQVU7SUFDMUIsTUFBTSxFQUFFLFVBQVU7SUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDYjtFQUNELEFBQUEsSUFBSSxDQUFDO0lBQ0QsY0FBYyxFQUFFLFNBQVM7SUFDekIsTUFBTSxFQUFFLFNBQVM7SUFDakIsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUg4VkgsYUFBYSxDQUFiLFNBQWE7RUd2V1gsRUFBRTtJQUNFLGNBQWMsRUFBRSxVQUFVO0lBQzFCLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLE9BQU8sRUFBRSxDQUFDO0VBRWQsSUFBSTtJQUNBLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLE1BQU0sRUFBRSxTQUFTO0lBQ2pCLE9BQU8sRUFBRSxDQUFDOztBSG1XaEIsVUFBVSxDQUFWLFNBQVU7RUczV1IsRUFBRTtJQUNFLGNBQWMsRUFBRSxVQUFVO0lBQzFCLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLE9BQU8sRUFBRSxDQUFDO0VBRWQsSUFBSTtJQUNBLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLE1BQU0sRUFBRSxTQUFTO0lBQ2pCLE9BQU8sRUFBRSxDQUFDOztBSG1WaEIsa0JBQWtCLENBQWxCLFFBQWtCO0VHOVVoQixJQUFJO0lBQ0EscUJBQXFCLEVBQUUsR0FBRztJQUMxQixhQUFhLEVBQUUsR0FDbkI7RUFDQSxFQUFFO0lBQ0UscUJBQXFCLEVBQUUsTUFBTTtJQUM3QixhQUFhLEVBQUUsTUFDbkI7O0FIMlVGLGVBQWUsQ0FBZixRQUFlO0VHbFZiLElBQUk7SUFDQSxxQkFBcUIsRUFBRSxHQUFHO0lBQzFCLGFBQWEsRUFBRSxHQUNuQjtFQUNBLEVBQUU7SUFDRSxxQkFBcUIsRUFBRSxNQUFNO0lBQzdCLGFBQWEsRUFBRSxNQUNuQjs7QUgrVUYsY0FBYyxDQUFkLFFBQWM7RUd0VlosQUFBQSxJQUFJLENBQUM7SUFDRCxxQkFBcUIsRUFBRSxHQUFHO0lBQzFCLGFBQWEsRUFBRSxHQUNuQixHQUFDO0VBQ0QsQUFBQSxFQUFFLENBQUM7SUFDQyxxQkFBcUIsRUFBRSxNQUFNO0lBQzdCLGFBQWEsRUFBRSxNQUNuQixHQUFDOztBSG1WSCxhQUFhLENBQWIsUUFBYTtFRzFWWCxJQUFJO0lBQ0EscUJBQXFCLEVBQUUsR0FBRztJQUMxQixhQUFhLEVBQUUsR0FDbkI7RUFDQSxFQUFFO0lBQ0UscUJBQXFCLEVBQUUsTUFBTTtJQUM3QixhQUFhLEVBQUUsTUFDbkI7O0FIdVZGLFVBQVUsQ0FBVixRQUFVO0VHOVZSLElBQUk7SUFDQSxxQkFBcUIsRUFBRSxHQUFHO0lBQzFCLGFBQWEsRUFBRSxHQUNuQjtFQUNBLEVBQUU7SUFDRSxxQkFBcUIsRUFBRSxNQUFNO0lBQzdCLGFBQWEsRUFBRSxNQUNuQjs7QUM3TkosQUFBQSxZQUFZLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLE1BQU07RUFDckIsZ0JBQWdCLEVOVVIsT0FBTztFTVRmLFVBQVUsRUFBRSx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUk7RUFDakQsUUFBUSxFQUFFLEtBQUs7RUFDZixNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsZ0JBQWdCO0VBQzNCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLFdBQVc7RUFDdkIsTUFBTSxFQUFFLE9BQU87RUFDZixVQUFVLEVBQUUsTUFBTTtFQUNsQixPQUFPLEVBQUUsSUFBSTtFQUNiLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGVBQWUsRUFBRSxZQUFZO0VBQzdCLFdBQVcsRUFBRSxNQUFNLEdBMkN0QjtFSjVEQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lJRHJDLEFBQUEsWUFBWSxDQUFDO01BcUJMLEtBQUssRUFBRSxNQUFNLEdBd0NwQjtFQTdERCxBQXdCSSxZQXhCUSxBQXdCUCxPQUFPLENBQUM7SUFDTCxVQUFVLEVBQUUsT0FBTztJQUNuQixTQUFTLEVBQUUsYUFBYTtJQUN4QixPQUFPLEVBQUUsQ0FBQyxHQUNiO0VBNUJMLEFBOEJJLFlBOUJRLENBOEJSLFNBQVMsQ0FBQztJQUNOLE9BQU8sRUFBRSxLQUFLO0lBQ2QsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDO0lBQ1YsTUFBTSxFQUFFLHFCQUFxQjtJQUM3QixhQUFhLEVBQUUsY0FBYztJQUM3QixVQUFVLEVBQUUsSUFBSTtJQUNoQixhQUFhLEVBQUUsR0FBRyxHQWFyQjtJQW5ETCxBQXdDUSxZQXhDSSxDQThCUixTQUFTLEFBVUosVUFBVyxDQUFBLENBQUMsRUFBRTtNQUNYLFNBQVMsRUFBRSw2QkFBNkIsR0FDM0M7SUExQ1QsQUE0Q1EsWUE1Q0ksQ0E4QlIsU0FBUyxBQWNKLFVBQVcsQ0FBQSxDQUFDLEVBQUU7TUFDWCxTQUFTLEVBQUUsNkJBQTZCLEdBQzNDO0lBOUNULEFBZ0RRLFlBaERJLENBOEJSLFNBQVMsQUFrQkosVUFBVyxDQUFBLENBQUMsRUFBRTtNQUNYLFNBQVMsRUFBRSwyQkFBMkIsR0FDekM7RUFJRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lBdERoRCxBQXFESSxZQXJEUSxBQXFEUCxNQUFNLENBQUM7TUFFQSxVQUFVLEVBQUUsT0FBTztNQUNuQixPQUFPLEVBQUUsQ0FBQztNQUNWLFNBQVMsRUFBRSxhQUFhLEdBRy9COztDQzVETCxBQUFBLEFBQUEsUUFBQyxDQUFTLGFBQWEsQUFBdEIsRUFBd0I7RUFDckIsU0FBUyxFQUFFLGtCQUFrQjtFQUM3QixPQUFPLEVBQUUsQ0FBQztFQUNWLG1CQUFtQixFQUFFLGtCQUFrQixHQUsxQztHQVJELEFBQUEsQUFJSSxRQUpILENBQVMsYUFBYSxBQUF0QixDQUlJLFlBQVksQ0FBQztJQUNWLFNBQVMsRUFBRSxlQUFlO0lBQzFCLE9BQU8sRUFBRSxDQUFDLEdBQ2I7O0NBR0wsQUFBQSxBQUFBLFFBQUMsQ0FBUyxlQUFlLEFBQXhCLEVBQTBCO0VBQ3ZCLFNBQVMsRUFBRSxtQkFBbUI7RUFDOUIsT0FBTyxFQUFFLENBQUM7RUFDVixtQkFBbUIsRUFBRSxrQkFBa0IsR0FLMUM7R0FSRCxBQUFBLEFBSUksUUFKSCxDQUFTLGVBQWUsQUFBeEIsQ0FJSSxZQUFZLENBQUM7SUFDVixTQUFTLEVBQUUsZUFBZTtJQUMxQixPQUFPLEVBQUUsQ0FBQyxHQUNiOztDQUdMLEFBQUEsQUFBQSxRQUFDLENBQVMsZUFBZSxBQUF4QixFQUEwQjtFQUN2QixTQUFTLEVBQUUsa0JBQWtCO0VBQzdCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsbUJBQW1CLEVBQUUsa0JBQWtCLEdBSzFDO0dBUkQsQUFBQSxBQUlJLFFBSkgsQ0FBUyxlQUFlLEFBQXhCLENBSUksWUFBWSxDQUFDO0lBQ1YsU0FBUyxFQUFFLGVBQWU7SUFDMUIsT0FBTyxFQUFFLENBQUMsR0FDYjs7Q0FHTCxBQUFBLEFBQUEsUUFBQyxDQUFTLGdCQUFnQixBQUF6QixFQUEyQjtFQUN4QixTQUFTLEVBQUUsbUJBQW1CO0VBQzlCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsbUJBQW1CLEVBQUUsa0JBQWtCLEdBSzFDO0dBUkQsQUFBQSxBQUlJLFFBSkgsQ0FBUyxnQkFBZ0IsQUFBekIsQ0FJSSxZQUFZLENBQUM7SUFDVixTQUFTLEVBQUUsZUFBZTtJQUMxQixPQUFPLEVBQUUsQ0FBQyxHQUNiOztBQ3JDTCxBQUFBLE9BQU8sQ0FBQztFQUNOLFlBQVksRUFBRSxNQUFNLEdBcU5yQjtFTnJOQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lNRHRDLEFBQUEsT0FBTyxDQUFDO01BR0osT0FBTyxFQUFFLElBQUksR0FtTmhCO0VBdE5ELEFBTUksT0FORyxDQU1GLFNBQUksQ0FBQztJQUNKLE1BQU0sRUFBRSxJQUFJLEdBK0ViO0lBdEZMLEFBU00sT0FUQyxDQU1GLFNBQUksR0FHRCxVQUFVLENBQUM7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLGVBQWUsRUFBRSxhQUFhO01BQzlCLE1BQU0sRUFBRSxPQUFPLEdBeUVoQjtNQXJGUCxBQWFRLE9BYkQsQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQ0FBQztRQUNYLE1BQU0sRUFBRSxJQUFJO1FOK0NwQixPQUFPLEVBQUUsWUFBWTtRQUNyQixPQUFPLEVBQUUsU0FBUztRQUNsQixPQUFPLEVBQUUsUUFBUTtRQUNqQixPQUFPLEVBQUUsT0FBTztRQUNoQixPQUFPLEVBQUUsSUFBSTtRTWpETCxXQUFXLEVBQUUsTUFBTSxHQW9FcEI7UUFwRlQsQUFtQlksT0FuQkwsQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUFLVCxXQUFXLEdBQ1IsVUFBVSxDQUFDO1VBQ1gsSUFBSSxFQUFFLE9BQU87VUFDYixLQUFLLEVBQUUsQ0FBQyxHQUNUO1FBdEJiLEFBeUJVLE9BekJILENBTUYsU0FBSSxHQUdELFVBQVUsR0FJUixVQUFVLEFBWVQsUUFBUSxDQUFDO1VBQ1IsT0FBTyxFQUFFLEVBQUU7VUFDWCxRQUFRLEVBQUUsUUFBUTtVQUNsQixNQUFNLEVBQUUsQ0FBQztVTnlRbkIsUUFBUSxFQUFFLFFBQVE7VUFDbEIsSUFBSSxFQUFFLEdBQUc7VUFDVCxTQUFTLEVBQUUsZ0JBQWdCO1VBQzNCLGlCQUFpQixFQUFFLGdCQUFnQjtVQUNuQyxjQUFjLEVBQUUsZ0JBQWdCO1VBQ2hDLFlBQVksRUFBRSxnQkFBZ0I7VU01UXBCLE1BQU0sRUFBRSxNQUFNO1VBQ2QsVUFBVSxFUmZSLE9BQU87VVFnQlQsS0FBSyxFQUFFLENBQUM7VUFDUixhQUFhLEVBQUUsS0FBSztVTndLOUIsVUFBVSxFQUFFLGdCQUFnQjtVQUM1QixrQkFBa0IsRUFBRSxnQkFBZ0I7VUFDcEMsZUFBZSxFQUFFLGdCQUFnQjtVQUNqQyxjQUFjLEVBQUUsZ0JBQWdCO1VBQ2hDLGFBQWEsRUFBRSxnQkFBZ0IsR00xS3RCO1FBbkNYLEFBdUNZLE9BdkNMLENBTUYsU0FBSSxHQUdELFVBQVUsR0FJUixVQUFVLEFBd0JULE1BQU0sQUFBQSxJQUFLLENBQUEsU0FBUyxDQUVsQixRQUFRLEVBdkNyQixPQUFPLENBTUYsU0FBSSxHQUdELFVBQVUsR0FJUixVQUFVLEFBeUJULElBQUssQ0FBQSxrQkFBa0IsQ0FDckIsUUFBUSxDQUFDO1VBQ1IsS0FBSyxFQUFFLGlCQUFpQixHQUN6QjtRQXpDYixBQThDYyxPQTlDUCxDQU1GLFNBQUksR0FHRCxVQUFVLEdBSVIsVUFBVSxBQStCVCxTQUFTLEFBQ1AsTUFBTSxBQUNKLFFBQVEsQ0FBQztVQUNSLEtBQUssRUFBRSxDQUFDLEdBQ1Q7UUFoRGYsQUFzRGMsT0F0RFAsQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUF1Q1QsTUFBTSxHQUNILENBQUMsQ0FDRCxDQUFDLENBQUM7VUFDQSxTQUFTLEVBQUUsY0FBYyxHQUMxQjtRQXhEZixBQTREVSxPQTVESCxDQU1GLFNBQUksR0FHRCxVQUFVLEdBSVIsVUFBVSxHQStDUixVQUFVLENBQUM7VUFDWCxNQUFNLEVBQUUsSUFBSTtVTkF0QixPQUFPLEVBQUUsWUFBWTtVQUNyQixPQUFPLEVBQUUsU0FBUztVQUNsQixPQUFPLEVBQUUsUUFBUTtVQUNqQixPQUFPLEVBQUUsT0FBTztVQUNoQixPQUFPLEVBQUUsSUFBSTtVTUZILFdBQVcsRUFBRSxNQUFNO1VBQ25CLEtBQUssRVJoREgsT0FBTztVUWlEVCxPQUFPLEVBQUUsTUFBTSxHQUNoQjtRQWxFWCxBQXlFWSxPQXpFTCxDQU1GLFNBQUksR0FHRCxVQUFVLEdBSVIsVUFBVSxBQXVEVCxrQkFBa0IsR0FLZixDQUFDLEVBekVmLE9BQU8sQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUF3RFQsa0JBQWtCLEdBSWYsQ0FBQyxFQXpFZixPQUFPLENBTUYsU0FBSSxHQUdELFVBQVUsR0FJUixVQUFVLEFBeURULG9CQUFvQixHQUdqQixDQUFDLEVBekVmLE9BQU8sQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUEwRFQsb0JBQW9CLEdBRWpCLENBQUMsRUF6RWYsT0FBTyxDQU1GLFNBQUksR0FHRCxVQUFVLEdBSVIsVUFBVSxBQTJEVCxvQkFBb0IsR0FDakIsQ0FBQyxDQUFDO1VBQ0YsV0FBVyxFQUFFLEdBQUcsR0FDakI7UUEzRWIsQUE0RVksT0E1RUwsQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUF1RFQsa0JBQWtCLEFBUWhCLFFBQVEsRUE1RXJCLE9BQU8sQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUF3RFQsa0JBQWtCLEFBT2hCLFFBQVEsRUE1RXJCLE9BQU8sQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUF5RFQsb0JBQW9CLEFBTWxCLFFBQVEsRUE1RXJCLE9BQU8sQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUEwRFQsb0JBQW9CLEFBS2xCLFFBQVEsRUE1RXJCLE9BQU8sQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsQUEyRFQsb0JBQW9CLEFBSWxCLFFBQVEsQ0FBQztVQUNSLEtBQUssRUFBRSxpQkFBaUIsR0FDekI7UUE5RWIsQUFpRlUsT0FqRkgsQ0FNRixTQUFJLEdBR0QsVUFBVSxHQUlSLFVBQVUsR0FvRVIsVUFBVSxDQUFDO1VBQ1gsR0FBRyxFQUFFLGlCQUFpQixHQUN2QjtFQW5GWCxBQXdGSSxPQXhGRyxDQXdGRixVQUFLLENBQUM7SU4zQlQsT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLElBQUk7SU15QlQsV0FBVyxFQUFFLE1BQU0sR0FDcEI7RUEzRkwsQUE2RkksT0E3RkcsQ0E2RkYsVUFBSyxDQUFDO0lBQ0wsUUFBUSxFQUFFLFFBQVE7SU44RnRCLFVBQVUsRU03RmMsSUFBSSxDQUFFLFdBQVc7SU44RnpDLGtCQUFrQixFTTlGTSxJQUFJLENBQUUsV0FBVztJTitGekMsZUFBZSxFTS9GUyxJQUFJLENBQUUsV0FBVztJTmdHekMsY0FBYyxFTWhHVSxJQUFJLENBQUUsV0FBVztJTmlHekMsYUFBYSxFTWpHVyxJQUFJLENBQUUsV0FBVztJTmtHekMsZ0JBQWdCLEVBTjBDLEVBQUU7SUFPNUQsd0JBQXdCLEVBUGtDLEVBQUU7SUFRNUQscUJBQXFCLEVBUnFDLEVBQUU7SUFTNUQsb0JBQW9CLEVBVHNDLEVBQUU7SUFVNUQsbUJBQW1CLEVBVnVDLEVBQUUsR015QnpEO0lBcE5MLEFBa0dRLE9BbEdELENBNkZGLFVBQUssQUFJSCxNQUFNLEdBQ0gsVUFBVSxDQUFDO01Oa05uQixPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxPQUFPO01BQ25CLFNBQVMsRUFBRSxlQUFlLEdNek1uQjtNQTdHVCxBQXdHYyxPQXhHUCxDQTZGRixVQUFLLEFBSUgsTUFBTSxHQUNILFVBQVUsR0FHUixVQUFVLEFBQ1Qsa0JBQWtCLEdBRWYsQ0FBQyxFQXhHakIsT0FBTyxDQTZGRixVQUFLLEFBSUgsTUFBTSxHQUNILFVBQVUsR0FHUixVQUFVLEFBRVQsa0JBQWtCLEdBQ2YsQ0FBQyxDQUFDO1FBQ0YsS0FBSyxFUnpGUCxPQUFPLEdRMEZOO0lBMUdmLEFBZ0hNLE9BaEhDLENBNkZGLFVBQUssQ0FtQkosVUFBVTtJQWhIaEIsT0FBTyxDQTZGRixVQUFLLENBb0JKLENBQUMsQ0FBQztNTjJFTixVQUFVLEVNMUVnQixJQUFJLENBQUUsV0FBVztNTjJFM0Msa0JBQWtCLEVNM0VRLElBQUksQ0FBRSxXQUFXO01ONEUzQyxlQUFlLEVNNUVXLElBQUksQ0FBRSxXQUFXO01ONkUzQyxjQUFjLEVNN0VZLElBQUksQ0FBRSxXQUFXO01OOEUzQyxhQUFhLEVNOUVhLElBQUksQ0FBRSxXQUFXO01OK0UzQyxnQkFBZ0IsRUFOMEMsRUFBRTtNQU81RCx3QkFBd0IsRUFQa0MsRUFBRTtNQVE1RCxxQkFBcUIsRUFScUMsRUFBRTtNQVM1RCxvQkFBb0IsRUFUc0MsRUFBRTtNQVU1RCxtQkFBbUIsRUFWdUMsRUFBRSxHTXBFdkQ7TUF2SFAsQUFvSFEsT0FwSEQsQ0E2RkYsVUFBSyxDQW1CSixVQUFVLENBSVIsQ0FBQztNQXBIVCxPQUFPLENBNkZGLFVBQUssQ0FvQkosQ0FBQyxDQUdDLENBQUMsQ0FBQztRTndFUixVQUFVLEVNdkVrQixJQUFJLENBQUUsV0FBVztRTndFN0Msa0JBQWtCLEVNeEVVLElBQUksQ0FBRSxXQUFXO1FOeUU3QyxlQUFlLEVNekVhLElBQUksQ0FBRSxXQUFXO1FOMEU3QyxjQUFjLEVNMUVjLElBQUksQ0FBRSxXQUFXO1FOMkU3QyxhQUFhLEVNM0VlLElBQUksQ0FBRSxXQUFXO1FONEU3QyxnQkFBZ0IsRUFOMEMsRUFBRTtRQU81RCx3QkFBd0IsRUFQa0MsRUFBRTtRQVE1RCxxQkFBcUIsRUFScUMsRUFBRTtRQVM1RCxvQkFBb0IsRUFUc0MsRUFBRTtRQVU1RCxtQkFBbUIsRUFWdUMsRUFBRSxHTXJFckQ7SUF0SFQsQUF5SE0sT0F6SEMsQ0E2RkYsVUFBSyxHQTRCRixVQUFVO0lBekhsQixPQUFPLENBNkZGLFVBQUssR0E2QkYsQ0FBQyxDQUFDO01BQ0YsS0FBSyxFUjNHQyxPQUFPO01RNEdiLFdBQVcsRUFBRSxHQUFHO01BQ2hCLE9BQU8sRUFBRSxLQUFLO01BQ2QsU0FBUyxFQUFFLE1BQU0sR0FTbEI7TUF2SVAsQUFnSVEsT0FoSUQsQ0E2RkYsVUFBSyxHQTRCRixVQUFVLEdBT1IsQ0FBQztNQWhJWCxPQUFPLENBNkZGLFVBQUssR0E2QkYsQ0FBQyxHQU1DLENBQUMsQ0FBQztRQUNGLE9BQU8sRUFBRSxJQUFJO1FBQ2IsV0FBVyxFQUFFLEdBQUc7UUFDaEIsV0FBVyxFQUFFLE1BQU07UUFDbkIsU0FBUyxFQUFFLE1BQU07UUFDakIsS0FBSyxFUnJIRCxPQUFPLEdRc0haO0lBdElULEFBMklVLE9BM0lILENBNkZGLFVBQUssQUE0Q0gsU0FBUyxHQUNOLENBQUMsR0FDQyxDQUFDLENBQUM7TUFDRixPQUFPLEVBQUUsWUFBWSxHQUN0QjtJQTdJWCxBQWlKTSxPQWpKQyxDQTZGRixVQUFLLEdBb0RGLFVBQVUsQ0FBQztNQUNYLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxDQUFDO01BQ04sSUFBSSxFQUFFLENBQUM7TUFDUCxTQUFTLEVBQUUsS0FBSztNQUNoQixTQUFTLEVBQUUsS0FBSztNTnpGdEIsT0FBTyxFQUFFLFlBQVk7TUFDckIsT0FBTyxFQUFFLFNBQVM7TUFDbEIsT0FBTyxFQUFFLFFBQVE7TUFDakIsT0FBTyxFQUFFLE9BQU87TUFDaEIsT0FBTyxFQUFFLElBQUk7TU11RlAsY0FBYyxFQUFFLE1BQU07TUFDdEIsV0FBVyxFQUFFLFVBQVU7TUFDdkIsVUFBVSxFQUFFLEtBQUs7TUFDakIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFFLElBQUcsQ0FBQyxzQkFBc0IsRUFDbkQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUUsSUFBRyxDQUFDLHNCQUFzQjtNTjZDL0MsVUFBVSxFQUFFLGdCQUFnQjtNQUM1QixrQkFBa0IsRUFBRSxnQkFBZ0I7TUFDcEMsZUFBZSxFQUFFLGdCQUFnQjtNQUNqQyxjQUFjLEVBQUUsZ0JBQWdCO01BQ2hDLGFBQWEsRUFBRSxnQkFBZ0I7TUFpRy9CLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLE1BQU07TUFDbEIsU0FBUyxFQUFFLGtCQUFpQixHTTdGdkI7TUFuTlAsQUFnS1EsT0FoS0QsQ0E2RkYsVUFBSyxHQW9ERixVQUFVLEdBZVIsVUFBVSxDQUFDO1FBQ1gsV0FBVyxFQUFFLENBQUM7UUFDZCxLQUFLLEVBQUUsSUFBSSxHQWdEWjtRQWxOVCxBQW9LWSxPQXBLTCxDQTZGRixVQUFLLEdBb0RGLFVBQVUsR0FlUixVQUFVLEFBR1QsTUFBTSxBQUNKLE9BQU8sQ0FBQztVQUNQLE9BQU8sRUFBRSxDQUFDLEdBQ1g7UUF0S2IsQUF3S1ksT0F4S0wsQ0E2RkYsVUFBSyxHQW9ERixVQUFVLEdBZVIsVUFBVSxBQUdULE1BQU0sR0FLSCxVQUFVO1FBeEt4QixPQUFPLENBNkZGLFVBQUssR0FvREYsVUFBVSxHQWVSLFVBQVUsQUFHVCxNQUFNLEdBTUgsQ0FBQyxDQUFDO1VBQ0YsS0FBSyxFUjNKSixPQUFPLEdRb0tUO1VBbkxiLEFBNEtjLE9BNUtQLENBNkZGLFVBQUssR0FvREYsVUFBVSxHQWVSLFVBQVUsQUFHVCxNQUFNLEdBS0gsVUFBVSxBQUlULE9BQU87VUE1S3RCLE9BQU8sQ0E2RkYsVUFBSyxHQW9ERixVQUFVLEdBZVIsVUFBVSxBQUdULE1BQU0sR0FNSCxDQUFDLEFBR0EsT0FBTyxDQUFDO1lBQ1AsTUFBTSxFQUFFLElBQUksR0FDYjtRQTlLZixBQXNMVSxPQXRMSCxDQTZGRixVQUFLLEdBb0RGLFVBQVUsR0FlUixVQUFVLEdBc0JSLFVBQVU7UUF0THRCLE9BQU8sQ0E2RkYsVUFBSyxHQW9ERixVQUFVLEdBZVIsVUFBVSxHQXVCUixDQUFDLENBQUM7VUFDRixPQUFPLEVBQUUsYUFBYTtVTjNIaEMsT0FBTyxFQUFFLFlBQVk7VUFDckIsT0FBTyxFQUFFLFNBQVM7VUFDbEIsT0FBTyxFQUFFLFFBQVE7VUFDakIsT0FBTyxFQUFFLE9BQU87VUFDaEIsT0FBTyxFQUFFLElBQUk7VU15SEgsV0FBVyxFQUFFLE1BQU07VUFDbkIsZUFBZSxFQUFFLGFBQWE7VUFDOUIsUUFBUSxFQUFFLFFBQVEsR0FpQm5CO1VBN01YLEFBOExZLE9BOUxMLENBNkZGLFVBQUssR0FvREYsVUFBVSxHQWVSLFVBQVUsR0FzQlIsVUFBVSxBQVFULE9BQU87VUE5THBCLE9BQU8sQ0E2RkYsVUFBSyxHQW9ERixVQUFVLEdBZVIsVUFBVSxHQXVCUixDQUFDLEFBT0EsT0FBTyxDQUFDO1lOb1FuQixPQUFPLEVBQUUsRUFBRTtZQUNYLFFBQVEsRUFBRSxRQUFRO1lBOUpsQixRQUFRLEVBQUUsUUFBUTtZQUNsQixJQUFJLEVBQUUsR0FBRztZQUNULFNBQVMsRUFBRSxnQkFBZ0I7WUFDM0IsaUJBQWlCLEVBQUUsZ0JBQWdCO1lBQ25DLGNBQWMsRUFBRSxnQkFBZ0I7WUFDaEMsWUFBWSxFQUFFLGdCQUFnQjtZTXpHbEIsTUFBTSxFQUFFLENBQUM7WUFDVCxVQUFVLEVSbExWLE9BQU87WVFtTFAsS0FBSyxFQUFFLE1BQU07WUFDYixPQUFPLEVBQUUsRUFBRTtZQUNYLFVBQVUsRUFBRSxvQkFBb0I7WUFDaEMsSUFBSSxFQUFFLENBQUMsR0FDUjtVQXZNYixBQXdNWSxPQXhNTCxDQTZGRixVQUFLLEdBb0RGLFVBQVUsR0FlUixVQUFVLEdBc0JSLFVBQVUsR0FrQlIsQ0FBQztVQXhNZixPQUFPLENBNkZGLFVBQUssR0FvREYsVUFBVSxHQWVSLFVBQVUsR0F1QlIsQ0FBQyxHQWlCQyxDQUFDLENBQUM7WUFDRixTQUFTLEVBQUUsY0FBYyxDQUFDLGlCQUFpQjtZQUMzQyxVQUFVLEVBQUUsTUFBTTtZQUNsQixTQUFTLEVBQUUsSUFBSSxHQUNoQjtRQTVNYixBQStNVSxPQS9NSCxDQTZGRixVQUFLLEdBb0RGLFVBQVUsR0FlUixVQUFVLEdBK0NSLFVBQVUsQ0FBQztVQUNYLElBQUksRUFBRSxJQUFJLEdBQ1g7O0FBT1gsQUFVWSxXQVZELENBRU4sU0FBSSxHQUNELFVBQVUsR0FDUixVQUFVLEFBQ1Qsa0JBQWtCLEdBS2YsQ0FBQyxFQVZmLFdBQVcsQ0FFTixTQUFJLEdBQ0QsVUFBVSxHQUNSLFVBQVUsQUFFVCxrQkFBa0IsR0FJZixDQUFDLEVBVmYsV0FBVyxDQUVOLFNBQUksR0FDRCxVQUFVLEdBQ1IsVUFBVSxBQUdULG9CQUFvQixHQUdqQixDQUFDLEVBVmYsV0FBVyxDQUVOLFNBQUksR0FDRCxVQUFVLEdBQ1IsVUFBVSxBQUlULG9CQUFvQixHQUVqQixDQUFDLEVBVmYsV0FBVyxDQUVOLFNBQUksR0FDRCxVQUFVLEdBQ1IsVUFBVSxBQUtULG9CQUFvQixHQUNqQixDQUFDLENBQUM7RUFDRixLQUFLLEVSck5QLE9BQU87RVFzTkwsWUFBWSxFQUFFLElBQUksR0FLbkI7RUFqQmIsQUFjYyxXQWRILENBRU4sU0FBSSxHQUNELFVBQVUsR0FDUixVQUFVLEFBQ1Qsa0JBQWtCLEdBS2YsQ0FBQyxBQUlBLE9BQU8sRUFkdEIsV0FBVyxDQUVOLFNBQUksR0FDRCxVQUFVLEdBQ1IsVUFBVSxBQUVULGtCQUFrQixHQUlmLENBQUMsQUFJQSxPQUFPLEVBZHRCLFdBQVcsQ0FFTixTQUFJLEdBQ0QsVUFBVSxHQUNSLFVBQVUsQUFHVCxvQkFBb0IsR0FHakIsQ0FBQyxBQUlBLE9BQU8sRUFkdEIsV0FBVyxDQUVOLFNBQUksR0FDRCxVQUFVLEdBQ1IsVUFBVSxBQUlULG9CQUFvQixHQUVqQixDQUFDLEFBSUEsT0FBTyxFQWR0QixXQUFXLENBRU4sU0FBSSxHQUNELFVBQVUsR0FDUixVQUFVLEFBS1Qsb0JBQW9CLEdBQ2pCLENBQUMsQUFJQSxPQUFPLENBQUM7SUFDUCxPQUFPLEVBQUUsQ0FBQyxHQUNYOztBQWhCZixBQXFCWSxXQXJCRCxDQUVOLFNBQUksR0FDRCxVQUFVLEdBQ1IsVUFBVSxBQWdCVCxJQUFLLENBQUEsa0JBQWtCLElBQ3BCLENBQUMsQ0FBQztFQUNGLEtBQUssRVJoT1AsT0FBTyxHUWlPTjs7QUF2QmIsQUEwQlUsV0ExQkMsQ0FFTixTQUFJLEdBQ0QsVUFBVSxHQUNSLFVBQVUsR0FzQlIsQ0FBQyxDQUFDO0VBQ0YsT0FBTyxFQUFFLE1BQU07RU50THpCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLE9BQU8sRUFBRSxPQUFPO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VNb0xILGVBQWUsRUFBRSxhQUFhO0VBQzlCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLEtBQUssRUFBRSxPQUFPO0VBQ2QsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFQUFFLFNBQVM7RUFDekIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENScE9sQixrQkFBa0I7RVFxT3hCLFFBQVEsRUFBRSxRQUFRLEdBS25CO0VBekNYLEFBc0NZLFdBdENELENBRU4sU0FBSSxHQUNELFVBQVUsR0FDUixVQUFVLEdBc0JSLENBQUMsQUFZQSxRQUFRLENBQUM7SUFDUixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQXhDYixBQWlEVSxXQWpEQyxDQThDTixVQUFLLEFBQ0gsU0FBUyxHQUNOLENBQUMsR0FDQyxDQUFDLENBQUM7RUFDRixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQW5EWCxBQXlEVSxXQXpEQyxDQThDTixVQUFLLEFBU0gsT0FBTyxHQUNKLENBQUMsR0FDQyxDQUFDLENBQUM7RUFDRixTQUFTLEVBQUUsY0FBYyxHQUMxQjs7QUEzRFgsQUErRE0sV0EvREssQ0E4Q04sVUFBSyxDQWlCSixDQUFDLENBQUM7RUFDQSxRQUFRLEVBQUUsUUFBUSxHQVNuQjtFQXpFUCxBQWtFUSxXQWxFRyxDQThDTixVQUFLLENBaUJKLENBQUMsQ0FHQyxDQUFDLENBQUM7SUFDQSxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lObE1wQixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJTTJMdkIsT0FBTyxFQUFFLElBQUk7SU5yRnJCLFVBQVUsRUFBRSxnQkFBZ0I7SUFDNUIsa0JBQWtCLEVBQUUsZ0JBQWdCO0lBQ3BDLGVBQWUsRUFBRSxnQkFBZ0I7SUFDakMsY0FBYyxFQUFFLGdCQUFnQjtJQUNoQyxhQUFhLEVBQUUsZ0JBQWdCLEdNbUZ4Qjs7QUF4RVQsQUEyRU0sV0EzRUssQ0E4Q04sVUFBSyxHQTZCRixDQUFDLENBQUM7RU50T1IsT0FBTyxFQUFFLFlBQVk7RUFDckIsT0FBTyxFQUFFLFNBQVM7RUFDbEIsT0FBTyxFQUFFLFFBQVE7RUFDakIsT0FBTyxFQUFFLE9BQU87RUFDaEIsT0FBTyxFQUFFLElBQUk7RU1vT1AsV0FBVyxFQUFFLE1BQU07RUFDbkIsZUFBZSxFQUFFLGFBQWE7RUFFOUIsT0FBTyxFQUFFLE1BQU07RUFDZixTQUFTLEVBQUUsTUFBTTtFQUNqQixLQUFLLEVSclJBLE9BQU87RVFzUlosV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFQUFFLFNBQVMsR0FDMUI7O0FBckZQLEFBdUZNLFdBdkZLLENBOENOLFVBQUssR0F5Q0YsVUFBVSxDQUFDO0VBQ1gsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixRQUFRLEVBQUUsUUFBUSxHQTBCbkI7RUFwSFAsQUE0RlEsV0E1RkcsQ0E4Q04sVUFBSyxHQXlDRixVQUFVLEFBS1QsUUFBUSxDQUFDO0lBQ1IsT0FBTyxFQUFFLEVBQUU7SUFDWCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsSUFBSTtJQUNULE1BQU0sRUFBRSxJQUFJO0lBQ1osSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsR0FBRztJQUNWLGdCQUFnQixFUnBTUixrQkFBa0IsR1FxUzNCO0VBcEdULEFBeUdZLFdBekdELENBOENOLFVBQUssR0F5Q0YsVUFBVSxHQWVSLFVBQVUsQUFDVCxrQkFBa0IsR0FFZixDQUFDLEVBekdmLFdBQVcsQ0E4Q04sVUFBSyxHQXlDRixVQUFVLEdBZVIsVUFBVSxBQUVULGtCQUFrQixHQUNmLENBQUMsQ0FBQztJQUNGLEtBQUssRVJwVFAsT0FBTyxHUXFUTjtFQTNHYixBQStHWSxXQS9HRCxDQThDTixVQUFLLEdBeUNGLFVBQVUsR0FlUixVQUFVLEFBUVQsSUFBSyxDQUFBLGtCQUFrQixJQUNwQixDQUFDLENBQUM7SUFDRixLQUFLLEVSMVRQLE9BQU8sR1EyVE47O0FDelViLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsS0FBSyxFQUFFLE1BQU0sR0FDaEI7O0FBR0QsV0FBVztBQUVYLEFBQUEseUJBQXlCLENBQUM7RUFDdEIsVUFBVSxFQUFFLE9BQU8sR0FDdEI7O0FBR0QsWUFBWTtBQUVaLEFBQUEseUJBQXlCLENBQUM7RUFDdEIsVUFBVSxFVERGLE9BQU8sR1NFbEI7O0FBR0QscUJBQXFCO0FBRXJCLEFBQUEseUJBQXlCLEFBQUEsTUFBTSxDQUFDO0VBQzVCLFVBQVUsRVRSRixPQUFPLEdTU2xCOztBQ3ZCRCxBQUFBLEdBQUcsQ0FBQztFQUNGLFFBQVEsRUFBRSxLQUFLO0VBQ2YsS0FBSyxFQUFFLElBQUk7RUFDWCxHQUFHLEVBQUUsQ0FBQztFQUNOLE1BQU0sRUFBRSxjQUFjO0VBQ3RCLFVBQVUsRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO0VBQ3JELFVBQVUsRUFBRSxnQkFBZ0I7RUFDNUIsT0FBTyxFQUFFLEVBQUU7RUFDWCxVQUFVLEVBQUUsSUFBSSxHQStPakI7RUF2UEQsQUFTRSxHQVRDLEFBU0EsT0FBTyxDQUFDO0lBQ1AsU0FBUyxDQUFBLEtBQUMsR0FJWDtJQWRILEFBV0ksR0FYRCxBQVNBLE9BQU8sQ0FFTixpQkFBaUIsQ0FBQztNQUNoQixLQUFLLEVBQUUsS0FBSyxHQUNiO0VBRUYsQUFBRCxRQUFNLENBQUM7SUFDTCxVQUFVLEVBQUUsS0FBSztJQUNqQixVQUFVLEVBQUUsV0FBVyxHQUt4QjtJQVBBLEFBR0MsUUFISSxBQUdILE9BQU8sQ0FBQztNQUNQLFVBQVUsRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO01BQ3JELFVBQVUsRUFBRSxJQUFJLEdBQ2pCO0VBRUYsQUFBRCxRQUFNLENBQUM7SVJzQ1AsT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLElBQUk7SVF4Q1gsV0FBVyxFQUFFLE1BQU07SUFDbkIsTUFBTSxFQUFFLE9BQU87SUFDZixlQUFlLEVBQUUsYUFBYTtJQUM5QixNQUFNLEVBQUUsU0FBUyxHQUNsQjtFQUNBLEFBQUQsUUFBTSxDQUFDO0lBQ0wsT0FBTyxFQUFFLFFBQVEsR0FnQmxCO0lSOUNELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TVE2Qm5DLEFBQUQsUUFBTSxDQUFDO1FBR0gsUUFBUSxFQUFFLFFBQVE7UUFDbEIsR0FBRyxFQUFFLEdBQUc7UUFDUixJQUFJLEVBQUUsR0FBRztRQUNULFNBQVMsRUFBRSxxQkFBcUI7UUFDaEMsT0FBTyxFQUFFLENBQUMsR0FVYjtJQWpCQSxBQVNDLFFBVEksQ0FTSixpQkFBaUIsQ0FBQztNQUNoQixLQUFLLEVBQUUsS0FBSztNQUNaLFVBQVUsRUFBRSxnQkFBZ0I7TVJpRGhDLE9BQU8sRUFBRSxZQUFZO01BQ3JCLE9BQU8sRUFBRSxTQUFTO01BQ2xCLE9BQU8sRUFBRSxRQUFRO01BQ2pCLE9BQU8sRUFBRSxPQUFPO01BQ2hCLE9BQU8sRUFBRSxJQUFJO01BQ2IsZUFBZSxFQUFFLE1BQU07TUFDdkIsV0FBVyxFQUFFLE1BQU07TUFDbkIsbUJBQW1CLEVBQUUsTUFBTTtNQUMzQixlQUFlLEVBQUUsTUFBTTtNQUN2Qix1QkFBdUIsRUFBRSxNQUFNLEdRckQ1QjtNUjdDSCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FRNkJsQyxBQVNDLFFBVEksQ0FTSixpQkFBaUIsQ0FBQztVQUtkLEtBQUssRUFBRSxnQkFBZ0IsR0FFMUI7RUFFRixBQUFELFFBQU0sQ0FBQztJQUNMLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLElBQUksRUFBRSxDQUFDLEdBQ1I7RUFDQSxBQUFELE9BQUssQ0FBQztJUlNOLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lRWFgsV0FBVyxFQUFFLE1BQU07SUFDbkIsZUFBZSxFQUFFLFFBQVE7SUFDekIsR0FBRyxFQUFFLElBQUksR0FDVjtFQUNBLEFBQUQsT0FBSyxDQUFDO0lSR04sT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLElBQUk7SVFMWCxXQUFXLEVBQUUsTUFBTTtJQUNuQixHQUFHLEVBQUUsSUFBSSxHQXVCVjtJUm5GRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01ReURuQyxBQUFELE9BQUssQ0FBQztRQUtGLEdBQUcsRUFBRSxNQUFNLEdBcUJkO0lSbkZELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TVF5RGxDLEFBQUQsT0FBSyxDQUFDO1FBUUYsR0FBRyxFQUFFLE1BQU0sR0FrQmQ7SVJ2RUQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNUTZDbkMsQUFZSyxPQVpELENBVUgsSUFBSSxDQUVBLEtBQUssQ0FBQztRQUNKLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7SVJ2RVAsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNUXlEbkMsQUFVQyxPQVZHLENBVUgsSUFBSSxDQUFDO1FBT0QsS0FBSyxFQUFFLE1BQU07UUFDYixNQUFNLEVBQUUsTUFBTTtRQUNkLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLFNBQVMsRUFBRSxLQUFLLEdBS25CO1FBekJGLEFBcUJLLE9BckJELENBVUgsSUFBSSxDQVdBLE1BQU0sQ0FBQztVQUNMLE9BQU8sRUFBRSxJQUFJLEdBQ2Q7RUFJTixBQUFELFFBQU0sQ0FBQztJQUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxPQUFPLEdBMkNoQjtJUndMRCxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUs7TVFyT25CLEFBSUcsUUFKRSxBUnNPSCxNQUFNLENRbE9MLFlBQVksQ0FBQztRQUNYLE9BQU8sRUFBRSxDQUFDO1FBQ1YsVUFBVSxFQUFFLE9BQU8sR0FDcEI7SVIzRkwsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNUW9GbkMsQUFBRCxRQUFNLENBQUM7UUFVSCxPQUFPLEVBQUUsSUFBSSxHQW1DaEI7SUFqQ0UsQUFBRCxXQUFJLENBQUM7TVJwQ1AsT0FBTyxFQUFFLFlBQVk7TUFDckIsT0FBTyxFQUFFLFNBQVM7TUFDbEIsT0FBTyxFQUFFLFFBQVE7TUFDakIsT0FBTyxFQUFFLE9BQU87TUFDaEIsT0FBTyxFQUFFLElBQUk7TVFrQ1QsV0FBVyxFQUFFLE1BQU07TUFDbkIsR0FBRyxFQUFFLE1BQU0sR0FXWjtNQWRBLEFBSUMsV0FKRSxDQUlGLE9BQU8sQ0FBQztRVDRPVixTQUFTLEVBQUUsTUFBTTtRUzFPYixLQUFLLEVWdkZDLE9BQU8sR1V3RmQ7UVQyT0gsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtVU2xQeEMsQUFJQyxXQUpFLENBSUYsT0FBTyxDQUFDO1lUK09OLFNBQVMsRUFBRSxNQUFNLEdTNU9sQjtRVCtPSCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1VTdFB2QyxBQUlDLFdBSkUsQ0FJRixPQUFPLENBQUM7WVRtUE4sU0FBUyxFQUFFLE1BQU0sR1NoUGxCO01BUEYsQUFRQyxXQVJFLENBUUYsS0FBSyxDQUFDO1FBQ0osS0FBSyxFQUFFLE1BQU07UUFDYixNQUFNLEVBQUUsTUFBTTtRUmpCcEIsT0FBTyxFQUFFLFlBQVk7UUFDckIsT0FBTyxFQUFFLFNBQVM7UUFDbEIsT0FBTyxFQUFFLFFBQVE7UUFDakIsT0FBTyxFQUFFLE9BQU87UUFDaEIsT0FBTyxFQUFFLElBQUk7UUFDYixlQUFlLEVBQUUsTUFBTTtRQUN2QixXQUFXLEVBQUUsTUFBTTtRQUNuQixtQkFBbUIsRUFBRSxNQUFNO1FBQzNCLGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLHVCQUF1QixFQUFFLE1BQU07UVFVekIsV0FBVyxFQUFFLENBQUMsR0FDZjtJQUVGLEFBQUQsWUFBSyxDQUFDO01BQ0osUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLElBQUk7TUFDVCxJQUFJLEVBQUUsR0FBRztNQUNULFNBQVMsRUFBRSxnQkFBZ0I7TUFDM0IsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxnQkFBZ0I7TUFDNUIsVUFBVSxFQUFFLE1BQU0sR0FTbkI7TUFqQkEsQUFTQyxZQVRHLENBU0gsT0FBTyxDQUFDO1FBQ04sU0FBUyxFQUFFLE1BQU07UUFDakIsS0FBSyxFQUFFLE9BQU87UUFDZCxVQUFVLEVBQUUsZ0JBQWdCLEdBSTdCO1FSMExMLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSztVUTFNakIsQVIyTUQsWVEzTUssQ0FTSCxPQUFPLEFSa01SLE1BQU0sQ0FBQztZUTdMRixLQUFLLEVWaEhILE9BQU8sR0UrU2Q7RVExTEYsQUFBRCxRQUFNLENBQUM7SUFDTCxLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxNQUFNO0lSM0NoQixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJUW9DN0IsV0FBVyxFQUFFLENBQUM7SUFDZCxNQUFNLEVBQUUsT0FBTyxHQWdCaEI7SUFyQkEsQUFNQyxRQU5JLENBTUosVUFBVSxDQUFDO01SL0NiLE9BQU8sRUFBRSxZQUFZO01BQ3JCLE9BQU8sRUFBRSxTQUFTO01BQ2xCLE9BQU8sRUFBRSxRQUFRO01BQ2pCLE9BQU8sRUFBRSxPQUFPO01BQ2hCLE9BQU8sRUFBRSxJQUFJO01BQ2IsZUFBZSxFQUFFLE1BQU07TUFDdkIsV0FBVyxFQUFFLE1BQU07TUFDbkIsbUJBQW1CLEVBQUUsTUFBTTtNQUMzQixlQUFlLEVBQUUsTUFBTTtNQUN2Qix1QkFBdUIsRUFBRSxNQUFNO01Rd0MzQixhQUFhLEVBQUUsTUFBTTtNQUNyQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osUUFBUSxFQUFFLE1BQU0sR0FDakI7SVI5SUgsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNUWtJbEMsQUFBRCxRQUFNLENBQUM7UUFjSCxLQUFLLEVBQUUsTUFBTTtRQUNiLE1BQU0sRUFBRSxNQUFNLEdBTWpCO1FBckJBLEFBZ0JHLFFBaEJFLENBZ0JGLFVBQVUsQ0FBQztVQUNULEtBQUssRUFBRSxNQUFNO1VBQ2IsTUFBTSxFQUFFLE1BQU0sR0FDZjtFQUdKLEFBQUQsVUFBUSxDQUFDO0lBQ1AsS0FBSyxFQUFFLE1BQU07SUFDYixNQUFNLEVBQUUsTUFBTTtJUmpFaEIsT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLElBQUk7SUFDYixlQUFlLEVBQUUsTUFBTTtJQUN2QixXQUFXLEVBQUUsTUFBTTtJQUNuQixtQkFBbUIsRUFBRSxNQUFNO0lBQzNCLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLHVCQUF1QixFQUFFLE1BQU07SVEwRDdCLE1BQU0sRUFBRSxPQUFPO0lBQ2YsV0FBVyxFQUFFLENBQUMsR0F3RmY7SVJyUEQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNUXdKbEMsQUFBRCxVQUFRLENBQUM7UUFPTCxLQUFLLEVBQUUsTUFBTTtRQUNiLE1BQU0sRUFBRSxNQUFNLEdBcUZqQjtRQTdGQSxBQVNHLFVBVEksQ0FTSixZQUFZLENBQUM7VUFDWCxLQUFLLEVBQUUsTUFBTTtVQUNiLE1BQU0sRUFBRSxNQUFNLEdBQ2Y7SUFaSixBQWNDLFVBZE0sQ0FjTixZQUFZLENBQUM7TVI3RWYsT0FBTyxFQUFFLFlBQVk7TUFDckIsT0FBTyxFQUFFLFNBQVM7TUFDbEIsT0FBTyxFQUFFLFFBQVE7TUFDakIsT0FBTyxFQUFFLE9BQU87TUFDaEIsT0FBTyxFQUFFLElBQUk7TUFDYixlQUFlLEVBQUUsTUFBTTtNQUN2QixXQUFXLEVBQUUsTUFBTTtNQUNuQixtQkFBbUIsRUFBRSxNQUFNO01BQzNCLGVBQWUsRUFBRSxNQUFNO01BQ3ZCLHVCQUF1QixFQUFFLE1BQU0sR1FzRTVCO0lBQ0EsQUFBRCxlQUFNLENBQUM7TUFDTCxRQUFRLEVBQUUsS0FBSztNQUNmLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLENBQUM7TUFDUixLQUFLLEVBQUUsSUFBSTtNQUNYLEdBQUcsRUFBRSxDQUFDO01BQ04sTUFBTSxFQUFFLENBQUM7TUFDVCxVQUFVLEVBQUUsT0FBTztNQUNuQixPQUFPLEVBQUUsRUFBRTtNQUNYLFVBQVUsRUFBRSxNQUFNLEdBQ25CO0lBQ0EsQUFBRCxnQkFBTyxDQUFDO01BQ04sUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLElBQUk7TUFDVCxJQUFJLEVBQUUsR0FBRztNQUNULFNBQVMsRUFBRSxnQkFBZ0I7TUFDM0IsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsWUFBWTtNQUNyQixjQUFjLEVBQUUsTUFBTTtNQUN0QixhQUFhLEVBQUUsaUJBQWlCO01BQ2hDLFdBQVcsRUFBRSxHQUFHO01BQ2hCLE1BQU0sRUFBRSxPQUFPO01BQ2YsUUFBUSxFQUFFLE1BQU0sR0FDakI7SUFDQSxBQUFELGVBQU0sQ0FBQztNQUNMLE1BQU0sRUFBRSxJQUFJO01SekdoQixPQUFPLEVBQUUsWUFBWTtNQUNyQixPQUFPLEVBQUUsU0FBUztNQUNsQixPQUFPLEVBQUUsUUFBUTtNQUNqQixPQUFPLEVBQUUsT0FBTztNQUNoQixPQUFPLEVBQUUsSUFBSTtNQUNiLGVBQWUsRUFBRSxNQUFNO01BQ3ZCLFdBQVcsRUFBRSxNQUFNO01BQ25CLG1CQUFtQixFQUFFLE1BQU07TUFDM0IsZUFBZSxFQUFFLE1BQU07TUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtNUWtHM0IsY0FBYyxFQUFFLE1BQU07TUFDdEIsVUFBVSxFQUFFLE1BQU07TUFDbEIsS0FBSyxFQUFFLE1BQU07TUFDYixPQUFPLEVBQUUsUUFBUTtNQUNqQixTQUFTLEVBQUUsSUFBSTtNQUNmLE1BQU0sRUFBRSxNQUFNLEdBV2Y7TUFuQkEsQUFTQyxlQVRJLENBU0osVUFBVSxDQUFDO1FBQ1QsU0FBUyxFQUFFLElBQUk7UVIwWnJCLFdBQVcsRUFEYSxtQkFBbUIsRUFDdkIsVUFBVTtRUXhaeEIsS0FBSyxFQUFFLElBQUk7UUFDWCxXQUFXLEVBQUUsR0FBRztRQUNoQixXQUFXLEVBQUUsR0FBRyxHQUNqQjtNQWZGLEFBZ0JDLGVBaEJJLENBZ0JKLElBQUksQ0FBQztRQUNILEtBQUssRUFBRSxJQUFJLEdBQ1o7SUFFRixBQUFELGVBQU0sQ0FBQztNQUNMLFFBQVEsRUFBRSxNQUFNLEdBQ2pCO0lBQ0EsQUFBRCxhQUFJLENBQUM7TUFDSCxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxNQUFNO01SOUpsQixPQUFPLEVBQUUsWUFBWTtNQUNyQixPQUFPLEVBQUUsU0FBUztNQUNsQixPQUFPLEVBQUUsUUFBUTtNQUNqQixPQUFPLEVBQUUsT0FBTztNQUNoQixPQUFPLEVBQUUsSUFBSSxHUTBLVjtNQWxCQSxBQUtDLGFBTEUsQ0FLRixLQUFLLENBQUM7UUFDSixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxLQUFLO1FBQ2IsT0FBTyxFQUFFLEtBQUs7UUFDZCxNQUFNLEVBQUUsSUFBSTtRQUNaLFVBQVUsRUFBRSxNQUFNO1FBQ2xCLE9BQU8sRUFBRSxRQUFRO1FUNkdyQixTQUFTLEVBQUUsTUFBTTtRUzNHYixjQUFjLEVBQUUsVUFBVSxHQUkzQjtRVHlHSCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO1VTMUh4QyxBQUtDLGFBTEUsQ0FLRixLQUFLLENBQUM7WVRzSEosU0FBUyxFQUFFLE1BQU0sR1MxR2xCO1FUNkdILE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7VVM5SHZDLEFBS0MsYUFMRSxDQUtGLEtBQUssQ0FBQztZVDBISixTQUFTLEVBQUUsTUFBTSxHUzlHbEI7UUFqQkYsQUFjRyxhQWRBLENBS0YsS0FBSyxBQVNGLDJCQUEyQixDQUFDO1VBQzNCLEtBQUssRUFBRSxPQUFPLEdBQ2Y7SUFHSixBQUFELGNBQUssQ0FBQztNQUNKLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLElBQUk7TUFDWixXQUFXLEVBQUUsQ0FBQztNUnJKbEIsT0FBTyxFQUFFLFlBQVk7TUFDckIsT0FBTyxFQUFFLFNBQVM7TUFDbEIsT0FBTyxFQUFFLFFBQVE7TUFDakIsT0FBTyxFQUFFLE9BQU87TUFDaEIsT0FBTyxFQUFFLElBQUk7TUFDYixlQUFlLEVBQUUsTUFBTTtNQUN2QixXQUFXLEVBQUUsTUFBTTtNQUNuQixtQkFBbUIsRUFBRSxNQUFNO01BQzNCLGVBQWUsRUFBRSxNQUFNO01BQ3ZCLHVCQUF1QixFQUFFLE1BQU07TVE4STNCLFVBQVUsRVZsT0QsT0FBTyxHVXNPakI7TUFUQSxBQU1DLGNBTkcsQ0FNSCxLQUFLLENBQUM7UUFDSixLQUFLLEVBQUUsSUFBSSxHQUNaOztBQ3BQUCxBQUFBLEdBQUcsQ0FBQztFQUNGLFVBQVUsRUFBRSxPQUFPLEdBcUVwQjtFQXBFRSxBQUFELE9BQUssQ0FBQztJVDJETixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJUzdEWCxlQUFlLEVBQUUsYUFBYSxHQU0vQjtJVFRELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TVNDbEMsQUFHQyxPQUhHLENBR0gsSUFBSSxDQUFDO1FBRUQsS0FBSyxFQUFFLElBQUksR0FFZDtFQUVGLEFBQ0MsUUFESSxDQUNKLGlCQUFpQixDQUFDO0lUOEVwQixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJU3JGM0IsS0FBSyxFQUFFLEtBQUs7SUFDWixTQUFTLEVBQUUsSUFBSSxHQUloQjtJQVJGLEFBS0csUUFMRSxDQUNKLGlCQUFpQixDQUlmLEdBQUcsQ0FBQztNQUNGLEtBQUssRUFBRSxJQUFJLEdBQ1o7RUFHSixBQUFELFFBQU0sQ0FBQztJQUNMLFVBQVUsRUFBRSxNQUFNO0lWdVZsQixTQUFTLEVBQUUsTUFBTTtJVXJWakIsS0FBSyxFQUFFLE9BQU8sR0FDZjtFQUNBLEFBQUQsTUFBSSxDQUFDO0lWdVFILFNBQVMsRUFBRSxNQUFNO0lDcVVuQixXQUFXLEVBRGEsbUJBQW1CLEVBQ3ZCLFVBQVU7SVN6a0I1QixXQUFXLEVBQUUsR0FBRztJQUNoQixLQUFLLEVYZk0sT0FBTztJV2dCbEIsYUFBYSxFQUFFLE1BQU0sR0FDdEI7SVZtUUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNVXpRMUMsQUFBRCxNQUFJLENBQUM7UVYwUUMsU0FBUyxFQUFFLElBQUksR1VwUXBCO0lWdVFDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TVU3UXpDLEFBQUQsTUFBSSxDQUFDO1FWOFFDLFNBQVMsRUFBRSxNQUFNLEdVeFF0QjtFQUNBLEFBQUQsT0FBSyxDQUFDO0lUNEJOLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lTOUJYLFNBQVMsRUFBRSxJQUFJO0lBQ2YsT0FBTyxFQUFFLE1BQU07SUFDZixNQUFNLEVBQUUsU0FBUyxHQUNsQjtFQUNBLEFBQUQsT0FBSyxDQUFDO0lBQ0osS0FBSyxFQUFFLGNBQWM7SUFDckIsT0FBTyxFQUFFLFFBQVEsR0FJbEI7SVQ1Q0QsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNU3NDbEMsQUFBRCxPQUFLLENBQUM7UUFJRixLQUFLLEVBQUUsR0FBRyxHQUViO0VBQ0EsQUFDQyxPQURHLENBQ0gsVUFBVSxDQUFDO0lUY2IsT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLElBQUk7SVNoQlQsY0FBYyxFQUFFLE1BQU07SUFDdEIsT0FBTyxFQUFFLE1BQU0sR0FrQmhCO0lBdEJGLEFBT08sT0FQSCxDQUNILFVBQVUsQ0FJUixVQUFVLEFBQ1Asa0JBQWtCLENBQ2pCLFVBQVUsQ0FBQztNQUNULEtBQUssRVh4Q0wsT0FBTztNV3lDUCxXQUFXLEVBQUUsR0FBRyxHQUNqQjtJQVZSLEFBY0csT0FkQyxDQUNILFVBQVUsQ0FhUixVQUFVLENBQUM7TVZxU2IsU0FBUyxFQUFFLE1BQU07TVVuU2IsS0FBSyxFQUFFLE9BQU87TUFDZCxVQUFVLEVBQUUsZ0JBQWdCLEdBSTdCO01UdVBMLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSztRUzVRbkIsQVQ2UUMsT1M3UUcsQ0FDSCxVQUFVLENBYVIsVUFBVSxBVCtQWCxNQUFNLENBQUM7VVMxUEYsS0FBSyxFWG5ESCxPQUFPLEdFK1NkOztBVTdUTCxBQUFBLFVBQVUsQ0FBQztFQUNULE9BQU8sRUFBRSxXQUFXO0VBZXBCLE1BQU0sRUFBRSxPQUFPLEdBQ2hCO0VWSkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJVWJ0QyxBQUFBLFVBQVUsQ0FBQztNQUdQLE9BQU8sRUFBRSxJQUFJLEdBY2hCO0VBakJELEFBS0UsVUFMUSxBQUtQLE9BQU8sQ0FBQyxLQUFLLEFBQUEsVUFBVyxDQUFBLENBQUMsRUFBRTtJQUMxQixpQkFBaUIsRUFBRSx5QkFBeUIsQ0FBQyxhQUFhLENBQUMsVUFBVTtJQUNyRSxTQUFTLEVBQUUseUJBQXlCLENBQUMsYUFBYSxDQUFDLFVBQVUsR0FDOUQ7RUFSSCxBQVVFLFVBVlEsQUFVUCxPQUFPLENBQUMsS0FBSyxBQUFBLFVBQVcsQ0FBQSxDQUFDLEVBQUU7SUFDMUIsaUJBQWlCLEVBQUUsMEJBQTBCLENBQUMsY0FBYyxDQUFDLFVBQVU7SUFDdkUsU0FBUyxFQUFFLDBCQUEwQixDQUFDLGNBQWMsQ0FBQyxVQUFVO0lBQy9ELEtBQUssRUFBRSxNQUFNLEdBQ2Q7O0FBS0gsQUFBQSxPQUFPLENBQUM7RUFDTixRQUFRLEVBQUUsUUFBUSxHQUNuQjs7QUFFRCxBQUFBLFVBQVUsQ0FBQyxLQUFLLENBQUM7RUFDZixLQUFLLEVBQUUsTUFBTTtFQUNiLE1BQU0sRUFBRSxNQUFNO0VBQ2QsYUFBYSxFQUFFLE1BQU07RUFDckIsVUFBVSxFWlpHLE9BQU87RVlhcEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxNQUFNLEVBQUUsUUFBUTtFQUNoQixrQkFBa0IsRUFBRSxhQUFhO0VBQ2pDLGFBQWEsRUFBRSxhQUFhO0VBQzVCLFVBQVUsRUFBRSxhQUFhO0VBQ3pCLHdCQUF3QixFQUFFLE9BQU87RUFDakMsb0JBQW9CLEVBQUUsT0FBTztFQUM3QixnQkFBZ0IsRUFBRSxPQUFPLEdBTTFCO0VBbEJELEFBY0UsVUFkUSxDQUFDLEtBQUssQUFjYixVQUFXLENBQUEsQ0FBQyxFQUFFO0lBQ2IsS0FBSyxFQUFFLE1BQU07SUFDYixXQUFXLEVBQUUsSUFBSSxHQUNsQjs7QUN2Q0gsQUFBQSxPQUFPLENBQUM7RUFDTixRQUFRLEVBQUUsS0FBSztFQUNmLE9BQU8sRUFBRSxHQUFHO0VBQ1osR0FBRyxFQUFFLGNBQWM7RUFDbkIsSUFBSSxFQUFFLENBQUM7RUFDUCxNQUFNLEVBQUUsQ0FBQztFQUNULFNBQVMsRUFBRSxLQUFLO0VBQ2hCLEtBQUssRUFBRSxLQUFLO0VBQ1osZ0JBQWdCLEVBQUUsS0FBSztFQUN2QixVQUFVLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW1CO0VYa0w3QyxVQUFVLEVXakxVLElBQUksQ0FBRSxNQUFNO0VYa0xoQyxrQkFBa0IsRVdsTEUsSUFBSSxDQUFFLE1BQU07RVhtTGhDLGVBQWUsRVduTEssSUFBSSxDQUFFLE1BQU07RVhvTGhDLGNBQWMsRVdwTE0sSUFBSSxDQUFFLE1BQU07RVhxTGhDLGFBQWEsRVdyTE8sSUFBSSxDQUFFLE1BQU07RVhzTGhDLGdCQUFnQixFQU4wQyxFQUFFO0VBTzVELHdCQUF3QixFQVBrQyxFQUFFO0VBUTVELHFCQUFxQixFQVJxQyxFQUFFO0VBUzVELG9CQUFvQixFQVRzQyxFQUFFO0VBVTVELG1CQUFtQixFQVZ1QyxFQUFFO0VXL0s1RCxTQUFTLEVBQUUsaUJBQWlCLEdBaU43QjtFWDVOQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lXQXJDLEFBQUEsT0FBTyxDQUFDO01BY0osS0FBSyxFQUFFLEdBQUc7TUFDVixTQUFTLEVBQUUsT0FBTyxHQTZNckI7RUE1TkQsQUFrQkUsT0FsQkssQUFrQkosT0FBTyxDQUFDO0lBQ1AsR0FBRyxFQUFFLGNBQWMsR0FDcEI7RUFwQkgsQUFzQkUsT0F0QkssQUFzQkosS0FBSyxDQUFDO0lBQ0wsU0FBUyxFQUFFLGFBQWEsR0FDekI7RVhaRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lXWnRDLEFBQUEsT0FBTyxDQUFDO01BMkJKLE9BQU8sRUFBRSxJQUFJLEdBaU1oQjtFQTlMRSxBQUFELFdBQUssQ0FBQztJQUNKLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SVg0QmQsT0FBTyxFQUFFLFlBQVk7SUFDckIsT0FBTyxFQUFFLFNBQVM7SUFDbEIsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLE9BQU87SUFDaEIsT0FBTyxFQUFFLElBQUk7SVc5QlgsY0FBYyxFQUFFLE1BQU07SUFDdEIsVUFBVSxFQUFFLElBQUksR0FDakI7RUFFQSxBQUFELGVBQVMsQ0FBQztJQUNSLFNBQVMsRUFBRSxNQUFNO0lBQ2pCLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLEtBQUssRWI1QkcsT0FBTztJYTZCZixXQUFXLEVBQUUsR0FBRztJQUNoQixhQUFhLEVBQUUsSUFBSTtJQUNuQixjQUFjLEVBQUUsU0FBUyxHQUMxQjtFQUVBLEFBQUQsZUFBUyxDQUFDO0lYd01WLFFBQVEsRUFBRSxLQUFLO0lBQ2YsSUFBSSxFQUZnQixDQUFDO0lBR3JCLEdBQUcsRUFId0IsQ0FBQztJQUk1QixLQUFLLEVBSjZCLENBQUM7SUFLbkMsTUFBTSxFQUxtQyxDQUFDO0lXck14QyxPQUFPLEVBQUUsR0FBRztJQUNaLGdCQUFnQixFQUFFLGtCQUFrQjtJWHlJdEMsVUFBVSxFV3hJWSxJQUFJLENBQUUsSUFBSTtJWHlJaEMsa0JBQWtCLEVXeklJLElBQUksQ0FBRSxJQUFJO0lYMEloQyxlQUFlLEVXMUlPLElBQUksQ0FBRSxJQUFJO0lYMkloQyxjQUFjLEVXM0lRLElBQUksQ0FBRSxJQUFJO0lYNEloQyxhQUFhLEVXNUlTLElBQUksQ0FBRSxJQUFJO0lYNkloQyxnQkFBZ0IsRUFOMEMsRUFBRTtJQU81RCx3QkFBd0IsRUFQa0MsRUFBRTtJQVE1RCxxQkFBcUIsRUFScUMsRUFBRTtJQVM1RCxvQkFBb0IsRUFUc0MsRUFBRTtJQVU1RCxtQkFBbUIsRUFWdUMsRUFBRTtJV3RJMUQsT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsTUFBTTtJQUNsQixTQUFTLEVBQUUsaUJBQWlCO0lBQzVCLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDYmpDUCxrQkFBa0I7SWFrQ2hDLEdBQUcsRUFBRSxjQUFjLEdBZXBCO0lBeEJBLEFBV0MsZUFYTyxBQVdOLE9BQU8sQ0FBQztNQUNQLEdBQUcsRUFBRSxjQUFjLEdBQ3BCO0lBYkYsQUFlQyxlQWZPLEFBZU4sS0FBSyxDQUFDO01BQ0wsT0FBTyxFQUFFLENBQUM7TUFDVixVQUFVLEVBQUUsT0FBTztNQUNuQixTQUFTLEVBQUUsYUFBYSxHQUN6QjtJWHRESCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01XbUNuQyxBQUFELGVBQVMsQ0FBQztRQXNCTixPQUFPLEVBQUUsSUFBSSxHQUVoQjtFQUVBLEFBQUQsVUFBSSxDQUFDO0lBQ0gsY0FBYyxFQUFFLElBQUk7SUFDcEIsUUFBUSxFQUFFLFFBQVEsR0FDbkI7RUFFQSxBQUFELFlBQU0sQ0FBQztJQUNMLGFBQWEsRUFBRSxJQUFJLEdBQ3BCO0VBRUEsQUFBRCxlQUFTLENBQUM7SUFDUixPQUFPLEVBQUUsYUFBYSxHQUN2QjtFQUVBLEFBQUQsYUFBTyxDQUFDO0lBQ04sU0FBUyxFQUFFLE1BQU07SUFDakIsY0FBYyxFQUFFLFNBQVM7SUFDekIsV0FBVyxFQUFFLEdBQUc7SUFDaEIsYUFBYSxFQUFFLE1BQU0sR0FDdEI7RUFFQSxBQUFELFdBQUssQ0FBQztJQUNKLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxDQUFDO0lBQ1QsSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lYdENkLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lXb0NYLFdBQVcsRUFBRSxNQUFNO0lBQ25CLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDYi9FUCxrQkFBa0IsR2FpR2pDO0lBaEJFLEFBQUQsZ0JBQU0sQ0FBQztNWGRULE9BQU8sRUFBRSxZQUFZO01BQ3JCLE9BQU8sRUFBRSxTQUFTO01BQ2xCLE9BQU8sRUFBRSxRQUFRO01BQ2pCLE9BQU8sRUFBRSxPQUFPO01BQ2hCLE9BQU8sRUFBRSxJQUFJO01BQ2IsZUFBZSxFQUFFLE1BQU07TUFDdkIsV0FBVyxFQUFFLE1BQU07TUFDbkIsbUJBQW1CLEVBQUUsTUFBTTtNQUMzQixlQUFlLEVBQUUsTUFBTTtNQUN2Qix1QkFBdUIsRUFBRSxNQUFNO01XTzNCLElBQUksRUFBRSxDQUFDO01BQ1AsTUFBTSxFQUFFLElBQUk7TUFDWixnQkFBZ0IsRUFBRSxLQUFLO01BQ3ZCLE1BQU0sRUFBRSxPQUFPO01BQ2YsU0FBUyxFQUFFLE1BQU0sR0FTbEI7TUFmQSxBQU9DLGdCQVBJLEFBT0gsSUFBSyxDQUFBLFlBQVksRUFBRTtRQUNsQixXQUFXLEVBQUUsR0FBRyxDQUFDLEtBQUssQ2J6Rlosa0JBQWtCLEdhMEY3QjtNQVRGLEFBV0MsZ0JBWEksQ0FXSixHQUFHLENBQUM7UUFDRixLQUFLLEVBQUUsTUFBTTtRQUNiLE1BQU0sRUFBRSxNQUFNLEdBQ2Y7RUFJSixBQUFELFlBQU0sQ0FBQztJWitPTCxTQUFTLEVBQUUsTUFBTTtJWTdPakIsT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEViL0dHLE9BQU87SWFnSGYsVUFBVSxFQUFFLFVBQVU7SUFDdEIsV0FBVyxFQUFFLEdBQUcsR0FLakI7SUFWQSxBQU9DLFlBUEksQUFPSCxJQUFLLENBQUEsV0FBVyxFQUFFO01BQ2pCLGFBQWEsRUFBRSxNQUFNLEdBQ3RCO0VBR0YsQUFBRCxlQUFTLENBQUM7SUFDUixRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsSUFBSTtJQUNULElBQUksRUFBRSxJQUFJLEdBQ1g7RUFFQSxBQUFELFVBQUksQ0FBQztJWC9FTCxPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJVzZFWCxXQUFXLEVBQUUsTUFBTSxHQVdwQjtJQVRFLEFBQUQsZUFBTSxDQUFDO01aaU5QLFNBQVMsRUFBRSxNQUFNO01ZL01mLEtBQUssRWJwSUMsT0FBTztNYXFJYixlQUFlLEVBQUUsU0FBUyxHQUszQjtNQVJBLEFBS0MsZUFMSSxBQUtILElBQUssQ0FBQSxZQUFZLEVBQUU7UUFDbEIsV0FBVyxFQUFFLElBQUksR0FDbEI7RUFJSixBQUFELGFBQU8sQ0FBQztJQUNOLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxJQUFJO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxNQUFNO0lBQ2QsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENibkpULE9BQU87SUU0RWpCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsZUFBZSxFQUFFLE1BQU07SUFDdkIsV0FBVyxFQUFFLE1BQU07SUFDbkIsbUJBQW1CLEVBQUUsTUFBTTtJQUMzQixlQUFlLEVBQUUsTUFBTTtJQUN2Qix1QkFBdUIsRUFBRSxNQUFNO0lXZ0U3QixNQUFNLEVBQUUsT0FBTztJQUNmLGdCQUFnQixFQUFFLEtBQUssR0FZeEI7SUFyQkEsQUFXQyxhQVhLLEFBV0osTUFBTSxDQUFDLEtBQUssQ0FBQztNQUNaLFNBQVMsRUFBRSxjQUFjLEdBQzFCO0lBYkYsQUFlQyxhQWZLLENBZUwsS0FBSyxDQUFDO01BQ0osVUFBVSxFQUFFLGdCQUFnQjtNQUM1QixXQUFXLEVBQUUsR0FBRztNQUNoQixTQUFTLEVBQUUsTUFBTTtNQUNqQixLQUFLLEViaEtDLE9BQU8sR2FpS2Q7RUFFRixBQUFELFlBQU0sQ0FBQztJWHBIUCxPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJV2tIWCxXQUFXLEVBQUUsTUFBTTtJQUNuQixHQUFHLEVBQUUsTUFBTTtJQUNYLGVBQWUsRUFBRSxhQUFhO0lBQzlCLE9BQU8sRUFBRSxNQUFNO0lBQ2YsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEdBbUI1QztJQXpCQSxBQU9DLFlBUEksQ0FPSixPQUFPLENBQUM7TUFDTixLQUFLLEVBQUUsT0FBTztNQUNkLFNBQVMsRUFBRSxNQUFNO01BQ2pCLFdBQVcsRUFBRSxHQUFHO01BQ2hCLGNBQWMsRUFBRSxTQUFTLEdBQzFCO0lBWkYsQUFhQyxZQWJJLENBYUosSUFBSSxDQUFDO01YaklQLE9BQU8sRUFBRSxZQUFZO01BQ3JCLE9BQU8sRUFBRSxTQUFTO01BQ2xCLE9BQU8sRUFBRSxRQUFRO01BQ2pCLE9BQU8sRUFBRSxPQUFPO01BQ2hCLE9BQU8sRUFBRSxJQUFJO01XK0hULFdBQVcsRUFBRSxNQUFNO01BQ25CLEdBQUcsRUFBRSxNQUFNLEdBUVo7TUF4QkYsQUFpQkcsWUFqQkUsQ0FhSixJQUFJLENBSUYsT0FBTyxDQUFDO1FBQ04sU0FBUyxFQUFFLE1BQU0sR0FLbEI7UUF2QkosQUFtQkssWUFuQkEsQ0FhSixJQUFJLENBSUYsT0FBTyxBQUVKLE9BQU8sQ0FBQztVQUNQLEtBQUssRWJ2TEgsT0FBTztVYXdMVCxXQUFXLEVBQUUsR0FBRyxHQUNqQjtFQUlOLEFBQ0MsVUFERSxDQUNGLEtBQUssQ0FBQztJQUNKLGFBQWEsRUFBRSxNQUFNO0lBQ3JCLGFBQWEsRUFBRSxNQUFNO0lBQ3JCLE9BQU8sRUFBRSxNQUFNO0lBQ2YsS0FBSyxFQUFFLFdBQVc7SUFDbEIsU0FBUyxFQUFFLE1BQU0sR0FDbEI7RUFQRixBQVNDLFVBVEUsQ0FTRixZQUFZLENBQUM7SUFDWCxPQUFPLEVBQUUsTUFBTTtJQUNmLFNBQVMsRUFBRSxNQUFNLEdBQ2xCO0VBWkYsQUFjQyxVQWRFLENBY0YsSUFBSSxDQUFDO0lBQ0gsT0FBTyxFQUFFLElBQUksR0FDZDs7QUMzTkwsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLE1BQU0sRUFBRSxNQUFNO0VBQ2QsZ0JBQWdCLEVBQUUsV0FBVztFQUM3QixhQUFhLEVBQUUsR0FBRyxHQUNyQjs7QUFFRCxBQUFBLFFBQVEsQUFBQSxrQkFBa0IsQ0FBQztFQUN2QixLQUFLLEVBQUUsZUFBZSxHQUN6Qjs7QUFFRCxBQUFBLFVBQVUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQywwQkFBMEIsQ0FBQztFQUNuRCxNQUFNLEVBQUUsSUFBSTtFQUNaLGFBQWEsRUFBRSxNQUFNO0VBQ3JCLEtBQUssRWRHSyxPQUFPO0VjRmpCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsZ0JBQWdCLEVBQUUsV0FBVztFQUM3QixNQUFNLEVBQUUsTUFBTSxDQUFDLEtBQUssQ2RHTixrQkFBa0I7RUVzQ2xDLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLE9BQU8sRUFBRSxPQUFPO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VZM0NYLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsQUFBQSxRQUFRLEFBQUEsa0JBQWtCLENBQUMsNEJBQTRCLENBQUM7RUFDcEQsTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDLDBCQUEwQixDQUFDLDRCQUE0QixDQUFDO0VBQ3ZFLGdCQUFnQixFQUFFLFdBQVc7RUFDN0IsTUFBTSxFQUFFLHFCQUFxQjtFQUM3QixLQUFLLEVkaEJLLE9BQU87RWNpQmpCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLE9BQU8sRUFBRSxpQkFBaUI7RVp1STVCLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLGtCQUFrQixFWXZJSixDQUFDO0Vad0lmLGtCQUFrQixFQUFFLFFBQVE7RUFDNUIsUUFBUSxFQUFFLE1BQU07RVl4SWQsS0FBSyxFQUFFLElBQUksR0FDZDs7QUFFRCxBQUFBLFFBQVEsQUFBQSxrQkFBa0IsQ0FBQyw0QkFBNEIsQ0FBQyw0QkFBNEIsQ0FBQztFQUNqRixPQUFPLEVBQUUsS0FBSztFQUNkLE9BQU8sRUFBRSxLQUFLO0VBQ2QsWUFBWSxFQUFFLE1BQU0sR0FDdkI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQztFQUNqQyxVQUFVLEVBQUUsV0FBVztFQUN2QixNQUFNLEVBQUUsSUFBSSxHQUNmOztBQUVELEFBQUEsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDO0VBQ2pELE9BQU8sRUFBRSxDQUFDLEdBQ2I7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDO0VBQ3ZELE9BQU8sRUFBRSxlQUFlO0VBQ3hCLE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLGVBQWU7RUFDOUIsT0FBTyxFQUFFLGtCQUFrQjtFQUMzQixnQkFBZ0IsRWQ1Q04sT0FBTztFYzZDakIsS0FBSyxFZDdDSyxPQUFPLEdjOENwQjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztFQUNyRCxVQUFVLEVBQUUsT0FBTztFQUNuQixLQUFLLEVkbERLLE9BQU8sR2NtRHBCOztBQUVELEFBQUEsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLHFDQUFxQyxDQUFBLEFBQUEsYUFBQyxBQUFBLEVBQWU7RUFDMUcsZ0JBQWdCLEVkM0RSLE9BQU87RWM0RGYsU0FBUyxFQUFFLE1BQU0sR0FDcEI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQyxrQ0FBa0MsQ0FBQztFQUMzRCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLEtBQUssRWQ1REssT0FBTztFYzZEakIsU0FBUyxFQUFFLE1BQU0sR0FDcEI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQywwQkFBMEIsQ0FBQyx5QkFBeUIsQ0FBQztFQUM3RSxNQUFNLEVBQUUsSUFBSTtFQUNaLFlBQVksRUFBRSx3Q0FBd0MsR0FDekQ7O0FBRUQsQUFBQSxlQUFlLEFBQUEseUJBQXlCLENBQUM7RUFDckMsT0FBTyxFQUFFLGVBQWUsR0FDM0I7O0FBRUQsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixTQUFTLEVBQUUsTUFBTSxHQUNwQjs7QUFFRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsT0FBTyxFQUFFLEtBQUs7RUFDZCxhQUFhLEVBQUUsY0FBYztFQUM3QixRQUFRLEVBQUUsTUFBTSxHQUNuQjs7QUFFRCxBQUFBLDJCQUEyQixBQUFBLHdCQUF3QixBQUFBLHlCQUF5QixDQUFDLDBCQUEwQixDQUFDO0VBQ3BHLGFBQWEsRUFBRSxpQkFBaUIsR0FDbkM7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQywwQkFBMEIsQ0FBQyw0QkFBNEIsQ0FBQztFQUN2RSxZQUFZLEVBQUUsTUFBTTtFQUNwQixXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVkeEZJLE9BQU87RWN5RmhCLGFBQWEsRUFBRSxJQUFJLEdBQ3RCOztBQUVELEFBQUEsMkJBQTJCLENBQUMsMEJBQTBCLENBQUMsK0JBQStCLENBQUM7RUFDbkYsS0FBSyxFZDdGSSxPQUFPLEdjOEZuQjs7QUFFRCxBQUFBLDJCQUEyQixDQUFDLDBCQUEwQixDQUFDLHlCQUF5QixDQUFDLENBQUMsQ0FBQztFQUMvRSxXQUFXLEVBQUUsT0FBTyxHQUN2Qjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxxQ0FBcUMsQ0FBQSxBQUFBLGFBQUMsQUFBQSxFQUFlO0VBQzFHLFNBQVMsRUFBRSxNQUFNLEdBQ3BCOztBQzNIRCxBQUFBLFlBQVksQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFFBQVEsRUFBRSxNQUFNLEdBQ25COztBQUVELEFBQUEsWUFBWSxBQUFBLFFBQVEsQ0FBQztFQUNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxJQUFJO0VBQ1YsT0FBTyxFQUFFLENBQUM7RUFDVixPQUFPLEVBQUUsS0FBSztFQUNkLE9BQU8sRUFBRSxFQUFFO0VBQ1gsS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSx1RkFBc0Y7RUFDbEcsVUFBVSxFQUFFLG1GQUFrRjtFQUM5RixpQkFBaUIsRUFBRSxhQUFhO0VBQ2hDLFNBQVMsRUFBRSxhQUFhLEdBQzNCOztBQUVELEFBQUEsWUFBWSxBQUFBLE1BQU0sQUFBQSxRQUFRLENBQUM7RUFDdkIsaUJBQWlCLEVBQUUsUUFBUTtFQUMzQixTQUFTLEVBQUUsUUFBUSxHQUN0Qjs7QUN0QkksQUFBRCxPQUFLLENBQUM7RUFDRixRQUFRLEVBQUUsUUFBUSxHQU9yQjtFQVJBLEFBRUcsT0FGQyxBQUVBLElBQUksQ0FBQztJQUNGLFNBQVMsRUFBRSxLQUFLLEdBSW5CO0lBUEosQUFJTyxPQUpILEFBRUEsSUFBSSxBQUVBLElBQUssQ0FBQSxZQUFZLEVBQUU7TUFDaEIsV0FBVyxFQUFFLE1BQU0sR0FDdEI7O0FBR1IsQUFBRCxRQUFNLENBQUM7RUFDSCxnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLE1BQU0sRUFBRSxJQUFJO0VBQ1osTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsa0JBQWtCO0VBQ3BDLE9BQU8sRUFBRSxRQUFRO0VkK0N2QixPQUFPLEVBQUUsWUFBWTtFQUNyQixPQUFPLEVBQUUsU0FBUztFQUNsQixPQUFPLEVBQUUsUUFBUTtFQUNqQixPQUFPLEVBQUUsT0FBTztFQUNoQixPQUFPLEVBQUUsSUFBSTtFY2pEUCxXQUFXLEVBQUUsTUFBTTtFQUNuQixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsQ0FBQztFQUNWLE1BQU0sRUFBRSxPQUFPO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0F1QnhCO0VBakNBLEFBV0csUUFYRSxBQVdELFFBQVEsQ0FBQztJQUNOLE9BQU8sRUFBRSxFQUFFO0lBQ1gsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLElBQUk7SUFDWCxHQUFHLEVBQUUsSUFBSTtJQUNULEtBQUssRUFBRSxDQUFDO0lBQ1IsTUFBTSxFQUFFLENBQUM7SUFDVCxXQUFXLEVBQUUscUJBQXFCO0lBQ2xDLFlBQVksRUFBRSxxQkFBcUI7SUFDbkMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENoQmZyQixPQUFPLEdnQmdCYjtFQXJCSixBQXNCRyxRQXRCRSxBQXNCRCxPQUFPLENBQUM7SUFDTCxPQUFPLEVBQUUsRUFBRTtJQUNYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLE1BQU07SUFDZCxLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRUFBRSxDQUFDO0lBQ1QsV0FBVyxFQUFFLHFCQUFxQjtJQUNsQyxZQUFZLEVBQUUscUJBQXFCO0lBQ25DLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDaEIxQmxCLE9BQU8sR2dCMkJiOztBQUVKLEFBQUQsUUFBTSxDQUFDO0VBQ0gsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFQUFFLEtBQUs7RWQ2SDNCLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLGtCQUFrQixFYzdIQSxDQUFDO0VkOEhuQixrQkFBa0IsRUFBRSxRQUFRO0VBQzVCLFFBQVEsRUFBRSxNQUFNLEdjOUhiOztBQUNBLEFBQUQsUUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLElBQUk7RUFDVCxJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsa0JBQWtCO0VBQ3BDLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGdCQUFnQixFQUFFLEtBQUs7RUFDdkIsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsSUFBSTtFQUNiLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLGFBQWEsRUFBRSxXQUFXO0VBQzFCLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLFVBQVUsRUFBRSxJQUFJLEdBQ25COztBQUNBLEFBQUQsUUFBTSxDQUFDO0VBQ0gsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFQUFFLEtBQUs7RUFDckIsS0FBSyxFaEJuREMsT0FBTztFZ0JvRGIsT0FBTyxFQUFFLFdBQVc7RUFDcEIsTUFBTSxFQUFFLE9BQU87RUFDZixVQUFVLEVBQUUsZ0JBQWdCLEdBSy9CO0VBWkEsQUFRRyxRQVJFLEFBUUQsTUFBTSxDQUFDO0lBQ0osZ0JBQWdCLEVoQjVEYixPQUFPO0lnQjZEVixLQUFLLEVBQUUsS0FBSyxHQUNmOztBQzdFVCxBQUFBLE1BQU0sQ0FBQztFQUNMLFFBQVEsRUFBRSxLQUFLO0VmK1BmLElBQUksRUFEVSxDQUFDO0VBRWYsR0FBRyxFQUZrQixDQUFDO0VBR3RCLEtBQUssRUFIdUIsQ0FBQztFQUk3QixNQUFNLEVBSjZCLENBQUM7RWU1UHBDLE9BQU8sRUFBRSxHQUFHO0VBQ1osVUFBVSxFQUFFLE1BQU07RUFDbEIsY0FBYyxFQUFFLElBQUk7RUFDcEIsT0FBTyxFQUFFLENBQUM7RUFDVixVQUFVLEVBQUUsZ0JBQWdCLEdBK0s3QjtFQXRMRCxBQVNJLE1BVEUsQUFRSCxXQUFXLENBQ1YsV0FBVyxDQUFDO0lBQ1YsS0FBSyxFQUFFLEtBQUs7SUFDWixhQUFhLEVBQUUsTUFBTSxHQUN0QjtFQVpMLEFBYUksTUFiRSxBQVFILFdBQVcsQ0FLVixjQUFjLENBQUM7SUFDYixPQUFPLEVBQUUsSUFBSTtJQUNiLFVBQVUsRUFBRSxLQUFLLEdBQ2xCO0VBaEJMLEFBaUJJLE1BakJFLEFBUUgsV0FBVyxDQVNWLFdBQVcsQ0FBQztJQUNWLFVBQVUsRUFBRSxLQUFLLEdBQ2xCO0VBbkJMLEFBb0JJLE1BcEJFLEFBUUgsV0FBVyxDQVlWLGNBQWMsQ0FBQztJQUNiLFVBQVUsRUFBRSxxQkFBcUI7SUFDakMsZUFBZSxFQUFFLFlBQVksR0FDOUI7RUF2QkwsQUF3QkksTUF4QkUsQUFRSCxXQUFXLENBZ0JWLFFBQVEsQ0FBQztJQUNQLGFBQWEsRUFBRSxNQUFNLEdBZXRCO0lmdkNILE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWVEckMsQUF3QkksTUF4QkUsQUFRSCxXQUFXLENBZ0JWLFFBQVEsQ0FBQztRQUdMLFVBQVUsRUFBRSxNQUFNO1FBQ2xCLGFBQWEsRUFBRSxNQUFNLEdBWXhCO0lBeENMLEFBOEJNLE1BOUJBLEFBUUgsV0FBVyxDQWdCVixRQUFRLENBTU4sT0FBTyxDQUFDO01md2tCWixXQUFXLEVBRGEsbUJBQW1CLEVBQ3ZCLFVBQVU7TURyVTVCLFNBQVMsRUFBRSxNQUFNO01nQmhRYixXQUFXLEVBQUUsR0FBRztNQUNoQixLQUFLLEVqQm5CRSxPQUFPLEdpQm9CZjtNaEJnUUgsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtRZ0JuUzdDLEFBOEJNLE1BOUJBLEFBUUgsV0FBVyxDQWdCVixRQUFRLENBTU4sT0FBTyxDQUFDO1VoQnNRTixTQUFTLEVBQUUsSUFBSSxHZ0JqUWhCO01oQm9RSCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FnQnZTNUMsQUE4Qk0sTUE5QkEsQUFRSCxXQUFXLENBZ0JWLFFBQVEsQ0FNTixPQUFPLENBQUM7VWhCMFFOLFNBQVMsRUFBRSxNQUFNLEdnQnJRbEI7SUFuQ1AsQUFvQ00sTUFwQ0EsQUFRSCxXQUFXLENBZ0JWLFFBQVEsQ0FZTixNQUFNLENBQUM7TWhCNlNULFNBQVMsRUFBRSxNQUFNO01nQjNTYixLQUFLLEVqQnRCQyxPQUFPLEdpQnVCZDtNaEI0U0gsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtRZ0JuVjdDLEFBb0NNLE1BcENBLEFBUUgsV0FBVyxDQWdCVixRQUFRLENBWU4sTUFBTSxDQUFDO1VoQmdUTCxTQUFTLEVBQUUsTUFBTSxHZ0I3U2xCO01oQmdUSCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FnQnZWNUMsQUFvQ00sTUFwQ0EsQUFRSCxXQUFXLENBZ0JWLFFBQVEsQ0FZTixNQUFNLENBQUM7VWhCb1RMLFNBQVMsRUFBRSxNQUFNLEdnQmpUbEI7RUF2Q1AsQUF5Q0ksTUF6Q0UsQUFRSCxXQUFXLENBaUNWLElBQUksQ0FBQztJZm9CUCxPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJZXRCVCxHQUFHLEVBQUUsTUFBTTtJQUNYLGVBQWUsRUFBRSxRQUFRLEdBUTFCO0lmbkRILE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWVEckMsQUF5Q0ksTUF6Q0UsQUFRSCxXQUFXLENBaUNWLElBQUksQ0FBQztRQUtELGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLGNBQWMsRUFBRSxNQUFNLEdBS3pCO1FBcERMLEFBZ0RRLE1BaERGLEFBUUgsV0FBVyxDQWlDVixJQUFJLENBT0EsSUFBSSxDQUFDO1VBQ0gsS0FBSyxFQUFFLElBQUksR0FDWjtFQWxEVCxBQXNERSxNQXRESSxBQXNESCxLQUFLLENBQUM7SUFDTCxVQUFVLEVBQUUsT0FBTztJQUNuQixjQUFjLEVBQUUsT0FBTztJQUN2QixPQUFPLEVBQUUsQ0FBQyxHQVlYO0lBckVILEFBMERJLE1BMURFLEFBc0RILEtBQUssQ0FJSixjQUFjLENBQUM7TUFDYixPQUFPLEVBQUUsQ0FBQztNQUNWLFVBQVUsRUFBRSxPQUFPO01BQ25CLE1BQU0sRUFBRSxJQUFJLEdBQ2I7SUE5REwsQUFnRUksTUFoRUUsQUFzREgsS0FBSyxDQVVKLFdBQVcsQ0FBQztNQUNWLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLE9BQU87TWYwSHZCLFVBQVUsRWV6SGMsSUFBSSxDQUFFLFdBQVc7TWYwSHpDLGtCQUFrQixFZTFITSxJQUFJLENBQUUsV0FBVztNZjJIekMsZUFBZSxFZTNIUyxJQUFJLENBQUUsV0FBVztNZjRIekMsY0FBYyxFZTVIVSxJQUFJLENBQUUsV0FBVztNZjZIekMsYUFBYSxFZTdIVyxJQUFJLENBQUUsV0FBVztNZjhIekMsZ0JBQWdCLEVlOUgyQixJQUFJO01mK0gvQyx3QkFBd0IsRWUvSG1CLElBQUk7TWZnSS9DLHFCQUFxQixFZWhJc0IsSUFBSTtNZmlJL0Msb0JBQW9CLEVlakl1QixJQUFJO01ma0kvQyxtQkFBbUIsRWVsSXdCLElBQUksR0FDNUM7RUFHRixBQUFELGNBQVMsQ0FBQztJQUNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGdCQUFnQixFakJ0RE4sa0JBQU87SUU2T25CLElBQUksRUFEVSxDQUFDO0lBRWYsR0FBRyxFQUZrQixDQUFDO0lBR3RCLEtBQUssRUFIdUIsQ0FBQztJQUk3QixNQUFNLEVBSjZCLENBQUM7SWVwTGxDLE9BQU8sRUFBRSxDQUFDO0lmOEhaLFVBQVUsRUFBRSxnQkFBZ0I7SUFDNUIsa0JBQWtCLEVBQUUsZ0JBQWdCO0lBQ3BDLGVBQWUsRUFBRSxnQkFBZ0I7SUFDakMsY0FBYyxFQUFFLGdCQUFnQjtJQUNoQyxhQUFhLEVBQUUsZ0JBQWdCLEdlOUg5QjtFQUVBLEFBQUQsV0FBTSxDQUFDO0lBQ0wsT0FBTyxFQUFFLENBQUM7SUFDVixLQUFLLEVBQUUsS0FBSztJQUNaLFNBQVMsRUFBRSxHQUFHO0lmcUhoQixVQUFVLEVBQUUsZ0JBQWdCO0lBQzVCLGtCQUFrQixFQUFFLGdCQUFnQjtJQUNwQyxlQUFlLEVBQUUsZ0JBQWdCO0lBQ2pDLGNBQWMsRUFBRSxnQkFBZ0I7SUFDaEMsYUFBYSxFQUFFLGdCQUFnQjtJQXZKL0IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixJQUFJLEVBQUUsR0FBRztJQUNULFNBQVMsRUFBRSxxQkFBcUIsR2VvQy9CO0lBSkUsQUFBRCxtQkFBUyxDQUFDO01BQ1IsUUFBUSxFQUFFLE1BQU07TUFDaEIsYUFBYSxFQUFFLEdBQUcsR0FDbkI7RUFHRixBQUFELFdBQU0sQ0FBQztJQUNMLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFVBQVUsRUFBRSxJQUFJLEdBQ2pCO0VBRUEsQUFBRCxjQUFTLENBQUM7SUFDUixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLEtBQUssRUFBRSxJQUFJO0lBQ1gsVUFBVSxFQUFFLElBQUk7SUFDaEIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLHFCQUFxQixHQUMvQjtFQUVBLEFBQUQsWUFBTyxDQUFDO0loQm9MTixTQUFTLEVBQUUsTUFBTTtJZ0JsTGpCLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLGNBQWMsRUFBRSxTQUFTO0lBQ3pCLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGFBQWEsRUFBRSxNQUFNLEdBQ3RCO0loQmdMQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01nQnRMMUMsQUFBRCxZQUFPLENBQUM7UWhCdUxGLFNBQVMsRUFBRSxJQUFJLEdnQmpMcEI7SWhCb0xDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWdCMUx6QyxBQUFELFlBQU8sQ0FBQztRaEIyTEYsU0FBUyxFQUFFLE1BQU0sR2dCckx0QjtFQUVBLEFBQUQsWUFBTyxDQUFDO0lBQ04sUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLE1BQU07SUFDWCxLQUFLLEVBQUUsTUFBTTtJQUNiLE1BQU0sRUFBRSxPQUFPO0lBQ2YsVUFBVSxFQUFFLGdCQUFnQjtJQUM1QixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsa0JBQWtCO0lmbkN0QyxPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJZTRCN0IsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QixPQUFPLEVBQUUsQ0FBQyxHQWNYO0lBekJBLEFBY0csWUFkRyxBQWFKLE1BQU0sQ0FDTCxLQUFLLENBQUM7TUFDSixTQUFTLEVBQUUsY0FBYyxHQUMxQjtJQWhCSixBQW1CQyxZQW5CSyxDQW1CTCxLQUFLLENBQUM7TUFDSixLQUFLLEVqQnRIRyxPQUFPO01pQnVIZixXQUFXLEVBQUUsR0FBRztNQUNoQixTQUFTLEVBQUUsTUFBTTtNZmlEckIsVUFBVSxFZWhEYyxJQUFJLENBQUUsV0FBVztNZmlEekMsa0JBQWtCLEVlakRNLElBQUksQ0FBRSxXQUFXO01ma0R6QyxlQUFlLEVlbERTLElBQUksQ0FBRSxXQUFXO01mbUR6QyxjQUFjLEVlbkRVLElBQUksQ0FBRSxXQUFXO01mb0R6QyxhQUFhLEVlcERXLElBQUksQ0FBRSxXQUFXO01mcUR6QyxnQkFBZ0IsRUFOMEMsRUFBRTtNQU81RCx3QkFBd0IsRUFQa0MsRUFBRTtNQVE1RCxxQkFBcUIsRUFScUMsRUFBRTtNQVM1RCxvQkFBb0IsRUFUc0MsRUFBRTtNQVU1RCxtQkFBbUIsRUFWdUMsRUFBRSxHZTlDekQ7RUFHRixBQUVHLFNBRkEsQ0FFQyxjQUFRLENBQUM7SUFDUixPQUFPLEVBQUUsTUFBTTtJQUNmLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsY0FBYyxFQUFFLE1BQU0sR0FLdkI7SWYxSkwsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNZStJbEMsQUFFRyxTQUZBLENBRUMsY0FBUSxDQUFDO1FBT04sT0FBTyxFQUFFLE1BQU0sR0FFbEI7RUFYSixBQWFHLFNBYkEsQ0FhQyxtQkFBYSxDQUFDO0lBQ2IsYUFBYSxFQUFFLE1BQU0sR0FLdEI7SWZsS0wsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNZStJbEMsQUFhRyxTQWJBLENBYUMsbUJBQWEsQ0FBQztRQUlYLGFBQWEsRUFBRSxNQUFNLEdBRXhCO0VBbkJKLEFBcUJHLFNBckJBLENBcUJDLFdBQUssQ0FBQztJQUNMLFFBQVEsRUFBRSxNQUFNLEdBQ2pCO0VBR0YsQUFBRCxjQUFNLENBQUM7SUFDTCxVQUFVLEVBQUUsTUFBTTtJQUNsQixZQUFZLEVBQUUsT0FBTztJQUNyQixhQUFhLEVBQUUsTUFBTTtJQUNyQixJQUFJLEVBQUUsQ0FBQztJQUNQLFVBQVUsRUFBRSxJQUFJLEdBS2pCO0lBVkEsQUFPQyxjQVBJLEFBT0gsbUJBQW1CLENBQUM7TUFDbkIsS0FBSyxFQUFFLE1BQU0sR0FDZDs7QUVuTFAsQUFBQSxTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsTUFBTTtFQUNkLGFBQWEsRUFBRSxNQUFNO0VBQ3JCLE1BQU0sRUFBRSxvQkFBb0I7RUFDNUIsT0FBTyxFQUFFLENBQUM7RUFDVixRQUFRLEVBQUUsTUFBTTtFakJvRmhCLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLE9BQU8sRUFBRSxPQUFPO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZUFBZSxFQUFFLE1BQU07RUFDdkIsV0FBVyxFQUFFLE1BQU07RUFDbkIsbUJBQW1CLEVBQUUsTUFBTTtFQUMzQixlQUFlLEVBQUUsTUFBTTtFQUN2Qix1QkFBdUIsRUFBRSxNQUFNO0VpQjNGL0IsZUFBZSxFQUFFLFFBQVEsR0FVMUI7RUFsQkQsQUFTRSxTQVRPLENBU1AsS0FBSyxDQUFDO0lqQmlGTixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJaUJ4RjdCLEtBQUssRUFBRSxNQUFNO0lBQ2IsTUFBTSxFQUFFLE1BQU07SUFDZCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsQ0FBQztJQUNWLFdBQVcsRUFBRSxDQUFDO0lBQ2QsWUFBWSxFQUFFLE1BQU0sR0FDckI7O0FBR0gsQUFBQSxhQUFhLENBQUM7RUFDWixRQUFRLEVBQUUsUUFBUTtFakIyT2xCLElBQUksRUFEVSxDQUFDO0VBRWYsR0FBRyxFQUZrQixDQUFDO0VBR3RCLEtBQUssRUFIdUIsQ0FBQztFQUk3QixNQUFNLEVBSjZCLENBQUM7RWlCeE9wQyxhQUFhLEVBQUUsT0FBTyxHQUN2Qjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VqQnFPbEIsSUFBSSxFQURVLENBQUM7RUFFZixHQUFHLEVBRmtCLENBQUM7RUFHdEIsS0FBSyxFQUh1QixDQUFDO0VBSTdCLE1BQU0sRUFKNkIsQ0FBQztFaUJsT3BDLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsY0FBYyxFQUFFLE1BQU07RUFDdEIsZUFBZSxFQUFFLE1BQU07RUFDdkIsY0FBYyxFQUFFLElBQUk7RUFDcEIsZ0JBQWdCLEVBQUUsS0FBSztFQUN2QixPQUFPLEVBQUUsQ0FBQztFQUNWLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFdBQVcsRUFBRSxDQUFDLEdBTWY7RUFqQkQsQUFhRSxhQWJXLEFBYVYsUUFBUSxDQUFDO0lBQ1IsT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUFBLGNBQWMsQ0FBQztFQUNiLE9BQU8sRUFBRSxhQUFhO0VqQjBhdEIsZ0JBQWdCLEVBQUUsV0FBVztFQUM3QixLQUFLLEVBQUUsSUFBSTtFQXlJWCxXQUFXLEVBRFUsU0FBUyxFQUNWLFVBQVU7RUF2STlCLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLElBQUk7RWlCNWFiLFFBQVEsRUFBRSxRQUFRO0VqQmdObEIsSUFBSSxFQURVLENBQUM7RUFFZixHQUFHLEVBRmtCLENBQUM7RUFHdEIsS0FBSyxFQUh1QixDQUFDO0VBSTdCLE1BQU0sRUFKNkIsQ0FBQztFaUI3TXBDLE9BQU8sRUFBRSxDQUFDO0VBQ1YsU0FBUyxFQUFFLE1BQU07RUFDakIsTUFBTSxFQUFFLGVBQWU7RWpCOGlCdkIsV0FBVyxFQURVLFNBQVMsRUFDVixVQUFVO0VpQjVpQjlCLGFBQWEsRUFBRSxPQUFPLEdBQ3ZCOztBQ3ZERCxrQkFBa0IsQ0FBbEIsTUFBa0I7RUFDZCxJQUFJO0VBQ0osR0FBRztFQUNILEdBQUc7RUFDSCxFQUFFO0lBQ0UsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQztJQUM5RCxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxHQUFHO0VBQ0gsR0FBRztJQUNDLGlDQUFpQyxFQUFFLHNDQUFzQztJQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7SUFDakUsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsV0FBVztJQUN2RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsV0FBVztFQUVuRCxHQUFHO0lBQ0MsaUNBQWlDLEVBQUUsc0NBQXNDO0lBQ3pFLHlCQUF5QixFQUFFLHNDQUFzQztJQUNqRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxZQUFZO0lBQ3hELFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxZQUFZO0VBRXBELEdBQUc7SUFDQyxrQ0FBa0MsRUFBRSxtQ0FBbUM7SUFDdkUsMEJBQTBCLEVBQUUsbUNBQW1DO0lBQy9ELGlCQUFpQixFQUFFLG9CQUFvQixDQUFDLFlBQVk7SUFDcEQsU0FBUyxFQUFFLG9CQUFvQixDQUFDLFlBQVk7RUFFaEQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFlBQVk7SUFDdkQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFlBQVk7O0FBSXZELFVBQVUsQ0FBVixNQUFVO0VBQ04sSUFBSTtFQUNKLEdBQUc7RUFDSCxHQUFHO0VBQ0gsRUFBRTtJQUNFLGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7SUFDOUQsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsR0FBRztFQUNILEdBQUc7SUFDQyxpQ0FBaUMsRUFBRSxzQ0FBc0M7SUFDekUseUJBQXlCLEVBQUUsc0NBQXNDO0lBQ2pFLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFdBQVc7SUFDdkQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7RUFFbkQsR0FBRztJQUNDLGlDQUFpQyxFQUFFLHNDQUFzQztJQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7SUFDakUsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsWUFBWTtJQUN4RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsWUFBWTtFQUVwRCxHQUFHO0lBQ0Msa0NBQWtDLEVBQUUsbUNBQW1DO0lBQ3ZFLDBCQUEwQixFQUFFLG1DQUFtQztJQUMvRCxpQkFBaUIsRUFBRSxvQkFBb0IsQ0FBQyxZQUFZO0lBQ3BELFNBQVMsRUFBRSxvQkFBb0IsQ0FBQyxZQUFZO0VBRWhELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0lBQ3ZELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZOztBQUl2RCxBQUFBLGdCQUFnQixDQUFDO0VBQ2Isc0JBQXNCLEVBQUUsTUFBTTtFQUM5QixjQUFjLEVBQUUsTUFBTTtFQUN0Qix3QkFBd0IsRUFBRSxhQUFhO0VBQ3ZDLGdCQUFnQixFQUFFLGFBQWEsR0FDbEM7O0FBRUQsa0JBQWtCLENBQWxCLEtBQWtCO0VBQ2QsSUFBSTtFQUNKLEdBQUc7RUFDSCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0VBQ0gsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsS0FBVTtFQUNOLElBQUk7RUFDSixHQUFHO0VBQ0gsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztFQUNILEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSxlQUFlLENBQUM7RUFDWixzQkFBc0IsRUFBRSxLQUFLO0VBQzdCLGNBQWMsRUFBRSxLQUFLLEdBQ3hCOztBQUdELDhFQUE4RTtBQUU5RSxrQkFBa0IsQ0FBbEIsS0FBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsZ0JBQWdCO0lBQ25DLFNBQVMsRUFBRSxnQkFBZ0I7RUFFL0IsR0FBRztJQUNDLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0VBRXhDLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxnQkFBZ0I7SUFDbkMsU0FBUyxFQUFFLGdCQUFnQjs7QUFJbkMsVUFBVSxDQUFWLEtBQVU7RUFDTixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsZ0JBQWdCO0lBQ25DLFNBQVMsRUFBRSxnQkFBZ0I7RUFFL0IsR0FBRztJQUNDLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0VBRXhDLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxnQkFBZ0I7SUFDbkMsU0FBUyxFQUFFLGdCQUFnQjs7QUFJbkMsQUFBQSxlQUFlLENBQUM7RUFDWixzQkFBc0IsRUFBRSxLQUFLO0VBQzdCLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLGlDQUFpQyxFQUFFLFdBQVc7RUFDOUMseUJBQXlCLEVBQUUsV0FBVyxHQUN6Qzs7QUFFRCxrQkFBa0IsQ0FBbEIsVUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsZ0JBQWdCO0lBQ25DLFNBQVMsRUFBRSxnQkFBZ0I7RUFFL0IsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsZ0JBQWdCO0lBQ25DLFNBQVMsRUFBRSxnQkFBZ0I7O0FBSW5DLFVBQVUsQ0FBVixVQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLGdCQUFnQjtJQUNuQyxTQUFTLEVBQUUsZ0JBQWdCO0VBRS9CLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsRUFBRTtJQUNFLGlCQUFpQixFQUFFLGdCQUFnQjtJQUNuQyxTQUFTLEVBQUUsZ0JBQWdCOztBQUluQyxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLHNCQUFzQixFQUFFLFVBQVU7RUFDbEMsY0FBYyxFQUFFLFVBQVUsR0FDN0I7O0FBRUQsa0JBQWtCLENBQWxCLE1BQWtCO0VBQ2QsSUFBSTtFQUNKLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBRXZDLEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUI7SUFDMUMsU0FBUyxFQUFFLHVCQUF1Qjs7QUFJMUMsVUFBVSxDQUFWLE1BQVU7RUFDTixJQUFJO0VBQ0osRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7RUFFdkMsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxBQUFBLGdCQUFnQixDQUFDO0VBQ2Isc0JBQXNCLEVBQUUsTUFBTTtFQUM5QixjQUFjLEVBQUUsTUFBTSxHQUN6Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsTUFBa0I7RUFDZCxJQUFJO0VBQ0osRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7RUFFdkMsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxVQUFVLENBQVYsTUFBVTtFQUNOLElBQUk7RUFDSixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtFQUV2QyxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7O0FBSTFDLEFBQUEsZ0JBQWdCLENBQUM7RUFDYixzQkFBc0IsRUFBRSxNQUFNO0VBQzlCLGNBQWMsRUFBRSxNQUFNLEdBQ3pCOztBQUVELGtCQUFrQixDQUFsQixTQUFrQjtFQUNkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxhQUFhO0lBQ2hDLFNBQVMsRUFBRSxhQUFhO0VBRTVCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjO0lBQ2xELFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjO0VBRTlDLEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxlQUFlLENBQUMsYUFBYTtJQUNoRCxTQUFTLEVBQUUsZUFBZSxDQUFDLGFBQWE7RUFFNUMsS0FBSztJQUNELGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLGNBQWM7SUFDbEQsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGNBQWM7RUFFOUMsS0FBSztJQUNELGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxhQUFhO0lBQ2hELFNBQVMsRUFBRSxlQUFlLENBQUMsYUFBYTtFQUU1QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsYUFBYTtJQUNoQyxTQUFTLEVBQUUsYUFBYTs7QUFJaEMsVUFBVSxDQUFWLFNBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsYUFBYTtJQUNoQyxTQUFTLEVBQUUsYUFBYTtFQUU1QixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsZ0JBQWdCLENBQUMsY0FBYztJQUNsRCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsY0FBYztFQUU5QyxLQUFLO0lBQ0QsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLGFBQWE7SUFDaEQsU0FBUyxFQUFFLGVBQWUsQ0FBQyxhQUFhO0VBRTVDLEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjO0lBQ2xELFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxjQUFjO0VBRTlDLEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxlQUFlLENBQUMsYUFBYTtJQUNoRCxTQUFTLEVBQUUsZUFBZSxDQUFDLGFBQWE7RUFFNUMsR0FBRztJQUNDLGlCQUFpQixFQUFFLGFBQWE7SUFDaEMsU0FBUyxFQUFFLGFBQWE7O0FBSWhDLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsaUNBQWlDLEVBQUUsV0FBVztFQUM5Qyx5QkFBeUIsRUFBRSxXQUFXO0VBQ3RDLHNCQUFzQixFQUFFLFNBQVM7RUFDakMsY0FBYyxFQUFFLFNBQVMsR0FDNUI7O0FBRUQsa0JBQWtCLENBQWxCLEtBQWtCO0VBQ2QsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBRXZDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUV4QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7RUFFdEMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBRXZDLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx1QkFBdUI7SUFDMUMsU0FBUyxFQUFFLHVCQUF1Qjs7QUFJMUMsVUFBVSxDQUFWLEtBQVU7RUFDTixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7RUFFdkMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0VBRXhDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUI7SUFDMUMsU0FBUyxFQUFFLHVCQUF1QjtFQUV0QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7RUFFdkMsRUFBRTtJQUNFLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxBQUFBLGVBQWUsQ0FBQztFQUNaLHdCQUF3QixFQUFFLFVBQVU7RUFDcEMsZ0JBQWdCLEVBQUUsVUFBVTtFQUM1QixzQkFBc0IsRUFBRSxLQUFLO0VBQzdCLGNBQWMsRUFBRSxLQUFLLEdBQ3hCOztBQUVELGtCQUFrQixDQUFsQixJQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxnQkFBZ0I7SUFDbkMsU0FBUyxFQUFFLGdCQUFnQjtFQUUvQixHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLHdCQUF3QjtJQUNsRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsd0JBQXdCO0VBRTlELEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx1QkFBdUI7SUFDakUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHVCQUF1QjtFQUU3RCxHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx3QkFBd0I7SUFDbEUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHdCQUF3QjtFQUU5RCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsZ0JBQWdCO0lBQ25DLFNBQVMsRUFBRSxnQkFBZ0I7O0FBSW5DLFVBQVUsQ0FBVixJQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLGdCQUFnQjtJQUNuQyxTQUFTLEVBQUUsZ0JBQWdCO0VBRS9CLEdBQUc7RUFDSCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsd0JBQXdCO0lBQ2xFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyx3QkFBd0I7RUFFOUQsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLHVCQUF1QjtJQUNqRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsdUJBQXVCO0VBRTdELEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLHdCQUF3QjtJQUNsRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsd0JBQXdCO0VBRTlELEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxnQkFBZ0I7SUFDbkMsU0FBUyxFQUFFLGdCQUFnQjs7QUFJbkMsQUFBQSxjQUFjLENBQUM7RUFDWCxzQkFBc0IsRUFBRSxJQUFJO0VBQzVCLGNBQWMsRUFBRSxJQUFJLEdBQ3ZCOztBQUdELDhFQUE4RTtBQUU5RSxrQkFBa0IsQ0FBbEIsTUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLHdCQUF3QjtJQUNuRSxTQUFTLEVBQUUsdUJBQXVCLENBQUMsd0JBQXdCO0VBRS9ELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx1QkFBdUI7SUFDakUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHVCQUF1QjtFQUU3RCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsd0JBQXdCO0lBQ25FLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyx3QkFBd0I7RUFFL0QsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLHVCQUF1QjtJQUNqRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsdUJBQXVCO0VBRTdELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx3QkFBd0I7SUFDbEUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHdCQUF3QjtFQUU5RCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixNQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyx3QkFBd0I7SUFDbkUsU0FBUyxFQUFFLHVCQUF1QixDQUFDLHdCQUF3QjtFQUUvRCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsdUJBQXVCO0lBQ2pFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyx1QkFBdUI7RUFFN0QsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLHdCQUF3QjtJQUNuRSxTQUFTLEVBQUUsdUJBQXVCLENBQUMsd0JBQXdCO0VBRS9ELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx1QkFBdUI7SUFDakUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHVCQUF1QjtFQUU3RCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsd0JBQXdCO0lBQ2xFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyx3QkFBd0I7RUFFOUQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLGdCQUFnQixDQUFDO0VBQ2Isc0JBQXNCLEVBQUUsTUFBTTtFQUM5QixjQUFjLEVBQUUsTUFBTSxHQUN6Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsS0FBa0I7RUFDZCxJQUFJO0VBQ0osS0FBSztFQUNMLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxLQUFLO0lBQ0QsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLGVBQWU7SUFDbEQsU0FBUyxFQUFFLGVBQWUsQ0FBQyxlQUFlO0VBRTlDLEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxjQUFjLENBQUMsY0FBYztJQUNoRCxTQUFTLEVBQUUsY0FBYyxDQUFDLGNBQWM7RUFFNUMsS0FBSztJQUNELGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtJQUNwRCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsZ0JBQWdCO0VBRWhELEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQyxnQkFBZ0I7SUFDcEQsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtFQUVoRCxLQUFLO0lBQ0QsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsa0JBQWtCO0lBQ3hELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxrQkFBa0I7RUFFcEQsS0FBSztJQUNELGlCQUFpQixFQUFFLGlCQUFrQixDQUFDLGlCQUFrQjtJQUN4RCxTQUFTLEVBQUUsaUJBQWtCLENBQUMsaUJBQWtCO0VBRXBELEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxrQkFBb0IsQ0FBQyxrQkFBb0I7SUFDNUQsU0FBUyxFQUFFLGtCQUFvQixDQUFDLGtCQUFvQjs7QUFJNUQsVUFBVSxDQUFWLEtBQVU7RUFDTixJQUFJO0VBQ0osS0FBSztFQUNMLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxLQUFLO0lBQ0QsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLGVBQWU7SUFDbEQsU0FBUyxFQUFFLGVBQWUsQ0FBQyxlQUFlO0VBRTlDLEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxjQUFjLENBQUMsY0FBYztJQUNoRCxTQUFTLEVBQUUsY0FBYyxDQUFDLGNBQWM7RUFFNUMsS0FBSztJQUNELGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtJQUNwRCxTQUFTLEVBQUUsZ0JBQWdCLENBQUMsZ0JBQWdCO0VBRWhELEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxnQkFBZ0IsQ0FBQyxnQkFBZ0I7SUFDcEQsU0FBUyxFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtFQUVoRCxLQUFLO0lBQ0QsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsa0JBQWtCO0lBQ3hELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxrQkFBa0I7RUFFcEQsS0FBSztJQUNELGlCQUFpQixFQUFFLGlCQUFrQixDQUFDLGlCQUFrQjtJQUN4RCxTQUFTLEVBQUUsaUJBQWtCLENBQUMsaUJBQWtCO0VBRXBELEtBQUs7SUFDRCxpQkFBaUIsRUFBRSxrQkFBb0IsQ0FBQyxrQkFBb0I7SUFDNUQsU0FBUyxFQUFFLGtCQUFvQixDQUFDLGtCQUFvQjs7QUFJNUQsQUFBQSxlQUFlLENBQUM7RUFDWixzQkFBc0IsRUFBRSxLQUFLO0VBQzdCLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLHdCQUF3QixFQUFFLE1BQU07RUFDaEMsZ0JBQWdCLEVBQUUsTUFBTSxHQUMzQjs7QUFFRCxrQkFBa0IsQ0FBbEIsU0FBa0I7RUFDZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsVUFBVTtJQUM3QixTQUFTLEVBQUUsVUFBVTtFQUV6QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsVUFBVTtJQUM3QixTQUFTLEVBQUUsVUFBVTtFQUV6QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTs7QUFJM0IsVUFBVSxDQUFWLFNBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsVUFBVTtJQUM3QixTQUFTLEVBQUUsVUFBVTtFQUV6QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtFQUV2QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsVUFBVTtJQUM3QixTQUFTLEVBQUUsVUFBVTtFQUV6QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTs7QUFJM0IsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQixzQkFBc0IsRUFBRSxTQUFTO0VBQ2pDLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLDBCQUEwQixFQUFFLGNBQWM7RUFDMUMsa0JBQWtCLEVBQUUsY0FBYztFQUNsQywwQkFBMEIsRUFBRSxtQ0FBbUM7RUFDL0Qsa0JBQWtCLEVBQUUsbUNBQW1DO0VBQ3ZELGlDQUFpQyxFQUFFLFdBQVc7RUFDOUMseUJBQXlCLEVBQUUsV0FBVyxHQUN6Qzs7QUFHRCxvQkFBb0I7QUFFcEIsa0JBQWtCLENBQWxCLFVBQWtCO0VBQ2QsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG1CQUFtQixDQUFDLFVBQVU7SUFDakQsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFVBQVU7SUFDekMsT0FBTyxFQUFFLEdBQUc7RUFFaEIsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLFVBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtJQUNqRCxTQUFTLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtJQUN6QyxPQUFPLEVBQUUsR0FBRztFQUVoQixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLHNCQUFzQixFQUFFLFVBQVU7RUFDbEMsY0FBYyxFQUFFLFVBQVUsR0FDN0I7O0FBRUQsa0JBQWtCLENBQWxCLFVBQWtCO0VBQ2QsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG1CQUFtQixDQUFDLFVBQVU7SUFDakQsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFVBQVU7SUFDekMsT0FBTyxFQUFFLEdBQUc7RUFFaEIsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLFVBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtJQUNqRCxTQUFTLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtJQUN6QyxPQUFPLEVBQUUsR0FBRztFQUVoQixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLHNCQUFzQixFQUFFLFVBQVU7RUFDbEMsY0FBYyxFQUFFLFVBQVUsR0FDN0I7O0FBRUQsa0JBQWtCLENBQWxCLFdBQWtCO0VBQ2QsRUFBRTtJQUNFLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLFVBQVU7SUFDaEQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLFVBQVU7SUFDeEMsT0FBTyxFQUFFLEdBQUc7RUFFaEIsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLFdBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtJQUNoRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtJQUN4QyxPQUFPLEVBQUUsR0FBRztFQUVoQixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsY0FBYyxFQUFFLFdBQVcsR0FDOUI7O0FBRUQsa0JBQWtCLENBQWxCLFFBQWtCO0VBQ2QsRUFBRTtJQUNFLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLFVBQVU7SUFDaEQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLFVBQVU7SUFDeEMsT0FBTyxFQUFFLEdBQUc7RUFFaEIsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLFFBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtJQUNoRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtJQUN4QyxPQUFPLEVBQUUsR0FBRztFQUVoQixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLGtCQUFrQixDQUFDO0VBQ2Ysc0JBQXNCLEVBQUUsUUFBUTtFQUNoQyxjQUFjLEVBQUUsUUFBUSxHQUMzQjs7QUFHRCxnQkFBZ0I7QUFFaEIsa0JBQWtCLENBQWxCLFdBQWtCO0VBQ2QsRUFBRTtJQUNFLGlCQUFpQixFQUFFLFFBQVE7SUFDM0IsU0FBUyxFQUFFLFFBQVE7SUFDbkIsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxVQUFVO0lBQy9DLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQyxVQUFVO0lBQ3ZDLE9BQU8sRUFBRSxHQUFHOztBQUlwQixVQUFVLENBQVYsV0FBVTtFQUNOLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUMsVUFBVTtJQUMvQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsVUFBVTtJQUN2QyxPQUFPLEVBQUUsR0FBRzs7QUFJcEIsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLGNBQWMsRUFBRSxXQUFXLEdBQzlCOztBQUVELGtCQUFrQixDQUFsQixXQUFrQjtFQUNkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtJQUNqRCxTQUFTLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtJQUN6QyxPQUFPLEVBQUUsR0FBRzs7QUFJcEIsVUFBVSxDQUFWLFdBQVU7RUFDTixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUM3QyxTQUFTLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDckMsT0FBTyxFQUFFLEdBQUc7RUFFaEIsSUFBSTtJQUNBLGlCQUFpQixFQUFFLG1CQUFtQixDQUFDLFVBQVU7SUFDakQsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFVBQVU7SUFDekMsT0FBTyxFQUFFLEdBQUc7O0FBSXBCLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyxjQUFjLEVBQUUsV0FBVyxHQUM5Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsWUFBa0I7RUFDZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsUUFBUTtJQUMzQixTQUFTLEVBQUUsUUFBUTtJQUNuQixPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUM3QyxTQUFTLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDckMsT0FBTyxFQUFFLEdBQUc7RUFFaEIsSUFBSTtJQUNBLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLFVBQVU7SUFDaEQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLFVBQVU7SUFDeEMsT0FBTyxFQUFFLEdBQUc7O0FBSXBCLFVBQVUsQ0FBVixZQUFVO0VBQ04sRUFBRTtJQUNFLGlCQUFpQixFQUFFLFFBQVE7SUFDM0IsU0FBUyxFQUFFLFFBQVE7SUFDbkIsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxVQUFVO0lBQ2hELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxVQUFVO0lBQ3hDLE9BQU8sRUFBRSxHQUFHOztBQUlwQixBQUFBLHNCQUFzQixDQUFDO0VBQ25CLHNCQUFzQixFQUFFLFlBQVk7RUFDcEMsY0FBYyxFQUFFLFlBQVksR0FDL0I7O0FBRUQsa0JBQWtCLENBQWxCLFNBQWtCO0VBQ2QsRUFBRTtJQUNFLGlCQUFpQixFQUFFLFFBQVE7SUFDM0IsU0FBUyxFQUFFLFFBQVE7SUFDbkIsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLFVBQVU7SUFDN0MsU0FBUyxFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQ3JDLE9BQU8sRUFBRSxHQUFHO0VBRWhCLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxVQUFVO0lBQ2hELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxVQUFVO0lBQ3hDLE9BQU8sRUFBRSxHQUFHOztBQUlwQixVQUFVLENBQVYsU0FBVTtFQUNOLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFRO0lBQ25CLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxVQUFVO0lBQzdDLFNBQVMsRUFBRSxlQUFlLENBQUMsVUFBVTtJQUNyQyxPQUFPLEVBQUUsR0FBRztFQUVoQixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtJQUNoRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtJQUN4QyxPQUFPLEVBQUUsR0FBRzs7QUFJcEIsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQixzQkFBc0IsRUFBRSxTQUFTO0VBQ2pDLGNBQWMsRUFBRSxTQUFTLEdBQzVCOztBQUdELHlCQUF5QjtBQUV6QixrQkFBa0IsQ0FBbEIsUUFBa0I7RUFDZCxJQUFJO0VBQ0osR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEVBQUU7SUFDRSxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DO0VBRWxFLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7RUFFeEMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0VBRXhDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLGdCQUFnQjtJQUNuQyxTQUFTLEVBQUUsZ0JBQWdCOztBQUluQyxVQUFVLENBQVYsUUFBVTtFQUNOLElBQUk7RUFDSixHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsRUFBRTtJQUNFLGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7RUFFbEUsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUV4QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7RUFFeEMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsZ0JBQWdCO0lBQ25DLFNBQVMsRUFBRSxnQkFBZ0I7O0FBSW5DLEFBQUEsa0JBQWtCLENBQUM7RUFDZiwwQkFBMEIsRUFBRSxlQUFlO0VBQzNDLGtCQUFrQixFQUFFLGVBQWU7RUFDbkMsMEJBQTBCLEVBQUUsb0NBQW9DO0VBQ2hFLGtCQUFrQixFQUFFLG9DQUFvQztFQUN4RCxzQkFBc0IsRUFBRSxRQUFRO0VBQ2hDLGNBQWMsRUFBRSxRQUFRLEdBQzNCOztBQUVELGtCQUFrQixDQUFsQixZQUFrQjtFQUNkLElBQUk7RUFDSixHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxFQUFFO0lBQ0UsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQztFQUVsRSxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSwwQkFBMEIsQ0FBQyxTQUFTO0lBQ3ZELFNBQVMsRUFBRSwwQkFBMEIsQ0FBQyxTQUFTO0VBRW5ELEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFdBQVc7SUFDdEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFdBQVc7RUFFbEQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFlBQVk7SUFDeEQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFlBQVk7RUFFcEQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLGFBQWE7SUFDdkQsU0FBUyxFQUFFLHNCQUFzQixDQUFDLGFBQWE7RUFFbkQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsWUFBVTtFQUNOLElBQUk7RUFDSixHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxFQUFFO0lBQ0UsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQztFQUVsRSxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSwwQkFBMEIsQ0FBQyxTQUFTO0lBQ3ZELFNBQVMsRUFBRSwwQkFBMEIsQ0FBQyxTQUFTO0VBRW5ELEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFdBQVc7SUFDdEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFdBQVc7RUFFbEQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFlBQVk7SUFDeEQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFlBQVk7RUFFcEQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLGFBQWE7SUFDdkQsU0FBUyxFQUFFLHNCQUFzQixDQUFDLGFBQWE7RUFFbkQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLHNCQUFzQixDQUFDO0VBQ25CLHNCQUFzQixFQUFFLFlBQVk7RUFDcEMsY0FBYyxFQUFFLFlBQVksR0FDL0I7O0FBRUQsa0JBQWtCLENBQWxCLFlBQWtCO0VBQ2QsSUFBSTtFQUNKLEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEVBQUU7SUFDRSxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DO0VBRWxFLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQixDQUFDLFNBQVM7SUFDdkQsU0FBUyxFQUFFLDBCQUEwQixDQUFDLFNBQVM7RUFFbkQsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsU0FBUztJQUNwRCxTQUFTLEVBQUUsdUJBQXVCLENBQUMsU0FBUztFQUVoRCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsWUFBWTtJQUN4RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsWUFBWTtFQUVwRCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsYUFBYTtJQUN2RCxTQUFTLEVBQUUsc0JBQXNCLENBQUMsYUFBYTtFQUVuRCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixZQUFVO0VBQ04sSUFBSTtFQUNKLEdBQUc7RUFDSCxHQUFHO0VBQ0gsR0FBRztFQUNILEVBQUU7SUFDRSxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DO0VBRWxFLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQixDQUFDLFNBQVM7SUFDdkQsU0FBUyxFQUFFLDBCQUEwQixDQUFDLFNBQVM7RUFFbkQsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsU0FBUztJQUNwRCxTQUFTLEVBQUUsdUJBQXVCLENBQUMsU0FBUztFQUVoRCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsWUFBWTtJQUN4RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsWUFBWTtFQUVwRCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsYUFBYTtJQUN2RCxTQUFTLEVBQUUsc0JBQXNCLENBQUMsYUFBYTtFQUVuRCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsc0JBQXNCLEVBQUUsWUFBWTtFQUNwQyxjQUFjLEVBQUUsWUFBWSxHQUMvQjs7QUFFRCxrQkFBa0IsQ0FBbEIsYUFBa0I7RUFDZCxJQUFJO0VBQ0osR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsRUFBRTtJQUNFLGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7RUFFbEUsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUseUJBQXlCLENBQUMsU0FBUztJQUN0RCxTQUFTLEVBQUUseUJBQXlCLENBQUMsU0FBUztFQUVsRCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxTQUFTO0lBQ3JELFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxTQUFTO0VBRWpELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0lBQ3ZELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0VBRW5ELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0lBQ3hELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0VBRXBELEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsVUFBVSxDQUFWLGFBQVU7RUFDTixJQUFJO0VBQ0osR0FBRztFQUNILEdBQUc7RUFDSCxHQUFHO0VBQ0gsRUFBRTtJQUNFLGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7RUFFbEUsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUseUJBQXlCLENBQUMsU0FBUztJQUN0RCxTQUFTLEVBQUUseUJBQXlCLENBQUMsU0FBUztFQUVsRCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxTQUFTO0lBQ3JELFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxTQUFTO0VBRWpELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0lBQ3ZELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0VBRW5ELEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0lBQ3hELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0VBRXBELEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixzQkFBc0IsRUFBRSxhQUFhO0VBQ3JDLGNBQWMsRUFBRSxhQUFhLEdBQ2hDOztBQUVELGtCQUFrQixDQUFsQixVQUFrQjtFQUNkLElBQUk7RUFDSixHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxFQUFFO0lBQ0UsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQztFQUVsRSxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUIsQ0FBQyxTQUFTO0lBQ3RELFNBQVMsRUFBRSx5QkFBeUIsQ0FBQyxTQUFTO0VBRWxELEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFdBQVc7SUFDdkQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7RUFFbkQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFlBQVk7SUFDdkQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFlBQVk7RUFFbkQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLGFBQWE7SUFDeEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLGFBQWE7RUFFcEQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsVUFBVTtFQUNOLElBQUk7RUFDSixHQUFHO0VBQ0gsR0FBRztFQUNILEdBQUc7RUFDSCxFQUFFO0lBQ0UsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQztFQUVsRSxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUIsQ0FBQyxTQUFTO0lBQ3RELFNBQVMsRUFBRSx5QkFBeUIsQ0FBQyxTQUFTO0VBRWxELEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFdBQVc7SUFDdkQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7RUFFbkQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFlBQVk7SUFDdkQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFlBQVk7RUFFbkQsR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLGFBQWE7SUFDeEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLGFBQWE7RUFFcEQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLHNCQUFzQixFQUFFLFVBQVU7RUFDbEMsY0FBYyxFQUFFLFVBQVUsR0FDN0I7O0FBR0QscUJBQXFCO0FBRXJCLGtCQUFrQixDQUFsQixTQUFrQjtFQUNkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0VBQ0gsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7O0FBSXpDLFVBQVUsQ0FBVixTQUFVO0VBQ04sR0FBRztJQUNDLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEdBQUc7RUFDSCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjs7QUFJekMsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQiwwQkFBMEIsRUFBRSxlQUFlO0VBQzNDLGtCQUFrQixFQUFFLGVBQWU7RUFDbkMsMEJBQTBCLEVBQUUsb0NBQW9DO0VBQ2hFLGtCQUFrQixFQUFFLG9DQUFvQztFQUN4RCxzQkFBc0IsRUFBRSxTQUFTO0VBQ2pDLGNBQWMsRUFBRSxTQUFTLEdBQzVCOztBQUVELGtCQUFrQixDQUFsQixhQUFrQjtFQUNkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0lBQ3hELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0VBRXBELEdBQUc7RUFDSCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxXQUFXO0lBQ3ZELFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxXQUFXO0VBRW5ELEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHlCQUF5QixDQUFDLFNBQVM7SUFDdEQsU0FBUyxFQUFFLHlCQUF5QixDQUFDLFNBQVM7O0FBSXRELFVBQVUsQ0FBVixhQUFVO0VBQ04sR0FBRztJQUNDLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLGFBQWE7SUFDeEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLGFBQWE7RUFFcEQsR0FBRztFQUNILEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFdBQVc7SUFDdkQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFdBQVc7RUFFbkQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUseUJBQXlCLENBQUMsU0FBUztJQUN0RCxTQUFTLEVBQUUseUJBQXlCLENBQUMsU0FBUzs7QUFJdEQsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixzQkFBc0IsRUFBRSxhQUFhO0VBQ3JDLGNBQWMsRUFBRSxhQUFhLEdBQ2hDOztBQUVELGtCQUFrQixDQUFsQixhQUFrQjtFQUNkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFdBQVc7SUFDdEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFdBQVc7RUFFbEQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCLENBQUMsU0FBUztJQUN2RCxTQUFTLEVBQUUsMEJBQTBCLENBQUMsU0FBUzs7QUFJdkQsVUFBVSxDQUFWLGFBQVU7RUFDTixHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxXQUFXO0lBQ3RELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxXQUFXO0VBRWxELEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQixDQUFDLFNBQVM7SUFDdkQsU0FBUyxFQUFFLDBCQUEwQixDQUFDLFNBQVM7O0FBSXZELEFBQUEsdUJBQXVCLENBQUM7RUFDcEIsc0JBQXNCLEVBQUUsYUFBYTtFQUNyQyxjQUFjLEVBQUUsYUFBYSxHQUNoQzs7QUFFRCxrQkFBa0IsQ0FBbEIsY0FBa0I7RUFDZCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxXQUFXO0lBQ3ZELFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxXQUFXO0VBRW5ELEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHlCQUF5QixDQUFDLFNBQVM7SUFDdEQsU0FBUyxFQUFFLHlCQUF5QixDQUFDLFNBQVM7O0FBSXRELFVBQVUsQ0FBVixjQUFVO0VBQ04sR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsV0FBVztJQUN2RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsV0FBVztFQUVuRCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUIsQ0FBQyxTQUFTO0lBQ3RELFNBQVMsRUFBRSx5QkFBeUIsQ0FBQyxTQUFTOztBQUl0RCxBQUFBLHdCQUF3QixDQUFDO0VBQ3JCLHNCQUFzQixFQUFFLGNBQWM7RUFDdEMsY0FBYyxFQUFFLGNBQWMsR0FDakM7O0FBRUQsa0JBQWtCLENBQWxCLFdBQWtCO0VBQ2QsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLGFBQWE7SUFDekQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLGFBQWE7RUFFckQsR0FBRztFQUNILEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QixDQUFDLFdBQVc7SUFDdEQsU0FBUyxFQUFFLHVCQUF1QixDQUFDLFdBQVc7RUFFbEQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCLENBQUMsU0FBUztJQUN2RCxTQUFTLEVBQUUsMEJBQTBCLENBQUMsU0FBUzs7QUFJdkQsVUFBVSxDQUFWLFdBQVU7RUFDTixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsYUFBYTtJQUN6RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsYUFBYTtFQUVyRCxHQUFHO0VBQ0gsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsV0FBVztJQUN0RCxTQUFTLEVBQUUsdUJBQXVCLENBQUMsV0FBVztFQUVsRCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSwwQkFBMEIsQ0FBQyxTQUFTO0lBQ3ZELFNBQVMsRUFBRSwwQkFBMEIsQ0FBQyxTQUFTOztBQUl2RCxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsY0FBYyxFQUFFLFdBQVcsR0FDOUI7O0FBR0QsdUJBQXVCO0FBRXZCLGtCQUFrQixDQUFsQixNQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLE1BQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7O0FBSWxCLEFBQUEsZ0JBQWdCLENBQUM7RUFDYixzQkFBc0IsRUFBRSxNQUFNO0VBQzlCLGNBQWMsRUFBRSxNQUFNLEdBQ3pCOztBQUVELGtCQUFrQixDQUFsQixVQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBRXZDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsVUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBRXZDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLHNCQUFzQixFQUFFLFVBQVU7RUFDbEMsY0FBYyxFQUFFLFVBQVUsR0FDN0I7O0FBRUQsa0JBQWtCLENBQWxCLGFBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLFNBQVMsRUFBRSwwQkFBMEI7RUFFekMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixhQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLFNBQVMsRUFBRSwwQkFBMEI7RUFFekMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLEFBQUEsdUJBQXVCLENBQUM7RUFDcEIsc0JBQXNCLEVBQUUsYUFBYTtFQUNyQyxjQUFjLEVBQUUsYUFBYSxHQUNoQzs7QUFFRCxrQkFBa0IsQ0FBbEIsVUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtFQUV2QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsVUFBVSxDQUFWLFVBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtFQUV2QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixzQkFBc0IsRUFBRSxVQUFVO0VBQ2xDLGNBQWMsRUFBRSxVQUFVLEdBQzdCOztBQUVELGtCQUFrQixDQUFsQixhQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQjtJQUM3QyxTQUFTLEVBQUUsMEJBQTBCO0VBRXpDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsYUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQjtJQUM3QyxTQUFTLEVBQUUsMEJBQTBCO0VBRXpDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLHNCQUFzQixFQUFFLGFBQWE7RUFDckMsY0FBYyxFQUFFLGFBQWEsR0FDaEM7O0FBRUQsa0JBQWtCLENBQWxCLFdBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7RUFFdEMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixXQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7RUFFdEMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyxjQUFjLEVBQUUsV0FBVyxHQUM5Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsY0FBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUV4QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsVUFBVSxDQUFWLGNBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUV4QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixzQkFBc0IsRUFBRSxjQUFjO0VBQ3RDLGNBQWMsRUFBRSxjQUFjLEdBQ2pDOztBQUVELGtCQUFrQixDQUFsQixRQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCO0VBRXRDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsUUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCO0VBRXRDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLGtCQUFrQixDQUFDO0VBQ2Ysc0JBQXNCLEVBQUUsUUFBUTtFQUNoQyxjQUFjLEVBQUUsUUFBUSxHQUMzQjs7QUFFRCxrQkFBa0IsQ0FBbEIsV0FBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUV4QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsVUFBVSxDQUFWLFdBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUV4QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLGNBQWMsRUFBRSxXQUFXLEdBQzlCOztBQUVELGtCQUFrQixDQUFsQixhQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QjtJQUMvQyxTQUFTLEVBQUUsNEJBQTRCO0VBRTNDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsYUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QjtJQUMvQyxTQUFTLEVBQUUsNEJBQTRCO0VBRTNDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLHNCQUFzQixFQUFFLGFBQWE7RUFDckMsY0FBYyxFQUFFLGFBQWEsR0FDaEM7O0FBRUQsa0JBQWtCLENBQWxCLGNBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMkJBQTJCO0lBQzlDLFNBQVMsRUFBRSwyQkFBMkI7RUFFMUMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixjQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMkJBQTJCO0lBQzlDLFNBQVMsRUFBRSwyQkFBMkI7RUFFMUMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLEFBQUEsd0JBQXdCLENBQUM7RUFDckIsc0JBQXNCLEVBQUUsY0FBYztFQUN0QyxjQUFjLEVBQUUsY0FBYyxHQUNqQzs7QUFFRCxrQkFBa0IsQ0FBbEIsZ0JBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMkJBQTJCO0lBQzlDLFNBQVMsRUFBRSwyQkFBMkI7RUFFMUMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixnQkFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDJCQUEyQjtJQUM5QyxTQUFTLEVBQUUsMkJBQTJCO0VBRTFDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLDBCQUEwQixDQUFDO0VBQ3ZCLHNCQUFzQixFQUFFLGdCQUFnQjtFQUN4QyxjQUFjLEVBQUUsZ0JBQWdCLEdBQ25DOztBQUVELGtCQUFrQixDQUFsQixpQkFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSwwQkFBMEI7SUFDN0MsU0FBUyxFQUFFLDBCQUEwQjtFQUV6QyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsVUFBVSxDQUFWLGlCQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLFNBQVMsRUFBRSwwQkFBMEI7RUFFekMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLEFBQUEsMkJBQTJCLENBQUM7RUFDeEIsc0JBQXNCLEVBQUUsaUJBQWlCO0VBQ3pDLGNBQWMsRUFBRSxpQkFBaUIsR0FDcEM7O0FBR0Qsa0JBQWtCO0FBRWxCLGtCQUFrQixDQUFsQixPQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLE9BQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7O0FBSWxCLEFBQUEsaUJBQWlCLENBQUM7RUFDZCxzQkFBc0IsRUFBRSxPQUFPO0VBQy9CLGNBQWMsRUFBRSxPQUFPLEdBQzFCOztBQUVELGtCQUFrQixDQUFsQixXQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxVQUFVLENBQVYsV0FBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsY0FBYyxFQUFFLFdBQVcsR0FDOUI7O0FBRUQsa0JBQWtCLENBQWxCLGNBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7O0FBSTVDLFVBQVUsQ0FBVixjQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7O0FBSTVDLEFBQUEsd0JBQXdCLENBQUM7RUFDckIsc0JBQXNCLEVBQUUsY0FBYztFQUN0QyxjQUFjLEVBQUUsY0FBYyxHQUNqQzs7QUFFRCxrQkFBa0IsQ0FBbEIsV0FBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3Qjs7QUFJM0MsVUFBVSxDQUFWLFdBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3Qjs7QUFJM0MsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLGNBQWMsRUFBRSxXQUFXLEdBQzlCOztBQUVELGtCQUFrQixDQUFsQixjQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQjtJQUM3QyxTQUFTLEVBQUUsMEJBQTBCOztBQUk3QyxVQUFVLENBQVYsY0FBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQjtJQUM3QyxTQUFTLEVBQUUsMEJBQTBCOztBQUk3QyxBQUFBLHdCQUF3QixDQUFDO0VBQ3JCLHNCQUFzQixFQUFFLGNBQWM7RUFDdEMsY0FBYyxFQUFFLGNBQWMsR0FDakM7O0FBRUQsa0JBQWtCLENBQWxCLFlBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7O0FBSTFDLFVBQVUsQ0FBVixZQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7O0FBSTFDLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsc0JBQXNCLEVBQUUsWUFBWTtFQUNwQyxjQUFjLEVBQUUsWUFBWSxHQUMvQjs7QUFFRCxrQkFBa0IsQ0FBbEIsZUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5Qjs7QUFJNUMsVUFBVSxDQUFWLGVBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5Qjs7QUFJNUMsQUFBQSx5QkFBeUIsQ0FBQztFQUN0QixzQkFBc0IsRUFBRSxlQUFlO0VBQ3ZDLGNBQWMsRUFBRSxlQUFlLEdBQ2xDOztBQUVELGtCQUFrQixDQUFsQixTQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCOztBQUkzQyxVQUFVLENBQVYsU0FBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCOztBQUkzQyxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLHNCQUFzQixFQUFFLFNBQVM7RUFDakMsY0FBYyxFQUFFLFNBQVMsR0FDNUI7O0FBRUQsa0JBQWtCLENBQWxCLFlBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLFNBQVMsRUFBRSwwQkFBMEI7O0FBSTdDLFVBQVUsQ0FBVixZQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLFNBQVMsRUFBRSwwQkFBMEI7O0FBSTdDLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsc0JBQXNCLEVBQUUsWUFBWTtFQUNwQyxjQUFjLEVBQUUsWUFBWSxHQUMvQjs7QUFFRCxrQkFBa0IsQ0FBbEIsY0FBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEI7SUFDL0MsU0FBUyxFQUFFLDRCQUE0Qjs7QUFJL0MsVUFBVSxDQUFWLGNBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEI7SUFDL0MsU0FBUyxFQUFFLDRCQUE0Qjs7QUFJL0MsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixzQkFBc0IsRUFBRSxjQUFjO0VBQ3RDLGNBQWMsRUFBRSxjQUFjLEdBQ2pDOztBQUVELGtCQUFrQixDQUFsQixlQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDJCQUEyQjtJQUM5QyxTQUFTLEVBQUUsMkJBQTJCOztBQUk5QyxVQUFVLENBQVYsZUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDJCQUEyQjtJQUM5QyxTQUFTLEVBQUUsMkJBQTJCOztBQUk5QyxBQUFBLHlCQUF5QixDQUFDO0VBQ3RCLHNCQUFzQixFQUFFLGVBQWU7RUFDdkMsY0FBYyxFQUFFLGVBQWUsR0FDbEM7O0FBRUQsa0JBQWtCLENBQWxCLGtCQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDBCQUEwQjtJQUM3QyxTQUFTLEVBQUUsMEJBQTBCOztBQUk3QyxVQUFVLENBQVYsa0JBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSwwQkFBMEI7SUFDN0MsU0FBUyxFQUFFLDBCQUEwQjs7QUFJN0MsQUFBQSw0QkFBNEIsQ0FBQztFQUN6QixzQkFBc0IsRUFBRSxrQkFBa0I7RUFDMUMsY0FBYyxFQUFFLGtCQUFrQixHQUNyQzs7QUFFRCxrQkFBa0IsQ0FBbEIsaUJBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsMkJBQTJCO0lBQzlDLFNBQVMsRUFBRSwyQkFBMkI7O0FBSTlDLFVBQVUsQ0FBVixpQkFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0VBRW5DLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDJCQUEyQjtJQUM5QyxTQUFTLEVBQUUsMkJBQTJCOztBQUk5QyxBQUFBLDJCQUEyQixDQUFDO0VBQ3hCLHNCQUFzQixFQUFFLGlCQUFpQjtFQUN6QyxjQUFjLEVBQUUsaUJBQWlCLEdBQ3BDOztBQUdELGNBQWM7QUFFZCxrQkFBa0IsQ0FBbEIsSUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsMEJBQTBCO0lBQ3RHLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQywwQkFBMEI7SUFDOUYsaUNBQWlDLEVBQUUsUUFBUTtJQUMzQyx5QkFBeUIsRUFBRSxRQUFRO0VBRXZDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQywwQkFBMEI7SUFDMUcsU0FBUyxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLHdCQUF3QixDQUFDLDBCQUEwQjtJQUNsRyxpQ0FBaUMsRUFBRSxRQUFRO0lBQzNDLHlCQUF5QixFQUFFLFFBQVE7RUFFdkMsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLHdCQUF3QixDQUFDLDBCQUEwQjtJQUMxRyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUMsMEJBQTBCO0lBQ2xHLGlDQUFpQyxFQUFFLE9BQU87SUFDMUMseUJBQXlCLEVBQUUsT0FBTztFQUV0QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCO0lBQzVHLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx5QkFBeUIsQ0FBQyxvQkFBb0IsQ0FBQyx1QkFBdUI7SUFDcEcsaUNBQWlDLEVBQUUsT0FBTztJQUMxQyx5QkFBeUIsRUFBRSxPQUFPO0VBRXRDLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyx1QkFBdUI7SUFDbkcsU0FBUyxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLHVCQUF1QjtJQUMzRixpQ0FBaUMsRUFBRSxPQUFPO0lBQzFDLHlCQUF5QixFQUFFLE9BQU87O0FBSTFDLFVBQVUsQ0FBVixJQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLDBCQUEwQjtJQUN0RyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsMEJBQTBCO0lBQzlGLGlDQUFpQyxFQUFFLFFBQVE7SUFDM0MseUJBQXlCLEVBQUUsUUFBUTtFQUV2QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUMsMEJBQTBCO0lBQzFHLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQywwQkFBMEI7SUFDbEcsaUNBQWlDLEVBQUUsUUFBUTtJQUMzQyx5QkFBeUIsRUFBRSxRQUFRO0VBRXZDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyx3QkFBd0IsQ0FBQywwQkFBMEI7SUFDMUcsU0FBUyxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLHdCQUF3QixDQUFDLDBCQUEwQjtJQUNsRyxpQ0FBaUMsRUFBRSxPQUFPO0lBQzFDLHlCQUF5QixFQUFFLE9BQU87RUFFdEMsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHlCQUF5QixDQUFDLG9CQUFvQixDQUFDLHVCQUF1QjtJQUM1RyxTQUFTLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCO0lBQ3BHLGlDQUFpQyxFQUFFLE9BQU87SUFDMUMseUJBQXlCLEVBQUUsT0FBTztFQUV0QyxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCO0lBQ25HLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyx1QkFBdUI7SUFDM0YsaUNBQWlDLEVBQUUsT0FBTztJQUMxQyx5QkFBeUIsRUFBRSxPQUFPOztBQUkxQyxBQUFBLGtCQUFrQixBQUFBLGNBQWMsQ0FBQztFQUM3QiwyQkFBMkIsRUFBRSxPQUFPO0VBQ3BDLG1CQUFtQixFQUFFLE9BQU87RUFDNUIsc0JBQXNCLEVBQUUsSUFBSTtFQUM1QixjQUFjLEVBQUUsSUFBSSxHQUN2Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsT0FBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDdEQsaUNBQWlDLEVBQUUsT0FBTztJQUMxQyx5QkFBeUIsRUFBRSxPQUFPO0lBQ2xDLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHlCQUF5QjtJQUMvRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCO0lBQ3ZELGlDQUFpQyxFQUFFLE9BQU87SUFDMUMseUJBQXlCLEVBQUUsT0FBTztFQUV0QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDdEQsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7RUFFMUQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLGtCQUFrQjtJQUNyQyxTQUFTLEVBQUUsa0JBQWtCOztBQUlyQyxVQUFVLENBQVYsT0FBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDOUQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUN0RCxpQ0FBaUMsRUFBRSxPQUFPO0lBQzFDLHlCQUF5QixFQUFFLE9BQU87SUFDbEMsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCO0lBQy9ELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx5QkFBeUI7SUFDdkQsaUNBQWlDLEVBQUUsT0FBTztJQUMxQyx5QkFBeUIsRUFBRSxPQUFPO0VBRXRDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDOUQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUN0RCxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDOUQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtFQUUxRCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsa0JBQWtCO0lBQ3JDLFNBQVMsRUFBRSxrQkFBa0I7O0FBSXJDLEFBQUEsaUJBQWlCLENBQUM7RUFDZCwyQkFBMkIsRUFBRSxrQkFBa0I7RUFDL0MsbUJBQW1CLEVBQUUsa0JBQWtCO0VBQ3ZDLHNCQUFzQixFQUFFLE9BQU87RUFDL0IsY0FBYyxFQUFFLE9BQU8sR0FDMUI7O0FBRUQsa0JBQWtCLENBQWxCLE9BQWtCO0VBQ2QsSUFBSTtJQUNBLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUM5RCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQ3RELGlDQUFpQyxFQUFFLE9BQU87SUFDMUMseUJBQXlCLEVBQUUsT0FBTztJQUNsQyxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx5QkFBeUI7SUFDL0QsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHlCQUF5QjtJQUN2RCxpQ0FBaUMsRUFBRSxPQUFPO0lBQzFDLHlCQUF5QixFQUFFLE9BQU87RUFFdEMsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUM5RCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQ3RELE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUM5RCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0VBRTFELEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxrQkFBa0I7SUFDckMsU0FBUyxFQUFFLGtCQUFrQjs7QUFJckMsVUFBVSxDQUFWLE9BQVU7RUFDTixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDdEQsaUNBQWlDLEVBQUUsT0FBTztJQUMxQyx5QkFBeUIsRUFBRSxPQUFPO0lBQ2xDLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHlCQUF5QjtJQUMvRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCO0lBQ3ZELGlDQUFpQyxFQUFFLE9BQU87SUFDMUMseUJBQXlCLEVBQUUsT0FBTztFQUV0QyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDdEQsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7RUFFMUQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLGtCQUFrQjtJQUNyQyxTQUFTLEVBQUUsa0JBQWtCOztBQUlyQyxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsMkJBQTJCLEVBQUUsa0JBQWtCO0VBQy9DLG1CQUFtQixFQUFFLGtCQUFrQjtFQUN2QyxzQkFBc0IsRUFBRSxPQUFPO0VBQy9CLGNBQWMsRUFBRSxPQUFPLEdBQzFCOztBQUVELGtCQUFrQixDQUFsQixRQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxrQkFBa0I7SUFDckMsU0FBUyxFQUFFLGtCQUFrQjtFQUVqQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCO0lBQy9ELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx5QkFBeUI7SUFDdkQsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDdEQsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixRQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLGtCQUFrQjtJQUNyQyxTQUFTLEVBQUUsa0JBQWtCO0VBRWpDLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx5QkFBeUI7SUFDL0QsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHlCQUF5QjtJQUN2RCxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDOUQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUN0RCxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLDBCQUEwQixFQUFFLGVBQWU7RUFDM0Msa0JBQWtCLEVBQUUsZUFBZTtFQUNuQywwQkFBMEIsRUFBRSxvQ0FBb0M7RUFDaEUsa0JBQWtCLEVBQUUsb0NBQW9DO0VBQ3hELHNCQUFzQixFQUFFLFFBQVE7RUFDaEMsY0FBYyxFQUFFLFFBQVE7RUFDeEIsMkJBQTJCLEVBQUUsa0JBQWtCO0VBQy9DLG1CQUFtQixFQUFFLGtCQUFrQixHQUMxQzs7QUFFRCxrQkFBa0IsQ0FBbEIsUUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsa0JBQWtCO0lBQ3JDLFNBQVMsRUFBRSxrQkFBa0I7RUFFakMsR0FBRztJQUNDLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHlCQUF5QjtJQUMvRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCO0lBQ3ZELE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtJQUM5RCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQ3RELE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsUUFBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxrQkFBa0I7SUFDckMsU0FBUyxFQUFFLGtCQUFrQjtFQUVqQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMseUJBQXlCO0lBQy9ELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx5QkFBeUI7SUFDdkQsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0lBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7SUFDdEQsT0FBTyxFQUFFLENBQUM7O0FBSWxCLEFBQUEsa0JBQWtCLENBQUM7RUFDZiwwQkFBMEIsRUFBRSxlQUFlO0VBQzNDLGtCQUFrQixFQUFFLGVBQWU7RUFDbkMsMEJBQTBCLEVBQUUsb0NBQW9DO0VBQ2hFLGtCQUFrQixFQUFFLG9DQUFvQztFQUN4RCwyQkFBMkIsRUFBRSxrQkFBa0I7RUFDL0MsbUJBQW1CLEVBQUUsa0JBQWtCO0VBQ3ZDLHNCQUFzQixFQUFFLFFBQVE7RUFDaEMsY0FBYyxFQUFFLFFBQVEsR0FDM0I7O0FBR0QsZ0JBQWdCO0FBRWhCLGtCQUFrQixDQUFsQixpQkFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsYUFBYTtJQUN4RCxTQUFTLEVBQUUsdUJBQXVCLENBQUMsYUFBYTtJQUNoRCxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxZQUFZO0lBQy9CLFNBQVMsRUFBRSxZQUFZO0lBQ3ZCLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLFlBQVk7SUFDL0IsU0FBUyxFQUFFLFlBQVk7RUFFM0IsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsaUJBQVU7RUFDTixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsYUFBYTtJQUN4RCxTQUFTLEVBQUUsdUJBQXVCLENBQUMsYUFBYTtJQUNoRCxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxZQUFZO0lBQy9CLFNBQVMsRUFBRSxZQUFZO0lBQ3ZCLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLGlCQUFpQixFQUFFLFlBQVk7SUFDL0IsU0FBUyxFQUFFLFlBQVk7RUFFM0IsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLDJCQUEyQixDQUFDO0VBQ3hCLHNCQUFzQixFQUFFLGlCQUFpQjtFQUN6QyxjQUFjLEVBQUUsaUJBQWlCO0VBQ2pDLGlDQUFpQyxFQUFFLFFBQVE7RUFDM0MseUJBQXlCLEVBQUUsUUFBUSxHQUN0Qzs7QUFFRCxrQkFBa0IsQ0FBbEIsZ0JBQWtCO0VBQ2QsSUFBSTtJQUNBLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFlBQVk7SUFDeEQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFlBQVk7SUFDaEQsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsYUFBYTtJQUNoQyxTQUFTLEVBQUUsYUFBYTtJQUN4QixPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxXQUFXO0lBQzlCLFNBQVMsRUFBRSxXQUFXO0VBRTFCLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsVUFBVSxDQUFWLGdCQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFlBQVk7SUFDeEQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFlBQVk7SUFDaEQsT0FBTyxFQUFFLENBQUM7RUFFZCxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsYUFBYTtJQUNoQyxTQUFTLEVBQUUsYUFBYTtJQUN4QixPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxXQUFXO0lBQzlCLFNBQVMsRUFBRSxXQUFXO0VBRTFCLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSwwQkFBMEIsQ0FBQztFQUN2QixzQkFBc0IsRUFBRSxnQkFBZ0I7RUFDeEMsY0FBYyxFQUFFLGdCQUFnQjtFQUNoQyxpQ0FBaUMsRUFBRSxRQUFRO0VBQzNDLHlCQUF5QixFQUFFLFFBQVEsR0FDdEM7O0FBRUQsa0JBQWtCLENBQWxCLGtCQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0lBQ3ZELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxZQUFZO0lBQy9DLE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsa0JBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMsWUFBWTtJQUN2RCxTQUFTLEVBQUUsdUJBQXVCLENBQUMsWUFBWTtJQUMvQyxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSw0QkFBNEIsQ0FBQztFQUN6QixzQkFBc0IsRUFBRSxrQkFBa0I7RUFDMUMsY0FBYyxFQUFFLGtCQUFrQjtFQUNsQyxpQ0FBaUMsRUFBRSxPQUFPO0VBQzFDLHlCQUF5QixFQUFFLE9BQU8sR0FDckM7O0FBRUQsa0JBQWtCLENBQWxCLGlCQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxhQUFhO0lBQ3pELFNBQVMsRUFBRSx3QkFBd0IsQ0FBQyxhQUFhO0lBQ2pELE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsaUJBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsYUFBYTtJQUN6RCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsYUFBYTtJQUNqRCxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSwyQkFBMkIsQ0FBQztFQUN4QixzQkFBc0IsRUFBRSxpQkFBaUI7RUFDekMsY0FBYyxFQUFFLGlCQUFpQjtFQUNqQyxpQ0FBaUMsRUFBRSxPQUFPO0VBQzFDLHlCQUF5QixFQUFFLE9BQU8sR0FDckM7O0FBR0Qsd0JBQXdCO0FBRXhCLGtCQUFrQixDQUFsQixRQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSwwQkFBMEI7SUFDN0MsU0FBUyxFQUFFLDBCQUEwQjtJQUNyQyxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtJQUMvQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLFFBQVU7RUFDTixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsMEJBQTBCO0lBQzdDLFNBQVMsRUFBRSwwQkFBMEI7SUFDckMsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7SUFDL0IsT0FBTyxFQUFFLENBQUM7O0FBSWxCLEFBQUEsa0JBQWtCLENBQUM7RUFDZixzQkFBc0IsRUFBRSxRQUFRO0VBQ2hDLGNBQWMsRUFBRSxRQUFRO0VBQ3hCLHdCQUF3QixFQUFFLE1BQU07RUFDaEMsZ0JBQWdCLEVBQUUsTUFBTSxHQUMzQjs7QUFFRCxrQkFBa0IsQ0FBbEIsZ0JBQWtCO0VBQ2QsSUFBSTtJQUNBLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0lBQ3BDLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0lBQy9CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsZ0JBQVU7RUFDTixJQUFJO0lBQ0EsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7SUFDcEMsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7SUFDL0IsT0FBTyxFQUFFLENBQUM7O0FBSWxCLEFBQUEsMEJBQTBCLENBQUM7RUFDdkIsc0JBQXNCLEVBQUUsZ0JBQWdCO0VBQ3hDLGNBQWMsRUFBRSxnQkFBZ0I7RUFDaEMsd0JBQXdCLEVBQUUsV0FBVztFQUNyQyxnQkFBZ0IsRUFBRSxXQUFXLEdBQ2hDOztBQUVELGtCQUFrQixDQUFsQixpQkFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7SUFDbkMsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7SUFDL0IsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixpQkFBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtJQUMvQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSwyQkFBMkIsQ0FBQztFQUN4QixzQkFBc0IsRUFBRSxpQkFBaUI7RUFDekMsY0FBYyxFQUFFLGlCQUFpQjtFQUNqQyx3QkFBd0IsRUFBRSxZQUFZO0VBQ3RDLGdCQUFnQixFQUFFLFlBQVksR0FDakM7O0FBRUQsa0JBQWtCLENBQWxCLGNBQWtCO0VBQ2QsSUFBSTtJQUNBLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0lBQ25DLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0lBQy9CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsY0FBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtJQUMvQixPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixzQkFBc0IsRUFBRSxjQUFjO0VBQ3RDLGNBQWMsRUFBRSxjQUFjO0VBQzlCLHdCQUF3QixFQUFFLFdBQVc7RUFDckMsZ0JBQWdCLEVBQUUsV0FBVyxHQUNoQzs7QUFFRCxrQkFBa0IsQ0FBbEIsZUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7SUFDcEMsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7SUFDL0IsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixlQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0lBQ3BDLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9CO0lBQy9CLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLHlCQUF5QixDQUFDO0VBQ3RCLHNCQUFzQixFQUFFLGVBQWU7RUFDdkMsY0FBYyxFQUFFLGVBQWU7RUFDL0Isd0JBQXdCLEVBQUUsWUFBWTtFQUN0QyxnQkFBZ0IsRUFBRSxZQUFZLEdBQ2pDOztBQUdELG9CQUFvQjtBQUVwQixrQkFBa0IsQ0FBbEIsU0FBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7SUFDcEMsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixTQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0lBQ3BDLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLHNCQUFzQixFQUFFLFNBQVM7RUFDakMsY0FBYyxFQUFFLFNBQVM7RUFDekIsd0JBQXdCLEVBQUUsTUFBTTtFQUNoQyxnQkFBZ0IsRUFBRSxNQUFNLEdBQzNCOztBQUVELGtCQUFrQixDQUFsQixpQkFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7SUFDbkMsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixpQkFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSwyQkFBMkIsQ0FBQztFQUN4QixzQkFBc0IsRUFBRSxpQkFBaUI7RUFDekMsY0FBYyxFQUFFLGlCQUFpQjtFQUNqQyx3QkFBd0IsRUFBRSxXQUFXO0VBQ3JDLGdCQUFnQixFQUFFLFdBQVcsR0FDaEM7O0FBRUQsa0JBQWtCLENBQWxCLGtCQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx5QkFBeUI7SUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtJQUNwQyxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsVUFBVSxDQUFWLGtCQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0lBQ3BDLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLDRCQUE0QixDQUFDO0VBQ3pCLHNCQUFzQixFQUFFLGtCQUFrQjtFQUMxQyxjQUFjLEVBQUUsa0JBQWtCO0VBQ2xDLHdCQUF3QixFQUFFLFlBQVk7RUFDdEMsZ0JBQWdCLEVBQUUsWUFBWSxHQUNqQzs7QUFFRCxrQkFBa0IsQ0FBbEIsZUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUseUJBQXlCO0lBQzVDLFNBQVMsRUFBRSx5QkFBeUI7SUFDcEMsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixlQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLGlCQUFpQixFQUFFLHlCQUF5QjtJQUM1QyxTQUFTLEVBQUUseUJBQXlCO0lBQ3BDLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLHlCQUF5QixDQUFDO0VBQ3RCLHNCQUFzQixFQUFFLGVBQWU7RUFDdkMsY0FBYyxFQUFFLGVBQWU7RUFDL0Isd0JBQXdCLEVBQUUsV0FBVztFQUNyQyxnQkFBZ0IsRUFBRSxXQUFXLEdBQ2hDOztBQUVELGtCQUFrQixDQUFsQixnQkFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7SUFDbkMsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixnQkFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSwwQkFBMEIsQ0FBQztFQUN2QixzQkFBc0IsRUFBRSxnQkFBZ0I7RUFDeEMsY0FBYyxFQUFFLGdCQUFnQjtFQUNoQyx3QkFBd0IsRUFBRSxZQUFZO0VBQ3RDLGdCQUFnQixFQUFFLFlBQVksR0FDakM7O0FBR0QsY0FBYztBQUVkLGtCQUFrQixDQUFsQixLQUFrQjtFQUNkLEVBQUU7SUFDRSxpQ0FBaUMsRUFBRSxXQUFXO0lBQzlDLHlCQUF5QixFQUFFLFdBQVc7RUFFMUMsR0FBRztFQUNILEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxpQ0FBaUMsRUFBRSxXQUFXO0lBQzlDLHlCQUF5QixFQUFFLFdBQVc7RUFFMUMsR0FBRztFQUNILEdBQUc7SUFDQyxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxpQ0FBaUMsRUFBRSxXQUFXO0lBQzlDLHlCQUF5QixFQUFFLFdBQVc7SUFDdEMsT0FBTyxFQUFFLENBQUM7RUFFZCxFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7SUFDbkMsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixLQUFVO0VBQ04sRUFBRTtJQUNFLGlDQUFpQyxFQUFFLFdBQVc7SUFDOUMseUJBQXlCLEVBQUUsV0FBVztFQUUxQyxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0lBQ25DLGlDQUFpQyxFQUFFLFdBQVc7SUFDOUMseUJBQXlCLEVBQUUsV0FBVztFQUUxQyxHQUFHO0VBQ0gsR0FBRztJQUNDLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0lBQ25DLGlDQUFpQyxFQUFFLFdBQVc7SUFDOUMseUJBQXlCLEVBQUUsV0FBVztJQUN0QyxPQUFPLEVBQUUsQ0FBQztFQUVkLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSxlQUFlLENBQUM7RUFDWiwwQkFBMEIsRUFBRSxZQUFZO0VBQ3hDLGtCQUFrQixFQUFFLFlBQVk7RUFDaEMsMEJBQTBCLEVBQUUsaUNBQWlDO0VBQzdELGtCQUFrQixFQUFFLGlDQUFpQztFQUNyRCxzQkFBc0IsRUFBRSxLQUFLO0VBQzdCLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLHdCQUF3QixFQUFFLFFBQVE7RUFDbEMsZ0JBQWdCLEVBQUUsUUFBUSxHQUM3Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsWUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxVQUFVLENBQUMsYUFBYTtJQUMzQyxTQUFTLEVBQUUsVUFBVSxDQUFDLGFBQWE7SUFDbkMsd0JBQXdCLEVBQUUsYUFBYTtJQUN2QyxnQkFBZ0IsRUFBRSxhQUFhO0VBRW5DLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxjQUFjO0lBQ2pDLFNBQVMsRUFBRSxjQUFjO0VBRTdCLEdBQUc7SUFDQyxpQkFBaUIsRUFBRSxZQUFZO0lBQy9CLFNBQVMsRUFBRSxZQUFZO0VBRTNCLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLFFBQVE7SUFDM0IsU0FBUyxFQUFFLFFBQVE7O0FBSTNCLFVBQVUsQ0FBVixZQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLGFBQWE7SUFDM0MsU0FBUyxFQUFFLFVBQVUsQ0FBQyxhQUFhO0lBQ25DLHdCQUF3QixFQUFFLGFBQWE7SUFDdkMsZ0JBQWdCLEVBQUUsYUFBYTtFQUVuQyxHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsY0FBYztJQUNqQyxTQUFTLEVBQUUsY0FBYztFQUU3QixHQUFHO0lBQ0MsaUJBQWlCLEVBQUUsWUFBWTtJQUMvQixTQUFTLEVBQUUsWUFBWTtFQUUzQixFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxRQUFRO0lBQzNCLFNBQVMsRUFBRSxRQUFROztBQUkzQixBQUFBLHNCQUFzQixDQUFDO0VBQ25CLHNCQUFzQixFQUFFLFlBQVk7RUFDcEMsY0FBYyxFQUFFLFlBQVksR0FDL0I7O0FBR0QsOEVBQThFO0FBRTlFLGtCQUFrQixDQUFsQixNQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLDBCQUEwQjtJQUN0RSxTQUFTLEVBQUUsd0JBQXdCLENBQUMsMEJBQTBCO0VBRWxFLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxVQUFVLENBQVYsTUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLDBCQUEwQjtJQUN0RSxTQUFTLEVBQUUsd0JBQXdCLENBQUMsMEJBQTBCO0VBRWxFLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLG9CQUFvQjtJQUN2QyxTQUFTLEVBQUUsb0JBQW9COztBQUl2QyxBQUFBLGdCQUFnQixDQUFDO0VBQ2Isc0JBQXNCLEVBQUUsTUFBTTtFQUM5QixjQUFjLEVBQUUsTUFBTSxHQUN6Qjs7QUFHRCw4RUFBOEU7QUFFOUUsa0JBQWtCLENBQWxCLE9BQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMseUJBQXlCO0lBQ3BFLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyx5QkFBeUI7O0FBSXBFLFVBQVUsQ0FBVixPQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsdUJBQXVCLENBQUMseUJBQXlCO0lBQ3BFLFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyx5QkFBeUI7O0FBSXBFLEFBQUEsaUJBQWlCLENBQUM7RUFDZCxzQkFBc0IsRUFBRSxPQUFPO0VBQy9CLGNBQWMsRUFBRSxPQUFPLEdBQzFCOztBQUdELHVCQUF1QjtBQUV2QixrQkFBa0IsQ0FBbEIsTUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0I7SUFDekMsU0FBUyxFQUFFLHNCQUFzQjtFQUVyQyxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7O0FBSWxCLFVBQVUsQ0FBVixNQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDOztBQUlsQixBQUFBLGdCQUFnQixDQUFDO0VBQ2Isc0JBQXNCLEVBQUUsTUFBTTtFQUM5QixjQUFjLEVBQUUsTUFBTSxHQUN6Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsVUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQywwQkFBMEI7SUFDcEUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLDBCQUEwQjtJQUM1RCxpQ0FBaUMsRUFBRSxzQ0FBc0M7SUFDekUseUJBQXlCLEVBQUUsc0NBQXNDO0VBRXJFLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtJQUN2RSxTQUFTLEVBQUUsNEJBQTRCLENBQUMsdUJBQXVCO0lBQy9ELGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7O0FBSXRFLFVBQVUsQ0FBVixVQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsMEJBQTBCO0lBQ3BFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQywwQkFBMEI7SUFDNUQsaUNBQWlDLEVBQUUsc0NBQXNDO0lBQ3pFLHlCQUF5QixFQUFFLHNDQUFzQztFQUVyRSxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQyx1QkFBdUI7SUFDdkUsU0FBUyxFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtJQUMvRCxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DOztBQUl0RSxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLHNCQUFzQixFQUFFLFVBQVU7RUFDbEMsY0FBYyxFQUFFLFVBQVUsR0FDN0I7O0FBRUQsa0JBQWtCLENBQWxCLFVBQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsMEJBQTBCO0lBQ3BFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQywwQkFBMEI7SUFDNUQsaUNBQWlDLEVBQUUsc0NBQXNDO0lBQ3pFLHlCQUF5QixFQUFFLHNDQUFzQztFQUVyRSxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQyx1QkFBdUI7SUFDdkUsU0FBUyxFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtJQUMvRCxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DOztBQUl0RSxVQUFVLENBQVYsVUFBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLDBCQUEwQjtJQUNwRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsMEJBQTBCO0lBQzVELGlDQUFpQyxFQUFFLHNDQUFzQztJQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7RUFFckUsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsNEJBQTRCLENBQUMsdUJBQXVCO0lBQ3ZFLFNBQVMsRUFBRSw0QkFBNEIsQ0FBQyx1QkFBdUI7SUFDL0QsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQzs7QUFJdEUsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixzQkFBc0IsRUFBRSxVQUFVO0VBQ2xDLGNBQWMsRUFBRSxVQUFVLEdBQzdCOztBQUVELGtCQUFrQixDQUFsQixXQUFrQjtFQUNkLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLHlCQUF5QjtJQUNuRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMseUJBQXlCO0lBQzNELGlDQUFpQyxFQUFFLHNDQUFzQztJQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7RUFFckUsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsNEJBQTRCLENBQUMsd0JBQXdCO0lBQ3hFLFNBQVMsRUFBRSw0QkFBNEIsQ0FBQyx3QkFBd0I7SUFDaEUsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQzs7QUFJdEUsVUFBVSxDQUFWLFdBQVU7RUFDTixJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx5QkFBeUI7SUFDbkUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHlCQUF5QjtJQUMzRCxpQ0FBaUMsRUFBRSxzQ0FBc0M7SUFDekUseUJBQXlCLEVBQUUsc0NBQXNDO0VBRXJFLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QixDQUFDLHdCQUF3QjtJQUN4RSxTQUFTLEVBQUUsNEJBQTRCLENBQUMsd0JBQXdCO0lBQ2hFLGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7O0FBSXRFLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyxjQUFjLEVBQUUsV0FBVyxHQUM5Qjs7QUFFRCxrQkFBa0IsQ0FBbEIsUUFBa0I7RUFDZCxJQUFJO0lBQ0EsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx5QkFBeUI7SUFDbkUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHlCQUF5QjtJQUMzRCxpQ0FBaUMsRUFBRSxzQ0FBc0M7SUFDekUseUJBQXlCLEVBQUUsc0NBQXNDO0VBRXJFLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QixDQUFDLHdCQUF3QjtJQUN4RSxTQUFTLEVBQUUsNEJBQTRCLENBQUMsd0JBQXdCO0lBQ2hFLGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7O0FBSXRFLFVBQVUsQ0FBVixRQUFVO0VBQ04sSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMseUJBQXlCO0lBQ25FLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyx5QkFBeUI7SUFDM0QsaUNBQWlDLEVBQUUsc0NBQXNDO0lBQ3pFLHlCQUF5QixFQUFFLHNDQUFzQztFQUVyRSxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQyx3QkFBd0I7SUFDeEUsU0FBUyxFQUFFLDRCQUE0QixDQUFDLHdCQUF3QjtJQUNoRSxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DOztBQUl0RSxBQUFBLGtCQUFrQixDQUFDO0VBQ2Ysc0JBQXNCLEVBQUUsUUFBUTtFQUNoQyxjQUFjLEVBQUUsUUFBUSxHQUMzQjs7QUFHRCxtQkFBbUI7QUFFbkIsa0JBQWtCLENBQWxCLE9BQWtCO0VBQ2QsSUFBSTtJQUNBLE9BQU8sRUFBRSxDQUFDO0VBRWQsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCO0lBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFFckMsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDOztBQUlsQixVQUFVLENBQVYsT0FBVTtFQUNOLElBQUk7SUFDQSxPQUFPLEVBQUUsQ0FBQztFQUVkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHNCQUFzQjtJQUN6QyxTQUFTLEVBQUUsc0JBQXNCO0VBRXJDLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQzs7QUFJbEIsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLHNCQUFzQixFQUFFLE9BQU87RUFDL0IsY0FBYyxFQUFFLE9BQU8sR0FDMUI7O0FBRUQsa0JBQWtCLENBQWxCLFdBQWtCO0VBQ2QsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsNEJBQTRCLENBQUMsd0JBQXdCO0lBQ3hFLFNBQVMsRUFBRSw0QkFBNEIsQ0FBQyx3QkFBd0I7SUFDaEUsaUNBQWlDLEVBQUUsc0NBQXNDO0lBQ3pFLHlCQUF5QixFQUFFLHNDQUFzQztFQUVyRSxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQyx5QkFBeUI7SUFDbkUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLHlCQUF5QjtJQUMzRCxpQ0FBaUMsRUFBRSxtQ0FBbUM7SUFDdEUseUJBQXlCLEVBQUUsbUNBQW1DOztBQUl0RSxVQUFVLENBQVYsV0FBVTtFQUNOLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QixDQUFDLHdCQUF3QjtJQUN4RSxTQUFTLEVBQUUsNEJBQTRCLENBQUMsd0JBQXdCO0lBQ2hFLGlDQUFpQyxFQUFFLHNDQUFzQztJQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7RUFFckUsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMseUJBQXlCO0lBQ25FLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyx5QkFBeUI7SUFDM0QsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQzs7QUFJdEUsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLGNBQWMsRUFBRSxXQUFXO0VBQzNCLHdCQUF3QixFQUFFLGFBQWE7RUFDdkMsZ0JBQWdCLEVBQUUsYUFBYSxHQUNsQzs7QUFFRCxrQkFBa0IsQ0FBbEIsV0FBa0I7RUFDZCxHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQyx1QkFBdUI7SUFDdkUsU0FBUyxFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtFQUVuRSxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxVQUFVLENBQUMsMEJBQTBCO0lBQ3hELFNBQVMsRUFBRSxVQUFVLENBQUMsMEJBQTBCOztBQUl4RCxVQUFVLENBQVYsV0FBVTtFQUNOLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtJQUN2RSxTQUFTLEVBQUUsNEJBQTRCLENBQUMsdUJBQXVCO0VBRW5FLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLFVBQVUsQ0FBQywwQkFBMEI7SUFDeEQsU0FBUyxFQUFFLFVBQVUsQ0FBQywwQkFBMEI7O0FBSXhELEFBQUEscUJBQXFCLENBQUM7RUFDbEIsc0JBQXNCLEVBQUUsV0FBVztFQUNuQyxjQUFjLEVBQUUsV0FBVztFQUMzQix3QkFBd0IsRUFBRSxXQUFXO0VBQ3JDLGdCQUFnQixFQUFFLFdBQVcsR0FDaEM7O0FBRUQsa0JBQWtCLENBQWxCLFlBQWtCO0VBQ2QsR0FBRztJQUNDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsNEJBQTRCLENBQUMsd0JBQXdCO0lBQ3hFLFNBQVMsRUFBRSw0QkFBNEIsQ0FBQyx3QkFBd0I7RUFFcEUsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsVUFBVSxDQUFDLHlCQUF5QjtJQUN2RCxTQUFTLEVBQUUsVUFBVSxDQUFDLHlCQUF5Qjs7QUFJdkQsVUFBVSxDQUFWLFlBQVU7RUFDTixHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQyx3QkFBd0I7SUFDeEUsU0FBUyxFQUFFLDRCQUE0QixDQUFDLHdCQUF3QjtFQUVwRSxFQUFFO0lBQ0UsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSxVQUFVLENBQUMseUJBQXlCO0lBQ3ZELFNBQVMsRUFBRSxVQUFVLENBQUMseUJBQXlCOztBQUl2RCxBQUFBLHNCQUFzQixDQUFDO0VBQ25CLHNCQUFzQixFQUFFLFlBQVk7RUFDcEMsY0FBYyxFQUFFLFlBQVk7RUFDNUIsd0JBQXdCLEVBQUUsWUFBWTtFQUN0QyxnQkFBZ0IsRUFBRSxZQUFZLEdBQ2pDOztBQUVELGtCQUFrQixDQUFsQixTQUFrQjtFQUNkLEdBQUc7SUFDQyxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtJQUN2RSxTQUFTLEVBQUUsNEJBQTRCLENBQUMsdUJBQXVCO0lBQy9ELGlDQUFpQyxFQUFFLHNDQUFzQztJQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7RUFFckUsRUFBRTtJQUNFLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMsMEJBQTBCO0lBQ3BFLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQywwQkFBMEI7SUFDNUQsaUNBQWlDLEVBQUUsbUNBQW1DO0lBQ3RFLHlCQUF5QixFQUFFLG1DQUFtQzs7QUFJdEUsVUFBVSxDQUFWLFNBQVU7RUFDTixHQUFHO0lBQ0MsT0FBTyxFQUFFLENBQUM7SUFDVixpQkFBaUIsRUFBRSw0QkFBNEIsQ0FBQyx1QkFBdUI7SUFDdkUsU0FBUyxFQUFFLDRCQUE0QixDQUFDLHVCQUF1QjtJQUMvRCxpQ0FBaUMsRUFBRSxzQ0FBc0M7SUFDekUseUJBQXlCLEVBQUUsc0NBQXNDO0VBRXJFLEVBQUU7SUFDRSxPQUFPLEVBQUUsQ0FBQztJQUNWLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLDBCQUEwQjtJQUNwRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsMEJBQTBCO0lBQzVELGlDQUFpQyxFQUFFLG1DQUFtQztJQUN0RSx5QkFBeUIsRUFBRSxtQ0FBbUM7O0FBSXRFLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsc0JBQXNCLEVBQUUsU0FBUztFQUNqQyxjQUFjLEVBQUUsU0FBUztFQUN6Qix3QkFBd0IsRUFBRSxhQUFhO0VBQ3ZDLGdCQUFnQixFQUFFLGFBQWEsR0FDbEM7O0FBR0QsdUJBQXVCO0FBRXZCLGtCQUFrQixDQUFsQixXQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxVQUFVLEVBQUUsT0FBTztFQUV2QixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixXQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0lBQ25DLFVBQVUsRUFBRSxPQUFPO0VBRXZCLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLGNBQWMsRUFBRSxXQUFXLEdBQzlCOztBQUVELGtCQUFrQixDQUFsQixXQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSx3QkFBd0I7SUFDM0MsU0FBUyxFQUFFLHdCQUF3QjtJQUNuQyxVQUFVLEVBQUUsT0FBTztFQUV2QixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixXQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0lBQ25DLFVBQVUsRUFBRSxPQUFPO0VBRXZCLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixzQkFBc0IsRUFBRSxXQUFXO0VBQ25DLGNBQWMsRUFBRSxXQUFXLEdBQzlCOztBQUVELGtCQUFrQixDQUFsQixZQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSx1QkFBdUI7SUFDMUMsU0FBUyxFQUFFLHVCQUF1QjtJQUNsQyxVQUFVLEVBQUUsT0FBTztFQUV2QixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixZQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCO0lBQ2xDLFVBQVUsRUFBRSxPQUFPO0VBRXZCLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSxzQkFBc0IsQ0FBQztFQUNuQixzQkFBc0IsRUFBRSxZQUFZO0VBQ3BDLGNBQWMsRUFBRSxZQUFZLEdBQy9COztBQUVELGtCQUFrQixDQUFsQixTQUFrQjtFQUNkLElBQUk7SUFDQSxpQkFBaUIsRUFBRSx1QkFBdUI7SUFDMUMsU0FBUyxFQUFFLHVCQUF1QjtJQUNsQyxVQUFVLEVBQUUsT0FBTztFQUV2QixFQUFFO0lBQ0UsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7O0FBSXZDLFVBQVUsQ0FBVixTQUFVO0VBQ04sSUFBSTtJQUNBLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCO0lBQ2xDLFVBQVUsRUFBRSxPQUFPO0VBRXZCLEVBQUU7SUFDRSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjs7QUFJdkMsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQixzQkFBc0IsRUFBRSxTQUFTO0VBQ2pDLGNBQWMsRUFBRSxTQUFTLEdBQzVCOztBQUdELG1CQUFtQjtBQUVuQixrQkFBa0IsQ0FBbEIsWUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsRUFBRTtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxVQUFVLENBQVYsWUFBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7O0FBSTFDLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsc0JBQXNCLEVBQUUsWUFBWTtFQUNwQyxjQUFjLEVBQUUsWUFBWSxHQUMvQjs7QUFFRCxrQkFBa0IsQ0FBbEIsWUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsRUFBRTtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCOztBQUkzQyxVQUFVLENBQVYsWUFBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7O0FBSTNDLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsc0JBQXNCLEVBQUUsWUFBWTtFQUNwQyxjQUFjLEVBQUUsWUFBWSxHQUMvQjs7QUFFRCxrQkFBa0IsQ0FBbEIsYUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsRUFBRTtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGlCQUFpQixFQUFFLHVCQUF1QjtJQUMxQyxTQUFTLEVBQUUsdUJBQXVCOztBQUkxQyxVQUFVLENBQVYsYUFBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsaUJBQWlCLEVBQUUsdUJBQXVCO0lBQzFDLFNBQVMsRUFBRSx1QkFBdUI7O0FBSTFDLEFBQUEsdUJBQXVCLENBQUM7RUFDcEIsc0JBQXNCLEVBQUUsYUFBYTtFQUNyQyxjQUFjLEVBQUUsYUFBYSxHQUNoQzs7QUFFRCxrQkFBa0IsQ0FBbEIsVUFBa0I7RUFDZCxJQUFJO0lBQ0EsaUJBQWlCLEVBQUUsb0JBQW9CO0lBQ3ZDLFNBQVMsRUFBRSxvQkFBb0I7RUFFbkMsRUFBRTtJQUNFLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLGlCQUFpQixFQUFFLHdCQUF3QjtJQUMzQyxTQUFTLEVBQUUsd0JBQXdCOztBQUkzQyxVQUFVLENBQVYsVUFBVTtFQUNOLElBQUk7SUFDQSxpQkFBaUIsRUFBRSxvQkFBb0I7SUFDdkMsU0FBUyxFQUFFLG9CQUFvQjtFQUVuQyxFQUFFO0lBQ0UsVUFBVSxFQUFFLE1BQU07SUFDbEIsaUJBQWlCLEVBQUUsd0JBQXdCO0lBQzNDLFNBQVMsRUFBRSx3QkFBd0I7O0FBSTNDLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsc0JBQXNCLEVBQUUsVUFBVTtFQUNsQyxjQUFjLEVBQUUsVUFBVSxHQUM3Qjs7QUNuMUhELEFBQUEsY0FBYyxDQUFDO0VBQ1gsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxjQUZVLEFBRVQsT0FBTyxDQUFDO0luQnVqQlgsU0FBUyxFQUFDLCtCQUFDO0lBQ1gsaUJBQWlCLEVBQUMsK0JBQUM7SUFDbkIsY0FBYyxFQUFDLCtCQUFDO0lBQ2hCLGFBQWEsRUFBQywrQkFBQztJQUNmLFlBQVksRUFBQywrQkFBQyxHbUJ6akJYOztBQUdMLEFBQUEsZ0JBQWdCLENBQUM7RUFDYixPQUFPLEVBQUUsQ0FBQztFQUNWLGlCQUFpQixFQUFFLFVBQVM7RUFDNUIsYUFBYSxFQUFFLFVBQVM7RUFDeEIsU0FBUyxFQUFFLFVBQVM7RUFDcEIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBVEQsQUFNSSxnQkFOWSxBQU1YLE9BQU8sQ0FBQztJbkI0aUJYLFNBQVMsRUFBQyxpQ0FBQztJQUNYLGlCQUFpQixFQUFDLGlDQUFDO0lBQ25CLGNBQWMsRUFBQyxpQ0FBQztJQUNoQixhQUFhLEVBQUMsaUNBQUM7SUFDZixZQUFZLEVBQUMsaUNBQUMsR21COWlCWDs7QUFHTCxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLGlCQUFpQixFQUFFLHlCQUF5QixDQUFDLFNBQVM7RUFDdEQsU0FBUyxFQUFFLHlCQUF5QixDQUFDLFNBQVM7RUFDOUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUEQsQUFJSSxxQkFKaUIsQUFJaEIsT0FBTyxDQUFDO0luQm1pQlgsU0FBUyxFQUFDLHNDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsc0NBQUM7SUFDbkIsY0FBYyxFQUFDLHNDQUFDO0lBQ2hCLGFBQWEsRUFBQyxzQ0FBQztJQUNmLFlBQVksRUFBQyxzQ0FBQyxHbUJyaUJYOztBQUdMLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsaUJBQWlCLEVBQUUsMEJBQTBCLENBQUMsU0FBUztFQUN2RCxTQUFTLEVBQUUsMEJBQTBCLENBQUMsU0FBUztFQUMvQyxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFQRCxBQUlJLHFCQUppQixBQUloQixPQUFPLENBQUM7SW5CMGhCWCxTQUFTLEVBQUMscUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxxQ0FBQztJQUNuQixjQUFjLEVBQUMscUNBQUM7SUFDaEIsYUFBYSxFQUFDLHFDQUFDO0lBQ2YsWUFBWSxFQUFDLHFDQUFDLEdtQjVoQlg7O0FBR0wsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLGlCQUFpQixFQUFFLGtCQUFrQjtFQUNyQyxTQUFTLEVBQUUsa0JBQWtCO0VBQzdCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVBELEFBSUksa0JBSmMsQUFJYixPQUFPLENBQUM7SW5CaWhCWCxTQUFTLEVBQUMsbUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxtQ0FBQztJQUNuQixjQUFjLEVBQUMsbUNBQUM7SUFDaEIsYUFBYSxFQUFDLG1DQUFDO0lBQ2YsWUFBWSxFQUFDLG1DQUFDLEdtQm5oQlg7O0FBR0wsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixpQkFBaUIsRUFBRSxtQkFBbUI7RUFDdEMsU0FBUyxFQUFFLG1CQUFtQjtFQUM5QixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFQRCxBQUlJLG9CQUpnQixBQUlmLE9BQU8sQ0FBQztJbkJ3Z0JYLFNBQVMsRUFBQyxxQ0FBQztJQUNYLGlCQUFpQixFQUFDLHFDQUFDO0lBQ25CLGNBQWMsRUFBQyxxQ0FBQztJQUNoQixhQUFhLEVBQUMscUNBQUM7SUFDZixZQUFZLEVBQUMscUNBQUMsR21CMWdCWDs7QUFHTCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxpQkFGYSxBQUVaLE9BQU8sQ0FBQztJbkJpZ0JYLFNBQVMsRUFBQyxrQ0FBQztJQUNYLGlCQUFpQixFQUFDLGtDQUFDO0lBQ25CLGNBQWMsRUFBQyxrQ0FBQztJQUNoQixhQUFhLEVBQUMsa0NBQUM7SUFDZixZQUFZLEVBQUMsa0NBQUMsR21CbmdCWDs7QUFHTCxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUkscUJBRmlCLEFBRWhCLE9BQU8sQ0FBQztJbkIwZlgsU0FBUyxFQUFDLHNDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsc0NBQUM7SUFDbkIsY0FBYyxFQUFDLHNDQUFDO0lBQ2hCLGFBQWEsRUFBQyxzQ0FBQztJQUNmLFlBQVksRUFBQyxzQ0FBQyxHbUI1Zlg7O0FBR0wsQUFBQSxxQkFBcUIsQ0FBQztFQUNsQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLHFCQUZpQixBQUVoQixPQUFPLENBQUM7SW5CbWZYLFNBQVMsRUFBQyxzQ0FBQztJQUNYLGlCQUFpQixFQUFDLHNDQUFDO0lBQ25CLGNBQWMsRUFBQyxzQ0FBQztJQUNoQixhQUFhLEVBQUMsc0NBQUM7SUFDZixZQUFZLEVBQUMsc0NBQUMsR21CcmZYOztBQUdMLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxzQkFGa0IsQUFFakIsT0FBTyxDQUFDO0luQjRlWCxTQUFTLEVBQUMsdUNBQUM7SUFDWCxpQkFBaUIsRUFBQyx1Q0FBQztJQUNuQixjQUFjLEVBQUMsdUNBQUM7SUFDaEIsYUFBYSxFQUFDLHVDQUFDO0lBQ2YsWUFBWSxFQUFDLHVDQUFDLEdtQjllWDs7QUFHTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksbUJBRmUsQUFFZCxPQUFPLENBQUM7SW5CcWVYLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CdmVYOztBQUlMLEFBQUEsY0FBYyxDQUFDO0VBQ1gsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFORCxBQUdJLGNBSFUsQUFHVCxPQUFPLENBQUM7SW5CNGRYLFNBQVMsRUFBQywrQkFBQztJQUNYLGlCQUFpQixFQUFDLCtCQUFDO0lBQ25CLGNBQWMsRUFBQywrQkFBQztJQUNoQixhQUFhLEVBQUMsK0JBQUM7SUFDZixZQUFZLEVBQUMsK0JBQUMsR21COWRYOztBQUdMLEFBQUEsa0JBQWtCLENBQUM7RUFDZixPQUFPLEVBQUUsQ0FBQztFQUNWLGlCQUFpQixFQUFFLGlCQUFpQjtFQUNwQyxTQUFTLEVBQUUsaUJBQWlCO0VBQzVCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksa0JBTGMsQUFLYixPQUFPLENBQUM7SW5Ca2RYLFNBQVMsRUFBQyxtQ0FBQztJQUNYLGlCQUFpQixFQUFDLG1DQUFDO0lBQ25CLGNBQWMsRUFBQyxtQ0FBQztJQUNoQixhQUFhLEVBQUMsbUNBQUM7SUFDZixZQUFZLEVBQUMsbUNBQUMsR21CcGRYOztBQUdMLEFBQUEsa0JBQWtCLENBQUM7RUFDZixPQUFPLEVBQUUsQ0FBQztFQUNWLGlCQUFpQixFQUFFLGlCQUFpQjtFQUNwQyxTQUFTLEVBQUUsaUJBQWlCO0VBQzVCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksa0JBTGMsQUFLYixPQUFPLENBQUM7SW5Cd2NYLFNBQVMsRUFBQyxtQ0FBQztJQUNYLGlCQUFpQixFQUFDLG1DQUFDO0lBQ25CLGNBQWMsRUFBQyxtQ0FBQztJQUNoQixhQUFhLEVBQUMsbUNBQUM7SUFDZixZQUFZLEVBQUMsbUNBQUMsR21CMWNYOztBQUdMLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSxnQkFBZ0I7RUFDbkMsU0FBUyxFQUFFLGdCQUFnQjtFQUMzQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLG1CQUxlLEFBS2QsT0FBTyxDQUFDO0luQjhiWCxTQUFTLEVBQUMsb0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxvQ0FBQztJQUNuQixjQUFjLEVBQUMsb0NBQUM7SUFDaEIsYUFBYSxFQUFDLG9DQUFDO0lBQ2YsWUFBWSxFQUFDLG9DQUFDLEdtQmhjWDs7QUFHTCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSxnQkFBZ0I7RUFDbkMsU0FBUyxFQUFFLGdCQUFnQjtFQUMzQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLGdCQUxZLEFBS1gsT0FBTyxDQUFDO0luQm9iWCxTQUFTLEVBQUMsaUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxpQ0FBQztJQUNuQixjQUFjLEVBQUMsaUNBQUM7SUFDaEIsYUFBYSxFQUFDLGlDQUFDO0lBQ2YsWUFBWSxFQUFDLGlDQUFDLEdtQnRiWDs7QUFHTCxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLGlCQUFpQixFQUFFLDBCQUEwQjtFQUM3QyxTQUFTLEVBQUUsMEJBQTBCO0VBQ3JDLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVTtFQUN4QyxPQUFPLEVBQUUsQ0FBQyxHQUliO0VBUkQsQUFLSSxxQkFMaUIsQUFLaEIsT0FBTyxDQUFDO0luQjBhWCxTQUFTLEVBQUMsc0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxzQ0FBQztJQUNuQixjQUFjLEVBQUMsc0NBQUM7SUFDaEIsYUFBYSxFQUFDLHNDQUFDO0lBQ2YsWUFBWSxFQUFDLHNDQUFDLEdtQjVhWDs7QUFHTCxBQUFBLHNCQUFzQixDQUFDO0VBQ25CLGlCQUFpQixFQUFFLHlCQUF5QjtFQUM1QyxTQUFTLEVBQUUseUJBQXlCO0VBQ3BDLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVTtFQUN4QyxPQUFPLEVBQUUsQ0FBQyxHQUliO0VBUkQsQUFLSSxzQkFMa0IsQUFLakIsT0FBTyxDQUFDO0lBQ0wsU0FBUyxFQUFFLGNBQWMsQ0FBQyxlQUFlLENBQUMsUUFBUSxHQUNyRDs7QUFHTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGlCQUFpQixFQUFFLGtCQUFrQjtFQUNyQyxhQUFhLEVBQUUsa0JBQWtCO0VBQ2pDLFNBQVMsRUFBRSxrQkFBa0I7RUFDN0IsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFURCxBQU1JLG1CQU5lLEFBTWQsT0FBTyxDQUFDO0luQnFaWCxTQUFTLEVBQUMsb0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxvQ0FBQztJQUNuQixjQUFjLEVBQUMsb0NBQUM7SUFDaEIsYUFBYSxFQUFDLG9DQUFDO0lBQ2YsWUFBWSxFQUFDLG9DQUFDLEdtQnZaWDs7QUFHTCxBQUFBLHFCQUFxQixDQUFDO0VBQ2xCLGlCQUFpQixFQUFFLG1CQUFtQjtFQUN0QyxhQUFhLEVBQUUsbUJBQW1CO0VBQ2xDLFNBQVMsRUFBRSxtQkFBbUI7RUFDOUIsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFURCxBQU1JLHFCQU5pQixBQU1oQixPQUFPLENBQUM7SW5CMFlYLFNBQVMsRUFBQyxzQ0FBQztJQUNYLGlCQUFpQixFQUFDLHNDQUFDO0lBQ25CLGNBQWMsRUFBQyxzQ0FBQztJQUNoQixhQUFhLEVBQUMsc0NBQUM7SUFDZixZQUFZLEVBQUMsc0NBQUMsR21CNVlYOztBQUdMLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSw0QkFBNEI7RUFDL0MsU0FBUyxFQUFFLDRCQUE0QjtFQUN2QyxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLHFCQUxpQixBQUtoQixPQUFPLENBQUM7SW5CZ1lYLFNBQVMsRUFBQyxzQ0FBQztJQUNYLGlCQUFpQixFQUFDLHNDQUFDO0lBQ25CLGNBQWMsRUFBQyxzQ0FBQztJQUNoQixhQUFhLEVBQUMsc0NBQUM7SUFDZixZQUFZLEVBQUMsc0NBQUMsR21CbFlYOztBQUdMLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSwyQkFBMkI7RUFDOUMsU0FBUyxFQUFFLDJCQUEyQjtFQUN0QyxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLHNCQUxrQixBQUtqQixPQUFPLENBQUM7SW5Cc1hYLFNBQVMsRUFBQyx1Q0FBQztJQUNYLGlCQUFpQixFQUFDLHVDQUFDO0lBQ25CLGNBQWMsRUFBQyx1Q0FBQztJQUNoQixhQUFhLEVBQUMsdUNBQUM7SUFDZixZQUFZLEVBQUMsdUNBQUMsR21CeFhYOztBQUdMLEFBQUEsd0JBQXdCLENBQUM7RUFDckIsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSwyQkFBMkI7RUFDOUMsU0FBUyxFQUFFLDJCQUEyQjtFQUN0QyxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLHdCQUxvQixBQUtuQixPQUFPLENBQUM7SW5CNFdYLFNBQVMsRUFBQyx5Q0FBQztJQUNYLGlCQUFpQixFQUFDLHlDQUFDO0lBQ25CLGNBQWMsRUFBQyx5Q0FBQztJQUNoQixhQUFhLEVBQUMseUNBQUM7SUFDZixZQUFZLEVBQUMseUNBQUMsR21COVdYOztBQUdMLEFBQUEseUJBQXlCLENBQUM7RUFDdEIsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSwwQkFBMEI7RUFDN0MsU0FBUyxFQUFFLDBCQUEwQjtFQUNyQyxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLHlCQUxxQixBQUtwQixPQUFPLENBQUM7SW5Ca1dYLFNBQVMsRUFBQywwQ0FBQztJQUNYLGlCQUFpQixFQUFDLDBDQUFDO0lBQ25CLGNBQWMsRUFBQywwQ0FBQztJQUNoQixhQUFhLEVBQUMsMENBQUM7SUFDZixZQUFZLEVBQUMsMENBQUMsR21CcFdYOztBQUdMLEFBQUEsZUFBZSxDQUFDO0VBQ1osZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxlQUZXLEFBRVYsT0FBTyxDQUFDO0luQjJWWCxTQUFTLEVBQUMsZ0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxnQ0FBQztJQUNuQixjQUFjLEVBQUMsZ0NBQUM7SUFDaEIsYUFBYSxFQUFDLGdDQUFDO0lBQ2YsWUFBWSxFQUFDLGdDQUFDLEdtQjdWWDs7QUFHTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksbUJBRmUsQUFFZCxPQUFPLENBQUM7SW5Cb1ZYLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CdFZYOztBQUdMLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxzQkFGa0IsQUFFakIsT0FBTyxDQUFDO0luQjZVWCxTQUFTLEVBQUMsdUNBQUM7SUFDWCxpQkFBaUIsRUFBQyx1Q0FBQztJQUNuQixjQUFjLEVBQUMsdUNBQUM7SUFDaEIsYUFBYSxFQUFDLHVDQUFDO0lBQ2YsWUFBWSxFQUFDLHVDQUFDLEdtQi9VWDs7QUFHTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksbUJBRmUsQUFFZCxPQUFPLENBQUM7SW5Cc1VYLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CeFVYOztBQUdMLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxzQkFGa0IsQUFFakIsT0FBTyxDQUFDO0luQitUWCxTQUFTLEVBQUMsdUNBQUM7SUFDWCxpQkFBaUIsRUFBQyx1Q0FBQztJQUNuQixjQUFjLEVBQUMsdUNBQUM7SUFDaEIsYUFBYSxFQUFDLHVDQUFDO0lBQ2YsWUFBWSxFQUFDLHVDQUFDLEdtQmpVWDs7QUFHTCxBQUFBLG9CQUFvQixDQUFDO0VBQ2pCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksb0JBRmdCLEFBRWYsT0FBTyxDQUFDO0luQndUWCxTQUFTLEVBQUMscUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxxQ0FBQztJQUNuQixjQUFjLEVBQUMscUNBQUM7SUFDaEIsYUFBYSxFQUFDLHFDQUFDO0lBQ2YsWUFBWSxFQUFDLHFDQUFDLEdtQjFUWDs7QUFHTCxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksdUJBRm1CLEFBRWxCLE9BQU8sQ0FBQztJbkJpVFgsU0FBUyxFQUFDLHdDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsd0NBQUM7SUFDbkIsY0FBYyxFQUFDLHdDQUFDO0lBQ2hCLGFBQWEsRUFBQyx3Q0FBQztJQUNmLFlBQVksRUFBQyx3Q0FBQyxHbUJuVFg7O0FBR0wsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksaUJBRmEsQUFFWixPQUFPLENBQUM7SW5CMFNYLFNBQVMsRUFBQyxrQ0FBQztJQUNYLGlCQUFpQixFQUFDLGtDQUFDO0lBQ25CLGNBQWMsRUFBQyxrQ0FBQztJQUNoQixhQUFhLEVBQUMsa0NBQUM7SUFDZixZQUFZLEVBQUMsa0NBQUMsR21CNVNYOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxvQkFGZ0IsQUFFZixPQUFPLENBQUM7SW5CbVNYLFNBQVMsRUFBQyxxQ0FBQztJQUNYLGlCQUFpQixFQUFDLHFDQUFDO0lBQ25CLGNBQWMsRUFBQyxxQ0FBQztJQUNoQixhQUFhLEVBQUMscUNBQUM7SUFDZixZQUFZLEVBQUMscUNBQUMsR21CclNYOztBQUdMLEFBQUEsc0JBQXNCLENBQUM7RUFDbkIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxzQkFGa0IsQUFFakIsT0FBTyxDQUFDO0luQjRSWCxTQUFTLEVBQUMsdUNBQUM7SUFDWCxpQkFBaUIsRUFBQyx1Q0FBQztJQUNuQixjQUFjLEVBQUMsdUNBQUM7SUFDaEIsYUFBYSxFQUFDLHVDQUFDO0lBQ2YsWUFBWSxFQUFDLHVDQUFDLEdtQjlSWDs7QUFHTCxBQUFBLHVCQUF1QixDQUFDO0VBQ3BCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksdUJBRm1CLEFBRWxCLE9BQU8sQ0FBQztJbkJxUlgsU0FBUyxFQUFDLHdDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsd0NBQUM7SUFDbkIsY0FBYyxFQUFDLHdDQUFDO0lBQ2hCLGFBQWEsRUFBQyx3Q0FBQztJQUNmLFlBQVksRUFBQyx3Q0FBQyxHbUJ2Ulg7O0FBR0wsQUFBQSwwQkFBMEIsQ0FBQztFQUN2QixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLDBCQUZzQixBQUVyQixPQUFPLENBQUM7SW5COFFYLFNBQVMsRUFBQywyQ0FBQztJQUNYLGlCQUFpQixFQUFDLDJDQUFDO0lBQ25CLGNBQWMsRUFBQywyQ0FBQztJQUNoQixhQUFhLEVBQUMsMkNBQUM7SUFDZixZQUFZLEVBQUMsMkNBQUMsR21CaFJYOztBQUdMLEFBQUEseUJBQXlCLENBQUM7RUFDdEIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSx5QkFGcUIsQUFFcEIsT0FBTyxDQUFDO0luQnVRWCxTQUFTLEVBQUMsMENBQUM7SUFDWCxpQkFBaUIsRUFBQywwQ0FBQztJQUNuQixjQUFjLEVBQUMsMENBQUM7SUFDaEIsYUFBYSxFQUFDLDBDQUFDO0lBQ2YsWUFBWSxFQUFDLDBDQUFDLEdtQnpRWDs7QUFJTCxBQUFBLGNBQWMsQ0FBQztFQUNYLE9BQU8sRUFBRSxDQUFDO0VBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCO0VBQ3pDLFNBQVMsRUFBRSxzQkFBc0I7RUFDakMsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSxjQUxVLEFBS1QsT0FBTyxDQUFDO0luQjRQWCxTQUFTLEVBQUMsK0JBQUM7SUFDWCxpQkFBaUIsRUFBQywrQkFBQztJQUNuQixjQUFjLEVBQUMsK0JBQUM7SUFDaEIsYUFBYSxFQUFDLCtCQUFDO0lBQ2YsWUFBWSxFQUFDLCtCQUFDLEdtQjlQWDs7QUFHTCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSxzQkFBc0IsQ0FBQywwQkFBMEI7RUFDcEUsU0FBUyxFQUFFLHNCQUFzQixDQUFDLDBCQUEwQjtFQUM1RCxpQ0FBaUMsRUFBRSxzQ0FBc0M7RUFDekUseUJBQXlCLEVBQUUsc0NBQXNDO0VBQ2pFLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVZELEFBT0ksa0JBUGMsQUFPYixPQUFPLENBQUM7SW5CZ1BYLFNBQVMsRUFBQyxtQ0FBQztJQUNYLGlCQUFpQixFQUFDLG1DQUFDO0lBQ25CLGNBQWMsRUFBQyxtQ0FBQztJQUNoQixhQUFhLEVBQUMsbUNBQUM7SUFDZixZQUFZLEVBQUMsbUNBQUMsR21CbFBYOztBQUdMLEFBQUEsa0JBQWtCLENBQUM7RUFDZixPQUFPLEVBQUUsQ0FBQztFQUNWLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLDBCQUEwQjtFQUNwRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMsMEJBQTBCO0VBQzVELGlDQUFpQyxFQUFFLHNDQUFzQztFQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7RUFDakUsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBVkQsQUFPSSxrQkFQYyxBQU9iLE9BQU8sQ0FBQztJbkJvT1gsU0FBUyxFQUFDLG1DQUFDO0lBQ1gsaUJBQWlCLEVBQUMsbUNBQUM7SUFDbkIsY0FBYyxFQUFDLG1DQUFDO0lBQ2hCLGFBQWEsRUFBQyxtQ0FBQztJQUNmLFlBQVksRUFBQyxtQ0FBQyxHbUJ0T1g7O0FBR0wsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLGlCQUFpQixFQUFFLHNCQUFzQixDQUFDLHlCQUF5QjtFQUNuRSxTQUFTLEVBQUUsc0JBQXNCLENBQUMseUJBQXlCO0VBQzNELGlDQUFpQyxFQUFFLHNDQUFzQztFQUN6RSx5QkFBeUIsRUFBRSxzQ0FBc0M7RUFDakUsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBVkQsQUFPSSxtQkFQZSxBQU9kLE9BQU8sQ0FBQztJbkJ3TlgsU0FBUyxFQUFDLG9DQUFDO0lBQ1gsaUJBQWlCLEVBQUMsb0NBQUM7SUFDbkIsY0FBYyxFQUFDLG9DQUFDO0lBQ2hCLGFBQWEsRUFBQyxvQ0FBQztJQUNmLFlBQVksRUFBQyxvQ0FBQyxHbUIxTlg7O0FBR0wsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsaUJBQWlCLEVBQUUsc0JBQXNCLENBQUMseUJBQXlCO0VBQ25FLFNBQVMsRUFBRSxzQkFBc0IsQ0FBQyx5QkFBeUI7RUFDM0QsaUNBQWlDLEVBQUUsc0NBQXNDO0VBQ3pFLHlCQUF5QixFQUFFLHNDQUFzQztFQUNqRSxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFWRCxBQU9JLGdCQVBZLEFBT1gsT0FBTyxDQUFDO0luQjRNWCxTQUFTLEVBQUMsaUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxpQ0FBQztJQUNuQixjQUFjLEVBQUMsaUNBQUM7SUFDaEIsYUFBYSxFQUFDLGlDQUFDO0lBQ2YsWUFBWSxFQUFDLGlDQUFDLEdtQjlNWDs7QUFHTCxBQUFBLGVBQWUsQ0FBQztFQUNaLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksZUFGVyxBQUVWLE9BQU8sQ0FBQztJbkJxTVgsU0FBUyxFQUFDLGdDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsZ0NBQUM7SUFDbkIsY0FBYyxFQUFDLGdDQUFDO0lBQ2hCLGFBQWEsRUFBQyxnQ0FBQztJQUNmLFlBQVksRUFBQyxnQ0FBQyxHbUJ2TVg7O0FBR0wsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLG1CQUZlLEFBRWQsT0FBTyxDQUFDO0luQjhMWCxTQUFTLEVBQUMsb0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxvQ0FBQztJQUNuQixjQUFjLEVBQUMsb0NBQUM7SUFDaEIsYUFBYSxFQUFDLG9DQUFDO0lBQ2YsWUFBWSxFQUFDLG9DQUFDLEdtQmhNWDs7QUFHTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksbUJBRmUsQUFFZCxPQUFPLENBQUM7SW5CdUxYLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CekxYOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxvQkFGZ0IsQUFFZixPQUFPLENBQUM7SW5CZ0xYLFNBQVMsRUFBQyxxQ0FBQztJQUNYLGlCQUFpQixFQUFDLHFDQUFDO0lBQ25CLGNBQWMsRUFBQyxxQ0FBQztJQUNoQixhQUFhLEVBQUMscUNBQUM7SUFDZixZQUFZLEVBQUMscUNBQUMsR21CbExYOztBQUdMLEFBQUEsaUJBQWlCLENBQUM7RUFDZCxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLGlCQUZhLEFBRVosT0FBTyxDQUFDO0luQnlLWCxTQUFTLEVBQUMsa0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxrQ0FBQztJQUNuQixjQUFjLEVBQUMsa0NBQUM7SUFDaEIsYUFBYSxFQUFDLGtDQUFDO0lBQ2YsWUFBWSxFQUFDLGtDQUFDLEdtQjNLWDs7QUFJTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGlCQUFpQixFQUFFLHdCQUF3QjtFQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBQ25DLFVBQVUsRUFBRSxPQUFPO0VBQ25CLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksbUJBTGUsQUFLZCxPQUFPLENBQUM7SW5COEpYLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CaEtYOztBQUdMLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsaUJBQWlCLEVBQUUsd0JBQXdCO0VBQzNDLFNBQVMsRUFBRSx3QkFBd0I7RUFDbkMsVUFBVSxFQUFFLE9BQU87RUFDbkIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSxtQkFMZSxBQUtkLE9BQU8sQ0FBQztJbkJvSlgsU0FBUyxFQUFDLG9DQUFDO0lBQ1gsaUJBQWlCLEVBQUMsb0NBQUM7SUFDbkIsY0FBYyxFQUFDLG9DQUFDO0lBQ2hCLGFBQWEsRUFBQyxvQ0FBQztJQUNmLFlBQVksRUFBQyxvQ0FBQyxHbUJ0Slg7O0FBR0wsQUFBQSxvQkFBb0IsQ0FBQztFQUNqQixpQkFBaUIsRUFBRSx1QkFBdUI7RUFDMUMsU0FBUyxFQUFFLHVCQUF1QjtFQUNsQyxVQUFVLEVBQUUsT0FBTztFQUNuQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLG9CQUxnQixBQUtmLE9BQU8sQ0FBQztJbkIwSVgsU0FBUyxFQUFDLHFDQUFDO0lBQ1gsaUJBQWlCLEVBQUMscUNBQUM7SUFDbkIsY0FBYyxFQUFDLHFDQUFDO0lBQ2hCLGFBQWEsRUFBQyxxQ0FBQztJQUNmLFlBQVksRUFBQyxxQ0FBQyxHbUI1SVg7O0FBR0wsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLGlCQUFpQixFQUFFLHVCQUF1QjtFQUMxQyxTQUFTLEVBQUUsdUJBQXVCO0VBQ2xDLFVBQVUsRUFBRSxPQUFPO0VBQ25CLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksaUJBTGEsQUFLWixPQUFPLENBQUM7SW5CZ0lYLFNBQVMsRUFBQyxrQ0FBQztJQUNYLGlCQUFpQixFQUFDLGtDQUFDO0lBQ25CLGNBQWMsRUFBQyxrQ0FBQztJQUNoQixhQUFhLEVBQUMsa0NBQUM7SUFDZixZQUFZLEVBQUMsa0NBQUMsR21CbElYOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxvQkFGZ0IsQUFFZixPQUFPLENBQUM7SW5CeUhYLFNBQVMsRUFBQyxxQ0FBQztJQUNYLGlCQUFpQixFQUFDLHFDQUFDO0lBQ25CLGNBQWMsRUFBQyxxQ0FBQztJQUNoQixhQUFhLEVBQUMscUNBQUM7SUFDZixZQUFZLEVBQUMscUNBQUMsR21CM0hYOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxvQkFGZ0IsQUFFZixPQUFPLENBQUM7SW5Ca0hYLFNBQVMsRUFBQyxxQ0FBQztJQUNYLGlCQUFpQixFQUFDLHFDQUFDO0lBQ25CLGNBQWMsRUFBQyxxQ0FBQztJQUNoQixhQUFhLEVBQUMscUNBQUM7SUFDZixZQUFZLEVBQUMscUNBQUMsR21CcEhYOztBQUdMLEFBQUEscUJBQXFCLENBQUM7RUFDbEIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxxQkFGaUIsQUFFaEIsT0FBTyxDQUFDO0luQjJHWCxTQUFTLEVBQUMsc0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxzQ0FBQztJQUNuQixjQUFjLEVBQUMsc0NBQUM7SUFDaEIsYUFBYSxFQUFDLHNDQUFDO0lBQ2YsWUFBWSxFQUFDLHNDQUFDLEdtQjdHWDs7QUFHTCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxrQkFGYyxBQUViLE9BQU8sQ0FBQztJbkJvR1gsU0FBUyxFQUFDLG1DQUFDO0lBQ1gsaUJBQWlCLEVBQUMsbUNBQUM7SUFDbkIsY0FBYyxFQUFDLG1DQUFDO0lBQ2hCLGFBQWEsRUFBQyxtQ0FBQztJQUNmLFlBQVksRUFBQyxtQ0FBQyxHbUJ0R1g7O0FBSUwsQUFBQSxhQUFhLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLGFBRlMsQUFFUixPQUFPLENBQUM7SW5CNEZYLFNBQVMsRUFBQyw4QkFBQztJQUNYLGlCQUFpQixFQUFDLDhCQUFDO0lBQ25CLGNBQWMsRUFBQyw4QkFBQztJQUNoQixhQUFhLEVBQUMsOEJBQUM7SUFDZixZQUFZLEVBQUMsOEJBQUMsR21COUZYOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsT0FBTyxFQUFFLENBQUM7RUFDVixpQkFBaUIsRUFBRSxVQUFVLENBQUMsYUFBYTtFQUMzQyxTQUFTLEVBQUUsVUFBVSxDQUFDLGFBQWE7RUFDbkMsd0JBQXdCLEVBQUUsYUFBYTtFQUN2QyxnQkFBZ0IsRUFBRSxhQUFhO0VBQy9CLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVZELEFBT0ksb0JBUGdCLEFBT2YsT0FBTyxDQUFDO0luQmdGWCxTQUFTLEVBQUMscUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxxQ0FBQztJQUNuQixjQUFjLEVBQUMscUNBQUM7SUFDaEIsYUFBYSxFQUFDLHFDQUFDO0lBQ2YsWUFBWSxFQUFDLHFDQUFDLEdtQmxGWDs7QUFHTCxBQUFBLGNBQWMsQ0FBQztFQUNYLE9BQU8sRUFBRSxDQUFDO0VBQ1YsaUJBQWlCLEVBQUUsd0JBQXdCLENBQUMsMEJBQTBCO0VBQ3RFLFNBQVMsRUFBRSx3QkFBd0IsQ0FBQywwQkFBMEI7RUFDOUQsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSxjQUxVLEFBS1QsT0FBTyxDQUFDO0luQnNFWCxTQUFTLEVBQUMsK0JBQUM7SUFDWCxpQkFBaUIsRUFBQywrQkFBQztJQUNuQixjQUFjLEVBQUMsK0JBQUM7SUFDaEIsYUFBYSxFQUFDLCtCQUFDO0lBQ2YsWUFBWSxFQUFDLCtCQUFDLEdtQnhFWDs7QUFHTCxBQUFBLGVBQWUsQ0FBQztFQUNaLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksZUFGVyxBQUVWLE9BQU8sQ0FBQztJbkIrRFgsU0FBUyxFQUFDLGdDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsZ0NBQUM7SUFDbkIsY0FBYyxFQUFDLGdDQUFDO0lBQ2hCLGFBQWEsRUFBQyxnQ0FBQztJQUNmLFlBQVksRUFBQyxnQ0FBQyxHbUJqRVg7O0FBSUwsQUFBQSx5QkFBeUIsQ0FBQztFQUN0QixpQkFBaUIsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0VBQ3hELFNBQVMsRUFBRSx1QkFBdUIsQ0FBQyxhQUFhO0VBQ2hELE9BQU8sRUFBRSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSx5QkFMcUIsQUFLcEIsT0FBTyxDQUFDO0luQm9EWCxTQUFTLEVBQUMsMENBQUM7SUFDWCxpQkFBaUIsRUFBQywwQ0FBQztJQUNuQixjQUFjLEVBQUMsMENBQUM7SUFDaEIsYUFBYSxFQUFDLDBDQUFDO0lBQ2YsWUFBWSxFQUFDLDBDQUFDLEdtQnREWDs7QUFHTCxBQUFBLHdCQUF3QixDQUFDO0VBQ3JCLGlCQUFpQixFQUFFLHdCQUF3QixDQUFDLFlBQVk7RUFDeEQsU0FBUyxFQUFFLHdCQUF3QixDQUFDLFlBQVk7RUFDaEQsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLHdCQUxvQixBQUtuQixPQUFPLENBQUM7SW5CMENYLFNBQVMsRUFBQyx5Q0FBQztJQUNYLGlCQUFpQixFQUFDLHlDQUFDO0lBQ25CLGNBQWMsRUFBQyx5Q0FBQztJQUNoQixhQUFhLEVBQUMseUNBQUM7SUFDZixZQUFZLEVBQUMseUNBQUMsR21CNUNYOztBQUdMLEFBQUEsMEJBQTBCLENBQUM7RUFDdkIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSwwQkFGc0IsQUFFckIsT0FBTyxDQUFDO0luQm1DWCxTQUFTLEVBQUMsMkNBQUM7SUFDWCxpQkFBaUIsRUFBQywyQ0FBQztJQUNuQixjQUFjLEVBQUMsMkNBQUM7SUFDaEIsYUFBYSxFQUFDLDJDQUFDO0lBQ2YsWUFBWSxFQUFDLDJDQUFDLEdtQnJDWDs7QUFHTCxBQUFBLHlCQUF5QixDQUFDO0VBQ3RCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUkseUJBRnFCLEFBRXBCLE9BQU8sQ0FBQztJbkI0QlgsU0FBUyxFQUFDLDBDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsMENBQUM7SUFDbkIsY0FBYyxFQUFDLDBDQUFDO0lBQ2hCLGFBQWEsRUFBQywwQ0FBQztJQUNmLFlBQVksRUFBQywwQ0FBQyxHbUI5Qlg7O0FBSUwsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLGlCQUFpQixFQUFFLDBCQUEwQjtFQUM3QyxTQUFTLEVBQUUsMEJBQTBCO0VBQ3JDLE9BQU8sRUFBRSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSxnQkFMWSxBQUtYLE9BQU8sQ0FBQztJbkJpQlgsU0FBUyxFQUFDLGlDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsaUNBQUM7SUFDbkIsY0FBYyxFQUFDLGlDQUFDO0lBQ2hCLGFBQWEsRUFBQyxpQ0FBQztJQUNmLFlBQVksRUFBQyxpQ0FBQyxHbUJuQlg7O0FBR0wsQUFBQSx3QkFBd0IsQ0FBQztFQUNyQixpQkFBaUIsRUFBRSx5QkFBeUI7RUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUNwQyxPQUFPLEVBQUUsQ0FBQztFQUNWLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksd0JBTG9CLEFBS25CLE9BQU8sQ0FBQztJbkJPWCxTQUFTLEVBQUMseUNBQUM7SUFDWCxpQkFBaUIsRUFBQyx5Q0FBQztJQUNuQixjQUFjLEVBQUMseUNBQUM7SUFDaEIsYUFBYSxFQUFDLHlDQUFDO0lBQ2YsWUFBWSxFQUFDLHlDQUFDLEdtQlRYOztBQUdMLEFBQUEseUJBQXlCLENBQUM7RUFDdEIsaUJBQWlCLEVBQUUsd0JBQXdCO0VBQzNDLFNBQVMsRUFBRSx3QkFBd0I7RUFDbkMsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLHlCQUxxQixBQUtwQixPQUFPLENBQUM7SW5CSFgsU0FBUyxFQUFDLDBDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsMENBQUM7SUFDbkIsY0FBYyxFQUFDLDBDQUFDO0lBQ2hCLGFBQWEsRUFBQywwQ0FBQztJQUNmLFlBQVksRUFBQywwQ0FBQyxHbUJDWDs7QUFHTCxBQUFBLHNCQUFzQixDQUFDO0VBQ25CLGlCQUFpQixFQUFFLHdCQUF3QjtFQUMzQyxTQUFTLEVBQUUsd0JBQXdCO0VBQ25DLE9BQU8sRUFBRSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSxzQkFMa0IsQUFLakIsT0FBTyxDQUFDO0luQmJYLFNBQVMsRUFBQyx1Q0FBQztJQUNYLGlCQUFpQixFQUFDLHVDQUFDO0lBQ25CLGNBQWMsRUFBQyx1Q0FBQztJQUNoQixhQUFhLEVBQUMsdUNBQUM7SUFDZixZQUFZLEVBQUMsdUNBQUMsR21CV1g7O0FBR0wsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixpQkFBaUIsRUFBRSx5QkFBeUI7RUFDNUMsU0FBUyxFQUFFLHlCQUF5QjtFQUNwQyxPQUFPLEVBQUUsQ0FBQztFQUNWLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksdUJBTG1CLEFBS2xCLE9BQU8sQ0FBQztJbkJ2QlgsU0FBUyxFQUFDLHdDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsd0NBQUM7SUFDbkIsY0FBYyxFQUFDLHdDQUFDO0lBQ2hCLGFBQWEsRUFBQyx3Q0FBQztJQUNmLFlBQVksRUFBQyx3Q0FBQyxHbUJxQlg7O0FBR0wsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksaUJBRmEsQUFFWixPQUFPLENBQUM7SW5COUJYLFNBQVMsRUFBQyxrQ0FBQztJQUNYLGlCQUFpQixFQUFDLGtDQUFDO0lBQ25CLGNBQWMsRUFBQyxrQ0FBQztJQUNoQixhQUFhLEVBQUMsa0NBQUM7SUFDZixZQUFZLEVBQUMsa0NBQUMsR21CNEJYOztBQUdMLEFBQUEseUJBQXlCLENBQUM7RUFDdEIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSx5QkFGcUIsQUFFcEIsT0FBTyxDQUFDO0luQnJDWCxTQUFTLEVBQUMsMENBQUM7SUFDWCxpQkFBaUIsRUFBQywwQ0FBQztJQUNuQixjQUFjLEVBQUMsMENBQUM7SUFDaEIsYUFBYSxFQUFDLDBDQUFDO0lBQ2YsWUFBWSxFQUFDLDBDQUFDLEdtQm1DWDs7QUFHTCxBQUFBLDBCQUEwQixDQUFDO0VBQ3ZCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksMEJBRnNCLEFBRXJCLE9BQU8sQ0FBQztJbkI1Q1gsU0FBUyxFQUFDLDJDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsMkNBQUM7SUFDbkIsY0FBYyxFQUFDLDJDQUFDO0lBQ2hCLGFBQWEsRUFBQywyQ0FBQztJQUNmLFlBQVksRUFBQywyQ0FBQyxHbUIwQ1g7O0FBR0wsQUFBQSx1QkFBdUIsQ0FBQztFQUNwQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLHVCQUZtQixBQUVsQixPQUFPLENBQUM7SW5CbkRYLFNBQVMsRUFBQyx3Q0FBQztJQUNYLGlCQUFpQixFQUFDLHdDQUFDO0lBQ25CLGNBQWMsRUFBQyx3Q0FBQztJQUNoQixhQUFhLEVBQUMsd0NBQUM7SUFDZixZQUFZLEVBQUMsd0NBQUMsR21CaURYOztBQUdMLEFBQUEsd0JBQXdCLENBQUM7RUFDckIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSx3QkFGb0IsQUFFbkIsT0FBTyxDQUFDO0luQjFEWCxTQUFTLEVBQUMseUNBQUM7SUFDWCxpQkFBaUIsRUFBQyx5Q0FBQztJQUNuQixjQUFjLEVBQUMseUNBQUM7SUFDaEIsYUFBYSxFQUFDLHlDQUFDO0lBQ2YsWUFBWSxFQUFDLHlDQUFDLEdtQndEWDs7QUFJTCxBQUFBLFlBQVksQ0FBQztFQUNULGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksWUFGUSxBQUVQLE9BQU8sQ0FBQztJbkJsRVgsU0FBUyxFQUFDLDZCQUFDO0lBQ1gsaUJBQWlCLEVBQUMsNkJBQUM7SUFDbkIsY0FBYyxFQUFDLDZCQUFDO0lBQ2hCLGFBQWEsRUFBQyw2QkFBQztJQUNmLFlBQVksRUFBQyw2QkFBQyxHbUJnRVg7O0FBR0wsQUFBQSxlQUFlLENBQUM7RUFDWixpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7RUFDOUQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLHdCQUF3QjtFQUN0RCxpQ0FBaUMsRUFBRSxPQUFPO0VBQzFDLHlCQUF5QixFQUFFLE9BQU87RUFDbEMsT0FBTyxFQUFFLENBQUM7RUFDVixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFWRCxBQU9JLGVBUFcsQUFPVixPQUFPLENBQUM7SW5COUVYLFNBQVMsRUFBQyxnQ0FBQztJQUNYLGlCQUFpQixFQUFDLGdDQUFDO0lBQ25CLGNBQWMsRUFBQyxnQ0FBQztJQUNoQixhQUFhLEVBQUMsZ0NBQUM7SUFDZixZQUFZLEVBQUMsZ0NBQUMsR21CNEVYOztBQUdMLEFBQUEsZUFBZSxDQUFDO0VBQ1osaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsd0JBQXdCO0VBQzlELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyx3QkFBd0I7RUFDdEQsaUNBQWlDLEVBQUUsT0FBTztFQUMxQyx5QkFBeUIsRUFBRSxPQUFPO0VBQ2xDLE9BQU8sRUFBRSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBVkQsQUFPSSxlQVBXLEFBT1YsT0FBTyxDQUFDO0luQjFGWCxTQUFTLEVBQUMsZ0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxnQ0FBQztJQUNuQixjQUFjLEVBQUMsZ0NBQUM7SUFDaEIsYUFBYSxFQUFDLGdDQUFDO0lBQ2YsWUFBWSxFQUFDLGdDQUFDLEdtQndGWDs7QUFHTCxBQUFBLGdCQUFnQixDQUFDO0VBQ2IsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxnQkFGWSxBQUVYLE9BQU8sQ0FBQztJbkJqR1gsU0FBUyxFQUFDLGlDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsaUNBQUM7SUFDbkIsY0FBYyxFQUFDLGlDQUFDO0lBQ2hCLGFBQWEsRUFBQyxpQ0FBQztJQUNmLFlBQVksRUFBQyxpQ0FBQyxHbUIrRlg7O0FBR0wsQUFBQSxnQkFBZ0IsQ0FBQztFQUNiLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksZ0JBRlksQUFFWCxPQUFPLENBQUM7SW5CeEdYLFNBQVMsRUFBQyxpQ0FBQztJQUNYLGlCQUFpQixFQUFDLGlDQUFDO0lBQ25CLGNBQWMsRUFBQyxpQ0FBQztJQUNoQixhQUFhLEVBQUMsaUNBQUM7SUFDZixZQUFZLEVBQUMsaUNBQUMsR21Cc0dYOztBQUlMLEFBQUEsYUFBYSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxhQUZTLEFBRVIsT0FBTyxDQUFDO0luQmhIWCxTQUFTLEVBQUMsOEJBQUM7SUFDWCxpQkFBaUIsRUFBQyw4QkFBQztJQUNuQixjQUFjLEVBQUMsOEJBQUM7SUFDaEIsYUFBYSxFQUFDLDhCQUFDO0lBQ2YsWUFBWSxFQUFDLDhCQUFDLEdtQjhHWDs7QUFHTCxBQUFBLGFBQWEsQ0FBQztFQUNWLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksYUFGUyxBQUVSLE9BQU8sQ0FBQztJbkJ2SFgsU0FBUyxFQUFDLDhCQUFDO0lBQ1gsaUJBQWlCLEVBQUMsOEJBQUM7SUFDbkIsY0FBYyxFQUFDLDhCQUFDO0lBQ2hCLGFBQWEsRUFBQyw4QkFBQztJQUNmLFlBQVksRUFBQyw4QkFBQyxHbUJxSFg7O0FBR0wsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksa0JBRmMsQUFFYixPQUFPLENBQUM7SW5COUhYLFNBQVMsRUFBQyxtQ0FBQztJQUNYLGlCQUFpQixFQUFDLG1DQUFDO0lBQ25CLGNBQWMsRUFBQyxtQ0FBQztJQUNoQixhQUFhLEVBQUMsbUNBQUM7SUFDZixZQUFZLEVBQUMsbUNBQUMsR21CNEhYOztBQUdMLEFBQUEsY0FBYyxDQUFDO0VBQ1gsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxjQUZVLEFBRVQsT0FBTyxDQUFDO0luQnJJWCxTQUFTLEVBQUMsK0JBQUM7SUFDWCxpQkFBaUIsRUFBQywrQkFBQztJQUNuQixjQUFjLEVBQUMsK0JBQUM7SUFDaEIsYUFBYSxFQUFDLCtCQUFDO0lBQ2YsWUFBWSxFQUFDLCtCQUFDLEdtQm1JWDs7QUFHTCxBQUFBLGNBQWMsQ0FBQztFQUNYLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksY0FGVSxBQUVULE9BQU8sQ0FBQztJbkI1SVgsU0FBUyxFQUFDLCtCQUFDO0lBQ1gsaUJBQWlCLEVBQUMsK0JBQUM7SUFDbkIsY0FBYyxFQUFDLCtCQUFDO0lBQ2hCLGFBQWEsRUFBQywrQkFBQztJQUNmLFlBQVksRUFBQywrQkFBQyxHbUIwSVg7O0FBR0wsQUFBQSxpQkFBaUIsQ0FBQztFQUNkLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksaUJBRmEsQUFFWixPQUFPLENBQUM7SW5CbkpYLFNBQVMsRUFBQyxrQ0FBQztJQUNYLGlCQUFpQixFQUFDLGtDQUFDO0lBQ25CLGNBQWMsRUFBQyxrQ0FBQztJQUNoQixhQUFhLEVBQUMsa0NBQUM7SUFDZixZQUFZLEVBQUMsa0NBQUMsR21CaUpYOztBQUdMLEFBQUEsYUFBYSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxhQUZTLEFBRVIsT0FBTyxDQUFDO0luQjFKWCxTQUFTLEVBQUMsOEJBQUM7SUFDWCxpQkFBaUIsRUFBQyw4QkFBQztJQUNuQixjQUFjLEVBQUMsOEJBQUM7SUFDaEIsYUFBYSxFQUFDLDhCQUFDO0lBQ2YsWUFBWSxFQUFDLDhCQUFDLEdtQndKWDs7QUFHTCxBQUFBLFlBQVksQ0FBQztFQUNULGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksWUFGUSxBQUVQLE9BQU8sQ0FBQztJbkJqS1gsU0FBUyxFQUFDLDZCQUFDO0lBQ1gsaUJBQWlCLEVBQUMsNkJBQUM7SUFDbkIsY0FBYyxFQUFDLDZCQUFDO0lBQ2hCLGFBQWEsRUFBQyw2QkFBQztJQUNmLFlBQVksRUFBQyw2QkFBQyxHbUIrSlg7O0FBR0wsQUFBQSxjQUFjLENBQUM7RUFDWCxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLGNBRlUsQUFFVCxPQUFPLENBQUM7SW5CeEtYLFNBQVMsRUFBQywrQkFBQztJQUNYLGlCQUFpQixFQUFDLCtCQUFDO0lBQ25CLGNBQWMsRUFBQywrQkFBQztJQUNoQixhQUFhLEVBQUMsK0JBQUM7SUFDZixZQUFZLEVBQUMsK0JBQUMsR21Cc0tYOztBQUdMLEFBQUEsYUFBYSxDQUFDO0VBQ1YsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxhQUZTLEFBRVIsT0FBTyxDQUFDO0luQi9LWCxTQUFTLEVBQUMsOEJBQUM7SUFDWCxpQkFBaUIsRUFBQyw4QkFBQztJQUNuQixjQUFjLEVBQUMsOEJBQUM7SUFDaEIsYUFBYSxFQUFDLDhCQUFDO0lBQ2YsWUFBWSxFQUFDLDhCQUFDLEdtQjZLWDs7QUFHTCxBQUFBLGlCQUFpQixDQUFDO0VBQ2QsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxpQkFGYSxBQUVaLE9BQU8sQ0FBQztJbkJ0TFgsU0FBUyxFQUFDLGtDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsa0NBQUM7SUFDbkIsY0FBYyxFQUFDLGtDQUFDO0lBQ2hCLGFBQWEsRUFBQyxrQ0FBQztJQUNmLFlBQVksRUFBQyxrQ0FBQyxHbUJvTFg7O0FBSUwsQUFBQSxrQkFBa0IsQ0FBQztFQUNmLGlCQUFpQixFQUFFLG1CQUFtQixDQUFDLFVBQVU7RUFDakQsU0FBUyxFQUFFLG1CQUFtQixDQUFDLFVBQVU7RUFDekMsT0FBTyxFQUFFLEdBQUc7RUFDWixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFSRCxBQUtJLGtCQUxjLEFBS2IsT0FBTyxDQUFDO0luQmpNWCxTQUFTLEVBQUMsbUNBQUM7SUFDWCxpQkFBaUIsRUFBQyxtQ0FBQztJQUNuQixjQUFjLEVBQUMsbUNBQUM7SUFDaEIsYUFBYSxFQUFDLG1DQUFDO0lBQ2YsWUFBWSxFQUFDLG1DQUFDLEdtQitMWDs7QUFHTCxBQUFBLGtCQUFrQixDQUFDO0VBQ2YsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtFQUNqRCxTQUFTLEVBQUUsbUJBQW1CLENBQUMsVUFBVTtFQUN6QyxPQUFPLEVBQUUsR0FBRztFQUNaLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksa0JBTGMsQUFLYixPQUFPLENBQUM7SW5CM01YLFNBQVMsRUFBQyxtQ0FBQztJQUNYLGlCQUFpQixFQUFDLG1DQUFDO0lBQ25CLGNBQWMsRUFBQyxtQ0FBQztJQUNoQixhQUFhLEVBQUMsbUNBQUM7SUFDZixZQUFZLEVBQUMsbUNBQUMsR21CeU1YOztBQUdMLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsaUJBQWlCLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtFQUNoRCxTQUFTLEVBQUUsa0JBQWtCLENBQUMsVUFBVTtFQUN4QyxPQUFPLEVBQUUsR0FBRztFQUNaLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQVJELEFBS0ksbUJBTGUsQUFLZCxPQUFPLENBQUM7SW5Cck5YLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CbU5YOztBQUdMLEFBQUEsZ0JBQWdCLENBQUM7RUFDYixpQkFBaUIsRUFBRSxrQkFBa0IsQ0FBQyxVQUFVO0VBQ2hELFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxVQUFVO0VBQ3hDLE9BQU8sRUFBRSxHQUFHO0VBQ1osZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBUkQsQUFLSSxnQkFMWSxBQUtYLE9BQU8sQ0FBQztJbkIvTlgsU0FBUyxFQUFDLGlDQUFDO0lBQ1gsaUJBQWlCLEVBQUMsaUNBQUM7SUFDbkIsY0FBYyxFQUFDLGlDQUFDO0lBQ2hCLGFBQWEsRUFBQyxpQ0FBQztJQUNmLFlBQVksRUFBQyxpQ0FBQyxHbUI2Tlg7O0FBR0wsQUFBQSxtQkFBbUIsQ0FBQztFQUNoQixlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLG1CQUZlLEFBRWQsT0FBTyxDQUFDO0luQnRPWCxTQUFTLEVBQUMsb0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxvQ0FBQztJQUNuQixjQUFjLEVBQUMsb0NBQUM7SUFDaEIsYUFBYSxFQUFDLG9DQUFDO0lBQ2YsWUFBWSxFQUFDLG9DQUFDLEdtQm9PWDs7QUFHTCxBQUFBLG1CQUFtQixDQUFDO0VBQ2hCLGVBQWUsRUFBRSxZQUFZLENBQUMsVUFBVSxHQUkzQztFQUxELEFBRUksbUJBRmUsQUFFZCxPQUFPLENBQUM7SW5CN09YLFNBQVMsRUFBQyxvQ0FBQztJQUNYLGlCQUFpQixFQUFDLG9DQUFDO0lBQ25CLGNBQWMsRUFBQyxvQ0FBQztJQUNoQixhQUFhLEVBQUMsb0NBQUM7SUFDZixZQUFZLEVBQUMsb0NBQUMsR21CMk9YOztBQUdMLEFBQUEsb0JBQW9CLENBQUM7RUFDakIsZUFBZSxFQUFFLFlBQVksQ0FBQyxVQUFVLEdBSTNDO0VBTEQsQUFFSSxvQkFGZ0IsQUFFZixPQUFPLENBQUM7SW5CcFBYLFNBQVMsRUFBQyxxQ0FBQztJQUNYLGlCQUFpQixFQUFDLHFDQUFDO0lBQ25CLGNBQWMsRUFBQyxxQ0FBQztJQUNoQixhQUFhLEVBQUMscUNBQUM7SUFDZixZQUFZLEVBQUMscUNBQUMsR21Ca1BYOztBQUdMLEFBQUEsaUJBQWlCLENBQUM7RUFDZCxlQUFlLEVBQUUsWUFBWSxDQUFDLFVBQVUsR0FJM0M7RUFMRCxBQUVJLGlCQUZhLEFBRVosT0FBTyxDQUFDO0luQjNQWCxTQUFTLEVBQUMsa0NBQUM7SUFDWCxpQkFBaUIsRUFBQyxrQ0FBQztJQUNuQixjQUFjLEVBQUMsa0NBQUM7SUFDaEIsYUFBYSxFQUFDLGtDQUFDO0lBQ2YsWUFBWSxFQUFDLGtDQUFDLEdtQnlQWDs7QUV2ekJMLEFBQUEsZUFBZSxBQUFBLElBQUksQ0FBQztFQUNsQixTQUFTLEVBQUUsTUFBTSxHQUNsQjs7QUFFRCxBQUNFLE9BREssQUFBQSxLQUFLLENBQ1YsSUFBSSxDQUFDO0VBQ0gsYUFBYSxFQUFFLENBQUMsR0FDakI7O0FBR0gsQUFBQSxpQkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsTUFBTSxHQUNqQjs7QUFFRCxBQUFBLGFBQWEsQ0FBQztFQUNaLE1BQU0sRUFBRSxPQUFPO0VBQ2YsUUFBUSxFQUFFLE1BQU0sR0FDakI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNqQixRQUFRLEVBQUUsTUFBTTtFQUNoQixVQUFVLEVBQUUsTUFBTSxHQThCbkI7RUE1QkUsQUFBRCx5QkFBUSxDQUFDO0lBQ1AsUUFBUSxDQUFBLFFBQUM7SUFDVCxVQUFVLEVBQUUsT0FBTztJQUNuQixPQUFPLEVBQUUsQ0FBQztJQUNWLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGFBQWEsRUFBRSxNQUFNO0lBQ3JCLFVBQVUsRUFBRSxnQkFBZ0IsR0FxQjdCO0lBUEUsQUFBRCxnQ0FBUSxDQUFDO01BQ1AsS0FBSyxFQUFFLElBQUk7TUFDWCxVQUFVLEVBQUUsaURBQWlELEdBSTlEOztBQUlMLEFBQUEsZUFBZSxDQUFDO0VBQ2QsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixHQUFHLEVBQUUsTUFBTTtFQUNYLE1BQU0sQ0FBQSxLQUFDLEdBMElSO0VBeElFLEFBQUQsbUJBQUssQ0FBQztJQUNKLEtBQUssRUFBRSxXQUFXO0lBQ2xCLE1BQU0sRUFBRSxXQUFXO0lBQ25CLGFBQWEsRUFBRSxNQUFNO0lBQ3JCLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxLQUFLLEN2QmpEVCxPQUFPO0lFMkVwQixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJcUJqQzdCLE1BQU0sRUFBRSxPQUFPO0lyQnVJakIsVUFBVSxFQUFFLGdCQUFnQjtJQUM1QixrQkFBa0IsRUFBRSxnQkFBZ0I7SUFDcEMsZUFBZSxFQUFFLGdCQUFnQjtJQUNqQyxjQUFjLEVBQUUsZ0JBQWdCO0lBQ2hDLGFBQWEsRUFBRSxnQkFBZ0I7SXFCekk3QixPQUFPLEVBQUUsQ0FBQztJQUNWLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLFNBQVMsRUFBRSxNQUFNO0lBRWpCLEtBQUssRXZCMURNLE9BQU8sR3VCMkZuQjtJQS9DQSxBckJpZEQsbUJxQmpkSyxBckJpZEosT0FBTyxDQUFDO01BQ1AsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFFLEVBQUU7TUFDWCxLQUFLLEVBQUUsQ0FBQztNQUNSLE1BQU0sRUFBRSxJQUFJO01BQ1osR0FBRyxFQUFFLENBQUM7TUFDTixLQUFLLEVBQUUsQ0FBQztNQUNSLFVBQVUsRUZyZ0JGLE9BQU87TUVzZ0JmLFVBQVUsRUFBRSxhQUFhO01BQ3pCLE9BQU8sRUFBRSxDQUFDO01BQ1YsY0FBYyxFQUFFLElBQUksR0FDckI7SXFCNWRBLEFBZUMsbUJBZkcsQUFlRixPQUFPLENBQUM7TUFDUCxVQUFVLEVBQUUsaUVBSVgsR0FDRjtJQXJCRixBQXNCQyxtQkF0QkcsR0FzQkQsQ0FBQyxDQUFDO01BQ0YsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDWDtJQXpCRixBQTJCQyxtQkEzQkcsQUEyQkYsdUJBQXVCLENBQUM7TUFDdkIsZ0JBQWdCLEVBQUUsT0FBTztNQUN6QixPQUFPLEVBQUUsR0FBRztNQUNaLE1BQU0sRUFBRSxPQUFPO01BQ2YsVUFBVSxFQUFFLElBQUksR0FDakI7SXJCK05ILE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSztNcUIvUG5CLEFBc0NHLG1CQXRDQyxBckJnUUYsTUFBTSxBcUIxTkosSUFBSyxDQUFBLHVCQUF1QixFQUFFO1FBQzdCLEtBQUssRUFBRSxnQkFBZ0I7UUFDdkIsWUFBWSxFQUFFLFdBQVcsR0FLMUI7UUE3Q0osQUF5Q0ssbUJBekNELEFyQmdRRixNQUFNLEFxQjFOSixJQUFLLENBQUEsdUJBQXVCLENBRzFCLE9BQU8sQ0FBQztVQUNQLElBQUksRUFBRSxDQUFDO1VBQ1AsS0FBSyxFQUFFLElBQUksR0FDWjtFQWxEVCxBQXdESSxlQXhEVyxBQXVEWixNQUFNLENBQ0wsbUJBQW1CLENBQUM7SUFDbEIsZ0JBQWdCLEVBQUUsV0FBVztJQUM3QixZQUFZLEVBQUUsS0FBSztJQUNuQixLQUFLLEVBQUUsS0FBSyxHQUNiO0VyQmhISCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lxQm9EdEMsQUErRE0sZUEvRFMsQUF1RFosTUFBTSxBQU9KLFlBQVksQ0FDWCxtQkFBbUIsQ0FBQztNQUVoQixnQkFBZ0IsRUFBRSxLQUFLO01BQ3ZCLFlBQVksRXZCekdWLE9BQU87TXVCMEdULEtBQUssRXZCMUdILE9BQU8sR3VCNEdaO0VBckVQLEFBMEVJLGVBMUVXLEFBeUVaLEtBQUssQ0FDSixtQkFBbUIsQ0FBQztJckI2SnRCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsU0FBUyxFQUFFLGdCQUFnQjtJQUMzQixpQkFBaUIsRUFBRSxnQkFBZ0I7SUFDbkMsY0FBYyxFQUFFLGdCQUFnQjtJQUNoQyxZQUFZLEVBQUUsZ0JBQWdCLEdxQmhLM0I7RUE1RUwsQUErRU0sZUEvRVMsQUF5RVosS0FBSyxBQUtILE1BQU0sQ0FDTCxZQUFZLENBQUM7SUFDWCxLQUFLLEVBQUUsaUJBQWlCLEdBTXpCO0lyQjFJTCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01xQm9EdEMsQUErRU0sZUEvRVMsQUF5RVosS0FBSyxBQUtILE1BQU0sQ0FDTCxZQUFZLENBQUM7UUFJVCxLQUFLLEVBQUUsS0FBSztRQUNaLElBQUksRUFBRSwwQkFBMEIsR0FFbkM7RUF0RlAsQUF3Rk0sZUF4RlMsQUF5RVosS0FBSyxBQUtILE1BQU0sQ0FVTCxZQUFZLENBQUM7SUFDWCxJQUFJLEVBQUUsaUJBQWlCLEdBTXhCO0lyQm5KTCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01xQm9EdEMsQUF3Rk0sZUF4RlMsQUF5RVosS0FBSyxBQUtILE1BQU0sQ0FVTCxZQUFZLENBQUM7UUFJVCxJQUFJLEVBQUUsS0FBSztRQUNYLEtBQUssRUFBRSwwQkFBMEIsR0FFcEM7RXJCbkpMLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SXFCb0R0QyxBQW1HVSxlQW5HSyxBQXlFWixLQUFLLEFBS0gsTUFBTSxBQW1CSixZQUFZLENBRVQsWUFBWSxDQUFDO01BQ1gsSUFBSSxFQUFFLDJDQUEyQyxHQUNsRDtJQXJHWCxBQXVHVSxlQXZHSyxBQXlFWixLQUFLLEFBS0gsTUFBTSxBQW1CSixZQUFZLENBTVQsWUFBWSxDQUFDO01BQ1gsS0FBSyxFQUFFLDJDQUEyQyxHQUNuRDtFQXpHWCxBQStHTSxlQS9HUyxBQXlFWixLQUFLLEFBcUNILE1BQU0sQ0FDTCxZQUFZLENBQUM7SUFDWCxJQUFJLEVBQUUsMEJBQTBCLEdBQ2pDO0VBakhQLEFBbUhNLGVBbkhTLEFBeUVaLEtBQUssQUFxQ0gsTUFBTSxDQUtMLFlBQVksQ0FBQztJQUNYLEtBQUssRUFBRSwwQkFBMEIsR0FDbEM7RUFySFAsQUF5SE0sZUF6SFMsQUF5RVosS0FBSyxBQStDSCxLQUFLLENBQ0osWUFBWSxDQUFDO0lBQ1gsSUFBSSxFQUFFLElBQUksR0FDWDtFQTNIUCxBQTZITSxlQTdIUyxBQXlFWixLQUFLLEFBK0NILEtBQUssQ0FLSixZQUFZLENBQUM7SUFDWCxLQUFLLEVBQUUsSUFBSSxHQUNaO0VyQm5MTCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lxQm9EdEMsQUFvSVEsZUFwSU8sQUF5RVosS0FBSyxBQXlESCxZQUFZLENBRVQsWUFBWSxDQUFDO01BQ1gsSUFBSSxFQUFFLDJDQUEyQyxHQUNsRDtJQXRJVCxBQXdJUSxlQXhJTyxBQXlFWixLQUFLLEFBeURILFlBQVksQ0FNVCxZQUFZLENBQUM7TUFDWCxLQUFLLEVBQUUsMkNBQTJDLEdBQ25EOztBQU1ULEFBQUEsOEJBQThCLENBQUM7RUFDN0IsVUFBVSxFdkIvS00sa0JBQWtCO0V1QmdMbEMsTUFBTSxFQUFFLGlCQUFpQixHQUMxQjs7QUFFRCxBQUFBLG1DQUFtQyxDQUFDO0VBQ2xDLGdCQUFnQixFdkI1TEgsT0FBTyxDdUI0TFksVUFBVSxHQUMzQzs7QUM1TUQsQUFBQSxTQUFTLENBQUM7RUFDUixRQUFRLEVBQUUsUUFBUTtFQUNsQixRQUFRLEVBQUUsTUFBTSxHQW1EakI7RUFyREQsQUFLRSxTQUxPLEFBS04sUUFBUSxFQUxYLFNBQVMsQUFNTixPQUFPLENBQUM7SUFDUCxPQUFPLEVBQUUsRUFBRTtJQUNYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLENBQUM7SUFDUixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLEVBQUUsR0FDWjtFQWRILEFBZ0JFLFNBaEJPLENBZ0JQLEdBQUc7RUFoQkwsU0FBUyxDQWlCUCxJQUFJLENBQUM7SUFDSCxPQUFPLEVBQUUsQ0FBQztJQUNWLFVBQVUsRUFBRSxnQkFBZ0I7SUFDNUIsZ0JBQWdCLEVBQUUsSUFBSSxHQUN2QjtFQXJCSCxBQXVCRSxTQXZCTyxBQXVCTixPQUFPLENBQUM7SUFFUCxVQUFVLEVBQUUsaUVBSVgsR0FDRjtFQTlCSCxBQWdDRSxTQWhDTyxBQWdDTixNQUFNLENBQUM7SUFDTixnQkFBZ0IsRUE3QlAsT0FBTztJQThCaEIsZ0JBQWdCLEVBQUUsSUFBSSxHQUN2QjtFQW5DSCxBQXNDSSxTQXRDSyxBQXFDTixVQUFVLENBQ1QsR0FBRztFQXRDUCxTQUFTLEFBcUNOLFVBQVUsQ0FFVCxJQUFJLENBQUM7SUFDSCxPQUFPLEVBQUUsQ0FBQyxHQUNYO0VBekNMLEFBMkNJLFNBM0NLLEFBcUNOLFVBQVUsQUFNUixPQUFPLENBQUM7SUFDUCxVQUFVLEVBQUUsU0FBUztJQUNyQixLQUFLLEVBQUUsQ0FBQyxHQUNUO0VBOUNMLEFBZ0RJLFNBaERLLEFBcUNOLFVBQVUsQUFXUixNQUFNLENBQUM7SUFDTixVQUFVLEVBQUUsU0FBUztJQUNyQixLQUFLLEVBQUUsQ0FBQyxHQUNUOztBQUlMLEFBQUEsZ0JBQWdCLENBQUM7RUFDZixRQUFRLEVBQUUsUUFBUTtFQUNsQixRQUFRLEVBQUUsTUFBTSxHQXVDakI7RUF6Q0QsQUFJRSxnQkFKYyxBQUliLFFBQVEsQ0FBQztJQUNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsS0FBSyxFQUFFLENBQUM7SUFDUixnQkFBZ0IsRXhCakRSLE9BQU87SXdCa0RmLE9BQU8sRUFBRSxDQUFDO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFNBQVMsRUFBRSxZQUFZO0l0QnlIekIsVUFBVSxFc0J4SFksSUFBSSxDQUFFLFFBQVE7SXRCeUhwQyxrQkFBa0IsRXNCekhJLElBQUksQ0FBRSxRQUFRO0l0QjBIcEMsZUFBZSxFc0IxSE8sSUFBSSxDQUFFLFFBQVE7SXRCMkhwQyxjQUFjLEVzQjNIUSxJQUFJLENBQUUsUUFBUTtJdEI0SHBDLGFBQWEsRXNCNUhTLElBQUksQ0FBRSxRQUFRO0l0QjZIcEMsZ0JBQWdCLEVBTjBDLEVBQUU7SUFPNUQsd0JBQXdCLEVBUGtDLEVBQUU7SUFRNUQscUJBQXFCLEVBUnFDLEVBQUU7SUFTNUQsb0JBQW9CLEVBVHNDLEVBQUU7SUFVNUQsbUJBQW1CLEVBVnVDLEVBQUU7SXNCdEgxRCxjQUFjLEVBQUUsSUFBSTtJQUNwQixPQUFPLEVBQUUsQ0FBQyxHQUNYO0VBaEJILEFBa0JFLGdCQWxCYyxBQWtCYixPQUFPLENBQUM7SUFDUCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsRUFBRTtJQUNYLEtBQUssRUFBRSxDQUFDO0lBQ1IsZ0JBQWdCLEV4Qi9EUixPQUFPO0l3QmdFZixPQUFPLEVBQUUsQ0FBQztJQUNWLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixTQUFTLEVBQUUsWUFBWTtJdEIyR3pCLFVBQVUsRXNCMUdZLElBQUksQ0FBRSxRQUFRO0l0QjJHcEMsa0JBQWtCLEVzQjNHSSxJQUFJLENBQUUsUUFBUTtJdEI0R3BDLGVBQWUsRXNCNUdPLElBQUksQ0FBRSxRQUFRO0l0QjZHcEMsY0FBYyxFc0I3R1EsSUFBSSxDQUFFLFFBQVE7SXRCOEdwQyxhQUFhLEVzQjlHUyxJQUFJLENBQUUsUUFBUTtJdEIrR3BDLGdCQUFnQixFQU4wQyxFQUFFO0lBTzVELHdCQUF3QixFQVBrQyxFQUFFO0lBUTVELHFCQUFxQixFQVJxQyxFQUFFO0lBUzVELG9CQUFvQixFQVRzQyxFQUFFO0lBVTVELG1CQUFtQixFQVZ1QyxFQUFFO0lzQnhHMUQsY0FBYyxFQUFFLElBQUk7SUFDcEIsT0FBTyxFQUFFLENBQUMsR0FDWDtFQTlCSCxBQWlDSSxnQkFqQ1ksQUFnQ2IsVUFBVSxBQUNSLE9BQU8sQ0FBQztJQUNQLFNBQVMsRUFBRSxtQkFBbUIsR0FDL0I7RUFuQ0wsQUFxQ0ksZ0JBckNZLEFBZ0NiLFVBQVUsQUFLUixRQUFRLENBQUM7SUFDUixTQUFTLEVBQUUsa0JBQWtCLEdBQzlCOztBQUlMLEFBQUEsZUFBZSxDQUFDO0VBQ2QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsUUFBUSxFQUFFLE1BQU0sR0F3Q2pCO0VBMUNELEFBT0UsZUFQYSxDQU9iLEdBQUcsQ0FBQztJQUNGLFNBQVMsRUFBRSxpQkFBaUI7SUFDNUIsT0FBTyxFQUFFLENBQUM7SXRCaUZaLFVBQVUsRXNCaEZZLElBQUksQ0FBRSxJQUFJO0l0QmlGaEMsa0JBQWtCLEVzQmpGSSxJQUFJLENBQUUsSUFBSTtJdEJrRmhDLGVBQWUsRXNCbEZPLElBQUksQ0FBRSxJQUFJO0l0Qm1GaEMsY0FBYyxFc0JuRlEsSUFBSSxDQUFFLElBQUk7SXRCb0ZoQyxhQUFhLEVzQnBGUyxJQUFJLENBQUUsSUFBSTtJdEJxRmhDLGdCQUFnQixFc0JyRmtCLEVBQUU7SXRCc0ZwQyx3QkFBd0IsRXNCdEZVLEVBQUU7SXRCdUZwQyxxQkFBcUIsRXNCdkZhLEVBQUU7SXRCd0ZwQyxvQkFBb0IsRXNCeEZjLEVBQUU7SXRCeUZwQyxtQkFBbUIsRXNCekZlLEVBQUUsR0FDbkM7RUFYSCxBQWNJLGVBZFcsQUFhWixVQUFVLEFBQ1IsUUFBUSxDQUFDO0lBQ1IsT0FBTyxFQUFFLEVBQUU7SUFDWCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixJQUFJLEVBQUUsQ0FBQztJQUNQLGFBQWEsRUFBRSxLQUFLO0lBQ3BCLGdCQUFnQixFQUFFLE9BQU87SUFDekIsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLDhCQUE4QjtJQUM5RCxlQUFlLEVBQUUsSUFBSSxHQUN0QjtFQTFCTCxBQTRCSSxlQTVCVyxBQWFaLFVBQVUsQ0FlVCxHQUFHLENBQUM7SUFDRixTQUFTLEVBQUUscUJBQXFCO0lBQ2hDLE9BQU8sRUFBRSxDQUFDO0lBQ1YsT0FBTyxFQUFFLEtBQUssR0FDZjtFQWhDTCxBQW9DSSxlQXBDVyxBQW1DWixPQUFPLEFBQUEsVUFBVSxDQUNoQixHQUFHLENBQUM7SUFDRixTQUFTLEVBQUUsYUFBYTtJQUN4QixPQUFPLEVBQUUsQ0FBQztJQUNWLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBSUwsVUFBVSxDQUFWLGlCQUFVO0VBQ1IsRUFBRTtJQUNBLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLGFBQWEsRUFBRSxLQUFLO0VBR3RCLEdBQUc7SUFDRCxHQUFHLEVBQUUsQ0FBQztJQUNOLEtBQUssRUFBRSxDQUFDO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixhQUFhLEVBQUUsS0FBSztFQUd0QixHQUFHO0lBQ0QsR0FBRyxFQUFFLENBQUM7RUFHUixHQUFHO0lBQ0QsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsSUFBSTtJQUNaLGFBQWEsRUFBRSxDQUFDO0VBR2xCLElBQUk7SUFDRixHQUFHLEVBQUUsSUFBSTtJQUNULEtBQUssRUFBRSxDQUFDO0lBQ1IsTUFBTSxFQUFFLElBQUk7SUFDWixhQUFhLEVBQUUsQ0FBQzs7QUFJcEIsVUFBVSxDQUFWLE9BQVU7RUFDUixFQUFFO0lBQ0EsT0FBTyxFQUFFLENBQUM7RUFHWixJQUFJO0lBQ0YsT0FBTyxFQUFFLENBQUM7O0FBSWQsVUFBVSxDQUFWLGNBQVU7RUFDUixFQUFFO0lBQ0EsU0FBUyxFQUFFLHdCQUF3QjtFQUdyQyxJQUFJO0lBQ0YsU0FBUyxFQUFFLG9CQUFvQjs7QUFJbkMsVUFBVSxDQUFWLGVBQVU7RUFDUixFQUFFO0lBQ0EsU0FBUyxFQUFFLG9CQUFvQjtFQUdqQyxJQUFJO0lBQ0YsU0FBUyxFQUFFLHVCQUF1Qjs7QUFJdEMsVUFBVSxDQUFWLGlCQUFVO0VBQ1IsRUFBRTtJQUNBLFNBQVMsRUFBRSx1QkFBdUI7RUFHcEMsSUFBSTtJQUNGLFNBQVMsRUFBRSxvQkFBb0I7O0FBSW5DLFVBQVUsQ0FBVixhQUFVO0VBQ1IsRUFBRTtJQUNBLFNBQVMsRUFBRSx1QkFBdUI7RUFHcEMsSUFBSTtJQUNGLFNBQVMsRUFBRSxvQkFBb0I7O0FBSW5DLFVBQVUsQ0FBVixjQUFVO0VBQ1IsRUFBRTtJQUNBLFNBQVMsRUFBRSxvQkFBb0I7RUFHakMsSUFBSTtJQUNGLFNBQVMsRUFBRSx3QkFBd0I7O0FBSXZDLFVBQVUsQ0FBVixZQUFVO0VBQ1IsRUFBRTtJQUNBLFNBQVMsRUFBRSx3QkFBd0I7RUFHckMsSUFBSTtJQUNGLFNBQVMsRUFBRSxvQkFBb0I7O0FBSW5DLFVBQVUsQ0FBVixpQkFBVTtFQUNSLEVBQUU7SUFDQSxTQUFTLEVBQUUsb0JBQW9CO0VBR2pDLElBQUk7SUFDRixTQUFTLEVBQUUsdUJBQXVCOztBQUl0QyxVQUFVLENBQVYsZ0JBQVU7RUFDUixFQUFFO0lBQ0EsU0FBUyxFQUFFLHNCQUFzQjtFQUduQyxJQUFJO0lBQ0YsU0FBUyxFQUFFLG9CQUFvQjs7QUFJbkMsVUFBVSxDQUFWLFNBQVU7RUFDUixFQUFFO0lBQ0EsS0FBSyxFQUFFLENBQUM7SUFDUixLQUFLLEVBQUUsQ0FBQztFQUdWLEdBQUc7SUFDRCxLQUFLLEVBQUUsSUFBSTtJQUNYLEtBQUssRUFBRSxDQUFDO0VBR1YsSUFBSTtJQUNGLEtBQUssRUFBRSxDQUFDO0lBQ1IsS0FBSyxFQUFFLElBQUk7O0FBR2YsQUFBQSxRQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsTUFBTSxHQUNqQjs7QUMzUkQsQUFBQSxXQUFXLENBQUM7RUFDVixPQUFPLEVBQUUsTUFBTTtFQUNmLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxDQUFDLEdBdURYO0V2QnpEQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0l1QkR0QyxBQUFBLFdBQVcsQ0FBQztNQUtSLE9BQU8sRUFBRSxRQUFRLEdBcURwQjtFQS9DRSxBQUFELGdCQUFNLENBQUM7SXZCa0RQLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0l1QnBEWCxXQUFXLEVBQUUsTUFBTTtJQUNuQixTQUFTLEVBQUUsSUFBSTtJQUNmLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLEdBQUcsRUFBRSxNQUFNLEdBQ1o7RUFFQSxBQUFELGdCQUFNLENBQUM7SUFDTCxTQUFTLEVBQUUsTUFBTTtJQUNqQixPQUFPLEVBQUUsSUFBSTtJQUNiLFdBQVcsRUFBRSxNQUFNO0lBQ25CLEdBQUcsRUFBRSxNQUFNO0lBQ1gsV0FBVyxFQUFFLEdBQUc7SUFDaEIsS0FBSyxFekJYRyxPQUFPLEd5QmdDaEI7SUEzQkEsQUFRRyxnQkFSRSxBQU9ILElBQUssQ0FBQSxZQUFZLENBQ2YsUUFBUSxDQUFDO01BQ1IsT0FBTyxFQUFFLFlBQVk7TUFDckIsT0FBTyxFQUFFLEdBQUc7TUFDWixTQUFTLEVBQUUsTUFBTTtNQUNqQixLQUFLLEV6QmpCRCxPQUFPO015QmtCWCxjQUFjLEVBQUUsTUFBTTtNQUN0QixXQUFXLEVBQUUsR0FBRyxHQUNqQjtJQWZKLEFBa0JDLGdCQWxCSSxBQWtCSCxXQUFXLENBQUM7TUFDWCxLQUFLLEV6QnRCRyxPQUFPO015QnVCZixjQUFjLEVBQUUsSUFBSTtNQUNwQixXQUFXLEVBQUUsR0FBRyxHQUNqQjtFQU9GLEFBQUQsZ0JBQU0sQ0FBQztJQUNMLEtBQUssRUFBRSxPQUFPO0lBQ2QsVUFBVSxFQUFFLGdCQUFnQjtJQUM1QixPQUFPLEVBQUUsV0FBVztJQUNwQixrQkFBa0IsRUFBRSxDQUFDO0lBQ3JCLGtCQUFrQixFQUFFLFFBQVE7SUFDNUIsUUFBUSxFQUFFLE1BQU07SUFDaEIsYUFBYSxFQUFFLFFBQVE7SUFDdkIsVUFBVSxFQUFFLFVBQVUsR0FDdkI7O0FBRUgsQUFDRSxJQURFLENBQ0YsV0FBVyxDQUFDO0VBQ1YsT0FBTyxFQUFFLEtBQUs7RUFDZCxhQUFhLEVBQUUsSUFBSSxHQW9CcEI7RUF2QkgsQUFNUSxJQU5KLENBSUMsZ0JBQUssQUFDSCxJQUFLLENBQUEsWUFBWSxDQUNmLFFBQVEsQ0FBQztJQUNSLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFdBQVcsRUFBRSxvQkFBb0IsR0FDbEM7RUFUVCxBQVlRLElBWkosQ0FJQyxnQkFBSyxBQU9ILE9BQU8sQ0FDTixnQkFBZ0IsQ0FBQztJQUNmLEtBQUssRXpCeERELE9BQU87SXlCeURYLFdBQVcsRUFBRSxHQUFHLEdBQ2pCO0VBZlQsQUFrQkksSUFsQkEsQ0FrQkMsZ0JBQUssQ0FBQztJQUNMLEtBQUssRUFBRSxPQUFPO0lBQ2QsV0FBVyxFQUFFLEdBQUc7SUFDaEIsY0FBYyxFQUFFLElBQUksR0FDckI7O0FDakZMLEFBQUEsSUFBSSxDQUFDO0V4QjBGSCxPQUFPLEVBQUUsWUFBWTtFQUNyQixPQUFPLEVBQUUsU0FBUztFQUNsQixPQUFPLEVBQUUsUUFBUTtFQUNqQixPQUFPLEVBQUUsT0FBTztFQUNoQixPQUFPLEVBQUUsSUFBSTtFQUNiLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLG1CQUFtQixFQUFFLE1BQU07RUFDM0IsZUFBZSxFQUFFLE1BQU07RUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtFd0JqRy9CLEtBQUssRUFBRSxXQUFXO0VBQ2xCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsT0FBTyxFQUFFLFdBQVc7RUFDcEIsYUFBYSxFQUFFLE1BQU07RXhCc0xyQixVQUFVLEV3QnJMVSxJQUFJLENBQUUsSUFBSTtFeEJzTDlCLGtCQUFrQixFd0J0TEUsSUFBSSxDQUFFLElBQUk7RXhCdUw5QixlQUFlLEV3QnZMSyxJQUFJLENBQUUsSUFBSTtFeEJ3TDlCLGNBQWMsRXdCeExNLElBQUksQ0FBRSxJQUFJO0V4QnlMOUIsYUFBYSxFd0J6TE8sSUFBSSxDQUFFLElBQUk7RXhCMEw5QixnQkFBZ0IsRUFOMEMsRUFBRTtFQU81RCx3QkFBd0IsRUFQa0MsRUFBRTtFQVE1RCxxQkFBcUIsRUFScUMsRUFBRTtFQVM1RCxvQkFBb0IsRUFUc0MsRUFBRTtFQVU1RCxtQkFBbUIsRUFWdUMsRUFBRTtFd0JuTDVELFFBQVEsRUFBRSxNQUFNO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBRWxCLFVBQVUsRUFBRSwrREFBK0Q7RUFDM0UsR0FBRyxFQUFFLE1BQU07RUFDWCxLQUFLLEVBQUUsS0FBSztFQUNaLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFdBQVcsRUFBRSxHQUFHLEdBbUVqQjtFQXBGRCxBQWtCRSxJQWxCRSxHQWtCQSxDQUFDLENBQUM7SUFDRixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxHQUNYO0VBckJILEFBd0JFLElBeEJFLENBd0JGLEtBQUssQ0FBQztJQUNKLEtBQUssRUFBRSxNQUFNO0lBQ2IsTUFBTSxFQUFFLE1BQU07SXhCZ0VoQixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxNQUFNO0lBQ3ZCLFdBQVcsRUFBRSxNQUFNO0lBQ25CLG1CQUFtQixFQUFFLE1BQU07SUFDM0IsZUFBZSxFQUFFLE1BQU07SUFDdkIsdUJBQXVCLEVBQUUsTUFBTTtJd0J2RTdCLFdBQVcsRUFBRSxDQUFDLEdBQ2Y7RUE3QkgsQUE4QkUsSUE5QkUsQUE4QkQsT0FBTyxDQUFDO0lBQ1AsTUFBTSxFQUFFLE1BQU0sR0FDZjtFQWhDSCxBQWlDRSxJQWpDRSxBQWlDRCxLQUFLLENBQUM7SUFDTCxLQUFLLEVBQUUsSUFBSSxHQUNaO0VBbkNILEFBb0NFLElBcENFLEFBb0NELE1BQU0sQ0FBQztJQUNOLFVBQVUsRUFBRSxXQUFXO0lBQ3ZCLEtBQUssRTFCeEJHLE9BQU8sRzBCK0JoQjtJeEI2UUQsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLO013QjFUdEIsQXhCMlRJLEl3QjNUQSxBQW9DRCxNQUFNLEF4QnVSSixNQUFNLENBQUM7UXdCblJOLEtBQUssRUFBRSxJQUFJLEd4QnFSWjtJd0I3VEwsQUEwQ0ksSUExQ0EsQUFvQ0QsTUFBTSxBQU1KLE9BQU8sQ0FBQztNQUNQLFVBQVUsRTFCdEJILE9BQU8sRzBCdUJmO0VBNUNMLEFBOENFLElBOUNFLEFBOENELE9BQU8sQ0FBQztJQUNQLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLEtBQUssRTFCakNNLE9BQU87STBCa0NsQixNQUFNLEVBQUUsTUFBTSxDQUFDLEtBQUssQzFCbENULE9BQU8sRzBCc0NuQjtJeEJxUUQsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLO013QjFUdEIsQXhCMlRJLEl3QjNUQSxBQThDRCxPQUFPLEF4QjZRTCxNQUFNLENBQUM7UXdCeFFOLFlBQVksRUFBRSxXQUFXLEd4QjBRMUI7RXdCN1RMLEFBc0RFLElBdERFLEFBc0RELE9BQU8sQ0FBQztJQUNQLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsS0FBSyxFQUFFLENBQUM7SUFDUixNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLENBQUM7SUFDUixVQUFVLEVBQUUsaUVBSVg7SUFDRCxVQUFVLEVBQUUsYUFBYTtJQUN6QixPQUFPLEVBQUUsQ0FBQyxHQUNYO0V4QnNQRCxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUs7SXdCMVR0QixBQXVFSSxJQXZFQSxBeEIyVEMsTUFBTSxBd0JwUE4sT0FBTyxDQUFDO01BQ1AsSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsSUFBSSxHQUNaO0VBRUYsQUFBRCxZQUFTLENBQUM7SUFDUixNQUFNLEVBQUUsTUFBTSxHQUNmO0VBQ0EsQUFBRCxTQUFNLENBQUM7SUFDTCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLEtBQUssR0FDZjs7QUNuRkgsQUFBQSxNQUFNLENBQUM7RXpCa21CTCxXQUFXLEVBRFUsU0FBUyxFQUNWLFVBQVU7RXlCaG1CNUIsS0FBSyxFQUFFLElBQUksR0FLZDtFQUhJLEFBQUQsV0FBTSxDQUFDO0lBQ0gsTUFBTSxFQUFFLElBQUksR0FDZjs7QUFLQSxBQUFELFNBQU8sQ0FBQztFQUNKLEtBQUssRTNCT0MsT0FBTztFMkJOYixXQUFXLEVBQUUsR0FBRztFQUNoQixhQUFhLEVBQUUsTUFBTTtFQUNyQixPQUFPLEVBQUUsS0FBSztFQUNkLFNBQVMsRUFBRSxNQUFNLEdBQ3BCOztBQUVBLEFBQUQsU0FBTyxDQUFDO0VBQ0osT0FBTyxFQUFFLE1BQU07RUFDZixLQUFLLEVBQUUsSUFBSTtFekI2a0JqQixXQUFXLEVBRFUsU0FBUyxFQUNWLFVBQVU7RXlCM2tCeEIsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLE1BQUssQ0FBQyxLQUFLLEMzQkhULGtCQUFrQjtFMkJJNUIsYUFBYSxFQUFFLEtBQUs7RUFDcEIsU0FBUyxFQUFFLE1BQU07RUFDakIsV0FBVyxFQUFFLEdBQUcsR0FTbkI7RUFuQkEsQUFZRyxTQVpHLEFBWUYsTUFBTSxDQUFDO0lBQ0osWUFBWSxFM0JqQlQsT0FBTyxHMkJrQmI7RUFkSixBekI2VkgsU3lCN1ZTLEF6QjZWUixZQUFZLENBQUM7SXlCNVVKLEtBQUssRTNCZkosT0FBTyxHRTZWakI7RXlCL1ZFLEF6QmlXSCxTeUJqV1MsQXpCaVdSLGlCQUFpQixDQUFDO0l5QmhWVCxLQUFLLEUzQmZKLE9BQU8sR0VpV2pCO0V5Qm5XRSxBekJxV0gsU3lCcldTLEF6QnFXUixrQkFBa0IsQ0FBQztJeUJwVlYsS0FBSyxFM0JmSixPQUFPLEdFcVdqQjtFeUJ2V0UsQXpCeVdILFN5QnpXUyxBekJ5V1Isc0JBQXNCLENBQUM7SXlCeFZkLEtBQUssRTNCZkosT0FBTyxHRXlXakI7RXlCM1dFLEF6QjZXSCxTeUI3V1MsQXpCNldSLDJCQUEyQixDQUFDO0l5QjVWbkIsS0FBSyxFM0JmSixPQUFPLEdFNldqQjs7QXlCdlZILEFBQUEsUUFBUSxDQUFDO0VBQ0wsTUFBTSxFQUFFLElBQUksR0FDZjs7QUFFRCxBQUNJLElBREEsQ0FDQSxvQkFBb0IsQ0FBQztFQUNqQixLQUFLLEUzQm5DRCxPQUFPO0UyQm9DWCxNQUFNLEVBQUUsS0FBSztFQUNiLEtBQUssRUFBRSxLQUFLLEdBQ2Y7O0FBTEwsQUFRUSxJQVJKLENBT0EsSUFBSSxDQUNBLGNBQWMsQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFRLEdBQ3JCOztBQVZULEFBYUksSUFiQSxDQWFBLHdCQUF3QixDQUFDO0VBQ3JCLE9BQU8sRUFBRSxLQUFLO0VBQ2QsUUFBUSxFQUFFLFFBQVEsR0FDckI7O0FBS0wsQUFBQSxzQkFBc0IsQ0FBQztFQUNuQixVQUFVLEVBQUUsTUFBTTtFQUNsQixLQUFLLEUzQnhERyxPQUFPLEMyQndERyxVQUFVLEdBQy9COztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1QsTUFBTSxFQUFFLE9BQU8sR0FDbEI7O0FDM0VELEFBQUEsRUFBRSxBQUFBLGFBQWEsQ0FBQztFQUNkLFVBQVUsRUFBRSxNQUFNLEdBQ25COztBQUNELEFBQUEsYUFBYSxDQUFDO0UxQjBEWixPQUFPLEVBQUUsWUFBWTtFQUNyQixPQUFPLEVBQUUsU0FBUztFQUNsQixPQUFPLEVBQUUsUUFBUTtFQUNqQixPQUFPLEVBQUUsT0FBTztFQUNoQixPQUFPLEVBQUUsSUFBSTtFMEI1RGIsV0FBVyxFQUFFLE1BQU07RUFDbkIsZUFBZSxFQUFFLE1BQU07RUFDdkIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUMsR0E2Q1g7RUFsREQsQUFRSSxhQVJTLEdBT1QsRUFBRSxBQUNELElBQUssQ0FBQSxZQUFZLEVBQUU7SUFDbEIsV0FBVyxFQUFFLE1BQU0sR0FDcEI7RUFWTCxBQVdJLGFBWFMsR0FPVCxFQUFFLEdBSUUsYUFBYSxDQUFDO0lBQ2hCLEtBQUssRUFBRSxNQUFNO0lBQ2IsTUFBTSxFQUFFLE1BQU07SUFDZCxhQUFhLEVBQUUsTUFBTTtJMUJ5RXpCLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLE9BQU8sRUFBRSxTQUFTO0lBQ2xCLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLE9BQU8sRUFBRSxPQUFPO0lBQ2hCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsZUFBZSxFQUFFLE1BQU07SUFDdkIsV0FBVyxFQUFFLE1BQU07SUFDbkIsbUJBQW1CLEVBQUUsTUFBTTtJQUMzQixlQUFlLEVBQUUsTUFBTTtJQUN2Qix1QkFBdUIsRUFBRSxNQUFNO0kwQmhGM0IsZ0JBQWdCLEVBQUUsSUFBSTtJQUN0QixNQUFNLEVBQUUsT0FBTztJQUNmLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFFBQVEsRUFBRSxNQUFNO0lBQ2hCLEtBQUssRTVCUkksT0FBTztJNEJTaEIsU0FBUyxFQUFFLE1BQU0sR0EyQmxCO0lBaERMLEExQnlnQkUsYTBCemdCVyxHQU9ULEVBQUUsR0FJRSxhQUFhLEExQjhmbEIsT0FBTyxDQUFDO01BQ1AsUUFBUSxFQUFFLFFBQVE7TUFDbEIsT0FBTyxFQUFFLEVBQUU7TUFDWCxLQUFLLEVBQUUsQ0FBQztNQUNSLE1BQU0sRUFBRSxJQUFJO01BQ1osR0FBRyxFQUFFLENBQUM7TUFDTixLQUFLLEVBQUUsQ0FBQztNQUNSLFVBQVUsRUZwZ0JDLE9BQU87TUVxZ0JsQixVQUFVLEVBQUUsYUFBYTtNQUN6QixPQUFPLEVBQUUsQ0FBQztNQUNWLGNBQWMsRUFBRSxJQUFJLEdBQ3JCO0kwQnBoQkgsQUF1Qk0sYUF2Qk8sR0FPVCxFQUFFLEdBSUUsYUFBYSxBQVlkLE1BQU0sQ0FBQztNQUNOLE9BQU8sRUFBRSxFQUFFLEdBQ1o7STFCOFJMLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSztNMEJ2VHRCLEFBMkJRLGFBM0JLLEdBT1QsRUFBRSxHQUlFLGFBQWEsQTFCNlNoQixNQUFNLEEwQjdSRixJQUFLLENBQUEsSUFBSSxFQUFFO1FBQ1YsS0FBSyxFQUFFLEtBQUssR0FLYjtRQWpDVCxBQTZCVSxhQTdCRyxHQU9ULEVBQUUsR0FJRSxhQUFhLEExQjZTaEIsTUFBTSxBMEI3UkYsSUFBSyxDQUFBLElBQUksQ0FFUCxPQUFPLENBQUM7VUFDUCxJQUFJLEVBQUUsQ0FBQztVQUNQLEtBQUssRUFBRSxJQUFJLEdBQ1o7SUFoQ1gsQUFtQ00sYUFuQ08sR0FPVCxFQUFFLEdBSUUsYUFBYSxBQXdCZCxRQUFRLENBQUM7TUFDUixLQUFLLEU1Qm5CQyxPQUFPLEc0QndCZDtNQXpDUCxBQXFDUSxhQXJDSyxHQU9ULEVBQUUsR0FJRSxhQUFhLEFBd0JkLFFBQVEsQUFFTixPQUFPLENBQUM7UUFDUCxJQUFJLEVBQUUsQ0FBQztRQUNQLEtBQUssRUFBRSxJQUFJLEdBQ1o7SUF4Q1QsQUEwQ00sYUExQ08sR0FPVCxFQUFFLEdBSUUsYUFBYSxBQStCZCxJQUFJLENBQUM7TUFDSixnQkFBZ0IsRUFBRSxXQUFXLEdBQzlCO0lBNUNQLEFBNkNNLGFBN0NPLEdBT1QsRUFBRSxHQUlFLGFBQWEsQ0FrQ2YsQ0FBQyxDQUFDO01BQ0EsV0FBVyxFQUFFLEdBQUcsR0FDakI7O0FJbERQLEFBQUEsUUFBUSxDQUFDO0UvQjZKTCxTQUFTLEVBQUUsSUFBSTtFK0IzSmpCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEtBQUssRWhDWVEsT0FBTztFRXVsQnBCLFdBQVcsRUFEYSxtQkFBbUIsRUFDdkIsVUFBVSxHOEIzbEIvQjtFL0JvSkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJK0IvSjdDLEFBQUEsUUFBUSxDQUFDO00vQmdLRCxTQUFTLEVBQUUsTUFBTSxHK0JySnhCO0UvQndKRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQm5LNUMsQUFBQSxRQUFRLENBQUM7TS9Cb0tELFNBQVMsRUFBRSxNQUFNLEcrQnpKeEI7RTlCVkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEJEckMsQUFBQSxRQUFRLENBQUM7TUFNTCxTQUFTLEVBQUUsTUFBTSxHQUtwQjtFQUhFLEFBQUQsZUFBUSxDQUFDO0lBQ1AsS0FBSyxFaENPSyxPQUFPLEdnQ05sQjs7QUFHSCxBQUFBLGVBQWUsQ0FBQztFL0I0TVosU0FBUyxFQUFFLE1BQU07RStCMU1uQixXQUFXLEVBQUUsR0FBRztFQUNoQixLQUFLLEVoQ0ZLLE9BQU8sR2dDR2xCO0UvQjBNRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0krQjlNN0MsQUFBQSxlQUFlLENBQUM7TS9CK01SLFNBQVMsRUFBRSxNQUFNLEcrQjNNeEI7RS9COE1HLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCbE41QyxBQUFBLGVBQWUsQ0FBQztNL0JtTlIsU0FBUyxFQUFFLE1BQU0sRytCL014Qjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNMLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQyxHQUN4Qjs7QUFDRCxBQUFBLFFBQVEsQ0FBQztFQUNQLFdBQVcsRUFBRSxZQUFZLEdBQzFCOztBQUNELEFBQUEsUUFBUSxDQUFDO0VBQ1AsY0FBYyxFQUFFLFlBQVksR0FDN0I7O0FBQ0QsQUFBQSxTQUFTLENBQUM7RUFDUixVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLFdBQVcsRUFBRSxHQUFHLEdBQ2pCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0osV0FBVyxFQUFFLEdBQUcsR0FDakI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDSixXQUFXLEVBQUUsR0FBRyxHQUNqQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLFdBQVcsRUFBRSxHQUFHLEdBQ2pCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0osV0FBVyxFQUFFLEdBQUcsR0FDakI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDSixXQUFXLEVBQUUsR0FBRyxHQUNqQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLFdBQVcsRUFBRSxHQUFHLEdBQ2pCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0osV0FBVyxFQUFFLElBQUksR0FDbEI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDSCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNKLGNBQWMsRUFBRSxTQUFTLEdBQzFCOztBQUVELEFBQUEsR0FBRyxDQUFDO0UvQnFUQSxTQUFTLEVBQUUsTUFBTSxHK0JuVHBCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQnlTRCxTQUFTLEVBQUUsTUFBTSxHK0J2U3BCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQmlTRCxTQUFTLEVBQUUsTUFBTSxHK0IvUnBCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQnFSRCxTQUFTLEVBQUUsTUFBTSxHK0JuUnBCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQnlRRCxTQUFTLEVBQUUsTUFBTSxHK0J2UXBCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQnFQRCxTQUFTLEVBQUUsTUFBTSxHK0JuUHBCO0UvQnFQRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0krQnZQN0MsQUFBQSxJQUFJLENBQUM7TS9Cd1BHLFNBQVMsRUFBRSxNQUFNLEcrQnRQeEI7RS9CeVBHLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCM1A1QyxBQUFBLElBQUksQ0FBQztNL0I0UEcsU0FBUyxFQUFFLE1BQU0sRytCMVB4Qjs7QUFFRCxBQUFBLElBQUksQ0FBQztFL0J5TkQsU0FBUyxFQUFFLElBQUksRytCdk5sQjtFL0J5TkcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJK0IzTjdDLEFBQUEsSUFBSSxDQUFDO00vQjRORyxTQUFTLEVBQUUsTUFBTSxHK0IxTnhCO0UvQjZORyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQi9ONUMsQUFBQSxJQUFJLENBQUM7TS9CZ09HLFNBQVMsRUFBRSxNQUFNLEcrQjlOeEI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RS9CNkxELFNBQVMsRUFBRSxNQUFNLEcrQjNMcEI7RS9CNkxHLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SStCL0w3QyxBQUFBLElBQUksQ0FBQztNL0JnTUcsU0FBUyxFQUFFLElBQUksRytCOUx0QjtFL0JpTUcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0JuTTVDLEFBQUEsSUFBSSxDQUFDO00vQm9NRyxTQUFTLEVBQUUsTUFBTSxHK0JsTXhCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQmlIRCxTQUFTLEVBQUUsTUFBTSxHK0IvR3BCO0UvQmlIRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0krQm5IN0MsQUFBQSxJQUFJLENBQUM7TS9Cb0hHLFNBQVMsRUFBRSxNQUFNLEcrQmxIeEI7RS9CcUhHLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCdkg1QyxBQUFBLElBQUksQ0FBQztNL0J3SEcsU0FBUyxFQUFFLE1BQU0sRytCdEh4Qjs7QUFFRCxBQUFBLElBQUksQ0FBQztFL0JpREQsU0FBUyxFQUFFLElBQUksRytCL0NsQjtFL0JpREcsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJK0JuRDdDLEFBQUEsSUFBSSxDQUFDO00vQm9ERyxTQUFTLEVBQUUsTUFBTSxHK0JsRHhCO0UvQnFERyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQnZENUMsQUFBQSxJQUFJLENBQUM7TS9Cd0RHLFNBQVMsRUFBRSxNQUFNLEcrQnREeEI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RS9CSEQsU0FBUyxFQUFFLE1BQU0sRytCS3BCO0UvQkhHLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SStCQzdDLEFBQUEsSUFBSSxDQUFDO00vQkFHLFNBQVMsRUFBRSxNQUFNLEcrQkV4QjtFL0JDRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQkg1QyxBQUFBLElBQUksQ0FBQztNL0JJRyxTQUFTLEVBQUUsTUFBTSxHK0JGeEI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RS9CM0NELFNBQVMsRUFBRSxNQUFNLEcrQjZDcEI7RS9CM0NHLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SStCeUM3QyxBQUFBLElBQUksQ0FBQztNL0J4Q0csU0FBUyxFQUFFLE1BQU0sRytCMEN4QjtFL0J2Q0csTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0JxQzVDLEFBQUEsSUFBSSxDQUFDO00vQnBDRyxTQUFTLEVBQUUsSUFBSSxHK0JzQ3RCOztBQUVELEFBQUEsSUFBSSxDQUFDO0UvQnZFRCxTQUFTLEVBQUUsTUFBTSxHK0J5RXBCO0UvQnZFRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0krQnFFN0MsQUFBQSxJQUFJLENBQUM7TS9CcEVHLFNBQVMsRUFBRSxNQUFNLEcrQnNFeEI7RS9CbkVHLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCaUU1QyxBQUFBLElBQUksQ0FBQztNL0JoRUcsU0FBUyxFQUFFLE1BQU0sRytCa0V4Qjs7QUFFRCxBQUFBLElBQUksQ0FBQztFL0JuR0QsU0FBUyxFQUFFLE1BQU0sRytCcUdwQjtFL0JuR0csTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJK0JpRzdDLEFBQUEsSUFBSSxDQUFDO00vQmhHRyxTQUFTLEVBQUUsSUFBSSxHK0JrR3RCO0UvQi9GRyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQjZGNUMsQUFBQSxJQUFJLENBQUM7TS9CNUZHLFNBQVMsRUFBRSxJQUFJLEcrQjhGdEI7O0FDOUhELEFBQUEsTUFBTSxDQUFDO0VBQ0gsS0FBSyxFakNhRyxPQUFPLEdpQ1psQjs7QUFFRCxBQUFBLFNBQVMsQ0FBQztFQUNOLEtBQUssRWpDVU0sT0FBTyxHaUNUckI7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDTCxLQUFLLEVqQ09LLE9BQU8sR2lDTnBCOztBQUVELEFBQUEsT0FBTyxDQUFDO0VBQ0osS0FBSyxFakNJSSxPQUFPLEdpQ0huQjs7QUFFRCxBQUFBLE9BQU8sQ0FBQztFQUNKLEtBQUssRWpDQ0ksT0FBTyxHaUNBbkI7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDTCxLQUFLLEVBQUUsS0FBSyxHQUNmOztBQUVELEFBQUEsUUFBUSxDQUFDO0VBQ0wsS0FBSyxFakNOSyxPQUFPLEdpQ09wQjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNILEtBQUssRWpDUkksT0FBTyxHaUNTbkI7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDTCxLQUFLLEVqQ1hXLE9BQU8sR2lDWTFCOztBQUVELEFBQUEsT0FBTyxDQUFDO0VBQ0osZ0JBQWdCLEVqQ3ZCUixPQUFPLEdpQ3dCbEI7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDUCxnQkFBZ0IsRWpDMUJMLE9BQU8sR2lDMkJyQjs7QUFFRCxBQUFBLFNBQVMsQ0FBQztFQUNOLGdCQUFnQixFakM3Qk4sT0FBTyxHaUM4QnBCOztBQUVELEFBQUEsUUFBUSxDQUFDO0VBQ0wsZ0JBQWdCLEVqQ2hDUCxPQUFPLEdpQ2lDbkI7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDTCxnQkFBZ0IsRWpDbkNQLE9BQU8sR2lDb0NuQjs7QUFFRCxBQUFBLFFBQVEsQ0FBQztFQUNMLFFBQVEsRUFBRSxNQUFNLEdBQ25COztBQUVELEFBQUEsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxDQUFDLEdBQ2I7O0FBRUQsQUFBQSxNQUFNLENBQUM7RUFDSCxPQUFPLEVBQUUsQ0FBQyxHQUNiOztBQUVELEFBQUEsTUFBTSxDQUFDO0VBQ0gsT0FBTyxFQUFFLENBQUMsR0FDYjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNILE9BQU8sRUFBRSxDQUFDLEdBQ2I7O0FBRUQsQUFBQSxNQUFNLENBQUM7RUFDSCxNQUFNLEVBQUUsTUFBTSxHQUNqQjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNILFdBQVcsRUFBRSxJQUFJLEdBQ3BCOztBQUVELEFBQUEsTUFBTSxDQUFDO0VBQ0gsVUFBVSxFQUFFLE1BQU0sR0FDckI7O0FBRUQsQUFBQSxRQUFRLENBQUM7RUFDTCxZQUFZLEVBQUUsSUFBSSxHQUNyQjs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFL0JOTCxPQUFPLEVBQUUsWUFBWTtFQUNyQixPQUFPLEVBQUUsU0FBUztFQUNsQixPQUFPLEVBQUUsUUFBUTtFQUNqQixPQUFPLEVBQUUsT0FBTztFQUNoQixPQUFPLEVBQUUsSUFBSTtFQUNiLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLG1CQUFtQixFQUFFLE1BQU07RUFDM0IsZUFBZSxFQUFFLE1BQU07RUFDdkIsdUJBQXVCLEVBQUUsTUFBTSxHK0JEaEM7O0FBRUQsQUFBQSxNQUFNLENBQUM7RS9CdkNMLE9BQU8sRUFBRSxZQUFZO0VBQ3JCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLE9BQU8sRUFBRSxPQUFPO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0UrQnFDWCxlQUFlLEVBQUUsUUFBUSxHQUM1Qjs7QUFLRCxBQUFBLFlBQVk7QUFDWixlQUFlO0FBQ2YsU0FBUyxDQUFDO0VBQ04sT0FBTyxFQUFFLElBQUksR0FDaEI7O0FBRUQsQUFBQSxZQUFZO0FBQ1osU0FBUyxDQUFDO0VBQ04sT0FBTyxFQUFFLEtBQUssR0FDakI7O0FBRUQsQUFBQSxTQUFTLENBQUMsY0FBYyxDQUFDO0VBQ3JCLE1BQU0sRUFBRSxNQUFNLENBQUMsS0FBSyxDakMxR1osT0FBTztFaUMyR2YsVUFBVSxFQUFFLFNBQVMsR0FTeEI7RUFYRCxBQUlJLFNBSkssQ0FBQyxjQUFjLEFBSW5CLE9BQU8sQ0FBQztJQUNMLFlBQVksRWpDNUdOLE9BQU8sR2lDNkdoQjtFL0I2TEgsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLO0krQm5NdEIsQS9Cb01JLFMrQnBNSyxDQUFDLGNBQWMsQS9Cb01uQixNQUFNLENBQUM7TStCM0xKLFlBQVksRWpDaEhOLE9BQU8sR0U2U2hCOztBK0J6TEwsQUFDSSxRQURJLEFBQUEsUUFBUSxBQUNYLE9BQU8sQ0FBQztFQUNMLE9BQU8sRUFBRSxJQUFJLEdBQ2hCOztBQUdMLEFBQ0ksUUFESSxBQUFBLFFBQVEsQUFDWCxRQUFRLENBQUM7RUFDTixPQUFPLEVBQUUsSUFBSSxHQUNoQjs7QUFHTCxBQUFBLFFBQVEsQUFBQSxRQUFRO0FBQ2hCLFFBQVEsQUFBQSxRQUFRLENBQUM7RUFDYixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJLEdBTWY7RUFURCxBQUtJLFFBTEksQUFBQSxRQUFRLENBS1osQ0FBQztFQUpMLFFBQVEsQUFBQSxRQUFRLENBSVosQ0FBQyxDQUFDO0lBQ0UsVUFBVSxFakN6SUgsT0FBTztJRTRkcEIsdUJBQXVCLEVBQUUsSUFBSTtJQUM3Qix1QkFBdUIsRUFBRSxXQUFXO0lBQ3BDLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLGVBQWUsRUFBRSxXQUFXLEcrQnBWekI7O0FBR0wsQUFBQSxTQUFTLENBQUMsZUFBZSxDQUFDO0VBQ3RCLGdCQUFnQixFQUFFLElBQUksR0FDekI7O0FBRUQsQUFBQSxTQUFTLEFBQUEsUUFBUSxDQUFDO0VBQ2QsVUFBVSxFakNuSkMsT0FBTztFRTRkcEIsdUJBQXVCLEVBQUUsSUFBSTtFQUM3Qix1QkFBdUIsRUFBRSxXQUFXO0VBQ3BDLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGVBQWUsRUFBRSxXQUFXLEcrQjFVN0I7O0FBRUQsQUFBQSxTQUFTLENBQUMsZ0JBQWdCLENBQUM7RUFDdkIsVUFBVSxFakN4SkMsT0FBTztFRTRkcEIsdUJBQXVCLEVBQUUsSUFBSTtFQUM3Qix1QkFBdUIsRUFBRSxXQUFXO0VBQ3BDLGVBQWUsRUFBRSxJQUFJO0VBQ3JCLGVBQWUsRUFBRSxXQUFXO0UrQnJVMUIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNmOztBQUVELEFBQUEsWUFBWSxDQUFDO0VBQ1QsYUFBYSxFQUFFLEtBQUssR0FDdkI7O0FBRUQsQUFBQSxjQUFjLENBQUM7RUFDWCxhQUFhLEVBQUUsS0FBSyxHQUN2Qjs7QUFFRCxBQUFBLFNBQVMsQ0FBQyxTQUFTLENBQUM7RUFDaEIsTUFBTSxFQUFFLFdBQVcsR0FDdEI7O0FBTUQsQUFBQSxPQUFPLENBQUM7RUFDSixNQUFNLEVBQUUsT0FBTyxHQUNsQjs7QUFFRCxBQUVJLGFBRlMsQ0FFVCxPQUFPO0FBRFgsS0FBSyxDQUNELE9BQU8sQ0FBQztFQUNKLFdBQVcsRUFBRSxHQUFHLEdBYW5CO0VBaEJMLEFBS1EsYUFMSyxDQUVULE9BQU8sQUFHRixRQUFRO0VBSmpCLEtBQUssQ0FDRCxPQUFPLEFBR0YsUUFBUSxDQUFDO0lBQ04sS0FBSyxFQUFFLE9BQU8sR0FDakI7RUFQVCxBQVNRLGFBVEssQ0FFVCxPQUFPLEFBT0YsUUFBUTtFQVJqQixLQUFLLENBQ0QsT0FBTyxBQU9GLFFBQVEsQ0FBQztJQUNOLEtBQUssRWpDekxILE9BQU8sR2lDMExaO0VBWFQsQUFhUSxhQWJLLENBRVQsT0FBTyxBQVdGLE9BQU87RUFaaEIsS0FBSyxDQUNELE9BQU8sQUFXRixPQUFPLENBQUM7SUFDTCxLQUFLLEVBQUUsT0FBTyxHQUNqQjs7QUFJVCxBQUFBLE9BQU8sQ0FBQztFQUNKLFFBQVEsRUFBRSxRQUFRLEdBQ3JCOztBQUVELEFBQUEsU0FBUyxDQUFDO0VBQ04sUUFBUSxFQUFFLFFBQVEsR0FDckI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDRixhQUFhLEVBQUUsTUFBTSxHQXlDeEI7RUExQ0QsQUFHSSxLQUhDLEFBR0EsTUFBTSxDQUFDO0kvQnhKVixPQUFPLEVBQUUsWUFBWTtJQUNyQixPQUFPLEVBQUUsU0FBUztJQUNsQixPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsT0FBTztJQUNoQixPQUFPLEVBQUUsSUFBSTtJQUNiLFNBQVMsRUFBRSxJQUFJO0krQnFKVCxHQUFHLEVBQUUsSUFBSTtJQUNULGVBQWUsRUFBRSxhQUFhLEdBQ2pDO0VBUEwsQUFTSSxLQVRDLEFBU0EsT0FBTyxDQUFDO0lBQ0wsV0FBVyxFQUFFLE1BQU0sR0FDdEI7RUFYTCxBQWFJLEtBYkMsQUFhQSxJQUFJLENBQUM7SUFDRixXQUFXLEVBQUUsUUFBUSxHQUN4QjtFQWZMLEFBaUJJLEtBakJDLEFBaUJBLE1BQU0sQ0FBQztJQUNKLFdBQVcsRUFBRSxVQUFVLEdBQzFCO0UvQjVPSCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQnlOckMsQUFxQkksS0FyQkMsQUFxQkEsVUFBVSxDQUFDO01BRUosVUFBVSxFQUFFLE1BQU0sR0FrQnpCO01BekNMLEFBeUJZLEtBekJQLEFBcUJBLFVBQVUsQ0FJSCxLQUFLLENBQUM7UUFDRixLQUFLLEVBQUUsSUFBSSxHQUNkO01BM0JiLEFBNkJZLEtBN0JQLEFBcUJBLFVBQVUsQ0FRSCxNQUFNLENBQUM7UUFDSCxLQUFLLEVBQUUsSUFBSSxHQUNkO01BL0JiLEFBaUNZLEtBakNQLEFBcUJBLFVBQVUsQ0FZSCxJQUFJLENBQUM7UUFDRCxlQUFlLEVBQUUsTUFBTSxHQUMxQjtNQW5DYixBQXFDWSxLQXJDUCxBQXFCQSxVQUFVLENBZ0JILElBQUksQ0FBQztRQUNELE1BQU0sRUFBRSxNQUFNLEdBQ2pCOztBQUtiLEFBQUEsTUFBTSxDQUFDO0VBQ0gsUUFBUSxFQUFFLFFBQVEsR0EyQnJCO0VBNUJELEFBR0ksTUFIRSxBQUdELFFBQVEsQ0FBQztJL0J5TFosT0FBTyxFQUFFLEVBQUU7SUFDWCxRQUFRLEVBQUUsUUFBUTtJQTVMbEIsSUFBSSxFK0JJcUIsTUFBSztJL0JIOUIsR0FBRyxFK0JHc0IsTUFBSztJL0JGOUIsS0FBSyxFK0JFb0IsTUFBSztJL0JEOUIsTUFBTSxFK0JDbUIsTUFBSztJQUN4QixNQUFNLEVBQUUsa0JBQWtCO0lBQzFCLE9BQU8sRUFBRSxDQUFDO0lBQ1YsVUFBVSxFQUFFLG1CQUFtQjtJQUMvQixTQUFTLEVBQUUsVUFBVTtJQUNyQixPQUFPLEVBQUUsQ0FBQztJQUNWLGFBQWEsRUFBRSxJQUFJLEdBQ3RCO0VBWkwsQUFjSSxNQWRFLENBY0YsR0FBRyxDQUFDO0lBQ0EsVUFBVSxFQUFFLG1CQUFtQixHQUNsQztFL0JvQ0gsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLO0krQnBEdEIsQUFtQlEsTUFuQkYsQS9CcURELE1BQU0sQStCbENGLFFBQVEsQ0FBQztNQUNOLE9BQU8sRUFBRSxDQUFDO01BQ1YsU0FBUyxFQUFFLFFBQVEsR0FDdEI7SUF0QlQsQUF3QlEsTUF4QkYsQS9CcURELE1BQU0sQytCN0JILEdBQUcsQ0FBQztNL0JUVixTQUFTLEVBQUUscUJBQXFCLENBQUMsV0FBVztNQUM1QyxpQkFBaUIsRUFBRSxxQkFBcUIsQ0FBQyxXQUFXO01BQ3BELGNBQWMsRUFBRSxxQkFBcUIsQ0FBQyxXQUFXO01BQ2pELFlBQVksRUFBRSxxQkFBcUIsQ0FBQyxXQUFXLEcrQlF4Qzs7QUFJVCxBQUFBLE1BQU0sQ0FBQztFQUNILE1BQU0sRUFBRSxPQUFPLEdBQ2xCOztBQUVELEFBQ0ksV0FETyxDQUNQLEdBQUcsQ0FBQztFQUNBLFFBQVEsRUFBRSxRQUFRLEdBQ3JCOztBL0I5UkgsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFK0JpU3RDLEFBQUEsWUFBWSxDQUFDO0lBRUwsT0FBTyxFQUFFLGVBQWUsR0FFL0I7O0EvQmpUQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0UrQm1UdEMsQUFBQSxjQUFjLENBQUM7SUFFUCxPQUFPLEVBQUUsZUFBZSxHQUUvQjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNGLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBRUQsQUFBQSxlQUFlLENBQUM7RUFDWixhQUFhLEVBQUUsTUFBTSxHQU14QjtFQVBELEFBR0ksZUFIVyxDQUdYLEdBQUcsQ0FBQztJQUNBLE9BQU8sRUFBRSxLQUFLO0lBQ2QsTUFBTSxFQUFFLE1BQU0sR0FDakI7O0FDcFVMLEFBQUEsS0FBSyxDQUFDO0VBQ0YsYUFBYSxFQUFFLFlBQVksR0FDOUI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDRixhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUFBLEtBQUssQ0FBQztFQUNGLGFBQWEsRUFBRSxNQUFNLEdBQ3hCOztBQUVELEFBQUEsS0FBSyxDQUFDO0VBQ0YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBRUQsQUFBQSxLQUFLLENBQUM7RUFDRixhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE1BREUsQUFDRCxJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsSUFBSSxHQUN0Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLElBQUksR0FDdEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsSUFBSSxHQUN0Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLElBQUksR0FDdEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsSUFBSSxHQUN0Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLElBQUksR0FDdEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsSUFBSSxHQUN0Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLElBQUksR0FDdEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsTUFBTSxHQUN4Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLE1BQU0sR0FDeEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxhQUFhLEVBQUUsSUFBSSxHQUN0Qjs7QUFFRCxBQUNJLE9BREcsQUFDRixJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2YsYUFBYSxFQUFFLElBQUksR0FDdEI7O0FBR0wsQUFBQSxNQUFNLENBQUM7RUFDSCxNQUFNLEVBQUUsWUFBWSxDQUFDLENB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 */