/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/responsive-sidebar.css ***!
  \*****************************************************************************************************************************/
/* assets/styles/responsive-sidebar.css */

/* Sidebar responsive styles */

/* Variables CSS pour la cohérence */
:root {
    --sidebar-width: 280px;
    --sidebar-bg: #f8f9fa;
    --sidebar-border: #dee2e6;
    --sidebar-link-hover: #e9ecef;
    --sidebar-active: #0d6efd;
    --header-height: 60px;
}

/* Header responsive */
.navbar {
    min-height: var(--header-height);
    z-index: 1030;
    padding: 0.5rem 1rem;
}

.navbar-brand {
    max-width: 200px;
    overflow: hidden;
}

.navbar-brand img {
    max-height: 28px !important;
    max-width: 40px !important;
    object-fit: contain !important;
}

.navbar-brand span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-toggle {
    border: none !important;
    box-shadow: none !important;
}

.sidebar-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25) !important;
}

/* Sidebar Desktop */
.sidebar-desktop {
    width: var(--sidebar-width) !important;
    background-color: var(--sidebar-bg) !important;
    border-right: 1px solid var(--sidebar-border) !important;
    position: sticky;
    top: 0;
    height: 100vh;
    overflow-y: auto;
    z-index: 1020;
}

.sidebar-desktop .nav-link {
    color: #495057;
    border-radius: 0.375rem;
    margin-bottom: 0.25rem;
    transition: all 0.15s ease-in-out;
}

.sidebar-desktop .nav-link:hover {
    background-color: var(--sidebar-link-hover);
    color: #212529;
}

.sidebar-desktop .nav-link.active {
    background-color: var(--sidebar-active);
    color: white;
}

.sidebar-desktop .nav-link i {
    width: 1.2rem;
    text-align: center;
}

/* Sidebar Mobile (Offcanvas) */
.offcanvas {
    width: var(--sidebar-width) !important;
    max-width: 85vw !important;
    z-index: 1055 !important;
}

.offcanvas-backdrop {
    z-index: 1050 !important;
}

/* Correction du débordement mobile */
@media (max-width: 575.98px) {
    .offcanvas {
        width: 85vw !important;
        max-width: 300px !important;
    }
}

.offcanvas-body .nav-link {
    color: #495057;
    border-radius: 0.375rem;
    margin-bottom: 0.25rem;
    transition: all 0.15s ease-in-out;
}

.offcanvas-body .nav-link:hover {
    background-color: var(--sidebar-link-hover);
    color: #212529;
}

.offcanvas-body .nav-link.active {
    background-color: var(--sidebar-active);
    color: white;
}

/* Badges dans la sidebar */
.nav-link .badge {
    font-size: 0.75rem;
    min-width: 1.5rem;
    height: 1.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Dropdown utilisateur */
.dropdown-menu {
    border: 1px solid var(--sidebar-border);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    min-width: 200px;
    z-index: 1060;
}

.dropdown-item {
    transition: all 0.15s ease-in-out;
}

.dropdown-item:hover {
    background-color: var(--sidebar-link-hover);
}

/* Bouton changement de thème */
#theme-toggle {
    border: 1px solid #dee2e6;
    transition: all 0.15s ease-in-out;
}

#theme-toggle:hover {
    background-color: var(--sidebar-link-hover);
    border-color: var(--sidebar-active);
}

/* Corrections pour mobile */
@media (max-width: 767.98px) {
    .navbar-nav {
        flex-direction: row !important;
        align-items: center !important;
    }

    .dropdown-menu {
        position: absolute !important;
        right: 0 !important;
        left: auto !important;
        transform: none !important;
        min-width: 180px;
    }

    .navbar-toggler {
        order: 3;
    }

    .navbar-nav {
        order: 2;
    }
}

/* CORRECTION CRITIQUE : Masquer complètement la sidebar desktop sur mobile */
@media (max-width: 991.98px) {
    .sidebar-desktop {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        left: -9999px !important;
    }

    /* S'assurer que le contenu principal prend toute la largeur */
    .main-content {
        width: 100% !important;
        margin-left: 0 !important;
        max-width: 100% !important;
    }

    /* Forcer le layout flex à ne pas tenir compte de la sidebar */
    .d-flex.flex-grow-1 {
        flex-direction: column !important;
    }
}

/* Responsive breakpoints */

/* Mobile First - Smartphones (< 576px) */
@media (max-width: 575.98px) {
    .navbar-brand span {
        font-size: 0.9rem;
    }
    
    .sidebar-toggle {
        padding: 0.25rem 0.5rem;
        font-size: 0.875rem;
    }
    
    .offcanvas {
        width: 85vw !important;
        max-width: 300px !important;
    }
    
    .container-fluid {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
}

/* Tablets (576px - 991.98px) */
@media (min-width: 576px) and (max-width: 991.98px) {
    .offcanvas {
        width: 320px !important;
    }
    
    .navbar-brand {
        font-size: 1.1rem;
    }
}

/* Desktop (≥ 992px) */
@media (min-width: 992px) {
    .sidebar-toggle {
        display: none !important;
    }
    
    .sidebar-desktop {
        display: flex !important;
    }
    
    /* Ajustement du contenu principal */
    .main-content {
        margin-left: 0;
        width: calc(100% - var(--sidebar-width));
    }
}

/* Large Desktop (≥ 1200px) */
@media (min-width: 1200px) {
    .sidebar-desktop {
        width: 300px !important;
    }
    
    .main-content {
        width: calc(100% - 300px);
    }
}

/* Extra Large Desktop (≥ 1400px) */
@media (min-width: 1400px) {
    .container-fluid {
        max-width: 1320px;
        margin: 0 auto;
    }
}

/* Animations et transitions */
.sidebar-desktop,
.offcanvas {
    transition: transform 0.3s ease-in-out;
}

.nav-link,
.dropdown-item {
    transition: all 0.15s ease-in-out;
}

/* Accessibilité */
.sidebar-toggle:focus,
.nav-link:focus,
.dropdown-toggle:focus {
    outline: 2px solid var(--sidebar-active);
    outline-offset: 2px;
}

/* Mode sombre (optionnel) */
@media (prefers-color-scheme: dark) {
    :root {
        --sidebar-bg: #212529;
        --sidebar-border: #495057;
        --sidebar-link-hover: #343a40;
    }
    
    .sidebar-desktop,
    .offcanvas-body {
        background-color: var(--sidebar-bg) !important;
        color: #fff;
    }
    
    .nav-link {
        color: #adb5bd;
    }
    
    .nav-link:hover {
        color: #fff;
    }
}

/* Print styles */
@media print {
    .sidebar-desktop,
    .offcanvas,
    .sidebar-toggle,
    .navbar {
        display: none !important;
    }
    
    .main-content {
        width: 100% !important;
        margin: 0 !important;
    }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QkFBdUI7UUFDdkIsbUJBQW1CO0lBQ3ZCOztJQUVBO1FBQ0ksc0JBQXNCO1FBQ3RCLDJCQUEyQjtJQUMvQjs7SUFFQTtRQUNJLHFCQUFxQjtRQUNyQixzQkFBc0I7SUFDMUI7QUFDSjs7QUFFQSwrQkFBK0I7QUFDL0I7SUFDSTtRQUNJLHVCQUF1QjtJQUMzQjs7SUFFQTtRQUNJLGlCQUFpQjtJQUNyQjtBQUNKOztBQUVBLHNCQUFzQjtBQUN0QjtJQUNJO1FBQ0ksd0JBQXdCO0lBQzVCOztJQUVBO1FBQ0ksd0JBQXdCO0lBQzVCOztJQUVBLG9DQUFvQztJQUNwQztRQUNJLGNBQWM7UUFDZCx3Q0FBd0M7SUFDNUM7QUFDSjs7QUFFQSw2QkFBNkI7QUFDN0I7SUFDSTtRQUNJLHVCQUF1QjtJQUMzQjs7SUFFQTtRQUNJLHlCQUF5QjtJQUM3QjtBQUNKOztBQUVBLG1DQUFtQztBQUNuQztJQUNJO1FBQ0ksaUJBQWlCO1FBQ2pCLGNBQWM7SUFDbEI7QUFDSjs7QUFFQSw4QkFBOEI7QUFDOUI7O0lBRUksc0NBQXNDO0FBQzFDOztBQUVBOztJQUVJLGlDQUFpQztBQUNyQzs7QUFFQSxrQkFBa0I7QUFDbEI7OztJQUdJLHdDQUF3QztJQUN4QyxtQkFBbUI7QUFDdkI7O0FBRUEsNEJBQTRCO0FBQzVCO0lBQ0k7UUFDSSxxQkFBcUI7UUFDckIseUJBQXlCO1FBQ3pCLDZCQUE2QjtJQUNqQzs7SUFFQTs7UUFFSSw4Q0FBOEM7UUFDOUMsV0FBVztJQUNmOztJQUVBO1FBQ0ksY0FBYztJQUNsQjs7SUFFQTtRQUNJLFdBQVc7SUFDZjtBQUNKOztBQUVBLGlCQUFpQjtBQUNqQjtJQUNJOzs7O1FBSUksd0JBQXdCO0lBQzVCOztJQUVBO1FBQ0ksc0JBQXNCO1FBQ3RCLG9CQUFvQjtJQUN4QjtBQUNKIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9yZXNwb25zaXZlLXNpZGViYXIuY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGFzc2V0cy9zdHlsZXMvcmVzcG9uc2l2ZS1zaWRlYmFyLmNzcyAqL1xuXG4vKiBTaWRlYmFyIHJlc3BvbnNpdmUgc3R5bGVzICovXG5cbi8qIFZhcmlhYmxlcyBDU1MgcG91ciBsYSBjb2jDqXJlbmNlICovXG46cm9vdCB7XG4gICAgLS1zaWRlYmFyLXdpZHRoOiAyODBweDtcbiAgICAtLXNpZGViYXItYmc6ICNmOGY5ZmE7XG4gICAgLS1zaWRlYmFyLWJvcmRlcjogI2RlZTJlNjtcbiAgICAtLXNpZGViYXItbGluay1ob3ZlcjogI2U5ZWNlZjtcbiAgICAtLXNpZGViYXItYWN0aXZlOiAjMGQ2ZWZkO1xuICAgIC0taGVhZGVyLWhlaWdodDogNjBweDtcbn1cblxuLyogSGVhZGVyIHJlc3BvbnNpdmUgKi9cbi5uYXZiYXIge1xuICAgIG1pbi1oZWlnaHQ6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICAgIHotaW5kZXg6IDEwMzA7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG59XG5cbi5uYXZiYXItYnJhbmQge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm5hdmJhci1icmFuZCBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDI4cHggIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDQwcHggIWltcG9ydGFudDtcbiAgICBvYmplY3QtZml0OiBjb250YWluICFpbXBvcnRhbnQ7XG59XG5cbi5uYXZiYXItYnJhbmQgc3BhbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uc2lkZWJhci10b2dnbGUge1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnNpZGViYXItdG9nZ2xlOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMywgMTEwLCAyNTMsIDAuMjUpICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNpZGViYXIgRGVza3RvcCAqL1xuLnNpZGViYXItZGVza3RvcCB7XG4gICAgd2lkdGg6IHZhcigtLXNpZGViYXItd2lkdGgpICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2lkZWJhci1iZykgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1zaWRlYmFyLWJvcmRlcikgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgei1pbmRleDogMTAyMDtcbn1cblxuLnNpZGViYXItZGVza3RvcCAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2lkZWJhci1kZXNrdG9wIC5uYXYtbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2lkZWJhci1saW5rLWhvdmVyKTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLnNpZGViYXItZGVza3RvcCAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zaWRlYmFyLWFjdGl2ZSk7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG4uc2lkZWJhci1kZXNrdG9wIC5uYXYtbGluayBpIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogU2lkZWJhciBNb2JpbGUgKE9mZmNhbnZhcykgKi9cbi5vZmZjYW52YXMge1xuICAgIHdpZHRoOiB2YXIoLS1zaWRlYmFyLXdpZHRoKSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogODV2dyAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDEwNTUgIWltcG9ydGFudDtcbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gICAgei1pbmRleDogMTA1MCAhaW1wb3J0YW50O1xufVxuXG4vKiBDb3JyZWN0aW9uIGR1IGTDqWJvcmRlbWVudCBtb2JpbGUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgIC5vZmZjYW52YXMge1xuICAgICAgICB3aWR0aDogODV2dyAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ub2ZmY2FudmFzLWJvZHkgLm5hdi1saW5rIHtcbiAgICBjb2xvcjogIzQ5NTA1NztcbiAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IC5uYXYtbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2lkZWJhci1saW5rLWhvdmVyKTtcbiAgICBjb2xvcjogIzIxMjUyOTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IC5uYXYtbGluay5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNpZGViYXItYWN0aXZlKTtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi8qIEJhZGdlcyBkYW5zIGxhIHNpZGViYXIgKi9cbi5uYXYtbGluayAuYmFkZ2Uge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBtaW4td2lkdGg6IDEuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4vKiBEcm9wZG93biB1dGlsaXNhdGV1ciAqL1xuLmRyb3Bkb3duLW1lbnUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpZGViYXItYm9yZGVyKTtcbiAgICBib3gtc2hhZG93OiAwIDAuNXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICB6LWluZGV4OiAxMDYwO1xufVxuXG4uZHJvcGRvd24taXRlbSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuXG4uZHJvcGRvd24taXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2lkZWJhci1saW5rLWhvdmVyKTtcbn1cblxuLyogQm91dG9uIGNoYW5nZW1lbnQgZGUgdGjDqG1lICovXG4jdGhlbWUtdG9nZ2xlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuI3RoZW1lLXRvZ2dsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2lkZWJhci1saW5rLWhvdmVyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXNpZGViYXItYWN0aXZlKTtcbn1cblxuLyogQ29ycmVjdGlvbnMgcG91ciBtb2JpbGUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdyAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgbWluLXdpZHRoOiAxODBweDtcbiAgICB9XG5cbiAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICBvcmRlcjogMztcbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdiB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cbn1cblxuLyogQ09SUkVDVElPTiBDUklUSVFVRSA6IE1hc3F1ZXIgY29tcGzDqHRlbWVudCBsYSBzaWRlYmFyIGRlc2t0b3Agc3VyIG1vYmlsZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgLnNpZGViYXItZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgbGVmdDogLTk5OTlweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIFMnYXNzdXJlciBxdWUgbGUgY29udGVudSBwcmluY2lwYWwgcHJlbmQgdG91dGUgbGEgbGFyZ2V1ciAqL1xuICAgIC5tYWluLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvKiBGb3JjZXIgbGUgbGF5b3V0IGZsZXggw6AgbmUgcGFzIHRlbmlyIGNvbXB0ZSBkZSBsYSBzaWRlYmFyICovXG4gICAgLmQtZmxleC5mbGV4LWdyb3ctMSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8qIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgKi9cblxuLyogTW9iaWxlIEZpcnN0IC0gU21hcnRwaG9uZXMgKDwgNTc2cHgpICovXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcbiAgICAubmF2YmFyLWJyYW5kIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB9XG4gICAgXG4gICAgLnNpZGViYXItdG9nZ2xlIHtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgfVxuICAgIFxuICAgIC5vZmZjYW52YXMge1xuICAgICAgICB3aWR0aDogODV2dyAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5jb250YWluZXItZmx1aWQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gICAgfVxufVxuXG4vKiBUYWJsZXRzICg1NzZweCAtIDk5MS45OHB4KSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcbiAgICAub2ZmY2FudmFzIHtcbiAgICAgICAgd2lkdGg6IDMyMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5uYXZiYXItYnJhbmQge1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICB9XG59XG5cbi8qIERlc2t0b3AgKOKJpSA5OTJweCkgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5zaWRlYmFyLXRvZ2dsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLnNpZGViYXItZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLyogQWp1c3RlbWVudCBkdSBjb250ZW51IHByaW5jaXBhbCAqL1xuICAgIC5tYWluLWNvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXNpZGViYXItd2lkdGgpKTtcbiAgICB9XG59XG5cbi8qIExhcmdlIERlc2t0b3AgKOKJpSAxMjAwcHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnNpZGViYXItZGVza3RvcCB7XG4gICAgICAgIHdpZHRoOiAzMDBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAubWFpbi1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwMHB4KTtcbiAgICB9XG59XG5cbi8qIEV4dHJhIExhcmdlIERlc2t0b3AgKOKJpSAxNDAwcHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgIG1heC13aWR0aDogMTMyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG59XG5cbi8qIEFuaW1hdGlvbnMgZXQgdHJhbnNpdGlvbnMgKi9cbi5zaWRlYmFyLWRlc2t0b3AsXG4ub2ZmY2FudmFzIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLm5hdi1saW5rLFxuLmRyb3Bkb3duLWl0ZW0ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcbn1cblxuLyogQWNjZXNzaWJpbGl0w6kgKi9cbi5zaWRlYmFyLXRvZ2dsZTpmb2N1cyxcbi5uYXYtbGluazpmb2N1cyxcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1zaWRlYmFyLWFjdGl2ZSk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLyogTW9kZSBzb21icmUgKG9wdGlvbm5lbCkgKi9cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICA6cm9vdCB7XG4gICAgICAgIC0tc2lkZWJhci1iZzogIzIxMjUyOTtcbiAgICAgICAgLS1zaWRlYmFyLWJvcmRlcjogIzQ5NTA1NztcbiAgICAgICAgLS1zaWRlYmFyLWxpbmstaG92ZXI6ICMzNDNhNDA7XG4gICAgfVxuICAgIFxuICAgIC5zaWRlYmFyLWRlc2t0b3AsXG4gICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2lkZWJhci1iZykgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICAgIFxuICAgIC5uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAjYWRiNWJkO1xuICAgIH1cbiAgICBcbiAgICAubmF2LWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG59XG5cbi8qIFByaW50IHN0eWxlcyAqL1xuQG1lZGlhIHByaW50IHtcbiAgICAuc2lkZWJhci1kZXNrdG9wLFxuICAgIC5vZmZjYW52YXMsXG4gICAgLnNpZGViYXItdG9nZ2xlLFxuICAgIC5uYXZiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5tYWluLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/