/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;500;600;700;800;900&display=swap);
/*!******************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css (1) ***!
  \******************************************************************************************************************/
:root {
    --red: #8c1f13;
    --red2: #c62b1d;
    --ink: #111;
    --ink2: #1d1d1d;
    --muted: #666;
    --line: #e7e7e7;
    --soft: #f5f5f3;
    --white: #fff;
    --radius: 18px;
    --shadow: 0 18px 50px rgba(0, 0, 0, 0.08);
}
* {
    box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
}
body {
    margin: 0;
    font-family: "Source Sans 3", Arial, sans-serif;
    color: var(--ink);
    background: #fff;
    line-height: 1.55;
}
img {
    max-width: 100%;
    display: block;
}
a {
    color: inherit;
    text-decoration: none;
}
.shell {
    width: min(1180px, calc(100% - 40px));
    margin: auto;
}
.site-header {
    position: sticky;
    top: 0;
    z-index: 100;
    background: rgba(16, 16, 16, 0.95);
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.nav-shell {
    height: 76px;
    display: flex;
    align-items: center;
    gap: 28px;
}
.brand {
    width: 150px;
}
.brand img {
    max-height: 48px;
    object-fit: contain;
}
.main-nav {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-left: auto;
}
.main-nav a {
    color: #ddd;
    font-weight: 600;
    font-size: 0.95rem;
    position: relative;
}
.main-nav a:after {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: -10px;
    height: 2px;
    background: var(--red2);
    transition: 0.25s;
}
.main-nav a:hover:after,
.main-nav a.is-active:after {
    right: 0;
}
.main-nav a.is-active {
    color: #fff;
}
.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 20px;
    border-radius: 8px;
    font-weight: 800;
    transition: 0.25s;
    border: 1px solid transparent;
}
.button:hover {
    transform: translateY(-2px);
}
.button-primary {
    background: linear-gradient(135deg, var(--red), var(--red2));
    color: #fff;
    box-shadow: 0 10px 24px rgba(140, 31, 19, 0.25);
}
.button-ghost {
    color: #fff;
    border-color: rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.03);
}
.nav-cta {
    padding: 11px 16px;
    font-size: 0.9rem;
}
.nav-toggle {
    display: none;
    background: none;
    border: 0;
    width: 42px;
}
.nav-toggle span {
    display: block;
    height: 2px;
    background: #fff;
    margin: 7px 0;
}
.hero,
.inner-hero {
    background: #111;
    color: #fff;
    overflow: hidden;
}
.hero-grid,
.inner-hero-grid {
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    align-items: center;
    gap: 70px;
    min-height: 590px;
    padding: 75px 0;
}
.eyebrow {
    display: block;
    color: var(--red2);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-size: 0.78rem;
    margin-bottom: 14px;
}
.hero h1,
.inner-hero h1,
.compact-hero h1 {
    font-size: clamp(3.3rem, 6vw, 6.2rem);
    line-height: 0.92;
    margin: 0 0 24px;
    letter-spacing: -0.055em;
}
.hero h1 strong,
.inner-hero h1 strong,
.compact-hero h1 strong {
    color: #df3323;
}
.hero-copy > p,
.inner-hero-grid > div > p,
.compact-hero p {
    font-size: 1.2rem;
    max-width: 650px;
    color: #d2d2d2;
}
.hero-actions {
    display: flex;
    gap: 14px;
    margin-top: 32px;
}
.hero-stage {
    position: relative;
    height: 430px;
}
.stage-screen {
    position: absolute;
    inset: 45px 25px 45px 0;
    border: 1px solid #444;
    border-radius: 18px;
    background: linear-gradient(145deg, #252525, #090909);
    box-shadow: 0 40px 90px rgba(0, 0, 0, 0.55);
    overflow: hidden;
    z-index: 2;
}
.stage-top {
    height: 38px;
    border-bottom: 1px solid #333;
    padding: 12px;
    display: flex;
    gap: 6px;
}
.stage-top i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #555;
}
.stage-logo {
    height: calc(100% - 38px);
    display: grid;
    place-items: center;
}
.stage-logo img {
    width: 240px;
}
.stage-glow {
    position: absolute;
    width: 380px;
    height: 380px;
    background: radial-gradient(
        circle,
        rgba(198, 43, 29, 0.34),
        transparent 66%
    );
    right: -60px;
    bottom: -80px;
}
.stage-tool {
    position: absolute;
    background: #fff;
    color: #111;
    padding: 12px 18px;
    border-radius: 10px;
    box-shadow: var(--shadow);
    font-weight: 800;
    z-index: 3;
}
.stage-tool-a {
    right: 0;
    top: 22px;
}
.stage-tool-b {
    left: -25px;
    bottom: 25px;
}
.trust-strip {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid #333;
    padding: 25px 0 35px;
}
.trust-strip div {
    display: flex;
    flex-direction: column;
    border-right: 1px solid #333;
    padding-left: 28px;
}
.trust-strip div:first-child {
    padding-left: 0;
}
.trust-strip div:last-child {
    border: 0;
}
.trust-strip strong {
    font-size: 1.15rem;
}
.trust-strip span {
    color: #aaa;
    font-size: 0.9rem;
}
.section {
    padding: 90px 0;
}
.section-tight {
    padding-top: 30px;
}
.section-soft {
    background: var(--soft);
}
.section-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 40px;
    margin-bottom: 36px;
}
.section-heading h2,
.local-panel h2,
.cta-panel h2 {
    font-size: clamp(2.1rem, 4vw, 3.5rem);
    line-height: 1.05;
    letter-spacing: -0.04em;
    margin: 0;
}
.section-heading > p {
    max-width: 500px;
    color: var(--muted);
}
.text-link {
    font-weight: 800;
    color: var(--red);
}
.service-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.service-card {
    padding: 28px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #fff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
    transition: 0.3s;
}
.service-card:hover {
    transform: translateY(-7px);
    box-shadow: var(--shadow);
}
.service-card-dark {
    background: #151515;
    color: #fff;
    border-color: #222;
}
.service-icon {
    font-size: 2.2rem;
    color: var(--red2);
    display: block;
    margin-bottom: 28px;
}
.service-icon-svg {
    width: 70px;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
}
.service-icon-svg img {
    width: 70px;
    height: 70px;
    object-fit: contain;
    transition: transform 0.3s ease;
}
.service-card:hover .service-icon-svg img {
    transform: translateY(-3px) scale(1.04);
}
.service-card h3 {
    font-size: 1.35rem;
    line-height: 1.15;
}
.service-card p {
    color: var(--muted);
    min-height: 70px;
}
.service-card-dark p {
    color: #bbb;
}
.service-card b {
    font-size: 0.87rem;
    color: var(--red2);
}
.project-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}
.project-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
    transition: 0.3s;
}
.project-card:hover {
    transform: translateY(-7px);
    box-shadow: var(--shadow);
}
.project-media {
    height: 225px;
    display: block;
    position: relative;
    background: #171717;
    overflow: hidden;
}
.project-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.5s;
}
.project-card:hover img {
    transform: scale(1.04);
}
.media-placeholder {
    height: 100%;
    display: grid;
    place-items: center;
    font-size: 5rem;
    font-weight: 900;
    color: var(--red2);
}
.project-badge {
    position: absolute;
    left: 16px;
    bottom: 16px;
    padding: 6px 10px;
    background: var(--red2);
    color: #fff;
    border-radius: 5px;
    text-transform: uppercase;
    font-size: 0.72rem;
    font-weight: 900;
}
.project-badge.static {
    position: static;
    display: inline-block;
    margin: 12px 0;
}
.project-content {
    padding: 22px;
}
.project-content h3,
.project-content h2 {
    font-size: 1.35rem;
    line-height: 1.15;
    margin: 0 0 12px;
}
.project-content p {
    color: var(--muted);
}
.project-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid var(--line);
    font-size: 0.9rem;
}
.project-foot a {
    font-weight: 800;
    color: var(--red);
}
.project-foot time {
    color: #888;
}
.review-panel {
    background: #111;
    color: #fff;
    border-radius: var(--radius);
    padding: 34px;
    display: grid;
    grid-template-columns: 1.15fr 1fr 1fr;
    gap: 30px;
}
.review-score {
    display: flex;
    gap: 18px;
    align-items: center;
}
.google-g {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #fff;
    color: #4285f4;
    display: grid;
    place-items: center;
    font-size: 2rem;
    font-weight: 900;
}
.stars {
    color: #ffb400;
    letter-spacing: 3px;
}
.review-panel blockquote {
    margin: 0;
    padding-left: 28px;
    border-left: 1px solid #3a3a3a;
    color: #ddd;
}
.review-panel cite {
    display: block;
    color: #fff;
    font-style: normal;
    font-weight: 800;
    margin-top: 18px;
}
.benefit-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    margin-top: 28px;
}
.benefit-grid > div {
    padding: 20px;
    border-right: 1px solid var(--line);
}
.benefit-grid > div:first-child {
    padding-left: 0;
}
.benefit-grid > div:last-child {
    border: 0;
}
.benefit-grid b,
.process-grid b {
    color: var(--red2);
}
.benefit-grid h3 {
    margin: 10px 0 5px;
}
.benefit-grid p {
    color: var(--muted);
    font-size: 0.93rem;
}
.benefit-grid-four {
    grid-template-columns: repeat(4, 1fr);
}
.local-panel {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    background: #111;
    color: #fff;
    border-radius: var(--radius);
    overflow: hidden;
}
.local-panel > div:first-child {
    padding: 48px;
}
.local-panel p {
    color: #bbb;
}
.map-art {
    min-height: 340px;
    position: relative;
    background:
        radial-gradient(
            circle at center,
            rgba(198, 43, 29, 0.3),
            transparent 32%
        ),
        linear-gradient(40deg, transparent 48%, #2e2e2e 49%, transparent 50%),
        linear-gradient(-35deg, transparent 48%, #2a2a2a 49%, transparent 50%),
        #181818;
    display: grid;
    place-items: center;
}
.map-art span {
    z-index: 2;
    font-weight: 900;
}
.map-art i {
    position: absolute;
    border: 1px solid rgba(198, 43, 29, 0.7);
    border-radius: 50%;
}
.map-art i:nth-of-type(1) {
    width: 120px;
    height: 120px;
}
.map-art i:nth-of-type(2) {
    width: 210px;
    height: 210px;
}
.map-art i:nth-of-type(3) {
    width: 300px;
    height: 300px;
}
.cta-section {
    padding-top: 20px;
}
.cta-panel {
    background: linear-gradient(135deg, #191919, #0e0e0e);
    color: #fff;
    border-radius: var(--radius);
    padding: 42px 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}
.cta-panel p {
    color: #bbb;
    margin-bottom: 0;
}
.inner-hero-light {
    background: #f5f5f3;
    color: #111;
}
.inner-hero-light .inner-hero-grid > div > p {
    color: #666;
}
.technical-visual,
.browser-mock,
.learning-visual {
    height: 390px;
    border-radius: 22px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 35px 70px rgba(0, 0, 0, 0.25);
}
.technical-visual {
    background: radial-gradient(circle at 50%, #2f2f2f, #101010);
    border: 1px solid #444;
    display: grid;
    place-items: center;
}
.chip {
    width: 130px;
    height: 130px;
    border: 2px solid var(--red2);
    display: grid;
    place-items: center;
    font-size: 2rem;
    font-weight: 900;
    box-shadow: 0 0 45px rgba(198, 43, 29, 0.25);
}
.technical-visual > span {
    position: absolute;
    bottom: 24px;
    color: #aaa;
}
.trace {
    position: absolute;
    background: var(--red2);
    height: 2px;
    width: 120px;
}
.t1 {
    left: 30px;
    top: 100px;
}
.t2 {
    right: 25px;
    top: 180px;
}
.t3 {
    left: 60px;
    bottom: 100px;
}
.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    position: relative;
}
.process-grid:before {
    content: "";
    position: absolute;
    left: 8%;
    right: 8%;
    top: 17px;
    height: 1px;
    background: #ddd;
}
.process-grid > div {
    position: relative;
    padding: 0 25px;
}
.process-grid b {
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    background: #fff;
    border: 1px solid var(--red2);
    border-radius: 50%;
    position: relative;
    z-index: 2;
}
.process-grid h3 {
    margin-top: 20px;
}
.process-grid p {
    color: var(--muted);
}
.browser-mock {
    background: #fff;
    border: 1px solid #ddd;
}
.browser-bar {
    height: 42px;
    background: #1b1b1b;
    padding: 14px;
    display: flex;
    gap: 7px;
}
.browser-bar i {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #777;
}
.browser-page {
    height: calc(100% - 42px);
    padding: 60px;
    background: linear-gradient(135deg, #fff 65%, #f3e8e6);
}
.browser-page span {
    display: block;
    width: 80px;
    height: 5px;
    background: var(--red2);
}
.browser-page h3 {
    font-size: 2.4rem;
    margin-bottom: 10px;
}
.browser-page button {
    border: 0;
    background: var(--red2);
    color: #fff;
    padding: 12px 20px;
}
.feature-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}
.feature-row > div {
    padding: 20px;
    text-align: center;
    border-right: 1px solid var(--line);
}
.feature-row > div:last-child {
    border: 0;
}
.feature-row b,
.feature-row span {
    display: block;
}
.feature-row span {
    color: var(--muted);
    font-size: 0.9rem;
}
.learning-visual {
    background:
        radial-gradient(
            circle at center,
            rgba(198, 43, 29, 0.25),
            transparent 35%
        ),
        #171717;
}
.learning-core {
    position: absolute;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: var(--red2);
    color: #fff;
    display: grid;
    place-items: center;
    font-weight: 900;
    font-size: 2.5rem;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.lesson {
    position: absolute;
    background: #fff;
    color: #111;
    padding: 12px 18px;
    border-radius: 10px;
    font-weight: 800;
}
.l1 {
    left: 12%;
    top: 18%;
}
.l2 {
    right: 12%;
    top: 20%;
}
.l3 {
    left: 18%;
    bottom: 16%;
}
.l4 {
    right: 15%;
    bottom: 18%;
}
.compact-hero {
    padding: 110px 0;
}
.compact-hero p {
    max-width: 650px;
}
.filter-bar {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-bottom: 35px;
    flex-wrap: wrap;
}
.filter-bar button {
    border: 1px solid var(--line);
    background: #fff;
    padding: 10px 15px;
    border-radius: 30px;
    font-weight: 700;
    cursor: pointer;
}
.filter-bar button.is-active {
    background: #111;
    color: #fff;
    border-color: #111;
}
.filter-bar label {
    margin-left: auto;
    border: 1px solid var(--line);
    border-radius: 30px;
    padding: 8px 14px;
    display: flex;
    gap: 8px;
}
.filter-bar input {
    border: 0;
    outline: 0;
    font: inherit;
}
.article-header {
    background: #111;
    color: #fff;
    padding: 95px 0 140px;
}
.article-head-inner {
    max-width: 900px;
}
.article-header h1 {
    font-size: clamp(3rem, 6vw, 5.5rem);
    line-height: 0.95;
    letter-spacing: -0.05em;
    margin: 20px 0;
}
.article-header p {
    font-size: 1.25rem;
    color: #ccc;
    max-width: 760px;
}
.breadcrumb {
    color: #bbb;
}
.article-meta {
    display: flex;
    gap: 20px;
    color: #aaa;
}
.article-cover {
    margin-top: -90px;
}
.article-cover img {
    width: 100%;
    max-height: 620px;
    object-fit: cover;
    border-radius: 22px;
    box-shadow: var(--shadow);
}
.article-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 70px;
    padding-top: 70px;
    padding-bottom: 90px;
}
.article-content {
    font-size: 1.12rem;
}
.article-content h2 {
    font-size: 2rem;
    margin-top: 2.3em;
}
.article-content img {
    border-radius: 14px;
}
.article-gallery {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: 40px;
}
.article-gallery figure {
    margin: 0;
}
.article-gallery figcaption {
    color: #777;
    font-size: 0.9rem;
}
.article-aside {
    position: relative;
}
.aside-card {
    position: sticky;
    top: 105px;
    background: #f4f4f2;
    padding: 28px;
    border-radius: 16px;
}
.aside-card h2 {
    font-size: 1.7rem;
}
.site-footer {
    background: #101010;
    color: #fff;
    padding: 60px 0 20px;
}
.footer-grid {
    display: grid;
    grid-template-columns: 1.4fr repeat(3, 1fr);
    gap: 50px;
}
.footer-brand img {
    width: 170px;
    margin-bottom: 20px;
}
.footer-grid h2 {
    font-size: 0.9rem;
    text-transform: uppercase;
    color: #aaa;
}
.footer-grid a,
.footer-grid span {
    display: block;
    color: #bbb;
    margin: 8px 0;
    font-size: 0.92rem;
}
.footer-grid a:hover {
    color: #fff;
}
.footer-bottom {
    border-top: 1px solid #2b2b2b;
    margin-top: 45px;
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
    color: #777;
    font-size: 0.88rem;
}
.footer-bottom div {
    display: flex;
    gap: 20px;
}
.empty-panel {
    padding: 40px;
    border: 1px dashed #ccc;
    border-radius: 16px;
    text-align: center;
    color: #777;
}
.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: 0.6s;
}
.reveal.is-visible {
    opacity: 1;
    transform: none;
}
@media (max-width: 900px) {
    .nav-cta {
        display: none;
    }
    .nav-toggle {
        display: block;
        margin-left: auto;
    }
    .main-nav {
        display: none;
        position: absolute;
        top: 76px;
        left: 0;
        right: 0;
        background: #111;
        padding: 24px;
        flex-direction: column;
        align-items: flex-start;
    }
    .main-nav.is-open {
        display: flex;
    }
    .hero-grid,
    .inner-hero-grid,
    .local-panel,
    .article-layout {
        grid-template-columns: 1fr;
    }
    .hero-grid {
        padding-top: 55px;
    }
    .hero-stage {
        height: 330px;
    }
    .trust-strip {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    .service-grid,
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .benefit-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .benefit-grid > div {
        border: 0;
        border-bottom: 1px solid var(--line);
    }
    .review-panel {
        grid-template-columns: 1fr;
    }
    .process-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }
    .process-grid:before {
        display: none;
    }
    .feature-row {
        grid-template-columns: repeat(2, 1fr);
    }
    .footer-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 600px) {
    .shell {
        width: min(100% - 24px, 1180px);
    }
    .hero-grid,
    .inner-hero-grid {
        min-height: auto;
        padding: 55px 0;
    }
    .hero h1,
    .inner-hero h1,
    .compact-hero h1 {
        font-size: 3.2rem;
    }
    .hero-actions,
    .cta-panel,
    .section-heading {
        align-items: stretch;
        flex-direction: column;
    }
    .hero-actions .button {
        width: 100%;
    }
    .trust-strip {
        grid-template-columns: 1fr 1fr;
    }
    .service-grid,
    .project-grid,
    .benefit-grid,
    .feature-row,
    .process-grid,
    .footer-grid {
        grid-template-columns: 1fr;
    }
    .project-media {
        height: 210px;
    }
    .section {
        padding: 65px 0;
    }
    .review-panel,
    .cta-panel,
    .local-panel > div:first-child {
        padding: 28px;
    }
    .article-gallery {
        grid-template-columns: 1fr;
    }
    .footer-bottom {
        flex-direction: column;
        gap: 15px;
    }
    .filter-bar label {
        margin-left: 0;
        width: 100%;
    }
    .filter-bar input {
        width: 100%;
    }
    .technical-visual,
    .browser-mock,
    .learning-visual {
        height: 310px;
    }
}
.contact-new-grid {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 30px;
    align-items: start;
}
.contact-new-info,
.contact-new-form {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 36px;
    background: #fff;
}
.contact-new-info h2,
.contact-new-form h2 {
    font-size: 2rem;
    line-height: 1.1;
    margin-top: 0;
}
.contact-new-info > p {
    color: var(--muted);
}
.contact-detail {
    padding: 18px 0;
    border-bottom: 1px solid var(--line);
}
.contact-detail b,
.contact-detail a,
.contact-detail span {
    display: block;
}
.contact-detail a,
.contact-detail span {
    color: var(--muted);
}
.contact-map-new {
    height: 290px;
    margin-top: 25px;
    border-radius: 12px;
    overflow: hidden;
}
.raugui-form label {
    display: block;
    font-weight: 700;
    margin-bottom: 6px;
}
.raugui-form input,
.raugui-form textarea,
.raugui-form select {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 9px;
    padding: 13px 14px;
    font: inherit;
    background: #fafafa;
}
.raugui-form textarea {
    min-height: 170px;
    resize: vertical;
}
.raugui-form > div,
.form-grid > div {
    margin-bottom: 18px;
}
.form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 16px;
}
.captcha-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 16px;
    background: var(--soft);
    border-radius: 10px;
}
.captcha-row b,
.captcha-row span {
    display: block;
}
.captcha-row input {
    max-width: 100px;
    background: #fff;
}
.form-submit {
    width: 100%;
    border: 0;
    cursor: pointer;
}
.flash {
    padding: 14px;
    border-radius: 9px;
    margin-bottom: 18px;
}
.flash-success {
    background: #edf7ef;
    color: #236b31;
}
.flash-error {
    background: #fff0ee;
    color: #9b1d10;
}
@media (max-width: 900px) {
    .contact-new-grid {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 600px) {
    .form-grid {
        grid-template-columns: 1fr;
    }
    .contact-new-info,
    .contact-new-form {
        padding: 24px;
    }
}

/* Illustrations concrètes des pages de service */
.scene-toolbar {
    height: 42px;
    border-bottom: 1px solid #333;
    padding: 13px 15px;
    display: flex;
    align-items: center;
    gap: 7px;
    color: #a9a9a9;
    font-size: 0.72rem;
    font-weight: 700;
}
.scene-toolbar i {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #666;
}
.scene-toolbar span {
    margin-left: 8px;
}
.workbench-window {
    position: absolute;
    inset: 40px 20px 40px 0;
    border: 1px solid #444;
    border-radius: 20px;
    background: linear-gradient(145deg, #242424, #0b0b0b);
    box-shadow: 0 40px 90px rgba(0, 0, 0, 0.55);
    overflow: hidden;
    z-index: 2;
}
.workbench-scene {
    height: calc(100% - 42px);
    position: relative;
}
.workbench-svg {
    width: 100%;
    height: 100%;
}
.scene-surface {
    fill: #282828;
}
.scene-screen,
.scene-base {
    fill: #141414;
    stroke: #e8e8e8;
    stroke-width: 3;
}
.scene-screen-inner {
    fill: #202020;
    stroke: #444;
}
.scene-chart {
    fill: none;
    stroke: #d52c1e;
    stroke-width: 5;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.scene-chart-dot {
    fill: #fff;
    stroke: #d52c1e;
    stroke-width: 4;
}
.scene-keyboard {
    fill: #333;
    stroke: #777;
}
.scene-tools path,
.scene-tools circle {
    fill: none;
    stroke: #f4f4f4;
    stroke-width: 8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.scene-parts rect {
    fill: #8c1f13;
    stroke: #e8e8e8;
    stroke-width: 2;
}
.scene-parts path {
    fill: none;
    stroke: #fff;
    stroke-width: 3;
}
.scene-status {
    position: absolute;
    background: #fff;
    color: #111;
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 0.7rem;
    font-weight: 800;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}
.scene-status span {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #36a566;
    margin-right: 6px;
}
.scene-status-ok {
    left: 8%;
    top: 16%;
}
.scene-status-temp {
    right: 5%;
    bottom: 12%;
}

.learning-desk {
    background: linear-gradient(145deg, #1e1e1e, #0d0d0d);
    overflow: visible;
}
.training-monitor {
    position: absolute;
    left: 11%;
    right: 11%;
    top: 10%;
    height: 61%;
    border: 2px solid #555;
    border-radius: 13px;
    background: #171717;
    overflow: hidden;
    box-shadow: 0 24px 45px rgba(0, 0, 0, 0.45);
}
.training-screen {
    height: calc(100% - 42px);
    display: grid;
    grid-template-columns: 45px 1fr;
    background: #f5f5f5;
}
.training-sidebar {
    background: #252525;
    padding: 13px 9px;
}
.training-sidebar span {
    display: block;
    height: 9px;
    border-radius: 3px;
    background: #777;
    margin-bottom: 12px;
}
.training-sheet {
    padding: 14px;
    position: relative;
}
.sheet-title {
    font-size: 0.65rem;
    font-weight: 800;
    color: #222;
    margin-bottom: 8px;
}
.sheet-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 3px;
    width: 65%;
}
.sheet-grid i {
    height: 15px;
    background: #fff;
    border: 1px solid #d8d8d8;
}
.sheet-grid i:nth-child(6n + 2),
.sheet-grid i:nth-child(7n + 1) {
    background: #f1b1aa;
}
.sheet-chart {
    position: absolute;
    right: 14px;
    bottom: 15px;
    width: 27%;
    height: 45%;
    display: flex;
    align-items: end;
    gap: 5px;
    border-left: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
    padding: 4px;
}
.sheet-chart b {
    flex: 1;
    background: #c62b1d;
}
.sheet-chart b:nth-child(1) {
    height: 35%;
}
.sheet-chart b:nth-child(2) {
    height: 68%;
}
.sheet-chart b:nth-child(3) {
    height: 50%;
}
.sheet-chart b:nth-child(4) {
    height: 86%;
}
.training-keyboard {
    position: absolute;
    left: 21%;
    right: 21%;
    top: 72%;
    height: 12%;
    background: linear-gradient(#d4d4d4, #888);
    clip-path: polygon(8% 0, 92% 0, 100% 100%, 0 100%);
    border-radius: 0 0 13px 13px;
}
.training-note {
    position: absolute;
    right: 4%;
    bottom: 3%;
    background: #fff;
    color: #111;
    padding: 11px 14px;
    border-radius: 9px;
    font-size: 0.69rem;
    line-height: 1.2;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
}
.training-note strong {
    color: #8c1f13;
}
.learning-desk .lesson {
    padding: 8px 11px;
    font-size: 0.7rem;
    border: 1px solid #ddd;
}
.learning-desk .l1 {
    left: 2%;
    top: 12%;
}
.learning-desk .l2 {
    right: 2%;
    top: 16%;
}
.learning-desk .l3 {
    left: 4%;
    bottom: 9%;
}
.learning-desk .l4 {
    right: 3%;
    bottom: 27%;
}

.repair-bench {
    display: block;
    background: linear-gradient(145deg, #181818, #0b0b0b);
}
.repair-svg {
    width: 100%;
    height: 100%;
}
.repair-mat {
    fill: #191919;
    stroke: #3e3e3e;
}
.repair-shell {
    fill: #242424;
    stroke: #777;
    stroke-width: 2;
}
.repair-board {
    fill: #192820;
    stroke: #537362;
    stroke-width: 2;
}
.repair-circuit {
    fill: none;
    stroke: #8fae9c;
    stroke-width: 4;
}
.repair-cpu {
    fill: #292929;
    stroke: #d52c1e;
    stroke-width: 3;
}
.repair-svg text {
    fill: #fff;
    font-size: 17px;
    font-weight: 900;
}
.repair-ram {
    fill: #246548;
    stroke: #99c6a8;
}
.repair-ssd {
    fill: #292929;
    stroke: #ddd;
    stroke-width: 2;
}
.repair-fan {
    fill: #111;
    stroke: #777;
    stroke-width: 3;
}
.repair-fan-blade {
    fill: none;
    stroke: #aaa;
    stroke-width: 7;
    stroke-linecap: round;
}
.repair-tools path,
.repair-tools circle {
    fill: none;
    stroke: #eee;
    stroke-width: 8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.repair-label {
    position: absolute;
    background: #fff;
    color: #111;
    padding: 7px 10px;
    border-radius: 7px;
    font-size: 0.68rem;
    font-weight: 900;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}
.label-ssd {
    left: 55%;
    top: 20%;
}
.label-ram {
    left: 13%;
    bottom: 27%;
}
.repair-result {
    position: absolute;
    left: 7%;
    right: 7%;
    bottom: 5%;
    padding: 10px 13px;
    border: 1px solid #3c3c3c;
    background: rgba(10, 10, 10, 0.85);
    border-radius: 9px;
    color: #ccc;
    font-size: 0.7rem;
}
.repair-result span {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #42b36d;
    margin-right: 7px;
}

.browser-project {
    overflow: visible;
    background: #fff;
}
.browser-bar span {
    color: #aaa;
    font-size: 0.68rem;
    margin-left: 10px;
}
.browser-project-page {
    height: calc(100% - 42px);
    padding: 22px 28px;
    background: linear-gradient(135deg, #fff 68%, #f3e8e6);
    position: relative;
    overflow: hidden;
}
.browser-project-page header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.62rem;
}
.browser-project-page header b {
    letter-spacing: 0.06em;
}
.browser-project-page nav {
    display: flex;
    gap: 15px;
    color: #666;
}
.project-hero-copy {
    width: 58%;
    padding-top: 42px;
}
.project-hero-copy small {
    color: #c62b1d;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: 0.08em;
}
.project-hero-copy h3 {
    font-size: 1.85rem;
    line-height: 1.02;
    margin: 10px 0;
}
.project-hero-copy p {
    font-size: 0.72rem;
    color: #666;
}
.project-hero-copy button {
    border: 0;
    background: #c62b1d;
    color: #fff;
    padding: 9px 13px;
    border-radius: 4px;
    font-weight: 800;
}
.project-dashboard {
    position: absolute;
    right: 25px;
    top: 78px;
    width: 35%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}
.dashboard-photo {
    grid-column: 1/-1;
    height: 105px;
    background: linear-gradient(145deg, #333, #111);
    border-radius: 9px;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 0.65rem;
    font-weight: 800;
}
.dashboard-photo:before {
    content: "</>";
    position: absolute;
    font-size: 2rem;
    color: #d52c1e;
}
.dashboard-photo span {
    margin-top: 48px;
}
.dashboard-kpi {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 9px;
    display: flex;
    flex-direction: column;
}
.dashboard-kpi strong {
    font-size: 1.15rem;
    color: #c62b1d;
}
.dashboard-kpi small {
    font-size: 0.55rem;
    color: #666;
}
.device-phone {
    position: absolute;
    right: -18px;
    bottom: -18px;
    width: 105px;
    height: 185px;
    border: 7px solid #1c1c1c;
    border-radius: 19px;
    background: #fff;
    box-shadow: 0 18px 35px rgba(0, 0, 0, 0.28);
    padding: 12px 8px;
}
.device-phone div {
    height: 100%;
    background: #f5f5f3;
    padding: 10px 7px;
}
.device-phone span {
    display: block;
    width: 35px;
    height: 4px;
    background: #c62b1d;
    margin-bottom: 18px;
}
.device-phone b {
    font-size: 0.57rem;
}
.device-phone i {
    display: block;
    height: 22px;
    background: #fff;
    border: 1px solid #ddd;
    margin-top: 8px;
    border-radius: 4px;
}

@media (max-width: 600px) {
    .workbench-window {
        inset: 20px 0 25px;
    }
    .scene-status-temp {
        display: none;
    }
    .training-monitor {
        left: 8%;
        right: 8%;
    }
    .training-note {
        display: none;
    }
    .learning-desk .l4 {
        bottom: 12%;
    }
    .repair-label {
        display: none;
    }
    .repair-result {
        font-size: 0.62rem;
    }
    .browser-project-page {
        padding: 18px;
    }
    .project-hero-copy {
        width: 70%;
        padding-top: 28px;
    }
    .project-hero-copy h3 {
        font-size: 1.35rem;
    }
    .project-dashboard {
        right: 13px;
        top: 75px;
        width: 29%;
    }
    .dashboard-photo {
        height: 75px;
    }
    .device-phone {
        width: 80px;
        height: 145px;
    }
    .browser-project-page nav {
        display: none;
    }
}
/* =========================================================
   CARTE GÉOGRAPHIQUE — COMINES / MOUSCRON / TOURNAI
   ========================================================= */

.map-art-geographic {
    position: relative;
    min-height: 500px;
    overflow: hidden;
    isolation: isolate;
    background:
        linear-gradient(rgba(255, 255, 255, 0.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.018) 1px, transparent 1px),
        radial-gradient(
            circle at 52% 40%,
            rgba(218, 45, 31, 0.19) 0,
            rgba(218, 45, 31, 0.08) 18%,
            transparent 43%
        ),
        #181818;
    background-size:
        48px 48px,
        48px 48px,
        auto,
        auto;
}

/*
 * Positions basées sur la géographie réelle :
 *
 * Comines : à l'ouest et légèrement au nord
 * Mouscron : point central
 * Tournai : à l'est et nettement au sud
 */

.map-city {
    position: absolute;
    z-index: 6;
    display: flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    white-space: nowrap;
}

.map-city strong {
    font-size: 0.95rem;
    font-weight: 800;
    line-height: 1;
}

.map-city-dot {
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border: 2px solid rgba(255, 255, 255, 0.7);
    border-radius: 50%;
    background: #d92d20;
    box-shadow:
        0 0 0 5px rgba(217, 45, 32, 0.12),
        0 0 18px rgba(217, 45, 32, 0.65);
}

/* Comines est à gauche et légèrement au-dessus de Mouscron. */
.map-city-comines {
    top: 24%;
    left: 17%;
}

/* Mouscron sert de centre visuel et géographique. */
.map-city-mouscron {
    top: 43%;
    left: 55%;
    flex-direction: column;
    gap: 7px;
    transform: translate(-50%, -50%);
    text-align: center;
}

.map-city-mouscron strong {
    font-size: 1.05rem;
}

.map-city-mouscron small {
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.72rem;
    font-weight: 600;
}

.map-city-marker {
    position: relative;
    z-index: 3;
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 50%;
    background: #d92d20;
    box-shadow:
        0 0 0 8px rgba(217, 45, 32, 0.12),
        0 0 32px rgba(217, 45, 32, 0.65);
}

.map-city-marker svg {
    width: 24px;
    height: 24px;
    overflow: visible;
}

.map-city-marker path {
    fill: #fff;
}

.map-city-marker circle {
    fill: #d92d20;
}

/* Tournai se trouve à droite et beaucoup plus bas que Mouscron. */
.map-city-tournai {
    top: 79%;
    left: 72%;
}

/* Cercles centrés précisément sur Mouscron. */

.map-radius {
    position: absolute;
    z-index: 2;
    top: 43%;
    left: 55%;
    border: 1px solid rgba(217, 45, 32, 0.65);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.map-radius-small {
    width: 150px;
    height: 150px;
}

.map-radius-medium {
    width: 285px;
    height: 285px;
}

.map-radius-large{
    width:560px;
    height:560px;
    border-color:rgba(217,45,32,.38);
}

/* Tracé décoratif évoquant les axes routiers sans fausser les positions. */

.map-road {
    position: absolute;
    z-index: 1;
    height: 3px;
    border-radius: 999px;
    opacity: 0.18;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.9),
        transparent
    );
    transform-origin: center;
}

.map-road-a {
    top: 42%;
    left: 2%;
    width: 96%;
    transform: rotate(-9deg);
}

.map-road-b {
    top: 55%;
    left: 3%;
    width: 95%;
    transform: rotate(36deg);
}

.map-road-c {
    top: 57%;
    left: 32%;
    width: 70%;
    transform: rotate(92deg);
}

.map-city-pulse {
    position: absolute;
    z-index: -1;
    top: 14px;
    left: 50%;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    background: rgba(217, 45, 32, 0.14);
    transform: translate(-50%, -50%);
    animation: mapCityPulse 2.8s ease-out infinite;
}

@keyframes mapCityPulse {
    0% {
        opacity: 0.75;
        transform: translate(-50%, -50%) scale(0.55);
    }

    75%,
    100% {
        opacity: 0;
        transform: translate(-50%, -50%) scale(1.5);
    }
}

@media (max-width: 900px) {
    .local-panel {
        grid-template-columns: 1fr;
    }

    .map-art-geographic {
        width: 100%;
        min-height: 500px;
        overflow: hidden;
        margin-top: 0;
    }

    .map-radius {
        top: 43%;
        left: 50%;
    }

    .map-city-mouscron {
        top: 43%;
        left: 50%;
    }

    .map-city-comines {
        top: 17%;
        left: 8%;
    }

    .map-city-tournai {
        top: 82%;
        left: 70%;
    }

    .map-radius-small {
        width: 120px;
        height: 120px;
    }

    .map-radius-medium {
        width: 240px;
        height: 240px;
    }

    .map-radius-large {
        width: 460px;
        height: 460px;
    }
}

@media (max-width: 600px) {
    .local-panel {
        display: grid;
        grid-template-columns: 1fr;
    }

    .map-art-geographic {
        width: 100%;
        height: 560px;
        min-height: 560px;
        overflow: hidden;
        margin-top: 0;
    }

    /*
     * Centre commun des trois cercles et de Mouscron
     */
    .map-radius,
    .map-city-mouscron {
        top: 48%;
        left: 50%;
    }

    .map-city strong {
        font-size: 0.8rem;
    }

    .map-city-mouscron strong {
        font-size: 0.92rem;
    }

    .map-city-mouscron small {
        display: none;
    }

    /*
     * Comines reste à gauche et légèrement au-dessus de Mouscron.
     * Le marqueur se trouve maintenant à l'intérieur du grand cercle.
     */
    .map-city-comines {
        top: 27%;
        left: 4%;
    }

    /*
     * Tournai reste au sud-est de Mouscron.
     */
    .map-city-tournai {
        top: 82%;
        left: 69%;
    }

    .map-radius-small {
        width: 110px;
        height: 110px;
    }

    .map-radius-medium {
        width: 240px;
        height: 240px;
    }

    /*
     * Le cercle s'adapte automatiquement à la largeur mobile.
     */
    .map-radius-large {
        width: calc(100% - 24px);
        height: auto;
        aspect-ratio: 1 / 1;
        max-width: none;
    }

    .map-road-a {
        top: 48%;
    }

    .map-road-b {
        top: 58%;
    }

    .map-road-c {
        top: 61%;
    }
}

@media (max-width: 390px) {
    .map-art-geographic {
        height: 520px;
        min-height: 520px;
    }

    .map-city-comines {
        top: 28%;
        left: 3%;
    }

    .map-city-tournai {
        top: 81%;
        left: 66%;
    }

    .map-radius-large {
        width: calc(100% - 12px);
    }
}

/* =========================================================
   IDENTITÉ RAUGUI DANS LE MENU
   ========================================================= */

.site-header .brand {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
    color: inherit;
    text-decoration: none;
}

.site-header .brand-logo {
    display: block;
    width: 58px;
    height: 58px;
    object-fit: contain;
    transition:
        transform 0.35s ease,
        filter 0.35s ease;
}

.brand-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    min-width: 0;
    line-height: 1;
}

.brand-name {
    position: relative;
    display: inline-block;
    color: #ffffff;
    font-size: 1.38rem;
    font-weight: 900;
    letter-spacing: 0.055em;
    line-height: 1;
    text-transform: uppercase;
    transition: color 0.3s ease;
}

.brand-name::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -5px;
    left: 0;
    height: 2px;
    border-radius: 999px;
    background: #d92d20;
    transform: scaleX(0.28);
    transform-origin: left;
    transition: transform 0.35s ease;
}

.brand-activity {
    margin-top: 11px;
    color: #d92d20;
    font-size: 0.69rem;
    font-weight: 800;
    letter-spacing: 0.32em;
    line-height: 1;
    text-transform: uppercase;
}

.brand-slogan {
    margin-top: 7px;
    color: rgba(255, 255, 255, 0.54);
    font-size: 0.68rem;
    font-weight: 500;
    letter-spacing: 0.015em;
    line-height: 1.2;
    white-space: nowrap;
    transition: color 0.3s ease;
}

.site-header .brand:hover .brand-logo {
    transform: rotate(-3deg) scale(1.04);
    filter: drop-shadow(0 0 12px rgba(217, 45, 32, 0.28));
}

.site-header .brand:hover .brand-name {
    color: #d92d20;
}

.site-header .brand:hover .brand-name::after {
    transform: scaleX(1);
}

.site-header .brand:hover .brand-slogan {
    color: rgba(255, 255, 255, 0.88);
}

@media (max-width: 1180px) {
    .site-header .brand {
        gap: 11px;
    }

    .site-header .brand-logo {
        width: 50px;
        height: 50px;
    }

    .brand-name {
        font-size: 1.15rem;
    }

    .brand-activity {
        font-size: 0.58rem;
        letter-spacing: 0.25em;
    }

    .brand-slogan {
        display: none;
    }
}

@media (max-width: 760px) {
    .site-header .brand {
        gap: 9px;
    }

    .site-header .brand-logo {
        width: 45px;
        height: 45px;
    }

    .brand-name {
        font-size: 0.94rem;
    }

    .brand-name::after {
        bottom: -4px;
    }

    .brand-activity {
        margin-top: 9px;
        font-size: 0.5rem;
        letter-spacing: 0.19em;
    }
}

@media (max-width: 390px) {
    .site-header .brand-copy {
        display: none;
    }

    .site-header .brand-logo {
        width: 48px;
        height: 48px;
    }
}
/* =========================================================
   AVIS GOOGLE AUTOMATIQUES
   ========================================================= */
.google-reviews-section {
    background: #111;
    color: #fff;
    overflow: hidden;
}
.google-reviews-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 48px;
    margin-bottom: 38px;
}
.google-reviews-heading h2 {
    margin: 9px 0 10px;
    font-size: clamp(2.2rem, 4vw, 4.2rem);
    line-height: 0.98;
}
.google-reviews-heading p {
    max-width: 650px;
    margin: 0;
    color: #aaa;
}
.google-rating-summary {
    display: flex;
    align-items: center;
    gap: 17px;
    flex-shrink: 0;
    padding: 18px 22px;
    border: 1px solid #333;
    border-radius: 16px;
    background: #191919;
}
.google-rating-summary strong {
    display: block;
    font-size: 1.45rem;
    line-height: 1;
}
.google-rating-summary small {
    color: #aaa;
}
.google-reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.google-review-card {
    display: flex;
    min-height: 290px;
    flex-direction: column;
    padding: 26px;
    border: 1px solid #303030;
    border-radius: var(--radius);
    background: #191919;
}
.google-review-author {
    display: flex;
    align-items: center;
    gap: 13px;
}
.google-review-author img,
.google-review-avatar {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    border-radius: 50%;
    object-fit: cover;
}
.google-review-avatar {
    display: grid;
    place-items: center;
    background: #fff;
    color: #111;
    font-weight: 900;
}
.google-review-author a,
.google-review-author strong {
    display: block;
    font-weight: 800;
}
.google-review-author a:hover {
    color: var(--red2);
}
.google-review-author small {
    display: block;
    color: #888;
}
.google-review-stars {
    margin: 19px 0 13px;
    letter-spacing: 3px;
    color: #555;
}
.google-review-stars .is-filled {
    color: #ffb400;
}
.google-review-card blockquote {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: #ddd;
    font-size: 1.02rem;
    line-height: 1.65;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
}
.google-reviews-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 30px;
}
.button-ghost-dark {
    border-color: #444;
    color: #fff;
}
.button-ghost-dark:hover {
    border-color: #fff;
    background: #fff;
    color: #111;
}

@media (max-width: 900px) {
    .google-reviews-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 24px;
    }
    .google-reviews-grid {
        grid-template-columns: 1fr;
    }
    .google-review-card {
        min-height: 0;
    }
}

@media (max-width: 600px) {
    .google-rating-summary {
        width: 100%;
    }
    .google-reviews-actions {
        align-items: stretch;
        flex-direction: column;
    }
    .google-reviews-actions .button {
        width: 100%;
    }
}

/* Avis Google manuels : aucune API Google n'est utilisée. */
.google-reviews-manual {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    margin-top: 32px;
    padding: 28px 30px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.04);
}

.google-reviews-manual__label {
    display: block;
    margin-bottom: 8px;
    color: #ffffff;
    font-size: 1rem;
    font-weight: 800;
}

.google-reviews-manual p {
    max-width: 720px;
    margin: 0;
}

.google-rating-summary {
    text-decoration: none;
}

@media (max-width: 760px) {
    .google-reviews-manual {
        align-items: flex-start;
        flex-direction: column;
        padding: 24px;
    }

    .google-reviews-manual .button {
        width: 100%;
        justify-content: center;
    }
}

/* =========================================================
   PAGE À PROPOS
   ========================================================= */
.about-hero {
    position: relative;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 78% 38%, rgba(198, 43, 29, 0.18), transparent 28%),
        linear-gradient(135deg, #111 0%, #181818 55%, #0c0c0c 100%);
}
.about-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0.28;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
    background-size: 52px 52px;
}
.about-hero-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    align-items: center;
    gap: 90px;
    min-height: 650px;
    padding: 95px 0;
}
.about-hero-copy h1 {
    max-width: 800px;
    margin: 0 0 26px;
    font-size: clamp(3.5rem, 6.5vw, 6.6rem);
    line-height: .91;
    letter-spacing: -.058em;
}
.about-hero-copy h1 strong { color: #df3323; }
.about-lead {
    max-width: 680px;
    margin: 0;
    color: #d0d0d0;
    font-size: 1.18rem;
}
.about-hero-actions {
    display: flex;
    align-items: center;
    gap: 24px;
    margin-top: 34px;
}
.about-inline-link {
    color: #c8c8c8;
    font-weight: 800;
    transition: color .25s ease;
}
.about-inline-link:hover { color: #fff; }
.about-signature-card {
    position: relative;
    overflow: hidden;
    min-height: 430px;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 24px;
    background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.025));
    box-shadow: 0 45px 100px rgba(0,0,0,.4);
    backdrop-filter: blur(14px);
}
.about-signature-card::after {
    content: "";
    position: absolute;
    right: -110px;
    bottom: -120px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(198,43,29,.42), transparent 67%);
}
.about-signature-top,
.about-signature-bottom {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    gap: 18px;
}
.about-signature-top {
    color: #a9a9a9;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.about-monogram {
    position: relative;
    z-index: 2;
    display: grid;
    min-height: 290px;
    place-items: center;
}
.about-monogram::before,
.about-monogram::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(198,43,29,.35);
    border-radius: 50%;
}
.about-monogram::before { width: 245px; height: 245px; }
.about-monogram::after { width: 185px; height: 185px; }
.about-monogram img {
    position: relative;
    z-index: 2;
    width: 160px;
    filter: drop-shadow(0 20px 35px rgba(0,0,0,.45));
}
.about-signature-bottom {
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.1);
}
.about-signature-bottom div { display: flex; flex-direction: column; }
.about-signature-bottom small { color: #888; }
.about-signature-bottom strong { margin-top: 4px; font-size: .95rem; }
.about-intro-grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 100px;
    align-items: start;
}
.about-kicker {
    color: var(--red2);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.about-statement h2 {
    margin: 13px 0 0;
    font-size: clamp(3rem, 6vw, 5.8rem);
    line-height: .92;
    letter-spacing: -.055em;
}
.about-intro-text {
    padding-top: 8px;
    color: #444;
    font-size: 1.2rem;
}
.about-intro-text p:first-child { margin-top: 0; }
.about-expertise-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}
.about-expertise-card {
    position: relative;
    min-height: 390px;
    padding: 38px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 22px;
    background: #fff;
}
.about-expertise-dark {
    color: #fff;
    border-color: #252525;
    background: #141414;
}
.about-card-number {
    position: absolute;
    top: 24px;
    right: 28px;
    color: #d7d7d7;
    font-size: 4rem;
    font-weight: 900;
    line-height: 1;
}
.about-expertise-dark .about-card-number { color: #2c2c2c; }
.about-card-icon {
    display: grid;
    width: 76px;
    height: 76px;
    place-items: center;
    margin-bottom: 75px;
    border-radius: 17px;
    background: #f4f4f2;
}
.about-expertise-dark .about-card-icon { background: #222; }
.about-card-icon svg {
    width: 46px;
    height: 46px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.about-card-icon .accent { stroke: var(--red2); }
.about-card-icon .accent-fill { fill: var(--red2); stroke: none; }
.about-expertise-card h3 { margin: 0 0 14px; font-size: 1.75rem; }
.about-expertise-card p { max-width: 530px; margin-bottom: 0; color: var(--muted); }
.about-expertise-dark p { color: #b9b9b9; }
.about-timeline {
    position: relative;
    max-width: 980px;
    margin-left: auto;
}
.about-timeline::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 135px;
    width: 1px;
    background: var(--line);
}
.about-timeline-item {
    display: grid;
    grid-template-columns: 135px 1fr;
    gap: 42px;
    padding: 0 0 55px;
}
.about-timeline-item:last-child { padding-bottom: 0; }
.about-timeline-year {
    position: relative;
    color: var(--red);
    font-weight: 900;
    text-align: right;
    padding-right: 30px;
}
.about-timeline-year::after {
    content: "";
    position: absolute;
    top: 6px;
    right: -7px;
    width: 13px;
    height: 13px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: var(--red2);
    box-shadow: 0 0 0 1px var(--red2);
}
.about-timeline-item h3 { margin: -4px 0 8px; font-size: 1.55rem; }
.about-timeline-item p { max-width: 650px; margin: 0; color: var(--muted); }
.about-values-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 22px;
    background: var(--line);
}
.about-value-card {
    min-height: 275px;
    padding: 36px;
    background: #fff;
}
.about-value-card > span {
    display: inline-block;
    color: var(--red2);
    font-weight: 900;
    margin-bottom: 50px;
}
.about-value-card h3 { margin: 0 0 12px; font-size: 1.55rem; }
.about-value-card p { max-width: 520px; margin: 0; color: var(--muted); }
.about-difference-section { background: #111; color: #fff; }
.about-difference-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 75px;
    align-items: center;
}
.about-difference-copy h2 {
    margin: 0 0 22px;
    font-size: clamp(2.5rem, 4.5vw, 4.5rem);
    line-height: .98;
    letter-spacing: -.045em;
}
.about-difference-copy p { color: #b9b9b9; }
.about-difference-copy .text-link { display: inline-block; margin-top: 15px; color: #e54837; }
.about-comparison {
    overflow: hidden;
    border: 1px solid #333;
    border-radius: 18px;
    background: #171717;
}
.about-comparison > div {
    display: grid;
    grid-template-columns: .75fr 1fr 1fr;
    gap: 20px;
    padding: 18px 22px;
    border-bottom: 1px solid #303030;
}
.about-comparison > div:last-child { border-bottom: 0; }
.about-comparison-head {
    background: #202020;
    color: #999;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.about-comparison-head::before { content: ""; }
.about-comparison strong { color: #fff; }
.about-comparison span { color: #aaa; }
.about-comparison > div span:first-of-type { color: #fff; font-weight: 700; }
.about-final-cta { overflow: hidden; }
.about-final-cta .eyebrow { margin-bottom: 10px; }

@media (max-width: 1050px) {
    .about-hero-grid { gap: 50px; }
    .about-difference-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
    .about-hero-grid,
    .about-intro-grid { grid-template-columns: 1fr; }
    .about-hero-grid { min-height: auto; padding: 75px 0; }
    .about-signature-card { max-width: 600px; width: 100%; }
    .about-intro-grid { gap: 40px; }
}
@media (max-width: 700px) {
    .about-expertise-grid,
    .about-values-grid { grid-template-columns: 1fr; }
    .about-hero-copy h1 { font-size: 3.65rem; }
    .about-hero-actions { align-items: stretch; flex-direction: column; }
    .about-hero-actions .button { width: 100%; }
    .about-signature-card { min-height: 370px; }
    .about-monogram { min-height: 230px; }
    .about-monogram::before { width: 200px; height: 200px; }
    .about-monogram::after { width: 150px; height: 150px; }
    .about-monogram img { width: 125px; }
    .about-timeline { margin-left: 0; }
    .about-timeline::before { left: 10px; }
    .about-timeline-item { grid-template-columns: 1fr; gap: 10px; padding-left: 38px; }
    .about-timeline-year { text-align: left; padding-right: 0; }
    .about-timeline-year::after { left: -34px; right: auto; }
    .about-comparison > div { grid-template-columns: 1fr; gap: 7px; }
    .about-comparison-head { display: none !important; }
    .about-comparison > div span::before {
        display: block;
        margin-bottom: 2px;
        color: #777;
        font-size: .66rem;
        font-weight: 900;
        letter-spacing: .06em;
        text-transform: uppercase;
    }
    .about-comparison > div span:first-of-type::before { content: "Avec Raugui"; }
    .about-comparison > div span:last-of-type::before { content: "Approche standardisée"; }
}
@media (max-width: 420px) {
    .about-hero-copy h1 { font-size: 3.05rem; }
    .about-signature-top { flex-direction: column; gap: 5px; }
    .about-signature-bottom { flex-direction: column; }
    .about-expertise-card,
    .about-value-card { padding: 28px; }
}

.footer-socials{display:flex;gap:8px;margin-top:12px}.footer-socials a{display:grid!important;place-items:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.15);border-radius:10px}.footer-socials a:hover{border-color:var(--accent);transform:translateY(-2px)}

/* Footer V2 */
.site-footer {
    position: relative;
    overflow: hidden;
    padding: 72px 0 24px;
    background:
        radial-gradient(circle at 10% 0%, rgba(140, 31, 19, .22), transparent 34%),
        #0d0d0e;
    color: #fff;
}
.site-footer::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);
}
.footer-main {
    position: relative;
    display: grid;
    grid-template-columns: minmax(280px, 1.5fr) repeat(3, minmax(150px, 1fr));
    gap: clamp(32px, 5vw, 72px);
}
.footer-identity { max-width: 390px; }
.footer-logo { display: inline-flex; margin-bottom: 20px; }
.footer-logo img { width: 185px; height: auto; }
.footer-slogan {
    margin: 0 0 10px;
    color: #fff;
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    font-weight: 700;
    line-height: 1.25;
}
.footer-description {
    margin: 0;
    color: #aaa;
    font-size: .96rem;
    line-height: 1.7;
}
.footer-column h2 {
    position: relative;
    margin: 5px 0 22px;
    color: #fff;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.footer-column h2::after {
    content: "";
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 10px;
    background: var(--accent, #8c1f13);
}
.footer-column > a,
.footer-column nav a {
    display: block;
    width: fit-content;
    margin: 0 0 11px;
    color: #aaa;
    font-size: .92rem;
    transition: color .2s ease, transform .2s ease;
}
.footer-column > a:hover,
.footer-column nav a:hover { color: #fff; transform: translateX(4px); }
.footer-contact > a:not(.footer-contact-button),
.footer-contact > p {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    width: 100%;
    margin: 0 0 13px;
    color: #aaa;
    font-size: .9rem;
    line-height: 1.5;
}
.footer-contact i { width: 16px; margin-top: 3px; color: #d05a4c; text-align: center; }
.footer-contact span { margin: 0; }
.footer-contact-button {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
    margin-top: 10px !important;
    padding: 11px 15px;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 10px;
    color: #fff !important;
    font-weight: 600;
}
.footer-contact-button:hover { border-color: #d05a4c; transform: translateY(-2px) !important; }
.footer-socials {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 24px;
}
.footer-socials a {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    width: auto !important;
    height: 40px !important;
    padding: 0 13px;
    margin: 0 !important;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 10px;
    color: #d0d0d0 !important;
    font-size: .82rem !important;
    transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}
.footer-socials a:hover {
    border-color: rgba(208,90,76,.8);
    background: rgba(140,31,19,.15);
    color: #fff !important;
    transform: translateY(-2px);
}
.footer-socials a span { display: inline; margin: 0; color: inherit; font-size: inherit; }
.footer-bottom {
    position: relative;
    align-items: center;
    margin-top: 58px;
    padding-top: 22px;
    border-top: 1px solid rgba(255,255,255,.09);
    color: #777;
}
.footer-bottom a { color: #888; }
.footer-bottom a:hover { color: #fff; }
@media (max-width: 1050px) {
    .footer-main { grid-template-columns: 1.4fr repeat(2, 1fr); }
    .footer-contact { grid-column: 2 / -1; }
}
@media (max-width: 760px) {
    .site-footer { padding-top: 54px; }
    .footer-main { grid-template-columns: 1fr 1fr; gap: 38px 28px; }
    .footer-identity { grid-column: 1 / -1; max-width: none; }
    .footer-contact { grid-column: 1 / -1; }
    .footer-bottom { align-items: flex-start; flex-direction: column; gap: 14px; }
    .footer-bottom div { flex-wrap: wrap; gap: 10px 18px; }
}
@media (max-width: 480px) {
    .footer-main { grid-template-columns: 1fr; }
    .footer-identity, .footer-contact { grid-column: auto; }
    .footer-socials a span { display: none; }
    .footer-socials a { width: 40px !important; padding: 0; justify-content: center; }
}

.service-icon {
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 28px;
}

.service-icon svg {
    width: 72px;
    height: 72px;
    display: block;
    stroke: #171717;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.service-icon svg .accent {
    stroke: var(--red2);
}

.service-icon svg .accent-fill {
    fill: var(--red2);
    stroke: var(--red2);
}

.service-card:hover .service-icon svg {
    transform: translateY(-3px);
}

.service-icon svg {
    transition: transform 0.3s ease;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUU7SUFDdkQseUJBQXlCLGFBQWEsRUFBRTtJQUN4QyxvQkFBb0Isc0JBQXNCLEVBQUUsVUFBVSxFQUFFLHVCQUF1QixFQUFFO0FBQ3JGOztBQUVBO0lBQ0ksV0FBVztJQUNYLFlBQVk7SUFDWixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHVCQUF1QjtJQUN2QixtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLGNBQWM7SUFDZCxlQUFlO0lBQ2YsZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixzQkFBc0I7QUFDMUI7O0FBRUE7SUFDSSxtQkFBbUI7QUFDdkI7O0FBRUE7SUFDSSxpQkFBaUI7SUFDakIsbUJBQW1CO0FBQ3ZCOztBQUVBO0lBQ0ksMkJBQTJCO0FBQy9COztBQUVBO0lBQ0ksK0JBQStCO0FBQ25DLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FwcC5jc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVNvdXJjZStTYW5zKzM6d2dodEA0MDA7NTAwOzYwMDs3MDA7ODAwOzkwMCZkaXNwbGF5PXN3YXBcIik7XG46cm9vdCB7XG4gICAgLS1yZWQ6ICM4YzFmMTM7XG4gICAgLS1yZWQyOiAjYzYyYjFkO1xuICAgIC0taW5rOiAjMTExO1xuICAgIC0taW5rMjogIzFkMWQxZDtcbiAgICAtLW11dGVkOiAjNjY2O1xuICAgIC0tbGluZTogI2U3ZTdlNztcbiAgICAtLXNvZnQ6ICNmNWY1ZjM7XG4gICAgLS13aGl0ZTogI2ZmZjtcbiAgICAtLXJhZGl1czogMThweDtcbiAgICAtLXNoYWRvdzogMCAxOHB4IDUwcHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbn1cbioge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5odG1sIHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyAzXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiB2YXIoLS1pbmspO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTU7XG59XG5pbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbmEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5zaGVsbCB7XG4gICAgd2lkdGg6IG1pbigxMTgwcHgsIGNhbGMoMTAwJSAtIDQwcHgpKTtcbiAgICBtYXJnaW46IGF1dG87XG59XG4uc2l0ZS1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDE2LCAxNiwgMTYsIDAuOTUpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cbi5uYXYtc2hlbGwge1xuICAgIGhlaWdodDogNzZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAyOHB4O1xufVxuLmJyYW5kIHtcbiAgICB3aWR0aDogMTUwcHg7XG59XG4uYnJhbmQgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA0OHB4O1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4ubWFpbi1uYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDI4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ubWFpbi1uYXYgYSB7XG4gICAgY29sb3I6ICNkZGQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1haW4tbmF2IGE6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgYm90dG9tOiAtMTBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWQyKTtcbiAgICB0cmFuc2l0aW9uOiAwLjI1cztcbn1cbi5tYWluLW5hdiBhOmhvdmVyOmFmdGVyLFxuLm1haW4tbmF2IGEuaXMtYWN0aXZlOmFmdGVyIHtcbiAgICByaWdodDogMDtcbn1cbi5tYWluLW5hdiBhLmlzLWFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgdHJhbnNpdGlvbjogMC4yNXM7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG4uYnV0dG9uLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLXJlZCksIHZhcigtLXJlZDIpKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjRweCByZ2JhKDE0MCwgMzEsIDE5LCAwLjI1KTtcbn1cbi5idXR0b24tZ2hvc3Qge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpO1xufVxuLm5hdi1jdGEge1xuICAgIHBhZGRpbmc6IDExcHggMTZweDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbn1cbi5uYXYtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIHdpZHRoOiA0MnB4O1xufVxuLm5hdi10b2dnbGUgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBtYXJnaW46IDdweCAwO1xufVxuLmhlcm8sXG4uaW5uZXItaGVybyB7XG4gICAgYmFja2dyb3VuZDogIzExMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmhlcm8tZ3JpZCxcbi5pbm5lci1oZXJvLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjA1ZnIgMC45NWZyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA3MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDU5MHB4O1xuICAgIHBhZGRpbmc6IDc1cHggMDtcbn1cbi5leWVicm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdmFyKC0tcmVkMik7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG59XG4uaGVybyBoMSxcbi5pbm5lci1oZXJvIGgxLFxuLmNvbXBhY3QtaGVybyBoMSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgzLjNyZW0sIDZ2dywgNi4ycmVtKTtcbiAgICBsaW5lLWhlaWdodDogMC45MjtcbiAgICBtYXJnaW46IDAgMCAyNHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNTVlbTtcbn1cbi5oZXJvIGgxIHN0cm9uZyxcbi5pbm5lci1oZXJvIGgxIHN0cm9uZyxcbi5jb21wYWN0LWhlcm8gaDEgc3Ryb25nIHtcbiAgICBjb2xvcjogI2RmMzMyMztcbn1cbi5oZXJvLWNvcHkgPiBwLFxuLmlubmVyLWhlcm8tZ3JpZCA+IGRpdiA+IHAsXG4uY29tcGFjdC1oZXJvIHAge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIG1heC13aWR0aDogNjUwcHg7XG4gICAgY29sb3I6ICNkMmQyZDI7XG59XG4uaGVyby1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAzMnB4O1xufVxuLmhlcm8tc3RhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDQzMHB4O1xufVxuLnN0YWdlLXNjcmVlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiA0NXB4IDI1cHggNDVweCAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCAjMjUyNTI1LCAjMDkwOTA5KTtcbiAgICBib3gtc2hhZG93OiAwIDQwcHggOTBweCByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjtcbn1cbi5zdGFnZS10b3Age1xuICAgIGhlaWdodDogMzhweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA2cHg7XG59XG4uc3RhZ2UtdG9wIGkge1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICM1NTU7XG59XG4uc3RhZ2UtbG9nbyB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzOHB4KTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG59XG4uc3RhZ2UtbG9nbyBpbWcge1xuICAgIHdpZHRoOiAyNDBweDtcbn1cbi5zdGFnZS1nbG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDM4MHB4O1xuICAgIGhlaWdodDogMzgwcHg7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KFxuICAgICAgICBjaXJjbGUsXG4gICAgICAgIHJnYmEoMTk4LCA0MywgMjksIDAuMzQpLFxuICAgICAgICB0cmFuc3BhcmVudCA2NiVcbiAgICApO1xuICAgIHJpZ2h0OiAtNjBweDtcbiAgICBib3R0b206IC04MHB4O1xufVxuLnN0YWdlLXRvb2wge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjMTExO1xuICAgIHBhZGRpbmc6IDEycHggMThweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB6LWluZGV4OiAzO1xufVxuLnN0YWdlLXRvb2wtYSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAyMnB4O1xufVxuLnN0YWdlLXRvb2wtYiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgYm90dG9tOiAyNXB4O1xufVxuLnRydXN0LXN0cmlwIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMzMzM7XG4gICAgcGFkZGluZzogMjVweCAwIDM1cHg7XG59XG4udHJ1c3Qtc3RyaXAgZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzMzMztcbiAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG59XG4udHJ1c3Qtc3RyaXAgZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4udHJ1c3Qtc3RyaXAgZGl2Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlcjogMDtcbn1cbi50cnVzdC1zdHJpcCBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbn1cbi50cnVzdC1zdHJpcCBzcGFuIHtcbiAgICBjb2xvcjogI2FhYTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbn1cbi5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA5MHB4IDA7XG59XG4uc2VjdGlvbi10aWdodCB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG59XG4uc2VjdGlvbi1zb2Z0IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zb2Z0KTtcbn1cbi5zZWN0aW9uLWhlYWRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBlbmQ7XG4gICAgZ2FwOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM2cHg7XG59XG4uc2VjdGlvbi1oZWFkaW5nIGgyLFxuLmxvY2FsLXBhbmVsIGgyLFxuLmN0YS1wYW5lbCBoMiB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjFyZW0sIDR2dywgMy41cmVtKTtcbiAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICBtYXJnaW46IDA7XG59XG4uc2VjdGlvbi1oZWFkaW5nID4gcCB7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xufVxuLnRleHQtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBjb2xvcjogdmFyKC0tcmVkKTtcbn1cbi5zZXJ2aWNlLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBnYXA6IDE2cHg7XG59XG4uc2VydmljZS1jYXJkIHtcbiAgICBwYWRkaW5nOiAyOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMDQpO1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG59XG4uc2VydmljZS1jYXJkOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbn1cbi5zZXJ2aWNlLWNhcmQtZGFyayB7XG4gICAgYmFja2dyb3VuZDogIzE1MTUxNTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICMyMjI7XG59XG4uc2VydmljZS1pY29uIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICBjb2xvcjogdmFyKC0tcmVkMik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMjhweDtcbn1cbi5zZXJ2aWNlLWljb24tc3ZnIHtcbiAgICB3aWR0aDogNzBweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDI4cHg7XG59XG4uc2VydmljZS1pY29uLXN2ZyBpbWcge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG4uc2VydmljZS1jYXJkOmhvdmVyIC5zZXJ2aWNlLWljb24tc3ZnIGltZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpIHNjYWxlKDEuMDQpO1xufVxuLnNlcnZpY2UtY2FyZCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1O1xufVxuLnNlcnZpY2UtY2FyZCBwIHtcbiAgICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xuICAgIG1pbi1oZWlnaHQ6IDcwcHg7XG59XG4uc2VydmljZS1jYXJkLWRhcmsgcCB7XG4gICAgY29sb3I6ICNiYmI7XG59XG4uc2VydmljZS1jYXJkIGIge1xuICAgIGZvbnQtc2l6ZTogMC44N3JlbTtcbiAgICBjb2xvcjogdmFyKC0tcmVkMik7XG59XG4ucHJvamVjdC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiAyMnB4O1xufVxuLnByb2plY3QtY2FyZCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG59XG4ucHJvamVjdC1jYXJkOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCk7XG4gICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbn1cbi5wcm9qZWN0LW1lZGlhIHtcbiAgICBoZWlnaHQ6IDIyNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMTcxNzE3O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucHJvamVjdC1tZWRpYSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xufVxuLnByb2plY3QtY2FyZDpob3ZlciBpbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNCk7XG59XG4ubWVkaWEtcGxhY2Vob2xkZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgY29sb3I6IHZhcigtLXJlZDIpO1xufVxuLnByb2plY3QtYmFkZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxNnB4O1xuICAgIGJvdHRvbTogMTZweDtcbiAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWQyKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDAuNzJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cbi5wcm9qZWN0LWJhZGdlLnN0YXRpYyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAxMnB4IDA7XG59XG4ucHJvamVjdC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyMnB4O1xufVxuLnByb2plY3QtY29udGVudCBoMyxcbi5wcm9qZWN0LWNvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICBtYXJnaW46IDAgMCAxMnB4O1xufVxuLnByb2plY3QtY29udGVudCBwIHtcbiAgICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xufVxuLnByb2plY3QtZm9vdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbn1cbi5wcm9qZWN0LWZvb3QgYSB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBjb2xvcjogdmFyKC0tcmVkKTtcbn1cbi5wcm9qZWN0LWZvb3QgdGltZSB7XG4gICAgY29sb3I6ICM4ODg7XG59XG4ucmV2aWV3LXBhbmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTExO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgcGFkZGluZzogMzRweDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS4xNWZyIDFmciAxZnI7XG4gICAgZ2FwOiAzMHB4O1xufVxuLnJldmlldy1zY29yZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDE4cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5nb29nbGUtZyB7XG4gICAgd2lkdGg6IDY0cHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjNDI4NWY0O1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cbi5zdGFycyB7XG4gICAgY29sb3I6ICNmZmI0MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbn1cbi5yZXZpZXctcGFuZWwgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMjhweDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMzYTNhM2E7XG4gICAgY29sb3I6ICNkZGQ7XG59XG4ucmV2aWV3LXBhbmVsIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG59XG4uYmVuZWZpdC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG4gICAgbWFyZ2luLXRvcDogMjhweDtcbn1cbi5iZW5lZml0LWdyaWQgPiBkaXYge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tbGluZSk7XG59XG4uYmVuZWZpdC1ncmlkID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uYmVuZWZpdC1ncmlkID4gZGl2Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlcjogMDtcbn1cbi5iZW5lZml0LWdyaWQgYixcbi5wcm9jZXNzLWdyaWQgYiB7XG4gICAgY29sb3I6IHZhcigtLXJlZDIpO1xufVxuLmJlbmVmaXQtZ3JpZCBoMyB7XG4gICAgbWFyZ2luOiAxMHB4IDAgNXB4O1xufVxuLmJlbmVmaXQtZ3JpZCBwIHtcbiAgICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogMC45M3JlbTtcbn1cbi5iZW5lZml0LWdyaWQtZm91ciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbn1cbi5sb2NhbC1wYW5lbCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuOGZyIDEuMmZyO1xuICAgIGJhY2tncm91bmQ6ICMxMTE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmxvY2FsLXBhbmVsID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiA0OHB4O1xufVxuLmxvY2FsLXBhbmVsIHAge1xuICAgIGNvbG9yOiAjYmJiO1xufVxuLm1hcC1hcnQge1xuICAgIG1pbi1oZWlnaHQ6IDM0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgICBjaXJjbGUgYXQgY2VudGVyLFxuICAgICAgICAgICAgcmdiYSgxOTgsIDQzLCAyOSwgMC4zKSxcbiAgICAgICAgICAgIHRyYW5zcGFyZW50IDMyJVxuICAgICAgICApLFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoNDBkZWcsIHRyYW5zcGFyZW50IDQ4JSwgIzJlMmUyZSA0OSUsIHRyYW5zcGFyZW50IDUwJSksXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCgtMzVkZWcsIHRyYW5zcGFyZW50IDQ4JSwgIzJhMmEyYSA0OSUsIHRyYW5zcGFyZW50IDUwJSksXG4gICAgICAgICMxODE4MTg7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xufVxuLm1hcC1hcnQgc3BhbiB7XG4gICAgei1pbmRleDogMjtcbiAgICBmb250LXdlaWdodDogOTAwO1xufVxuLm1hcC1hcnQgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTk4LCA0MywgMjksIDAuNyk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLm1hcC1hcnQgaTpudGgtb2YtdHlwZSgxKSB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogMTIwcHg7XG59XG4ubWFwLWFydCBpOm50aC1vZi10eXBlKDIpIHtcbiAgICB3aWR0aDogMjEwcHg7XG4gICAgaGVpZ2h0OiAyMTBweDtcbn1cbi5tYXAtYXJ0IGk6bnRoLW9mLXR5cGUoMykge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBoZWlnaHQ6IDMwMHB4O1xufVxuLmN0YS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbn1cbi5jdGEtcGFuZWwge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxOTE5MTksICMwZTBlMGUpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgcGFkZGluZzogNDJweCA0OHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAzMHB4O1xufVxuLmN0YS1wYW5lbCBwIHtcbiAgICBjb2xvcjogI2JiYjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmlubmVyLWhlcm8tbGlnaHQge1xuICAgIGJhY2tncm91bmQ6ICNmNWY1ZjM7XG4gICAgY29sb3I6ICMxMTE7XG59XG4uaW5uZXItaGVyby1saWdodCAuaW5uZXItaGVyby1ncmlkID4gZGl2ID4gcCB7XG4gICAgY29sb3I6ICM2NjY7XG59XG4udGVjaG5pY2FsLXZpc3VhbCxcbi5icm93c2VyLW1vY2ssXG4ubGVhcm5pbmctdmlzdWFsIHtcbiAgICBoZWlnaHQ6IDM5MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMCAzNXB4IDcwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cbi50ZWNobmljYWwtdmlzdWFsIHtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDUwJSwgIzJmMmYyZiwgIzEwMTAxMCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG59XG4uY2hpcCB7XG4gICAgd2lkdGg6IDEzMHB4O1xuICAgIGhlaWdodDogMTMwcHg7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tcmVkMik7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCA0NXB4IHJnYmEoMTk4LCA0MywgMjksIDAuMjUpO1xufVxuLnRlY2huaWNhbC12aXN1YWwgPiBzcGFuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAyNHB4O1xuICAgIGNvbG9yOiAjYWFhO1xufVxuLnRyYWNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcmVkMik7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDEyMHB4O1xufVxuLnQxIHtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRvcDogMTAwcHg7XG59XG4udDIge1xuICAgIHJpZ2h0OiAyNXB4O1xuICAgIHRvcDogMTgwcHg7XG59XG4udDMge1xuICAgIGxlZnQ6IDYwcHg7XG4gICAgYm90dG9tOiAxMDBweDtcbn1cbi5wcm9jZXNzLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucHJvY2Vzcy1ncmlkOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogOCU7XG4gICAgcmlnaHQ6IDglO1xuICAgIHRvcDogMTdweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xufVxuLnByb2Nlc3MtZ3JpZCA+IGRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgMjVweDtcbn1cbi5wcm9jZXNzLWdyaWQgYiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlZDIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbn1cbi5wcm9jZXNzLWdyaWQgaDMge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG59XG4ucHJvY2Vzcy1ncmlkIHAge1xuICAgIGNvbG9yOiB2YXIoLS1tdXRlZCk7XG59XG4uYnJvd3Nlci1tb2NrIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG59XG4uYnJvd3Nlci1iYXIge1xuICAgIGhlaWdodDogNDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMWIxYjFiO1xuICAgIHBhZGRpbmc6IDE0cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDdweDtcbn1cbi5icm93c2VyLWJhciBpIHtcbiAgICB3aWR0aDogOXB4O1xuICAgIGhlaWdodDogOXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjNzc3O1xufVxuLmJyb3dzZXItcGFnZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MnB4KTtcbiAgICBwYWRkaW5nOiA2MHB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNmZmYgNjUlLCAjZjNlOGU2KTtcbn1cbi5icm93c2VyLXBhZ2Ugc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA1cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcmVkMik7XG59XG4uYnJvd3Nlci1wYWdlIGgzIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmJyb3dzZXItcGFnZSBidXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWQyKTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAxMnB4IDIwcHg7XG59XG4uZmVhdHVyZS1yb3cge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBnYXA6IDE1cHg7XG59XG4uZmVhdHVyZS1yb3cgPiBkaXYge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xufVxuLmZlYXR1cmUtcm93ID4gZGl2Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlcjogMDtcbn1cbi5mZWF0dXJlLXJvdyBiLFxuLmZlYXR1cmUtcm93IHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLmZlYXR1cmUtcm93IHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG59XG4ubGVhcm5pbmctdmlzdWFsIHtcbiAgICBiYWNrZ3JvdW5kOlxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgICBjaXJjbGUgYXQgY2VudGVyLFxuICAgICAgICAgICAgcmdiYSgxOTgsIDQzLCAyOSwgMC4yNSksXG4gICAgICAgICAgICB0cmFuc3BhcmVudCAzNSVcbiAgICAgICAgKSxcbiAgICAgICAgIzE3MTcxNztcbn1cbi5sZWFybmluZy1jb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXJlZDIpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbi5sZXNzb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjMTExO1xuICAgIHBhZGRpbmc6IDEycHggMThweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4ubDEge1xuICAgIGxlZnQ6IDEyJTtcbiAgICB0b3A6IDE4JTtcbn1cbi5sMiB7XG4gICAgcmlnaHQ6IDEyJTtcbiAgICB0b3A6IDIwJTtcbn1cbi5sMyB7XG4gICAgbGVmdDogMTglO1xuICAgIGJvdHRvbTogMTYlO1xufVxuLmw0IHtcbiAgICByaWdodDogMTUlO1xuICAgIGJvdHRvbTogMTglO1xufVxuLmNvbXBhY3QtaGVybyB7XG4gICAgcGFkZGluZzogMTEwcHggMDtcbn1cbi5jb21wYWN0LWhlcm8gcCB7XG4gICAgbWF4LXdpZHRoOiA2NTBweDtcbn1cbi5maWx0ZXItYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuLmZpbHRlci1iYXIgYnV0dG9uIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmZpbHRlci1iYXIgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogIzExMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBib3JkZXItY29sb3I6ICMxMTE7XG59XG4uZmlsdGVyLWJhciBsYWJlbCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBwYWRkaW5nOiA4cHggMTRweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogOHB4O1xufVxuLmZpbHRlci1iYXIgaW5wdXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG59XG4uYXJ0aWNsZS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICMxMTE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogOTVweCAwIDE0MHB4O1xufVxuLmFydGljbGUtaGVhZC1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbn1cbi5hcnRpY2xlLWhlYWRlciBoMSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCA2dncsIDUuNXJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IDAuOTU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgbWFyZ2luOiAyMHB4IDA7XG59XG4uYXJ0aWNsZS1oZWFkZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIG1heC13aWR0aDogNzYwcHg7XG59XG4uYnJlYWRjcnVtYiB7XG4gICAgY29sb3I6ICNiYmI7XG59XG4uYXJ0aWNsZS1tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMjBweDtcbiAgICBjb2xvcjogI2FhYTtcbn1cbi5hcnRpY2xlLWNvdmVyIHtcbiAgICBtYXJnaW4tdG9wOiAtOTBweDtcbn1cbi5hcnRpY2xlLWNvdmVyIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogNjIwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xufVxuLmFydGljbGUtbGF5b3V0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgMzIwcHg7XG4gICAgZ2FwOiA3MHB4O1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xufVxuLmFydGljbGUtY29udGVudCB7XG4gICAgZm9udC1zaXplOiAxLjEycmVtO1xufVxuLmFydGljbGUtY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIG1hcmdpbi10b3A6IDIuM2VtO1xufVxuLmFydGljbGUtY29udGVudCBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG59XG4uYXJ0aWNsZS1nYWxsZXJ5IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ2FwOiAxOHB4O1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG59XG4uYXJ0aWNsZS1nYWxsZXJ5IGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xufVxuLmFydGljbGUtZ2FsbGVyeSBmaWdjYXB0aW9uIHtcbiAgICBjb2xvcjogIzc3NztcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbn1cbi5hcnRpY2xlLWFzaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYXNpZGUtY2FyZCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwNXB4O1xuICAgIGJhY2tncm91bmQ6ICNmNGY0ZjI7XG4gICAgcGFkZGluZzogMjhweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xufVxuLmFzaWRlLWNhcmQgaDIge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xufVxuLnNpdGUtZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTAxMDEwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDYwcHggMCAyMHB4O1xufVxuLmZvb3Rlci1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS40ZnIgcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiA1MHB4O1xufVxuLmZvb3Rlci1icmFuZCBpbWcge1xuICAgIHdpZHRoOiAxNzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmZvb3Rlci1ncmlkIGgyIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjYWFhO1xufVxuLmZvb3Rlci1ncmlkIGEsXG4uZm9vdGVyLWdyaWQgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNiYmI7XG4gICAgbWFyZ2luOiA4cHggMDtcbiAgICBmb250LXNpemU6IDAuOTJyZW07XG59XG4uZm9vdGVyLWdyaWQgYTpob3ZlciB7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uZm9vdGVyLWJvdHRvbSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyYjJiMmI7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBjb2xvcjogIzc3NztcbiAgICBmb250LXNpemU6IDAuODhyZW07XG59XG4uZm9vdGVyLWJvdHRvbSBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAyMHB4O1xufVxuLmVtcHR5LXBhbmVsIHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjY2NjO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjNzc3O1xufVxuLnJldmVhbCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjRweCk7XG4gICAgdHJhbnNpdGlvbjogMC42cztcbn1cbi5yZXZlYWwuaXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAubmF2LWN0YSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5uYXYtdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgICAubWFpbi1uYXYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNzZweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxMTE7XG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICAubWFpbi1uYXYuaXMtb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIC5oZXJvLWdyaWQsXG4gICAgLmlubmVyLWhlcm8tZ3JpZCxcbiAgICAubG9jYWwtcGFuZWwsXG4gICAgLmFydGljbGUtbGF5b3V0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxuICAgIC5oZXJvLWdyaWQge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTVweDtcbiAgICB9XG4gICAgLmhlcm8tc3RhZ2Uge1xuICAgICAgICBoZWlnaHQ6IDMzMHB4O1xuICAgIH1cbiAgICAudHJ1c3Qtc3RyaXAge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBnYXA6IDIwcHg7XG4gICAgfVxuICAgIC5zZXJ2aWNlLWdyaWQsXG4gICAgLnByb2plY3QtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICAgIC5iZW5lZml0LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbiAgICAuYmVuZWZpdC1ncmlkID4gZGl2IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gICAgfVxuICAgIC5yZXZpZXctcGFuZWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG4gICAgLnByb2Nlc3MtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICB9XG4gICAgLnByb2Nlc3MtZ3JpZDpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuZmVhdHVyZS1yb3cge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbiAgICAuZm9vdGVyLWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC5zaGVsbCB7XG4gICAgICAgIHdpZHRoOiBtaW4oMTAwJSAtIDI0cHgsIDExODBweCk7XG4gICAgfVxuICAgIC5oZXJvLWdyaWQsXG4gICAgLmlubmVyLWhlcm8tZ3JpZCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDU1cHggMDtcbiAgICB9XG4gICAgLmhlcm8gaDEsXG4gICAgLmlubmVyLWhlcm8gaDEsXG4gICAgLmNvbXBhY3QtaGVybyBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgIH1cbiAgICAuaGVyby1hY3Rpb25zLFxuICAgIC5jdGEtcGFuZWwsXG4gICAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICAuaGVyby1hY3Rpb25zIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLnRydXN0LXN0cmlwIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIH1cbiAgICAuc2VydmljZS1ncmlkLFxuICAgIC5wcm9qZWN0LWdyaWQsXG4gICAgLmJlbmVmaXQtZ3JpZCxcbiAgICAuZmVhdHVyZS1yb3csXG4gICAgLnByb2Nlc3MtZ3JpZCxcbiAgICAuZm9vdGVyLWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG4gICAgLnByb2plY3QtbWVkaWEge1xuICAgICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgIH1cbiAgICAuc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDY1cHggMDtcbiAgICB9XG4gICAgLnJldmlldy1wYW5lbCxcbiAgICAuY3RhLXBhbmVsLFxuICAgIC5sb2NhbC1wYW5lbCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6IDI4cHg7XG4gICAgfVxuICAgIC5hcnRpY2xlLWdhbGxlcnkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG4gICAgLmZvb3Rlci1ib3R0b20ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDE1cHg7XG4gICAgfVxuICAgIC5maWx0ZXItYmFyIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuZmlsdGVyLWJhciBpbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAudGVjaG5pY2FsLXZpc3VhbCxcbiAgICAuYnJvd3Nlci1tb2NrLFxuICAgIC5sZWFybmluZy12aXN1YWwge1xuICAgICAgICBoZWlnaHQ6IDMxMHB4O1xuICAgIH1cbn1cbi5jb250YWN0LW5ldy1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMC44ZnIgMS4yZnI7XG4gICAgZ2FwOiAzMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbn1cbi5jb250YWN0LW5ldy1pbmZvLFxuLmNvbnRhY3QtbmV3LWZvcm0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgcGFkZGluZzogMzZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLmNvbnRhY3QtbmV3LWluZm8gaDIsXG4uY29udGFjdC1uZXctZm9ybSBoMiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luLXRvcDogMDtcbn1cbi5jb250YWN0LW5ldy1pbmZvID4gcCB7XG4gICAgY29sb3I6IHZhcigtLW11dGVkKTtcbn1cbi5jb250YWN0LWRldGFpbCB7XG4gICAgcGFkZGluZzogMThweCAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbn1cbi5jb250YWN0LWRldGFpbCBiLFxuLmNvbnRhY3QtZGV0YWlsIGEsXG4uY29udGFjdC1kZXRhaWwgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uY29udGFjdC1kZXRhaWwgYSxcbi5jb250YWN0LWRldGFpbCBzcGFuIHtcbiAgICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xufVxuLmNvbnRhY3QtbWFwLW5ldyB7XG4gICAgaGVpZ2h0OiAyOTBweDtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5yYXVndWktZm9ybSBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG4ucmF1Z3VpLWZvcm0gaW5wdXQsXG4ucmF1Z3VpLWZvcm0gdGV4dGFyZWEsXG4ucmF1Z3VpLWZvcm0gc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xuICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICBwYWRkaW5nOiAxM3B4IDE0cHg7XG4gICAgZm9udDogaW5oZXJpdDtcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xufVxuLnJhdWd1aS1mb3JtIHRleHRhcmVhIHtcbiAgICBtaW4taGVpZ2h0OiAxNzBweDtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xufVxuLnJhdWd1aS1mb3JtID4gZGl2LFxuLmZvcm0tZ3JpZCA+IGRpdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbn1cbi5mb3JtLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IDAgMTZweDtcbn1cbi5jYXB0Y2hhLXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IDE1cHg7XG4gICAgcGFkZGluZzogMTZweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zb2Z0KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuLmNhcHRjaGEtcm93IGIsXG4uY2FwdGNoYS1yb3cgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uY2FwdGNoYS1yb3cgaW5wdXQge1xuICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbi5mb3JtLXN1Ym1pdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5mbGFzaCB7XG4gICAgcGFkZGluZzogMTRweDtcbiAgICBib3JkZXItcmFkaXVzOiA5cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbn1cbi5mbGFzaC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZWRmN2VmO1xuICAgIGNvbG9yOiAjMjM2YjMxO1xufVxuLmZsYXNoLWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmMGVlO1xuICAgIGNvbG9yOiAjOWIxZDEwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmNvbnRhY3QtbmV3LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAuZm9ybS1ncmlkIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxuICAgIC5jb250YWN0LW5ldy1pbmZvLFxuICAgIC5jb250YWN0LW5ldy1mb3JtIHtcbiAgICAgICAgcGFkZGluZzogMjRweDtcbiAgICB9XG59XG5cbi8qIElsbHVzdHJhdGlvbnMgY29uY3LDqHRlcyBkZXMgcGFnZXMgZGUgc2VydmljZSAqL1xuLnNjZW5lLXRvb2xiYXIge1xuICAgIGhlaWdodDogNDJweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMztcbiAgICBwYWRkaW5nOiAxM3B4IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogN3B4O1xuICAgIGNvbG9yOiAjYTlhOWE5O1xuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xufVxuLnNjZW5lLXRvb2xiYXIgaSB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzY2Njtcbn1cbi5zY2VuZS10b29sYmFyIHNwYW4ge1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG4ud29ya2JlbmNoLXdpbmRvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiA0MHB4IDIwcHggNDBweCAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCAjMjQyNDI0LCAjMGIwYjBiKTtcbiAgICBib3gtc2hhZG93OiAwIDQwcHggOTBweCByZ2JhKDAsIDAsIDAsIDAuNTUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjtcbn1cbi53b3JrYmVuY2gtc2NlbmUge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNDJweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLndvcmtiZW5jaC1zdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cbi5zY2VuZS1zdXJmYWNlIHtcbiAgICBmaWxsOiAjMjgyODI4O1xufVxuLnNjZW5lLXNjcmVlbixcbi5zY2VuZS1iYXNlIHtcbiAgICBmaWxsOiAjMTQxNDE0O1xuICAgIHN0cm9rZTogI2U4ZThlODtcbiAgICBzdHJva2Utd2lkdGg6IDM7XG59XG4uc2NlbmUtc2NyZWVuLWlubmVyIHtcbiAgICBmaWxsOiAjMjAyMDIwO1xuICAgIHN0cm9rZTogIzQ0NDtcbn1cbi5zY2VuZS1jaGFydCB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICNkNTJjMWU7XG4gICAgc3Ryb2tlLXdpZHRoOiA1O1xuICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xufVxuLnNjZW5lLWNoYXJ0LWRvdCB7XG4gICAgZmlsbDogI2ZmZjtcbiAgICBzdHJva2U6ICNkNTJjMWU7XG4gICAgc3Ryb2tlLXdpZHRoOiA0O1xufVxuLnNjZW5lLWtleWJvYXJkIHtcbiAgICBmaWxsOiAjMzMzO1xuICAgIHN0cm9rZTogIzc3Nztcbn1cbi5zY2VuZS10b29scyBwYXRoLFxuLnNjZW5lLXRvb2xzIGNpcmNsZSB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICNmNGY0ZjQ7XG4gICAgc3Ryb2tlLXdpZHRoOiA4O1xuICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xufVxuLnNjZW5lLXBhcnRzIHJlY3Qge1xuICAgIGZpbGw6ICM4YzFmMTM7XG4gICAgc3Ryb2tlOiAjZThlOGU4O1xuICAgIHN0cm9rZS13aWR0aDogMjtcbn1cbi5zY2VuZS1wYXJ0cyBwYXRoIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogI2ZmZjtcbiAgICBzdHJva2Utd2lkdGg6IDM7XG59XG4uc2NlbmUtc3RhdHVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzExMTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xufVxuLnNjZW5lLXN0YXR1cyBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDdweDtcbiAgICBoZWlnaHQ6IDdweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzM2YTU2NjtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbn1cbi5zY2VuZS1zdGF0dXMtb2sge1xuICAgIGxlZnQ6IDglO1xuICAgIHRvcDogMTYlO1xufVxuLnNjZW5lLXN0YXR1cy10ZW1wIHtcbiAgICByaWdodDogNSU7XG4gICAgYm90dG9tOiAxMiU7XG59XG5cbi5sZWFybmluZy1kZXNrIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCAjMWUxZTFlLCAjMGQwZDBkKTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi50cmFpbmluZy1tb25pdG9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTElO1xuICAgIHJpZ2h0OiAxMSU7XG4gICAgdG9wOiAxMCU7XG4gICAgaGVpZ2h0OiA2MSU7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzU1NTtcbiAgICBib3JkZXItcmFkaXVzOiAxM3B4O1xuICAgIGJhY2tncm91bmQ6ICMxNzE3MTc7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwIDI0cHggNDVweCByZ2JhKDAsIDAsIDAsIDAuNDUpO1xufVxuLnRyYWluaW5nLXNjcmVlbiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA0MnB4KTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDVweCAxZnI7XG4gICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cbi50cmFpbmluZy1zaWRlYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMjUyNTI1O1xuICAgIHBhZGRpbmc6IDEzcHggOXB4O1xufVxuLnRyYWluaW5nLXNpZGViYXIgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA5cHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJhY2tncm91bmQ6ICM3Nzc7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cbi50cmFpbmluZy1zaGVldCB7XG4gICAgcGFkZGluZzogMTRweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2hlZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGNvbG9yOiAjMjIyO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbn1cbi5zaGVldC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG4gICAgZ2FwOiAzcHg7XG4gICAgd2lkdGg6IDY1JTtcbn1cbi5zaGVldC1ncmlkIGkge1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkOGQ4ZDg7XG59XG4uc2hlZXQtZ3JpZCBpOm50aC1jaGlsZCg2biArIDIpLFxuLnNoZWV0LWdyaWQgaTpudGgtY2hpbGQoN24gKyAxKSB7XG4gICAgYmFja2dyb3VuZDogI2YxYjFhYTtcbn1cbi5zaGVldC1jaGFydCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIGJvdHRvbTogMTVweDtcbiAgICB3aWR0aDogMjclO1xuICAgIGhlaWdodDogNDUlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICBnYXA6IDVweDtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNiYmI7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiYmI7XG4gICAgcGFkZGluZzogNHB4O1xufVxuLnNoZWV0LWNoYXJ0IGIge1xuICAgIGZsZXg6IDE7XG4gICAgYmFja2dyb3VuZDogI2M2MmIxZDtcbn1cbi5zaGVldC1jaGFydCBiOm50aC1jaGlsZCgxKSB7XG4gICAgaGVpZ2h0OiAzNSU7XG59XG4uc2hlZXQtY2hhcnQgYjpudGgtY2hpbGQoMikge1xuICAgIGhlaWdodDogNjglO1xufVxuLnNoZWV0LWNoYXJ0IGI6bnRoLWNoaWxkKDMpIHtcbiAgICBoZWlnaHQ6IDUwJTtcbn1cbi5zaGVldC1jaGFydCBiOm50aC1jaGlsZCg0KSB7XG4gICAgaGVpZ2h0OiA4NiU7XG59XG4udHJhaW5pbmcta2V5Ym9hcmQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAyMSU7XG4gICAgcmlnaHQ6IDIxJTtcbiAgICB0b3A6IDcyJTtcbiAgICBoZWlnaHQ6IDEyJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2Q0ZDRkNCwgIzg4OCk7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDglIDAsIDkyJSAwLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDEzcHggMTNweDtcbn1cbi50cmFpbmluZy1ub3RlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDQlO1xuICAgIGJvdHRvbTogMyU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzExMTtcbiAgICBwYWRkaW5nOiAxMXB4IDE0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOXB4O1xuICAgIGZvbnQtc2l6ZTogMC42OXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi50cmFpbmluZy1ub3RlIHN0cm9uZyB7XG4gICAgY29sb3I6ICM4YzFmMTM7XG59XG4ubGVhcm5pbmctZGVzayAubGVzc29uIHtcbiAgICBwYWRkaW5nOiA4cHggMTFweDtcbiAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xufVxuLmxlYXJuaW5nLWRlc2sgLmwxIHtcbiAgICBsZWZ0OiAyJTtcbiAgICB0b3A6IDEyJTtcbn1cbi5sZWFybmluZy1kZXNrIC5sMiB7XG4gICAgcmlnaHQ6IDIlO1xuICAgIHRvcDogMTYlO1xufVxuLmxlYXJuaW5nLWRlc2sgLmwzIHtcbiAgICBsZWZ0OiA0JTtcbiAgICBib3R0b206IDklO1xufVxuLmxlYXJuaW5nLWRlc2sgLmw0IHtcbiAgICByaWdodDogMyU7XG4gICAgYm90dG9tOiAyNyU7XG59XG5cbi5yZXBhaXItYmVuY2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDVkZWcsICMxODE4MTgsICMwYjBiMGIpO1xufVxuLnJlcGFpci1zdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cbi5yZXBhaXItbWF0IHtcbiAgICBmaWxsOiAjMTkxOTE5O1xuICAgIHN0cm9rZTogIzNlM2UzZTtcbn1cbi5yZXBhaXItc2hlbGwge1xuICAgIGZpbGw6ICMyNDI0MjQ7XG4gICAgc3Ryb2tlOiAjNzc3O1xuICAgIHN0cm9rZS13aWR0aDogMjtcbn1cbi5yZXBhaXItYm9hcmQge1xuICAgIGZpbGw6ICMxOTI4MjA7XG4gICAgc3Ryb2tlOiAjNTM3MzYyO1xuICAgIHN0cm9rZS13aWR0aDogMjtcbn1cbi5yZXBhaXItY2lyY3VpdCB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICM4ZmFlOWM7XG4gICAgc3Ryb2tlLXdpZHRoOiA0O1xufVxuLnJlcGFpci1jcHUge1xuICAgIGZpbGw6ICMyOTI5Mjk7XG4gICAgc3Ryb2tlOiAjZDUyYzFlO1xuICAgIHN0cm9rZS13aWR0aDogMztcbn1cbi5yZXBhaXItc3ZnIHRleHQge1xuICAgIGZpbGw6ICNmZmY7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG4ucmVwYWlyLXJhbSB7XG4gICAgZmlsbDogIzI0NjU0ODtcbiAgICBzdHJva2U6ICM5OWM2YTg7XG59XG4ucmVwYWlyLXNzZCB7XG4gICAgZmlsbDogIzI5MjkyOTtcbiAgICBzdHJva2U6ICNkZGQ7XG4gICAgc3Ryb2tlLXdpZHRoOiAyO1xufVxuLnJlcGFpci1mYW4ge1xuICAgIGZpbGw6ICMxMTE7XG4gICAgc3Ryb2tlOiAjNzc3O1xuICAgIHN0cm9rZS13aWR0aDogMztcbn1cbi5yZXBhaXItZmFuLWJsYWRlIHtcbiAgICBmaWxsOiBub25lO1xuICAgIHN0cm9rZTogI2FhYTtcbiAgICBzdHJva2Utd2lkdGg6IDc7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xufVxuLnJlcGFpci10b29scyBwYXRoLFxuLnJlcGFpci10b29scyBjaXJjbGUge1xuICAgIGZpbGw6IG5vbmU7XG4gICAgc3Ryb2tlOiAjZWVlO1xuICAgIHN0cm9rZS13aWR0aDogODtcbiAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbn1cbi5yZXBhaXItbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjMTExO1xuICAgIHBhZGRpbmc6IDdweCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgICBmb250LXNpemU6IDAuNjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4ubGFiZWwtc3NkIHtcbiAgICBsZWZ0OiA1NSU7XG4gICAgdG9wOiAyMCU7XG59XG4ubGFiZWwtcmFtIHtcbiAgICBsZWZ0OiAxMyU7XG4gICAgYm90dG9tOiAyNyU7XG59XG4ucmVwYWlyLXJlc3VsdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDclO1xuICAgIHJpZ2h0OiA3JTtcbiAgICBib3R0b206IDUlO1xuICAgIHBhZGRpbmc6IDEwcHggMTNweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjM2MzYzNjO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTAsIDEwLCAxMCwgMC44NSk7XG4gICAgYm9yZGVyLXJhZGl1czogOXB4O1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xufVxuLnJlcGFpci1yZXN1bHQgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICM0MmIzNmQ7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG59XG5cbi5icm93c2VyLXByb2plY3Qge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uYnJvd3Nlci1iYXIgc3BhbiB7XG4gICAgY29sb3I6ICNhYWE7XG4gICAgZm9udC1zaXplOiAwLjY4cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuLmJyb3dzZXItcHJvamVjdC1wYWdlIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQycHgpO1xuICAgIHBhZGRpbmc6IDIycHggMjhweDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZmZmIDY4JSwgI2YzZThlNik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYnJvd3Nlci1wcm9qZWN0LXBhZ2UgaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZvbnQtc2l6ZTogMC42MnJlbTtcbn1cbi5icm93c2VyLXByb2plY3QtcGFnZSBoZWFkZXIgYiB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbn1cbi5icm93c2VyLXByb2plY3QtcGFnZSBuYXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxNXB4O1xuICAgIGNvbG9yOiAjNjY2O1xufVxuLnByb2plY3QtaGVyby1jb3B5IHtcbiAgICB3aWR0aDogNTglO1xuICAgIHBhZGRpbmctdG9wOiA0MnB4O1xufVxuLnByb2plY3QtaGVyby1jb3B5IHNtYWxsIHtcbiAgICBjb2xvcjogI2M2MmIxZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbn1cbi5wcm9qZWN0LWhlcm8tY29weSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjg1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjAyO1xuICAgIG1hcmdpbjogMTBweCAwO1xufVxuLnByb2plY3QtaGVyby1jb3B5IHAge1xuICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgICBjb2xvcjogIzY2Njtcbn1cbi5wcm9qZWN0LWhlcm8tY29weSBidXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiAjYzYyYjFkO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDlweCAxM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBmb250LXdlaWdodDogODAwO1xufVxuLnByb2plY3QtZGFzaGJvYXJkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDI1cHg7XG4gICAgdG9wOiA3OHB4O1xuICAgIHdpZHRoOiAzNSU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgZ2FwOiA4cHg7XG59XG4uZGFzaGJvYXJkLXBob3RvIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgICBoZWlnaHQ6IDEwNXB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDVkZWcsICMzMzMsICMxMTEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4uZGFzaGJvYXJkLXBob3RvOmJlZm9yZSB7XG4gICAgY29udGVudDogXCI8Lz5cIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGNvbG9yOiAjZDUyYzFlO1xufVxuLmRhc2hib2FyZC1waG90byBzcGFuIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4O1xufVxuLmRhc2hib2FyZC1rcGkge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgcGFkZGluZzogOXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5kYXNoYm9hcmQta3BpIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIGNvbG9yOiAjYzYyYjFkO1xufVxuLmRhc2hib2FyZC1rcGkgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC41NXJlbTtcbiAgICBjb2xvcjogIzY2Njtcbn1cbi5kZXZpY2UtcGhvbmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogLTE4cHg7XG4gICAgYm90dG9tOiAtMThweDtcbiAgICB3aWR0aDogMTA1cHg7XG4gICAgaGVpZ2h0OiAxODVweDtcbiAgICBib3JkZXI6IDdweCBzb2xpZCAjMWMxYzFjO1xuICAgIGJvcmRlci1yYWRpdXM6IDE5cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDE4cHggMzVweCByZ2JhKDAsIDAsIDAsIDAuMjgpO1xuICAgIHBhZGRpbmc6IDEycHggOHB4O1xufVxuLmRldmljZS1waG9uZSBkaXYge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjZjVmNWYzO1xuICAgIHBhZGRpbmc6IDEwcHggN3B4O1xufVxuLmRldmljZS1waG9uZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiAjYzYyYjFkO1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG4uZGV2aWNlLXBob25lIGIge1xuICAgIGZvbnQtc2l6ZTogMC41N3JlbTtcbn1cbi5kZXZpY2UtcGhvbmUgaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAud29ya2JlbmNoLXdpbmRvdyB7XG4gICAgICAgIGluc2V0OiAyMHB4IDAgMjVweDtcbiAgICB9XG4gICAgLnNjZW5lLXN0YXR1cy10ZW1wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnRyYWluaW5nLW1vbml0b3Ige1xuICAgICAgICBsZWZ0OiA4JTtcbiAgICAgICAgcmlnaHQ6IDglO1xuICAgIH1cbiAgICAudHJhaW5pbmctbm90ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5sZWFybmluZy1kZXNrIC5sNCB7XG4gICAgICAgIGJvdHRvbTogMTIlO1xuICAgIH1cbiAgICAucmVwYWlyLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnJlcGFpci1yZXN1bHQge1xuICAgICAgICBmb250LXNpemU6IDAuNjJyZW07XG4gICAgfVxuICAgIC5icm93c2VyLXByb2plY3QtcGFnZSB7XG4gICAgICAgIHBhZGRpbmc6IDE4cHg7XG4gICAgfVxuICAgIC5wcm9qZWN0LWhlcm8tY29weSB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyOHB4O1xuICAgIH1cbiAgICAucHJvamVjdC1oZXJvLWNvcHkgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuMzVyZW07XG4gICAgfVxuICAgIC5wcm9qZWN0LWRhc2hib2FyZCB7XG4gICAgICAgIHJpZ2h0OiAxM3B4O1xuICAgICAgICB0b3A6IDc1cHg7XG4gICAgICAgIHdpZHRoOiAyOSU7XG4gICAgfVxuICAgIC5kYXNoYm9hcmQtcGhvdG8ge1xuICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgfVxuICAgIC5kZXZpY2UtcGhvbmUge1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiAxNDVweDtcbiAgICB9XG4gICAgLmJyb3dzZXItcHJvamVjdC1wYWdlIG5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDQVJURSBHw4lPR1JBUEhJUVVFIOKAlCBDT01JTkVTIC8gTU9VU0NST04gLyBUT1VSTkFJXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLm1hcC1hcnQtZ2VvZ3JhcGhpYyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgIGJhY2tncm91bmQ6XG4gICAgICAgIGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDE4KSAxcHgsIHRyYW5zcGFyZW50IDFweCksXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAxOCkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLFxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoXG4gICAgICAgICAgICBjaXJjbGUgYXQgNTIlIDQwJSxcbiAgICAgICAgICAgIHJnYmEoMjE4LCA0NSwgMzEsIDAuMTkpIDAsXG4gICAgICAgICAgICByZ2JhKDIxOCwgNDUsIDMxLCAwLjA4KSAxOCUsXG4gICAgICAgICAgICB0cmFuc3BhcmVudCA0MyVcbiAgICAgICAgKSxcbiAgICAgICAgIzE4MTgxODtcbiAgICBiYWNrZ3JvdW5kLXNpemU6XG4gICAgICAgIDQ4cHggNDhweCxcbiAgICAgICAgNDhweCA0OHB4LFxuICAgICAgICBhdXRvLFxuICAgICAgICBhdXRvO1xufVxuXG4vKlxuICogUG9zaXRpb25zIGJhc8OpZXMgc3VyIGxhIGfDqW9ncmFwaGllIHLDqWVsbGUgOlxuICpcbiAqIENvbWluZXMgOiDDoCBsJ291ZXN0IGV0IGzDqWfDqHJlbWVudCBhdSBub3JkXG4gKiBNb3VzY3JvbiA6IHBvaW50IGNlbnRyYWxcbiAqIFRvdXJuYWkgOiDDoCBsJ2VzdCBldCBuZXR0ZW1lbnQgYXUgc3VkXG4gKi9cblxuLm1hcC1jaXR5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA5cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1hcC1jaXR5IHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5tYXAtY2l0eS1kb3Qge1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBmbGV4OiAwIDAgMTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICNkOTJkMjA7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgICAgMCAwIDAgNXB4IHJnYmEoMjE3LCA0NSwgMzIsIDAuMTIpLFxuICAgICAgICAwIDAgMThweCByZ2JhKDIxNywgNDUsIDMyLCAwLjY1KTtcbn1cblxuLyogQ29taW5lcyBlc3Qgw6AgZ2F1Y2hlIGV0IGzDqWfDqHJlbWVudCBhdS1kZXNzdXMgZGUgTW91c2Nyb24uICovXG4ubWFwLWNpdHktY29taW5lcyB7XG4gICAgdG9wOiAyNCU7XG4gICAgbGVmdDogMTclO1xufVxuXG4vKiBNb3VzY3JvbiBzZXJ0IGRlIGNlbnRyZSB2aXN1ZWwgZXQgZ8Opb2dyYXBoaXF1ZS4gKi9cbi5tYXAtY2l0eS1tb3VzY3JvbiB7XG4gICAgdG9wOiA0MyU7XG4gICAgbGVmdDogNTUlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA3cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWFwLWNpdHktbW91c2Nyb24gc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDEuMDVyZW07XG59XG5cbi5tYXAtY2l0eS1tb3VzY3JvbiBzbWFsbCB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41OCk7XG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5tYXAtY2l0eS1tYXJrZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgd2lkdGg6IDQycHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICNkOTJkMjA7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgICAgMCAwIDAgOHB4IHJnYmEoMjE3LCA0NSwgMzIsIDAuMTIpLFxuICAgICAgICAwIDAgMzJweCByZ2JhKDIxNywgNDUsIDMyLCAwLjY1KTtcbn1cblxuLm1hcC1jaXR5LW1hcmtlciBzdmcge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLm1hcC1jaXR5LW1hcmtlciBwYXRoIHtcbiAgICBmaWxsOiAjZmZmO1xufVxuXG4ubWFwLWNpdHktbWFya2VyIGNpcmNsZSB7XG4gICAgZmlsbDogI2Q5MmQyMDtcbn1cblxuLyogVG91cm5haSBzZSB0cm91dmUgw6AgZHJvaXRlIGV0IGJlYXVjb3VwIHBsdXMgYmFzIHF1ZSBNb3VzY3Jvbi4gKi9cbi5tYXAtY2l0eS10b3VybmFpIHtcbiAgICB0b3A6IDc5JTtcbiAgICBsZWZ0OiA3MiU7XG59XG5cbi8qIENlcmNsZXMgY2VudHLDqXMgcHLDqWNpc8OpbWVudCBzdXIgTW91c2Nyb24uICovXG5cbi5tYXAtcmFkaXVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICB0b3A6IDQzJTtcbiAgICBsZWZ0OiA1NSU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMTcsIDQ1LCAzMiwgMC42NSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWFwLXJhZGl1cy1zbWFsbCB7XG4gICAgd2lkdGg6IDE1MHB4O1xuICAgIGhlaWdodDogMTUwcHg7XG59XG5cbi5tYXAtcmFkaXVzLW1lZGl1bSB7XG4gICAgd2lkdGg6IDI4NXB4O1xuICAgIGhlaWdodDogMjg1cHg7XG59XG5cbi5tYXAtcmFkaXVzLWxhcmdle1xuICAgIHdpZHRoOjU2MHB4O1xuICAgIGhlaWdodDo1NjBweDtcbiAgICBib3JkZXItY29sb3I6cmdiYSgyMTcsNDUsMzIsLjM4KTtcbn1cblxuLyogVHJhY8OpIGTDqWNvcmF0aWYgw6l2b3F1YW50IGxlcyBheGVzIHJvdXRpZXJzIHNhbnMgZmF1c3NlciBsZXMgcG9zaXRpb25zLiAqL1xuXG4ubWFwLXJvYWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIG9wYWNpdHk6IDAuMTg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5MGRlZyxcbiAgICAgICAgdHJhbnNwYXJlbnQsXG4gICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSxcbiAgICAgICAgdHJhbnNwYXJlbnRcbiAgICApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbn1cblxuLm1hcC1yb2FkLWEge1xuICAgIHRvcDogNDIlO1xuICAgIGxlZnQ6IDIlO1xuICAgIHdpZHRoOiA5NiU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTlkZWcpO1xufVxuXG4ubWFwLXJvYWQtYiB7XG4gICAgdG9wOiA1NSU7XG4gICAgbGVmdDogMyU7XG4gICAgd2lkdGg6IDk1JTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNmRlZyk7XG59XG5cbi5tYXAtcm9hZC1jIHtcbiAgICB0b3A6IDU3JTtcbiAgICBsZWZ0OiAzMiU7XG4gICAgd2lkdGg6IDcwJTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MmRlZyk7XG59XG5cbi5tYXAtY2l0eS1wdWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIHRvcDogMTRweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIxNywgNDUsIDMyLCAwLjE0KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBhbmltYXRpb246IG1hcENpdHlQdWxzZSAyLjhzIGVhc2Utb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIG1hcENpdHlQdWxzZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwLjU1KTtcbiAgICB9XG5cbiAgICA3NSUsXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuNSk7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAubG9jYWwtcGFuZWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgICAubWFwLWFydC1nZW9ncmFwaGljIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC5tYXAtcmFkaXVzIHtcbiAgICAgICAgdG9wOiA0MyU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICB9XG5cbiAgICAubWFwLWNpdHktbW91c2Nyb24ge1xuICAgICAgICB0b3A6IDQzJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgIH1cblxuICAgIC5tYXAtY2l0eS1jb21pbmVzIHtcbiAgICAgICAgdG9wOiAxNyU7XG4gICAgICAgIGxlZnQ6IDglO1xuICAgIH1cblxuICAgIC5tYXAtY2l0eS10b3VybmFpIHtcbiAgICAgICAgdG9wOiA4MiU7XG4gICAgICAgIGxlZnQ6IDcwJTtcbiAgICB9XG5cbiAgICAubWFwLXJhZGl1cy1zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICB9XG5cbiAgICAubWFwLXJhZGl1cy1tZWRpdW0ge1xuICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgIGhlaWdodDogMjQwcHg7XG4gICAgfVxuXG4gICAgLm1hcC1yYWRpdXMtbGFyZ2Uge1xuICAgICAgICB3aWR0aDogNDYwcHg7XG4gICAgICAgIGhlaWdodDogNDYwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICAubG9jYWwtcGFuZWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgICAubWFwLWFydC1nZW9ncmFwaGljIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogNTYwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDU2MHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQ2VudHJlIGNvbW11biBkZXMgdHJvaXMgY2VyY2xlcyBldCBkZSBNb3VzY3JvblxuICAgICAqL1xuICAgIC5tYXAtcmFkaXVzLFxuICAgIC5tYXAtY2l0eS1tb3VzY3JvbiB7XG4gICAgICAgIHRvcDogNDglO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgfVxuXG4gICAgLm1hcC1jaXR5IHN0cm9uZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIH1cblxuICAgIC5tYXAtY2l0eS1tb3VzY3JvbiBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDAuOTJyZW07XG4gICAgfVxuXG4gICAgLm1hcC1jaXR5LW1vdXNjcm9uIHNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIENvbWluZXMgcmVzdGUgw6AgZ2F1Y2hlIGV0IGzDqWfDqHJlbWVudCBhdS1kZXNzdXMgZGUgTW91c2Nyb24uXG4gICAgICogTGUgbWFycXVldXIgc2UgdHJvdXZlIG1haW50ZW5hbnQgw6AgbCdpbnTDqXJpZXVyIGR1IGdyYW5kIGNlcmNsZS5cbiAgICAgKi9cbiAgICAubWFwLWNpdHktY29taW5lcyB7XG4gICAgICAgIHRvcDogMjclO1xuICAgICAgICBsZWZ0OiA0JTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIFRvdXJuYWkgcmVzdGUgYXUgc3VkLWVzdCBkZSBNb3VzY3Jvbi5cbiAgICAgKi9cbiAgICAubWFwLWNpdHktdG91cm5haSB7XG4gICAgICAgIHRvcDogODIlO1xuICAgICAgICBsZWZ0OiA2OSU7XG4gICAgfVxuXG4gICAgLm1hcC1yYWRpdXMtc21hbGwge1xuICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgIGhlaWdodDogMTEwcHg7XG4gICAgfVxuXG4gICAgLm1hcC1yYWRpdXMtbWVkaXVtIHtcbiAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgICBoZWlnaHQ6IDI0MHB4O1xuICAgIH1cblxuICAgIC8qXG4gICAgICogTGUgY2VyY2xlIHMnYWRhcHRlIGF1dG9tYXRpcXVlbWVudCDDoCBsYSBsYXJnZXVyIG1vYmlsZS5cbiAgICAgKi9cbiAgICAubWFwLXJhZGl1cy1sYXJnZSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyNHB4KTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1hcC1yb2FkLWEge1xuICAgICAgICB0b3A6IDQ4JTtcbiAgICB9XG5cbiAgICAubWFwLXJvYWQtYiB7XG4gICAgICAgIHRvcDogNTglO1xuICAgIH1cblxuICAgIC5tYXAtcm9hZC1jIHtcbiAgICAgICAgdG9wOiA2MSU7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzkwcHgpIHtcbiAgICAubWFwLWFydC1nZW9ncmFwaGljIHtcbiAgICAgICAgaGVpZ2h0OiA1MjBweDtcbiAgICAgICAgbWluLWhlaWdodDogNTIwcHg7XG4gICAgfVxuXG4gICAgLm1hcC1jaXR5LWNvbWluZXMge1xuICAgICAgICB0b3A6IDI4JTtcbiAgICAgICAgbGVmdDogMyU7XG4gICAgfVxuXG4gICAgLm1hcC1jaXR5LXRvdXJuYWkge1xuICAgICAgICB0b3A6IDgxJTtcbiAgICAgICAgbGVmdDogNjYlO1xuICAgIH1cblxuICAgIC5tYXAtcmFkaXVzLWxhcmdlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEycHgpO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBJREVOVElUw4kgUkFVR1VJIERBTlMgTEUgTUVOVVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5zaXRlLWhlYWRlciAuYnJhbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTRweDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5zaXRlLWhlYWRlciAuYnJhbmQtbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDU4cHg7XG4gICAgaGVpZ2h0OiA1OHB4O1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgICAgdHJhbnNmb3JtIDAuMzVzIGVhc2UsXG4gICAgICAgIGZpbHRlciAwLjM1cyBlYXNlO1xufVxuXG4uYnJhbmQtY29weSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmJyYW5kLW5hbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxLjM4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDU1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2U7XG59XG5cbi5icmFuZC1uYW1lOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtNXB4O1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogI2Q5MmQyMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgwLjI4KTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBlYXNlO1xufVxuXG4uYnJhbmQtYWN0aXZpdHkge1xuICAgIG1hcmdpbi10b3A6IDExcHg7XG4gICAgY29sb3I6ICNkOTJkMjA7XG4gICAgZm9udC1zaXplOiAwLjY5cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMzJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYnJhbmQtc2xvZ2FuIHtcbiAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NCk7XG4gICAgZm9udC1zaXplOiAwLjY4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDE1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTtcbn1cblxuLnNpdGUtaGVhZGVyIC5icmFuZDpob3ZlciAuYnJhbmQtbG9nbyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTNkZWcpIHNjYWxlKDEuMDQpO1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMCAwIDEycHggcmdiYSgyMTcsIDQ1LCAzMiwgMC4yOCkpO1xufVxuXG4uc2l0ZS1oZWFkZXIgLmJyYW5kOmhvdmVyIC5icmFuZC1uYW1lIHtcbiAgICBjb2xvcjogI2Q5MmQyMDtcbn1cblxuLnNpdGUtaGVhZGVyIC5icmFuZDpob3ZlciAuYnJhbmQtbmFtZTo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xufVxuXG4uc2l0ZS1oZWFkZXIgLmJyYW5kOmhvdmVyIC5icmFuZC1zbG9nYW4ge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODgpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE4MHB4KSB7XG4gICAgLnNpdGUtaGVhZGVyIC5icmFuZCB7XG4gICAgICAgIGdhcDogMTFweDtcbiAgICB9XG5cbiAgICAuc2l0ZS1oZWFkZXIgLmJyYW5kLWxvZ28ge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgIH1cblxuICAgIC5icmFuZC1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIH1cblxuICAgIC5icmFuZC1hY3Rpdml0eSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41OHJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMjVlbTtcbiAgICB9XG5cbiAgICAuYnJhbmQtc2xvZ2FuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjBweCkge1xuICAgIC5zaXRlLWhlYWRlciAuYnJhbmQge1xuICAgICAgICBnYXA6IDlweDtcbiAgICB9XG5cbiAgICAuc2l0ZS1oZWFkZXIgLmJyYW5kLWxvZ28ge1xuICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgIH1cblxuICAgIC5icmFuZC1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjk0cmVtO1xuICAgIH1cblxuICAgIC5icmFuZC1uYW1lOjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogLTRweDtcbiAgICB9XG5cbiAgICAuYnJhbmQtYWN0aXZpdHkge1xuICAgICAgICBtYXJnaW4tdG9wOiA5cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xOWVtO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDM5MHB4KSB7XG4gICAgLnNpdGUtaGVhZGVyIC5icmFuZC1jb3B5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuc2l0ZS1oZWFkZXIgLmJyYW5kLWxvZ28ge1xuICAgICAgICB3aWR0aDogNDhweDtcbiAgICAgICAgaGVpZ2h0OiA0OHB4O1xuICAgIH1cbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQVZJUyBHT09HTEUgQVVUT01BVElRVUVTXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5nb29nbGUtcmV2aWV3cy1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTExO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZ29vZ2xlLXJldmlld3MtaGVhZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogNDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzOHB4O1xufVxuLmdvb2dsZS1yZXZpZXdzLWhlYWRpbmcgaDIge1xuICAgIG1hcmdpbjogOXB4IDAgMTBweDtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuMnJlbSwgNHZ3LCA0LjJyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjk4O1xufVxuLmdvb2dsZS1yZXZpZXdzLWhlYWRpbmcgcCB7XG4gICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICNhYWE7XG59XG4uZ29vZ2xlLXJhdGluZy1zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxN3B4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHBhZGRpbmc6IDE4cHggMjJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgYmFja2dyb3VuZDogIzE5MTkxOTtcbn1cbi5nb29nbGUtcmF0aW5nLXN1bW1hcnkgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuNDVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG4uZ29vZ2xlLXJhdGluZy1zdW1tYXJ5IHNtYWxsIHtcbiAgICBjb2xvcjogI2FhYTtcbn1cbi5nb29nbGUtcmV2aWV3cy1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IDE4cHg7XG59XG4uZ29vZ2xlLXJldmlldy1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1pbi1oZWlnaHQ6IDI5MHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMjZweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzAzMDMwO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgYmFja2dyb3VuZDogIzE5MTkxOTtcbn1cbi5nb29nbGUtcmV2aWV3LWF1dGhvciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTNweDtcbn1cbi5nb29nbGUtcmV2aWV3LWF1dGhvciBpbWcsXG4uZ29vZ2xlLXJldmlldy1hdmF0YXIge1xuICAgIHdpZHRoOiA0NnB4O1xuICAgIGhlaWdodDogNDZweDtcbiAgICBmbGV4OiAwIDAgNDZweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uZ29vZ2xlLXJldmlldy1hdmF0YXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjMTExO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG4uZ29vZ2xlLXJldmlldy1hdXRob3IgYSxcbi5nb29nbGUtcmV2aWV3LWF1dGhvciBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4uZ29vZ2xlLXJldmlldy1hdXRob3IgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXJlZDIpO1xufVxuLmdvb2dsZS1yZXZpZXctYXV0aG9yIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzg4ODtcbn1cbi5nb29nbGUtcmV2aWV3LXN0YXJzIHtcbiAgICBtYXJnaW46IDE5cHggMCAxM3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgY29sb3I6ICM1NTU7XG59XG4uZ29vZ2xlLXJldmlldy1zdGFycyAuaXMtZmlsbGVkIHtcbiAgICBjb2xvcjogI2ZmYjQwMDtcbn1cbi5nb29nbGUtcmV2aWV3LWNhcmQgYmxvY2txdW90ZSB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY29sb3I6ICNkZGQ7XG4gICAgZm9udC1zaXplOiAxLjAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiA2O1xufVxuLmdvb2dsZS1yZXZpZXdzLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEycHg7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbn1cbi5idXR0b24tZ2hvc3QtZGFyayB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNDQ0O1xuICAgIGNvbG9yOiAjZmZmO1xufVxuLmJ1dHRvbi1naG9zdC1kYXJrOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogIzExMTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLmdvb2dsZS1yZXZpZXdzLWhlYWRpbmcge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAyNHB4O1xuICAgIH1cbiAgICAuZ29vZ2xlLXJldmlld3MtZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cbiAgICAuZ29vZ2xlLXJldmlldy1jYXJkIHtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC5nb29nbGUtcmF0aW5nLXN1bW1hcnkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmdvb2dsZS1yZXZpZXdzLWFjdGlvbnMge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLmdvb2dsZS1yZXZpZXdzLWFjdGlvbnMgLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLyogQXZpcyBHb29nbGUgbWFudWVscyA6IGF1Y3VuZSBBUEkgR29vZ2xlIG4nZXN0IHV0aWxpc8OpZS4gKi9cbi5nb29nbGUtcmV2aWV3cy1tYW51YWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAzMnB4O1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gICAgcGFkZGluZzogMjhweCAzMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XG59XG5cbi5nb29nbGUtcmV2aWV3cy1tYW51YWxfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5nb29nbGUtcmV2aWV3cy1tYW51YWwgcCB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5nb29nbGUtcmF0aW5nLXN1bW1hcnkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2MHB4KSB7XG4gICAgLmdvb2dsZS1yZXZpZXdzLW1hbnVhbCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgIH1cblxuICAgIC5nb29nbGUtcmV2aWV3cy1tYW51YWwgLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUEFHRSDDgCBQUk9QT1NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmFib3V0LWhlcm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6XG4gICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNzglIDM4JSwgcmdiYSgxOTgsIDQzLCAyOSwgMC4xOCksIHRyYW5zcGFyZW50IDI4JSksXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxMTEgMCUsICMxODE4MTggNTUlLCAjMGMwYzBjIDEwMCUpO1xufVxuLmFib3V0LWhlcm86OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgb3BhY2l0eTogMC4yODtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksXG4gICAgICAgIGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsMjU1LDI1NSwuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1MnB4IDUycHg7XG59XG4uYWJvdXQtaGVyby1ncmlkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuMDhmciAuOTJmcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOTBweDtcbiAgICBtaW4taGVpZ2h0OiA2NTBweDtcbiAgICBwYWRkaW5nOiA5NXB4IDA7XG59XG4uYWJvdXQtaGVyby1jb3B5IGgxIHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIG1hcmdpbjogMCAwIDI2cHg7XG4gICAgZm9udC1zaXplOiBjbGFtcCgzLjVyZW0sIDYuNXZ3LCA2LjZyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAuOTE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0uMDU4ZW07XG59XG4uYWJvdXQtaGVyby1jb3B5IGgxIHN0cm9uZyB7IGNvbG9yOiAjZGYzMzIzOyB9XG4uYWJvdXQtbGVhZCB7XG4gICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICNkMGQwZDA7XG4gICAgZm9udC1zaXplOiAxLjE4cmVtO1xufVxuLmFib3V0LWhlcm8tYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMjRweDtcbiAgICBtYXJnaW4tdG9wOiAzNHB4O1xufVxuLmFib3V0LWlubGluZS1saW5rIHtcbiAgICBjb2xvcjogI2M4YzhjODtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXMgZWFzZTtcbn1cbi5hYm91dC1pbmxpbmUtbGluazpob3ZlciB7IGNvbG9yOiAjZmZmOyB9XG4uYWJvdXQtc2lnbmF0dXJlLWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1pbi1oZWlnaHQ6IDQzMHB4O1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgcmdiYSgyNTUsMjU1LDI1NSwuMDgpLCByZ2JhKDI1NSwyNTUsMjU1LC4wMjUpKTtcbiAgICBib3gtc2hhZG93OiAwIDQ1cHggMTAwcHggcmdiYSgwLDAsMCwuNCk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE0cHgpO1xufVxuLmFib3V0LXNpZ25hdHVyZS1jYXJkOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0xMTBweDtcbiAgICBib3R0b206IC0xMjBweDtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgcmdiYSgxOTgsNDMsMjksLjQyKSwgdHJhbnNwYXJlbnQgNjclKTtcbn1cbi5hYm91dC1zaWduYXR1cmUtdG9wLFxuLmFib3V0LXNpZ25hdHVyZS1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMThweDtcbn1cbi5hYm91dC1zaWduYXR1cmUtdG9wIHtcbiAgICBjb2xvcjogI2E5YTlhOTtcbiAgICBmb250LXNpemU6IC43MnJlbTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMTFlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLmFib3V0LW1vbm9ncmFtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1pbi1oZWlnaHQ6IDI5MHB4O1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG59XG4uYWJvdXQtbW9ub2dyYW06OmJlZm9yZSxcbi5hYm91dC1tb25vZ3JhbTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTk4LDQzLDI5LC4zNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmFib3V0LW1vbm9ncmFtOjpiZWZvcmUgeyB3aWR0aDogMjQ1cHg7IGhlaWdodDogMjQ1cHg7IH1cbi5hYm91dC1tb25vZ3JhbTo6YWZ0ZXIgeyB3aWR0aDogMTg1cHg7IGhlaWdodDogMTg1cHg7IH1cbi5hYm91dC1tb25vZ3JhbSBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMjBweCAzNXB4IHJnYmEoMCwwLDAsLjQ1KSk7XG59XG4uYWJvdXQtc2lnbmF0dXJlLWJvdHRvbSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xufVxuLmFib3V0LXNpZ25hdHVyZS1ib3R0b20gZGl2IHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuLmFib3V0LXNpZ25hdHVyZS1ib3R0b20gc21hbGwgeyBjb2xvcjogIzg4ODsgfVxuLmFib3V0LXNpZ25hdHVyZS1ib3R0b20gc3Ryb25nIHsgbWFyZ2luLXRvcDogNHB4OyBmb250LXNpemU6IC45NXJlbTsgfVxuLmFib3V0LWludHJvLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuODVmciAxLjE1ZnI7XG4gICAgZ2FwOiAxMDBweDtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG4uYWJvdXQta2lja2VyIHtcbiAgICBjb2xvcjogdmFyKC0tcmVkMik7XG4gICAgZm9udC1zaXplOiAuNzhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA5ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5hYm91dC1zdGF0ZW1lbnQgaDIge1xuICAgIG1hcmdpbjogMTNweCAwIDA7XG4gICAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCA2dncsIDUuOHJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IC45MjtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wNTVlbTtcbn1cbi5hYm91dC1pbnRyby10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuLmFib3V0LWludHJvLXRleHQgcDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cbi5hYm91dC1leHBlcnRpc2UtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogMjJweDtcbn1cbi5hYm91dC1leHBlcnRpc2UtY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDM5MHB4O1xuICAgIHBhZGRpbmc6IDM4cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uYWJvdXQtZXhwZXJ0aXNlLWRhcmsge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogIzI1MjUyNTtcbiAgICBiYWNrZ3JvdW5kOiAjMTQxNDE0O1xufVxuLmFib3V0LWNhcmQtbnVtYmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNHB4O1xuICAgIHJpZ2h0OiAyOHB4O1xuICAgIGNvbG9yOiAjZDdkN2Q3O1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmFib3V0LWV4cGVydGlzZS1kYXJrIC5hYm91dC1jYXJkLW51bWJlciB7IGNvbG9yOiAjMmMyYzJjOyB9XG4uYWJvdXQtY2FyZC1pY29uIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHdpZHRoOiA3NnB4O1xuICAgIGhlaWdodDogNzZweDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDc1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTdweDtcbiAgICBiYWNrZ3JvdW5kOiAjZjRmNGYyO1xufVxuLmFib3V0LWV4cGVydGlzZS1kYXJrIC5hYm91dC1jYXJkLWljb24geyBiYWNrZ3JvdW5kOiAjMjIyOyB9XG4uYWJvdXQtY2FyZC1pY29uIHN2ZyB7XG4gICAgd2lkdGg6IDQ2cHg7XG4gICAgaGVpZ2h0OiA0NnB4O1xuICAgIGZpbGw6IG5vbmU7XG4gICAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG4gICAgc3Ryb2tlLXdpZHRoOiAyLjQ7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG59XG4uYWJvdXQtY2FyZC1pY29uIC5hY2NlbnQgeyBzdHJva2U6IHZhcigtLXJlZDIpOyB9XG4uYWJvdXQtY2FyZC1pY29uIC5hY2NlbnQtZmlsbCB7IGZpbGw6IHZhcigtLXJlZDIpOyBzdHJva2U6IG5vbmU7IH1cbi5hYm91dC1leHBlcnRpc2UtY2FyZCBoMyB7IG1hcmdpbjogMCAwIDE0cHg7IGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuLmFib3V0LWV4cGVydGlzZS1jYXJkIHAgeyBtYXgtd2lkdGg6IDUzMHB4OyBtYXJnaW4tYm90dG9tOiAwOyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9XG4uYWJvdXQtZXhwZXJ0aXNlLWRhcmsgcCB7IGNvbG9yOiAjYjliOWI5OyB9XG4uYWJvdXQtdGltZWxpbmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDk4MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLmFib3V0LXRpbWVsaW5lOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMTM1cHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5lKTtcbn1cbi5hYm91dC10aW1lbGluZS1pdGVtIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTM1cHggMWZyO1xuICAgIGdhcDogNDJweDtcbiAgICBwYWRkaW5nOiAwIDAgNTVweDtcbn1cbi5hYm91dC10aW1lbGluZS1pdGVtOmxhc3QtY2hpbGQgeyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuLmFib3V0LXRpbWVsaW5lLXllYXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogdmFyKC0tcmVkKTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG4uYWJvdXQtdGltZWxpbmUteWVhcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNnB4O1xuICAgIHJpZ2h0OiAtN3B4O1xuICAgIHdpZHRoOiAxM3B4O1xuICAgIGhlaWdodDogMTNweDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1yZWQyKTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tcmVkMik7XG59XG4uYWJvdXQtdGltZWxpbmUtaXRlbSBoMyB7IG1hcmdpbjogLTRweCAwIDhweDsgZm9udC1zaXplOiAxLjU1cmVtOyB9XG4uYWJvdXQtdGltZWxpbmUtaXRlbSBwIHsgbWF4LXdpZHRoOiA2NTBweDsgbWFyZ2luOiAwOyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9XG4uYWJvdXQtdmFsdWVzLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGluZSk7XG59XG4uYWJvdXQtdmFsdWUtY2FyZCB7XG4gICAgbWluLWhlaWdodDogMjc1cHg7XG4gICAgcGFkZGluZzogMzZweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLmFib3V0LXZhbHVlLWNhcmQgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLXJlZDIpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cbi5hYm91dC12YWx1ZS1jYXJkIGgzIHsgbWFyZ2luOiAwIDAgMTJweDsgZm9udC1zaXplOiAxLjU1cmVtOyB9XG4uYWJvdXQtdmFsdWUtY2FyZCBwIHsgbWF4LXdpZHRoOiA1MjBweDsgbWFyZ2luOiAwOyBjb2xvcjogdmFyKC0tbXV0ZWQpOyB9XG4uYWJvdXQtZGlmZmVyZW5jZS1zZWN0aW9uIHsgYmFja2dyb3VuZDogIzExMTsgY29sb3I6ICNmZmY7IH1cbi5hYm91dC1kaWZmZXJlbmNlLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAuOGZyIDEuMmZyO1xuICAgIGdhcDogNzVweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmFib3V0LWRpZmZlcmVuY2UtY29weSBoMiB7XG4gICAgbWFyZ2luOiAwIDAgMjJweDtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuNXJlbSwgNC41dncsIDQuNXJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IC45ODtcbiAgICBsZXR0ZXItc3BhY2luZzogLS4wNDVlbTtcbn1cbi5hYm91dC1kaWZmZXJlbmNlLWNvcHkgcCB7IGNvbG9yOiAjYjliOWI5OyB9XG4uYWJvdXQtZGlmZmVyZW5jZS1jb3B5IC50ZXh0LWxpbmsgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi10b3A6IDE1cHg7IGNvbG9yOiAjZTU0ODM3OyB9XG4uYWJvdXQtY29tcGFyaXNvbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMzMzO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogIzE3MTcxNztcbn1cbi5hYm91dC1jb21wYXJpc29uID4gZGl2IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogLjc1ZnIgMWZyIDFmcjtcbiAgICBnYXA6IDIwcHg7XG4gICAgcGFkZGluZzogMThweCAyMnB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzAzMDMwO1xufVxuLmFib3V0LWNvbXBhcmlzb24gPiBkaXY6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDA7IH1cbi5hYm91dC1jb21wYXJpc29uLWhlYWQge1xuICAgIGJhY2tncm91bmQ6ICMyMDIwMjA7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5hYm91dC1jb21wYXJpc29uLWhlYWQ6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXCI7IH1cbi5hYm91dC1jb21wYXJpc29uIHN0cm9uZyB7IGNvbG9yOiAjZmZmOyB9XG4uYWJvdXQtY29tcGFyaXNvbiBzcGFuIHsgY29sb3I6ICNhYWE7IH1cbi5hYm91dC1jb21wYXJpc29uID4gZGl2IHNwYW46Zmlyc3Qtb2YtdHlwZSB7IGNvbG9yOiAjZmZmOyBmb250LXdlaWdodDogNzAwOyB9XG4uYWJvdXQtZmluYWwtY3RhIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuLmFib3V0LWZpbmFsLWN0YSAuZXllYnJvdyB7IG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAgIC5hYm91dC1oZXJvLWdyaWQgeyBnYXA6IDUwcHg7IH1cbiAgICAuYWJvdXQtZGlmZmVyZW5jZS1ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC5hYm91dC1oZXJvLWdyaWQsXG4gICAgLmFib3V0LWludHJvLWdyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgfVxuICAgIC5hYm91dC1oZXJvLWdyaWQgeyBtaW4taGVpZ2h0OiBhdXRvOyBwYWRkaW5nOiA3NXB4IDA7IH1cbiAgICAuYWJvdXQtc2lnbmF0dXJlLWNhcmQgeyBtYXgtd2lkdGg6IDYwMHB4OyB3aWR0aDogMTAwJTsgfVxuICAgIC5hYm91dC1pbnRyby1ncmlkIHsgZ2FwOiA0MHB4OyB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgICAuYWJvdXQtZXhwZXJ0aXNlLWdyaWQsXG4gICAgLmFib3V0LXZhbHVlcy1ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAuYWJvdXQtaGVyby1jb3B5IGgxIHsgZm9udC1zaXplOiAzLjY1cmVtOyB9XG4gICAgLmFib3V0LWhlcm8tYWN0aW9ucyB7IGFsaWduLWl0ZW1zOiBzdHJldGNoOyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmFib3V0LWhlcm8tYWN0aW9ucyAuYnV0dG9uIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAuYWJvdXQtc2lnbmF0dXJlLWNhcmQgeyBtaW4taGVpZ2h0OiAzNzBweDsgfVxuICAgIC5hYm91dC1tb25vZ3JhbSB7IG1pbi1oZWlnaHQ6IDIzMHB4OyB9XG4gICAgLmFib3V0LW1vbm9ncmFtOjpiZWZvcmUgeyB3aWR0aDogMjAwcHg7IGhlaWdodDogMjAwcHg7IH1cbiAgICAuYWJvdXQtbW9ub2dyYW06OmFmdGVyIHsgd2lkdGg6IDE1MHB4OyBoZWlnaHQ6IDE1MHB4OyB9XG4gICAgLmFib3V0LW1vbm9ncmFtIGltZyB7IHdpZHRoOiAxMjVweDsgfVxuICAgIC5hYm91dC10aW1lbGluZSB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmFib3V0LXRpbWVsaW5lOjpiZWZvcmUgeyBsZWZ0OiAxMHB4OyB9XG4gICAgLmFib3V0LXRpbWVsaW5lLWl0ZW0geyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgZ2FwOiAxMHB4OyBwYWRkaW5nLWxlZnQ6IDM4cHg7IH1cbiAgICAuYWJvdXQtdGltZWxpbmUteWVhciB7IHRleHQtYWxpZ246IGxlZnQ7IHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAuYWJvdXQtdGltZWxpbmUteWVhcjo6YWZ0ZXIgeyBsZWZ0OiAtMzRweDsgcmlnaHQ6IGF1dG87IH1cbiAgICAuYWJvdXQtY29tcGFyaXNvbiA+IGRpdiB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyBnYXA6IDdweDsgfVxuICAgIC5hYm91dC1jb21wYXJpc29uLWhlYWQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAuYWJvdXQtY29tcGFyaXNvbiA+IGRpdiBzcGFuOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICBjb2xvcjogIzc3NztcbiAgICAgICAgZm9udC1zaXplOiAuNjZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDZlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLmFib3V0LWNvbXBhcmlzb24gPiBkaXYgc3BhbjpmaXJzdC1vZi10eXBlOjpiZWZvcmUgeyBjb250ZW50OiBcIkF2ZWMgUmF1Z3VpXCI7IH1cbiAgICAuYWJvdXQtY29tcGFyaXNvbiA+IGRpdiBzcGFuOmxhc3Qtb2YtdHlwZTo6YmVmb3JlIHsgY29udGVudDogXCJBcHByb2NoZSBzdGFuZGFyZGlzw6llXCI7IH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgIC5hYm91dC1oZXJvLWNvcHkgaDEgeyBmb250LXNpemU6IDMuMDVyZW07IH1cbiAgICAuYWJvdXQtc2lnbmF0dXJlLXRvcCB7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogNXB4OyB9XG4gICAgLmFib3V0LXNpZ25hdHVyZS1ib3R0b20geyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmFib3V0LWV4cGVydGlzZS1jYXJkLFxuICAgIC5hYm91dC12YWx1ZS1jYXJkIHsgcGFkZGluZzogMjhweDsgfVxufVxuXG4uZm9vdGVyLXNvY2lhbHN7ZGlzcGxheTpmbGV4O2dhcDo4cHg7bWFyZ2luLXRvcDoxMnB4fS5mb290ZXItc29jaWFscyBhe2Rpc3BsYXk6Z3JpZCFpbXBvcnRhbnQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7Ym9yZGVyLXJhZGl1czoxMHB4fS5mb290ZXItc29jaWFscyBhOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpfVxuXG4vKiBGb290ZXIgVjIgKi9cbi5zaXRlLWZvb3RlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogNzJweCAwIDI0cHg7XG4gICAgYmFja2dyb3VuZDpcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxMCUgMCUsIHJnYmEoMTQwLCAzMSwgMTksIC4yMiksIHRyYW5zcGFyZW50IDM0JSksXG4gICAgICAgICMwZDBkMGU7XG4gICAgY29sb3I6ICNmZmY7XG59XG4uc2l0ZS1mb290ZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDAgMCBhdXRvO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdHJhbnNwYXJlbnQsIHJnYmEoMjU1LDI1NSwyNTUsLjI1KSwgdHJhbnNwYXJlbnQpO1xufVxuLmZvb3Rlci1tYWluIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgyODBweCwgMS41ZnIpIHJlcGVhdCgzLCBtaW5tYXgoMTUwcHgsIDFmcikpO1xuICAgIGdhcDogY2xhbXAoMzJweCwgNXZ3LCA3MnB4KTtcbn1cbi5mb290ZXItaWRlbnRpdHkgeyBtYXgtd2lkdGg6IDM5MHB4OyB9XG4uZm9vdGVyLWxvZ28geyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuLmZvb3Rlci1sb2dvIGltZyB7IHdpZHRoOiAxODVweDsgaGVpZ2h0OiBhdXRvOyB9XG4uZm9vdGVyLXNsb2dhbiB7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuMjVyZW0sIDJ2dywgMS42NXJlbSk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbi5mb290ZXItZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogI2FhYTtcbiAgICBmb250LXNpemU6IC45NnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xufVxuLmZvb3Rlci1jb2x1bW4gaDIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDVweCAwIDIycHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAuNzhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjEzZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5mb290ZXItY29sdW1uIGgyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudCwgIzhjMWYxMyk7XG59XG4uZm9vdGVyLWNvbHVtbiA+IGEsXG4uZm9vdGVyLWNvbHVtbiBuYXYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIG1hcmdpbjogMCAwIDExcHg7XG4gICAgY29sb3I6ICNhYWE7XG4gICAgZm9udC1zaXplOiAuOTJyZW07XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2UsIHRyYW5zZm9ybSAuMnMgZWFzZTtcbn1cbi5mb290ZXItY29sdW1uID4gYTpob3Zlcixcbi5mb290ZXItY29sdW1uIG5hdiBhOmhvdmVyIHsgY29sb3I6ICNmZmY7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOyB9XG4uZm9vdGVyLWNvbnRhY3QgPiBhOm5vdCguZm9vdGVyLWNvbnRhY3QtYnV0dG9uKSxcbi5mb290ZXItY29udGFjdCA+IHAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiAxMXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDEzcHg7XG4gICAgY29sb3I6ICNhYWE7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuLmZvb3Rlci1jb250YWN0IGkgeyB3aWR0aDogMTZweDsgbWFyZ2luLXRvcDogM3B4OyBjb2xvcjogI2QwNWE0YzsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4uZm9vdGVyLWNvbnRhY3Qgc3BhbiB7IG1hcmdpbjogMDsgfVxuLmZvb3Rlci1jb250YWN0LWJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTFweCAxNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjE1KTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5mb290ZXItY29udGFjdC1idXR0b246aG92ZXIgeyBib3JkZXItY29sb3I6ICNkMDVhNGM7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KSAhaW1wb3J0YW50OyB9XG4uZm9vdGVyLXNvY2lhbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogOXB4O1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG59XG4uZm9vdGVyLXNvY2lhbHMgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAxM3B4O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEzKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGNvbG9yOiAjZDBkMGQwICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAuODJyZW0gIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjJzIGVhc2UsIGJhY2tncm91bmQgLjJzIGVhc2UsIGNvbG9yIC4ycyBlYXNlLCB0cmFuc2Zvcm0gLjJzIGVhc2U7XG59XG4uZm9vdGVyLXNvY2lhbHMgYTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDIwOCw5MCw3NiwuOCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxNDAsMzEsMTksLjE1KTtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbn1cbi5mb290ZXItc29jaWFscyBhIHNwYW4geyBkaXNwbGF5OiBpbmxpbmU7IG1hcmdpbjogMDsgY29sb3I6IGluaGVyaXQ7IGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuLmZvb3Rlci1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDU4cHg7XG4gICAgcGFkZGluZy10b3A6IDIycHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA5KTtcbiAgICBjb2xvcjogIzc3Nztcbn1cbi5mb290ZXItYm90dG9tIGEgeyBjb2xvcjogIzg4ODsgfVxuLmZvb3Rlci1ib3R0b20gYTpob3ZlciB7IGNvbG9yOiAjZmZmOyB9XG5AbWVkaWEgKG1heC13aWR0aDogMTA1MHB4KSB7XG4gICAgLmZvb3Rlci1tYWluIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjRmciByZXBlYXQoMiwgMWZyKTsgfVxuICAgIC5mb290ZXItY29udGFjdCB7IGdyaWQtY29sdW1uOiAyIC8gLTE7IH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjBweCkge1xuICAgIC5zaXRlLWZvb3RlciB7IHBhZGRpbmctdG9wOiA1NHB4OyB9XG4gICAgLmZvb3Rlci1tYWluIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOyBnYXA6IDM4cHggMjhweDsgfVxuICAgIC5mb290ZXItaWRlbnRpdHkgeyBncmlkLWNvbHVtbjogMSAvIC0xOyBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAuZm9vdGVyLWNvbnRhY3QgeyBncmlkLWNvbHVtbjogMSAvIC0xOyB9XG4gICAgLmZvb3Rlci1ib3R0b20geyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxNHB4OyB9XG4gICAgLmZvb3Rlci1ib3R0b20gZGl2IHsgZmxleC13cmFwOiB3cmFwOyBnYXA6IDEwcHggMThweDsgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLmZvb3Rlci1tYWluIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgICAuZm9vdGVyLWlkZW50aXR5LCAuZm9vdGVyLWNvbnRhY3QgeyBncmlkLWNvbHVtbjogYXV0bzsgfVxuICAgIC5mb290ZXItc29jaWFscyBhIHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvb3Rlci1zb2NpYWxzIGEgeyB3aWR0aDogNDBweCAhaW1wb3J0YW50OyBwYWRkaW5nOiAwOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxufVxuXG4uc2VydmljZS1pY29uIHtcbiAgICB3aWR0aDogNzJweDtcbiAgICBoZWlnaHQ6IDcycHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDI4cHg7XG59XG5cbi5zZXJ2aWNlLWljb24gc3ZnIHtcbiAgICB3aWR0aDogNzJweDtcbiAgICBoZWlnaHQ6IDcycHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgc3Ryb2tlOiAjMTcxNzE3O1xuICAgIHN0cm9rZS13aWR0aDogMztcbiAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbn1cblxuLnNlcnZpY2UtaWNvbiBzdmcgLmFjY2VudCB7XG4gICAgc3Ryb2tlOiB2YXIoLS1yZWQyKTtcbn1cblxuLnNlcnZpY2UtaWNvbiBzdmcgLmFjY2VudC1maWxsIHtcbiAgICBmaWxsOiB2YXIoLS1yZWQyKTtcbiAgICBzdHJva2U6IHZhcigtLXJlZDIpO1xufVxuXG4uc2VydmljZS1jYXJkOmhvdmVyIC5zZXJ2aWNlLWljb24gc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG59XG5cbi5zZXJ2aWNlLWljb24gc3ZnIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xufSJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/