/*!*********************************************************************************************************************************************************************************************!*\
  !*** 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/app.css ***!
  \*********************************************************************************************************************************************************************************************/
*, ::before, ::after {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*//*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: "Space Grotesk", system-ui, -apple-system, sans-serif; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

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

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: "JetBrains Mono", ui-monospace, monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}
    html, body {
  height: 100%;
}
    body {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
  font-family: "Space Grotesk", system-ui, -apple-system, sans-serif;
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.container {
  width: 100%;
}
@media (min-width: 640px) {

  .container {
    max-width: 640px;
  }
}
@media (min-width: 768px) {

  .container {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {

  .container {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {

  .container {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {

  .container {
    max-width: 1536px;
  }
}
.\!btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 0.5rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 0.5rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.btn-secondary {
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}
.btn-secondary:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.btn-ghost {
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.btn-ghost:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}
/* Customer primary CTA — the one place the aurora magic lives in a button.
       Use sparingly (see branding/06 §5, 07 §3). */
.btn-aurora {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
        background-image: var(--xn-gradient-aurora);
        box-shadow: var(--xn-shadow-glow);
}
.btn-aurora:hover {
        filter: brightness(1.08);
    }
/* Operator-surface primary — solid ink, never the aurora (branding/11 §4). */
.btn-ink {
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.btn-ink:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}
.btn-ink:disabled {
  opacity: 0.5;
}
/* Operator "elevated rights" accent. */
.field-label {
  margin-bottom: 0.375rem;
  display: block;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.field-input {
  width: 100%;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}
.field-input::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.field-input::placeholder {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.field-input:focus {
  --tw-border-opacity: 1;
  border-color: rgb(99 102 241 / var(--tw-border-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1));
}
.field-textarea {
  width: 100%;
  border-radius: 0.5rem;
  border-width: 1px;
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}
.field-textarea::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.field-textarea::placeholder {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.field-textarea:focus {
  --tw-border-opacity: 1;
  border-color: rgb(99 102 241 / var(--tw-border-opacity, 1));
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1));
}
.field-textarea {
  font-family: "JetBrains Mono", ui-monospace, monospace;
}
.field-help {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 500;
}
.badge-emerald {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 500;
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}
.badge-slate {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  border-radius: 9999px;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 500;
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}
.pointer-events-none {
  pointer-events: none;
}
.visible {
  visibility: visible;
}
.collapse {
  visibility: collapse;
}
.static {
  position: static;
}
.fixed {
  position: fixed;
}
.absolute {
  position: absolute;
}
.relative {
  position: relative;
}
.sticky {
  position: sticky;
}
.-inset-6 {
  inset: -1.5rem;
}
.inset-0 {
  inset: 0px;
}
.inset-x-0 {
  left: 0px;
  right: 0px;
}
.-right-1 {
  right: -0.25rem;
}
.-top-1 {
  top: -0.25rem;
}
.-top-24 {
  top: -6rem;
}
.bottom-14 {
  bottom: 3.5rem;
}
.left-0 {
  left: 0px;
}
.right-0 {
  right: 0px;
}
.right-1\.5 {
  right: 0.375rem;
}
.right-16 {
  right: 4rem;
}
.right-3 {
  right: 0.75rem;
}
.top-0 {
  top: 0px;
}
.top-1\.5 {
  top: 0.375rem;
}
.top-6 {
  top: 1.5rem;
}
.top-full {
  top: 100%;
}
.isolate {
  isolation: isolate;
}
.-z-10 {
  z-index: -10;
}
.z-10 {
  z-index: 10;
}
.z-20 {
  z-index: 20;
}
.z-30 {
  z-index: 30;
}
.z-50 {
  z-index: 50;
}
.order-1 {
  order: 1;
}
.order-2 {
  order: 2;
}
.col-span-12 {
  grid-column: span 12 / span 12;
}
.col-span-2 {
  grid-column: span 2 / span 2;
}
.col-span-3 {
  grid-column: span 3 / span 3;
}
.m-0 {
  margin: 0px;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}
.mb-0\.5 {
  margin-bottom: 0.125rem;
}
.mb-1 {
  margin-bottom: 0.25rem;
}
.mb-10 {
  margin-bottom: 2.5rem;
}
.mb-2 {
  margin-bottom: 0.5rem;
}
.mb-3 {
  margin-bottom: 0.75rem;
}
.mb-4 {
  margin-bottom: 1rem;
}
.mb-5 {
  margin-bottom: 1.25rem;
}
.mb-6 {
  margin-bottom: 1.5rem;
}
.mb-8 {
  margin-bottom: 2rem;
}
.ml-1 {
  margin-left: 0.25rem;
}
.ml-2 {
  margin-left: 0.5rem;
}
.ml-auto {
  margin-left: auto;
}
.mt-0\.5 {
  margin-top: 0.125rem;
}
.mt-1 {
  margin-top: 0.25rem;
}
.mt-1\.5 {
  margin-top: 0.375rem;
}
.mt-10 {
  margin-top: 2.5rem;
}
.mt-12 {
  margin-top: 3rem;
}
.mt-2 {
  margin-top: 0.5rem;
}
.mt-2\.5 {
  margin-top: 0.625rem;
}
.mt-3 {
  margin-top: 0.75rem;
}
.mt-4 {
  margin-top: 1rem;
}
.mt-5 {
  margin-top: 1.25rem;
}
.mt-6 {
  margin-top: 1.5rem;
}
.mt-7 {
  margin-top: 1.75rem;
}
.mt-8 {
  margin-top: 2rem;
}
.mt-9 {
  margin-top: 2.25rem;
}
.mt-auto {
  margin-top: auto;
}
.line-clamp-2 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.inline {
  display: inline;
}
.flex {
  display: flex;
}
.inline-flex {
  display: inline-flex;
}
.table {
  display: table;
}
.grid {
  display: grid;
}
.contents {
  display: contents;
}
.hidden {
  display: none;
}
.aspect-square {
  aspect-ratio: 1 / 1;
}
.h-0\.5 {
  height: 0.125rem;
}
.h-1\.5 {
  height: 0.375rem;
}
.h-10 {
  height: 2.5rem;
}
.h-11 {
  height: 2.75rem;
}
.h-12 {
  height: 3rem;
}
.h-14 {
  height: 3.5rem;
}
.h-16 {
  height: 4rem;
}
.h-2 {
  height: 0.5rem;
}
.h-2\.5 {
  height: 0.625rem;
}
.h-32 {
  height: 8rem;
}
.h-4 {
  height: 1rem;
}
.h-5 {
  height: 1.25rem;
}
.h-56 {
  height: 14rem;
}
.h-6 {
  height: 1.5rem;
}
.h-7 {
  height: 1.75rem;
}
.h-8 {
  height: 2rem;
}
.h-80 {
  height: 20rem;
}
.h-9 {
  height: 2.25rem;
}
.h-96 {
  height: 24rem;
}
.h-full {
  height: 100%;
}
.h-px {
  height: 1px;
}
.h-screen {
  height: 100vh;
}
.max-h-48 {
  max-height: 12rem;
}
.max-h-56 {
  max-height: 14rem;
}
.max-h-72 {
  max-height: 18rem;
}
.max-h-80 {
  max-height: 20rem;
}
.min-h-0 {
  min-height: 0px;
}
.min-h-\[24rem\] {
  min-height: 24rem;
}
.min-h-\[3rem\] {
  min-height: 3rem;
}
.min-h-full {
  min-height: 100%;
}
.w-1\.5 {
  width: 0.375rem;
}
.w-1\/2 {
  width: 50%;
}
.w-10 {
  width: 2.5rem;
}
.w-11 {
  width: 2.75rem;
}
.w-12 {
  width: 3rem;
}
.w-14 {
  width: 3.5rem;
}
.w-2\.5 {
  width: 0.625rem;
}
.w-24 {
  width: 6rem;
}
.w-28 {
  width: 7rem;
}
.w-4 {
  width: 1rem;
}
.w-40 {
  width: 10rem;
}
.w-5 {
  width: 1.25rem;
}
.w-6 {
  width: 1.5rem;
}
.w-64 {
  width: 16rem;
}
.w-7 {
  width: 1.75rem;
}
.w-72 {
  width: 18rem;
}
.w-8 {
  width: 2rem;
}
.w-80 {
  width: 20rem;
}
.w-9 {
  width: 2.25rem;
}
.w-\[40rem\] {
  width: 40rem;
}
.w-auto {
  width: auto;
}
.w-fit {
  width: -moz-fit-content;
  width: fit-content;
}
.w-full {
  width: 100%;
}
.w-px {
  width: 1px;
}
.w-screen {
  width: 100vw;
}
.min-w-0 {
  min-width: 0px;
}
.min-w-\[14rem\] {
  min-width: 14rem;
}
.min-w-\[6\.5rem\] {
  min-width: 6.5rem;
}
.max-w-2xl {
  max-width: 42rem;
}
.max-w-3xl {
  max-width: 48rem;
}
.max-w-4xl {
  max-width: 56rem;
}
.max-w-5xl {
  max-width: 64rem;
}
.max-w-6xl {
  max-width: 72rem;
}
.max-w-\[10rem\] {
  max-width: 10rem;
}
.max-w-\[15rem\] {
  max-width: 15rem;
}
.max-w-\[200px\] {
  max-width: 200px;
}
.max-w-\[80\%\] {
  max-width: 80%;
}
.max-w-\[85\%\] {
  max-width: 85%;
}
.max-w-lg {
  max-width: 32rem;
}
.max-w-md {
  max-width: 28rem;
}
.max-w-sm {
  max-width: 24rem;
}
.max-w-xl {
  max-width: 36rem;
}
.max-w-xs {
  max-width: 20rem;
}
.flex-1 {
  flex: 1 1 0%;
}
.shrink-0 {
  flex-shrink: 0;
}
.border-collapse {
  border-collapse: collapse;
}
.rotate-180 {
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.rotate-90 {
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.transform {
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@keyframes pulse {

  50% {
    opacity: .5;
  }
}
.animate-pulse {
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse-soft {

  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: 0.55;
  }
}
.animate-pulse-soft {
  animation: pulse-soft 1.6s ease-in-out infinite;
}
@keyframes spin {

  to {
    transform: rotate(360deg);
  }
}
.animate-spin {
  animation: spin 1s linear infinite;
}
.cursor-pointer {
  cursor: pointer;
}
.select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.resize-none {
  resize: none;
}
.scroll-mt-20 {
  scroll-margin-top: 5rem;
}
.scroll-mt-24 {
  scroll-margin-top: 6rem;
}
.list-disc {
  list-style-type: disc;
}
.grid-cols-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.grid-cols-12 {
  grid-template-columns: repeat(12, minmax(0, 1fr));
}
.grid-cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.grid-cols-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.grid-cols-\[260px_1fr\] {
  grid-template-columns: 260px 1fr;
}
.flex-col {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}
.place-items-center {
  place-items: center;
}
.items-start {
  align-items: flex-start;
}
.items-end {
  align-items: flex-end;
}
.items-center {
  align-items: center;
}
.items-baseline {
  align-items: baseline;
}
.justify-end {
  justify-content: flex-end;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-0\.5 {
  gap: 0.125rem;
}
.gap-1 {
  gap: 0.25rem;
}
.gap-1\.5 {
  gap: 0.375rem;
}
.gap-10 {
  gap: 2.5rem;
}
.gap-12 {
  gap: 3rem;
}
.gap-2 {
  gap: 0.5rem;
}
.gap-2\.5 {
  gap: 0.625rem;
}
.gap-3 {
  gap: 0.75rem;
}
.gap-4 {
  gap: 1rem;
}
.gap-5 {
  gap: 1.25rem;
}
.gap-6 {
  gap: 1.5rem;
}
.gap-8 {
  gap: 2rem;
}
.gap-x-4 {
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}
.gap-y-1\.5 {
  row-gap: 0.375rem;
}
.-space-x-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(-0.375rem * var(--tw-space-x-reverse));
  margin-left: calc(-0.375rem * calc(1 - var(--tw-space-x-reverse)));
}
.-space-x-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-x-reverse: 0;
  margin-right: calc(-0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(-0.5rem * calc(1 - var(--tw-space-x-reverse)));
}
.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.125rem * var(--tw-space-y-reverse));
}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}
.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
}
.space-y-10 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2.5rem * var(--tw-space-y-reverse));
}
.space-y-16 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(4rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(4rem * var(--tw-space-y-reverse));
}
.space-y-2 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}
.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.625rem * var(--tw-space-y-reverse));
}
.space-y-3 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}
.space-y-5 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}
.space-y-6 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}
.space-y-8 > :not([hidden]) ~ :not([hidden]) {
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}
.divide-slate-100 > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-opacity: 1;
  border-color: rgb(241 245 249 / var(--tw-divide-opacity, 1));
}
.self-end {
  align-self: flex-end;
}
.self-center {
  align-self: center;
}
.overflow-hidden {
  overflow: hidden;
}
.overflow-x-auto {
  overflow-x: auto;
}
.overflow-y-auto {
  overflow-y: auto;
}
.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.whitespace-nowrap {
  white-space: nowrap;
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}
.text-balance {
  text-wrap: balance;
}
.break-all {
  word-break: break-all;
}
.rounded {
  border-radius: 0.25rem;
}
.rounded-2xl {
  border-radius: 1rem;
}
.rounded-3xl {
  border-radius: 1.5rem;
}
.rounded-\[11px\] {
  border-radius: 11px;
}
.rounded-\[15px\] {
  border-radius: 15px;
}
.rounded-full {
  border-radius: 9999px;
}
.rounded-lg {
  border-radius: 0.5rem;
}
.rounded-md {
  border-radius: 0.375rem;
}
.rounded-xl {
  border-radius: 0.75rem;
}
.rounded-tl-sm {
  border-top-left-radius: 0.125rem;
}
.rounded-tr-sm {
  border-top-right-radius: 0.125rem;
}
.border {
  border-width: 1px;
}
.border-2 {
  border-width: 2px;
}
.border-b {
  border-bottom-width: 1px;
}
.border-r {
  border-right-width: 1px;
}
.border-t {
  border-top-width: 1px;
}
.border-dashed {
  border-style: dashed;
}
.border-accent-100 {
  --tw-border-opacity: 1;
  border-color: rgb(224 231 255 / var(--tw-border-opacity, 1));
}
.border-accent-200 {
  --tw-border-opacity: 1;
  border-color: rgb(199 210 254 / var(--tw-border-opacity, 1));
}
.border-accent-400 {
  --tw-border-opacity: 1;
  border-color: rgb(129 140 248 / var(--tw-border-opacity, 1));
}
.border-accent-500 {
  --tw-border-opacity: 1;
  border-color: rgb(99 102 241 / var(--tw-border-opacity, 1));
}
.border-amber-200 {
  --tw-border-opacity: 1;
  border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
}
.border-amber-300 {
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}
.border-amber-500\/30 {
  border-color: rgb(245 158 11 / 0.3);
}
.border-emerald-200 {
  --tw-border-opacity: 1;
  border-color: rgb(167 243 208 / var(--tw-border-opacity, 1));
}
.border-indigo-200 {
  --tw-border-opacity: 1;
  border-color: rgb(199 210 254 / var(--tw-border-opacity, 1));
}
.border-neutral-800 {
  --tw-border-opacity: 1;
  border-color: rgb(38 38 38 / var(--tw-border-opacity, 1));
}
.border-rose-200 {
  --tw-border-opacity: 1;
  border-color: rgb(254 205 211 / var(--tw-border-opacity, 1));
}
.border-slate-100 {
  --tw-border-opacity: 1;
  border-color: rgb(241 245 249 / var(--tw-border-opacity, 1));
}
.border-slate-200 {
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
}
.border-slate-200\/70 {
  border-color: rgb(226 232 240 / 0.7);
}
.border-slate-200\/80 {
  border-color: rgb(226 232 240 / 0.8);
}
.border-slate-300 {
  --tw-border-opacity: 1;
  border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}
.border-slate-900 {
  --tw-border-opacity: 1;
  border-color: rgb(15 23 42 / var(--tw-border-opacity, 1));
}
.border-transparent {
  border-color: transparent;
}
.border-white\/10 {
  border-color: rgb(255 255 255 / 0.1);
}
.border-white\/40 {
  border-color: rgb(255 255 255 / 0.4);
}
.bg-accent-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(224 231 255 / var(--tw-bg-opacity, 1));
}
.bg-accent-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(129 140 248 / var(--tw-bg-opacity, 1));
}
.bg-accent-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 255 / var(--tw-bg-opacity, 1));
}
.bg-accent-50\/50 {
  background-color: rgb(238 242 255 / 0.5);
}
.bg-accent-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1));
}
.bg-amber-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(251 191 36 / var(--tw-bg-opacity, 1));
}
.bg-amber-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.bg-amber-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}
.bg-amber-500\/10 {
  background-color: rgb(245 158 11 / 0.1);
}
.bg-amber-500\/15 {
  background-color: rgb(245 158 11 / 0.15);
}
.bg-emerald-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}
.bg-emerald-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
}
.bg-indigo-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 255 / var(--tw-bg-opacity, 1));
}
.bg-indigo-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
}
.bg-indigo-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(79 70 229 / var(--tw-bg-opacity, 1));
}
.bg-neutral-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(23 23 23 / var(--tw-bg-opacity, 1));
}
.bg-neutral-950 {
  --tw-bg-opacity: 1;
  background-color: rgb(10 10 10 / var(--tw-bg-opacity, 1));
}
.bg-rose-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(255 241 242 / var(--tw-bg-opacity, 1));
}
.bg-rose-50\/50 {
  background-color: rgb(255 241 242 / 0.5);
}
.bg-rose-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(244 63 94 / var(--tw-bg-opacity, 1));
}
.bg-rose-600 {
  --tw-bg-opacity: 1;
  background-color: rgb(225 29 72 / var(--tw-bg-opacity, 1));
}
.bg-sky-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(240 249 255 / var(--tw-bg-opacity, 1));
}
.bg-sky-500 {
  --tw-bg-opacity: 1;
  background-color: rgb(14 165 233 / var(--tw-bg-opacity, 1));
}
.bg-slate-100 {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.bg-slate-200 {
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}
.bg-slate-300 {
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}
.bg-slate-400 {
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}
.bg-slate-50 {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}
.bg-slate-50\/50 {
  background-color: rgb(248 250 252 / 0.5);
}
.bg-slate-50\/60 {
  background-color: rgb(248 250 252 / 0.6);
}
.bg-slate-50\/70 {
  background-color: rgb(248 250 252 / 0.7);
}
.bg-slate-50\/80 {
  background-color: rgb(248 250 252 / 0.8);
}
.bg-slate-900 {
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}
.bg-white {
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}
.bg-white\/10 {
  background-color: rgb(255 255 255 / 0.1);
}
.bg-white\/5 {
  background-color: rgb(255 255 255 / 0.05);
}
.bg-white\/70 {
  background-color: rgb(255 255 255 / 0.7);
}
.bg-white\/85 {
  background-color: rgb(255 255 255 / 0.85);
}
.bg-white\/90 {
  background-color: rgb(255 255 255 / 0.9);
}
.bg-\[repeating-conic-gradient\(\#f1f5f9_0\%_25\%\2c \#ffffff_0\%_50\%\)\] {
  background-image: repeating-conic-gradient(#f1f5f9 0% 25%,#ffffff 0% 50%);
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}
.from-transparent {
  --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
.via-accent-300\/60 {
  --tw-gradient-to: rgb(165 180 252 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(165 180 252 / 0.6) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.via-accent-300\/70 {
  --tw-gradient-to: rgb(165 180 252 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(165 180 252 / 0.7) var(--tw-gradient-via-position), var(--tw-gradient-to);
}
.to-transparent {
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}
.bg-\[length\:18px_18px\] {
  background-size: 18px 18px;
}
.object-contain {
  -o-object-fit: contain;
     object-fit: contain;
}
.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}
.p-1 {
  padding: 0.25rem;
}
.p-10 {
  padding: 2.5rem;
}
.p-3 {
  padding: 0.75rem;
}
.p-3\.5 {
  padding: 0.875rem;
}
.p-4 {
  padding: 1rem;
}
.p-5 {
  padding: 1.25rem;
}
.p-6 {
  padding: 1.5rem;
}
.p-8 {
  padding: 2rem;
}
.p-\[1\.5px\] {
  padding: 1.5px;
}
.p-px {
  padding: 1px;
}
.px-1 {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
.px-1\.5 {
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}
.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-2\.5 {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
.px-3 {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.px-3\.5 {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
.px-6 {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.px-7 {
  padding-left: 1.75rem;
  padding-right: 1.75rem;
}
.px-8 {
  padding-left: 2rem;
  padding-right: 2rem;
}
.py-0\.5 {
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}
.py-1 {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
.py-1\.5 {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}
.py-10 {
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.py-14 {
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
}
.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-2\.5 {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}
.py-20 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
.py-3 {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}
.py-3\.5 {
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.py-5 {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
.py-6 {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.py-8 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.pb-10 {
  padding-bottom: 2.5rem;
}
.pb-12 {
  padding-bottom: 3rem;
}
.pb-16 {
  padding-bottom: 4rem;
}
.pb-2 {
  padding-bottom: 0.5rem;
}
.pb-2\.5 {
  padding-bottom: 0.625rem;
}
.pb-20 {
  padding-bottom: 5rem;
}
.pb-24 {
  padding-bottom: 6rem;
}
.pl-1 {
  padding-left: 0.25rem;
}
.pl-2 {
  padding-left: 0.5rem;
}
.pl-4 {
  padding-left: 1rem;
}
.pr-1\.5 {
  padding-right: 0.375rem;
}
.pr-2 {
  padding-right: 0.5rem;
}
.pr-2\.5 {
  padding-right: 0.625rem;
}
.pr-8 {
  padding-right: 2rem;
}
.pt-0 {
  padding-top: 0px;
}
.pt-1 {
  padding-top: 0.25rem;
}
.pt-2 {
  padding-top: 0.5rem;
}
.pt-20 {
  padding-top: 5rem;
}
.pt-3 {
  padding-top: 0.75rem;
}
.pt-4 {
  padding-top: 1rem;
}
.pt-6 {
  padding-top: 1.5rem;
}
.pt-8 {
  padding-top: 2rem;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center;
}
.text-right {
  text-align: right;
}
.font-mono {
  font-family: "JetBrains Mono", ui-monospace, monospace;
}
.font-sans {
  font-family: "Space Grotesk", system-ui, -apple-system, sans-serif;
}
.text-2xl {
  font-size: 1.5rem;
  line-height: 2rem;
}
.text-3xl {
  font-size: 1.875rem;
  line-height: 2.25rem;
}
.text-4xl {
  font-size: 2.25rem;
  line-height: 2.5rem;
}
.text-5xl {
  font-size: 3rem;
  line-height: 1;
}
.text-\[10px\] {
  font-size: 10px;
}
.text-\[11px\] {
  font-size: 11px;
}
.text-\[12px\] {
  font-size: 12px;
}
.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
.text-lg {
  font-size: 1.125rem;
  line-height: 1.75rem;
}
.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
.text-xl {
  font-size: 1.25rem;
  line-height: 1.75rem;
}
.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
.font-bold {
  font-weight: 700;
}
.font-light {
  font-weight: 300;
}
.font-medium {
  font-weight: 500;
}
.font-normal {
  font-weight: 400;
}
.font-semibold {
  font-weight: 600;
}
.uppercase {
  text-transform: uppercase;
}
.lowercase {
  text-transform: lowercase;
}
.italic {
  font-style: italic;
}
.tabular-nums {
  --tw-numeric-spacing: tabular-nums;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}
.leading-5 {
  line-height: 1.25rem;
}
.leading-\[1\.05\] {
  line-height: 1.05;
}
.leading-none {
  line-height: 1;
}
.leading-relaxed {
  line-height: 1.625;
}
.leading-tight {
  line-height: 1.25;
}
.tracking-\[0\.18em\] {
  letter-spacing: 0.18em;
}
.tracking-normal {
  letter-spacing: 0em;
}
.tracking-tight {
  letter-spacing: -0.025em;
}
.tracking-wide {
  letter-spacing: 0.025em;
}
.tracking-wider {
  letter-spacing: 0.05em;
}
.text-accent-500 {
  --tw-text-opacity: 1;
  color: rgb(99 102 241 / var(--tw-text-opacity, 1));
}
.text-accent-600 {
  --tw-text-opacity: 1;
  color: rgb(79 70 229 / var(--tw-text-opacity, 1));
}
.text-accent-700 {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.text-accent-800 {
  --tw-text-opacity: 1;
  color: rgb(55 48 163 / var(--tw-text-opacity, 1));
}
.text-accent-900 {
  --tw-text-opacity: 1;
  color: rgb(49 46 129 / var(--tw-text-opacity, 1));
}
.text-amber-300 {
  --tw-text-opacity: 1;
  color: rgb(252 211 77 / var(--tw-text-opacity, 1));
}
.text-amber-400 {
  --tw-text-opacity: 1;
  color: rgb(251 191 36 / var(--tw-text-opacity, 1));
}
.text-amber-600 {
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}
.text-amber-700 {
  --tw-text-opacity: 1;
  color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}
.text-amber-800 {
  --tw-text-opacity: 1;
  color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}
.text-emerald-600 {
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}
.text-emerald-700 {
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}
.text-emerald-800 {
  --tw-text-opacity: 1;
  color: rgb(6 95 70 / var(--tw-text-opacity, 1));
}
.text-indigo-700 {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.text-indigo-800 {
  --tw-text-opacity: 1;
  color: rgb(55 48 163 / var(--tw-text-opacity, 1));
}
.text-neutral-300 {
  --tw-text-opacity: 1;
  color: rgb(212 212 212 / var(--tw-text-opacity, 1));
}
.text-neutral-400 {
  --tw-text-opacity: 1;
  color: rgb(163 163 163 / var(--tw-text-opacity, 1));
}
.text-neutral-500 {
  --tw-text-opacity: 1;
  color: rgb(115 115 115 / var(--tw-text-opacity, 1));
}
.text-neutral-700 {
  --tw-text-opacity: 1;
  color: rgb(64 64 64 / var(--tw-text-opacity, 1));
}
.text-rose-500 {
  --tw-text-opacity: 1;
  color: rgb(244 63 94 / var(--tw-text-opacity, 1));
}
.text-rose-600 {
  --tw-text-opacity: 1;
  color: rgb(225 29 72 / var(--tw-text-opacity, 1));
}
.text-rose-700 {
  --tw-text-opacity: 1;
  color: rgb(190 18 60 / var(--tw-text-opacity, 1));
}
.text-rose-700\/80 {
  color: rgb(190 18 60 / 0.8);
}
.text-rose-800 {
  --tw-text-opacity: 1;
  color: rgb(159 18 57 / var(--tw-text-opacity, 1));
}
.text-sky-600 {
  --tw-text-opacity: 1;
  color: rgb(2 132 199 / var(--tw-text-opacity, 1));
}
.text-sky-700 {
  --tw-text-opacity: 1;
  color: rgb(3 105 161 / var(--tw-text-opacity, 1));
}
.text-slate-200 {
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}
.text-slate-300 {
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}
.text-slate-400 {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.text-slate-500 {
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}
.text-slate-600 {
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}
.text-slate-700 {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}
.text-slate-800 {
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}
.text-slate-900 {
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}
.text-white {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.text-white\/85 {
  color: rgb(255 255 255 / 0.85);
}
.underline {
  text-decoration-line: underline;
}
.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.opacity-0 {
  opacity: 0;
}
.opacity-30 {
  opacity: 0.3;
}
.opacity-60 {
  opacity: 0.6;
}
.opacity-80 {
  opacity: 0.8;
}
.opacity-90 {
  opacity: 0.9;
}
.opacity-\[0\.12\] {
  opacity: 0.12;
}
.opacity-\[0\.16\] {
  opacity: 0.16;
}
.shadow {
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-2xl {
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_10px_30px_rgb\(15_23_42\/0\.08\)\] {
  --tw-shadow: 0 10px 30px rgb(15 23 42/0.08);
  --tw-shadow-colored: 0 10px 30px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_10px_30px_rgb\(15_23_42\/0\.12\)\] {
  --tw-shadow: 0 10px 30px rgb(15 23 42/0.12);
  --tw-shadow-colored: 0 10px 30px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_24px_70px_-20px_rgb\(79_70_229\/0\.30\)\] {
  --tw-shadow: 0 24px 70px -20px rgb(79 70 229/0.30);
  --tw-shadow-colored: 0 24px 70px -20px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_24px_70px_-24px_rgb\(15_23_42\/0\.22\)\] {
  --tw-shadow: 0 24px 70px -24px rgb(15 23 42/0.22);
  --tw-shadow-colored: 0 24px 70px -24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_24px_70px_-24px_rgb\(79_70_229\/0\.28\)\] {
  --tw-shadow: 0 24px 70px -24px rgb(79 70 229/0.28);
  --tw-shadow-colored: 0 24px 70px -24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_24px_70px_-24px_rgb\(79_70_229\/0\.30\)\] {
  --tw-shadow: 0 24px 70px -24px rgb(79 70 229/0.30);
  --tw-shadow-colored: 0 24px 70px -24px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_4px_12px_rgb\(15_23_42\/0\.08\)\] {
  --tw-shadow: 0 4px 12px rgb(15 23 42/0.08);
  --tw-shadow-colored: 0 4px 12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_4px_12px_rgb\(79_70_229\/0\.06\)\] {
  --tw-shadow: 0 4px 12px rgb(79 70 229/0.06);
  --tw-shadow-colored: 0 4px 12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_20px_-6px_rgb\(124_58_237\/0\.45\)\] {
  --tw-shadow: 0 8px 20px -6px rgb(124 58 237/0.45);
  --tw-shadow-colored: 0 8px 20px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-\[0_8px_20px_-6px_rgb\(124_58_237\/0\.5\)\] {
  --tw-shadow: 0 8px 20px -6px rgb(124 58 237/0.5);
  --tw-shadow-colored: 0 8px 20px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-lg {
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.shadow-sm {
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.ring {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-1 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-2 {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.ring-inset {
  --tw-ring-inset: inset;
}
.ring-accent-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1));
}
.ring-accent-600 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(79 70 229 / var(--tw-ring-opacity, 1));
}
.ring-amber-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(253 230 138 / var(--tw-ring-opacity, 1));
}
.ring-amber-400 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(251 191 36 / var(--tw-ring-opacity, 1));
}
.ring-amber-500\/30 {
  --tw-ring-color: rgb(245 158 11 / 0.3);
}
.ring-emerald-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(167 243 208 / var(--tw-ring-opacity, 1));
}
.ring-indigo-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1));
}
.ring-rose-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(254 205 211 / var(--tw-ring-opacity, 1));
}
.ring-rose-400 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(251 113 133 / var(--tw-ring-opacity, 1));
}
.ring-sky-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(186 230 253 / var(--tw-ring-opacity, 1));
}
.ring-slate-200 {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(226 232 240 / var(--tw-ring-opacity, 1));
}
.ring-white {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1));
}
.ring-offset-2 {
  --tw-ring-offset-width: 2px;
}
.blur-3xl {
  --tw-blur: blur(64px);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.filter {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.backdrop-blur {
  --tw-backdrop-blur: blur(8px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.transition {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-colors {
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.transition-transform {
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
.\[background\:radial-gradient\(40rem_20rem_at_50\%_-20\%\2c white\2c transparent\)\] {
  background: radial-gradient(40rem 20rem at 50% -20%,white,transparent);
}
.\[scrollbar-width\:none\] {
  scrollbar-width: none;
}

/* SSE streaming UX */
.streaming-cursor::after {
    content: '▍';
    margin-left: 0.125rem;
    display: inline-block;
}
@keyframes pulse-soft {

  0%, 100% {
    opacity: 1;
  }

  50% {
    opacity: 0.55;
  }
}
.streaming-cursor::after {
  animation: pulse-soft 1.6s ease-in-out infinite;
  --tw-text-opacity: 1;
  color: rgb(99 102 241 / var(--tw-text-opacity, 1));
}
.file\:mr-3::file-selector-button {
  margin-right: 0.75rem;
}
.file\:rounded-md::file-selector-button {
  border-radius: 0.375rem;
}
.file\:border-0::file-selector-button {
  border-width: 0px;
}
.file\:bg-slate-100::file-selector-button {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.file\:px-3::file-selector-button {
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}
.file\:py-1\.5::file-selector-button {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}
.file\:text-xs::file-selector-button {
  font-size: 0.75rem;
  line-height: 1rem;
}
.file\:font-medium::file-selector-button {
  font-weight: 500;
}
.placeholder\:text-slate-400::-moz-placeholder {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.placeholder\:text-slate-400::placeholder {
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}
.after\:absolute::after {
  content: var(--tw-content);
  position: absolute;
}
.after\:inset-x-2::after {
  content: var(--tw-content);
  left: 0.5rem;
  right: 0.5rem;
}
.after\:bottom-0::after {
  content: var(--tw-content);
  bottom: 0px;
}
.after\:h-0\.5::after {
  content: var(--tw-content);
  height: 0.125rem;
}
.after\:rounded-full::after {
  content: var(--tw-content);
  border-radius: 9999px;
}
.after\:bg-amber-500::after {
  content: var(--tw-content);
  --tw-bg-opacity: 1;
  background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}
.after\:content-\[\"\"\]::after {
  --tw-content: "";
  content: var(--tw-content);
}
.after\:content-\[\'\'\]::after {
  --tw-content: '';
  content: var(--tw-content);
}
.hover\:-translate-y-0\.5:hover {
  --tw-translate-y: -0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.hover\:border-accent-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(165 180 252 / var(--tw-border-opacity, 1));
}
.hover\:border-accent-400:hover {
  --tw-border-opacity: 1;
  border-color: rgb(129 140 248 / var(--tw-border-opacity, 1));
}
.hover\:border-slate-300:hover {
  --tw-border-opacity: 1;
  border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}
.hover\:bg-accent-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(238 242 255 / var(--tw-bg-opacity, 1));
}
.hover\:bg-accent-700:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(67 56 202 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}
.hover\:bg-amber-500\/10:hover {
  background-color: rgb(245 158 11 / 0.1);
}
.hover\:bg-indigo-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(99 102 241 / var(--tw-bg-opacity, 1));
}
.hover\:bg-neutral-800:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(38 38 38 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(255 241 242 / var(--tw-bg-opacity, 1));
}
.hover\:bg-rose-500:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(244 63 94 / var(--tw-bg-opacity, 1));
}
.hover\:bg-slate-100:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}
.hover\:bg-slate-100\/80:hover {
  background-color: rgb(241 245 249 / 0.8);
}
.hover\:bg-slate-50:hover {
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}
.hover\:bg-white\/10:hover {
  background-color: rgb(255 255 255 / 0.1);
}
.hover\:text-accent-700:hover {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.hover\:text-neutral-100:hover {
  --tw-text-opacity: 1;
  color: rgb(245 245 245 / var(--tw-text-opacity, 1));
}
.hover\:text-neutral-200:hover {
  --tw-text-opacity: 1;
  color: rgb(229 229 229 / var(--tw-text-opacity, 1));
}
.hover\:text-rose-700:hover {
  --tw-text-opacity: 1;
  color: rgb(190 18 60 / var(--tw-text-opacity, 1));
}
.hover\:text-slate-600:hover {
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}
.hover\:text-slate-700:hover {
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}
.hover\:text-slate-800:hover {
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}
.hover\:text-slate-900:hover {
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}
.hover\:text-white:hover {
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.hover\:underline:hover {
  text-decoration-line: underline;
}
.hover\:shadow-md:hover {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.hover\:ring-2:hover {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.hover\:ring-accent-200:hover {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1));
}
.hover\:brightness-110:hover {
  --tw-brightness: brightness(1.1);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.focus\:border-accent-400:focus {
  --tw-border-opacity: 1;
  border-color: rgb(129 140 248 / var(--tw-border-opacity, 1));
}
.focus\:outline-none:focus {
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.focus\:ring-2:focus {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus\:ring-accent-200:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(199 210 254 / var(--tw-ring-opacity, 1));
}
.focus\:ring-accent-500:focus {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(99 102 241 / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-2:focus-visible {
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}
.focus-visible\:ring-accent-300:focus-visible {
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(165 180 252 / var(--tw-ring-opacity, 1));
}
.focus-visible\:ring-offset-1:focus-visible {
  --tw-ring-offset-width: 1px;
}
.disabled\:bg-accent-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(165 180 252 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-indigo-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(165 180 252 / var(--tw-bg-opacity, 1));
}
.disabled\:bg-rose-300:disabled {
  --tw-bg-opacity: 1;
  background-color: rgb(253 164 175 / var(--tw-bg-opacity, 1));
}
.disabled\:opacity-50:disabled {
  opacity: 0.5;
}
.disabled\:opacity-60:disabled {
  opacity: 0.6;
}
.group:hover .group-hover\:translate-x-0\.5 {
  --tw-translate-x: 0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.group:hover .group-hover\:text-accent-500 {
  --tw-text-opacity: 1;
  color: rgb(99 102 241 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:text-accent-700 {
  --tw-text-opacity: 1;
  color: rgb(67 56 202 / var(--tw-text-opacity, 1));
}
.group:hover .group-hover\:opacity-100 {
  opacity: 1;
}
@media (min-width: 640px) {

  .sm\:block {
    display: block;
  }

  .sm\:inline {
    display: inline;
  }

  .sm\:flex {
    display: flex;
  }

  .sm\:inline-flex {
    display: inline-flex;
  }

  .sm\:grid-cols-10 {
    grid-template-columns: repeat(10, minmax(0, 1fr));
  }

  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sm\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .sm\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .sm\:flex-row {
    flex-direction: row;
  }

  .sm\:items-end {
    align-items: flex-end;
  }

  .sm\:items-center {
    align-items: center;
  }

  .sm\:p-10 {
    padding: 2.5rem;
  }

  .sm\:p-12 {
    padding: 3rem;
  }

  .sm\:px-12 {
    padding-left: 3rem;
    padding-right: 3rem;
  }

  .sm\:py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .sm\:py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .sm\:pt-24 {
    padding-top: 6rem;
  }

  .sm\:pt-28 {
    padding-top: 7rem;
  }

  .sm\:text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .sm\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .sm\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }

  .sm\:text-6xl {
    font-size: 3.75rem;
    line-height: 1;
  }
}
@media (min-width: 768px) {

  .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }

  .md\:inline {
    display: inline;
  }

  .md\:flex {
    display: flex;
  }

  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .md\:grid-cols-\[1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr auto;
  }
}
@media (min-width: 1024px) {

  .lg\:order-1 {
    order: 1;
  }

  .lg\:order-2 {
    order: 2;
  }

  .lg\:col-span-4 {
    grid-column: span 4 / span 4;
  }

  .lg\:col-span-5 {
    grid-column: span 5 / span 5;
  }

  .lg\:block {
    display: block;
  }

  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lg\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lg\:grid-cols-9 {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }

  .lg\:grid-cols-\[minmax\(0\2c 1fr\)_300px\] {
    grid-template-columns: minmax(0,1fr) 300px;
  }
}
.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar {
  display: none;
}

/*!***********************************************************************************************************************************************************************************************!*\
  !*** 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/ui/xn/tokens.css ***!
  \***********************************************************************************************************************************************************************************************/
/* Xentro design system — tokens & magic-layer utilities
 *
 * The rebrand token set (`--xn-*`) described in branding/07-color-system.md.
 * Two layers: a calm slate/indigo base and a sparing "aurora" magic layer
 * that only ever touches AI moments and the primary action.
 *
 * Scoped to :root so a future [data-theme="dark"] is a matter of overrides.
 * Loaded by the `app`, `work` and `design` entries — i.e. every surface.
 */

:root {
    /* base — ink & surface (slate) */
    --xn-ink:          #0f172a; /* slate-900 */
    --xn-ink-soft:     #334155; /* slate-700 */
    --xn-muted:        #64748b; /* slate-500 */
    --xn-muted-soft:   #94a3b8; /* slate-400 */
    --xn-border:       #e2e8f0; /* slate-200 */
    --xn-border-soft:  #f1f5f9; /* slate-100 */
    --xn-surface:      #ffffff;
    --xn-surface-soft: #f1f5f9; /* slate-100 */
    --xn-bg:           #f8fafc; /* slate-50 */
    --xn-chrome:       #0f172a; /* slate-900 — the dark Tier 1 topbar */
    --xn-overlay:      rgb(15 23 42 / .55);

    /* accent — indigo (the brand colour) */
    --xn-accent:       #4f46e5; /* indigo-600 */
    --xn-accent-fg:    #ffffff;
    --xn-accent-soft:  #eef2ff; /* indigo-50 */
    --xn-accent-line:  #c7d2fe; /* indigo-200 */

    /* admin surface — the operator skin (see branding/11-admin-surface.md).
     * Same shell, a darker chrome + amber "elevated rights, handle with care"
     * accent. Deliberately un-magical: the aurora never appears in admin. */
    --xn-admin-chrome:         #0a0a0a; /* near-black Tier 1 + frame */
    --xn-admin-chrome-soft:    #171717; /* Tier 2 on dark */
    --xn-admin-border:         #262626; /* hairline on dark */
    --xn-admin-accent:         #d97706; /* amber-600 — operator signal */
    --xn-admin-accent-soft:    #f59e0b; /* amber-500 */
    --xn-admin-on-chrome:      #fafafa;
    --xn-admin-on-chrome-muted:#a3a3a3;

    /* semantic */
    --xn-running:      #10b981; /* emerald-500 */
    --xn-running-soft: #d1fae5;
    --xn-success:      #10b981;
    --xn-warn:         #f59e0b; /* amber-500 */
    --xn-warn-soft:    #fef3c7;
    --xn-danger:       #e11d48; /* rose-600 */
    --xn-danger-soft:  #ffe4e6;

    /* magic — the aurora gradient (sparing!) */
    --xn-gradient-aurora: linear-gradient(100deg, #4f46e5 0%, #7c3aed 50%, #d946ef 100%);
    --xn-gradient-aurora-cool: linear-gradient(100deg, #4f46e5 0%, #7c3aed 45%, #22d3ee 100%);
    --xn-glow-aurora: radial-gradient(
        60% 60% at 50% 40%,
        rgb(124 58 237 / .28) 0%,
        rgb(79 70 229 / .14) 45%,
        transparent 75%);
    --xn-shadow-glow: 0 6px 20px -4px rgb(124 58 237 / .45), 0 2px 6px -2px rgb(79 70 229 / .35);

    /* aurora field — animated, super-subtle light hero background.
     * A white surface with three slow-drifting blurry glows. Alphas are kept
     * intentionally low so text stays exactly as readable as on plain white.
     * Editions can retune the hue/strength by overriding these three vars. */
    --xn-aurora-field-bg: #ffffff;
    --xn-aurora-field-1:  rgb(79 70 229 / .18);   /* indigo  */
    --xn-aurora-field-2:  rgb(217 70 239 / .15);  /* fuchsia */
    --xn-aurora-field-3:  rgb(34 211 238 / .15);  /* cyan    */
    --xn-aurora-field-speed: 18s;

    /* type */
    --xn-font-sans: 'Space Grotesk', system-ui, -apple-system, sans-serif;
    --xn-font-mono: 'JetBrains Mono', ui-monospace, monospace;

    /* shape */
    --xn-radius-sm: 0.25rem;
    --xn-radius:    0.5rem;
    --xn-radius-lg: 0.75rem;

    /* shadow (calm; floating elements only) */
    --xn-shadow-sm: 0 1px 2px rgb(15 23 42 / 0.05);
    --xn-shadow:    0 4px 12px rgb(15 23 42 / 0.08);
    --xn-shadow-lg: 0 10px 30px rgb(15 23 42 / 0.12);
}

/* ---- magic-layer utility classes ---------------------------------------
 * Components opt into these instead of reaching for ad-hoc gradients, so
 * the aurora stays consistent and rare. */

.xn-aurora      { background-image: var(--xn-gradient-aurora); }
.xn-aurora-cool { background-image: var(--xn-gradient-aurora-cool); }

/* one accented word in a heading — text-clipped gradient */
.xn-aurora-text {
    background-image: var(--xn-gradient-aurora);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* ---- aurora field — animated light hero background -----------------------
 * A drop-in background layer for large hero areas: mostly white, with a few
 * heavily-blurred aurora blobs that visibly drift, rotate and scale across
 * the surface. AI-inspired and futuristic — clearly alive, yet soft enough
 * that text reads as clearly as on white.
 *
 * Built from two pseudo-element layers (no extra DOM): each carries a couple
 * of concentrated radial-gradient blobs, sized larger than the box and moved
 * with `transform` (translate + rotate + scale) so the motion is obvious
 * while the blur keeps it dreamy. Everything outside the blobs is transparent,
 * so the white background shows through and the field stays predominantly white.
 *
 * Self-contained (absolute, full-bleed, behind siblings via negative z-index).
 * Give the parent its own stacking context with `isolate` so the field stays
 * put behind the section's content (without it, the negative z-index slips
 * behind the page background and the field vanishes). Drop it as first child:
 *
 *   <section class="relative isolate overflow-hidden">
 *     <div class="xn-aurora-field" aria-hidden="true"></div>
 *     … hero content (renders above the field) …
 *   </section>
 *
 * Variants: `--cool` (cyan-leaning), `--strong` (a touch more presence).
 * Honors prefers-reduced-motion by holding a still frame. */
.xn-aurora-field {
    position: absolute;
    inset: 0;
    z-index: -10;
    overflow: hidden;
    pointer-events: none;
    background-color: var(--xn-aurora-field-bg);
}
.xn-aurora-field::before,
.xn-aurora-field::after {
    content: '';
    position: absolute;
    /* oversize the layer so rotation/scale never reveals a hard edge */
    inset: -40%;
    background-repeat: no-repeat;
    /* the "super blurry" aurora look */
    filter: blur(72px);
    will-change: transform;
}
.xn-aurora-field::before {
    background-image:
        radial-gradient(28% 28% at 28% 32%, var(--xn-aurora-field-1), transparent 62%),
        radial-gradient(26% 26% at 72% 64%, var(--xn-aurora-field-2), transparent 62%);
    animation: xn-aurora-drift-a var(--xn-aurora-field-speed) linear infinite;
}
.xn-aurora-field::after {
    background-image:
        radial-gradient(30% 30% at 64% 28%, var(--xn-aurora-field-3), transparent 62%),
        radial-gradient(24% 24% at 32% 74%, var(--xn-aurora-field-1), transparent 62%);
    animation: xn-aurora-drift-b calc(var(--xn-aurora-field-speed) * 1.35) linear infinite;
}

/* cyan-leaning mix — pairs with .xn-aurora-cool surfaces */
.xn-aurora-field--cool {
    --xn-aurora-field-1: rgb(79 70 229 / .17);
    --xn-aurora-field-2: rgb(34 211 238 / .17);
    --xn-aurora-field-3: rgb(45 212 191 / .15);
}

/* a touch more presence — still subtle, for the front-page hero */
.xn-aurora-field--strong {
    --xn-aurora-field-1: rgb(79 70 229 / .24);
    --xn-aurora-field-2: rgb(217 70 239 / .20);
    --xn-aurora-field-3: rgb(34 211 238 / .20);
}

@keyframes xn-aurora-drift-a {
    0%   { transform: translate(0, 0)        rotate(0deg)   scale(1); }
    50%  { transform: translate(7%, 9%)      rotate(180deg) scale(1.2); }
    100% { transform: translate(0, 0)        rotate(360deg) scale(1); }
}
@keyframes xn-aurora-drift-b {
    0%   { transform: translate(0, 0)        rotate(0deg)    scale(1.1); }
    50%  { transform: translate(-9%, -7%)    rotate(-180deg) scale(1.3); }
    100% { transform: translate(0, 0)        rotate(-360deg) scale(1.1); }
}

@media (prefers-reduced-motion: reduce) {
    .xn-aurora-field::before,
    .xn-aurora-field::after { animation: none; }
}

/* soft aurora glow behind agent avatars / featured cards */
.xn-glow { box-shadow: var(--xn-shadow-glow); }
.xn-glow-radial::before {
    content: '';
    position: absolute;
    inset: -40%;
    background: var(--xn-glow-aurora);
    pointer-events: none;
    z-index: 0;
}

/* thinking / streaming shimmer */
@keyframes xn-shimmer {
    0%   { background-position: -150% 0; }
    100% { background-position:  250% 0; }
}
.xn-shimmer {
    background: linear-gradient(
        100deg,
        rgb(148 163 184 / .15) 30%,
        rgb(124 58 237 / .35) 50%,
        rgb(148 163 184 / .15) 70%);
    background-size: 200% 100%;
    animation: xn-shimmer 1.8s ease-in-out infinite;
}

/* gentle pulse for live dots */
@keyframes xn-pulse-soft {
    0%, 100% { opacity: 1; }
    50%      { opacity: .4; }
}
.xn-pulse { animation: xn-pulse-soft 1.6s ease-in-out infinite; }

/* full-width buttons — xn-button is light-DOM, so stretch the host + its
 * inner control when [block] is set (used for rail / composer CTAs). */
xn-button[block] { display: block; width: 100%; }
xn-button[block] > a,
xn-button[block] > button { width: 100%; }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXRzX3N0eWxlc19hcHBfY3NzLWFzc2V0c191aV94bl90b2tlbnNfY3NzLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQTtFQUFBLHdCQUFjO0VBQWQsd0JBQWM7RUFBZCxtQkFBYztFQUFkLG1CQUFjO0VBQWQsY0FBYztFQUFkLGNBQWM7RUFBZCxjQUFjO0VBQWQsZUFBYztFQUFkLGVBQWM7RUFBZCxhQUFjO0VBQWQsYUFBYztFQUFkLGtCQUFjO0VBQWQsc0NBQWM7RUFBZCw4QkFBYztFQUFkLDZCQUFjO0VBQWQsNEJBQWM7RUFBZCxlQUFjO0VBQWQsb0JBQWM7RUFBZCxzQkFBYztFQUFkLHVCQUFjO0VBQWQsd0JBQWM7RUFBZCxrQkFBYztFQUFkLDJCQUFjO0VBQWQsNEJBQWM7RUFBZCxzQ0FBYztFQUFkLGtDQUFjO0VBQWQsMkJBQWM7RUFBZCxzQkFBYztFQUFkLDhCQUFjO0VBQWQsWUFBYztFQUFkLGtCQUFjO0VBQWQsZ0JBQWM7RUFBZCxpQkFBYztFQUFkLGtCQUFjO0VBQWQsY0FBYztFQUFkLGdCQUFjO0VBQWQsYUFBYztFQUFkLG1CQUFjO0VBQWQscUJBQWM7RUFBZCwyQkFBYztFQUFkLHlCQUFjO0VBQWQsMEJBQWM7RUFBZCwyQkFBYztFQUFkLHVCQUFjO0VBQWQsd0JBQWM7RUFBZCx5QkFBYztFQUFkLHNCQUFjO0VBQWQsb0JBQWM7RUFBZCxzQkFBYztFQUFkLHFCQUFjO0VBQWQ7QUFBYzs7QUFBZDtFQUFBLHdCQUFjO0VBQWQsd0JBQWM7RUFBZCxtQkFBYztFQUFkLG1CQUFjO0VBQWQsY0FBYztFQUFkLGNBQWM7RUFBZCxjQUFjO0VBQWQsZUFBYztFQUFkLGVBQWM7RUFBZCxhQUFjO0VBQWQsYUFBYztFQUFkLGtCQUFjO0VBQWQsc0NBQWM7RUFBZCw4QkFBYztFQUFkLDZCQUFjO0VBQWQsNEJBQWM7RUFBZCxlQUFjO0VBQWQsb0JBQWM7RUFBZCxzQkFBYztFQUFkLHVCQUFjO0VBQWQsd0JBQWM7RUFBZCxrQkFBYztFQUFkLDJCQUFjO0VBQWQsNEJB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bUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLGdCQUFtQjtFQUFuQixvQkFBbUI7RUFBbkIsNEJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSx1QkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxtQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjs7RUFBQTtJQUFBO0VBQW1CO0FBQUE7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjs7RUFBQTtJQUFBO0VBQW1COztFQUFuQjtJQUFBO0VBQW1CO0FBQUE7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjs7RUFBQTtJQUFBO0VBQW1CO0FBQUE7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEseUJBQW1CO0tBQW5CLHNCQUFtQjtVQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLHFCQUFtQjtPQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsdUJBQW1CO0VBQW5CLHlEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHVCQUFtQjtFQUFuQix1REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSx1QkFBbUI7RUFBbkIsZ0VBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsdUJBQW1CO0VBQW5CLCtEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHVCQUFtQjtFQUFuQixnRUFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSx1QkFBbUI7RUFBbkIsOERBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsdUJBQW1CO0VBQW5CLDREQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHVCQUFtQjtFQUFuQiw4REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSx1QkFBbUI7RUFBbkIsZ0VBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsdUJBQW1CO0VBQW5CLCtEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHVCQUFtQjtFQUFuQiw0REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSx1QkFBbUI7RUFBbkIsK0RBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsdUJBQW1CO0VBQW5CLDhEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHVCQUFtQjtFQUFuQiw0REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSx3QkFBbUI7RUFBbkIsa0VBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLGdCQUFtQjtFQUFuQix1QkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxrQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxnRUFBbUI7RUFBbkIsK0RBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsc0VBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsc0VBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLHNCQUFtQjtLQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtLQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEscUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsaUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsbUJBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsZUFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxlQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG1CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG1CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxrQ0FBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLG1DQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsMEVBQW1CO0VBQW5CLDhGQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGdEQUFtQjtFQUFuQiw2REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSwyQ0FBbUI7RUFBbkIsdURBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsMkNBQW1CO0VBQW5CLHVEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtEQUFtQjtFQUFuQiw2REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxpREFBbUI7RUFBbkIsNkRBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsa0RBQW1CO0VBQW5CLDZEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGtEQUFtQjtFQUFuQiw2REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSwwQ0FBbUI7RUFBbkIsc0RBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsMkNBQW1CO0VBQW5CLHNEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLGlEQUFtQjtFQUFuQiwyREFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSxnREFBbUI7RUFBbkIsMkRBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsK0VBQW1CO0VBQW5CLG1HQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLDBDQUFtQjtFQUFuQix1REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSwyR0FBbUI7RUFBbkIseUdBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsMkdBQW1CO0VBQW5CLHlHQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLDJHQUFtQjtFQUFuQix5R0FBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLG9CQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsb0JBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7QUFBbkI7RUFBQSxxQkFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQTtBQUFtQjtBQUFuQjtFQUFBLDZCQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBLHdKQUFtQjtFQUFuQix3REFBbUI7RUFBbkI7QUFBbUI7QUFBbkI7RUFBQSwrRkFBbUI7RUFBbkIsd0RBQW1CO0VBQW5CO0FBQW1CO0FBQW5CO0VBQUEsOEJBQW1CO0VBQW5CLHdEQUFtQjtFQUFuQjtBQUFtQjtBQUFuQjtFQUFBO0FBQW1CO0FBQW5CO0VBQUE7QUFBbUI7O0FBMEVuQixxQkFBcUI7QUFDckI7SUFDSSxZQUFZO0lBQ1oscUJBQTZEO0lBQTdELHFCQUE2RDtBQUNqRTtBQURJOztFQUFBO0lBQUE7RUFBNkQ7O0VBQTdEO0lBQUE7RUFBNkQ7QUFBQTtBQUE3RDtFQUFBLCtDQUE2RDtFQUE3RCxvQkFBNkQ7RUFBN0Q7QUFBNkQ7QUEvRWpFO0VBQUE7QUFpRkE7QUFqRkE7RUFBQTtBQWlGQTtBQWpGQTtFQUFBO0FBaUZBO0FBakZBO0VBQUEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEscUJBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEscUJBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUE7QUFpRkE7QUFqRkE7RUFBQSxvQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxvQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwwQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwwQkFpRkE7RUFqRkEsWUFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwwQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwwQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwwQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwwQkFpRkE7RUFqRkEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsZ0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsZ0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsMkJBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsc0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsc0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsc0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsa0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQTtBQWlGQTtBQWpGQTtFQUFBLGtCQWlGQTtFQWpGQTtBQWlGQTtBQWpGQTtFQUFBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUE7QUFpRkE7QUFqRkE7RUFBQSw2RUFpRkE7RUFqRkEsaUdBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsMkdBaUZBO0VBakZBLHlHQWlGQTtFQWpGQTtBQWlGQTtBQWpGQTtFQUFBLG9CQWlGQTtFQWpGQTtBQWlGQTtBQWpGQTtFQUFBLGdDQWlGQTtFQWpGQTtBQWlGQTtBQWpGQTtFQUFBLHNCQWlGQTtFQWpGQTtBQWlGQTtBQWpGQTtFQUFBLDhCQWlGQTtFQWpGQTtBQWlGQTtBQWpGQTtFQUFBLDJHQWlGQTtFQWpGQSx5R0FpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxvQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxvQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSwyR0FpRkE7RUFqRkEseUdBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQSxrQkFpRkE7RUFqRkE7QUFpRkE7QUFqRkE7RUFBQTtBQWlGQTtBQWpGQTtFQUFBO0FBaUZBO0FBakZBO0VBQUEsMEJBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUEsb0JBaUZBO0VBakZBO0FBaUZBO0FBakZBO0VBQUE7QUFpRkE7QUFqRkE7O0VBQUE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQSxrQkFpRkE7SUFqRkE7RUFpRkE7O0VBakZBO0lBQUEsaUJBaUZBO0lBakZBO0VBaUZBOztFQWpGQTtJQUFBLGlCQWlGQTtJQWpGQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQTtFQWlGQTs7RUFqRkE7SUFBQSxtQkFpRkE7SUFqRkE7RUFpRkE7O0VBakZBO0lBQUEsa0JBaUZBO0lBakZBO0VBaUZBOztFQWpGQTtJQUFBLGVBaUZBO0lBakZBO0VBaUZBOztFQWpGQTtJQUFBLGtCQWlGQTtJQWpGQTtFQWlGQTtBQUFBO0FBakZBOztFQUFBO0lBQUE7RUFpRkE7O0VBakZBO0lBQUE7RUFpRkE7O0VBakZBO0lBQUE7RUFpRkE7O0VBakZBO0lBQUE7RUFpRkE7O0VBakZBO0lBQUE7RUFpRkE7O0VBakZBO0lBQUE7RUFp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QUVBO0lBQ0ksT0FBTyx5REFBeUQsRUFBRTtJQUNsRSxPQUFPLDJEQUEyRCxFQUFFO0lBQ3BFLE9BQU8seURBQXlELEVBQUU7QUFDdEU7QUFDQTtJQUNJLE9BQU8sNERBQTRELEVBQUU7SUFDckUsT0FBTyw0REFBNEQsRUFBRTtJQUNyRSxPQUFPLDREQUE0RCxFQUFFO0FBQ3pFOztBQUVBO0lBQ0k7OEJBQzBCLGVBQWUsRUFBRTtBQUMvQzs7QUFFQSwyREFBMkQ7QUFDM0QsV0FBVyxpQ0FBaUMsRUFBRTtBQUM5QztJQUNJLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLGlDQUFpQztJQUNqQyxvQkFBb0I7SUFDcEIsVUFBVTtBQUNkOztBQUVBLGlDQUFpQztBQUNqQztJQUNJLE9BQU8sNEJBQTRCLEVBQUU7SUFDckMsT0FBTyw0QkFBNEIsRUFBRTtBQUN6QztBQUNBO0lBQ0k7Ozs7bUNBSStCO0lBQy9CLDBCQUEwQjtJQUMxQiwrQ0FBK0M7QUFDbkQ7O0FBRUEsK0JBQStCO0FBQy9CO0lBQ0ksV0FBVyxVQUFVLEVBQUU7SUFDdkIsV0FBVyxXQUFXLEVBQUU7QUFDNUI7QUFDQSxZQUFZLGtEQUFrRCxFQUFFOztBQUVoRTt1RUFDdUU7QUFDdkUsbUJBQW1CLGNBQWMsRUFBRSxXQUFXLEVBQUU7QUFDaEQ7NEJBQzRCLFdBQVcsRUFBRSIsInNvdXJjZXMiOlsid2VicGFjazovL2Nsb3VkLWFnZW50cy8uL2Fzc2V0cy9zdHlsZXMvYXBwLmNzcyIsIndlYnBhY2s6Ly9jbG91ZC1hZ2VudHMvLi9hc3NldHMvdWkveG4vdG9rZW5zLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAdGFpbHdpbmQgYmFzZTtcbkB0YWlsd2luZCBjb21wb25lbnRzO1xuQHRhaWx3aW5kIHV0aWxpdGllcztcblxuQGxheWVyIGJhc2Uge1xuICAgIGh0bWwsIGJvZHkge1xuICAgICAgICBAYXBwbHkgaC1mdWxsO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgICAgQGFwcGx5IGJnLXNsYXRlLTUwIHRleHQtc2xhdGUtOTAwIGZvbnQtc2FucyBhbnRpYWxpYXNlZDtcbiAgICB9XG59XG5cbkBsYXllciBjb21wb25lbnRzIHtcbiAgICAuYnRuIHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiByb3VuZGVkLWxnIHB4LTMuNSBweS0yIHRleHQtc20gZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1jb2xvcnM7XG4gICAgfVxuICAgIC5idG4tcHJpbWFyeSB7XG4gICAgICAgIEBhcHBseSBiZy1hY2NlbnQtNjAwIHRleHQtd2hpdGUgaG92ZXI6YmctYWNjZW50LTcwMCBkaXNhYmxlZDpiZy1hY2NlbnQtMzAwO1xuICAgIH1cbiAgICAuYnRuLXNlY29uZGFyeSB7XG4gICAgICAgIEBhcHBseSBiZy13aGl0ZSB0ZXh0LXNsYXRlLTcwMCBib3JkZXIgYm9yZGVyLXNsYXRlLTIwMCBob3ZlcjpiZy1zbGF0ZS0xMDA7XG4gICAgfVxuICAgIC5idG4tZ2hvc3Qge1xuICAgICAgICBAYXBwbHkgdGV4dC1zbGF0ZS01MDAgaG92ZXI6dGV4dC1zbGF0ZS05MDAgaG92ZXI6Ymctc2xhdGUtMTAwO1xuICAgIH1cbiAgICAvKiBDdXN0b21lciBwcmltYXJ5IENUQSDigJQgdGhlIG9uZSBwbGFjZSB0aGUgYXVyb3JhIG1hZ2ljIGxpdmVzIGluIGEgYnV0dG9uLlxuICAgICAgIFVzZSBzcGFyaW5nbHkgKHNlZSBicmFuZGluZy8wNiDCpzUsIDA3IMKnMykuICovXG4gICAgLmJ0bi1hdXJvcmEge1xuICAgICAgICBAYXBwbHkgdGV4dC13aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0teG4tZ3JhZGllbnQtYXVyb3JhKTtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0teG4tc2hhZG93LWdsb3cpO1xuICAgIH1cbiAgICAuYnRuLWF1cm9yYTpob3ZlciB7XG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygxLjA4KTtcbiAgICB9XG4gICAgLyogT3BlcmF0b3Itc3VyZmFjZSBwcmltYXJ5IOKAlCBzb2xpZCBpbmssIG5ldmVyIHRoZSBhdXJvcmEgKGJyYW5kaW5nLzExIMKnNCkuICovXG4gICAgLmJ0bi1pbmsge1xuICAgICAgICBAYXBwbHkgYmctc2xhdGUtOTAwIHRleHQtd2hpdGUgaG92ZXI6Ymctc2xhdGUtODAwIGRpc2FibGVkOm9wYWNpdHktNTA7XG4gICAgfVxuICAgIC8qIE9wZXJhdG9yIFwiZWxldmF0ZWQgcmlnaHRzXCIgYWNjZW50LiAqL1xuICAgIC5idG4tYW1iZXIge1xuICAgICAgICBAYXBwbHkgYmctYW1iZXItNjAwIHRleHQtd2hpdGUgaG92ZXI6YmctYW1iZXItNTAwIGRpc2FibGVkOm9wYWNpdHktNTA7XG4gICAgfVxuICAgIC5idG4tZGFuZ2VyIHtcbiAgICAgICAgQGFwcGx5IGJnLXJvc2UtNjAwIHRleHQtd2hpdGUgaG92ZXI6Ymctcm9zZS01MDAgZGlzYWJsZWQ6Ymctcm9zZS0zMDA7XG4gICAgfVxuICAgIC5maWVsZC1sYWJlbCB7XG4gICAgICAgIEBhcHBseSBibG9jayB0ZXh0LXhzIGZvbnQtc2VtaWJvbGQgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGUgdGV4dC1zbGF0ZS01MDAgbWItMS41O1xuICAgIH1cbiAgICAuZmllbGQtaW5wdXQge1xuICAgICAgICBAYXBwbHkgdy1mdWxsIHJvdW5kZWQtbGcgYm9yZGVyIGJvcmRlci1zbGF0ZS0yMDAgYmctd2hpdGUgcHgtMyBweS0yIHRleHQtc20gdGV4dC1zbGF0ZS05MDAgcGxhY2Vob2xkZXI6dGV4dC1zbGF0ZS00MDAgZm9jdXM6Ym9yZGVyLWFjY2VudC01MDAgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnJpbmctMiBmb2N1czpyaW5nLWFjY2VudC0yMDA7XG4gICAgfVxuICAgIC5maWVsZC10ZXh0YXJlYSB7XG4gICAgICAgIEBhcHBseSBmaWVsZC1pbnB1dCBmb250LW1vbm87XG4gICAgfVxuICAgIC5maWVsZC1oZWxwIHtcbiAgICAgICAgQGFwcGx5IG10LTEgdGV4dC14cyB0ZXh0LXNsYXRlLTUwMDtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMSByb3VuZGVkLWZ1bGwgcHgtMiBweS0wLjUgdGV4dC14cyBmb250LW1lZGl1bTtcbiAgICB9XG4gICAgLmJhZGdlLWVtZXJhbGQge1xuICAgICAgICBAYXBwbHkgYmFkZ2UgYmctZW1lcmFsZC0xMDAgdGV4dC1lbWVyYWxkLTcwMDtcbiAgICB9XG4gICAgLmJhZGdlLXNsYXRlIHtcbiAgICAgICAgQGFwcGx5IGJhZGdlIGJnLXNsYXRlLTEwMCB0ZXh0LXNsYXRlLTYwMDtcbiAgICB9XG4gICAgLmJhZGdlLWFtYmVyIHtcbiAgICAgICAgQGFwcGx5IGJhZGdlIGJnLWFtYmVyLTEwMCB0ZXh0LWFtYmVyLTcwMDtcbiAgICB9XG4gICAgLmJhZGdlLXJvc2Uge1xuICAgICAgICBAYXBwbHkgYmFkZ2UgYmctcm9zZS0xMDAgdGV4dC1yb3NlLTcwMDtcbiAgICB9XG59XG5cbi8qIFNTRSBzdHJlYW1pbmcgVVggKi9cbi5zdHJlYW1pbmctY3Vyc29yOjphZnRlciB7XG4gICAgY29udGVudDogJ+KWjSc7XG4gICAgQGFwcGx5IGlubGluZS1ibG9jayBtbC0wLjUgdGV4dC1hY2NlbnQtNTAwIGFuaW1hdGUtcHVsc2Utc29mdDtcbn1cbiIsIi8qIFhlbnRybyBkZXNpZ24gc3lzdGVtIOKAlCB0b2tlbnMgJiBtYWdpYy1sYXllciB1dGlsaXRpZXNcbiAqXG4gKiBUaGUgcmVicmFuZCB0b2tlbiBzZXQgKGAtLXhuLSpgKSBkZXNjcmliZWQgaW4gYnJhbmRpbmcvMDctY29sb3Itc3lzdGVtLm1kLlxuICogVHdvIGxheWVyczogYSBjYWxtIHNsYXRlL2luZGlnbyBiYXNlIGFuZCBhIHNwYXJpbmcgXCJhdXJvcmFcIiBtYWdpYyBsYXllclxuICogdGhhdCBvbmx5IGV2ZXIgdG91Y2hlcyBBSSBtb21lbnRzIGFuZCB0aGUgcHJpbWFyeSBhY3Rpb24uXG4gKlxuICogU2NvcGVkIHRvIDpyb290IHNvIGEgZnV0dXJlIFtkYXRhLXRoZW1lPVwiZGFya1wiXSBpcyBhIG1hdHRlciBvZiBvdmVycmlkZXMuXG4gKiBMb2FkZWQgYnkgdGhlIGBhcHBgLCBgd29ya2AgYW5kIGBkZXNpZ25gIGVudHJpZXMg4oCUIGkuZS4gZXZlcnkgc3VyZmFjZS5cbiAqL1xuXG46cm9vdCB7XG4gICAgLyogYmFzZSDigJQgaW5rICYgc3VyZmFjZSAoc2xhdGUpICovXG4gICAgLS14bi1pbms6ICAgICAgICAgICMwZjE3MmE7IC8qIHNsYXRlLTkwMCAqL1xuICAgIC0teG4taW5rLXNvZnQ6ICAgICAjMzM0MTU1OyAvKiBzbGF0ZS03MDAgKi9cbiAgICAtLXhuLW11dGVkOiAgICAgICAgIzY0NzQ4YjsgLyogc2xhdGUtNTAwICovXG4gICAgLS14bi1tdXRlZC1zb2Z0OiAgICM5NGEzYjg7IC8qIHNsYXRlLTQwMCAqL1xuICAgIC0teG4tYm9yZGVyOiAgICAgICAjZTJlOGYwOyAvKiBzbGF0ZS0yMDAgKi9cbiAgICAtLXhuLWJvcmRlci1zb2Z0OiAgI2YxZjVmOTsgLyogc2xhdGUtMTAwICovXG4gICAgLS14bi1zdXJmYWNlOiAgICAgICNmZmZmZmY7XG4gICAgLS14bi1zdXJmYWNlLXNvZnQ6ICNmMWY1Zjk7IC8qIHNsYXRlLTEwMCAqL1xuICAgIC0teG4tYmc6ICAgICAgICAgICAjZjhmYWZjOyAvKiBzbGF0ZS01MCAqL1xuICAgIC0teG4tY2hyb21lOiAgICAgICAjMGYxNzJhOyAvKiBzbGF0ZS05MDAg4oCUIHRoZSBkYXJrIFRpZXIgMSB0b3BiYXIgKi9cbiAgICAtLXhuLW92ZXJsYXk6ICAgICAgcmdiKDE1IDIzIDQyIC8gLjU1KTtcblxuICAgIC8qIGFjY2VudCDigJQgaW5kaWdvICh0aGUgYnJhbmQgY29sb3VyKSAqL1xuICAgIC0teG4tYWNjZW50OiAgICAgICAjNGY0NmU1OyAvKiBpbmRpZ28tNjAwICovXG4gICAgLS14bi1hY2NlbnQtZmc6ICAgICNmZmZmZmY7XG4gICAgLS14bi1hY2NlbnQtc29mdDogICNlZWYyZmY7IC8qIGluZGlnby01MCAqL1xuICAgIC0teG4tYWNjZW50LWxpbmU6ICAjYzdkMmZlOyAvKiBpbmRpZ28tMjAwICovXG5cbiAgICAvKiBhZG1pbiBzdXJmYWNlIOKAlCB0aGUgb3BlcmF0b3Igc2tpbiAoc2VlIGJyYW5kaW5nLzExLWFkbWluLXN1cmZhY2UubWQpLlxuICAgICAqIFNhbWUgc2hlbGwsIGEgZGFya2VyIGNocm9tZSArIGFtYmVyIFwiZWxldmF0ZWQgcmlnaHRzLCBoYW5kbGUgd2l0aCBjYXJlXCJcbiAgICAgKiBhY2NlbnQuIERlbGliZXJhdGVseSB1bi1tYWdpY2FsOiB0aGUgYXVyb3JhIG5ldmVyIGFwcGVhcnMgaW4gYWRtaW4uICovXG4gICAgLS14bi1hZG1pbi1jaHJvbWU6ICAgICAgICAgIzBhMGEwYTsgLyogbmVhci1ibGFjayBUaWVyIDEgKyBmcmFtZSAqL1xuICAgIC0teG4tYWRtaW4tY2hyb21lLXNvZnQ6ICAgICMxNzE3MTc7IC8qIFRpZXIgMiBvbiBkYXJrICovXG4gICAgLS14bi1hZG1pbi1ib3JkZXI6ICAgICAgICAgIzI2MjYyNjsgLyogaGFpcmxpbmUgb24gZGFyayAqL1xuICAgIC0teG4tYWRtaW4tYWNjZW50OiAgICAgICAgICNkOTc3MDY7IC8qIGFtYmVyLTYwMCDigJQgb3BlcmF0b3Igc2lnbmFsICovXG4gICAgLS14bi1hZG1pbi1hY2NlbnQtc29mdDogICAgI2Y1OWUwYjsgLyogYW1iZXItNTAwICovXG4gICAgLS14bi1hZG1pbi1vbi1jaHJvbWU6ICAgICAgI2ZhZmFmYTtcbiAgICAtLXhuLWFkbWluLW9uLWNocm9tZS1tdXRlZDojYTNhM2EzO1xuXG4gICAgLyogc2VtYW50aWMgKi9cbiAgICAtLXhuLXJ1bm5pbmc6ICAgICAgIzEwYjk4MTsgLyogZW1lcmFsZC01MDAgKi9cbiAgICAtLXhuLXJ1bm5pbmctc29mdDogI2QxZmFlNTtcbiAgICAtLXhuLXN1Y2Nlc3M6ICAgICAgIzEwYjk4MTtcbiAgICAtLXhuLXdhcm46ICAgICAgICAgI2Y1OWUwYjsgLyogYW1iZXItNTAwICovXG4gICAgLS14bi13YXJuLXNvZnQ6ICAgICNmZWYzYzc7XG4gICAgLS14bi1kYW5nZXI6ICAgICAgICNlMTFkNDg7IC8qIHJvc2UtNjAwICovXG4gICAgLS14bi1kYW5nZXItc29mdDogICNmZmU0ZTY7XG5cbiAgICAvKiBtYWdpYyDigJQgdGhlIGF1cm9yYSBncmFkaWVudCAoc3BhcmluZyEpICovXG4gICAgLS14bi1ncmFkaWVudC1hdXJvcmE6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsICM0ZjQ2ZTUgMCUsICM3YzNhZWQgNTAlLCAjZDk0NmVmIDEwMCUpO1xuICAgIC0teG4tZ3JhZGllbnQtYXVyb3JhLWNvb2w6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsICM0ZjQ2ZTUgMCUsICM3YzNhZWQgNDUlLCAjMjJkM2VlIDEwMCUpO1xuICAgIC0teG4tZ2xvdy1hdXJvcmE6IHJhZGlhbC1ncmFkaWVudChcbiAgICAgICAgNjAlIDYwJSBhdCA1MCUgNDAlLFxuICAgICAgICByZ2IoMTI0IDU4IDIzNyAvIC4yOCkgMCUsXG4gICAgICAgIHJnYig3OSA3MCAyMjkgLyAuMTQpIDQ1JSxcbiAgICAgICAgdHJhbnNwYXJlbnQgNzUlKTtcbiAgICAtLXhuLXNoYWRvdy1nbG93OiAwIDZweCAyMHB4IC00cHggcmdiKDEyNCA1OCAyMzcgLyAuNDUpLCAwIDJweCA2cHggLTJweCByZ2IoNzkgNzAgMjI5IC8gLjM1KTtcblxuICAgIC8qIGF1cm9yYSBmaWVsZCDigJQgYW5pbWF0ZWQsIHN1cGVyLXN1YnRsZSBsaWdodCBoZXJvIGJhY2tncm91bmQuXG4gICAgICogQSB3aGl0ZSBzdXJmYWNlIHdpdGggdGhyZWUgc2xvdy1kcmlmdGluZyBibHVycnkgZ2xvd3MuIEFscGhhcyBhcmUga2VwdFxuICAgICAqIGludGVudGlvbmFsbHkgbG93IHNvIHRleHQgc3RheXMgZXhhY3RseSBhcyByZWFkYWJsZSBhcyBvbiBwbGFpbiB3aGl0ZS5cbiAgICAgKiBFZGl0aW9ucyBjYW4gcmV0dW5lIHRoZSBodWUvc3RyZW5ndGggYnkgb3ZlcnJpZGluZyB0aGVzZSB0aHJlZSB2YXJzLiAqL1xuICAgIC0teG4tYXVyb3JhLWZpZWxkLWJnOiAjZmZmZmZmO1xuICAgIC0teG4tYXVyb3JhLWZpZWxkLTE6ICByZ2IoNzkgNzAgMjI5IC8gLjE4KTsgICAvKiBpbmRpZ28gICovXG4gICAgLS14bi1hdXJvcmEtZmllbGQtMjogIHJnYigyMTcgNzAgMjM5IC8gLjE1KTsgIC8qIGZ1Y2hzaWEgKi9cbiAgICAtLXhuLWF1cm9yYS1maWVsZC0zOiAgcmdiKDM0IDIxMSAyMzggLyAuMTUpOyAgLyogY3lhbiAgICAqL1xuICAgIC0teG4tYXVyb3JhLWZpZWxkLXNwZWVkOiAxOHM7XG5cbiAgICAvKiB0eXBlICovXG4gICAgLS14bi1mb250LXNhbnM6ICdTcGFjZSBHcm90ZXNrJywgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBzYW5zLXNlcmlmO1xuICAgIC0teG4tZm9udC1tb25vOiAnSmV0QnJhaW5zIE1vbm8nLCB1aS1tb25vc3BhY2UsIG1vbm9zcGFjZTtcblxuICAgIC8qIHNoYXBlICovXG4gICAgLS14bi1yYWRpdXMtc206IDAuMjVyZW07XG4gICAgLS14bi1yYWRpdXM6ICAgIDAuNXJlbTtcbiAgICAtLXhuLXJhZGl1cy1sZzogMC43NXJlbTtcblxuICAgIC8qIHNoYWRvdyAoY2FsbTsgZmxvYXRpbmcgZWxlbWVudHMgb25seSkgKi9cbiAgICAtLXhuLXNoYWRvdy1zbTogMCAxcHggMnB4IHJnYigxNSAyMyA0MiAvIDAuMDUpO1xuICAgIC0teG4tc2hhZG93OiAgICAwIDRweCAxMnB4IHJnYigxNSAyMyA0MiAvIDAuMDgpO1xuICAgIC0teG4tc2hhZG93LWxnOiAwIDEwcHggMzBweCByZ2IoMTUgMjMgNDIgLyAwLjEyKTtcbn1cblxuLyogLS0tLSBtYWdpYy1sYXllciB1dGlsaXR5IGNsYXNzZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gKiBDb21wb25lbnRzIG9wdCBpbnRvIHRoZXNlIGluc3RlYWQgb2YgcmVhY2hpbmcgZm9yIGFkLWhvYyBncmFkaWVudHMsIHNvXG4gKiB0aGUgYXVyb3JhIHN0YXlzIGNvbnNpc3RlbnQgYW5kIHJhcmUuICovXG5cbi54bi1hdXJvcmEgICAgICB7IGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLXhuLWdyYWRpZW50LWF1cm9yYSk7IH1cbi54bi1hdXJvcmEtY29vbCB7IGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLXhuLWdyYWRpZW50LWF1cm9yYS1jb29sKTsgfVxuXG4vKiBvbmUgYWNjZW50ZWQgd29yZCBpbiBhIGhlYWRpbmcg4oCUIHRleHQtY2xpcHBlZCBncmFkaWVudCAqL1xuLnhuLWF1cm9yYS10ZXh0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS14bi1ncmFkaWVudC1hdXJvcmEpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIC0tLS0gYXVyb3JhIGZpZWxkIOKAlCBhbmltYXRlZCBsaWdodCBoZXJvIGJhY2tncm91bmQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEEgZHJvcC1pbiBiYWNrZ3JvdW5kIGxheWVyIGZvciBsYXJnZSBoZXJvIGFyZWFzOiBtb3N0bHkgd2hpdGUsIHdpdGggYSBmZXdcbiAqIGhlYXZpbHktYmx1cnJlZCBhdXJvcmEgYmxvYnMgdGhhdCB2aXNpYmx5IGRyaWZ0LCByb3RhdGUgYW5kIHNjYWxlIGFjcm9zc1xuICogdGhlIHN1cmZhY2UuIEFJLWluc3BpcmVkIGFuZCBmdXR1cmlzdGljIOKAlCBjbGVhcmx5IGFsaXZlLCB5ZXQgc29mdCBlbm91Z2hcbiAqIHRoYXQgdGV4dCByZWFkcyBhcyBjbGVhcmx5IGFzIG9uIHdoaXRlLlxuICpcbiAqIEJ1aWx0IGZyb20gdHdvIHBzZXVkby1lbGVtZW50IGxheWVycyAobm8gZXh0cmEgRE9NKTogZWFjaCBjYXJyaWVzIGEgY291cGxlXG4gKiBvZiBjb25jZW50cmF0ZWQgcmFkaWFsLWdyYWRpZW50IGJsb2JzLCBzaXplZCBsYXJnZXIgdGhhbiB0aGUgYm94IGFuZCBtb3ZlZFxuICogd2l0aCBgdHJhbnNmb3JtYCAodHJhbnNsYXRlICsgcm90YXRlICsgc2NhbGUpIHNvIHRoZSBtb3Rpb24gaXMgb2J2aW91c1xuICogd2hpbGUgdGhlIGJsdXIga2VlcHMgaXQgZHJlYW15LiBFdmVyeXRoaW5nIG91dHNpZGUgdGhlIGJsb2JzIGlzIHRyYW5zcGFyZW50LFxuICogc28gdGhlIHdoaXRlIGJhY2tncm91bmQgc2hvd3MgdGhyb3VnaCBhbmQgdGhlIGZpZWxkIHN0YXlzIHByZWRvbWluYW50bHkgd2hpdGUuXG4gKlxuICogU2VsZi1jb250YWluZWQgKGFic29sdXRlLCBmdWxsLWJsZWVkLCBiZWhpbmQgc2libGluZ3MgdmlhIG5lZ2F0aXZlIHotaW5kZXgpLlxuICogR2l2ZSB0aGUgcGFyZW50IGl0cyBvd24gc3RhY2tpbmcgY29udGV4dCB3aXRoIGBpc29sYXRlYCBzbyB0aGUgZmllbGQgc3RheXNcbiAqIHB1dCBiZWhpbmQgdGhlIHNlY3Rpb24ncyBjb250ZW50ICh3aXRob3V0IGl0LCB0aGUgbmVnYXRpdmUgei1pbmRleCBzbGlwc1xuICogYmVoaW5kIHRoZSBwYWdlIGJhY2tncm91bmQgYW5kIHRoZSBmaWVsZCB2YW5pc2hlcykuIERyb3AgaXQgYXMgZmlyc3QgY2hpbGQ6XG4gKlxuICogICA8c2VjdGlvbiBjbGFzcz1cInJlbGF0aXZlIGlzb2xhdGUgb3ZlcmZsb3ctaGlkZGVuXCI+XG4gKiAgICAgPGRpdiBjbGFzcz1cInhuLWF1cm9yYS1maWVsZFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZGl2PlxuICogICAgIOKApiBoZXJvIGNvbnRlbnQgKHJlbmRlcnMgYWJvdmUgdGhlIGZpZWxkKSDigKZcbiAqICAgPC9zZWN0aW9uPlxuICpcbiAqIFZhcmlhbnRzOiBgLS1jb29sYCAoY3lhbi1sZWFuaW5nKSwgYC0tc3Ryb25nYCAoYSB0b3VjaCBtb3JlIHByZXNlbmNlKS5cbiAqIEhvbm9ycyBwcmVmZXJzLXJlZHVjZWQtbW90aW9uIGJ5IGhvbGRpbmcgYSBzdGlsbCBmcmFtZS4gKi9cbi54bi1hdXJvcmEtZmllbGQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS14bi1hdXJvcmEtZmllbGQtYmcpO1xufVxuLnhuLWF1cm9yYS1maWVsZDo6YmVmb3JlLFxuLnhuLWF1cm9yYS1maWVsZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvKiBvdmVyc2l6ZSB0aGUgbGF5ZXIgc28gcm90YXRpb24vc2NhbGUgbmV2ZXIgcmV2ZWFscyBhIGhhcmQgZWRnZSAqL1xuICAgIGluc2V0OiAtNDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLyogdGhlIFwic3VwZXIgYmx1cnJ5XCIgYXVyb3JhIGxvb2sgKi9cbiAgICBmaWx0ZXI6IGJsdXIoNzJweCk7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cbi54bi1hdXJvcmEtZmllbGQ6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTpcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KDI4JSAyOCUgYXQgMjglIDMyJSwgdmFyKC0teG4tYXVyb3JhLWZpZWxkLTEpLCB0cmFuc3BhcmVudCA2MiUpLFxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoMjYlIDI2JSBhdCA3MiUgNjQlLCB2YXIoLS14bi1hdXJvcmEtZmllbGQtMiksIHRyYW5zcGFyZW50IDYyJSk7XG4gICAgYW5pbWF0aW9uOiB4bi1hdXJvcmEtZHJpZnQtYSB2YXIoLS14bi1hdXJvcmEtZmllbGQtc3BlZWQpIGxpbmVhciBpbmZpbml0ZTtcbn1cbi54bi1hdXJvcmEtZmllbGQ6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICByYWRpYWwtZ3JhZGllbnQoMzAlIDMwJSBhdCA2NCUgMjglLCB2YXIoLS14bi1hdXJvcmEtZmllbGQtMyksIHRyYW5zcGFyZW50IDYyJSksXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCgyNCUgMjQlIGF0IDMyJSA3NCUsIHZhcigtLXhuLWF1cm9yYS1maWVsZC0xKSwgdHJhbnNwYXJlbnQgNjIlKTtcbiAgICBhbmltYXRpb246IHhuLWF1cm9yYS1kcmlmdC1iIGNhbGModmFyKC0teG4tYXVyb3JhLWZpZWxkLXNwZWVkKSAqIDEuMzUpIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLyogY3lhbi1sZWFuaW5nIG1peCDigJQgcGFpcnMgd2l0aCAueG4tYXVyb3JhLWNvb2wgc3VyZmFjZXMgKi9cbi54bi1hdXJvcmEtZmllbGQtLWNvb2wge1xuICAgIC0teG4tYXVyb3JhLWZpZWxkLTE6IHJnYig3OSA3MCAyMjkgLyAuMTcpO1xuICAgIC0teG4tYXVyb3JhLWZpZWxkLTI6IHJnYigzNCAyMTEgMjM4IC8gLjE3KTtcbiAgICAtLXhuLWF1cm9yYS1maWVsZC0zOiByZ2IoNDUgMjEyIDE5MSAvIC4xNSk7XG59XG5cbi8qIGEgdG91Y2ggbW9yZSBwcmVzZW5jZSDigJQgc3RpbGwgc3VidGxlLCBmb3IgdGhlIGZyb250LXBhZ2UgaGVybyAqL1xuLnhuLWF1cm9yYS1maWVsZC0tc3Ryb25nIHtcbiAgICAtLXhuLWF1cm9yYS1maWVsZC0xOiByZ2IoNzkgNzAgMjI5IC8gLjI0KTtcbiAgICAtLXhuLWF1cm9yYS1maWVsZC0yOiByZ2IoMjE3IDcwIDIzOSAvIC4yMCk7XG4gICAgLS14bi1hdXJvcmEtZmllbGQtMzogcmdiKDM0IDIxMSAyMzggLyAuMjApO1xufVxuXG5Aa2V5ZnJhbWVzIHhuLWF1cm9yYS1kcmlmdC1hIHtcbiAgICAwJSAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgICAgICAgIHJvdGF0ZSgwZGVnKSAgIHNjYWxlKDEpOyB9XG4gICAgNTAlICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDclLCA5JSkgICAgICByb3RhdGUoMTgwZGVnKSBzY2FsZSgxLjIpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApICAgICAgICByb3RhdGUoMzYwZGVnKSBzY2FsZSgxKTsgfVxufVxuQGtleWZyYW1lcyB4bi1hdXJvcmEtZHJpZnQtYiB7XG4gICAgMCUgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApICAgICAgICByb3RhdGUoMGRlZykgICAgc2NhbGUoMS4xKTsgfVxuICAgIDUwJSAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtOSUsIC03JSkgICAgcm90YXRlKC0xODBkZWcpIHNjYWxlKDEuMyk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgICAgICAgIHJvdGF0ZSgtMzYwZGVnKSBzY2FsZSgxLjEpOyB9XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnhuLWF1cm9yYS1maWVsZDo6YmVmb3JlLFxuICAgIC54bi1hdXJvcmEtZmllbGQ6OmFmdGVyIHsgYW5pbWF0aW9uOiBub25lOyB9XG59XG5cbi8qIHNvZnQgYXVyb3JhIGdsb3cgYmVoaW5kIGFnZW50IGF2YXRhcnMgLyBmZWF0dXJlZCBjYXJkcyAqL1xuLnhuLWdsb3cgeyBib3gtc2hhZG93OiB2YXIoLS14bi1zaGFkb3ctZ2xvdyk7IH1cbi54bi1nbG93LXJhZGlhbDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IC00MCU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0teG4tZ2xvdy1hdXJvcmEpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDA7XG59XG5cbi8qIHRoaW5raW5nIC8gc3RyZWFtaW5nIHNoaW1tZXIgKi9cbkBrZXlmcmFtZXMgeG4tc2hpbW1lciB7XG4gICAgMCUgICB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNTAlIDA7IH1cbiAgICAxMDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogIDI1MCUgMDsgfVxufVxuLnhuLXNoaW1tZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgMTAwZGVnLFxuICAgICAgICByZ2IoMTQ4IDE2MyAxODQgLyAuMTUpIDMwJSxcbiAgICAgICAgcmdiKDEyNCA1OCAyMzcgLyAuMzUpIDUwJSxcbiAgICAgICAgcmdiKDE0OCAxNjMgMTg0IC8gLjE1KSA3MCUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjAwJSAxMDAlO1xuICAgIGFuaW1hdGlvbjogeG4tc2hpbW1lciAxLjhzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG4vKiBnZW50bGUgcHVsc2UgZm9yIGxpdmUgZG90cyAqL1xuQGtleWZyYW1lcyB4bi1wdWxzZS1zb2Z0IHtcbiAgICAwJSwgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbiAgICA1MCUgICAgICB7IG9wYWNpdHk6IC40OyB9XG59XG4ueG4tcHVsc2UgeyBhbmltYXRpb246IHhuLXB1bHNlLXNvZnQgMS42cyBlYXNlLWluLW91dCBpbmZpbml0ZTsgfVxuXG4vKiBmdWxsLXdpZHRoIGJ1dHRvbnMg4oCUIHhuLWJ1dHRvbiBpcyBsaWdodC1ET00sIHNvIHN0cmV0Y2ggdGhlIGhvc3QgKyBpdHNcbiAqIGlubmVyIGNvbnRyb2wgd2hlbiBbYmxvY2tdIGlzIHNldCAodXNlZCBmb3IgcmFpbCAvIGNvbXBvc2VyIENUQXMpLiAqL1xueG4tYnV0dG9uW2Jsb2NrXSB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgfVxueG4tYnV0dG9uW2Jsb2NrXSA+IGEsXG54bi1idXR0b25bYmxvY2tdID4gYnV0dG9uIHsgd2lkdGg6IDEwMCU7IH1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/