/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
/* ======================== */
/*   Tema claro global      */
/* ======================== */

:root {
    --bg-main:#f3f4f6;
    --bg-2:#ffffff;
    --line:#e5e7eb;
    --text:#111827;
    --text-strong:#0f172a;
    --muted:#6b7280;
    --xm-yellow:#f2a51a;
    --radius:12px;
    --shadow:0 0 20px rgba(15,23,42,.08);
}

body {
    margin:0;
    background:var(--bg-main);
    color:var(--text);
    font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

h1,h2,h3,h4,h5 {
    color:var(--text-strong);
}

a {
    color:#0d6efd;
    text-decoration:none;
}
a:hover {
    color:#0b5ed7;
}

/* ======================== */
/*   Layout principal       */
/* ======================== */

.sidebar {
    width:200px;
    background:#ffffff;
    position:fixed;
    top:0;
    left:0;
    bottom:0;
    padding:16px;
    box-shadow:inset -1px 0 0 #e5e7eb;
}

/* Se algum dia tiver h4 na sidebar */
.sidebar h4 {
    color:#111827;
    font-weight:700;
}

/* Cabeçalhos de seção (OPERAÇÃO, FINANCEIRO, ADMIN) */
.sidebar .small.text-muted {
    text-transform:uppercase;
    font-size:0.75rem;
    color:var(--muted);
    margin-top:12px;
    margin-bottom:4px;
}

/* Links do menu lateral */
.sidebar a {
    display:block;
    padding:5px 0;
    color:#4b5563;
    font-weight:500;
    transition:color .2s;
    font-size:0.90rem;
}
.sidebar a:hover,
.sidebar a.active {
    color:#111827;
    font-weight:700;
}

/* Caso você use .nav-link na sidebar em algum lugar */
.sidebar .nav-link {
    color:#111827;
    font-weight:500;
}
.sidebar .nav-link:hover {
    color:#0f172a;
}
.sidebar .nav-link.active,
.sidebar .nav-link.active:hover {
    color:#0f172a;
}

/* Sidebar section headings por classe */
.sidebar-heading {
    color:#4b5563;
    font-weight:600;
}

/* Link de sair / logout na sidebar */
.sidebar a.logout-link {
    color:#b91c1c;
}
.sidebar a.logout-link:hover {
    color:#991b1b;
    font-weight:700;
}

/* Conteúdo principal ao lado da sidebar */
.content {
    margin-left:220px;
    padding:24px;
}

/* Topbar (quando tiver) */
.topbar {
    display:flex;
    justify-content:space-between;
    align-items:center;
    background:#ffffff;
    border-bottom:1px solid var(--line);
    padding:10px 16px;
    color:var(--text);
    position:sticky;
    top:0;
    z-index:100;
}

/* Cards genéricos */
.card {
    background:var(--bg-2);
    border:1px solid var(--line);
    border-radius:var(--radius);
    color:var(--text);
}

/* Botões */
.btn-outline-primary {
    color:#0d6efd;
    border-color:#e5e7eb;
}
.btn-outline-secondary {
    color:#e5e7eb;
    border-color:#e5e7eb;
}
.btn-outline-primary:hover,
.btn-outline-secondary:hover {
    background:#e5f1ff;
    color:#fff;
    border-color:#d0e2ff;
}
.btn-success {
    background:#198754;
    border-color:#198754;
    font-weight:700;
}

/* Texto “apagado” mais legível no claro */
.muted,
.text-muted {
    color:var(--muted) !important;
    opacity:1 !important;
}
.text-soft-muted {
    color:#9ca3af !important;
}

/* Rodapé padrão */
footer {
    color:var(--muted);
    margin-top:32px;
    text-align:center;
}

/* ======================== */
/*   Tabelas / badges       */
/* ======================== */

.table thead th {
    color:#111827;
    font-weight:600;
    background-color:#e5e7eb;
    border-bottom-color:#d1d5db;
}

/* Wrapper com scroll (controle diário / acompanhamento / NF-e) */
.table-scroll {
    max-height:calc(100vh - 230px);
    overflow-y:auto;
    border-radius:0.5rem;
    border:1px solid #e5e7eb;
}

/* Badge de total NF-e no topo direito */
.badge-count {
    background-color:#ffffff;
    color:#111827 !important;
    border:1px solid #d1d5db;
    font-weight:600;
    font-size:0.75rem;
    box-shadow:0 1px 2px rgba(15,23,42,.08);
    border-radius:999px;
}

/* Badge de seção */
.badge-section {
    background-color:var(--xm-yellow);
    color:#111827;
    font-weight:700;
    font-size:0.70rem;
    border-radius:999px;
    padding:0.15rem 0.5rem;
}

/* ======================== */
/*   Listagem de NF-e (controle diário / acompanhamento) */
/* ======================== */

table.table-invoice-list {
    background-color:#ffffff !important;
    font-size:0.80rem;
}

.table-invoice-list thead th {
    position:sticky;
    top:0;
    z-index:10;
    background-color:#e5e7eb !important;
    color:#111827;
    font-weight:600;
    border-bottom:1px solid #d1d5db;
}

/* Bordas do corpo */
.table-invoice-list td,
.table-invoice-list th {
    border-color:#e5e7eb;
}

/* Hover suave */
.table-invoice-list tbody tr:hover {
    background-color:#f3f4f6 !important;
}

/* Inputs de filtro no cabeçalho */
.table-invoice-list thead .form-control,
.table-invoice-list thead .form-select {
    font-size:0.80rem;
    padding-top:0.20rem;
    padding-bottom:0.20rem;
}

/* Coluna Ações (quando usada) */
.table-invoice-list th.actions,
.table-invoice-list td.actions {
    width:110px;
    white-space:nowrap;
    text-align:right;
}

/* ======================== */
/*   NF-e (listagem)        */
/* ======================== */

.table-nfe {
    background:#ffffff;
    font-size:0.80rem;
}

/* Cabeçalho fixo + linha de filtros */
.table-nfe thead tr.sticky-header th {
    position:sticky;
    top:0;
    z-index:20;
    background-color:#e5e7eb !important;
    color:#111827;
    border-bottom:1px solid #d1d5db;
}
.table-nfe thead tr.filters-row th {
    background-color:#ffffff !important;
    border-top:none;
    padding-top:4px;
    padding-bottom:6px;
    position:sticky;
    top:32px; /* altura aproximada do cabeçalho */
    z-index:19;
}
.table-nfe thead tr.filters-row input {
    font-size:0.75rem;
    padding:2px 6px;
    height:26px;
}

/* Larguras das colunas */
.table-nfe th.col-nfe      { width:110px; }
.table-nfe th.col-emissao  { width:110px; }
.table-nfe th.col-criacao  { width:140px; }
.table-nfe th.col-total    { width:120px; }

.table-nfe th.col-cliente,
.table-nfe td[data-col="cliente"] {
    min-width:260px;
}
.table-nfe th.col-tomador,
.table-nfe td[data-col="tomador"] {
    min-width:230px;
}

/* Header compacto e ordenação local */
.nfe-header {
    margin-bottom:0.4rem;
}
.nfe-header h2 {
    font-size:1rem;
    margin-bottom:0;
}
.nfe-local-sort .form-select {
    font-size:0.75rem;
    padding:2px 6px;
    height:28px;
}
.nfe-local-sort label {
    font-size:0.75rem;
    margin-right:4px;
}
.nfe-filters-global .form-label {
    font-size:0.80rem;
}

/* ======================== */
/*   NF-e manual (form)     */
/* ======================== */

.row.compact .form-label {
    font-size:0.80rem;
    margin-bottom:2px;
}
.row.compact .form-control,
.row.compact .form-select {
    padding-top:0.25rem;
    padding-bottom:0.25rem;
}

/* colunas de data mais estreitas */
.date-compact .form-control {
    text-align:center;
}

/* Textareas altas */
.tall-textarea {
    min-height:120px;
    resize:vertical;
}

/* Caixa de sugestões (autocomplete Cliente/Tomador) */
.suggest-box {
    position:absolute;
    top:100%;
    left:0;
    right:0;
    z-index:1055;
    background:#ffffff;
    border:1px solid #d1d5db;
    max-height:260px;
    overflow-y:auto;
}
.suggest-item {
    padding:.5rem .75rem;
    cursor:pointer;
}
.suggest-item:hover {
    background:#f3f4f6;
}
.suggest-item .text-body-secondary {
    color:#6b7280 !important;
    font-size:0.80rem;
}

/* ======================== */
/*   Tela de login          */
/* ======================== */

/* body especial só para telas que estendem auth.html.twig */
body.auth-body {
    margin:0;
    color:var(--text);
    font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,sans-serif;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;

    /* fundo com foto, responsivo, sem repetir */
    background-color:#020617; /* fallback escuro */
    background-image:
        linear-gradient(to right, rgba(2,6,23,0.80), rgba(15,23,42,0.70)),
        url(/build/images/background-login.ad98e31e.jpg);
    background-position:center center;
    background-size:cover;
    background-repeat:no-repeat;
}

/* Wrapper geral da tela de login */
.login-wrap {
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 24px;
}

/* Card de login */
.login-card {
    width:min(92vw,560px);
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:18px;
    box-shadow:0 16px 40px rgba(15,23,42,.08);
    padding:36px;
}

/* Marca XMOTO */
.login-brand {
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:10px;
}
.login-brand-dot {
    width:14px;
    height:14px;
    border-radius:50%;
    background:var(--xm-yellow);
}
.login-brand-title {
    font-size:20px;
    margin:0;
    letter-spacing:.6px;
    text-transform:uppercase;
    color:var(--text-strong);
}

/* Título “Entrar” */
.login-title {
    font-size:26px;
    font-weight:800;
    margin:14px 0 22px;
    color:var(--text-strong);
}

/* Labels do login */
.login-card label {
    display:block;
    font-size:15px;
    color:var(--muted);
    margin-bottom:6px;
    font-weight:600;
}

/* Inputs do login */
.login-input {
    width:100%;
    height:48px;
    padding:10px 14px;
    border-radius:12px;
    border:1px solid #e5e7eb;
    background:#f9fafb;
    color:var(--text);
    font-size:16px;
    outline:none;
    transition:border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
.login-input::placeholder {
    color:#9ca3af;
}
.login-input:focus {
    border-color:var(--xm-yellow);
    box-shadow:0 0 0 3px rgba(242,165,26,.25);
    background:#ffffff;
}

/* Linha “lembrar-me / esqueci senha” */
.login-links {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-top:12px;
    font-size:14px;
}
.login-link {
    color:var(--muted);
    text-decoration:none;
}
.login-link:hover {
    color:var(--text-strong);
}

/* Alerta de erro de login */
.login-alert {
    background:#fef2f2;
    border:1px solid #fecaca;
    color:#dc2626;
    padding:12px 14px;
    border-radius:12px;
    font-size:14px;
    margin-bottom:16px;
}

/* Botão principal de login */
.login-btn {
    width:100%;
    height:48px;
    border-radius:12px;
    border:1px solid var(--xm-yellow);
    background:var(--xm-yellow);
    color:#111827;
    font-weight:800;
    font-size:16px;
    cursor:pointer;
    transition:filter .15s ease, transform .05s ease;
}
.login-btn:hover {
    filter:brightness(.96);
}
.login-btn:active {
    transform:translateY(1px);
}

/* Rodapé do login */
.login-footer {
    margin-top:22px;
    font-size:13px;
    color:#4b5563;
    text-align:center;
}

/* Ajuste para telas menores */
@media (max-width:480px){
    .login-card {
        padding:26px 20px;
    }
}




/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFFQSw2QkFBNkI7QUFDN0IsNkJBQTZCO0FBQzdCLDZCQUE2Qjs7QUFFN0I7SUFDSSxpQkFBaUI7SUFDakIsY0FBYztJQUNkLGNBQWM7SUFDZCxjQUFjO0lBQ2QscUJBQXFCO0lBQ3JCLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsYUFBYTtJQUNiLG9DQUFvQztBQUN4Qzs7QUFFQTtJQUNJLFFBQVE7SUFDUix5QkFBeUI7SUFDekIsaUJBQWlCO0lBQ2pCLHVGQUF1RjtBQUMzRjs7QUFFQTtJQUNJLHdCQUF3QjtBQUM1Qjs7QUFFQTtJQUNJLGFBQWE7SUFDYixvQkFBb0I7QUFDeEI7QUFDQTtJQUNJLGFBQWE7QUFDakI7O0FBRUEsNkJBQTZCO0FBQzdCLDZCQUE2QjtBQUM3Qiw2QkFBNkI7O0FBRTdCO0lBQ0ksV0FBVztJQUNYLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsS0FBSztJQUNMLE1BQU07SUFDTixRQUFRO0lBQ1IsWUFBWTtJQUNaLGlDQUFpQztBQUNyQzs7QUFFQSxxQ0FBcUM7QUFDckM7SUFDSSxhQUFhO0lBQ2IsZUFBZTtBQUNuQjs7QUFFQSxzREFBc0Q7QUFDdEQ7SUFDSSx3QkFBd0I7SUFDeEIsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsaUJBQWlCO0FBQ3JCOztBQUVBLDBCQUEwQjtBQUMxQjtJQUNJLGFBQWE7SUFDYixhQUFhO0lBQ2IsYUFBYTtJQUNiLGVBQWU7SUFDZixvQkFBb0I7SUFDcEIsaUJBQWlCO0FBQ3JCO0FBQ0E7O0lBRUksYUFBYTtJQUNiLGVBQWU7QUFDbkI7O0FBRUEsc0RBQXNEO0FBQ3REO0lBQ0ksYUFBYTtJQUNiLGVBQWU7QUFDbkI7QUFDQTtJQUNJLGFBQWE7QUFDakI7QUFDQTs7SUFFSSxhQUFhO0FBQ2pCOztBQUVBLHdDQUF3QztBQUN4QztJQUNJLGFBQWE7SUFDYixlQUFlO0FBQ25COztBQUVBLHFDQUFxQztBQUNyQztJQUNJLGFBQWE7QUFDakI7QUFDQTtJQUNJLGFBQWE7SUFDYixlQUFlO0FBQ25COztBQUVBLDBDQUEwQztBQUMxQztJQUNJLGlCQUFpQjtJQUNqQixZQUFZO0FBQ2hCOztBQUVBLDBCQUEwQjtBQUMxQjtJQUNJLFlBQVk7SUFDWiw2QkFBNkI7SUFDN0Isa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixtQ0FBbUM7SUFDbkMsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2YsS0FBSztJQUNMLFdBQVc7QUFDZjs7QUFFQSxvQkFBb0I7QUFDcEI7SUFDSSxzQkFBc0I7SUFDdEIsNEJBQTRCO0lBQzVCLDJCQUEyQjtJQUMzQixpQkFBaUI7QUFDckI7O0FBRUEsV0FBVztBQUNYO0lBQ0ksYUFBYTtJQUNiLG9CQUFvQjtBQUN4QjtBQUNBO0lBQ0ksYUFBYTtJQUNiLG9CQUFvQjtBQUN4QjtBQUNBOztJQUVJLGtCQUFrQjtJQUNsQixVQUFVO0lBQ1Ysb0JBQW9CO0FBQ3hCO0FBQ0E7SUFDSSxrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLGVBQWU7QUFDbkI7O0FBRUEsMENBQTBDO0FBQzFDOztJQUVJLDZCQUE2QjtJQUM3QixvQkFBb0I7QUFDeEI7QUFDQTtJQUNJLHdCQUF3QjtBQUM1Qjs7QUFFQSxrQkFBa0I7QUFDbEI7SUFDSSxrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGlCQUFpQjtBQUNyQjs7QUFFQSw2QkFBNkI7QUFDN0IsNkJBQTZCO0FBQzdCLDZCQUE2Qjs7QUFFN0I7SUFDSSxhQUFhO0lBQ2IsZUFBZTtJQUNmLHdCQUF3QjtJQUN4QiwyQkFBMkI7QUFDL0I7O0FBRUEsaUVBQWlFO0FBQ2pFO0lBQ0ksOEJBQThCO0lBQzlCLGVBQWU7SUFDZixvQkFBb0I7SUFDcEIsd0JBQXdCO0FBQzVCOztBQUVBLHdDQUF3QztBQUN4QztJQUNJLHdCQUF3QjtJQUN4Qix3QkFBd0I7SUFDeEIsd0JBQXdCO0lBQ3hCLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsdUNBQXVDO0lBQ3ZDLG1CQUFtQjtBQUN2Qjs7QUFFQSxtQkFBbUI7QUFDbkI7SUFDSSxpQ0FBaUM7SUFDakMsYUFBYTtJQUNiLGVBQWU7SUFDZixpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLHNCQUFzQjtBQUMxQjs7QUFFQSw2QkFBNkI7QUFDN0IsMERBQTBEO0FBQzFELDZCQUE2Qjs7QUFFN0I7SUFDSSxtQ0FBbUM7SUFDbkMsaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0ksZUFBZTtJQUNmLEtBQUs7SUFDTCxVQUFVO0lBQ1YsbUNBQW1DO0lBQ25DLGFBQWE7SUFDYixlQUFlO0lBQ2YsK0JBQStCO0FBQ25DOztBQUVBLG9CQUFvQjtBQUNwQjs7SUFFSSxvQkFBb0I7QUFDeEI7O0FBRUEsZ0JBQWdCO0FBQ2hCO0lBQ0ksbUNBQW1DO0FBQ3ZDOztBQUVBLGtDQUFrQztBQUNsQzs7SUFFSSxpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLHNCQUFzQjtBQUMxQjs7QUFFQSxnQ0FBZ0M7QUFDaEM7O0lBRUksV0FBVztJQUNYLGtCQUFrQjtJQUNsQixnQkFBZ0I7QUFDcEI7O0FBRUEsNkJBQTZCO0FBQzdCLDZCQUE2QjtBQUM3Qiw2QkFBNkI7O0FBRTdCO0lBQ0ksa0JBQWtCO0lBQ2xCLGlCQUFpQjtBQUNyQjs7QUFFQSxzQ0FBc0M7QUFDdEM7SUFDSSxlQUFlO0lBQ2YsS0FBSztJQUNMLFVBQVU7SUFDVixtQ0FBbUM7SUFDbkMsYUFBYTtJQUNiLCtCQUErQjtBQUNuQztBQUNBO0lBQ0ksbUNBQW1DO0lBQ25DLGVBQWU7SUFDZixlQUFlO0lBQ2Ysa0JBQWtCO0lBQ2xCLGVBQWU7SUFDZixRQUFRLEVBQUUsbUNBQW1DO0lBQzdDLFVBQVU7QUFDZDtBQUNBO0lBQ0ksaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixXQUFXO0FBQ2Y7O0FBRUEseUJBQXlCO0FBQ3pCLDZCQUE2QixXQUFXLEVBQUU7QUFDMUMsNkJBQTZCLFdBQVcsRUFBRTtBQUMxQyw2QkFBNkIsV0FBVyxFQUFFO0FBQzFDLDZCQUE2QixXQUFXLEVBQUU7O0FBRTFDOztJQUVJLGVBQWU7QUFDbkI7QUFDQTs7SUFFSSxlQUFlO0FBQ25COztBQUVBLHNDQUFzQztBQUN0QztJQUNJLG9CQUFvQjtBQUN4QjtBQUNBO0lBQ0ksY0FBYztJQUNkLGVBQWU7QUFDbkI7QUFDQTtJQUNJLGlCQUFpQjtJQUNqQixlQUFlO0lBQ2YsV0FBVztBQUNmO0FBQ0E7SUFDSSxpQkFBaUI7SUFDakIsZ0JBQWdCO0FBQ3BCO0FBQ0E7SUFDSSxpQkFBaUI7QUFDckI7O0FBRUEsNkJBQTZCO0FBQzdCLDZCQUE2QjtBQUM3Qiw2QkFBNkI7O0FBRTdCO0lBQ0ksaUJBQWlCO0lBQ2pCLGlCQUFpQjtBQUNyQjtBQUNBOztJQUVJLG1CQUFtQjtJQUNuQixzQkFBc0I7QUFDMUI7O0FBRUEsbUNBQW1DO0FBQ25DO0lBQ0ksaUJBQWlCO0FBQ3JCOztBQUVBLG9CQUFvQjtBQUNwQjtJQUNJLGdCQUFnQjtJQUNoQixlQUFlO0FBQ25COztBQUVBLHNEQUFzRDtBQUN0RDtJQUNJLGlCQUFpQjtJQUNqQixRQUFRO0lBQ1IsTUFBTTtJQUNOLE9BQU87SUFDUCxZQUFZO0lBQ1osa0JBQWtCO0lBQ2xCLHdCQUF3QjtJQUN4QixnQkFBZ0I7SUFDaEIsZUFBZTtBQUNuQjtBQUNBO0lBQ0ksb0JBQW9CO0lBQ3BCLGNBQWM7QUFDbEI7QUFDQTtJQUNJLGtCQUFrQjtBQUN0QjtBQUNBO0lBQ0ksd0JBQXdCO0lBQ3hCLGlCQUFpQjtBQUNyQjs7QUFFQSw2QkFBNkI7QUFDN0IsNkJBQTZCO0FBQzdCLDZCQUE2Qjs7QUFFN0IsNERBQTREO0FBQzVEO0lBQ0ksUUFBUTtJQUNSLGlCQUFpQjtJQUNqQiw0RkFBNEY7SUFDNUYsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixzQkFBc0I7SUFDdEIsWUFBWTs7SUFFWiw0Q0FBNEM7SUFDNUMsd0JBQXdCLEVBQUUsb0JBQW9CO0lBQzlDOzsrQ0FFeUM7SUFDekMsaUNBQWlDO0lBQ2pDLHFCQUFxQjtJQUNyQiwyQkFBMkI7QUFDL0I7O0FBRUEsbUNBQW1DO0FBQ25DO0lBQ0ksZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixrQkFBa0I7SUFDbEIsc0JBQXNCO0lBQ3RCLGlCQUFpQjtBQUNyQjs7QUFFQSxrQkFBa0I7QUFDbEI7SUFDSSxxQkFBcUI7SUFDckIsa0JBQWtCO0lBQ2xCLHdCQUF3QjtJQUN4QixrQkFBa0I7SUFDbEIseUNBQXlDO0lBQ3pDLFlBQVk7QUFDaEI7O0FBRUEsZ0JBQWdCO0FBQ2hCO0lBQ0ksWUFBWTtJQUNaLGtCQUFrQjtJQUNsQixRQUFRO0lBQ1Isa0JBQWtCO0FBQ3RCO0FBQ0E7SUFDSSxVQUFVO0lBQ1YsV0FBVztJQUNYLGlCQUFpQjtJQUNqQiwyQkFBMkI7QUFDL0I7QUFDQTtJQUNJLGNBQWM7SUFDZCxRQUFRO0lBQ1IsbUJBQW1CO0lBQ25CLHdCQUF3QjtJQUN4Qix3QkFBd0I7QUFDNUI7O0FBRUEsb0JBQW9CO0FBQ3BCO0lBQ0ksY0FBYztJQUNkLGVBQWU7SUFDZixrQkFBa0I7SUFDbEIsd0JBQXdCO0FBQzVCOztBQUVBLG9CQUFvQjtBQUNwQjtJQUNJLGFBQWE7SUFDYixjQUFjO0lBQ2Qsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixlQUFlO0FBQ25COztBQUVBLG9CQUFvQjtBQUNwQjtJQUNJLFVBQVU7SUFDVixXQUFXO0lBQ1gsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQix3QkFBd0I7SUFDeEIsa0JBQWtCO0lBQ2xCLGlCQUFpQjtJQUNqQixjQUFjO0lBQ2QsWUFBWTtJQUNaLG1GQUFtRjtBQUN2RjtBQUNBO0lBQ0ksYUFBYTtBQUNqQjtBQUNBO0lBQ0ksNkJBQTZCO0lBQzdCLHlDQUF5QztJQUN6QyxrQkFBa0I7QUFDdEI7O0FBRUEsdUNBQXVDO0FBQ3ZDO0lBQ0ksWUFBWTtJQUNaLDZCQUE2QjtJQUM3QixrQkFBa0I7SUFDbEIsZUFBZTtJQUNmLGNBQWM7QUFDbEI7QUFDQTtJQUNJLGtCQUFrQjtJQUNsQixvQkFBb0I7QUFDeEI7QUFDQTtJQUNJLHdCQUF3QjtBQUM1Qjs7QUFFQSw0QkFBNEI7QUFDNUI7SUFDSSxrQkFBa0I7SUFDbEIsd0JBQXdCO0lBQ3hCLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxrQkFBa0I7QUFDdEI7O0FBRUEsNkJBQTZCO0FBQzdCO0lBQ0ksVUFBVTtJQUNWLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsaUNBQWlDO0lBQ2pDLDJCQUEyQjtJQUMzQixhQUFhO0lBQ2IsZUFBZTtJQUNmLGNBQWM7SUFDZCxjQUFjO0lBQ2QsZ0RBQWdEO0FBQ3BEO0FBQ0E7SUFDSSxzQkFBc0I7QUFDMUI7QUFDQTtJQUNJLHlCQUF5QjtBQUM3Qjs7QUFFQSxvQkFBb0I7QUFDcEI7SUFDSSxlQUFlO0lBQ2YsY0FBYztJQUNkLGFBQWE7SUFDYixpQkFBaUI7QUFDckI7O0FBRUEsOEJBQThCO0FBQzlCO0lBQ0k7UUFDSSxpQkFBaUI7SUFDckI7QUFDSiIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYXBwLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiYm9vdHN0cmFwL2Rpc3QvY3NzL2Jvb3RzdHJhcC5taW4uY3NzXCI7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogICBUZW1hIGNsYXJvIGdsb2JhbCAgICAgICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuOnJvb3Qge1xuICAgIC0tYmctbWFpbjojZjNmNGY2O1xuICAgIC0tYmctMjojZmZmZmZmO1xuICAgIC0tbGluZTojZTVlN2ViO1xuICAgIC0tdGV4dDojMTExODI3O1xuICAgIC0tdGV4dC1zdHJvbmc6IzBmMTcyYTtcbiAgICAtLW11dGVkOiM2YjcyODA7XG4gICAgLS14bS15ZWxsb3c6I2YyYTUxYTtcbiAgICAtLXJhZGl1czoxMnB4O1xuICAgIC0tc2hhZG93OjAgMCAyMHB4IHJnYmEoMTUsMjMsNDIsLjA4KTtcbn1cblxuYm9keSB7XG4gICAgbWFyZ2luOjA7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1iZy1tYWluKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0KTtcbiAgICBmb250LWZhbWlseTpzeXN0ZW0tdWksLWFwcGxlLXN5c3RlbSxcIlNlZ29lIFVJXCIsUm9ib3RvLFwiSGVsdmV0aWNhIE5ldWVcIixBcmlhbCxzYW5zLXNlcmlmO1xufVxuXG5oMSxoMixoMyxoNCxoNSB7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO1xufVxuXG5hIHtcbiAgICBjb2xvcjojMGQ2ZWZkO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xufVxuYTpob3ZlciB7XG4gICAgY29sb3I6IzBiNWVkNztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAgIExheW91dCBwcmluY2lwYWwgICAgICAgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uc2lkZWJhciB7XG4gICAgd2lkdGg6MjAwcHg7XG4gICAgYmFja2dyb3VuZDojZmZmZmZmO1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHRvcDowO1xuICAgIGxlZnQ6MDtcbiAgICBib3R0b206MDtcbiAgICBwYWRkaW5nOjE2cHg7XG4gICAgYm94LXNoYWRvdzppbnNldCAtMXB4IDAgMCAjZTVlN2ViO1xufVxuXG4vKiBTZSBhbGd1bSBkaWEgdGl2ZXIgaDQgbmEgc2lkZWJhciAqL1xuLnNpZGViYXIgaDQge1xuICAgIGNvbG9yOiMxMTE4Mjc7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xufVxuXG4vKiBDYWJlw6dhbGhvcyBkZSBzZcOnw6NvIChPUEVSQcOHw4NPLCBGSU5BTkNFSVJPLCBBRE1JTikgKi9cbi5zaWRlYmFyIC5zbWFsbC50ZXh0LW11dGVkIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjAuNzVyZW07XG4gICAgY29sb3I6dmFyKC0tbXV0ZWQpO1xuICAgIG1hcmdpbi10b3A6MTJweDtcbiAgICBtYXJnaW4tYm90dG9tOjRweDtcbn1cblxuLyogTGlua3MgZG8gbWVudSBsYXRlcmFsICovXG4uc2lkZWJhciBhIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBhZGRpbmc6NXB4IDA7XG4gICAgY29sb3I6IzRiNTU2MztcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgdHJhbnNpdGlvbjpjb2xvciAuMnM7XG4gICAgZm9udC1zaXplOjAuOTByZW07XG59XG4uc2lkZWJhciBhOmhvdmVyLFxuLnNpZGViYXIgYS5hY3RpdmUge1xuICAgIGNvbG9yOiMxMTE4Mjc7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xufVxuXG4vKiBDYXNvIHZvY8OqIHVzZSAubmF2LWxpbmsgbmEgc2lkZWJhciBlbSBhbGd1bSBsdWdhciAqL1xuLnNpZGViYXIgLm5hdi1saW5rIHtcbiAgICBjb2xvcjojMTExODI3O1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbn1cbi5zaWRlYmFyIC5uYXYtbGluazpob3ZlciB7XG4gICAgY29sb3I6IzBmMTcyYTtcbn1cbi5zaWRlYmFyIC5uYXYtbGluay5hY3RpdmUsXG4uc2lkZWJhciAubmF2LWxpbmsuYWN0aXZlOmhvdmVyIHtcbiAgICBjb2xvcjojMGYxNzJhO1xufVxuXG4vKiBTaWRlYmFyIHNlY3Rpb24gaGVhZGluZ3MgcG9yIGNsYXNzZSAqL1xuLnNpZGViYXItaGVhZGluZyB7XG4gICAgY29sb3I6IzRiNTU2MztcbiAgICBmb250LXdlaWdodDo2MDA7XG59XG5cbi8qIExpbmsgZGUgc2FpciAvIGxvZ291dCBuYSBzaWRlYmFyICovXG4uc2lkZWJhciBhLmxvZ291dC1saW5rIHtcbiAgICBjb2xvcjojYjkxYzFjO1xufVxuLnNpZGViYXIgYS5sb2dvdXQtbGluazpob3ZlciB7XG4gICAgY29sb3I6Izk5MWIxYjtcbiAgICBmb250LXdlaWdodDo3MDA7XG59XG5cbi8qIENvbnRlw7pkbyBwcmluY2lwYWwgYW8gbGFkbyBkYSBzaWRlYmFyICovXG4uY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6MjIwcHg7XG4gICAgcGFkZGluZzoyNHB4O1xufVxuXG4vKiBUb3BiYXIgKHF1YW5kbyB0aXZlcikgKi9cbi50b3BiYXIge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgYmFja2dyb3VuZDojZmZmZmZmO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICAgIHBhZGRpbmc6MTBweCAxNnB4O1xuICAgIGNvbG9yOnZhcigtLXRleHQpO1xuICAgIHBvc2l0aW9uOnN0aWNreTtcbiAgICB0b3A6MDtcbiAgICB6LWluZGV4OjEwMDtcbn1cblxuLyogQ2FyZHMgZ2Vuw6lyaWNvcyAqL1xuLmNhcmQge1xuICAgIGJhY2tncm91bmQ6dmFyKC0tYmctMik7XG4gICAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cyk7XG4gICAgY29sb3I6dmFyKC0tdGV4dCk7XG59XG5cbi8qIEJvdMO1ZXMgKi9cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgICBjb2xvcjojMGQ2ZWZkO1xuICAgIGJvcmRlci1jb2xvcjojZTVlN2ViO1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gICAgY29sb3I6I2U1ZTdlYjtcbiAgICBib3JkZXItY29sb3I6I2U1ZTdlYjtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5OmhvdmVyLFxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDojZTVmMWZmO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiNkMGUyZmY7XG59XG4uYnRuLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6IzE5ODc1NDtcbiAgICBib3JkZXItY29sb3I6IzE5ODc1NDtcbiAgICBmb250LXdlaWdodDo3MDA7XG59XG5cbi8qIFRleHRvIOKAnGFwYWdhZG/igJ0gbWFpcyBsZWfDrXZlbCBubyBjbGFybyAqL1xuLm11dGVkLFxuLnRleHQtbXV0ZWQge1xuICAgIGNvbG9yOnZhcigtLW11dGVkKSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6MSAhaW1wb3J0YW50O1xufVxuLnRleHQtc29mdC1tdXRlZCB7XG4gICAgY29sb3I6IzljYTNhZiAhaW1wb3J0YW50O1xufVxuXG4vKiBSb2RhcMOpIHBhZHLDo28gKi9cbmZvb3RlciB7XG4gICAgY29sb3I6dmFyKC0tbXV0ZWQpO1xuICAgIG1hcmdpbi10b3A6MzJweDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiAgIFRhYmVsYXMgLyBiYWRnZXMgICAgICAgKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udGFibGUgdGhlYWQgdGgge1xuICAgIGNvbG9yOiMxMTE4Mjc7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6I2U1ZTdlYjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiNkMWQ1ZGI7XG59XG5cbi8qIFdyYXBwZXIgY29tIHNjcm9sbCAoY29udHJvbGUgZGnDoXJpbyAvIGFjb21wYW5oYW1lbnRvIC8gTkYtZSkgKi9cbi50YWJsZS1zY3JvbGwge1xuICAgIG1heC1oZWlnaHQ6Y2FsYygxMDB2aCAtIDIzMHB4KTtcbiAgICBvdmVyZmxvdy15OmF1dG87XG4gICAgYm9yZGVyLXJhZGl1czowLjVyZW07XG4gICAgYm9yZGVyOjFweCBzb2xpZCAjZTVlN2ViO1xufVxuXG4vKiBCYWRnZSBkZSB0b3RhbCBORi1lIG5vIHRvcG8gZGlyZWl0byAqL1xuLmJhZGdlLWNvdW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmY7XG4gICAgY29sb3I6IzExMTgyNyAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjoxcHggc29saWQgI2QxZDVkYjtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgZm9udC1zaXplOjAuNzVyZW07XG4gICAgYm94LXNoYWRvdzowIDFweCAycHggcmdiYSgxNSwyMyw0MiwuMDgpO1xuICAgIGJvcmRlci1yYWRpdXM6OTk5cHg7XG59XG5cbi8qIEJhZGdlIGRlIHNlw6fDo28gKi9cbi5iYWRnZS1zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnZhcigtLXhtLXllbGxvdyk7XG4gICAgY29sb3I6IzExMTgyNztcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgZm9udC1zaXplOjAuNzByZW07XG4gICAgYm9yZGVyLXJhZGl1czo5OTlweDtcbiAgICBwYWRkaW5nOjAuMTVyZW0gMC41cmVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qICAgTGlzdGFnZW0gZGUgTkYtZSAoY29udHJvbGUgZGnDoXJpbyAvIGFjb21wYW5oYW1lbnRvKSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbnRhYmxlLnRhYmxlLWludm9pY2UtbGlzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjojZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOjAuODByZW07XG59XG5cbi50YWJsZS1pbnZvaWNlLWxpc3QgdGhlYWQgdGgge1xuICAgIHBvc2l0aW9uOnN0aWNreTtcbiAgICB0b3A6MDtcbiAgICB6LWluZGV4OjEwO1xuICAgIGJhY2tncm91bmQtY29sb3I6I2U1ZTdlYiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiMxMTE4Mjc7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNkMWQ1ZGI7XG59XG5cbi8qIEJvcmRhcyBkbyBjb3JwbyAqL1xuLnRhYmxlLWludm9pY2UtbGlzdCB0ZCxcbi50YWJsZS1pbnZvaWNlLWxpc3QgdGgge1xuICAgIGJvcmRlci1jb2xvcjojZTVlN2ViO1xufVxuXG4vKiBIb3ZlciBzdWF2ZSAqL1xuLnRhYmxlLWludm9pY2UtbGlzdCB0Ym9keSB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjojZjNmNGY2ICFpbXBvcnRhbnQ7XG59XG5cbi8qIElucHV0cyBkZSBmaWx0cm8gbm8gY2FiZcOnYWxobyAqL1xuLnRhYmxlLWludm9pY2UtbGlzdCB0aGVhZCAuZm9ybS1jb250cm9sLFxuLnRhYmxlLWludm9pY2UtbGlzdCB0aGVhZCAuZm9ybS1zZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTowLjgwcmVtO1xuICAgIHBhZGRpbmctdG9wOjAuMjByZW07XG4gICAgcGFkZGluZy1ib3R0b206MC4yMHJlbTtcbn1cblxuLyogQ29sdW5hIEHDp8O1ZXMgKHF1YW5kbyB1c2FkYSkgKi9cbi50YWJsZS1pbnZvaWNlLWxpc3QgdGguYWN0aW9ucyxcbi50YWJsZS1pbnZvaWNlLWxpc3QgdGQuYWN0aW9ucyB7XG4gICAgd2lkdGg6MTEwcHg7XG4gICAgd2hpdGUtc3BhY2U6bm93cmFwO1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogICBORi1lIChsaXN0YWdlbSkgICAgICAgICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnRhYmxlLW5mZSB7XG4gICAgYmFja2dyb3VuZDojZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTowLjgwcmVtO1xufVxuXG4vKiBDYWJlw6dhbGhvIGZpeG8gKyBsaW5oYSBkZSBmaWx0cm9zICovXG4udGFibGUtbmZlIHRoZWFkIHRyLnN0aWNreS1oZWFkZXIgdGgge1xuICAgIHBvc2l0aW9uOnN0aWNreTtcbiAgICB0b3A6MDtcbiAgICB6LWluZGV4OjIwO1xuICAgIGJhY2tncm91bmQtY29sb3I6I2U1ZTdlYiAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiMxMTE4Mjc7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2QxZDVkYjtcbn1cbi50YWJsZS1uZmUgdGhlYWQgdHIuZmlsdGVycy1yb3cgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6I2ZmZmZmZiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci10b3A6bm9uZTtcbiAgICBwYWRkaW5nLXRvcDo0cHg7XG4gICAgcGFkZGluZy1ib3R0b206NnB4O1xuICAgIHBvc2l0aW9uOnN0aWNreTtcbiAgICB0b3A6MzJweDsgLyogYWx0dXJhIGFwcm94aW1hZGEgZG8gY2FiZcOnYWxobyAqL1xuICAgIHotaW5kZXg6MTk7XG59XG4udGFibGUtbmZlIHRoZWFkIHRyLmZpbHRlcnMtcm93IGlucHV0IHtcbiAgICBmb250LXNpemU6MC43NXJlbTtcbiAgICBwYWRkaW5nOjJweCA2cHg7XG4gICAgaGVpZ2h0OjI2cHg7XG59XG5cbi8qIExhcmd1cmFzIGRhcyBjb2x1bmFzICovXG4udGFibGUtbmZlIHRoLmNvbC1uZmUgICAgICB7IHdpZHRoOjExMHB4OyB9XG4udGFibGUtbmZlIHRoLmNvbC1lbWlzc2FvICB7IHdpZHRoOjExMHB4OyB9XG4udGFibGUtbmZlIHRoLmNvbC1jcmlhY2FvICB7IHdpZHRoOjE0MHB4OyB9XG4udGFibGUtbmZlIHRoLmNvbC10b3RhbCAgICB7IHdpZHRoOjEyMHB4OyB9XG5cbi50YWJsZS1uZmUgdGguY29sLWNsaWVudGUsXG4udGFibGUtbmZlIHRkW2RhdGEtY29sPVwiY2xpZW50ZVwiXSB7XG4gICAgbWluLXdpZHRoOjI2MHB4O1xufVxuLnRhYmxlLW5mZSB0aC5jb2wtdG9tYWRvcixcbi50YWJsZS1uZmUgdGRbZGF0YS1jb2w9XCJ0b21hZG9yXCJdIHtcbiAgICBtaW4td2lkdGg6MjMwcHg7XG59XG5cbi8qIEhlYWRlciBjb21wYWN0byBlIG9yZGVuYcOnw6NvIGxvY2FsICovXG4ubmZlLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTowLjRyZW07XG59XG4ubmZlLWhlYWRlciBoMiB7XG4gICAgZm9udC1zaXplOjFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTowO1xufVxuLm5mZS1sb2NhbC1zb3J0IC5mb3JtLXNlbGVjdCB7XG4gICAgZm9udC1zaXplOjAuNzVyZW07XG4gICAgcGFkZGluZzoycHggNnB4O1xuICAgIGhlaWdodDoyOHB4O1xufVxuLm5mZS1sb2NhbC1zb3J0IGxhYmVsIHtcbiAgICBmb250LXNpemU6MC43NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6NHB4O1xufVxuLm5mZS1maWx0ZXJzLWdsb2JhbCAuZm9ybS1sYWJlbCB7XG4gICAgZm9udC1zaXplOjAuODByZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogICBORi1lIG1hbnVhbCAoZm9ybSkgICAgICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnJvdy5jb21wYWN0IC5mb3JtLWxhYmVsIHtcbiAgICBmb250LXNpemU6MC44MHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjJweDtcbn1cbi5yb3cuY29tcGFjdCAuZm9ybS1jb250cm9sLFxuLnJvdy5jb21wYWN0IC5mb3JtLXNlbGVjdCB7XG4gICAgcGFkZGluZy10b3A6MC4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTowLjI1cmVtO1xufVxuXG4vKiBjb2x1bmFzIGRlIGRhdGEgbWFpcyBlc3RyZWl0YXMgKi9cbi5kYXRlLWNvbXBhY3QgLmZvcm0tY29udHJvbCB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG5cbi8qIFRleHRhcmVhcyBhbHRhcyAqL1xuLnRhbGwtdGV4dGFyZWEge1xuICAgIG1pbi1oZWlnaHQ6MTIwcHg7XG4gICAgcmVzaXplOnZlcnRpY2FsO1xufVxuXG4vKiBDYWl4YSBkZSBzdWdlc3TDtWVzIChhdXRvY29tcGxldGUgQ2xpZW50ZS9Ub21hZG9yKSAqL1xuLnN1Z2dlc3QtYm94IHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MTAwJTtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcbiAgICB6LWluZGV4OjEwNTU7XG4gICAgYmFja2dyb3VuZDojZmZmZmZmO1xuICAgIGJvcmRlcjoxcHggc29saWQgI2QxZDVkYjtcbiAgICBtYXgtaGVpZ2h0OjI2MHB4O1xuICAgIG92ZXJmbG93LXk6YXV0bztcbn1cbi5zdWdnZXN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6LjVyZW0gLjc1cmVtO1xuICAgIGN1cnNvcjpwb2ludGVyO1xufVxuLnN1Z2dlc3QtaXRlbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDojZjNmNGY2O1xufVxuLnN1Z2dlc3QtaXRlbSAudGV4dC1ib2R5LXNlY29uZGFyeSB7XG4gICAgY29sb3I6IzZiNzI4MCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTowLjgwcmVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qICAgVGVsYSBkZSBsb2dpbiAgICAgICAgICAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIGJvZHkgZXNwZWNpYWwgc8OzIHBhcmEgdGVsYXMgcXVlIGVzdGVuZGVtIGF1dGguaHRtbC50d2lnICovXG5ib2R5LmF1dGgtYm9keSB7XG4gICAgbWFyZ2luOjA7XG4gICAgY29sb3I6dmFyKC0tdGV4dCk7XG4gICAgZm9udC1mYW1pbHk6c3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sU2Vnb2UgVUksUm9ib3RvLFVidW50dSxcIkhlbHZldGljYSBOZXVlXCIsQXJpYWwsc2Fucy1zZXJpZjtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgcGFkZGluZzoyNHB4O1xuXG4gICAgLyogZnVuZG8gY29tIGZvdG8sIHJlc3BvbnNpdm8sIHNlbSByZXBldGlyICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjojMDIwNjE3OyAvKiBmYWxsYmFjayBlc2N1cm8gKi9cbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMiw2LDIzLDAuODApLCByZ2JhKDE1LDIzLDQyLDAuNzApKSxcbiAgICAgICAgdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZC1sb2dpbi5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtcbn1cblxuLyogV3JhcHBlciBnZXJhbCBkYSB0ZWxhIGRlIGxvZ2luICovXG4ubG9naW4td3JhcCB7XG4gICAgbWluLWhlaWdodDoxMDB2aDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgcGFkZGluZzo0MHB4IDI0cHg7XG59XG5cbi8qIENhcmQgZGUgbG9naW4gKi9cbi5sb2dpbi1jYXJkIHtcbiAgICB3aWR0aDptaW4oOTJ2dyw1NjBweCk7XG4gICAgYmFja2dyb3VuZDojZmZmZmZmO1xuICAgIGJvcmRlcjoxcHggc29saWQgI2U1ZTdlYjtcbiAgICBib3JkZXItcmFkaXVzOjE4cHg7XG4gICAgYm94LXNoYWRvdzowIDE2cHggNDBweCByZ2JhKDE1LDIzLDQyLC4wOCk7XG4gICAgcGFkZGluZzozNnB4O1xufVxuXG4vKiBNYXJjYSBYTU9UTyAqL1xuLmxvZ2luLWJyYW5kIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDoxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206MTBweDtcbn1cbi5sb2dpbi1icmFuZC1kb3Qge1xuICAgIHdpZHRoOjE0cHg7XG4gICAgaGVpZ2h0OjE0cHg7XG4gICAgYm9yZGVyLXJhZGl1czo1MCU7XG4gICAgYmFja2dyb3VuZDp2YXIoLS14bS15ZWxsb3cpO1xufVxuLmxvZ2luLWJyYW5kLXRpdGxlIHtcbiAgICBmb250LXNpemU6MjBweDtcbiAgICBtYXJnaW46MDtcbiAgICBsZXR0ZXItc3BhY2luZzouNnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyk7XG59XG5cbi8qIFTDrXR1bG8g4oCcRW50cmFy4oCdICovXG4ubG9naW4tdGl0bGUge1xuICAgIGZvbnQtc2l6ZToyNnB4O1xuICAgIGZvbnQtd2VpZ2h0OjgwMDtcbiAgICBtYXJnaW46MTRweCAwIDIycHg7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO1xufVxuXG4vKiBMYWJlbHMgZG8gbG9naW4gKi9cbi5sb2dpbi1jYXJkIGxhYmVsIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZvbnQtc2l6ZToxNXB4O1xuICAgIGNvbG9yOnZhcigtLW11dGVkKTtcbiAgICBtYXJnaW4tYm90dG9tOjZweDtcbiAgICBmb250LXdlaWdodDo2MDA7XG59XG5cbi8qIElucHV0cyBkbyBsb2dpbiAqL1xuLmxvZ2luLWlucHV0IHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDo0OHB4O1xuICAgIHBhZGRpbmc6MTBweCAxNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6MTJweDtcbiAgICBib3JkZXI6MXB4IHNvbGlkICNlNWU3ZWI7XG4gICAgYmFja2dyb3VuZDojZjlmYWZiO1xuICAgIGNvbG9yOnZhcigtLXRleHQpO1xuICAgIGZvbnQtc2l6ZToxNnB4O1xuICAgIG91dGxpbmU6bm9uZTtcbiAgICB0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UsIGJveC1zaGFkb3cgLjE1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZTtcbn1cbi5sb2dpbi1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiM5Y2EzYWY7XG59XG4ubG9naW4taW5wdXQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjp2YXIoLS14bS15ZWxsb3cpO1xuICAgIGJveC1zaGFkb3c6MCAwIDAgM3B4IHJnYmEoMjQyLDE2NSwyNiwuMjUpO1xuICAgIGJhY2tncm91bmQ6I2ZmZmZmZjtcbn1cblxuLyogTGluaGEg4oCcbGVtYnJhci1tZSAvIGVzcXVlY2kgc2VuaGHigJ0gKi9cbi5sb2dpbi1saW5rcyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOjEycHg7XG4gICAgZm9udC1zaXplOjE0cHg7XG59XG4ubG9naW4tbGluayB7XG4gICAgY29sb3I6dmFyKC0tbXV0ZWQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xufVxuLmxvZ2luLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOnZhcigtLXRleHQtc3Ryb25nKTtcbn1cblxuLyogQWxlcnRhIGRlIGVycm8gZGUgbG9naW4gKi9cbi5sb2dpbi1hbGVydCB7XG4gICAgYmFja2dyb3VuZDojZmVmMmYyO1xuICAgIGJvcmRlcjoxcHggc29saWQgI2ZlY2FjYTtcbiAgICBjb2xvcjojZGMyNjI2O1xuICAgIHBhZGRpbmc6MTJweCAxNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6MTJweDtcbiAgICBmb250LXNpemU6MTRweDtcbiAgICBtYXJnaW4tYm90dG9tOjE2cHg7XG59XG5cbi8qIEJvdMOjbyBwcmluY2lwYWwgZGUgbG9naW4gKi9cbi5sb2dpbi1idG4ge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OjQ4cHg7XG4gICAgYm9yZGVyLXJhZGl1czoxMnB4O1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0teG0teWVsbG93KTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXhtLXllbGxvdyk7XG4gICAgY29sb3I6IzExMTgyNztcbiAgICBmb250LXdlaWdodDo4MDA7XG4gICAgZm9udC1zaXplOjE2cHg7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjpmaWx0ZXIgLjE1cyBlYXNlLCB0cmFuc2Zvcm0gLjA1cyBlYXNlO1xufVxuLmxvZ2luLWJ0bjpob3ZlciB7XG4gICAgZmlsdGVyOmJyaWdodG5lc3MoLjk2KTtcbn1cbi5sb2dpbi1idG46YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcHgpO1xufVxuXG4vKiBSb2RhcMOpIGRvIGxvZ2luICovXG4ubG9naW4tZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOjIycHg7XG4gICAgZm9udC1zaXplOjEzcHg7XG4gICAgY29sb3I6IzRiNTU2MztcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbn1cblxuLyogQWp1c3RlIHBhcmEgdGVsYXMgbWVub3JlcyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6NDgwcHgpe1xuICAgIC5sb2dpbi1jYXJkIHtcbiAgICAgICAgcGFkZGluZzoyNnB4IDIwcHg7XG4gICAgfVxufVxuXG5cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/