/*!************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/styles/sculpt.css ***!
  \************************************************************************************************************************************************************************************************/
/* ========= RESET PAGE ========= */
/*  body {
    font-family: sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f0f0f0; 
}  */

/* html, body {
    overflow-x: hidden !important;
    margin: 0;
    padding: 0;
} */
 body {
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}


.container-global {
    width: 100%;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}
/* ========= CONTAINER GLOBAL ========= */
.page-wrapper {
    width: 100%;
    max-width: none; /* largeur FULL */
}

.scroll-offset {
    scroll-margin-top: 80px;
}

[x-cloak] { display: none !important; }


#blueCirclesList {
    color: #2e5dd1;      /* bleu exact des muscles */
    font-weight: 600;
    font-size: 1rem;
    text-align: center;
    margin-bottom: 10px;
}


/* ========= SVG CONTAINER ========= */
.svg-wrapper {
    width: 100%;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: center;
}

.svg-container {
    width: 100vw;
    max-width: 100%;
    overflow: hidden;
    padding: 0;
    margin: 0 auto; 
    display: flex;
    justify-content: center;
    align-items: center;
}



#anatomie {
    width: 100%;
    height: auto;
    display: block;
}

/* svg#anatomie {
    width: 100%;
    height: auto;
    display: block;
}


.svg-container svg {
    width: 100%;
    height: auto;
    display: block;
} */

/* ========= MUSCLES ========= */
.muscle-circle {
    cursor: pointer;
    transition: fill 0.2s ease-in-out;
    fill-opacity: 0.7;
    stroke: #fff;
    stroke-width: 1;
}

.muscle-circle.default-red {
    fill: #ff3e68;
}

.muscle-circle.clicked-blue {
    fill: #0000ff;
}

.body-part {
    fill-opacity: 0 !important;
    fill: transparent;
}

.body-part.highlighted {
    fill: #ff0000;
    fill-opacity: var(--original-opacity, 0.19) !important;
    stroke: #ff0000;
    stroke-width: 2;
}


/* Classe appliquée aux muscles sélectionnés */
/* === Animation respiration améliorée === */
.muscle-active {
    stroke: #1e40af !important;
    animation: breathe 1.8s ease-in-out infinite;
    transform-origin: center;
    transform-box: fill-box; /* OBLIGATOIRE pour SVG */
}

/* Bleu quand sélectionné */
.selected-blue {
    fill: #3b82f6 !important;
}

/* Respiration harmonieuse et plus visible */
@keyframes breathe {
    0%   { transform: scale(1);      opacity: 1;   }
    40%  { transform: scale(1.09);   opacity: 0.9; }
    100% { transform: scale(1);      opacity: 1;   }
}
/* ===== AVATAR ===== */

#elias-toggle {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 75px;
    height: 75px;
    border-radius: 50%;
    z-index: 9999;
    cursor: pointer;
    overflow: visible;
}

/* image du visage */
#elias-toggle img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    -o-object-fit: cover;
       object-fit: cover;
    position: relative;
    z-index: 3;
}


/* fond bleu pulsant */
.pulse-bg {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: radial-gradient(circle, #4da3ff, #1e70ff);
    filter: blur(8px);
    z-index: 1;
    animation: pulseBlue 1.9s ease-in-out infinite;
}

/* halo arc-en-ciel / feu */
#elias-toggle::before,
#elias-toggle::after {
    content: "";
    position: absolute;
    inset: -22px;
    border-radius: 50%;
    animation: haloFire 3s infinite ease-in-out;
    pointer-events: none;
    z-index: 0;
}

#elias-toggle::after {
    animation-delay: 1.4s;
}

/* animation halo */
@keyframes haloFire {
    0%   { box-shadow: 0 0 0 0 rgba(255, 140, 0, 0.15); opacity: .3; }
    40%  { box-shadow: 0 0 38px 18px rgba(255, 165, 0, 1); opacity: 1; }
    70%  { box-shadow: 0 0 60px 30px rgba(255, 230, 90, 0.5); opacity: .6; }
    100% { box-shadow: 0 0 0 0 rgba(255, 200, 0, 0); opacity: 0; }
}

/* animation du fond bleu */
@keyframes pulseBlue {
    0%   { transform: scale(1); opacity: .6; }
    50%  { transform: scale(1.15); opacity: 1; }
    100% { transform: scale(1); opacity: .6; }
}

/* Quand le chatbot est ouvert → plus d’animations */
.stop-animation .pulse-bg,
.stop-animation::before,
.stop-animation::after {
    animation: none !important;
    opacity: 0 !important;
}

/* halo externe jaune */
.btn-halo-outer {
    position: absolute;
    inset: -18px;
    background: radial-gradient(circle,
        rgba(255, 200, 0, 0.70),
        rgba(255, 180, 0, 0.25),
        rgba(255, 160, 0, 0.05),
        transparent 80%
    );
    border-radius: 999px;
    animation: haloFire 2.5s infinite ease-in-out;
    z-index: 0;
}

/* halo interne bleu */
.btn-halo-inner {
    position: absolute;
    inset: -8px;
    background: radial-gradient(circle,
        rgba(49,130,206,0.50),
        rgba(49,130,206,0.20),
        rgba(49,130,206,0) 70%
    );
    border-radius: 999px;
    animation: pulseBlue 3s infinite ease-in-out;
    z-index: 1;
}

/* bouton */
.btn-diagnostic-animated {
    position: relative;
    z-index: 2;
    padding: 0.75rem 1.75rem;
    border-radius: 0.75rem;
    background: #ef4444;
    color: #fff;
    font-weight: 600;
    display: inline-block;
    border: none;
    box-shadow: 0 4px 0 rgba(0,0,0,0.25);
    cursor: pointer;
    transition: 0.2s ease;
}

.btn-diagnostic-animated:hover {
    background: #dc2626;
    transform: translateY(1px);
    box-shadow: 0 3px 0 rgba(0,0,0,0.2);
}

/* Désactivation des halos */
.btn-stop .btn-halo-outer,
.btn-stop .btn-halo-inner {
    animation: none !important;
    opacity: 0 !important;
}

/* Désactivation animation bouton */
.btn-stop .btn-diagnostic-animated {
    animation: none !important;
}

/* Assure que les halos ne prennent pas la largeur complète */
.btn-halo-outer {
    position: absolute;
    inset: -18px;
}

.btn-halo-inner {
    position: absolute;
    inset: -8px;
}

/* Animation pulsing douce pour mini-body */
.mini-body-anim img {
    animation: miniPulse 2.2s ease-in-out infinite;
}

@keyframes miniPulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.07); }
    100% { transform: scale(1); }
}
/* Animation auto : apparition -> pulse -> disparition */
.intro-anim {
    animation: introFade 3s ease-out forwards;
}

/* fade-in + petit bounce + fade-out */
@keyframes introFade {
    0%   { opacity: 0; transform: translateY(10px) scale(0.7); }
    20%  { opacity: 1; transform: translateY(0) scale(1); }
    55%  { opacity: 1; transform: translateY(0) scale(1.08); }
    75%  { opacity: 1; transform: translateY(0) scale(1); }
    100% { opacity: 0; transform: translateY(0) scale(1); }
}

/* Pulse discret permanent lorsqu'il est ré-affiché (hover) */
.mini-body img {
    animation: miniPulse 2s ease-in-out infinite;
}

@keyframes miniPulse {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.05); }
    100% { transform: scale(1); }
}
/* Apparition doux + respiration infinie */
.intro-pulse img {
    animation: miniPulseLoop 2.4s ease-in-out infinite;
    transform-origin: center;
}

@keyframes miniPulseLoop {
    0%   { transform: scale(1); opacity: 0.85; }
    50%  { transform: scale(1.08); opacity: 1; }
    100% { transform: scale(1); opacity: 0.85; }
}
@keyframes pulse-once {
    0% { transform: scale(1); }
    50% { transform: scale(1.06); }
    100% { transform: scale(1); }
}
.pulse-once {
    animation: pulse-once 0.7s ease-out;
}

.diagnostic-valid::after {
    content: "✔ Validé";
    position: absolute;
    bottom: 6px;        /* <-- AU LIEU DE TOP */
    right: 10px;        /* Reste à droite */
    background: #fff;
    color: #16a34a;
    font-weight: 600;
    font-size: 13px;
    padding: 3px 8px;
    border-radius: 12px;
    border: 1px solid #16a34a;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

.pulse-choose {
    animation: pulseChoose 1.2s ease-in-out infinite;
}

@keyframes pulseChoose {
    0%   { transform: scale(1); box-shadow: 0 0 0 rgba(59,130,246,0); }
    50%  { transform: scale(1.03); box-shadow: 0 0 12px rgba(59,130,246,0.5); }
    100% { transform: scale(1); box-shadow: 0 0 0 rgba(59,130,246,0); }
}

@keyframes pulse-soft {
  0%   { opacity: 1; }
  50%  { opacity: 0.4; }
  100% { opacity: 1; }
}

.pulse-ready {
  animation: pulse-soft 1.2s ease-in-out infinite;
  color: #16a34a; /* vert */
  font-weight: 600;
}

/* =========================================================
   HALO ORANGE – CLONE (même rendu que chatbot / diagnostic)
   ========================================================= */

.halo-clone {
  position: absolute;
  inset: -14px;                 /* plus large */
  border-radius: 9999px;
  pointer-events: none;
  z-index: 0;
}

.halo-clone__pulse {
  position: absolute;
  inset: 0;
  border-radius: 9999px;

  /* Couleur ORANGE / DORÉE (comme diagnostic) */
  box-shadow:
    0 0 0 0 rgba(255, 153, 51, 0.55),
    0 0 25px rgba(255, 153, 51, 0.65);

  animation: haloClonePulse 1.6s infinite ease-out;
}

@keyframes haloClonePulse {
  0% {
    box-shadow:
      0 0 0 0 rgba(255, 153, 51, 0.55),
      0 0 25px rgba(255, 153, 51, 0.65);
  }

  70% {
    box-shadow:
      0 0 0 22px rgba(255, 153, 51, 0),
      0 0 45px rgba(255, 153, 51, 0);
  }

  100% {
    box-shadow:
      0 0 0 0 rgba(255, 153, 51, 0),
      0 0 0 rgba(255, 153, 51, 0);
  }
}


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