@aristobyte-ui/button 1.0.8 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +94 -0
- package/dist/index.js +23 -59
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +23 -61
- package/dist/index.mjs.map +1 -1
- package/package.json +39 -1
package/README.md
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# @aristobyte-ui/button
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="https://img.shields.io/badge/TypeScript-5.8-blue?style=for-the-badge&logo=typescript&logoColor=white" alt="TypeScript" />
|
|
5
|
+
<img src="https://img.shields.io/badge/Build-Turbo-green?style=for-the-badge&logo=turbo&logoColor=white" alt="TurboRepo" />
|
|
6
|
+
<img src="https://img.shields.io/badge/Lint-Strict-red?style=for-the-badge&logo=eslint&logoColor=white" alt="ESLint" />
|
|
7
|
+
<img src="https://img.shields.io/badge/License-MIT-black?style=for-the-badge&logo=open-source-initiative&logoColor=white" alt="License" />
|
|
8
|
+
<img src="https://img.shields.io/badge/AristoByte-UI-purple?style=for-the-badge&logo=react&logoColor=white" alt="AristoByte UI" />
|
|
9
|
+
<img src="https://img.shields.io/badge/Node-20.17.0+-339933?style=for-the-badge&logo=node.js&logoColor=white" alt="Node.js >=20.17.0" />
|
|
10
|
+
<img src="https://img.shields.io/badge/Yarn-1.22+-2C8EBB?style=for-the-badge&logo=yarn&logoColor=white" alt="Yarn >=1.22" />
|
|
11
|
+
<img src="https://img.shields.io/badge/NPM-10.8+-CB3837?style=for-the-badge&logo=npm&logoColor=white" alt="NPM >=10.8" />
|
|
12
|
+
</p>
|
|
13
|
+
|
|
14
|
+
Fully-featured, modular Button components for AristoByteUI with ripple effects, composable groups, variants, appearances, sizes, radius options, icons, and loading states.
|
|
15
|
+
|
|
16
|
+
## 📦 Installation
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
# Install via Yarn
|
|
20
|
+
yarn add -D @aristobyte-ui/button
|
|
21
|
+
|
|
22
|
+
# Or via npm
|
|
23
|
+
npm install -D @aristobyte-ui/button
|
|
24
|
+
|
|
25
|
+
# Or via pnpm
|
|
26
|
+
pnpm add -D @aristobyte-ui/button
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## 🛠 Usage
|
|
30
|
+
|
|
31
|
+
```tsx
|
|
32
|
+
import { Button, ButtonGroup } from "@aristobyte-ui/button";
|
|
33
|
+
import { IconSample } from "@aristobyte-ui/icons";
|
|
34
|
+
|
|
35
|
+
<Button variant="primary" appearance="solid" size="md" radius="md" icon={{ component: IconSample, align: "left" }}>
|
|
36
|
+
Click Me
|
|
37
|
+
</Button>
|
|
38
|
+
|
|
39
|
+
<ButtonGroup variant="secondary" size="md" align="horizontal">
|
|
40
|
+
<Button>One</Button>
|
|
41
|
+
<Button>Two</Button>
|
|
42
|
+
<Button>Three</Button>
|
|
43
|
+
</ButtonGroup>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## 📂 Presets Available
|
|
47
|
+
|
|
48
|
+
- **Button Variants**: `default`, `primary`, `secondary`, `success`, `error`, `warning`
|
|
49
|
+
- **Button Appearances**: `solid`, `outline`,`outline-dashed`, `no-outline`, `glowing`
|
|
50
|
+
- **Button Sizes**: `xsm`, `sm`, `md`, `lg`, `xlg`
|
|
51
|
+
- **Button Radius**: `none`, `sm`, `md`, `lg`, `full`
|
|
52
|
+
- **ButtonGroup Alignment**: `horizontal`, `vertical`
|
|
53
|
+
|
|
54
|
+
## 🔧 Example in a Package
|
|
55
|
+
|
|
56
|
+
```tsx
|
|
57
|
+
<Button variant="success" appearance="glowing" size="lg" radius="full" isLoading spinnerType="duo">
|
|
58
|
+
Submit
|
|
59
|
+
</Button>
|
|
60
|
+
|
|
61
|
+
<ButtonGroup variant="primary" size="sm" align="vertical">
|
|
62
|
+
<Button>Save</Button>
|
|
63
|
+
<Button>Cancel</Button>
|
|
64
|
+
</ButtonGroup>
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## 📊 Why This Matters
|
|
68
|
+
|
|
69
|
+
- **Performance-first:** Lightweight CSS ensures fast rendering and smooth transitions.
|
|
70
|
+
- **Fully typed:** TypeScript-first API ensures predictable usage and IDE autocomplete.
|
|
71
|
+
- **AristoByteUI ready:** Seamlessly integrates with design tokens and SCSS modules.
|
|
72
|
+
- **Flexible:** Supports multiple variants, appearances, sizes, radius options, icons, ripple-enabled interactive feedback, and composable groups.
|
|
73
|
+
|
|
74
|
+
## 🏆 Philosophy
|
|
75
|
+
|
|
76
|
+
- **Modular architecture:** Button and ButtonGroup components are fully composable.
|
|
77
|
+
- **Declarative styling:** SCSS modules keep styles maintainable and scoped.
|
|
78
|
+
- **Strict typing & runtime flexibility:** Props fully typed while allowing runtime overrides.
|
|
79
|
+
- **Developer experience optimized:** Easy to use with predictable behavior and minimal boilerplate.
|
|
80
|
+
|
|
81
|
+
## 📜 License
|
|
82
|
+
|
|
83
|
+
[MIT](./LICENSE) © AristoByte
|
|
84
|
+
|
|
85
|
+
## 🛡 Shields Showcase
|
|
86
|
+
|
|
87
|
+
<p align="center">
|
|
88
|
+
<img src="https://img.shields.io/badge/Consistency-100%25-green?style=for-the-badge&logo=typescript" />
|
|
89
|
+
<img src="https://img.shields.io/badge/Maintained-Active-brightgreen?style=for-the-badge&logo=github" />
|
|
90
|
+
<img src="https://img.shields.io/badge/Strictness-High-critical?style=for-the-badge&logo=eslint" />
|
|
91
|
+
<img src="https://img.shields.io/badge/Declarations-Enabled-blue?style=for-the-badge&logo=typescript" />
|
|
92
|
+
<img src="https://img.shields.io/badge/Monorepo-Turbo-green?style=for-the-badge&logo=monorepo" />
|
|
93
|
+
<img src="https://img.shields.io/badge/Interop-ESM%2FCJS-orange?style=for-the-badge&logo=javascript" />
|
|
94
|
+
</p>
|
package/dist/index.js
CHANGED
|
@@ -1,36 +1,11 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
"use strict";
|
|
2
3
|
var __create = Object.create;
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
4
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
7
7
|
var __getProtoOf = Object.getPrototypeOf;
|
|
8
8
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
10
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
-
var __spreadValues = (a, b) => {
|
|
12
|
-
for (var prop in b || (b = {}))
|
|
13
|
-
if (__hasOwnProp.call(b, prop))
|
|
14
|
-
__defNormalProp(a, prop, b[prop]);
|
|
15
|
-
if (__getOwnPropSymbols)
|
|
16
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
17
|
-
if (__propIsEnum.call(b, prop))
|
|
18
|
-
__defNormalProp(a, prop, b[prop]);
|
|
19
|
-
}
|
|
20
|
-
return a;
|
|
21
|
-
};
|
|
22
|
-
var __objRest = (source, exclude) => {
|
|
23
|
-
var target = {};
|
|
24
|
-
for (var prop in source)
|
|
25
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
26
|
-
target[prop] = source[prop];
|
|
27
|
-
if (source != null && __getOwnPropSymbols)
|
|
28
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
29
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
30
|
-
target[prop] = source[prop];
|
|
31
|
-
}
|
|
32
|
-
return target;
|
|
33
|
-
};
|
|
34
9
|
var __export = (target, all) => {
|
|
35
10
|
for (var name in all)
|
|
36
11
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -113,34 +88,21 @@ var Button_module_default = {};
|
|
|
113
88
|
|
|
114
89
|
// components/Button/index.tsx
|
|
115
90
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
116
|
-
var Button = (
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
"onClick",
|
|
132
|
-
"children",
|
|
133
|
-
"variant",
|
|
134
|
-
"appearance",
|
|
135
|
-
"size",
|
|
136
|
-
"radius",
|
|
137
|
-
"icon",
|
|
138
|
-
"spinnerType",
|
|
139
|
-
"isLoading",
|
|
140
|
-
"disabled",
|
|
141
|
-
"className",
|
|
142
|
-
"dangerouslySetInnerHTML"
|
|
143
|
-
]);
|
|
91
|
+
var Button = ({
|
|
92
|
+
onClick,
|
|
93
|
+
children,
|
|
94
|
+
variant = "default",
|
|
95
|
+
appearance = "solid",
|
|
96
|
+
size = "md",
|
|
97
|
+
radius = "md",
|
|
98
|
+
icon,
|
|
99
|
+
spinnerType = "default",
|
|
100
|
+
isLoading = false,
|
|
101
|
+
disabled,
|
|
102
|
+
className = "",
|
|
103
|
+
dangerouslySetInnerHTML,
|
|
104
|
+
...restProps
|
|
105
|
+
}) => {
|
|
144
106
|
const ref = React.useRef(null);
|
|
145
107
|
const handleClick = (e) => {
|
|
146
108
|
const { clientX, clientY } = e;
|
|
@@ -150,7 +112,7 @@ var Button = (_a) => {
|
|
|
150
112
|
}
|
|
151
113
|
};
|
|
152
114
|
const Children2 = () => {
|
|
153
|
-
var
|
|
115
|
+
var _a;
|
|
154
116
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
|
|
155
117
|
isLoading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
156
118
|
import_spinner.Spinner,
|
|
@@ -164,7 +126,7 @@ var Button = (_a) => {
|
|
|
164
126
|
icon && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
165
127
|
"span",
|
|
166
128
|
{
|
|
167
|
-
className: `${Button_module_default["icon"]} ${Button_module_default[`icon--${(
|
|
129
|
+
className: `${Button_module_default["icon"]} ${Button_module_default[`icon--${(_a = icon.align) != null ? _a : "left"}`]}`,
|
|
168
130
|
children: React.createElement(icon.component)
|
|
169
131
|
}
|
|
170
132
|
),
|
|
@@ -173,12 +135,14 @@ var Button = (_a) => {
|
|
|
173
135
|
};
|
|
174
136
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
175
137
|
"button",
|
|
176
|
-
|
|
138
|
+
{
|
|
177
139
|
ref,
|
|
178
140
|
disabled: disabled || isLoading,
|
|
179
141
|
className: `${Button_module_default["button"]} ${Button_module_default[`button-variant--${variant}`]} ${Button_module_default[`button-appearance--${appearance}`]} ${Button_module_default[`button-size--${size}`]} ${Button_module_default[`button-radius--${radius}`]} ${isLoading ? Button_module_default["button--loading"] : ""} ${className}`,
|
|
180
|
-
onClick: handleClick
|
|
181
|
-
|
|
142
|
+
onClick: handleClick,
|
|
143
|
+
...dangerouslySetInnerHTML ? { dangerouslySetInnerHTML } : { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Children2, {}) },
|
|
144
|
+
...restProps
|
|
145
|
+
}
|
|
182
146
|
);
|
|
183
147
|
};
|
|
184
148
|
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../index.ts","../components/Button/index.tsx","../utils/ripple.tsx","../components/Button/Button.module.scss","../components/ButtonGroup/index.tsx","../components/ButtonGroup/ButtonGroup.module.scss"],"sourcesContent":["export { Button, ButtonGroup } from \"./components\";\n","\"use client\";\n\nimport * as React from \"react\";\nimport { Spinner } from \"@aristobyte-ui/spinner\";\n\nimport { renderRipple } from \"../../utils\";\n\nimport styles from \"./Button.module.scss\";\n\nexport interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n appearance?:\n | \"solid\"\n | \"outline\"\n | \"outline-dashed\"\n | \"no-outline\"\n | \"glowing\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n icon?: {\n component: React.ElementType;\n align?: \"left\" | \"right\";\n };\n isLoading?: boolean;\n spinnerType?: \"default\" | \"duo\" | \"gradient\" | \"pulse\" | \"pulse-duo\";\n}\n\nexport const Button: React.FC<IButton> = ({\n onClick,\n children,\n variant = \"default\",\n appearance = \"solid\",\n size = \"md\",\n radius = \"md\",\n icon,\n spinnerType = \"default\",\n isLoading = false,\n disabled,\n className = \"\",\n dangerouslySetInnerHTML,\n ...restProps\n}) => {\n const ref = React.useRef<HTMLButtonElement>(null);\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n const { clientX, clientY } = e;\n renderRipple<HTMLButtonElement>({ ref, clientX, clientY });\n if (onClick) {\n onClick(e);\n }\n };\n\n const Children = () => (\n <>\n {isLoading && (\n <Spinner\n size={size}\n variant={variant}\n type={spinnerType}\n className={styles[\"spinner\"]}\n />\n )}\n {icon && (\n <span\n className={`${styles[\"icon\"]} ${styles[`icon--${icon.align ?? \"left\"}`]}`}\n >\n {React.createElement(icon.component)}\n </span>\n )}\n {children}\n </>\n );\n\n return (\n <button\n ref={ref}\n disabled={disabled || isLoading}\n className={`${styles[\"button\"]} ${styles[`button-variant--${variant}`]} ${styles[`button-appearance--${appearance}`]} ${styles[`button-size--${size}`]} ${styles[`button-radius--${radius}`]} ${isLoading ? styles[\"button--loading\"] : \"\"} ${className}`}\n onClick={handleClick}\n {...(dangerouslySetInnerHTML\n ? { dangerouslySetInnerHTML }\n : { children: <Children /> })}\n {...restProps}\n />\n );\n};\n","type RippleParamsRef = HTMLButtonElement | HTMLAnchorElement;\n\nexport type RippleParams<HTMLElementType extends RippleParamsRef> = {\n ref: React.RefObject<HTMLElementType | null>;\n clientX: number;\n clientY: number;\n};\n\nexport const renderRipple = <HTMLElementType extends RippleParamsRef>({\n ref,\n clientX,\n clientY,\n}: RippleParams<HTMLElementType>) => {\n const button = ref.current;\n if (!button) return;\n\n const circle = document.createElement(\"span\");\n const diameter = Math.max(button.clientWidth, button.clientHeight);\n const radius = diameter / 2;\n\n circle.id = \"ripple\";\n\n const style = document.createElement(\"style\");\n style.innerHTML = `\n #ripple {\n animation: ripple 300ms linear;\n background-color: rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n height: ${diameter}px;\n left: ${clientX - button.getBoundingClientRect().left - radius}px;\n pointer-events: none;\n position: absolute;\n top: ${clientY - button.getBoundingClientRect().top - radius}px;\n transform: scale(0);\n width: ${diameter}px;\n z-index: 0;\n }\n \n @keyframes ripple {\n to {\n opacity: 0;\n transform: scale(2);\n }\n }\n `;\n\n button.appendChild(style);\n button.appendChild(circle);\n\n circle.addEventListener(\"animationend\", () => {\n circle.remove();\n style.remove();\n });\n};\n",".button {\n align-items: center;\n border: none;\n cursor: pointer;\n display: flex;\n font-weight: 500;\n gap: 10px;\n letter-spacing: 0rem;\n line-height: 1.42;\n overflow: hidden;\n position: relative;\n transition: background-color 200ms ease, transform 300ms ease;\n}\n.button:disabled {\n cursor: not-allowed;\n opacity: 1;\n}\n.button:active {\n transform: scale(0.97);\n}\n.button-variant--default.button-appearance--solid {\n background-color: #1f2937;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--solid:hover {\n background-color: #111827;\n}\n.button-variant--default.button-appearance--solid:disabled {\n background-color: rgba(31, 41, 55, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline-dashed:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--no-outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--glowing {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(31, 41, 55, 0.5), 0 0 16px rgba(31, 41, 55, 0.4), 0 0 24px rgba(31, 41, 55, 0.3);\n}\n.button-variant--default.button-appearance--glowing:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--glowing:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid {\n background-color: #2563eb;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid:hover {\n background-color: #1d4ed8;\n}\n.button-variant--primary.button-appearance--solid:disabled {\n background-color: rgba(37, 99, 235, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--no-outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--glowing {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(37, 99, 235, 0.5), 0 0 16px rgba(37, 99, 235, 0.4), 0 0 24px rgba(37, 99, 235, 0.3);\n}\n.button-variant--primary.button-appearance--glowing:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--glowing:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid {\n background-color: #4f46e5;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid:hover {\n background-color: #4338ca;\n}\n.button-variant--secondary.button-appearance--solid:disabled {\n background-color: rgba(79, 70, 229, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--no-outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--glowing {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(79, 70, 229, 0.5), 0 0 16px rgba(79, 70, 229, 0.4), 0 0 24px rgba(79, 70, 229, 0.3);\n}\n.button-variant--secondary.button-appearance--glowing:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--glowing:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid {\n background-color: #16a34a;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid:hover {\n background-color: #15803d;\n}\n.button-variant--success.button-appearance--solid:disabled {\n background-color: rgba(22, 163, 74, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline-dashed:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--no-outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--glowing {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(22, 163, 74, 0.5), 0 0 16px rgba(22, 163, 74, 0.4), 0 0 24px rgba(22, 163, 74, 0.3);\n}\n.button-variant--success.button-appearance--glowing:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--glowing:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid {\n background-color: #dc2626;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid:hover {\n background-color: #b91c1c;\n}\n.button-variant--error.button-appearance--solid:disabled {\n background-color: rgba(220, 38, 38, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline-dashed:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--no-outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--glowing {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(220, 38, 38, 0.5), 0 0 16px rgba(220, 38, 38, 0.4), 0 0 24px rgba(220, 38, 38, 0.3);\n}\n.button-variant--error.button-appearance--glowing:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--glowing:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid {\n background-color: #d97706;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid:hover {\n background-color: #b45309;\n}\n.button-variant--warning.button-appearance--solid:disabled {\n background-color: rgba(217, 119, 6, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--no-outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--glowing {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(217, 119, 6, 0.5), 0 0 16px rgba(217, 119, 6, 0.4), 0 0 24px rgba(217, 119, 6, 0.3);\n}\n.button-variant--warning.button-appearance--glowing:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--glowing:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-size--xsm {\n font-size: 0.75rem;\n line-height: 1rem;\n padding: 0.25rem 0.5rem;\n min-height: 28px;\n}\n.button-size--xsm .spinner,\n.button-size--xsm .icon {\n max-height: 1rem;\n max-width: 1rem;\n}\n.button-size--sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n padding: 0.375rem 0.75rem;\n min-height: 32px;\n}\n.button-size--sm .spinner,\n.button-size--sm .icon {\n max-height: 1.125rem;\n max-width: 1.125rem;\n}\n.button-size--md {\n font-size: 1rem;\n line-height: 1.5rem;\n padding: 0.5rem 1rem;\n min-height: 40px;\n}\n.button-size--md .spinner,\n.button-size--md .icon {\n height: 1.25rem;\n width: 1.25rem;\n}\n.button-size--lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n padding: 0.625rem 1.25rem;\n min-height: 44px;\n}\n.button-size--lg .spinner,\n.button-size--lg .icon {\n max-height: 1.375rem;\n max-width: 1.375rem;\n}\n.button-size--xlg {\n font-size: 1.25rem;\n line-height: 1.75rem;\n padding: 0.75rem 1.5rem;\n min-height: 48px;\n}\n.button-size--xlg .spinner,\n.button-size--xlg .icon {\n max-height: 1.5rem;\n max-width: 1.5rem;\n}\n.button-radius--none {\n border-radius: 0rem;\n}\n.button-radius--sm {\n border-radius: 0.125rem;\n}\n.button-radius--md {\n border-radius: 0.375rem;\n}\n.button-radius--lg {\n border-radius: 0.5rem;\n}\n.button-radius--full {\n border-radius: 1.5rem;\n}\n.button .icon {\n align-items: center;\n display: flex;\n justify-content: center;\n}\n.button .icon--right {\n order: 5;\n}\n.button .icon svg {\n width: 100%;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbiIsInNvdXJjZXMiOlsiQnV0dG9uLm1vZHVsZS5zY3NzIiwiLi4vLi4vc3R5bGVzL19zZXR0aW5ncy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtFO0VBQ0Usa0JDU0c7RURSSDtFQUNBLE9DNUJBOztBRDhCQTtFQUNFLGtCQ0tDOztBREZIO0VBQ0Usa0JDMERlO0VEekRmLE9DaUZrQjs7QUQvRWxCO0VBQ0UsT0M4RWdCOztBRDFFcEI7RUFDRSxPQzVDRjs7QURnREY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3BEQTs7QURzREE7RUFDRSxrQkNwQkM7O0FEdUJIO0VBQ0U7RUFDQSxPQ3lEa0I7O0FEdkRsQjtFQUNFLE9Dc0RnQjs7QURsRHBCO0VBQ0UsT0NwRUY7O0FEd0VGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1RUE7O0FEOEVBO0VBQ0Usa0JDNUNDOztBRCtDSDtFQUNFO0VBQ0EsT0NpQ2tCOztBRC9CbEI7RUFDRSxPQzhCZ0I7O0FEMUJwQjtFQUNFLE9DNUZGOztBRGdHRjtFQUNFO0VBQ0E7RUFDQSxPQ25HQTs7QURxR0E7RUFDRSxrQkNuRUM7O0FEc0VIO0VBQ0U7RUFDQSxPQ1VrQjs7QURSbEI7RUFDRSxPQ09nQjs7QURIcEI7RUFDRSxPQ25IRjs7QUR1SEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzNIQTtFRDRIQSxZQUNFOztBQUlGO0VBQ0Usa0JDL0ZDOztBRGtHSDtFQUNFO0VBQ0EsT0NsQmtCOztBRG9CbEI7RUFDRSxPQ3JCZ0I7O0FEeUJwQjtFQUNFLE9DL0lGOztBRHFKRjtFQUNFLGtCQ3pHRztFRDBHSDtFQUNBLE9DeEpBOztBRDBKQTtFQUNFLGtCQzdHQzs7QURnSEg7RUFDRSxrQkM5RGU7RUQrRGYsT0MzQ2tCOztBRDZDbEI7RUFDRSxPQzlDZ0I7O0FEa0RwQjtFQUNFLE9DeEtGOztBRDRLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaExBOztBRGtMQTtFQUNFLGtCQ3RJQzs7QUR5SUg7RUFDRTtFQUNBLE9DbkVrQjs7QURxRWxCO0VBQ0UsT0N0RWdCOztBRDBFcEI7RUFDRSxPQ2hNRjs7QURvTUY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3hNQTs7QUQwTUE7RUFDRSxrQkM5SkM7O0FEaUtIO0VBQ0U7RUFDQSxPQzNGa0I7O0FENkZsQjtFQUNFLE9DOUZnQjs7QURrR3BCO0VBQ0UsT0N4TkY7O0FENE5GO0VBQ0U7RUFDQTtFQUNBLE9DL05BOztBRGlPQTtFQUNFLGtCQ3JMQzs7QUR3TEg7RUFDRTtFQUNBLE9DbEhrQjs7QURvSGxCO0VBQ0UsT0NySGdCOztBRHlIcEI7RUFDRSxPQy9PRjs7QURtUEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3ZQQTtFRHdQQSxZQUNFOztBQUlGO0VBQ0Usa0JDak5DOztBRG9OSDtFQUNFO0VBQ0EsT0M5SWtCOztBRGdKbEI7RUFDRSxPQ2pKZ0I7O0FEcUpwQjtFQUNFLE9DM1FGOztBRGlSRjtFQUNFLGtCQ3pOSztFRDBOTDtFQUNBLE9DcFJBOztBRHNSQTtFQUNFLGtCQzdORzs7QURnT0w7RUFDRSxrQkN0TGlCO0VEdUxqQixPQ3ZLa0I7O0FEeUtsQjtFQUNFLE9DMUtnQjs7QUQ4S3BCO0VBQ0UsT0NwU0Y7O0FEd1NGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1U0E7O0FEOFNBO0VBQ0Usa0JDdFBHOztBRHlQTDtFQUNFO0VBQ0EsT0MvTGtCOztBRGlNbEI7RUFDRSxPQ2xNZ0I7O0FEc01wQjtFQUNFLE9DNVRGOztBRGdVRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DcFVBOztBRHNVQTtFQUNFLGtCQzlRRzs7QURpUkw7RUFDRTtFQUNBLE9Ddk5rQjs7QUR5TmxCO0VBQ0UsT0MxTmdCOztBRDhOcEI7RUFDRSxPQ3BWRjs7QUR3VkY7RUFDRTtFQUNBO0VBQ0EsT0MzVkE7O0FENlZBO0VBQ0Usa0JDclNHOztBRHdTTDtFQUNFO0VBQ0EsT0M5T2tCOztBRGdQbEI7RUFDRSxPQ2pQZ0I7O0FEcVBwQjtFQUNFLE9DM1dGOztBRCtXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DblhBO0VEb1hBLFlBQ0U7O0FBSUY7RUFDRSxrQkNqVUc7O0FEb1VMO0VBQ0U7RUFDQSxPQzFRa0I7O0FENFFsQjtFQUNFLE9DN1FnQjs7QURpUnBCO0VBQ0UsT0N2WUY7O0FENllGO0VBQ0Usa0JDalVJO0VEa1VKO0VBQ0EsT0NoWkE7O0FEa1pBO0VBQ0Usa0JDclVFOztBRHdVSjtFQUNFLGtCQzFTZTtFRDJTZixPQ25Ta0I7O0FEcVNsQjtFQUNFLE9DdFNnQjs7QUQwU3BCO0VBQ0UsT0NoYUY7O0FEb2FGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N4YUE7O0FEMGFBO0VBQ0Usa0JDOVZFOztBRGlXSjtFQUNFO0VBQ0EsT0MzVGtCOztBRDZUbEI7RUFDRSxPQzlUZ0I7O0FEa1VwQjtFQUNFLE9DeGJGOztBRDRiRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaGNBOztBRGtjQTtFQUNFLGtCQ3RYRTs7QUR5WEo7RUFDRTtFQUNBLE9DblZrQjs7QURxVmxCO0VBQ0UsT0N0VmdCOztBRDBWcEI7RUFDRSxPQ2hkRjs7QURvZEY7RUFDRTtFQUNBO0VBQ0EsT0N2ZEE7O0FEeWRBO0VBQ0Usa0JDN1lFOztBRGdaSjtFQUNFO0VBQ0EsT0MxV2tCOztBRDRXbEI7RUFDRSxPQzdXZ0I7O0FEaVhwQjtFQUNFLE9DdmVGOztBRDJlRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DL2VBO0VEZ2ZBLFlBQ0U7O0FBSUY7RUFDRSxrQkN6YUU7O0FENGFKO0VBQ0U7RUFDQSxPQ3RZa0I7O0FEd1lsQjtFQUNFLE9DellnQjs7QUQ2WXBCO0VBQ0UsT0NuZ0JGOztBRHlnQkY7RUFDRSxrQkN2Y0U7RUR3Y0Y7RUFDQSxPQzVnQkE7O0FEOGdCQTtFQUNFLGtCQzNjQTs7QUQ4Y0Y7RUFDRSxrQkMxYWE7RUQyYWIsT0MvWmtCOztBRGlhbEI7RUFDRSxPQ2xhZ0I7O0FEc2FwQjtFQUNFLE9DNWhCRjs7QURnaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0NwaUJBOztBRHNpQkE7RUFDRSxrQkNwZUE7O0FEdWVGO0VBQ0U7RUFDQSxPQ3Zia0I7O0FEeWJsQjtFQUNFLE9DMWJnQjs7QUQ4YnBCO0VBQ0UsT0NwakJGOztBRHdqQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzVqQkE7O0FEOGpCQTtFQUNFLGtCQzVmQTs7QUQrZkY7RUFDRTtFQUNBLE9DL2NrQjs7QURpZGxCO0VBQ0UsT0NsZGdCOztBRHNkcEI7RUFDRSxPQzVrQkY7O0FEZ2xCRjtFQUNFO0VBQ0E7RUFDQSxPQ25sQkE7O0FEcWxCQTtFQUNFLGtCQ25oQkE7O0FEc2hCRjtFQUNFO0VBQ0EsT0N0ZWtCOztBRHdlbEI7RUFDRSxPQ3plZ0I7O0FENmVwQjtFQUNFLE9Dbm1CRjs7QUR1bUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0MzbUJBO0VENG1CQSxZQUNFOztBQUlGO0VBQ0Usa0JDL2lCQTs7QURrakJGO0VBQ0U7RUFDQSxPQ2xnQmtCOztBRG9nQmxCO0VBQ0UsT0NyZ0JnQjs7QUR5Z0JwQjtFQUNFLE9DL25CRjs7QURxb0JGO0VBQ0Usa0JDL2lCSTtFRGdqQko7RUFDQSxPQ3hvQkE7O0FEMG9CQTtFQUNFLGtCQ25qQkU7O0FEc2pCSjtFQUNFLGtCQzloQmU7RUQraEJmLE9DM2hCa0I7O0FENmhCbEI7RUFDRSxPQzloQmdCOztBRGtpQnBCO0VBQ0UsT0N4cEJGOztBRDRwQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ2hxQkE7O0FEa3FCQTtFQUNFLGtCQzVrQkU7O0FEK2tCSjtFQUNFO0VBQ0EsT0NuakJrQjs7QURxakJsQjtFQUNFLE9DdGpCZ0I7O0FEMGpCcEI7RUFDRSxPQ2hyQkY7O0FEb3JCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DeHJCQTs7QUQwckJBO0VBQ0Usa0JDcG1CRTs7QUR1bUJKO0VBQ0U7RUFDQSxPQzNrQmtCOztBRDZrQmxCO0VBQ0UsT0M5a0JnQjs7QURrbEJwQjtFQUNFLE9DeHNCRjs7QUQ0c0JGO0VBQ0U7RUFDQTtFQUNBLE9DL3NCQTs7QURpdEJBO0VBQ0Usa0JDM25CRTs7QUQ4bkJKO0VBQ0U7RUFDQSxPQ2xtQmtCOztBRG9tQmxCO0VBQ0UsT0NybUJnQjs7QUR5bUJwQjtFQUNFLE9DL3RCRjs7QURtdUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N2dUJBO0VEd3VCQSxZQUNFOztBQUlGO0VBQ0Usa0JDdnBCRTs7QUQwcEJKO0VBQ0U7RUFDQSxPQzluQmtCOztBRGdvQmxCO0VBQ0UsT0Nqb0JnQjs7QURxb0JwQjtFQUNFLE9DM3ZCRjs7QURrd0JKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFNSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcIi4uLy4uL3N0eWxlcy9zZXR0aW5nc1wiIGFzICo7XG5cbi5idXR0b24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZ2FwOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UsXG4gICAgdHJhbnNmb3JtIDMwMG1zIGVhc2U7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQuYnV0dG9uLWFwcGVhcmFuY2Uge1xuICAgICAgJi0tc29saWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdC1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0LWRpc2FibGVkO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdC1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNCksXG4gICAgICAgICAgMCAwIDI0cHggcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1wcmltYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnktaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUtZGFzaGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeS1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1uby1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tZ2xvd2luZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCA4cHggcmdiYSgkY29sb3ItcHJpbWFyeSwgMC41KSxcbiAgICAgICAgICAwIDAgMTZweCByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2Vjb25kYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5LWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc3VjY2Vzcy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc3VjY2VzcywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWVycm9yLmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWVycm9yO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1lcnJvcjtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvciwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0td2FybmluZy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2FybmluZztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itd2FybmluZywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtc2l6ZSB7XG4gICAgJi0teHNtIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgLy8gMTJweFxuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07IC8vIDE2cHhcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtOyAvLyA0cHggOHB4XG4gICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMXJlbTsgLy8gMTZweFxuICAgICAgICBtYXgtd2lkdGg6IDFyZW07IC8vIDE2cHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zbSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsgLy8gNnB4IDEycHhcbiAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxLjEyNXJlbTsgLy8gMThweFxuICAgICAgICBtYXgtd2lkdGg6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgLy8gOHB4IDE2cHhcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgICAgd2lkdGg6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgLy8gMjhweFxuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTsgLy8gMTBweCAyMHB4XG4gICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS4zNzVyZW07IC8vIDIycHhcbiAgICAgICAgbWF4LXdpZHRoOiAxLjM3NXJlbTsgLy8gMjJweFxuICAgICAgfVxuICAgIH1cblxuICAgICYtLXhsZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyAvLyAyOHB4XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgLy8gMTJweCAyNHB4XG4gICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICAgIG1heC13aWR0aDogMS41cmVtOyAvLyAyNHB4XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1yYWRpdXMge1xuICAgICYtLW5vbmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMHJlbTsgLy8gMHB4XG4gICAgfVxuXG4gICAgJi0tc20ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07IC8vIDJweFxuICAgIH1cblxuICAgICYtLW1kIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtOyAvLyA2cHhcbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07IC8vIDhweFxuICAgIH1cblxuICAgICYtLWZ1bGwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtOyAvLyAyNHB4XG4gICAgfVxuICB9XG5cbiAgLmljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiA1O1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vID09PSBEZXNpZ24gVG9rZW5zIOKAlCBDb2xvciBQYWxldHRlID09PVxuXG4vLyBCYXNlXG4kd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMwMDAwMDA7XG4kdHJhbnNwYXJlbnQ6IHRyYW5zcGFyZW50O1xuXG4vLyA9PT0gQmxhY2sgVHJhbnNwYXJlbnQgU2NhbGUgPT09XG4kYmxhY2stdHJhbnNwYXJlbnQtMTAwOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtMjAwOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4kYmxhY2stdHJhbnNwYXJlbnQtMzAwOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNDAwOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNTAwOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNjAwOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4kYmxhY2stdHJhbnNwYXJlbnQtNzAwOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtODAwOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtOTAwOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiR3aGl0ZS10cmFuc3BhcmVudC0xMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0yMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0zMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiR3aGl0ZS10cmFuc3BhcmVudC00MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiR3aGl0ZS10cmFuc3BhcmVudC01MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiR3aGl0ZS10cmFuc3BhcmVudC02MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiR3aGl0ZS10cmFuc3BhcmVudC03MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiR3aGl0ZS10cmFuc3BhcmVudC04MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiR3aGl0ZS10cmFuc3BhcmVudC05MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcblxuLy8gPT09IE5ldXRyYWwgU2NhbGUgKEdyZXkpID09PVxuJGdyZXktNTA6ICNmOWZhZmI7XG4kZ3JleS0xMDA6ICNmM2Y0ZjY7XG4kZ3JleS0yMDA6ICNlNWU3ZWI7XG4kZ3JleS0zMDA6ICNkMWQ1ZGI7XG4kZ3JleS00MDA6ICM5Y2EzYWY7XG4kZ3JleS01MDA6ICM2YjcyODA7XG4kZ3JleS02MDA6ICM0YjU1NjM7XG4kZ3JleS03MDA6ICMzNzQxNTE7XG4kZ3JleS04MDA6ICMxZjI5Mzc7XG4kZ3JleS05MDA6ICMxMTE4Mjc7XG5cbi8vID09PSBQcmltYXJ5IFNjYWxlIChCbHVlKSA9PT1cbiRibHVlLTUwOiAjZWZmNmZmO1xuJGJsdWUtMTAwOiAjZGJlYWZlO1xuJGJsdWUtMjAwOiAjYmZkYmZlO1xuJGJsdWUtMzAwOiAjOTNjNWZkO1xuJGJsdWUtNDAwOiAjNjBhNWZhO1xuJGJsdWUtNTAwOiAjM2I4MmY2O1xuJGJsdWUtNjAwOiAjMjU2M2ViOyAvLyBNYWluXG4kYmx1ZS03MDA6ICMxZDRlZDg7IC8vIEhvdmVyXG4kYmx1ZS04MDA6ICMxZTQwYWY7XG4kYmx1ZS05MDA6ICMxZTNhOGE7XG5cbi8vID09PSBTZWNvbmRhcnkgU2NhbGUgKEluZGlnbykgPT09XG4kaW5kaWdvLTUwOiAjZWVmMmZmO1xuJGluZGlnby0xMDA6ICNlMGU3ZmY7XG4kaW5kaWdvLTIwMDogI2M3ZDJmZTtcbiRpbmRpZ28tMzAwOiAjYTViNGZjO1xuJGluZGlnby00MDA6ICM4MThjZjg7XG4kaW5kaWdvLTUwMDogIzYzNjZmMTtcbiRpbmRpZ28tNjAwOiAjNGY0NmU1OyAvLyBNYWluXG4kaW5kaWdvLTcwMDogIzQzMzhjYTsgLy8gSG92ZXJcblxuLy8gPT09IEVycm9yIFNjYWxlIChSZWQpID09PVxuJHJlZC01MDogI2ZlZjJmMjtcbiRyZWQtMTAwOiAjZmVlMmUyO1xuJHJlZC0yMDA6ICNmZWNhY2E7XG4kcmVkLTMwMDogI2ZjYTVhNTtcbiRyZWQtNDAwOiAjZjg3MTcxO1xuJHJlZC01MDA6ICNlZjQ0NDQ7XG4kcmVkLTYwMDogI2RjMjYyNjsgLy8gTWFpblxuJHJlZC03MDA6ICNiOTFjMWM7IC8vIEhvdmVyXG5cbi8vID09PSBTdWNjZXNzIFNjYWxlIChHcmVlbikgPT09XG4kZ3JlZW4tNTA6ICNmMGZkZjQ7XG4kZ3JlZW4tMTAwOiAjZGNmY2U3O1xuJGdyZWVuLTIwMDogI2JiZjdkMDtcbiRncmVlbi0zMDA6ICM4NmVmYWM7XG4kZ3JlZW4tNDAwOiAjNGFkZTgwO1xuJGdyZWVuLTUwMDogIzIyYzU1ZTtcbiRncmVlbi02MDA6ICMxNmEzNGE7IC8vIE1haW5cbiRncmVlbi03MDA6ICMxNTgwM2Q7IC8vIEhvdmVyXG5cbi8vID09PSBXYXJuaW5nIFNjYWxlIChBbWJlcikgPT09XG4kYW1iZXItNTA6ICNmZmZiZWI7XG4kYW1iZXItMTAwOiAjZmVmM2M3O1xuJGFtYmVyLTIwMDogI2ZkZTY4YTtcbiRhbWJlci0zMDA6ICNmY2QzNGQ7XG4kYW1iZXItNDAwOiAjZmJiZjI0O1xuJGFtYmVyLTUwMDogI2Y1OWUwYjtcbiRhbWJlci02MDA6ICNkOTc3MDY7IC8vIE1haW5cbiRhbWJlci03MDA6ICNiNDUzMDk7IC8vIEhvdmVyXG5cbi8vID09PSBTZW1hbnRpYyBUb2tlbnMgPT09XG4kY29sb3ItZGVmYXVsdDogJGdyZXktODAwO1xuJGNvbG9yLWRlZmF1bHQtaG92ZXI6ICRncmV5LTkwMDtcbiRjb2xvci1kZWZhdWx0LWRpc2FibGVkOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpO1xuXG4kY29sb3ItcHJpbWFyeTogJGJsdWUtNjAwO1xuJGNvbG9yLXByaW1hcnktaG92ZXI6ICRibHVlLTcwMDtcbiRjb2xvci1wcmltYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjUpO1xuXG4kY29sb3Itc2Vjb25kYXJ5OiAkaW5kaWdvLTYwMDtcbiRjb2xvci1zZWNvbmRhcnktaG92ZXI6ICRpbmRpZ28tNzAwO1xuJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjUpO1xuXG4kY29sb3ItZXJyb3I6ICRyZWQtNjAwO1xuJGNvbG9yLWVycm9yLWhvdmVyOiAkcmVkLTcwMDtcbiRjb2xvci1lcnJvci1kaXNhYmxlZDogcmdiYSgkY29sb3ItZXJyb3IsIDAuNSk7XG5cbiRjb2xvci1zdWNjZXNzOiAkZ3JlZW4tNjAwO1xuJGNvbG9yLXN1Y2Nlc3MtaG92ZXI6ICRncmVlbi03MDA7XG4kY29sb3Itc3VjY2Vzcy1kaXNhYmxlZDogcmdiYSgkY29sb3Itc3VjY2VzcywgMC41KTtcblxuJGNvbG9yLXdhcm5pbmc6ICRhbWJlci02MDA7XG4kY29sb3Itd2FybmluZy1ob3ZlcjogJGFtYmVyLTcwMDtcbiRjb2xvci13YXJuaW5nLWRpc2FibGVkOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjUpO1xuXG4kdGV4dC1jb2xvci13aGl0ZTogJHdoaXRlO1xuJHRleHQtY29sb3ItYmxhY2s6ICRibGFjaztcbiR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiR0ZXh0LWNvbG9yLWJsYWNrLWRpc2FibGVkOiByZ2JhKCRibGFjaywgMC41KTtcblxuLy8gPT09IFNoYWRvd3MgPT09XG4kc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2JhKCRibGFjaywgMC4wNSk7XG4kc2hhZG93LW1kOlxuICAwIDRweCA2cHggLTFweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCAycHggNHB4IC0xcHggcmdiYSgkYmxhY2ssIDAuMDYpO1xuJHNoYWRvdy1sZzpcbiAgMCAxMHB4IDE1cHggLTNweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCA0cHggNnB4IC0ycHggcmdiYSgkYmxhY2ssIDAuMDUpO1xuXG4vLyA9PT0gRm9udCBmYW1pbGllcyA9PT1cbiRmb250LWZhbWlseS1zYW5zOiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6IFwiR2VvcmdpYVwiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcIkZpcmEgQ29kZVwiLCBtb25vc3BhY2U7XG5cbi8vID09PSBGb250IHdlaWdodHMgPT09XG4kZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuXG4vLyA9PT0gTGluZSBoZWlnaHRzID09PVxuJGxpbmUtaGVpZ2h0LXRpZ2h0OiAxLjI7XG4kbGluZS1oZWlnaHQtc251ZzogMS4zNzU7XG4kbGluZS1oZWlnaHQtbm9ybWFsOiAxLjU7XG4kbGluZS1oZWlnaHQtbG9vc2U6IDEuNjI1O1xuXG4vLyA9PT0gRm9udCBTaXplcyDigJQgU2VtYW50aWMgVG9rZW5zID09PVxuXG4vLyA9PT0gVGl0bGVzID09PVxuJGZvbnQtc2l6ZS1oZXJvOiAzcmVtOyAvLyA0OHB4XG4kZm9udC1zaXplLXRpdGxlLTE6IDIuMjVyZW07IC8vIDM2cHhcbiRmb250LXNpemUtdGl0bGUtMjogMS44NzVyZW07IC8vIDMwcHhcbiRmb250LXNpemUtdGl0bGUtMzogMS41cmVtOyAvLyAyNHB4XG5cbi8vID09PSBTdWJ0aXRsZXMgPT09XG4kZm9udC1zaXplLXN1YnRpdGxlLTE6IDEuMjVyZW07IC8vIDIwcHhcbiRmb250LXNpemUtc3VidGl0bGUtMjogMS4xMjVyZW07IC8vIDE4cHhcblxuLy8gPT09IEJvZHkgdGV4dCA9PT1cbiRmb250LXNpemUtYm9keS1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1ib2R5LW1kOiAwLjkzNzVyZW07IC8vIDE1cHhcbiRmb250LXNpemUtYm9keS1zbTogMC44NzVyZW07IC8vIDE0cHhcblxuLy8gPT09IENhcHRpb25zIC8gRGVzY3JpcHRpb25zID09PVxuJGZvbnQtc2l6ZS1jYXB0aW9uOiAwLjc1cmVtOyAvLyAxMnB4XG4kZm9udC1zaXplLWZvb3Rub3RlOiAwLjY4NzVyZW07IC8vIDExcHhcblxuLy8gPT09IEJ1dHRvbnMgPT09XG4kZm9udC1zaXplLWJ1dHRvbi1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1idXR0b24tbWQ6IDAuODc1cmVtOyAvLyAxNHB4XG4kZm9udC1zaXplLWJ1dHRvbi1zbTogMC43NXJlbTsgLy8gMTJweFxuXG4vLyA9PT0gQW5pbWF0aW9ucyA9PT1cblxuJGN1YmljLWJlemllci1wcmltYXJ5OiBjdWJpYy1iZXppZXIoMC41NSwgLTAuMTksIDAuNTksIDAuOTUpO1xuJGN1YmljLWJlemllci1zZWNvbmRhcnk6IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiJdfQ== */","\"use client\";\n\nimport * as React from \"react\";\nimport { type IButton, Button } from \"../Button\";\n\nimport styles from \"./ButtonGroup.module.scss\";\n\nexport interface IButtonGroup {\n children:\n | React.ReactElement<IButton, typeof Button>\n | React.ReactElement<IButton, typeof Button>[];\n align?: \"vertical\" | \"horizontal\";\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n disabled?: boolean;\n className?: string;\n}\n\nexport const ButtonGroup: React.FC<IButtonGroup> = ({\n children,\n align = \"horizontal\",\n variant = \"default\",\n size = \"md\",\n radius = \"md\",\n disabled,\n className = \"\",\n}) => {\n return (\n <div\n className={`${styles[\"button-group\"]} ${styles[`button-group-variant--${variant}`]} ${styles[`button-group-size--${size}`]} ${styles[`button-group-radius--${radius}`]} ${styles[`button-group-align--${align}`]} ${className}`}\n >\n {React.Children.toArray(children)\n .filter(\n (child): child is React.ReactElement<IButton, typeof Button> =>\n React.isValidElement(child) && child.type === Button\n )\n .map((child, index) =>\n React.cloneElement(child, {\n key: index || child.key,\n size: size || child.props.size,\n disabled: disabled || child.props.disabled,\n variant: variant || child.props.variant,\n radius: \"none\",\n })\n )}\n </div>\n );\n};\n",".button-group {\n align-items: center;\n display: flex;\n overflow: hidden;\n max-width: max-content;\n}\n.button-group-align--horizontal {\n flex-direction: row;\n}\n.button-group-align--vertical {\n flex-direction: column;\n}\n.button-group-variant--default {\n background-color: #1f2937;\n}\n.button-group-variant--primary {\n background-color: #2563eb;\n}\n.button-group-variant--secondary {\n background-color: #4f46e5;\n}\n.button-group-variant--success {\n background-color: #16a34a;\n}\n.button-group-variant--error {\n background-color: #dc2626;\n}\n.button-group-variant--warning {\n background-color: #d97706;\n}\n.button-group-radius--none {\n border-radius: 0rem;\n}\n.button-group-radius--sm {\n border-radius: 0.125rem;\n}\n.button-group-radius--md {\n border-radius: 0.375rem;\n}\n.button-group-radius--lg {\n border-radius: 0.5rem;\n}\n.button-group-radius--full {\n border-radius: 1.5rem;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbkdyb3VwIiwic291cmNlcyI6WyJCdXR0b25Hcm91cC5tb2R1bGUuc2NzcyIsIi4uLy4uL3N0eWxlcy9fc2V0dGluZ3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFLGtCQ2tCSzs7QURmUDtFQUNFLGtCQ3dCSzs7QURyQlA7RUFDRSxrQkNnQ087O0FEN0JUO0VBQ0Usa0JDZ0RNOztBRDdDUjtFQUNFLGtCQ2tDSTs7QUQvQk47RUFDRSxrQkNrRE07O0FEN0NSO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi8uLi9zdHlsZXMvc2V0dGluZ3NcIiBhcyAqO1xuXG4uYnV0dG9uLWdyb3VwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcblxuICAmLWFsaWduIHtcbiAgICAmLS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgJi0tdmVydGljYWwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi0tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAmLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIH1cblxuICAgICYtLWVycm9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICB9XG5cbiAgICAmLS13YXJuaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgIH1cbiAgfVxuXG4gICYtcmFkaXVzIHtcbiAgICAmLS1ub25lIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDByZW07IC8vIDBweFxuICAgIH1cblxuICAgICYtLXNtIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtOyAvLyAycHhcbiAgICB9XG5cbiAgICAmLS1tZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTsgLy8gNnB4XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtOyAvLyA4cHhcbiAgICB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTsgLy8gMjRweFxuICAgIH1cbiAgfVxufVxuIiwiLy8gPT09IERlc2lnbiBUb2tlbnMg4oCUIENvbG9yIFBhbGV0dGUgPT09XG5cbi8vIEJhc2VcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibGFjazogIzAwMDAwMDtcbiR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiRibGFjay10cmFuc3BhcmVudC0xMDA6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRibGFjay10cmFuc3BhcmVudC0yMDA6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRibGFjay10cmFuc3BhcmVudC0zMDA6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRibGFjay10cmFuc3BhcmVudC00MDA6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiRibGFjay10cmFuc3BhcmVudC01MDA6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRibGFjay10cmFuc3BhcmVudC02MDA6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiRibGFjay10cmFuc3BhcmVudC03MDA6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRibGFjay10cmFuc3BhcmVudC04MDA6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiRibGFjay10cmFuc3BhcmVudC05MDA6IHJnYmEoMCwgMCwgMCwgMC45KTtcblxuLy8gPT09IEJsYWNrIFRyYW5zcGFyZW50IFNjYWxlID09PVxuJHdoaXRlLXRyYW5zcGFyZW50LTEwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTIwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTMwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTQwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTUwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTYwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTcwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTgwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTkwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuXG4vLyA9PT0gTmV1dHJhbCBTY2FsZSAoR3JleSkgPT09XG4kZ3JleS01MDogI2Y5ZmFmYjtcbiRncmV5LTEwMDogI2YzZjRmNjtcbiRncmV5LTIwMDogI2U1ZTdlYjtcbiRncmV5LTMwMDogI2QxZDVkYjtcbiRncmV5LTQwMDogIzljYTNhZjtcbiRncmV5LTUwMDogIzZiNzI4MDtcbiRncmV5LTYwMDogIzRiNTU2MztcbiRncmV5LTcwMDogIzM3NDE1MTtcbiRncmV5LTgwMDogIzFmMjkzNztcbiRncmV5LTkwMDogIzExMTgyNztcblxuLy8gPT09IFByaW1hcnkgU2NhbGUgKEJsdWUpID09PVxuJGJsdWUtNTA6ICNlZmY2ZmY7XG4kYmx1ZS0xMDA6ICNkYmVhZmU7XG4kYmx1ZS0yMDA6ICNiZmRiZmU7XG4kYmx1ZS0zMDA6ICM5M2M1ZmQ7XG4kYmx1ZS00MDA6ICM2MGE1ZmE7XG4kYmx1ZS01MDA6ICMzYjgyZjY7XG4kYmx1ZS02MDA6ICMyNTYzZWI7IC8vIE1haW5cbiRibHVlLTcwMDogIzFkNGVkODsgLy8gSG92ZXJcbiRibHVlLTgwMDogIzFlNDBhZjtcbiRibHVlLTkwMDogIzFlM2E4YTtcblxuLy8gPT09IFNlY29uZGFyeSBTY2FsZSAoSW5kaWdvKSA9PT1cbiRpbmRpZ28tNTA6ICNlZWYyZmY7XG4kaW5kaWdvLTEwMDogI2UwZTdmZjtcbiRpbmRpZ28tMjAwOiAjYzdkMmZlO1xuJGluZGlnby0zMDA6ICNhNWI0ZmM7XG4kaW5kaWdvLTQwMDogIzgxOGNmODtcbiRpbmRpZ28tNTAwOiAjNjM2NmYxO1xuJGluZGlnby02MDA6ICM0ZjQ2ZTU7IC8vIE1haW5cbiRpbmRpZ28tNzAwOiAjNDMzOGNhOyAvLyBIb3ZlclxuXG4vLyA9PT0gRXJyb3IgU2NhbGUgKFJlZCkgPT09XG4kcmVkLTUwOiAjZmVmMmYyO1xuJHJlZC0xMDA6ICNmZWUyZTI7XG4kcmVkLTIwMDogI2ZlY2FjYTtcbiRyZWQtMzAwOiAjZmNhNWE1O1xuJHJlZC00MDA6ICNmODcxNzE7XG4kcmVkLTUwMDogI2VmNDQ0NDtcbiRyZWQtNjAwOiAjZGMyNjI2OyAvLyBNYWluXG4kcmVkLTcwMDogI2I5MWMxYzsgLy8gSG92ZXJcblxuLy8gPT09IFN1Y2Nlc3MgU2NhbGUgKEdyZWVuKSA9PT1cbiRncmVlbi01MDogI2YwZmRmNDtcbiRncmVlbi0xMDA6ICNkY2ZjZTc7XG4kZ3JlZW4tMjAwOiAjYmJmN2QwO1xuJGdyZWVuLTMwMDogIzg2ZWZhYztcbiRncmVlbi00MDA6ICM0YWRlODA7XG4kZ3JlZW4tNTAwOiAjMjJjNTVlO1xuJGdyZWVuLTYwMDogIzE2YTM0YTsgLy8gTWFpblxuJGdyZWVuLTcwMDogIzE1ODAzZDsgLy8gSG92ZXJcblxuLy8gPT09IFdhcm5pbmcgU2NhbGUgKEFtYmVyKSA9PT1cbiRhbWJlci01MDogI2ZmZmJlYjtcbiRhbWJlci0xMDA6ICNmZWYzYzc7XG4kYW1iZXItMjAwOiAjZmRlNjhhO1xuJGFtYmVyLTMwMDogI2ZjZDM0ZDtcbiRhbWJlci00MDA6ICNmYmJmMjQ7XG4kYW1iZXItNTAwOiAjZjU5ZTBiO1xuJGFtYmVyLTYwMDogI2Q5NzcwNjsgLy8gTWFpblxuJGFtYmVyLTcwMDogI2I0NTMwOTsgLy8gSG92ZXJcblxuLy8gPT09IFNlbWFudGljIFRva2VucyA9PT1cbiRjb2xvci1kZWZhdWx0OiAkZ3JleS04MDA7XG4kY29sb3ItZGVmYXVsdC1ob3ZlcjogJGdyZXktOTAwO1xuJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNSk7XG5cbiRjb2xvci1wcmltYXJ5OiAkYmx1ZS02MDA7XG4kY29sb3ItcHJpbWFyeS1ob3ZlcjogJGJsdWUtNzAwO1xuJGNvbG9yLXByaW1hcnktZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuNSk7XG5cbiRjb2xvci1zZWNvbmRhcnk6ICRpbmRpZ28tNjAwO1xuJGNvbG9yLXNlY29uZGFyeS1ob3ZlcjogJGluZGlnby03MDA7XG4kY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSk7XG5cbiRjb2xvci1lcnJvcjogJHJlZC02MDA7XG4kY29sb3ItZXJyb3ItaG92ZXI6ICRyZWQtNzAwO1xuJGNvbG9yLWVycm9yLWRpc2FibGVkOiByZ2JhKCRjb2xvci1lcnJvciwgMC41KTtcblxuJGNvbG9yLXN1Y2Nlc3M6ICRncmVlbi02MDA7XG4kY29sb3Itc3VjY2Vzcy1ob3ZlcjogJGdyZWVuLTcwMDtcbiRjb2xvci1zdWNjZXNzLWRpc2FibGVkOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjUpO1xuXG4kY29sb3Itd2FybmluZzogJGFtYmVyLTYwMDtcbiRjb2xvci13YXJuaW5nLWhvdmVyOiAkYW1iZXItNzAwO1xuJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSk7XG5cbiR0ZXh0LWNvbG9yLXdoaXRlOiAkd2hpdGU7XG4kdGV4dC1jb2xvci1ibGFjazogJGJsYWNrO1xuJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJHRleHQtY29sb3ItYmxhY2stZGlzYWJsZWQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuXG4vLyA9PT0gU2hhZG93cyA9PT1cbiRzaGFkb3ctc206IDAgMXB4IDJweCAwIHJnYmEoJGJsYWNrLCAwLjA1KTtcbiRzaGFkb3ctbWQ6XG4gIDAgNHB4IDZweCAtMXB4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKCRibGFjaywgMC4wNik7XG4kc2hhZG93LWxnOlxuICAwIDEwcHggMTVweCAtM3B4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDRweCA2cHggLTJweCByZ2JhKCRibGFjaywgMC4wNSk7XG5cbi8vID09PSBGb250IGZhbWlsaWVzID09PVxuJGZvbnQtZmFtaWx5LXNhbnM6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zZXJpZjogXCJHZW9yZ2lhXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm86IFwiRmlyYSBDb2RlXCIsIG1vbm9zcGFjZTtcblxuLy8gPT09IEZvbnQgd2VpZ2h0cyA9PT1cbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vID09PSBMaW5lIGhlaWdodHMgPT09XG4kbGluZS1oZWlnaHQtdGlnaHQ6IDEuMjtcbiRsaW5lLWhlaWdodC1zbnVnOiAxLjM3NTtcbiRsaW5lLWhlaWdodC1ub3JtYWw6IDEuNTtcbiRsaW5lLWhlaWdodC1sb29zZTogMS42MjU7XG5cbi8vID09PSBGb250IFNpemVzIOKAlCBTZW1hbnRpYyBUb2tlbnMgPT09XG5cbi8vID09PSBUaXRsZXMgPT09XG4kZm9udC1zaXplLWhlcm86IDNyZW07IC8vIDQ4cHhcbiRmb250LXNpemUtdGl0bGUtMTogMi4yNXJlbTsgLy8gMzZweFxuJGZvbnQtc2l6ZS10aXRsZS0yOiAxLjg3NXJlbTsgLy8gMzBweFxuJGZvbnQtc2l6ZS10aXRsZS0zOiAxLjVyZW07IC8vIDI0cHhcblxuLy8gPT09IFN1YnRpdGxlcyA9PT1cbiRmb250LXNpemUtc3VidGl0bGUtMTogMS4yNXJlbTsgLy8gMjBweFxuJGZvbnQtc2l6ZS1zdWJ0aXRsZS0yOiAxLjEyNXJlbTsgLy8gMThweFxuXG4vLyA9PT0gQm9keSB0ZXh0ID09PVxuJGZvbnQtc2l6ZS1ib2R5LWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJvZHktbWQ6IDAuOTM3NXJlbTsgLy8gMTVweFxuJGZvbnQtc2l6ZS1ib2R5LXNtOiAwLjg3NXJlbTsgLy8gMTRweFxuXG4vLyA9PT0gQ2FwdGlvbnMgLyBEZXNjcmlwdGlvbnMgPT09XG4kZm9udC1zaXplLWNhcHRpb246IDAuNzVyZW07IC8vIDEycHhcbiRmb250LXNpemUtZm9vdG5vdGU6IDAuNjg3NXJlbTsgLy8gMTFweFxuXG4vLyA9PT0gQnV0dG9ucyA9PT1cbiRmb250LXNpemUtYnV0dG9uLWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJ1dHRvbi1tZDogMC44NzVyZW07IC8vIDE0cHhcbiRmb250LXNpemUtYnV0dG9uLXNtOiAwLjc1cmVtOyAvLyAxMnB4XG5cbi8vID09PSBBbmltYXRpb25zID09PVxuXG4kY3ViaWMtYmV6aWVyLXByaW1hcnk6IGN1YmljLWJlemllcigwLjU1LCAtMC4xOSwgMC41OSwgMC45NSk7XG4kY3ViaWMtYmV6aWVyLXNlY29uZGFyeTogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuIl19 */"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,YAAuB;AACvB,qBAAwB;;;ACKjB,IAAM,eAAe,CAA0C;AAAA,EACpE;AAAA,EACA;AAAA,EACA;AACF,MAAqC;AACnC,QAAM,SAAS,IAAI;AACnB,MAAI,CAAC,OAAQ;AAEb,QAAM,SAAS,SAAS,cAAc,MAAM;AAC5C,QAAM,WAAW,KAAK,IAAI,OAAO,aAAa,OAAO,YAAY;AACjE,QAAM,SAAS,WAAW;AAE1B,SAAO,KAAK;AAEZ,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKF,QAAQ;AAAA,gBACV,UAAU,OAAO,sBAAsB,EAAE,OAAO,MAAM;AAAA;AAAA;AAAA,eAGvD,UAAU,OAAO,sBAAsB,EAAE,MAAM,MAAM;AAAA;AAAA,iBAEnD,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYvB,SAAO,YAAY,KAAK;AACxB,SAAO,YAAY,MAAM;AAEzB,SAAO,iBAAiB,gBAAgB,MAAM;AAC5C,WAAO,OAAO;AACd,UAAM,OAAO;AAAA,EACf,CAAC;AACH;;;ACrDA;;;AF2DI;AA1BG,IAAM,SAA4B,CAAC,OAcpC;AAdoC,eACxC;AAAA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV,aAAa;AAAA,IACb,OAAO;AAAA,IACP,SAAS;AAAA,IACT;AAAA,IACA,cAAc;AAAA,IACd,YAAY;AAAA,IACZ;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EA7CF,IAiC0C,IAarC,sBAbqC,IAarC;AAAA,IAZH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,MAAY,aAA0B,IAAI;AAEhD,QAAM,cAAc,CAAC,MAAuD;AAC1E,UAAM,EAAE,SAAS,QAAQ,IAAI;AAC7B,iBAAgC,EAAE,KAAK,SAAS,QAAQ,CAAC;AACzD,QAAI,SAAS;AACX,cAAQ,CAAC;AAAA,IACX;AAAA,EACF;AAEA,QAAMA,YAAW,MAAG;AA1DtB,QAAAC;AA2DI,uFACG;AAAA,mBACC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,MAAM;AAAA,UACN,WAAW,sBAAO,SAAS;AAAA;AAAA,MAC7B;AAAA,MAED,QACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,GAAG,sBAAO,MAAM,CAAC,IAAI,sBAAO,UAASA,MAAA,KAAK,UAAL,OAAAA,MAAc,MAAM,EAAE,CAAC;AAAA,UAEtE,UAAM,oBAAc,KAAK,SAAS;AAAA;AAAA,MACrC;AAAA,MAED;AAAA,OACH;AAAA;AAGF,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,WAAW,GAAG,sBAAO,QAAQ,CAAC,IAAI,sBAAO,mBAAmB,OAAO,EAAE,CAAC,IAAI,sBAAO,sBAAsB,UAAU,EAAE,CAAC,IAAI,sBAAO,gBAAgB,IAAI,EAAE,CAAC,IAAI,sBAAO,kBAAkB,MAAM,EAAE,CAAC,IAAI,YAAY,sBAAO,iBAAiB,IAAI,EAAE,IAAI,SAAS;AAAA,MACvP,SAAS;AAAA,OACJ,0BACD,EAAE,wBAAwB,IAC1B,EAAE,UAAU,4CAACD,WAAA,EAAS,EAAG,IACzB;AAAA,EACN;AAEJ;;;AGzFA,IAAAE,SAAuB;;;ACFvB;;;ADmCI,IAAAC,sBAAA;AAVG,IAAM,cAAsC,CAAC;AAAA,EAClD;AAAA,EACA,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,YAAY;AACd,MAAM;AACJ,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,2BAAO,cAAc,CAAC,IAAI,2BAAO,yBAAyB,OAAO,EAAE,CAAC,IAAI,2BAAO,sBAAsB,IAAI,EAAE,CAAC,IAAI,2BAAO,wBAAwB,MAAM,EAAE,CAAC,IAAI,2BAAO,uBAAuB,KAAK,EAAE,CAAC,IAAI,SAAS;AAAA,MAE5N,UAAM,gBAAS,QAAQ,QAAQ,EAC7B;AAAA,QACC,CAAC,UACO,sBAAe,KAAK,KAAK,MAAM,SAAS;AAAA,MAClD,EACC;AAAA,QAAI,CAAC,OAAO,UACL,oBAAa,OAAO;AAAA,UACxB,KAAK,SAAS,MAAM;AAAA,UACpB,MAAM,QAAQ,MAAM,MAAM;AAAA,UAC1B,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC,SAAS,WAAW,MAAM,MAAM;AAAA,UAChC,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA;AAAA,EACJ;AAEJ;","names":["Children","_a","React","import_jsx_runtime"]}
|
|
1
|
+
{"version":3,"sources":["../index.ts","../components/Button/index.tsx","../utils/ripple.tsx","../components/Button/Button.module.scss","../components/ButtonGroup/index.tsx","../components/ButtonGroup/ButtonGroup.module.scss"],"sourcesContent":["export { Button, ButtonGroup } from \"./components\";\n","\"use client\";\n\nimport * as React from \"react\";\nimport { Spinner } from \"@aristobyte-ui/spinner\";\n\nimport { renderRipple } from \"../../utils\";\n\nimport styles from \"./Button.module.scss\";\n\nexport interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n appearance?:\n | \"solid\"\n | \"outline\"\n | \"outline-dashed\"\n | \"no-outline\"\n | \"glowing\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n icon?: {\n component: React.ElementType;\n align?: \"left\" | \"right\";\n };\n isLoading?: boolean;\n spinnerType?: \"default\" | \"duo\" | \"gradient\" | \"pulse\" | \"pulse-duo\";\n}\n\nexport const Button: React.FC<IButton> = ({\n onClick,\n children,\n variant = \"default\",\n appearance = \"solid\",\n size = \"md\",\n radius = \"md\",\n icon,\n spinnerType = \"default\",\n isLoading = false,\n disabled,\n className = \"\",\n dangerouslySetInnerHTML,\n ...restProps\n}) => {\n const ref = React.useRef<HTMLButtonElement>(null);\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n const { clientX, clientY } = e;\n renderRipple<HTMLButtonElement>({ ref, clientX, clientY });\n if (onClick) {\n onClick(e);\n }\n };\n\n const Children = () => (\n <>\n {isLoading && (\n <Spinner\n size={size}\n variant={variant}\n type={spinnerType}\n className={styles[\"spinner\"]}\n />\n )}\n {icon && (\n <span\n className={`${styles[\"icon\"]} ${styles[`icon--${icon.align ?? \"left\"}`]}`}\n >\n {React.createElement(icon.component)}\n </span>\n )}\n {children}\n </>\n );\n\n return (\n <button\n ref={ref}\n disabled={disabled || isLoading}\n className={`${styles[\"button\"]} ${styles[`button-variant--${variant}`]} ${styles[`button-appearance--${appearance}`]} ${styles[`button-size--${size}`]} ${styles[`button-radius--${radius}`]} ${isLoading ? styles[\"button--loading\"] : \"\"} ${className}`}\n onClick={handleClick}\n {...(dangerouslySetInnerHTML\n ? { dangerouslySetInnerHTML }\n : { children: <Children /> })}\n {...restProps}\n />\n );\n};\n","type RippleParamsRef = HTMLButtonElement | HTMLAnchorElement;\n\nexport type RippleParams<HTMLElementType extends RippleParamsRef> = {\n ref: React.RefObject<HTMLElementType | null>;\n clientX: number;\n clientY: number;\n};\n\nexport const renderRipple = <HTMLElementType extends RippleParamsRef>({\n ref,\n clientX,\n clientY,\n}: RippleParams<HTMLElementType>) => {\n const button = ref.current;\n if (!button) return;\n\n const circle = document.createElement(\"span\");\n const diameter = Math.max(button.clientWidth, button.clientHeight);\n const radius = diameter / 2;\n\n circle.id = \"ripple\";\n\n const style = document.createElement(\"style\");\n style.innerHTML = `\n #ripple {\n animation: ripple 300ms linear;\n background-color: rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n height: ${diameter}px;\n left: ${clientX - button.getBoundingClientRect().left - radius}px;\n pointer-events: none;\n position: absolute;\n top: ${clientY - button.getBoundingClientRect().top - radius}px;\n transform: scale(0);\n width: ${diameter}px;\n z-index: 0;\n }\n \n @keyframes ripple {\n to {\n opacity: 0;\n transform: scale(2);\n }\n }\n `;\n\n button.appendChild(style);\n button.appendChild(circle);\n\n circle.addEventListener(\"animationend\", () => {\n circle.remove();\n style.remove();\n });\n};\n",".button {\n align-items: center;\n border: none;\n cursor: pointer;\n display: flex;\n font-weight: 500;\n gap: 10px;\n letter-spacing: 0rem;\n line-height: 1.42;\n overflow: hidden;\n position: relative;\n transition: background-color 200ms ease, transform 300ms ease;\n}\n.button:disabled {\n cursor: not-allowed;\n opacity: 1;\n}\n.button:active {\n transform: scale(0.97);\n}\n.button-variant--default.button-appearance--solid {\n background-color: #1f2937;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--solid:hover {\n background-color: #111827;\n}\n.button-variant--default.button-appearance--solid:disabled {\n background-color: rgba(31, 41, 55, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline-dashed:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--no-outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--glowing {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(31, 41, 55, 0.5), 0 0 16px rgba(31, 41, 55, 0.4), 0 0 24px rgba(31, 41, 55, 0.3);\n}\n.button-variant--default.button-appearance--glowing:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--glowing:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid {\n background-color: #2563eb;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid:hover {\n background-color: #1d4ed8;\n}\n.button-variant--primary.button-appearance--solid:disabled {\n background-color: rgba(37, 99, 235, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--no-outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--glowing {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(37, 99, 235, 0.5), 0 0 16px rgba(37, 99, 235, 0.4), 0 0 24px rgba(37, 99, 235, 0.3);\n}\n.button-variant--primary.button-appearance--glowing:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--glowing:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid {\n background-color: #4f46e5;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid:hover {\n background-color: #4338ca;\n}\n.button-variant--secondary.button-appearance--solid:disabled {\n background-color: rgba(79, 70, 229, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--no-outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--glowing {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(79, 70, 229, 0.5), 0 0 16px rgba(79, 70, 229, 0.4), 0 0 24px rgba(79, 70, 229, 0.3);\n}\n.button-variant--secondary.button-appearance--glowing:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--glowing:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid {\n background-color: #16a34a;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid:hover {\n background-color: #15803d;\n}\n.button-variant--success.button-appearance--solid:disabled {\n background-color: rgba(22, 163, 74, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline-dashed:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--no-outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--glowing {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(22, 163, 74, 0.5), 0 0 16px rgba(22, 163, 74, 0.4), 0 0 24px rgba(22, 163, 74, 0.3);\n}\n.button-variant--success.button-appearance--glowing:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--glowing:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid {\n background-color: #dc2626;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid:hover {\n background-color: #b91c1c;\n}\n.button-variant--error.button-appearance--solid:disabled {\n background-color: rgba(220, 38, 38, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline-dashed:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--no-outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--glowing {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(220, 38, 38, 0.5), 0 0 16px rgba(220, 38, 38, 0.4), 0 0 24px rgba(220, 38, 38, 0.3);\n}\n.button-variant--error.button-appearance--glowing:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--glowing:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid {\n background-color: #d97706;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid:hover {\n background-color: #b45309;\n}\n.button-variant--warning.button-appearance--solid:disabled {\n background-color: rgba(217, 119, 6, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--no-outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--glowing {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(217, 119, 6, 0.5), 0 0 16px rgba(217, 119, 6, 0.4), 0 0 24px rgba(217, 119, 6, 0.3);\n}\n.button-variant--warning.button-appearance--glowing:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--glowing:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-size--xsm {\n font-size: 0.75rem;\n line-height: 1rem;\n padding: 0.25rem 0.5rem;\n min-height: 28px;\n}\n.button-size--xsm .spinner,\n.button-size--xsm .icon {\n max-height: 1rem;\n max-width: 1rem;\n}\n.button-size--sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n padding: 0.375rem 0.75rem;\n min-height: 32px;\n}\n.button-size--sm .spinner,\n.button-size--sm .icon {\n max-height: 1.125rem;\n max-width: 1.125rem;\n}\n.button-size--md {\n font-size: 1rem;\n line-height: 1.5rem;\n padding: 0.5rem 1rem;\n min-height: 40px;\n}\n.button-size--md .spinner,\n.button-size--md .icon {\n height: 1.25rem;\n width: 1.25rem;\n}\n.button-size--lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n padding: 0.625rem 1.25rem;\n min-height: 44px;\n}\n.button-size--lg .spinner,\n.button-size--lg .icon {\n max-height: 1.375rem;\n max-width: 1.375rem;\n}\n.button-size--xlg {\n font-size: 1.25rem;\n line-height: 1.75rem;\n padding: 0.75rem 1.5rem;\n min-height: 48px;\n}\n.button-size--xlg .spinner,\n.button-size--xlg .icon {\n max-height: 1.5rem;\n max-width: 1.5rem;\n}\n.button-radius--none {\n border-radius: 0rem;\n}\n.button-radius--sm {\n border-radius: 0.125rem;\n}\n.button-radius--md {\n border-radius: 0.375rem;\n}\n.button-radius--lg {\n border-radius: 0.5rem;\n}\n.button-radius--full {\n border-radius: 1.5rem;\n}\n.button .icon {\n align-items: center;\n display: flex;\n justify-content: center;\n}\n.button .icon--right {\n order: 5;\n}\n.button .icon svg {\n width: 100%;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbiIsInNvdXJjZXMiOlsiQnV0dG9uLm1vZHVsZS5zY3NzIiwiLi4vLi4vc3R5bGVzL19zZXR0aW5ncy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtFO0VBQ0Usa0JDU0c7RURSSDtFQUNBLE9DNUJBOztBRDhCQTtFQUNFLGtCQ0tDOztBREZIO0VBQ0Usa0JDMERlO0VEekRmLE9DaUZrQjs7QUQvRWxCO0VBQ0UsT0M4RWdCOztBRDFFcEI7RUFDRSxPQzVDRjs7QURnREY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3BEQTs7QURzREE7RUFDRSxrQkNwQkM7O0FEdUJIO0VBQ0U7RUFDQSxPQ3lEa0I7O0FEdkRsQjtFQUNFLE9Dc0RnQjs7QURsRHBCO0VBQ0UsT0NwRUY7O0FEd0VGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1RUE7O0FEOEVBO0VBQ0Usa0JDNUNDOztBRCtDSDtFQUNFO0VBQ0EsT0NpQ2tCOztBRC9CbEI7RUFDRSxPQzhCZ0I7O0FEMUJwQjtFQUNFLE9DNUZGOztBRGdHRjtFQUNFO0VBQ0E7RUFDQSxPQ25HQTs7QURxR0E7RUFDRSxrQkNuRUM7O0FEc0VIO0VBQ0U7RUFDQSxPQ1VrQjs7QURSbEI7RUFDRSxPQ09nQjs7QURIcEI7RUFDRSxPQ25IRjs7QUR1SEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzNIQTtFRDRIQSxZQUNFOztBQUlGO0VBQ0Usa0JDL0ZDOztBRGtHSDtFQUNFO0VBQ0EsT0NsQmtCOztBRG9CbEI7RUFDRSxPQ3JCZ0I7O0FEeUJwQjtFQUNFLE9DL0lGOztBRHFKRjtFQUNFLGtCQ3pHRztFRDBHSDtFQUNBLE9DeEpBOztBRDBKQTtFQUNFLGtCQzdHQzs7QURnSEg7RUFDRSxrQkM5RGU7RUQrRGYsT0MzQ2tCOztBRDZDbEI7RUFDRSxPQzlDZ0I7O0FEa0RwQjtFQUNFLE9DeEtGOztBRDRLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaExBOztBRGtMQTtFQUNFLGtCQ3RJQzs7QUR5SUg7RUFDRTtFQUNBLE9DbkVrQjs7QURxRWxCO0VBQ0UsT0N0RWdCOztBRDBFcEI7RUFDRSxPQ2hNRjs7QURvTUY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3hNQTs7QUQwTUE7RUFDRSxrQkM5SkM7O0FEaUtIO0VBQ0U7RUFDQSxPQzNGa0I7O0FENkZsQjtFQUNFLE9DOUZnQjs7QURrR3BCO0VBQ0UsT0N4TkY7O0FENE5GO0VBQ0U7RUFDQTtFQUNBLE9DL05BOztBRGlPQTtFQUNFLGtCQ3JMQzs7QUR3TEg7RUFDRTtFQUNBLE9DbEhrQjs7QURvSGxCO0VBQ0UsT0NySGdCOztBRHlIcEI7RUFDRSxPQy9PRjs7QURtUEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3ZQQTtFRHdQQSxZQUNFOztBQUlGO0VBQ0Usa0JDak5DOztBRG9OSDtFQUNFO0VBQ0EsT0M5SWtCOztBRGdKbEI7RUFDRSxPQ2pKZ0I7O0FEcUpwQjtFQUNFLE9DM1FGOztBRGlSRjtFQUNFLGtCQ3pOSztFRDBOTDtFQUNBLE9DcFJBOztBRHNSQTtFQUNFLGtCQzdORzs7QURnT0w7RUFDRSxrQkN0TGlCO0VEdUxqQixPQ3ZLa0I7O0FEeUtsQjtFQUNFLE9DMUtnQjs7QUQ4S3BCO0VBQ0UsT0NwU0Y7O0FEd1NGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1U0E7O0FEOFNBO0VBQ0Usa0JDdFBHOztBRHlQTDtFQUNFO0VBQ0EsT0MvTGtCOztBRGlNbEI7RUFDRSxPQ2xNZ0I7O0FEc01wQjtFQUNFLE9DNVRGOztBRGdVRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DcFVBOztBRHNVQTtFQUNFLGtCQzlRRzs7QURpUkw7RUFDRTtFQUNBLE9Ddk5rQjs7QUR5TmxCO0VBQ0UsT0MxTmdCOztBRDhOcEI7RUFDRSxPQ3BWRjs7QUR3VkY7RUFDRTtFQUNBO0VBQ0EsT0MzVkE7O0FENlZBO0VBQ0Usa0JDclNHOztBRHdTTDtFQUNFO0VBQ0EsT0M5T2tCOztBRGdQbEI7RUFDRSxPQ2pQZ0I7O0FEcVBwQjtFQUNFLE9DM1dGOztBRCtXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DblhBO0VEb1hBLFlBQ0U7O0FBSUY7RUFDRSxrQkNqVUc7O0FEb1VMO0VBQ0U7RUFDQSxPQzFRa0I7O0FENFFsQjtFQUNFLE9DN1FnQjs7QURpUnBCO0VBQ0UsT0N2WUY7O0FENllGO0VBQ0Usa0JDalVJO0VEa1VKO0VBQ0EsT0NoWkE7O0FEa1pBO0VBQ0Usa0JDclVFOztBRHdVSjtFQUNFLGtCQzFTZTtFRDJTZixPQ25Ta0I7O0FEcVNsQjtFQUNFLE9DdFNnQjs7QUQwU3BCO0VBQ0UsT0NoYUY7O0FEb2FGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N4YUE7O0FEMGFBO0VBQ0Usa0JDOVZFOztBRGlXSjtFQUNFO0VBQ0EsT0MzVGtCOztBRDZUbEI7RUFDRSxPQzlUZ0I7O0FEa1VwQjtFQUNFLE9DeGJGOztBRDRiRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaGNBOztBRGtjQTtFQUNFLGtCQ3RYRTs7QUR5WEo7RUFDRTtFQUNBLE9DblZrQjs7QURxVmxCO0VBQ0UsT0N0VmdCOztBRDBWcEI7RUFDRSxPQ2hkRjs7QURvZEY7RUFDRTtFQUNBO0VBQ0EsT0N2ZEE7O0FEeWRBO0VBQ0Usa0JDN1lFOztBRGdaSjtFQUNFO0VBQ0EsT0MxV2tCOztBRDRXbEI7RUFDRSxPQzdXZ0I7O0FEaVhwQjtFQUNFLE9DdmVGOztBRDJlRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DL2VBO0VEZ2ZBLFlBQ0U7O0FBSUY7RUFDRSxrQkN6YUU7O0FENGFKO0VBQ0U7RUFDQSxPQ3RZa0I7O0FEd1lsQjtFQUNFLE9DellnQjs7QUQ2WXBCO0VBQ0UsT0NuZ0JGOztBRHlnQkY7RUFDRSxrQkN2Y0U7RUR3Y0Y7RUFDQSxPQzVnQkE7O0FEOGdCQTtFQUNFLGtCQzNjQTs7QUQ4Y0Y7RUFDRSxrQkMxYWE7RUQyYWIsT0MvWmtCOztBRGlhbEI7RUFDRSxPQ2xhZ0I7O0FEc2FwQjtFQUNFLE9DNWhCRjs7QURnaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0NwaUJBOztBRHNpQkE7RUFDRSxrQkNwZUE7O0FEdWVGO0VBQ0U7RUFDQSxPQ3Zia0I7O0FEeWJsQjtFQUNFLE9DMWJnQjs7QUQ4YnBCO0VBQ0UsT0NwakJGOztBRHdqQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzVqQkE7O0FEOGpCQTtFQUNFLGtCQzVmQTs7QUQrZkY7RUFDRTtFQUNBLE9DL2NrQjs7QURpZGxCO0VBQ0UsT0NsZGdCOztBRHNkcEI7RUFDRSxPQzVrQkY7O0FEZ2xCRjtFQUNFO0VBQ0E7RUFDQSxPQ25sQkE7O0FEcWxCQTtFQUNFLGtCQ25oQkE7O0FEc2hCRjtFQUNFO0VBQ0EsT0N0ZWtCOztBRHdlbEI7RUFDRSxPQ3plZ0I7O0FENmVwQjtFQUNFLE9Dbm1CRjs7QUR1bUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0MzbUJBO0VENG1CQSxZQUNFOztBQUlGO0VBQ0Usa0JDL2lCQTs7QURrakJGO0VBQ0U7RUFDQSxPQ2xnQmtCOztBRG9nQmxCO0VBQ0UsT0NyZ0JnQjs7QUR5Z0JwQjtFQUNFLE9DL25CRjs7QURxb0JGO0VBQ0Usa0JDL2lCSTtFRGdqQko7RUFDQSxPQ3hvQkE7O0FEMG9CQTtFQUNFLGtCQ25qQkU7O0FEc2pCSjtFQUNFLGtCQzloQmU7RUQraEJmLE9DM2hCa0I7O0FENmhCbEI7RUFDRSxPQzloQmdCOztBRGtpQnBCO0VBQ0UsT0N4cEJGOztBRDRwQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ2hxQkE7O0FEa3FCQTtFQUNFLGtCQzVrQkU7O0FEK2tCSjtFQUNFO0VBQ0EsT0NuakJrQjs7QURxakJsQjtFQUNFLE9DdGpCZ0I7O0FEMGpCcEI7RUFDRSxPQ2hyQkY7O0FEb3JCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DeHJCQTs7QUQwckJBO0VBQ0Usa0JDcG1CRTs7QUR1bUJKO0VBQ0U7RUFDQSxPQzNrQmtCOztBRDZrQmxCO0VBQ0UsT0M5a0JnQjs7QURrbEJwQjtFQUNFLE9DeHNCRjs7QUQ0c0JGO0VBQ0U7RUFDQTtFQUNBLE9DL3NCQTs7QURpdEJBO0VBQ0Usa0JDM25CRTs7QUQ4bkJKO0VBQ0U7RUFDQSxPQ2xtQmtCOztBRG9tQmxCO0VBQ0UsT0NybUJnQjs7QUR5bUJwQjtFQUNFLE9DL3RCRjs7QURtdUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N2dUJBO0VEd3VCQSxZQUNFOztBQUlGO0VBQ0Usa0JDdnBCRTs7QUQwcEJKO0VBQ0U7RUFDQSxPQzluQmtCOztBRGdvQmxCO0VBQ0UsT0Nqb0JnQjs7QURxb0JwQjtFQUNFLE9DM3ZCRjs7QURrd0JKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFNSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcIi4uLy4uL3N0eWxlcy9zZXR0aW5nc1wiIGFzICo7XG5cbi5idXR0b24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZ2FwOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UsXG4gICAgdHJhbnNmb3JtIDMwMG1zIGVhc2U7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQuYnV0dG9uLWFwcGVhcmFuY2Uge1xuICAgICAgJi0tc29saWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdC1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0LWRpc2FibGVkO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdC1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNCksXG4gICAgICAgICAgMCAwIDI0cHggcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1wcmltYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnktaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUtZGFzaGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeS1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1uby1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tZ2xvd2luZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCA4cHggcmdiYSgkY29sb3ItcHJpbWFyeSwgMC41KSxcbiAgICAgICAgICAwIDAgMTZweCByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2Vjb25kYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5LWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc3VjY2Vzcy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc3VjY2VzcywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWVycm9yLmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWVycm9yO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1lcnJvcjtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvciwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0td2FybmluZy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2FybmluZztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itd2FybmluZywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtc2l6ZSB7XG4gICAgJi0teHNtIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgLy8gMTJweFxuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07IC8vIDE2cHhcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtOyAvLyA0cHggOHB4XG4gICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMXJlbTsgLy8gMTZweFxuICAgICAgICBtYXgtd2lkdGg6IDFyZW07IC8vIDE2cHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zbSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsgLy8gNnB4IDEycHhcbiAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxLjEyNXJlbTsgLy8gMThweFxuICAgICAgICBtYXgtd2lkdGg6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgLy8gOHB4IDE2cHhcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgICAgd2lkdGg6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgLy8gMjhweFxuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTsgLy8gMTBweCAyMHB4XG4gICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS4zNzVyZW07IC8vIDIycHhcbiAgICAgICAgbWF4LXdpZHRoOiAxLjM3NXJlbTsgLy8gMjJweFxuICAgICAgfVxuICAgIH1cblxuICAgICYtLXhsZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyAvLyAyOHB4XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgLy8gMTJweCAyNHB4XG4gICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICAgIG1heC13aWR0aDogMS41cmVtOyAvLyAyNHB4XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1yYWRpdXMge1xuICAgICYtLW5vbmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMHJlbTsgLy8gMHB4XG4gICAgfVxuXG4gICAgJi0tc20ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07IC8vIDJweFxuICAgIH1cblxuICAgICYtLW1kIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtOyAvLyA2cHhcbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07IC8vIDhweFxuICAgIH1cblxuICAgICYtLWZ1bGwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtOyAvLyAyNHB4XG4gICAgfVxuICB9XG5cbiAgLmljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiA1O1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vID09PSBEZXNpZ24gVG9rZW5zIOKAlCBDb2xvciBQYWxldHRlID09PVxuXG4vLyBCYXNlXG4kd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMwMDAwMDA7XG4kdHJhbnNwYXJlbnQ6IHRyYW5zcGFyZW50O1xuXG4vLyA9PT0gQmxhY2sgVHJhbnNwYXJlbnQgU2NhbGUgPT09XG4kYmxhY2stdHJhbnNwYXJlbnQtMTAwOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtMjAwOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4kYmxhY2stdHJhbnNwYXJlbnQtMzAwOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNDAwOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNTAwOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNjAwOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4kYmxhY2stdHJhbnNwYXJlbnQtNzAwOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtODAwOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtOTAwOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiR3aGl0ZS10cmFuc3BhcmVudC0xMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0yMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0zMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiR3aGl0ZS10cmFuc3BhcmVudC00MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiR3aGl0ZS10cmFuc3BhcmVudC01MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiR3aGl0ZS10cmFuc3BhcmVudC02MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiR3aGl0ZS10cmFuc3BhcmVudC03MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiR3aGl0ZS10cmFuc3BhcmVudC04MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiR3aGl0ZS10cmFuc3BhcmVudC05MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcblxuLy8gPT09IE5ldXRyYWwgU2NhbGUgKEdyZXkpID09PVxuJGdyZXktNTA6ICNmOWZhZmI7XG4kZ3JleS0xMDA6ICNmM2Y0ZjY7XG4kZ3JleS0yMDA6ICNlNWU3ZWI7XG4kZ3JleS0zMDA6ICNkMWQ1ZGI7XG4kZ3JleS00MDA6ICM5Y2EzYWY7XG4kZ3JleS01MDA6ICM2YjcyODA7XG4kZ3JleS02MDA6ICM0YjU1NjM7XG4kZ3JleS03MDA6ICMzNzQxNTE7XG4kZ3JleS04MDA6ICMxZjI5Mzc7XG4kZ3JleS05MDA6ICMxMTE4Mjc7XG5cbi8vID09PSBQcmltYXJ5IFNjYWxlIChCbHVlKSA9PT1cbiRibHVlLTUwOiAjZWZmNmZmO1xuJGJsdWUtMTAwOiAjZGJlYWZlO1xuJGJsdWUtMjAwOiAjYmZkYmZlO1xuJGJsdWUtMzAwOiAjOTNjNWZkO1xuJGJsdWUtNDAwOiAjNjBhNWZhO1xuJGJsdWUtNTAwOiAjM2I4MmY2O1xuJGJsdWUtNjAwOiAjMjU2M2ViOyAvLyBNYWluXG4kYmx1ZS03MDA6ICMxZDRlZDg7IC8vIEhvdmVyXG4kYmx1ZS04MDA6ICMxZTQwYWY7XG4kYmx1ZS05MDA6ICMxZTNhOGE7XG5cbi8vID09PSBTZWNvbmRhcnkgU2NhbGUgKEluZGlnbykgPT09XG4kaW5kaWdvLTUwOiAjZWVmMmZmO1xuJGluZGlnby0xMDA6ICNlMGU3ZmY7XG4kaW5kaWdvLTIwMDogI2M3ZDJmZTtcbiRpbmRpZ28tMzAwOiAjYTViNGZjO1xuJGluZGlnby00MDA6ICM4MThjZjg7XG4kaW5kaWdvLTUwMDogIzYzNjZmMTtcbiRpbmRpZ28tNjAwOiAjNGY0NmU1OyAvLyBNYWluXG4kaW5kaWdvLTcwMDogIzQzMzhjYTsgLy8gSG92ZXJcblxuLy8gPT09IEVycm9yIFNjYWxlIChSZWQpID09PVxuJHJlZC01MDogI2ZlZjJmMjtcbiRyZWQtMTAwOiAjZmVlMmUyO1xuJHJlZC0yMDA6ICNmZWNhY2E7XG4kcmVkLTMwMDogI2ZjYTVhNTtcbiRyZWQtNDAwOiAjZjg3MTcxO1xuJHJlZC01MDA6ICNlZjQ0NDQ7XG4kcmVkLTYwMDogI2RjMjYyNjsgLy8gTWFpblxuJHJlZC03MDA6ICNiOTFjMWM7IC8vIEhvdmVyXG5cbi8vID09PSBTdWNjZXNzIFNjYWxlIChHcmVlbikgPT09XG4kZ3JlZW4tNTA6ICNmMGZkZjQ7XG4kZ3JlZW4tMTAwOiAjZGNmY2U3O1xuJGdyZWVuLTIwMDogI2JiZjdkMDtcbiRncmVlbi0zMDA6ICM4NmVmYWM7XG4kZ3JlZW4tNDAwOiAjNGFkZTgwO1xuJGdyZWVuLTUwMDogIzIyYzU1ZTtcbiRncmVlbi02MDA6ICMxNmEzNGE7IC8vIE1haW5cbiRncmVlbi03MDA6ICMxNTgwM2Q7IC8vIEhvdmVyXG5cbi8vID09PSBXYXJuaW5nIFNjYWxlIChBbWJlcikgPT09XG4kYW1iZXItNTA6ICNmZmZiZWI7XG4kYW1iZXItMTAwOiAjZmVmM2M3O1xuJGFtYmVyLTIwMDogI2ZkZTY4YTtcbiRhbWJlci0zMDA6ICNmY2QzNGQ7XG4kYW1iZXItNDAwOiAjZmJiZjI0O1xuJGFtYmVyLTUwMDogI2Y1OWUwYjtcbiRhbWJlci02MDA6ICNkOTc3MDY7IC8vIE1haW5cbiRhbWJlci03MDA6ICNiNDUzMDk7IC8vIEhvdmVyXG5cbi8vID09PSBTZW1hbnRpYyBUb2tlbnMgPT09XG4kY29sb3ItZGVmYXVsdDogJGdyZXktODAwO1xuJGNvbG9yLWRlZmF1bHQtaG92ZXI6ICRncmV5LTkwMDtcbiRjb2xvci1kZWZhdWx0LWRpc2FibGVkOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpO1xuXG4kY29sb3ItcHJpbWFyeTogJGJsdWUtNjAwO1xuJGNvbG9yLXByaW1hcnktaG92ZXI6ICRibHVlLTcwMDtcbiRjb2xvci1wcmltYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjUpO1xuXG4kY29sb3Itc2Vjb25kYXJ5OiAkaW5kaWdvLTYwMDtcbiRjb2xvci1zZWNvbmRhcnktaG92ZXI6ICRpbmRpZ28tNzAwO1xuJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjUpO1xuXG4kY29sb3ItZXJyb3I6ICRyZWQtNjAwO1xuJGNvbG9yLWVycm9yLWhvdmVyOiAkcmVkLTcwMDtcbiRjb2xvci1lcnJvci1kaXNhYmxlZDogcmdiYSgkY29sb3ItZXJyb3IsIDAuNSk7XG5cbiRjb2xvci1zdWNjZXNzOiAkZ3JlZW4tNjAwO1xuJGNvbG9yLXN1Y2Nlc3MtaG92ZXI6ICRncmVlbi03MDA7XG4kY29sb3Itc3VjY2Vzcy1kaXNhYmxlZDogcmdiYSgkY29sb3Itc3VjY2VzcywgMC41KTtcblxuJGNvbG9yLXdhcm5pbmc6ICRhbWJlci02MDA7XG4kY29sb3Itd2FybmluZy1ob3ZlcjogJGFtYmVyLTcwMDtcbiRjb2xvci13YXJuaW5nLWRpc2FibGVkOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjUpO1xuXG4kdGV4dC1jb2xvci13aGl0ZTogJHdoaXRlO1xuJHRleHQtY29sb3ItYmxhY2s6ICRibGFjaztcbiR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiR0ZXh0LWNvbG9yLWJsYWNrLWRpc2FibGVkOiByZ2JhKCRibGFjaywgMC41KTtcblxuLy8gPT09IFNoYWRvd3MgPT09XG4kc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2JhKCRibGFjaywgMC4wNSk7XG4kc2hhZG93LW1kOlxuICAwIDRweCA2cHggLTFweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCAycHggNHB4IC0xcHggcmdiYSgkYmxhY2ssIDAuMDYpO1xuJHNoYWRvdy1sZzpcbiAgMCAxMHB4IDE1cHggLTNweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCA0cHggNnB4IC0ycHggcmdiYSgkYmxhY2ssIDAuMDUpO1xuXG4vLyA9PT0gRm9udCBmYW1pbGllcyA9PT1cbiRmb250LWZhbWlseS1zYW5zOiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6IFwiR2VvcmdpYVwiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcIkZpcmEgQ29kZVwiLCBtb25vc3BhY2U7XG5cbi8vID09PSBGb250IHdlaWdodHMgPT09XG4kZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuXG4vLyA9PT0gTGluZSBoZWlnaHRzID09PVxuJGxpbmUtaGVpZ2h0LXRpZ2h0OiAxLjI7XG4kbGluZS1oZWlnaHQtc251ZzogMS4zNzU7XG4kbGluZS1oZWlnaHQtbm9ybWFsOiAxLjU7XG4kbGluZS1oZWlnaHQtbG9vc2U6IDEuNjI1O1xuXG4vLyA9PT0gRm9udCBTaXplcyDigJQgU2VtYW50aWMgVG9rZW5zID09PVxuXG4vLyA9PT0gVGl0bGVzID09PVxuJGZvbnQtc2l6ZS1oZXJvOiAzcmVtOyAvLyA0OHB4XG4kZm9udC1zaXplLXRpdGxlLTE6IDIuMjVyZW07IC8vIDM2cHhcbiRmb250LXNpemUtdGl0bGUtMjogMS44NzVyZW07IC8vIDMwcHhcbiRmb250LXNpemUtdGl0bGUtMzogMS41cmVtOyAvLyAyNHB4XG5cbi8vID09PSBTdWJ0aXRsZXMgPT09XG4kZm9udC1zaXplLXN1YnRpdGxlLTE6IDEuMjVyZW07IC8vIDIwcHhcbiRmb250LXNpemUtc3VidGl0bGUtMjogMS4xMjVyZW07IC8vIDE4cHhcblxuLy8gPT09IEJvZHkgdGV4dCA9PT1cbiRmb250LXNpemUtYm9keS1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1ib2R5LW1kOiAwLjkzNzVyZW07IC8vIDE1cHhcbiRmb250LXNpemUtYm9keS1zbTogMC44NzVyZW07IC8vIDE0cHhcblxuLy8gPT09IENhcHRpb25zIC8gRGVzY3JpcHRpb25zID09PVxuJGZvbnQtc2l6ZS1jYXB0aW9uOiAwLjc1cmVtOyAvLyAxMnB4XG4kZm9udC1zaXplLWZvb3Rub3RlOiAwLjY4NzVyZW07IC8vIDExcHhcblxuLy8gPT09IEJ1dHRvbnMgPT09XG4kZm9udC1zaXplLWJ1dHRvbi1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1idXR0b24tbWQ6IDAuODc1cmVtOyAvLyAxNHB4XG4kZm9udC1zaXplLWJ1dHRvbi1zbTogMC43NXJlbTsgLy8gMTJweFxuXG4vLyA9PT0gQW5pbWF0aW9ucyA9PT1cblxuJGN1YmljLWJlemllci1wcmltYXJ5OiBjdWJpYy1iZXppZXIoMC41NSwgLTAuMTksIDAuNTksIDAuOTUpO1xuJGN1YmljLWJlemllci1zZWNvbmRhcnk6IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiJdfQ== */","\"use client\";\n\nimport * as React from \"react\";\nimport { type IButton, Button } from \"../Button\";\n\nimport styles from \"./ButtonGroup.module.scss\";\n\nexport interface IButtonGroup {\n children:\n | React.ReactElement<IButton, typeof Button>\n | React.ReactElement<IButton, typeof Button>[];\n align?: \"vertical\" | \"horizontal\";\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n disabled?: boolean;\n className?: string;\n}\n\nexport const ButtonGroup: React.FC<IButtonGroup> = ({\n children,\n align = \"horizontal\",\n variant = \"default\",\n size = \"md\",\n radius = \"md\",\n disabled,\n className = \"\",\n}) => {\n return (\n <div\n className={`${styles[\"button-group\"]} ${styles[`button-group-variant--${variant}`]} ${styles[`button-group-size--${size}`]} ${styles[`button-group-radius--${radius}`]} ${styles[`button-group-align--${align}`]} ${className}`}\n >\n {React.Children.toArray(children)\n .filter(\n (child): child is React.ReactElement<IButton, typeof Button> =>\n React.isValidElement(child) && child.type === Button\n )\n .map((child, index) =>\n React.cloneElement(child, {\n key: index || child.key,\n size: size || child.props.size,\n disabled: disabled || child.props.disabled,\n variant: variant || child.props.variant,\n radius: \"none\",\n })\n )}\n </div>\n );\n};\n",".button-group {\n align-items: center;\n display: flex;\n overflow: hidden;\n max-width: max-content;\n}\n.button-group-align--horizontal {\n flex-direction: row;\n}\n.button-group-align--vertical {\n flex-direction: column;\n}\n.button-group-variant--default {\n background-color: #1f2937;\n}\n.button-group-variant--primary {\n background-color: #2563eb;\n}\n.button-group-variant--secondary {\n background-color: #4f46e5;\n}\n.button-group-variant--success {\n background-color: #16a34a;\n}\n.button-group-variant--error {\n background-color: #dc2626;\n}\n.button-group-variant--warning {\n background-color: #d97706;\n}\n.button-group-radius--none {\n border-radius: 0rem;\n}\n.button-group-radius--sm {\n border-radius: 0.125rem;\n}\n.button-group-radius--md {\n border-radius: 0.375rem;\n}\n.button-group-radius--lg {\n border-radius: 0.5rem;\n}\n.button-group-radius--full {\n border-radius: 1.5rem;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbkdyb3VwIiwic291cmNlcyI6WyJCdXR0b25Hcm91cC5tb2R1bGUuc2NzcyIsIi4uLy4uL3N0eWxlcy9fc2V0dGluZ3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFLGtCQ2tCSzs7QURmUDtFQUNFLGtCQ3dCSzs7QURyQlA7RUFDRSxrQkNnQ087O0FEN0JUO0VBQ0Usa0JDZ0RNOztBRDdDUjtFQUNFLGtCQ2tDSTs7QUQvQk47RUFDRSxrQkNrRE07O0FEN0NSO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi8uLi9zdHlsZXMvc2V0dGluZ3NcIiBhcyAqO1xuXG4uYnV0dG9uLWdyb3VwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcblxuICAmLWFsaWduIHtcbiAgICAmLS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgJi0tdmVydGljYWwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi0tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAmLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIH1cblxuICAgICYtLWVycm9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICB9XG5cbiAgICAmLS13YXJuaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgIH1cbiAgfVxuXG4gICYtcmFkaXVzIHtcbiAgICAmLS1ub25lIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDByZW07IC8vIDBweFxuICAgIH1cblxuICAgICYtLXNtIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtOyAvLyAycHhcbiAgICB9XG5cbiAgICAmLS1tZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTsgLy8gNnB4XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtOyAvLyA4cHhcbiAgICB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTsgLy8gMjRweFxuICAgIH1cbiAgfVxufVxuIiwiLy8gPT09IERlc2lnbiBUb2tlbnMg4oCUIENvbG9yIFBhbGV0dGUgPT09XG5cbi8vIEJhc2VcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibGFjazogIzAwMDAwMDtcbiR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiRibGFjay10cmFuc3BhcmVudC0xMDA6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRibGFjay10cmFuc3BhcmVudC0yMDA6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRibGFjay10cmFuc3BhcmVudC0zMDA6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRibGFjay10cmFuc3BhcmVudC00MDA6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiRibGFjay10cmFuc3BhcmVudC01MDA6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRibGFjay10cmFuc3BhcmVudC02MDA6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiRibGFjay10cmFuc3BhcmVudC03MDA6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRibGFjay10cmFuc3BhcmVudC04MDA6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiRibGFjay10cmFuc3BhcmVudC05MDA6IHJnYmEoMCwgMCwgMCwgMC45KTtcblxuLy8gPT09IEJsYWNrIFRyYW5zcGFyZW50IFNjYWxlID09PVxuJHdoaXRlLXRyYW5zcGFyZW50LTEwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTIwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTMwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTQwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTUwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTYwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTcwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTgwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTkwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuXG4vLyA9PT0gTmV1dHJhbCBTY2FsZSAoR3JleSkgPT09XG4kZ3JleS01MDogI2Y5ZmFmYjtcbiRncmV5LTEwMDogI2YzZjRmNjtcbiRncmV5LTIwMDogI2U1ZTdlYjtcbiRncmV5LTMwMDogI2QxZDVkYjtcbiRncmV5LTQwMDogIzljYTNhZjtcbiRncmV5LTUwMDogIzZiNzI4MDtcbiRncmV5LTYwMDogIzRiNTU2MztcbiRncmV5LTcwMDogIzM3NDE1MTtcbiRncmV5LTgwMDogIzFmMjkzNztcbiRncmV5LTkwMDogIzExMTgyNztcblxuLy8gPT09IFByaW1hcnkgU2NhbGUgKEJsdWUpID09PVxuJGJsdWUtNTA6ICNlZmY2ZmY7XG4kYmx1ZS0xMDA6ICNkYmVhZmU7XG4kYmx1ZS0yMDA6ICNiZmRiZmU7XG4kYmx1ZS0zMDA6ICM5M2M1ZmQ7XG4kYmx1ZS00MDA6ICM2MGE1ZmE7XG4kYmx1ZS01MDA6ICMzYjgyZjY7XG4kYmx1ZS02MDA6ICMyNTYzZWI7IC8vIE1haW5cbiRibHVlLTcwMDogIzFkNGVkODsgLy8gSG92ZXJcbiRibHVlLTgwMDogIzFlNDBhZjtcbiRibHVlLTkwMDogIzFlM2E4YTtcblxuLy8gPT09IFNlY29uZGFyeSBTY2FsZSAoSW5kaWdvKSA9PT1cbiRpbmRpZ28tNTA6ICNlZWYyZmY7XG4kaW5kaWdvLTEwMDogI2UwZTdmZjtcbiRpbmRpZ28tMjAwOiAjYzdkMmZlO1xuJGluZGlnby0zMDA6ICNhNWI0ZmM7XG4kaW5kaWdvLTQwMDogIzgxOGNmODtcbiRpbmRpZ28tNTAwOiAjNjM2NmYxO1xuJGluZGlnby02MDA6ICM0ZjQ2ZTU7IC8vIE1haW5cbiRpbmRpZ28tNzAwOiAjNDMzOGNhOyAvLyBIb3ZlclxuXG4vLyA9PT0gRXJyb3IgU2NhbGUgKFJlZCkgPT09XG4kcmVkLTUwOiAjZmVmMmYyO1xuJHJlZC0xMDA6ICNmZWUyZTI7XG4kcmVkLTIwMDogI2ZlY2FjYTtcbiRyZWQtMzAwOiAjZmNhNWE1O1xuJHJlZC00MDA6ICNmODcxNzE7XG4kcmVkLTUwMDogI2VmNDQ0NDtcbiRyZWQtNjAwOiAjZGMyNjI2OyAvLyBNYWluXG4kcmVkLTcwMDogI2I5MWMxYzsgLy8gSG92ZXJcblxuLy8gPT09IFN1Y2Nlc3MgU2NhbGUgKEdyZWVuKSA9PT1cbiRncmVlbi01MDogI2YwZmRmNDtcbiRncmVlbi0xMDA6ICNkY2ZjZTc7XG4kZ3JlZW4tMjAwOiAjYmJmN2QwO1xuJGdyZWVuLTMwMDogIzg2ZWZhYztcbiRncmVlbi00MDA6ICM0YWRlODA7XG4kZ3JlZW4tNTAwOiAjMjJjNTVlO1xuJGdyZWVuLTYwMDogIzE2YTM0YTsgLy8gTWFpblxuJGdyZWVuLTcwMDogIzE1ODAzZDsgLy8gSG92ZXJcblxuLy8gPT09IFdhcm5pbmcgU2NhbGUgKEFtYmVyKSA9PT1cbiRhbWJlci01MDogI2ZmZmJlYjtcbiRhbWJlci0xMDA6ICNmZWYzYzc7XG4kYW1iZXItMjAwOiAjZmRlNjhhO1xuJGFtYmVyLTMwMDogI2ZjZDM0ZDtcbiRhbWJlci00MDA6ICNmYmJmMjQ7XG4kYW1iZXItNTAwOiAjZjU5ZTBiO1xuJGFtYmVyLTYwMDogI2Q5NzcwNjsgLy8gTWFpblxuJGFtYmVyLTcwMDogI2I0NTMwOTsgLy8gSG92ZXJcblxuLy8gPT09IFNlbWFudGljIFRva2VucyA9PT1cbiRjb2xvci1kZWZhdWx0OiAkZ3JleS04MDA7XG4kY29sb3ItZGVmYXVsdC1ob3ZlcjogJGdyZXktOTAwO1xuJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNSk7XG5cbiRjb2xvci1wcmltYXJ5OiAkYmx1ZS02MDA7XG4kY29sb3ItcHJpbWFyeS1ob3ZlcjogJGJsdWUtNzAwO1xuJGNvbG9yLXByaW1hcnktZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuNSk7XG5cbiRjb2xvci1zZWNvbmRhcnk6ICRpbmRpZ28tNjAwO1xuJGNvbG9yLXNlY29uZGFyeS1ob3ZlcjogJGluZGlnby03MDA7XG4kY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSk7XG5cbiRjb2xvci1lcnJvcjogJHJlZC02MDA7XG4kY29sb3ItZXJyb3ItaG92ZXI6ICRyZWQtNzAwO1xuJGNvbG9yLWVycm9yLWRpc2FibGVkOiByZ2JhKCRjb2xvci1lcnJvciwgMC41KTtcblxuJGNvbG9yLXN1Y2Nlc3M6ICRncmVlbi02MDA7XG4kY29sb3Itc3VjY2Vzcy1ob3ZlcjogJGdyZWVuLTcwMDtcbiRjb2xvci1zdWNjZXNzLWRpc2FibGVkOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjUpO1xuXG4kY29sb3Itd2FybmluZzogJGFtYmVyLTYwMDtcbiRjb2xvci13YXJuaW5nLWhvdmVyOiAkYW1iZXItNzAwO1xuJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSk7XG5cbiR0ZXh0LWNvbG9yLXdoaXRlOiAkd2hpdGU7XG4kdGV4dC1jb2xvci1ibGFjazogJGJsYWNrO1xuJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJHRleHQtY29sb3ItYmxhY2stZGlzYWJsZWQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuXG4vLyA9PT0gU2hhZG93cyA9PT1cbiRzaGFkb3ctc206IDAgMXB4IDJweCAwIHJnYmEoJGJsYWNrLCAwLjA1KTtcbiRzaGFkb3ctbWQ6XG4gIDAgNHB4IDZweCAtMXB4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKCRibGFjaywgMC4wNik7XG4kc2hhZG93LWxnOlxuICAwIDEwcHggMTVweCAtM3B4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDRweCA2cHggLTJweCByZ2JhKCRibGFjaywgMC4wNSk7XG5cbi8vID09PSBGb250IGZhbWlsaWVzID09PVxuJGZvbnQtZmFtaWx5LXNhbnM6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zZXJpZjogXCJHZW9yZ2lhXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm86IFwiRmlyYSBDb2RlXCIsIG1vbm9zcGFjZTtcblxuLy8gPT09IEZvbnQgd2VpZ2h0cyA9PT1cbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vID09PSBMaW5lIGhlaWdodHMgPT09XG4kbGluZS1oZWlnaHQtdGlnaHQ6IDEuMjtcbiRsaW5lLWhlaWdodC1zbnVnOiAxLjM3NTtcbiRsaW5lLWhlaWdodC1ub3JtYWw6IDEuNTtcbiRsaW5lLWhlaWdodC1sb29zZTogMS42MjU7XG5cbi8vID09PSBGb250IFNpemVzIOKAlCBTZW1hbnRpYyBUb2tlbnMgPT09XG5cbi8vID09PSBUaXRsZXMgPT09XG4kZm9udC1zaXplLWhlcm86IDNyZW07IC8vIDQ4cHhcbiRmb250LXNpemUtdGl0bGUtMTogMi4yNXJlbTsgLy8gMzZweFxuJGZvbnQtc2l6ZS10aXRsZS0yOiAxLjg3NXJlbTsgLy8gMzBweFxuJGZvbnQtc2l6ZS10aXRsZS0zOiAxLjVyZW07IC8vIDI0cHhcblxuLy8gPT09IFN1YnRpdGxlcyA9PT1cbiRmb250LXNpemUtc3VidGl0bGUtMTogMS4yNXJlbTsgLy8gMjBweFxuJGZvbnQtc2l6ZS1zdWJ0aXRsZS0yOiAxLjEyNXJlbTsgLy8gMThweFxuXG4vLyA9PT0gQm9keSB0ZXh0ID09PVxuJGZvbnQtc2l6ZS1ib2R5LWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJvZHktbWQ6IDAuOTM3NXJlbTsgLy8gMTVweFxuJGZvbnQtc2l6ZS1ib2R5LXNtOiAwLjg3NXJlbTsgLy8gMTRweFxuXG4vLyA9PT0gQ2FwdGlvbnMgLyBEZXNjcmlwdGlvbnMgPT09XG4kZm9udC1zaXplLWNhcHRpb246IDAuNzVyZW07IC8vIDEycHhcbiRmb250LXNpemUtZm9vdG5vdGU6IDAuNjg3NXJlbTsgLy8gMTFweFxuXG4vLyA9PT0gQnV0dG9ucyA9PT1cbiRmb250LXNpemUtYnV0dG9uLWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJ1dHRvbi1tZDogMC44NzVyZW07IC8vIDE0cHhcbiRmb250LXNpemUtYnV0dG9uLXNtOiAwLjc1cmVtOyAvLyAxMnB4XG5cbi8vID09PSBBbmltYXRpb25zID09PVxuXG4kY3ViaWMtYmV6aWVyLXByaW1hcnk6IGN1YmljLWJlemllcigwLjU1LCAtMC4xOSwgMC41OSwgMC45NSk7XG4kY3ViaWMtYmV6aWVyLXNlY29uZGFyeTogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuIl19 */"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEA,YAAuB;AACvB,qBAAwB;;;ACKjB,IAAM,eAAe,CAA0C;AAAA,EACpE;AAAA,EACA;AAAA,EACA;AACF,MAAqC;AACnC,QAAM,SAAS,IAAI;AACnB,MAAI,CAAC,OAAQ;AAEb,QAAM,SAAS,SAAS,cAAc,MAAM;AAC5C,QAAM,WAAW,KAAK,IAAI,OAAO,aAAa,OAAO,YAAY;AACjE,QAAM,SAAS,WAAW;AAE1B,SAAO,KAAK;AAEZ,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKF,QAAQ;AAAA,gBACV,UAAU,OAAO,sBAAsB,EAAE,OAAO,MAAM;AAAA;AAAA;AAAA,eAGvD,UAAU,OAAO,sBAAsB,EAAE,MAAM,MAAM;AAAA;AAAA,iBAEnD,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYvB,SAAO,YAAY,KAAK;AACxB,SAAO,YAAY,MAAM;AAEzB,SAAO,iBAAiB,gBAAgB,MAAM;AAC5C,WAAO,OAAO;AACd,UAAM,OAAO;AAAA,EACf,CAAC;AACH;;;ACrDA;;;AF2DI;AA1BG,IAAM,SAA4B,CAAC;AAAA,EACxC;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,aAAa;AAAA,EACb,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,cAAc;AAAA,EACd,YAAY;AAAA,EACZ;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,MAAY,aAA0B,IAAI;AAEhD,QAAM,cAAc,CAAC,MAAuD;AAC1E,UAAM,EAAE,SAAS,QAAQ,IAAI;AAC7B,iBAAgC,EAAE,KAAK,SAAS,QAAQ,CAAC;AACzD,QAAI,SAAS;AACX,cAAQ,CAAC;AAAA,IACX;AAAA,EACF;AAEA,QAAMA,YAAW,MAAG;AA1DtB;AA2DI,uFACG;AAAA,mBACC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,MAAM;AAAA,UACN,WAAW,sBAAO,SAAS;AAAA;AAAA,MAC7B;AAAA,MAED,QACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,GAAG,sBAAO,MAAM,CAAC,IAAI,sBAAO,UAAS,UAAK,UAAL,YAAc,MAAM,EAAE,CAAC;AAAA,UAEtE,UAAM,oBAAc,KAAK,SAAS;AAAA;AAAA,MACrC;AAAA,MAED;AAAA,OACH;AAAA;AAGF,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,WAAW,GAAG,sBAAO,QAAQ,CAAC,IAAI,sBAAO,mBAAmB,OAAO,EAAE,CAAC,IAAI,sBAAO,sBAAsB,UAAU,EAAE,CAAC,IAAI,sBAAO,gBAAgB,IAAI,EAAE,CAAC,IAAI,sBAAO,kBAAkB,MAAM,EAAE,CAAC,IAAI,YAAY,sBAAO,iBAAiB,IAAI,EAAE,IAAI,SAAS;AAAA,MACvP,SAAS;AAAA,MACR,GAAI,0BACD,EAAE,wBAAwB,IAC1B,EAAE,UAAU,4CAACA,WAAA,EAAS,EAAG;AAAA,MAC5B,GAAG;AAAA;AAAA,EACN;AAEJ;;;AGzFA,IAAAC,SAAuB;;;ACFvB;;;ADmCI,IAAAC,sBAAA;AAVG,IAAM,cAAsC,CAAC;AAAA,EAClD;AAAA,EACA,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,YAAY;AACd,MAAM;AACJ,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,2BAAO,cAAc,CAAC,IAAI,2BAAO,yBAAyB,OAAO,EAAE,CAAC,IAAI,2BAAO,sBAAsB,IAAI,EAAE,CAAC,IAAI,2BAAO,wBAAwB,MAAM,EAAE,CAAC,IAAI,2BAAO,uBAAuB,KAAK,EAAE,CAAC,IAAI,SAAS;AAAA,MAE5N,UAAM,gBAAS,QAAQ,QAAQ,EAC7B;AAAA,QACC,CAAC,UACO,sBAAe,KAAK,KAAK,MAAM,SAAS;AAAA,MAClD,EACC;AAAA,QAAI,CAAC,OAAO,UACL,oBAAa,OAAO;AAAA,UACxB,KAAK,SAAS,MAAM;AAAA,UACpB,MAAM,QAAQ,MAAM,MAAM;AAAA,UAC1B,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC,SAAS,WAAW,MAAM,MAAM;AAAA,UAChC,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA;AAAA,EACJ;AAEJ;","names":["Children","React","import_jsx_runtime"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,31 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
5
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
-
var __spreadValues = (a, b) => {
|
|
7
|
-
for (var prop in b || (b = {}))
|
|
8
|
-
if (__hasOwnProp.call(b, prop))
|
|
9
|
-
__defNormalProp(a, prop, b[prop]);
|
|
10
|
-
if (__getOwnPropSymbols)
|
|
11
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
12
|
-
if (__propIsEnum.call(b, prop))
|
|
13
|
-
__defNormalProp(a, prop, b[prop]);
|
|
14
|
-
}
|
|
15
|
-
return a;
|
|
16
|
-
};
|
|
17
|
-
var __objRest = (source, exclude) => {
|
|
18
|
-
var target = {};
|
|
19
|
-
for (var prop in source)
|
|
20
|
-
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
|
|
21
|
-
target[prop] = source[prop];
|
|
22
|
-
if (source != null && __getOwnPropSymbols)
|
|
23
|
-
for (var prop of __getOwnPropSymbols(source)) {
|
|
24
|
-
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
|
|
25
|
-
target[prop] = source[prop];
|
|
26
|
-
}
|
|
27
|
-
return target;
|
|
28
|
-
};
|
|
1
|
+
"use client";
|
|
29
2
|
|
|
30
3
|
// components/Button/index.tsx
|
|
31
4
|
import * as React from "react";
|
|
@@ -79,34 +52,21 @@ var Button_module_default = {};
|
|
|
79
52
|
|
|
80
53
|
// components/Button/index.tsx
|
|
81
54
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
82
|
-
var Button = (
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
"onClick",
|
|
98
|
-
"children",
|
|
99
|
-
"variant",
|
|
100
|
-
"appearance",
|
|
101
|
-
"size",
|
|
102
|
-
"radius",
|
|
103
|
-
"icon",
|
|
104
|
-
"spinnerType",
|
|
105
|
-
"isLoading",
|
|
106
|
-
"disabled",
|
|
107
|
-
"className",
|
|
108
|
-
"dangerouslySetInnerHTML"
|
|
109
|
-
]);
|
|
55
|
+
var Button = ({
|
|
56
|
+
onClick,
|
|
57
|
+
children,
|
|
58
|
+
variant = "default",
|
|
59
|
+
appearance = "solid",
|
|
60
|
+
size = "md",
|
|
61
|
+
radius = "md",
|
|
62
|
+
icon,
|
|
63
|
+
spinnerType = "default",
|
|
64
|
+
isLoading = false,
|
|
65
|
+
disabled,
|
|
66
|
+
className = "",
|
|
67
|
+
dangerouslySetInnerHTML,
|
|
68
|
+
...restProps
|
|
69
|
+
}) => {
|
|
110
70
|
const ref = React.useRef(null);
|
|
111
71
|
const handleClick = (e) => {
|
|
112
72
|
const { clientX, clientY } = e;
|
|
@@ -116,7 +76,7 @@ var Button = (_a) => {
|
|
|
116
76
|
}
|
|
117
77
|
};
|
|
118
78
|
const Children2 = () => {
|
|
119
|
-
var
|
|
79
|
+
var _a;
|
|
120
80
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
121
81
|
isLoading && /* @__PURE__ */ jsx(
|
|
122
82
|
Spinner,
|
|
@@ -130,7 +90,7 @@ var Button = (_a) => {
|
|
|
130
90
|
icon && /* @__PURE__ */ jsx(
|
|
131
91
|
"span",
|
|
132
92
|
{
|
|
133
|
-
className: `${Button_module_default["icon"]} ${Button_module_default[`icon--${(
|
|
93
|
+
className: `${Button_module_default["icon"]} ${Button_module_default[`icon--${(_a = icon.align) != null ? _a : "left"}`]}`,
|
|
134
94
|
children: React.createElement(icon.component)
|
|
135
95
|
}
|
|
136
96
|
),
|
|
@@ -139,12 +99,14 @@ var Button = (_a) => {
|
|
|
139
99
|
};
|
|
140
100
|
return /* @__PURE__ */ jsx(
|
|
141
101
|
"button",
|
|
142
|
-
|
|
102
|
+
{
|
|
143
103
|
ref,
|
|
144
104
|
disabled: disabled || isLoading,
|
|
145
105
|
className: `${Button_module_default["button"]} ${Button_module_default[`button-variant--${variant}`]} ${Button_module_default[`button-appearance--${appearance}`]} ${Button_module_default[`button-size--${size}`]} ${Button_module_default[`button-radius--${radius}`]} ${isLoading ? Button_module_default["button--loading"] : ""} ${className}`,
|
|
146
|
-
onClick: handleClick
|
|
147
|
-
|
|
106
|
+
onClick: handleClick,
|
|
107
|
+
...dangerouslySetInnerHTML ? { dangerouslySetInnerHTML } : { children: /* @__PURE__ */ jsx(Children2, {}) },
|
|
108
|
+
...restProps
|
|
109
|
+
}
|
|
148
110
|
);
|
|
149
111
|
};
|
|
150
112
|
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../components/Button/index.tsx","../utils/ripple.tsx","../components/Button/Button.module.scss","../components/ButtonGroup/index.tsx","../components/ButtonGroup/ButtonGroup.module.scss"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Spinner } from \"@aristobyte-ui/spinner\";\n\nimport { renderRipple } from \"../../utils\";\n\nimport styles from \"./Button.module.scss\";\n\nexport interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n appearance?:\n | \"solid\"\n | \"outline\"\n | \"outline-dashed\"\n | \"no-outline\"\n | \"glowing\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n icon?: {\n component: React.ElementType;\n align?: \"left\" | \"right\";\n };\n isLoading?: boolean;\n spinnerType?: \"default\" | \"duo\" | \"gradient\" | \"pulse\" | \"pulse-duo\";\n}\n\nexport const Button: React.FC<IButton> = ({\n onClick,\n children,\n variant = \"default\",\n appearance = \"solid\",\n size = \"md\",\n radius = \"md\",\n icon,\n spinnerType = \"default\",\n isLoading = false,\n disabled,\n className = \"\",\n dangerouslySetInnerHTML,\n ...restProps\n}) => {\n const ref = React.useRef<HTMLButtonElement>(null);\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n const { clientX, clientY } = e;\n renderRipple<HTMLButtonElement>({ ref, clientX, clientY });\n if (onClick) {\n onClick(e);\n }\n };\n\n const Children = () => (\n <>\n {isLoading && (\n <Spinner\n size={size}\n variant={variant}\n type={spinnerType}\n className={styles[\"spinner\"]}\n />\n )}\n {icon && (\n <span\n className={`${styles[\"icon\"]} ${styles[`icon--${icon.align ?? \"left\"}`]}`}\n >\n {React.createElement(icon.component)}\n </span>\n )}\n {children}\n </>\n );\n\n return (\n <button\n ref={ref}\n disabled={disabled || isLoading}\n className={`${styles[\"button\"]} ${styles[`button-variant--${variant}`]} ${styles[`button-appearance--${appearance}`]} ${styles[`button-size--${size}`]} ${styles[`button-radius--${radius}`]} ${isLoading ? styles[\"button--loading\"] : \"\"} ${className}`}\n onClick={handleClick}\n {...(dangerouslySetInnerHTML\n ? { dangerouslySetInnerHTML }\n : { children: <Children /> })}\n {...restProps}\n />\n );\n};\n","type RippleParamsRef = HTMLButtonElement | HTMLAnchorElement;\n\nexport type RippleParams<HTMLElementType extends RippleParamsRef> = {\n ref: React.RefObject<HTMLElementType | null>;\n clientX: number;\n clientY: number;\n};\n\nexport const renderRipple = <HTMLElementType extends RippleParamsRef>({\n ref,\n clientX,\n clientY,\n}: RippleParams<HTMLElementType>) => {\n const button = ref.current;\n if (!button) return;\n\n const circle = document.createElement(\"span\");\n const diameter = Math.max(button.clientWidth, button.clientHeight);\n const radius = diameter / 2;\n\n circle.id = \"ripple\";\n\n const style = document.createElement(\"style\");\n style.innerHTML = `\n #ripple {\n animation: ripple 300ms linear;\n background-color: rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n height: ${diameter}px;\n left: ${clientX - button.getBoundingClientRect().left - radius}px;\n pointer-events: none;\n position: absolute;\n top: ${clientY - button.getBoundingClientRect().top - radius}px;\n transform: scale(0);\n width: ${diameter}px;\n z-index: 0;\n }\n \n @keyframes ripple {\n to {\n opacity: 0;\n transform: scale(2);\n }\n }\n `;\n\n button.appendChild(style);\n button.appendChild(circle);\n\n circle.addEventListener(\"animationend\", () => {\n circle.remove();\n style.remove();\n });\n};\n",".button {\n align-items: center;\n border: none;\n cursor: pointer;\n display: flex;\n font-weight: 500;\n gap: 10px;\n letter-spacing: 0rem;\n line-height: 1.42;\n overflow: hidden;\n position: relative;\n transition: background-color 200ms ease, transform 300ms ease;\n}\n.button:disabled {\n cursor: not-allowed;\n opacity: 1;\n}\n.button:active {\n transform: scale(0.97);\n}\n.button-variant--default.button-appearance--solid {\n background-color: #1f2937;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--solid:hover {\n background-color: #111827;\n}\n.button-variant--default.button-appearance--solid:disabled {\n background-color: rgba(31, 41, 55, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline-dashed:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--no-outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--glowing {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(31, 41, 55, 0.5), 0 0 16px rgba(31, 41, 55, 0.4), 0 0 24px rgba(31, 41, 55, 0.3);\n}\n.button-variant--default.button-appearance--glowing:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--glowing:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid {\n background-color: #2563eb;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid:hover {\n background-color: #1d4ed8;\n}\n.button-variant--primary.button-appearance--solid:disabled {\n background-color: rgba(37, 99, 235, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--no-outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--glowing {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(37, 99, 235, 0.5), 0 0 16px rgba(37, 99, 235, 0.4), 0 0 24px rgba(37, 99, 235, 0.3);\n}\n.button-variant--primary.button-appearance--glowing:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--glowing:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid {\n background-color: #4f46e5;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid:hover {\n background-color: #4338ca;\n}\n.button-variant--secondary.button-appearance--solid:disabled {\n background-color: rgba(79, 70, 229, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--no-outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--glowing {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(79, 70, 229, 0.5), 0 0 16px rgba(79, 70, 229, 0.4), 0 0 24px rgba(79, 70, 229, 0.3);\n}\n.button-variant--secondary.button-appearance--glowing:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--glowing:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid {\n background-color: #16a34a;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid:hover {\n background-color: #15803d;\n}\n.button-variant--success.button-appearance--solid:disabled {\n background-color: rgba(22, 163, 74, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline-dashed:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--no-outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--glowing {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(22, 163, 74, 0.5), 0 0 16px rgba(22, 163, 74, 0.4), 0 0 24px rgba(22, 163, 74, 0.3);\n}\n.button-variant--success.button-appearance--glowing:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--glowing:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid {\n background-color: #dc2626;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid:hover {\n background-color: #b91c1c;\n}\n.button-variant--error.button-appearance--solid:disabled {\n background-color: rgba(220, 38, 38, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline-dashed:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--no-outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--glowing {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(220, 38, 38, 0.5), 0 0 16px rgba(220, 38, 38, 0.4), 0 0 24px rgba(220, 38, 38, 0.3);\n}\n.button-variant--error.button-appearance--glowing:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--glowing:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid {\n background-color: #d97706;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid:hover {\n background-color: #b45309;\n}\n.button-variant--warning.button-appearance--solid:disabled {\n background-color: rgba(217, 119, 6, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--no-outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--glowing {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(217, 119, 6, 0.5), 0 0 16px rgba(217, 119, 6, 0.4), 0 0 24px rgba(217, 119, 6, 0.3);\n}\n.button-variant--warning.button-appearance--glowing:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--glowing:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-size--xsm {\n font-size: 0.75rem;\n line-height: 1rem;\n padding: 0.25rem 0.5rem;\n min-height: 28px;\n}\n.button-size--xsm .spinner,\n.button-size--xsm .icon {\n max-height: 1rem;\n max-width: 1rem;\n}\n.button-size--sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n padding: 0.375rem 0.75rem;\n min-height: 32px;\n}\n.button-size--sm .spinner,\n.button-size--sm .icon {\n max-height: 1.125rem;\n max-width: 1.125rem;\n}\n.button-size--md {\n font-size: 1rem;\n line-height: 1.5rem;\n padding: 0.5rem 1rem;\n min-height: 40px;\n}\n.button-size--md .spinner,\n.button-size--md .icon {\n height: 1.25rem;\n width: 1.25rem;\n}\n.button-size--lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n padding: 0.625rem 1.25rem;\n min-height: 44px;\n}\n.button-size--lg .spinner,\n.button-size--lg .icon {\n max-height: 1.375rem;\n max-width: 1.375rem;\n}\n.button-size--xlg {\n font-size: 1.25rem;\n line-height: 1.75rem;\n padding: 0.75rem 1.5rem;\n min-height: 48px;\n}\n.button-size--xlg .spinner,\n.button-size--xlg .icon {\n max-height: 1.5rem;\n max-width: 1.5rem;\n}\n.button-radius--none {\n border-radius: 0rem;\n}\n.button-radius--sm {\n border-radius: 0.125rem;\n}\n.button-radius--md {\n border-radius: 0.375rem;\n}\n.button-radius--lg {\n border-radius: 0.5rem;\n}\n.button-radius--full {\n border-radius: 1.5rem;\n}\n.button .icon {\n align-items: center;\n display: flex;\n justify-content: center;\n}\n.button .icon--right {\n order: 5;\n}\n.button .icon svg {\n width: 100%;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbiIsInNvdXJjZXMiOlsiQnV0dG9uLm1vZHVsZS5zY3NzIiwiLi4vLi4vc3R5bGVzL19zZXR0aW5ncy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtFO0VBQ0Usa0JDU0c7RURSSDtFQUNBLE9DNUJBOztBRDhCQTtFQUNFLGtCQ0tDOztBREZIO0VBQ0Usa0JDMERlO0VEekRmLE9DaUZrQjs7QUQvRWxCO0VBQ0UsT0M4RWdCOztBRDFFcEI7RUFDRSxPQzVDRjs7QURnREY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3BEQTs7QURzREE7RUFDRSxrQkNwQkM7O0FEdUJIO0VBQ0U7RUFDQSxPQ3lEa0I7O0FEdkRsQjtFQUNFLE9Dc0RnQjs7QURsRHBCO0VBQ0UsT0NwRUY7O0FEd0VGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1RUE7O0FEOEVBO0VBQ0Usa0JDNUNDOztBRCtDSDtFQUNFO0VBQ0EsT0NpQ2tCOztBRC9CbEI7RUFDRSxPQzhCZ0I7O0FEMUJwQjtFQUNFLE9DNUZGOztBRGdHRjtFQUNFO0VBQ0E7RUFDQSxPQ25HQTs7QURxR0E7RUFDRSxrQkNuRUM7O0FEc0VIO0VBQ0U7RUFDQSxPQ1VrQjs7QURSbEI7RUFDRSxPQ09nQjs7QURIcEI7RUFDRSxPQ25IRjs7QUR1SEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzNIQTtFRDRIQSxZQUNFOztBQUlGO0VBQ0Usa0JDL0ZDOztBRGtHSDtFQUNFO0VBQ0EsT0NsQmtCOztBRG9CbEI7RUFDRSxPQ3JCZ0I7O0FEeUJwQjtFQUNFLE9DL0lGOztBRHFKRjtFQUNFLGtCQ3pHRztFRDBHSDtFQUNBLE9DeEpBOztBRDBKQTtFQUNFLGtCQzdHQzs7QURnSEg7RUFDRSxrQkM5RGU7RUQrRGYsT0MzQ2tCOztBRDZDbEI7RUFDRSxPQzlDZ0I7O0FEa0RwQjtFQUNFLE9DeEtGOztBRDRLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaExBOztBRGtMQTtFQUNFLGtCQ3RJQzs7QUR5SUg7RUFDRTtFQUNBLE9DbkVrQjs7QURxRWxCO0VBQ0UsT0N0RWdCOztBRDBFcEI7RUFDRSxPQ2hNRjs7QURvTUY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3hNQTs7QUQwTUE7RUFDRSxrQkM5SkM7O0FEaUtIO0VBQ0U7RUFDQSxPQzNGa0I7O0FENkZsQjtFQUNFLE9DOUZnQjs7QURrR3BCO0VBQ0UsT0N4TkY7O0FENE5GO0VBQ0U7RUFDQTtFQUNBLE9DL05BOztBRGlPQTtFQUNFLGtCQ3JMQzs7QUR3TEg7RUFDRTtFQUNBLE9DbEhrQjs7QURvSGxCO0VBQ0UsT0NySGdCOztBRHlIcEI7RUFDRSxPQy9PRjs7QURtUEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3ZQQTtFRHdQQSxZQUNFOztBQUlGO0VBQ0Usa0JDak5DOztBRG9OSDtFQUNFO0VBQ0EsT0M5SWtCOztBRGdKbEI7RUFDRSxPQ2pKZ0I7O0FEcUpwQjtFQUNFLE9DM1FGOztBRGlSRjtFQUNFLGtCQ3pOSztFRDBOTDtFQUNBLE9DcFJBOztBRHNSQTtFQUNFLGtCQzdORzs7QURnT0w7RUFDRSxrQkN0TGlCO0VEdUxqQixPQ3ZLa0I7O0FEeUtsQjtFQUNFLE9DMUtnQjs7QUQ4S3BCO0VBQ0UsT0NwU0Y7O0FEd1NGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1U0E7O0FEOFNBO0VBQ0Usa0JDdFBHOztBRHlQTDtFQUNFO0VBQ0EsT0MvTGtCOztBRGlNbEI7RUFDRSxPQ2xNZ0I7O0FEc01wQjtFQUNFLE9DNVRGOztBRGdVRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DcFVBOztBRHNVQTtFQUNFLGtCQzlRRzs7QURpUkw7RUFDRTtFQUNBLE9Ddk5rQjs7QUR5TmxCO0VBQ0UsT0MxTmdCOztBRDhOcEI7RUFDRSxPQ3BWRjs7QUR3VkY7RUFDRTtFQUNBO0VBQ0EsT0MzVkE7O0FENlZBO0VBQ0Usa0JDclNHOztBRHdTTDtFQUNFO0VBQ0EsT0M5T2tCOztBRGdQbEI7RUFDRSxPQ2pQZ0I7O0FEcVBwQjtFQUNFLE9DM1dGOztBRCtXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DblhBO0VEb1hBLFlBQ0U7O0FBSUY7RUFDRSxrQkNqVUc7O0FEb1VMO0VBQ0U7RUFDQSxPQzFRa0I7O0FENFFsQjtFQUNFLE9DN1FnQjs7QURpUnBCO0VBQ0UsT0N2WUY7O0FENllGO0VBQ0Usa0JDalVJO0VEa1VKO0VBQ0EsT0NoWkE7O0FEa1pBO0VBQ0Usa0JDclVFOztBRHdVSjtFQUNFLGtCQzFTZTtFRDJTZixPQ25Ta0I7O0FEcVNsQjtFQUNFLE9DdFNnQjs7QUQwU3BCO0VBQ0UsT0NoYUY7O0FEb2FGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N4YUE7O0FEMGFBO0VBQ0Usa0JDOVZFOztBRGlXSjtFQUNFO0VBQ0EsT0MzVGtCOztBRDZUbEI7RUFDRSxPQzlUZ0I7O0FEa1VwQjtFQUNFLE9DeGJGOztBRDRiRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaGNBOztBRGtjQTtFQUNFLGtCQ3RYRTs7QUR5WEo7RUFDRTtFQUNBLE9DblZrQjs7QURxVmxCO0VBQ0UsT0N0VmdCOztBRDBWcEI7RUFDRSxPQ2hkRjs7QURvZEY7RUFDRTtFQUNBO0VBQ0EsT0N2ZEE7O0FEeWRBO0VBQ0Usa0JDN1lFOztBRGdaSjtFQUNFO0VBQ0EsT0MxV2tCOztBRDRXbEI7RUFDRSxPQzdXZ0I7O0FEaVhwQjtFQUNFLE9DdmVGOztBRDJlRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DL2VBO0VEZ2ZBLFlBQ0U7O0FBSUY7RUFDRSxrQkN6YUU7O0FENGFKO0VBQ0U7RUFDQSxPQ3RZa0I7O0FEd1lsQjtFQUNFLE9DellnQjs7QUQ2WXBCO0VBQ0UsT0NuZ0JGOztBRHlnQkY7RUFDRSxrQkN2Y0U7RUR3Y0Y7RUFDQSxPQzVnQkE7O0FEOGdCQTtFQUNFLGtCQzNjQTs7QUQ4Y0Y7RUFDRSxrQkMxYWE7RUQyYWIsT0MvWmtCOztBRGlhbEI7RUFDRSxPQ2xhZ0I7O0FEc2FwQjtFQUNFLE9DNWhCRjs7QURnaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0NwaUJBOztBRHNpQkE7RUFDRSxrQkNwZUE7O0FEdWVGO0VBQ0U7RUFDQSxPQ3Zia0I7O0FEeWJsQjtFQUNFLE9DMWJnQjs7QUQ4YnBCO0VBQ0UsT0NwakJGOztBRHdqQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzVqQkE7O0FEOGpCQTtFQUNFLGtCQzVmQTs7QUQrZkY7RUFDRTtFQUNBLE9DL2NrQjs7QURpZGxCO0VBQ0UsT0NsZGdCOztBRHNkcEI7RUFDRSxPQzVrQkY7O0FEZ2xCRjtFQUNFO0VBQ0E7RUFDQSxPQ25sQkE7O0FEcWxCQTtFQUNFLGtCQ25oQkE7O0FEc2hCRjtFQUNFO0VBQ0EsT0N0ZWtCOztBRHdlbEI7RUFDRSxPQ3plZ0I7O0FENmVwQjtFQUNFLE9Dbm1CRjs7QUR1bUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0MzbUJBO0VENG1CQSxZQUNFOztBQUlGO0VBQ0Usa0JDL2lCQTs7QURrakJGO0VBQ0U7RUFDQSxPQ2xnQmtCOztBRG9nQmxCO0VBQ0UsT0NyZ0JnQjs7QUR5Z0JwQjtFQUNFLE9DL25CRjs7QURxb0JGO0VBQ0Usa0JDL2lCSTtFRGdqQko7RUFDQSxPQ3hvQkE7O0FEMG9CQTtFQUNFLGtCQ25qQkU7O0FEc2pCSjtFQUNFLGtCQzloQmU7RUQraEJmLE9DM2hCa0I7O0FENmhCbEI7RUFDRSxPQzloQmdCOztBRGtpQnBCO0VBQ0UsT0N4cEJGOztBRDRwQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ2hxQkE7O0FEa3FCQTtFQUNFLGtCQzVrQkU7O0FEK2tCSjtFQUNFO0VBQ0EsT0NuakJrQjs7QURxakJsQjtFQUNFLE9DdGpCZ0I7O0FEMGpCcEI7RUFDRSxPQ2hyQkY7O0FEb3JCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DeHJCQTs7QUQwckJBO0VBQ0Usa0JDcG1CRTs7QUR1bUJKO0VBQ0U7RUFDQSxPQzNrQmtCOztBRDZrQmxCO0VBQ0UsT0M5a0JnQjs7QURrbEJwQjtFQUNFLE9DeHNCRjs7QUQ0c0JGO0VBQ0U7RUFDQTtFQUNBLE9DL3NCQTs7QURpdEJBO0VBQ0Usa0JDM25CRTs7QUQ4bkJKO0VBQ0U7RUFDQSxPQ2xtQmtCOztBRG9tQmxCO0VBQ0UsT0NybUJnQjs7QUR5bUJwQjtFQUNFLE9DL3RCRjs7QURtdUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N2dUJBO0VEd3VCQSxZQUNFOztBQUlGO0VBQ0Usa0JDdnBCRTs7QUQwcEJKO0VBQ0U7RUFDQSxPQzluQmtCOztBRGdvQmxCO0VBQ0UsT0Nqb0JnQjs7QURxb0JwQjtFQUNFLE9DM3ZCRjs7QURrd0JKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFNSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcIi4uLy4uL3N0eWxlcy9zZXR0aW5nc1wiIGFzICo7XG5cbi5idXR0b24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZ2FwOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UsXG4gICAgdHJhbnNmb3JtIDMwMG1zIGVhc2U7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQuYnV0dG9uLWFwcGVhcmFuY2Uge1xuICAgICAgJi0tc29saWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdC1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0LWRpc2FibGVkO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdC1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNCksXG4gICAgICAgICAgMCAwIDI0cHggcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1wcmltYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnktaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUtZGFzaGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeS1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1uby1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tZ2xvd2luZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCA4cHggcmdiYSgkY29sb3ItcHJpbWFyeSwgMC41KSxcbiAgICAgICAgICAwIDAgMTZweCByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2Vjb25kYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5LWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc3VjY2Vzcy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc3VjY2VzcywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWVycm9yLmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWVycm9yO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1lcnJvcjtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvciwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0td2FybmluZy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2FybmluZztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itd2FybmluZywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtc2l6ZSB7XG4gICAgJi0teHNtIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgLy8gMTJweFxuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07IC8vIDE2cHhcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtOyAvLyA0cHggOHB4XG4gICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMXJlbTsgLy8gMTZweFxuICAgICAgICBtYXgtd2lkdGg6IDFyZW07IC8vIDE2cHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zbSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsgLy8gNnB4IDEycHhcbiAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxLjEyNXJlbTsgLy8gMThweFxuICAgICAgICBtYXgtd2lkdGg6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgLy8gOHB4IDE2cHhcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgICAgd2lkdGg6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgLy8gMjhweFxuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTsgLy8gMTBweCAyMHB4XG4gICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS4zNzVyZW07IC8vIDIycHhcbiAgICAgICAgbWF4LXdpZHRoOiAxLjM3NXJlbTsgLy8gMjJweFxuICAgICAgfVxuICAgIH1cblxuICAgICYtLXhsZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyAvLyAyOHB4XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgLy8gMTJweCAyNHB4XG4gICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICAgIG1heC13aWR0aDogMS41cmVtOyAvLyAyNHB4XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1yYWRpdXMge1xuICAgICYtLW5vbmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMHJlbTsgLy8gMHB4XG4gICAgfVxuXG4gICAgJi0tc20ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07IC8vIDJweFxuICAgIH1cblxuICAgICYtLW1kIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtOyAvLyA2cHhcbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07IC8vIDhweFxuICAgIH1cblxuICAgICYtLWZ1bGwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtOyAvLyAyNHB4XG4gICAgfVxuICB9XG5cbiAgLmljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiA1O1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vID09PSBEZXNpZ24gVG9rZW5zIOKAlCBDb2xvciBQYWxldHRlID09PVxuXG4vLyBCYXNlXG4kd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMwMDAwMDA7XG4kdHJhbnNwYXJlbnQ6IHRyYW5zcGFyZW50O1xuXG4vLyA9PT0gQmxhY2sgVHJhbnNwYXJlbnQgU2NhbGUgPT09XG4kYmxhY2stdHJhbnNwYXJlbnQtMTAwOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtMjAwOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4kYmxhY2stdHJhbnNwYXJlbnQtMzAwOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNDAwOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNTAwOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNjAwOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4kYmxhY2stdHJhbnNwYXJlbnQtNzAwOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtODAwOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtOTAwOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiR3aGl0ZS10cmFuc3BhcmVudC0xMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0yMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0zMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiR3aGl0ZS10cmFuc3BhcmVudC00MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiR3aGl0ZS10cmFuc3BhcmVudC01MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiR3aGl0ZS10cmFuc3BhcmVudC02MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiR3aGl0ZS10cmFuc3BhcmVudC03MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiR3aGl0ZS10cmFuc3BhcmVudC04MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiR3aGl0ZS10cmFuc3BhcmVudC05MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcblxuLy8gPT09IE5ldXRyYWwgU2NhbGUgKEdyZXkpID09PVxuJGdyZXktNTA6ICNmOWZhZmI7XG4kZ3JleS0xMDA6ICNmM2Y0ZjY7XG4kZ3JleS0yMDA6ICNlNWU3ZWI7XG4kZ3JleS0zMDA6ICNkMWQ1ZGI7XG4kZ3JleS00MDA6ICM5Y2EzYWY7XG4kZ3JleS01MDA6ICM2YjcyODA7XG4kZ3JleS02MDA6ICM0YjU1NjM7XG4kZ3JleS03MDA6ICMzNzQxNTE7XG4kZ3JleS04MDA6ICMxZjI5Mzc7XG4kZ3JleS05MDA6ICMxMTE4Mjc7XG5cbi8vID09PSBQcmltYXJ5IFNjYWxlIChCbHVlKSA9PT1cbiRibHVlLTUwOiAjZWZmNmZmO1xuJGJsdWUtMTAwOiAjZGJlYWZlO1xuJGJsdWUtMjAwOiAjYmZkYmZlO1xuJGJsdWUtMzAwOiAjOTNjNWZkO1xuJGJsdWUtNDAwOiAjNjBhNWZhO1xuJGJsdWUtNTAwOiAjM2I4MmY2O1xuJGJsdWUtNjAwOiAjMjU2M2ViOyAvLyBNYWluXG4kYmx1ZS03MDA6ICMxZDRlZDg7IC8vIEhvdmVyXG4kYmx1ZS04MDA6ICMxZTQwYWY7XG4kYmx1ZS05MDA6ICMxZTNhOGE7XG5cbi8vID09PSBTZWNvbmRhcnkgU2NhbGUgKEluZGlnbykgPT09XG4kaW5kaWdvLTUwOiAjZWVmMmZmO1xuJGluZGlnby0xMDA6ICNlMGU3ZmY7XG4kaW5kaWdvLTIwMDogI2M3ZDJmZTtcbiRpbmRpZ28tMzAwOiAjYTViNGZjO1xuJGluZGlnby00MDA6ICM4MThjZjg7XG4kaW5kaWdvLTUwMDogIzYzNjZmMTtcbiRpbmRpZ28tNjAwOiAjNGY0NmU1OyAvLyBNYWluXG4kaW5kaWdvLTcwMDogIzQzMzhjYTsgLy8gSG92ZXJcblxuLy8gPT09IEVycm9yIFNjYWxlIChSZWQpID09PVxuJHJlZC01MDogI2ZlZjJmMjtcbiRyZWQtMTAwOiAjZmVlMmUyO1xuJHJlZC0yMDA6ICNmZWNhY2E7XG4kcmVkLTMwMDogI2ZjYTVhNTtcbiRyZWQtNDAwOiAjZjg3MTcxO1xuJHJlZC01MDA6ICNlZjQ0NDQ7XG4kcmVkLTYwMDogI2RjMjYyNjsgLy8gTWFpblxuJHJlZC03MDA6ICNiOTFjMWM7IC8vIEhvdmVyXG5cbi8vID09PSBTdWNjZXNzIFNjYWxlIChHcmVlbikgPT09XG4kZ3JlZW4tNTA6ICNmMGZkZjQ7XG4kZ3JlZW4tMTAwOiAjZGNmY2U3O1xuJGdyZWVuLTIwMDogI2JiZjdkMDtcbiRncmVlbi0zMDA6ICM4NmVmYWM7XG4kZ3JlZW4tNDAwOiAjNGFkZTgwO1xuJGdyZWVuLTUwMDogIzIyYzU1ZTtcbiRncmVlbi02MDA6ICMxNmEzNGE7IC8vIE1haW5cbiRncmVlbi03MDA6ICMxNTgwM2Q7IC8vIEhvdmVyXG5cbi8vID09PSBXYXJuaW5nIFNjYWxlIChBbWJlcikgPT09XG4kYW1iZXItNTA6ICNmZmZiZWI7XG4kYW1iZXItMTAwOiAjZmVmM2M3O1xuJGFtYmVyLTIwMDogI2ZkZTY4YTtcbiRhbWJlci0zMDA6ICNmY2QzNGQ7XG4kYW1iZXItNDAwOiAjZmJiZjI0O1xuJGFtYmVyLTUwMDogI2Y1OWUwYjtcbiRhbWJlci02MDA6ICNkOTc3MDY7IC8vIE1haW5cbiRhbWJlci03MDA6ICNiNDUzMDk7IC8vIEhvdmVyXG5cbi8vID09PSBTZW1hbnRpYyBUb2tlbnMgPT09XG4kY29sb3ItZGVmYXVsdDogJGdyZXktODAwO1xuJGNvbG9yLWRlZmF1bHQtaG92ZXI6ICRncmV5LTkwMDtcbiRjb2xvci1kZWZhdWx0LWRpc2FibGVkOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpO1xuXG4kY29sb3ItcHJpbWFyeTogJGJsdWUtNjAwO1xuJGNvbG9yLXByaW1hcnktaG92ZXI6ICRibHVlLTcwMDtcbiRjb2xvci1wcmltYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjUpO1xuXG4kY29sb3Itc2Vjb25kYXJ5OiAkaW5kaWdvLTYwMDtcbiRjb2xvci1zZWNvbmRhcnktaG92ZXI6ICRpbmRpZ28tNzAwO1xuJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjUpO1xuXG4kY29sb3ItZXJyb3I6ICRyZWQtNjAwO1xuJGNvbG9yLWVycm9yLWhvdmVyOiAkcmVkLTcwMDtcbiRjb2xvci1lcnJvci1kaXNhYmxlZDogcmdiYSgkY29sb3ItZXJyb3IsIDAuNSk7XG5cbiRjb2xvci1zdWNjZXNzOiAkZ3JlZW4tNjAwO1xuJGNvbG9yLXN1Y2Nlc3MtaG92ZXI6ICRncmVlbi03MDA7XG4kY29sb3Itc3VjY2Vzcy1kaXNhYmxlZDogcmdiYSgkY29sb3Itc3VjY2VzcywgMC41KTtcblxuJGNvbG9yLXdhcm5pbmc6ICRhbWJlci02MDA7XG4kY29sb3Itd2FybmluZy1ob3ZlcjogJGFtYmVyLTcwMDtcbiRjb2xvci13YXJuaW5nLWRpc2FibGVkOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjUpO1xuXG4kdGV4dC1jb2xvci13aGl0ZTogJHdoaXRlO1xuJHRleHQtY29sb3ItYmxhY2s6ICRibGFjaztcbiR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiR0ZXh0LWNvbG9yLWJsYWNrLWRpc2FibGVkOiByZ2JhKCRibGFjaywgMC41KTtcblxuLy8gPT09IFNoYWRvd3MgPT09XG4kc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2JhKCRibGFjaywgMC4wNSk7XG4kc2hhZG93LW1kOlxuICAwIDRweCA2cHggLTFweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCAycHggNHB4IC0xcHggcmdiYSgkYmxhY2ssIDAuMDYpO1xuJHNoYWRvdy1sZzpcbiAgMCAxMHB4IDE1cHggLTNweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCA0cHggNnB4IC0ycHggcmdiYSgkYmxhY2ssIDAuMDUpO1xuXG4vLyA9PT0gRm9udCBmYW1pbGllcyA9PT1cbiRmb250LWZhbWlseS1zYW5zOiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6IFwiR2VvcmdpYVwiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcIkZpcmEgQ29kZVwiLCBtb25vc3BhY2U7XG5cbi8vID09PSBGb250IHdlaWdodHMgPT09XG4kZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuXG4vLyA9PT0gTGluZSBoZWlnaHRzID09PVxuJGxpbmUtaGVpZ2h0LXRpZ2h0OiAxLjI7XG4kbGluZS1oZWlnaHQtc251ZzogMS4zNzU7XG4kbGluZS1oZWlnaHQtbm9ybWFsOiAxLjU7XG4kbGluZS1oZWlnaHQtbG9vc2U6IDEuNjI1O1xuXG4vLyA9PT0gRm9udCBTaXplcyDigJQgU2VtYW50aWMgVG9rZW5zID09PVxuXG4vLyA9PT0gVGl0bGVzID09PVxuJGZvbnQtc2l6ZS1oZXJvOiAzcmVtOyAvLyA0OHB4XG4kZm9udC1zaXplLXRpdGxlLTE6IDIuMjVyZW07IC8vIDM2cHhcbiRmb250LXNpemUtdGl0bGUtMjogMS44NzVyZW07IC8vIDMwcHhcbiRmb250LXNpemUtdGl0bGUtMzogMS41cmVtOyAvLyAyNHB4XG5cbi8vID09PSBTdWJ0aXRsZXMgPT09XG4kZm9udC1zaXplLXN1YnRpdGxlLTE6IDEuMjVyZW07IC8vIDIwcHhcbiRmb250LXNpemUtc3VidGl0bGUtMjogMS4xMjVyZW07IC8vIDE4cHhcblxuLy8gPT09IEJvZHkgdGV4dCA9PT1cbiRmb250LXNpemUtYm9keS1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1ib2R5LW1kOiAwLjkzNzVyZW07IC8vIDE1cHhcbiRmb250LXNpemUtYm9keS1zbTogMC44NzVyZW07IC8vIDE0cHhcblxuLy8gPT09IENhcHRpb25zIC8gRGVzY3JpcHRpb25zID09PVxuJGZvbnQtc2l6ZS1jYXB0aW9uOiAwLjc1cmVtOyAvLyAxMnB4XG4kZm9udC1zaXplLWZvb3Rub3RlOiAwLjY4NzVyZW07IC8vIDExcHhcblxuLy8gPT09IEJ1dHRvbnMgPT09XG4kZm9udC1zaXplLWJ1dHRvbi1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1idXR0b24tbWQ6IDAuODc1cmVtOyAvLyAxNHB4XG4kZm9udC1zaXplLWJ1dHRvbi1zbTogMC43NXJlbTsgLy8gMTJweFxuXG4vLyA9PT0gQW5pbWF0aW9ucyA9PT1cblxuJGN1YmljLWJlemllci1wcmltYXJ5OiBjdWJpYy1iZXppZXIoMC41NSwgLTAuMTksIDAuNTksIDAuOTUpO1xuJGN1YmljLWJlemllci1zZWNvbmRhcnk6IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiJdfQ== */","\"use client\";\n\nimport * as React from \"react\";\nimport { type IButton, Button } from \"../Button\";\n\nimport styles from \"./ButtonGroup.module.scss\";\n\nexport interface IButtonGroup {\n children:\n | React.ReactElement<IButton, typeof Button>\n | React.ReactElement<IButton, typeof Button>[];\n align?: \"vertical\" | \"horizontal\";\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n disabled?: boolean;\n className?: string;\n}\n\nexport const ButtonGroup: React.FC<IButtonGroup> = ({\n children,\n align = \"horizontal\",\n variant = \"default\",\n size = \"md\",\n radius = \"md\",\n disabled,\n className = \"\",\n}) => {\n return (\n <div\n className={`${styles[\"button-group\"]} ${styles[`button-group-variant--${variant}`]} ${styles[`button-group-size--${size}`]} ${styles[`button-group-radius--${radius}`]} ${styles[`button-group-align--${align}`]} ${className}`}\n >\n {React.Children.toArray(children)\n .filter(\n (child): child is React.ReactElement<IButton, typeof Button> =>\n React.isValidElement(child) && child.type === Button\n )\n .map((child, index) =>\n React.cloneElement(child, {\n key: index || child.key,\n size: size || child.props.size,\n disabled: disabled || child.props.disabled,\n variant: variant || child.props.variant,\n radius: \"none\",\n })\n )}\n </div>\n );\n};\n",".button-group {\n align-items: center;\n display: flex;\n overflow: hidden;\n max-width: max-content;\n}\n.button-group-align--horizontal {\n flex-direction: row;\n}\n.button-group-align--vertical {\n flex-direction: column;\n}\n.button-group-variant--default {\n background-color: #1f2937;\n}\n.button-group-variant--primary {\n background-color: #2563eb;\n}\n.button-group-variant--secondary {\n background-color: #4f46e5;\n}\n.button-group-variant--success {\n background-color: #16a34a;\n}\n.button-group-variant--error {\n background-color: #dc2626;\n}\n.button-group-variant--warning {\n background-color: #d97706;\n}\n.button-group-radius--none {\n border-radius: 0rem;\n}\n.button-group-radius--sm {\n border-radius: 0.125rem;\n}\n.button-group-radius--md {\n border-radius: 0.375rem;\n}\n.button-group-radius--lg {\n border-radius: 0.5rem;\n}\n.button-group-radius--full {\n border-radius: 1.5rem;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbkdyb3VwIiwic291cmNlcyI6WyJCdXR0b25Hcm91cC5tb2R1bGUuc2NzcyIsIi4uLy4uL3N0eWxlcy9fc2V0dGluZ3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFLGtCQ2tCSzs7QURmUDtFQUNFLGtCQ3dCSzs7QURyQlA7RUFDRSxrQkNnQ087O0FEN0JUO0VBQ0Usa0JDZ0RNOztBRDdDUjtFQUNFLGtCQ2tDSTs7QUQvQk47RUFDRSxrQkNrRE07O0FEN0NSO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi8uLi9zdHlsZXMvc2V0dGluZ3NcIiBhcyAqO1xuXG4uYnV0dG9uLWdyb3VwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcblxuICAmLWFsaWduIHtcbiAgICAmLS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgJi0tdmVydGljYWwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi0tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAmLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIH1cblxuICAgICYtLWVycm9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICB9XG5cbiAgICAmLS13YXJuaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgIH1cbiAgfVxuXG4gICYtcmFkaXVzIHtcbiAgICAmLS1ub25lIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDByZW07IC8vIDBweFxuICAgIH1cblxuICAgICYtLXNtIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtOyAvLyAycHhcbiAgICB9XG5cbiAgICAmLS1tZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTsgLy8gNnB4XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtOyAvLyA4cHhcbiAgICB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTsgLy8gMjRweFxuICAgIH1cbiAgfVxufVxuIiwiLy8gPT09IERlc2lnbiBUb2tlbnMg4oCUIENvbG9yIFBhbGV0dGUgPT09XG5cbi8vIEJhc2VcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibGFjazogIzAwMDAwMDtcbiR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiRibGFjay10cmFuc3BhcmVudC0xMDA6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRibGFjay10cmFuc3BhcmVudC0yMDA6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRibGFjay10cmFuc3BhcmVudC0zMDA6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRibGFjay10cmFuc3BhcmVudC00MDA6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiRibGFjay10cmFuc3BhcmVudC01MDA6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRibGFjay10cmFuc3BhcmVudC02MDA6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiRibGFjay10cmFuc3BhcmVudC03MDA6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRibGFjay10cmFuc3BhcmVudC04MDA6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiRibGFjay10cmFuc3BhcmVudC05MDA6IHJnYmEoMCwgMCwgMCwgMC45KTtcblxuLy8gPT09IEJsYWNrIFRyYW5zcGFyZW50IFNjYWxlID09PVxuJHdoaXRlLXRyYW5zcGFyZW50LTEwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTIwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTMwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTQwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTUwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTYwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTcwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTgwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTkwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuXG4vLyA9PT0gTmV1dHJhbCBTY2FsZSAoR3JleSkgPT09XG4kZ3JleS01MDogI2Y5ZmFmYjtcbiRncmV5LTEwMDogI2YzZjRmNjtcbiRncmV5LTIwMDogI2U1ZTdlYjtcbiRncmV5LTMwMDogI2QxZDVkYjtcbiRncmV5LTQwMDogIzljYTNhZjtcbiRncmV5LTUwMDogIzZiNzI4MDtcbiRncmV5LTYwMDogIzRiNTU2MztcbiRncmV5LTcwMDogIzM3NDE1MTtcbiRncmV5LTgwMDogIzFmMjkzNztcbiRncmV5LTkwMDogIzExMTgyNztcblxuLy8gPT09IFByaW1hcnkgU2NhbGUgKEJsdWUpID09PVxuJGJsdWUtNTA6ICNlZmY2ZmY7XG4kYmx1ZS0xMDA6ICNkYmVhZmU7XG4kYmx1ZS0yMDA6ICNiZmRiZmU7XG4kYmx1ZS0zMDA6ICM5M2M1ZmQ7XG4kYmx1ZS00MDA6ICM2MGE1ZmE7XG4kYmx1ZS01MDA6ICMzYjgyZjY7XG4kYmx1ZS02MDA6ICMyNTYzZWI7IC8vIE1haW5cbiRibHVlLTcwMDogIzFkNGVkODsgLy8gSG92ZXJcbiRibHVlLTgwMDogIzFlNDBhZjtcbiRibHVlLTkwMDogIzFlM2E4YTtcblxuLy8gPT09IFNlY29uZGFyeSBTY2FsZSAoSW5kaWdvKSA9PT1cbiRpbmRpZ28tNTA6ICNlZWYyZmY7XG4kaW5kaWdvLTEwMDogI2UwZTdmZjtcbiRpbmRpZ28tMjAwOiAjYzdkMmZlO1xuJGluZGlnby0zMDA6ICNhNWI0ZmM7XG4kaW5kaWdvLTQwMDogIzgxOGNmODtcbiRpbmRpZ28tNTAwOiAjNjM2NmYxO1xuJGluZGlnby02MDA6ICM0ZjQ2ZTU7IC8vIE1haW5cbiRpbmRpZ28tNzAwOiAjNDMzOGNhOyAvLyBIb3ZlclxuXG4vLyA9PT0gRXJyb3IgU2NhbGUgKFJlZCkgPT09XG4kcmVkLTUwOiAjZmVmMmYyO1xuJHJlZC0xMDA6ICNmZWUyZTI7XG4kcmVkLTIwMDogI2ZlY2FjYTtcbiRyZWQtMzAwOiAjZmNhNWE1O1xuJHJlZC00MDA6ICNmODcxNzE7XG4kcmVkLTUwMDogI2VmNDQ0NDtcbiRyZWQtNjAwOiAjZGMyNjI2OyAvLyBNYWluXG4kcmVkLTcwMDogI2I5MWMxYzsgLy8gSG92ZXJcblxuLy8gPT09IFN1Y2Nlc3MgU2NhbGUgKEdyZWVuKSA9PT1cbiRncmVlbi01MDogI2YwZmRmNDtcbiRncmVlbi0xMDA6ICNkY2ZjZTc7XG4kZ3JlZW4tMjAwOiAjYmJmN2QwO1xuJGdyZWVuLTMwMDogIzg2ZWZhYztcbiRncmVlbi00MDA6ICM0YWRlODA7XG4kZ3JlZW4tNTAwOiAjMjJjNTVlO1xuJGdyZWVuLTYwMDogIzE2YTM0YTsgLy8gTWFpblxuJGdyZWVuLTcwMDogIzE1ODAzZDsgLy8gSG92ZXJcblxuLy8gPT09IFdhcm5pbmcgU2NhbGUgKEFtYmVyKSA9PT1cbiRhbWJlci01MDogI2ZmZmJlYjtcbiRhbWJlci0xMDA6ICNmZWYzYzc7XG4kYW1iZXItMjAwOiAjZmRlNjhhO1xuJGFtYmVyLTMwMDogI2ZjZDM0ZDtcbiRhbWJlci00MDA6ICNmYmJmMjQ7XG4kYW1iZXItNTAwOiAjZjU5ZTBiO1xuJGFtYmVyLTYwMDogI2Q5NzcwNjsgLy8gTWFpblxuJGFtYmVyLTcwMDogI2I0NTMwOTsgLy8gSG92ZXJcblxuLy8gPT09IFNlbWFudGljIFRva2VucyA9PT1cbiRjb2xvci1kZWZhdWx0OiAkZ3JleS04MDA7XG4kY29sb3ItZGVmYXVsdC1ob3ZlcjogJGdyZXktOTAwO1xuJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNSk7XG5cbiRjb2xvci1wcmltYXJ5OiAkYmx1ZS02MDA7XG4kY29sb3ItcHJpbWFyeS1ob3ZlcjogJGJsdWUtNzAwO1xuJGNvbG9yLXByaW1hcnktZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuNSk7XG5cbiRjb2xvci1zZWNvbmRhcnk6ICRpbmRpZ28tNjAwO1xuJGNvbG9yLXNlY29uZGFyeS1ob3ZlcjogJGluZGlnby03MDA7XG4kY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSk7XG5cbiRjb2xvci1lcnJvcjogJHJlZC02MDA7XG4kY29sb3ItZXJyb3ItaG92ZXI6ICRyZWQtNzAwO1xuJGNvbG9yLWVycm9yLWRpc2FibGVkOiByZ2JhKCRjb2xvci1lcnJvciwgMC41KTtcblxuJGNvbG9yLXN1Y2Nlc3M6ICRncmVlbi02MDA7XG4kY29sb3Itc3VjY2Vzcy1ob3ZlcjogJGdyZWVuLTcwMDtcbiRjb2xvci1zdWNjZXNzLWRpc2FibGVkOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjUpO1xuXG4kY29sb3Itd2FybmluZzogJGFtYmVyLTYwMDtcbiRjb2xvci13YXJuaW5nLWhvdmVyOiAkYW1iZXItNzAwO1xuJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSk7XG5cbiR0ZXh0LWNvbG9yLXdoaXRlOiAkd2hpdGU7XG4kdGV4dC1jb2xvci1ibGFjazogJGJsYWNrO1xuJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJHRleHQtY29sb3ItYmxhY2stZGlzYWJsZWQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuXG4vLyA9PT0gU2hhZG93cyA9PT1cbiRzaGFkb3ctc206IDAgMXB4IDJweCAwIHJnYmEoJGJsYWNrLCAwLjA1KTtcbiRzaGFkb3ctbWQ6XG4gIDAgNHB4IDZweCAtMXB4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKCRibGFjaywgMC4wNik7XG4kc2hhZG93LWxnOlxuICAwIDEwcHggMTVweCAtM3B4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDRweCA2cHggLTJweCByZ2JhKCRibGFjaywgMC4wNSk7XG5cbi8vID09PSBGb250IGZhbWlsaWVzID09PVxuJGZvbnQtZmFtaWx5LXNhbnM6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zZXJpZjogXCJHZW9yZ2lhXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm86IFwiRmlyYSBDb2RlXCIsIG1vbm9zcGFjZTtcblxuLy8gPT09IEZvbnQgd2VpZ2h0cyA9PT1cbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vID09PSBMaW5lIGhlaWdodHMgPT09XG4kbGluZS1oZWlnaHQtdGlnaHQ6IDEuMjtcbiRsaW5lLWhlaWdodC1zbnVnOiAxLjM3NTtcbiRsaW5lLWhlaWdodC1ub3JtYWw6IDEuNTtcbiRsaW5lLWhlaWdodC1sb29zZTogMS42MjU7XG5cbi8vID09PSBGb250IFNpemVzIOKAlCBTZW1hbnRpYyBUb2tlbnMgPT09XG5cbi8vID09PSBUaXRsZXMgPT09XG4kZm9udC1zaXplLWhlcm86IDNyZW07IC8vIDQ4cHhcbiRmb250LXNpemUtdGl0bGUtMTogMi4yNXJlbTsgLy8gMzZweFxuJGZvbnQtc2l6ZS10aXRsZS0yOiAxLjg3NXJlbTsgLy8gMzBweFxuJGZvbnQtc2l6ZS10aXRsZS0zOiAxLjVyZW07IC8vIDI0cHhcblxuLy8gPT09IFN1YnRpdGxlcyA9PT1cbiRmb250LXNpemUtc3VidGl0bGUtMTogMS4yNXJlbTsgLy8gMjBweFxuJGZvbnQtc2l6ZS1zdWJ0aXRsZS0yOiAxLjEyNXJlbTsgLy8gMThweFxuXG4vLyA9PT0gQm9keSB0ZXh0ID09PVxuJGZvbnQtc2l6ZS1ib2R5LWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJvZHktbWQ6IDAuOTM3NXJlbTsgLy8gMTVweFxuJGZvbnQtc2l6ZS1ib2R5LXNtOiAwLjg3NXJlbTsgLy8gMTRweFxuXG4vLyA9PT0gQ2FwdGlvbnMgLyBEZXNjcmlwdGlvbnMgPT09XG4kZm9udC1zaXplLWNhcHRpb246IDAuNzVyZW07IC8vIDEycHhcbiRmb250LXNpemUtZm9vdG5vdGU6IDAuNjg3NXJlbTsgLy8gMTFweFxuXG4vLyA9PT0gQnV0dG9ucyA9PT1cbiRmb250LXNpemUtYnV0dG9uLWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJ1dHRvbi1tZDogMC44NzVyZW07IC8vIDE0cHhcbiRmb250LXNpemUtYnV0dG9uLXNtOiAwLjc1cmVtOyAvLyAxMnB4XG5cbi8vID09PSBBbmltYXRpb25zID09PVxuXG4kY3ViaWMtYmV6aWVyLXByaW1hcnk6IGN1YmljLWJlemllcigwLjU1LCAtMC4xOSwgMC41OSwgMC45NSk7XG4kY3ViaWMtYmV6aWVyLXNlY29uZGFyeTogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuIl19 */"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,YAAY,WAAW;AACvB,SAAS,eAAe;;;ACKjB,IAAM,eAAe,CAA0C;AAAA,EACpE;AAAA,EACA;AAAA,EACA;AACF,MAAqC;AACnC,QAAM,SAAS,IAAI;AACnB,MAAI,CAAC,OAAQ;AAEb,QAAM,SAAS,SAAS,cAAc,MAAM;AAC5C,QAAM,WAAW,KAAK,IAAI,OAAO,aAAa,OAAO,YAAY;AACjE,QAAM,SAAS,WAAW;AAE1B,SAAO,KAAK;AAEZ,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKF,QAAQ;AAAA,gBACV,UAAU,OAAO,sBAAsB,EAAE,OAAO,MAAM;AAAA;AAAA;AAAA,eAGvD,UAAU,OAAO,sBAAsB,EAAE,MAAM,MAAM;AAAA;AAAA,iBAEnD,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYvB,SAAO,YAAY,KAAK;AACxB,SAAO,YAAY,MAAM;AAEzB,SAAO,iBAAiB,gBAAgB,MAAM;AAC5C,WAAO,OAAO;AACd,UAAM,OAAO;AAAA,EACf,CAAC;AACH;;;ACrDA;;;AF2DI,mBAEI,KAFJ;AA1BG,IAAM,SAA4B,CAAC,OAcpC;AAdoC,eACxC;AAAA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV,aAAa;AAAA,IACb,OAAO;AAAA,IACP,SAAS;AAAA,IACT;AAAA,IACA,cAAc;AAAA,IACd,YAAY;AAAA,IACZ;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,EA7CF,IAiC0C,IAarC,sBAbqC,IAarC;AAAA,IAZH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,QAAM,MAAY,aAA0B,IAAI;AAEhD,QAAM,cAAc,CAAC,MAAuD;AAC1E,UAAM,EAAE,SAAS,QAAQ,IAAI;AAC7B,iBAAgC,EAAE,KAAK,SAAS,QAAQ,CAAC;AACzD,QAAI,SAAS;AACX,cAAQ,CAAC;AAAA,IACX;AAAA,EACF;AAEA,QAAMA,YAAW,MAAG;AA1DtB,QAAAC;AA2DI,4CACG;AAAA,mBACC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,MAAM;AAAA,UACN,WAAW,sBAAO,SAAS;AAAA;AAAA,MAC7B;AAAA,MAED,QACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,GAAG,sBAAO,MAAM,CAAC,IAAI,sBAAO,UAASA,MAAA,KAAK,UAAL,OAAAA,MAAc,MAAM,EAAE,CAAC;AAAA,UAEtE,UAAM,oBAAc,KAAK,SAAS;AAAA;AAAA,MACrC;AAAA,MAED;AAAA,OACH;AAAA;AAGF,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,WAAW,GAAG,sBAAO,QAAQ,CAAC,IAAI,sBAAO,mBAAmB,OAAO,EAAE,CAAC,IAAI,sBAAO,sBAAsB,UAAU,EAAE,CAAC,IAAI,sBAAO,gBAAgB,IAAI,EAAE,CAAC,IAAI,sBAAO,kBAAkB,MAAM,EAAE,CAAC,IAAI,YAAY,sBAAO,iBAAiB,IAAI,EAAE,IAAI,SAAS;AAAA,MACvP,SAAS;AAAA,OACJ,0BACD,EAAE,wBAAwB,IAC1B,EAAE,UAAU,oBAACD,WAAA,EAAS,EAAG,IACzB;AAAA,EACN;AAEJ;;;AGzFA,YAAYE,YAAW;;;ACFvB;;;ADmCI,gBAAAC,YAAA;AAVG,IAAM,cAAsC,CAAC;AAAA,EAClD;AAAA,EACA,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,YAAY;AACd,MAAM;AACJ,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,2BAAO,cAAc,CAAC,IAAI,2BAAO,yBAAyB,OAAO,EAAE,CAAC,IAAI,2BAAO,sBAAsB,IAAI,EAAE,CAAC,IAAI,2BAAO,wBAAwB,MAAM,EAAE,CAAC,IAAI,2BAAO,uBAAuB,KAAK,EAAE,CAAC,IAAI,SAAS;AAAA,MAE5N,UAAM,gBAAS,QAAQ,QAAQ,EAC7B;AAAA,QACC,CAAC,UACO,sBAAe,KAAK,KAAK,MAAM,SAAS;AAAA,MAClD,EACC;AAAA,QAAI,CAAC,OAAO,UACL,oBAAa,OAAO;AAAA,UACxB,KAAK,SAAS,MAAM;AAAA,UACpB,MAAM,QAAQ,MAAM,MAAM;AAAA,UAC1B,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC,SAAS,WAAW,MAAM,MAAM;AAAA,UAChC,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA;AAAA,EACJ;AAEJ;","names":["Children","_a","React","jsx"]}
|
|
1
|
+
{"version":3,"sources":["../components/Button/index.tsx","../utils/ripple.tsx","../components/Button/Button.module.scss","../components/ButtonGroup/index.tsx","../components/ButtonGroup/ButtonGroup.module.scss"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { Spinner } from \"@aristobyte-ui/spinner\";\n\nimport { renderRipple } from \"../../utils\";\n\nimport styles from \"./Button.module.scss\";\n\nexport interface IButton extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n appearance?:\n | \"solid\"\n | \"outline\"\n | \"outline-dashed\"\n | \"no-outline\"\n | \"glowing\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n icon?: {\n component: React.ElementType;\n align?: \"left\" | \"right\";\n };\n isLoading?: boolean;\n spinnerType?: \"default\" | \"duo\" | \"gradient\" | \"pulse\" | \"pulse-duo\";\n}\n\nexport const Button: React.FC<IButton> = ({\n onClick,\n children,\n variant = \"default\",\n appearance = \"solid\",\n size = \"md\",\n radius = \"md\",\n icon,\n spinnerType = \"default\",\n isLoading = false,\n disabled,\n className = \"\",\n dangerouslySetInnerHTML,\n ...restProps\n}) => {\n const ref = React.useRef<HTMLButtonElement>(null);\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => {\n const { clientX, clientY } = e;\n renderRipple<HTMLButtonElement>({ ref, clientX, clientY });\n if (onClick) {\n onClick(e);\n }\n };\n\n const Children = () => (\n <>\n {isLoading && (\n <Spinner\n size={size}\n variant={variant}\n type={spinnerType}\n className={styles[\"spinner\"]}\n />\n )}\n {icon && (\n <span\n className={`${styles[\"icon\"]} ${styles[`icon--${icon.align ?? \"left\"}`]}`}\n >\n {React.createElement(icon.component)}\n </span>\n )}\n {children}\n </>\n );\n\n return (\n <button\n ref={ref}\n disabled={disabled || isLoading}\n className={`${styles[\"button\"]} ${styles[`button-variant--${variant}`]} ${styles[`button-appearance--${appearance}`]} ${styles[`button-size--${size}`]} ${styles[`button-radius--${radius}`]} ${isLoading ? styles[\"button--loading\"] : \"\"} ${className}`}\n onClick={handleClick}\n {...(dangerouslySetInnerHTML\n ? { dangerouslySetInnerHTML }\n : { children: <Children /> })}\n {...restProps}\n />\n );\n};\n","type RippleParamsRef = HTMLButtonElement | HTMLAnchorElement;\n\nexport type RippleParams<HTMLElementType extends RippleParamsRef> = {\n ref: React.RefObject<HTMLElementType | null>;\n clientX: number;\n clientY: number;\n};\n\nexport const renderRipple = <HTMLElementType extends RippleParamsRef>({\n ref,\n clientX,\n clientY,\n}: RippleParams<HTMLElementType>) => {\n const button = ref.current;\n if (!button) return;\n\n const circle = document.createElement(\"span\");\n const diameter = Math.max(button.clientWidth, button.clientHeight);\n const radius = diameter / 2;\n\n circle.id = \"ripple\";\n\n const style = document.createElement(\"style\");\n style.innerHTML = `\n #ripple {\n animation: ripple 300ms linear;\n background-color: rgba(255, 255, 255, 0.3);\n border-radius: 50%;\n height: ${diameter}px;\n left: ${clientX - button.getBoundingClientRect().left - radius}px;\n pointer-events: none;\n position: absolute;\n top: ${clientY - button.getBoundingClientRect().top - radius}px;\n transform: scale(0);\n width: ${diameter}px;\n z-index: 0;\n }\n \n @keyframes ripple {\n to {\n opacity: 0;\n transform: scale(2);\n }\n }\n `;\n\n button.appendChild(style);\n button.appendChild(circle);\n\n circle.addEventListener(\"animationend\", () => {\n circle.remove();\n style.remove();\n });\n};\n",".button {\n align-items: center;\n border: none;\n cursor: pointer;\n display: flex;\n font-weight: 500;\n gap: 10px;\n letter-spacing: 0rem;\n line-height: 1.42;\n overflow: hidden;\n position: relative;\n transition: background-color 200ms ease, transform 300ms ease;\n}\n.button:disabled {\n cursor: not-allowed;\n opacity: 1;\n}\n.button:active {\n transform: scale(0.97);\n}\n.button-variant--default.button-appearance--solid {\n background-color: #1f2937;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--solid:hover {\n background-color: #111827;\n}\n.button-variant--default.button-appearance--solid:disabled {\n background-color: rgba(31, 41, 55, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #1f2937;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--outline-dashed:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--outline-dashed:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--default.button-appearance--no-outline:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--no-outline:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--default.button-appearance--glowing {\n background-color: rgba(31, 41, 55, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #1f2937;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(31, 41, 55, 0.5), 0 0 16px rgba(31, 41, 55, 0.4), 0 0 24px rgba(31, 41, 55, 0.3);\n}\n.button-variant--default.button-appearance--glowing:hover {\n background-color: #1f2937;\n}\n.button-variant--default.button-appearance--glowing:disabled {\n background-color: rgba(31, 41, 55, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--default.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid {\n background-color: #2563eb;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--solid:hover {\n background-color: #1d4ed8;\n}\n.button-variant--primary.button-appearance--solid:disabled {\n background-color: rgba(37, 99, 235, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #2563eb;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--outline-dashed:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--no-outline:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--no-outline:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--primary.button-appearance--glowing {\n background-color: rgba(37, 99, 235, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #2563eb;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(37, 99, 235, 0.5), 0 0 16px rgba(37, 99, 235, 0.4), 0 0 24px rgba(37, 99, 235, 0.3);\n}\n.button-variant--primary.button-appearance--glowing:hover {\n background-color: #2563eb;\n}\n.button-variant--primary.button-appearance--glowing:disabled {\n background-color: rgba(37, 99, 235, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--primary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid {\n background-color: #4f46e5;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--solid:hover {\n background-color: #4338ca;\n}\n.button-variant--secondary.button-appearance--solid:disabled {\n background-color: rgba(79, 70, 229, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #4f46e5;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--outline-dashed:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--no-outline:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--no-outline:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--secondary.button-appearance--glowing {\n background-color: rgba(79, 70, 229, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #4f46e5;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(79, 70, 229, 0.5), 0 0 16px rgba(79, 70, 229, 0.4), 0 0 24px rgba(79, 70, 229, 0.3);\n}\n.button-variant--secondary.button-appearance--glowing:hover {\n background-color: #4f46e5;\n}\n.button-variant--secondary.button-appearance--glowing:disabled {\n background-color: rgba(79, 70, 229, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--secondary.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid {\n background-color: #16a34a;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--solid:hover {\n background-color: #15803d;\n}\n.button-variant--success.button-appearance--solid:disabled {\n background-color: rgba(22, 163, 74, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #16a34a;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--outline-dashed:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--outline-dashed:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--success.button-appearance--no-outline:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--no-outline:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--success.button-appearance--glowing {\n background-color: rgba(22, 163, 74, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #16a34a;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(22, 163, 74, 0.5), 0 0 16px rgba(22, 163, 74, 0.4), 0 0 24px rgba(22, 163, 74, 0.3);\n}\n.button-variant--success.button-appearance--glowing:hover {\n background-color: #16a34a;\n}\n.button-variant--success.button-appearance--glowing:disabled {\n background-color: rgba(22, 163, 74, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--success.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid {\n background-color: #dc2626;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--solid:hover {\n background-color: #b91c1c;\n}\n.button-variant--error.button-appearance--solid:disabled {\n background-color: rgba(220, 38, 38, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #dc2626;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--outline-dashed:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--outline-dashed:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--error.button-appearance--no-outline:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--no-outline:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--error.button-appearance--glowing {\n background-color: rgba(220, 38, 38, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #dc2626;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(220, 38, 38, 0.5), 0 0 16px rgba(220, 38, 38, 0.4), 0 0 24px rgba(220, 38, 38, 0.3);\n}\n.button-variant--error.button-appearance--glowing:hover {\n background-color: #dc2626;\n}\n.button-variant--error.button-appearance--glowing:disabled {\n background-color: rgba(220, 38, 38, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--error.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid {\n background-color: #d97706;\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--solid:hover {\n background-color: #b45309;\n}\n.button-variant--warning.button-appearance--solid:disabled {\n background-color: rgba(217, 119, 6, 0.5);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--solid .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px dashed #d97706;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--outline-dashed:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--outline-dashed .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--no-outline:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--no-outline:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--no-outline .icon {\n color: #ffffff;\n}\n.button-variant--warning.button-appearance--glowing {\n background-color: rgba(217, 119, 6, 0.2);\n backdrop-filter: 8px;\n border: 1px solid #d97706;\n color: #ffffff;\n box-shadow: 0 0 8px rgba(217, 119, 6, 0.5), 0 0 16px rgba(217, 119, 6, 0.4), 0 0 24px rgba(217, 119, 6, 0.3);\n}\n.button-variant--warning.button-appearance--glowing:hover {\n background-color: #d97706;\n}\n.button-variant--warning.button-appearance--glowing:disabled {\n background-color: rgba(217, 119, 6, 0.2);\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing:disabled .icon {\n color: rgba(255, 255, 255, 0.5);\n}\n.button-variant--warning.button-appearance--glowing .icon {\n color: #ffffff;\n}\n.button-size--xsm {\n font-size: 0.75rem;\n line-height: 1rem;\n padding: 0.25rem 0.5rem;\n min-height: 28px;\n}\n.button-size--xsm .spinner,\n.button-size--xsm .icon {\n max-height: 1rem;\n max-width: 1rem;\n}\n.button-size--sm {\n font-size: 0.875rem;\n line-height: 1.25rem;\n padding: 0.375rem 0.75rem;\n min-height: 32px;\n}\n.button-size--sm .spinner,\n.button-size--sm .icon {\n max-height: 1.125rem;\n max-width: 1.125rem;\n}\n.button-size--md {\n font-size: 1rem;\n line-height: 1.5rem;\n padding: 0.5rem 1rem;\n min-height: 40px;\n}\n.button-size--md .spinner,\n.button-size--md .icon {\n height: 1.25rem;\n width: 1.25rem;\n}\n.button-size--lg {\n font-size: 1.125rem;\n line-height: 1.75rem;\n padding: 0.625rem 1.25rem;\n min-height: 44px;\n}\n.button-size--lg .spinner,\n.button-size--lg .icon {\n max-height: 1.375rem;\n max-width: 1.375rem;\n}\n.button-size--xlg {\n font-size: 1.25rem;\n line-height: 1.75rem;\n padding: 0.75rem 1.5rem;\n min-height: 48px;\n}\n.button-size--xlg .spinner,\n.button-size--xlg .icon {\n max-height: 1.5rem;\n max-width: 1.5rem;\n}\n.button-radius--none {\n border-radius: 0rem;\n}\n.button-radius--sm {\n border-radius: 0.125rem;\n}\n.button-radius--md {\n border-radius: 0.375rem;\n}\n.button-radius--lg {\n border-radius: 0.5rem;\n}\n.button-radius--full {\n border-radius: 1.5rem;\n}\n.button .icon {\n align-items: center;\n display: flex;\n justify-content: center;\n}\n.button .icon--right {\n order: 5;\n}\n.button .icon svg {\n width: 100%;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbiIsInNvdXJjZXMiOlsiQnV0dG9uLm1vZHVsZS5zY3NzIiwiLi4vLi4vc3R5bGVzL19zZXR0aW5ncy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZQUNFOztBQUdGO0VBQ0U7RUFDQTs7QUFHRjtFQUNFOztBQUtFO0VBQ0Usa0JDU0c7RURSSDtFQUNBLE9DNUJBOztBRDhCQTtFQUNFLGtCQ0tDOztBREZIO0VBQ0Usa0JDMERlO0VEekRmLE9DaUZrQjs7QUQvRWxCO0VBQ0UsT0M4RWdCOztBRDFFcEI7RUFDRSxPQzVDRjs7QURnREY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3BEQTs7QURzREE7RUFDRSxrQkNwQkM7O0FEdUJIO0VBQ0U7RUFDQSxPQ3lEa0I7O0FEdkRsQjtFQUNFLE9Dc0RnQjs7QURsRHBCO0VBQ0UsT0NwRUY7O0FEd0VGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1RUE7O0FEOEVBO0VBQ0Usa0JDNUNDOztBRCtDSDtFQUNFO0VBQ0EsT0NpQ2tCOztBRC9CbEI7RUFDRSxPQzhCZ0I7O0FEMUJwQjtFQUNFLE9DNUZGOztBRGdHRjtFQUNFO0VBQ0E7RUFDQSxPQ25HQTs7QURxR0E7RUFDRSxrQkNuRUM7O0FEc0VIO0VBQ0U7RUFDQSxPQ1VrQjs7QURSbEI7RUFDRSxPQ09nQjs7QURIcEI7RUFDRSxPQ25IRjs7QUR1SEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzNIQTtFRDRIQSxZQUNFOztBQUlGO0VBQ0Usa0JDL0ZDOztBRGtHSDtFQUNFO0VBQ0EsT0NsQmtCOztBRG9CbEI7RUFDRSxPQ3JCZ0I7O0FEeUJwQjtFQUNFLE9DL0lGOztBRHFKRjtFQUNFLGtCQ3pHRztFRDBHSDtFQUNBLE9DeEpBOztBRDBKQTtFQUNFLGtCQzdHQzs7QURnSEg7RUFDRSxrQkM5RGU7RUQrRGYsT0MzQ2tCOztBRDZDbEI7RUFDRSxPQzlDZ0I7O0FEa0RwQjtFQUNFLE9DeEtGOztBRDRLRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaExBOztBRGtMQTtFQUNFLGtCQ3RJQzs7QUR5SUg7RUFDRTtFQUNBLE9DbkVrQjs7QURxRWxCO0VBQ0UsT0N0RWdCOztBRDBFcEI7RUFDRSxPQ2hNRjs7QURvTUY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3hNQTs7QUQwTUE7RUFDRSxrQkM5SkM7O0FEaUtIO0VBQ0U7RUFDQSxPQzNGa0I7O0FENkZsQjtFQUNFLE9DOUZnQjs7QURrR3BCO0VBQ0UsT0N4TkY7O0FENE5GO0VBQ0U7RUFDQTtFQUNBLE9DL05BOztBRGlPQTtFQUNFLGtCQ3JMQzs7QUR3TEg7RUFDRTtFQUNBLE9DbEhrQjs7QURvSGxCO0VBQ0UsT0NySGdCOztBRHlIcEI7RUFDRSxPQy9PRjs7QURtUEY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ3ZQQTtFRHdQQSxZQUNFOztBQUlGO0VBQ0Usa0JDak5DOztBRG9OSDtFQUNFO0VBQ0EsT0M5SWtCOztBRGdKbEI7RUFDRSxPQ2pKZ0I7O0FEcUpwQjtFQUNFLE9DM1FGOztBRGlSRjtFQUNFLGtCQ3pOSztFRDBOTDtFQUNBLE9DcFJBOztBRHNSQTtFQUNFLGtCQzdORzs7QURnT0w7RUFDRSxrQkN0TGlCO0VEdUxqQixPQ3ZLa0I7O0FEeUtsQjtFQUNFLE9DMUtnQjs7QUQ4S3BCO0VBQ0UsT0NwU0Y7O0FEd1NGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0M1U0E7O0FEOFNBO0VBQ0Usa0JDdFBHOztBRHlQTDtFQUNFO0VBQ0EsT0MvTGtCOztBRGlNbEI7RUFDRSxPQ2xNZ0I7O0FEc01wQjtFQUNFLE9DNVRGOztBRGdVRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DcFVBOztBRHNVQTtFQUNFLGtCQzlRRzs7QURpUkw7RUFDRTtFQUNBLE9Ddk5rQjs7QUR5TmxCO0VBQ0UsT0MxTmdCOztBRDhOcEI7RUFDRSxPQ3BWRjs7QUR3VkY7RUFDRTtFQUNBO0VBQ0EsT0MzVkE7O0FENlZBO0VBQ0Usa0JDclNHOztBRHdTTDtFQUNFO0VBQ0EsT0M5T2tCOztBRGdQbEI7RUFDRSxPQ2pQZ0I7O0FEcVBwQjtFQUNFLE9DM1dGOztBRCtXRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DblhBO0VEb1hBLFlBQ0U7O0FBSUY7RUFDRSxrQkNqVUc7O0FEb1VMO0VBQ0U7RUFDQSxPQzFRa0I7O0FENFFsQjtFQUNFLE9DN1FnQjs7QURpUnBCO0VBQ0UsT0N2WUY7O0FENllGO0VBQ0Usa0JDalVJO0VEa1VKO0VBQ0EsT0NoWkE7O0FEa1pBO0VBQ0Usa0JDclVFOztBRHdVSjtFQUNFLGtCQzFTZTtFRDJTZixPQ25Ta0I7O0FEcVNsQjtFQUNFLE9DdFNnQjs7QUQwU3BCO0VBQ0UsT0NoYUY7O0FEb2FGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N4YUE7O0FEMGFBO0VBQ0Usa0JDOVZFOztBRGlXSjtFQUNFO0VBQ0EsT0MzVGtCOztBRDZUbEI7RUFDRSxPQzlUZ0I7O0FEa1VwQjtFQUNFLE9DeGJGOztBRDRiRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DaGNBOztBRGtjQTtFQUNFLGtCQ3RYRTs7QUR5WEo7RUFDRTtFQUNBLE9DblZrQjs7QURxVmxCO0VBQ0UsT0N0VmdCOztBRDBWcEI7RUFDRSxPQ2hkRjs7QURvZEY7RUFDRTtFQUNBO0VBQ0EsT0N2ZEE7O0FEeWRBO0VBQ0Usa0JDN1lFOztBRGdaSjtFQUNFO0VBQ0EsT0MxV2tCOztBRDRXbEI7RUFDRSxPQzdXZ0I7O0FEaVhwQjtFQUNFLE9DdmVGOztBRDJlRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DL2VBO0VEZ2ZBLFlBQ0U7O0FBSUY7RUFDRSxrQkN6YUU7O0FENGFKO0VBQ0U7RUFDQSxPQ3RZa0I7O0FEd1lsQjtFQUNFLE9DellnQjs7QUQ2WXBCO0VBQ0UsT0NuZ0JGOztBRHlnQkY7RUFDRSxrQkN2Y0U7RUR3Y0Y7RUFDQSxPQzVnQkE7O0FEOGdCQTtFQUNFLGtCQzNjQTs7QUQ4Y0Y7RUFDRSxrQkMxYWE7RUQyYWIsT0MvWmtCOztBRGlhbEI7RUFDRSxPQ2xhZ0I7O0FEc2FwQjtFQUNFLE9DNWhCRjs7QURnaUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0NwaUJBOztBRHNpQkE7RUFDRSxrQkNwZUE7O0FEdWVGO0VBQ0U7RUFDQSxPQ3Zia0I7O0FEeWJsQjtFQUNFLE9DMWJnQjs7QUQ4YnBCO0VBQ0UsT0NwakJGOztBRHdqQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQzVqQkE7O0FEOGpCQTtFQUNFLGtCQzVmQTs7QUQrZkY7RUFDRTtFQUNBLE9DL2NrQjs7QURpZGxCO0VBQ0UsT0NsZGdCOztBRHNkcEI7RUFDRSxPQzVrQkY7O0FEZ2xCRjtFQUNFO0VBQ0E7RUFDQSxPQ25sQkE7O0FEcWxCQTtFQUNFLGtCQ25oQkE7O0FEc2hCRjtFQUNFO0VBQ0EsT0N0ZWtCOztBRHdlbEI7RUFDRSxPQ3plZ0I7O0FENmVwQjtFQUNFLE9Dbm1CRjs7QUR1bUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0MzbUJBO0VENG1CQSxZQUNFOztBQUlGO0VBQ0Usa0JDL2lCQTs7QURrakJGO0VBQ0U7RUFDQSxPQ2xnQmtCOztBRG9nQmxCO0VBQ0UsT0NyZ0JnQjs7QUR5Z0JwQjtFQUNFLE9DL25CRjs7QURxb0JGO0VBQ0Usa0JDL2lCSTtFRGdqQko7RUFDQSxPQ3hvQkE7O0FEMG9CQTtFQUNFLGtCQ25qQkU7O0FEc2pCSjtFQUNFLGtCQzloQmU7RUQraEJmLE9DM2hCa0I7O0FENmhCbEI7RUFDRSxPQzloQmdCOztBRGtpQnBCO0VBQ0UsT0N4cEJGOztBRDRwQkY7RUFDRTtFQUNBO0VBQ0E7RUFDQSxPQ2hxQkE7O0FEa3FCQTtFQUNFLGtCQzVrQkU7O0FEK2tCSjtFQUNFO0VBQ0EsT0NuakJrQjs7QURxakJsQjtFQUNFLE9DdGpCZ0I7O0FEMGpCcEI7RUFDRSxPQ2hyQkY7O0FEb3JCRjtFQUNFO0VBQ0E7RUFDQTtFQUNBLE9DeHJCQTs7QUQwckJBO0VBQ0Usa0JDcG1CRTs7QUR1bUJKO0VBQ0U7RUFDQSxPQzNrQmtCOztBRDZrQmxCO0VBQ0UsT0M5a0JnQjs7QURrbEJwQjtFQUNFLE9DeHNCRjs7QUQ0c0JGO0VBQ0U7RUFDQTtFQUNBLE9DL3NCQTs7QURpdEJBO0VBQ0Usa0JDM25CRTs7QUQ4bkJKO0VBQ0U7RUFDQSxPQ2xtQmtCOztBRG9tQmxCO0VBQ0UsT0NybUJnQjs7QUR5bUJwQjtFQUNFLE9DL3RCRjs7QURtdUJGO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsT0N2dUJBO0VEd3VCQSxZQUNFOztBQUlGO0VBQ0Usa0JDdnBCRTs7QUQwcEJKO0VBQ0U7RUFDQSxPQzluQmtCOztBRGdvQmxCO0VBQ0UsT0Nqb0JnQjs7QURxb0JwQjtFQUNFLE9DM3ZCRjs7QURrd0JKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFRTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUVFO0VBQ0E7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUU7RUFDQTs7QUFNSjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBSUo7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFHRjtFQUNFIiwic291cmNlc0NvbnRlbnQiOlsiQHVzZSBcIi4uLy4uL3N0eWxlcy9zZXR0aW5nc1wiIGFzICo7XG5cbi5idXR0b24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZ2FwOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjpcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UsXG4gICAgdHJhbnNmb3JtIDMwMG1zIGVhc2U7XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45Nyk7XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQuYnV0dG9uLWFwcGVhcmFuY2Uge1xuICAgICAgJi0tc29saWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdC1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0LWRpc2FibGVkO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kZWZhdWx0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdC1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1kZWZhdWx0O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNCksXG4gICAgICAgICAgMCAwIDI0cHggcmdiYSgkY29sb3ItZGVmYXVsdCwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZGVmYXVsdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1wcmltYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnktaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW91dGxpbmUtZGFzaGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IGRhc2hlZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeS1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1uby1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItcHJpbWFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tZ2xvd2luZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCA4cHggcmdiYSgkY29sb3ItcHJpbWFyeSwgMC41KSxcbiAgICAgICAgICAwIDAgMTZweCByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuMyk7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1wcmltYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc2Vjb25kYXJ5LmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5LWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZS1kYXNoZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnktZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDhweCByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLXNlY29uZGFyeSwgMC4zKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tc3VjY2Vzcy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3VjY2VzcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MtZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXN1Y2Nlc3M7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXN1Y2Nlc3MsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itc3VjY2VzcywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itc3VjY2Vzcy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtLWVycm9yLmJ1dHRvbi1hcHBlYXJhbmNlIHtcbiAgICAgICYtLXNvbGlkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWVycm9yO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1ob3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvci1kaXNhYmxlZDtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggZGFzaGVkICRjb2xvci1lcnJvcjtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLW5vLW91dGxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvciwgMC4yKTtcbiAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiA4cHg7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZXJyb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1lcnJvci1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1nbG93aW5nIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItZXJyb3IsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZXJyb3I7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjUpLFxuICAgICAgICAgIDAgMCAxNnB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjQpLFxuICAgICAgICAgIDAgMCAyNHB4IHJnYmEoJGNvbG9yLWVycm9yLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWVycm9yLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0td2FybmluZy5idXR0b24tYXBwZWFyYW5jZSB7XG4gICAgICAmLS1zb2xpZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2FybmluZztcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLS1vdXRsaW5lLWRhc2hlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2FybmluZztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQsIDAuMik7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuXG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi0tbm8tb3V0bGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuMik7XG4gICAgICAgIGJhY2tkcm9wLWZpbHRlcjogOHB4O1xuICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLWRpc2FibGVkLCAwLjIpO1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcblxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZS1kaXNhYmxlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yLXdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYtLWdsb3dpbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjIpO1xuICAgICAgICBiYWNrZHJvcC1maWx0ZXI6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdhcm5pbmc7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgOHB4IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSksXG4gICAgICAgICAgMCAwIDE2cHggcmdiYSgkY29sb3Itd2FybmluZywgMC40KSxcbiAgICAgICAgICAwIDAgMjRweCByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjMpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3Itd2FybmluZy1kaXNhYmxlZCwgMC4yKTtcbiAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG5cbiAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGV4dC1jb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtc2l6ZSB7XG4gICAgJi0teHNtIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgLy8gMTJweFxuICAgICAgbGluZS1oZWlnaHQ6IDFyZW07IC8vIDE2cHhcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtOyAvLyA0cHggOHB4XG4gICAgICBtaW4taGVpZ2h0OiAyOHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMXJlbTsgLy8gMTZweFxuICAgICAgICBtYXgtd2lkdGg6IDFyZW07IC8vIDE2cHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1zbSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtOyAvLyAxNHB4XG4gICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTsgLy8gMjBweFxuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTsgLy8gNnB4IDEycHhcbiAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxLjEyNXJlbTsgLy8gMThweFxuICAgICAgICBtYXgtd2lkdGg6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyAvLyAxNnB4XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgLy8gOHB4IDE2cHhcbiAgICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG5cbiAgICAgIC5zcGlubmVyLFxuICAgICAgLmljb24ge1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgICAgd2lkdGg6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyAvLyAxOHB4XG4gICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgLy8gMjhweFxuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTsgLy8gMTBweCAyMHB4XG4gICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS4zNzVyZW07IC8vIDIycHhcbiAgICAgICAgbWF4LXdpZHRoOiAxLjM3NXJlbTsgLy8gMjJweFxuICAgICAgfVxuICAgIH1cblxuICAgICYtLXhsZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IC8vIDIwcHhcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtOyAvLyAyOHB4XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgLy8gMTJweCAyNHB4XG4gICAgICBtaW4taGVpZ2h0OiA0OHB4O1xuXG4gICAgICAuc3Bpbm5lcixcbiAgICAgIC5pY29uIHtcbiAgICAgICAgbWF4LWhlaWdodDogMS41cmVtOyAvLyAyNHB4XG4gICAgICAgIG1heC13aWR0aDogMS41cmVtOyAvLyAyNHB4XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1yYWRpdXMge1xuICAgICYtLW5vbmUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMHJlbTsgLy8gMHB4XG4gICAgfVxuXG4gICAgJi0tc20ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07IC8vIDJweFxuICAgIH1cblxuICAgICYtLW1kIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtOyAvLyA2cHhcbiAgICB9XG5cbiAgICAmLS1sZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07IC8vIDhweFxuICAgIH1cblxuICAgICYtLWZ1bGwge1xuICAgICAgYm9yZGVyLXJhZGl1czogMS41cmVtOyAvLyAyNHB4XG4gICAgfVxuICB9XG5cbiAgLmljb24ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICYtLXJpZ2h0IHtcbiAgICAgIG9yZGVyOiA1O1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vID09PSBEZXNpZ24gVG9rZW5zIOKAlCBDb2xvciBQYWxldHRlID09PVxuXG4vLyBCYXNlXG4kd2hpdGU6ICNmZmZmZmY7XG4kYmxhY2s6ICMwMDAwMDA7XG4kdHJhbnNwYXJlbnQ6IHRyYW5zcGFyZW50O1xuXG4vLyA9PT0gQmxhY2sgVHJhbnNwYXJlbnQgU2NhbGUgPT09XG4kYmxhY2stdHJhbnNwYXJlbnQtMTAwOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtMjAwOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4kYmxhY2stdHJhbnNwYXJlbnQtMzAwOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNDAwOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNTAwOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4kYmxhY2stdHJhbnNwYXJlbnQtNjAwOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4kYmxhY2stdHJhbnNwYXJlbnQtNzAwOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYmxhY2stdHJhbnNwYXJlbnQtODAwOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4kYmxhY2stdHJhbnNwYXJlbnQtOTAwOiByZ2JhKDAsIDAsIDAsIDAuOSk7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiR3aGl0ZS10cmFuc3BhcmVudC0xMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0yMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiR3aGl0ZS10cmFuc3BhcmVudC0zMDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiR3aGl0ZS10cmFuc3BhcmVudC00MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiR3aGl0ZS10cmFuc3BhcmVudC01MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiR3aGl0ZS10cmFuc3BhcmVudC02MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiR3aGl0ZS10cmFuc3BhcmVudC03MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcbiR3aGl0ZS10cmFuc3BhcmVudC04MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiR3aGl0ZS10cmFuc3BhcmVudC05MDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcblxuLy8gPT09IE5ldXRyYWwgU2NhbGUgKEdyZXkpID09PVxuJGdyZXktNTA6ICNmOWZhZmI7XG4kZ3JleS0xMDA6ICNmM2Y0ZjY7XG4kZ3JleS0yMDA6ICNlNWU3ZWI7XG4kZ3JleS0zMDA6ICNkMWQ1ZGI7XG4kZ3JleS00MDA6ICM5Y2EzYWY7XG4kZ3JleS01MDA6ICM2YjcyODA7XG4kZ3JleS02MDA6ICM0YjU1NjM7XG4kZ3JleS03MDA6ICMzNzQxNTE7XG4kZ3JleS04MDA6ICMxZjI5Mzc7XG4kZ3JleS05MDA6ICMxMTE4Mjc7XG5cbi8vID09PSBQcmltYXJ5IFNjYWxlIChCbHVlKSA9PT1cbiRibHVlLTUwOiAjZWZmNmZmO1xuJGJsdWUtMTAwOiAjZGJlYWZlO1xuJGJsdWUtMjAwOiAjYmZkYmZlO1xuJGJsdWUtMzAwOiAjOTNjNWZkO1xuJGJsdWUtNDAwOiAjNjBhNWZhO1xuJGJsdWUtNTAwOiAjM2I4MmY2O1xuJGJsdWUtNjAwOiAjMjU2M2ViOyAvLyBNYWluXG4kYmx1ZS03MDA6ICMxZDRlZDg7IC8vIEhvdmVyXG4kYmx1ZS04MDA6ICMxZTQwYWY7XG4kYmx1ZS05MDA6ICMxZTNhOGE7XG5cbi8vID09PSBTZWNvbmRhcnkgU2NhbGUgKEluZGlnbykgPT09XG4kaW5kaWdvLTUwOiAjZWVmMmZmO1xuJGluZGlnby0xMDA6ICNlMGU3ZmY7XG4kaW5kaWdvLTIwMDogI2M3ZDJmZTtcbiRpbmRpZ28tMzAwOiAjYTViNGZjO1xuJGluZGlnby00MDA6ICM4MThjZjg7XG4kaW5kaWdvLTUwMDogIzYzNjZmMTtcbiRpbmRpZ28tNjAwOiAjNGY0NmU1OyAvLyBNYWluXG4kaW5kaWdvLTcwMDogIzQzMzhjYTsgLy8gSG92ZXJcblxuLy8gPT09IEVycm9yIFNjYWxlIChSZWQpID09PVxuJHJlZC01MDogI2ZlZjJmMjtcbiRyZWQtMTAwOiAjZmVlMmUyO1xuJHJlZC0yMDA6ICNmZWNhY2E7XG4kcmVkLTMwMDogI2ZjYTVhNTtcbiRyZWQtNDAwOiAjZjg3MTcxO1xuJHJlZC01MDA6ICNlZjQ0NDQ7XG4kcmVkLTYwMDogI2RjMjYyNjsgLy8gTWFpblxuJHJlZC03MDA6ICNiOTFjMWM7IC8vIEhvdmVyXG5cbi8vID09PSBTdWNjZXNzIFNjYWxlIChHcmVlbikgPT09XG4kZ3JlZW4tNTA6ICNmMGZkZjQ7XG4kZ3JlZW4tMTAwOiAjZGNmY2U3O1xuJGdyZWVuLTIwMDogI2JiZjdkMDtcbiRncmVlbi0zMDA6ICM4NmVmYWM7XG4kZ3JlZW4tNDAwOiAjNGFkZTgwO1xuJGdyZWVuLTUwMDogIzIyYzU1ZTtcbiRncmVlbi02MDA6ICMxNmEzNGE7IC8vIE1haW5cbiRncmVlbi03MDA6ICMxNTgwM2Q7IC8vIEhvdmVyXG5cbi8vID09PSBXYXJuaW5nIFNjYWxlIChBbWJlcikgPT09XG4kYW1iZXItNTA6ICNmZmZiZWI7XG4kYW1iZXItMTAwOiAjZmVmM2M3O1xuJGFtYmVyLTIwMDogI2ZkZTY4YTtcbiRhbWJlci0zMDA6ICNmY2QzNGQ7XG4kYW1iZXItNDAwOiAjZmJiZjI0O1xuJGFtYmVyLTUwMDogI2Y1OWUwYjtcbiRhbWJlci02MDA6ICNkOTc3MDY7IC8vIE1haW5cbiRhbWJlci03MDA6ICNiNDUzMDk7IC8vIEhvdmVyXG5cbi8vID09PSBTZW1hbnRpYyBUb2tlbnMgPT09XG4kY29sb3ItZGVmYXVsdDogJGdyZXktODAwO1xuJGNvbG9yLWRlZmF1bHQtaG92ZXI6ICRncmV5LTkwMDtcbiRjb2xvci1kZWZhdWx0LWRpc2FibGVkOiByZ2JhKCRjb2xvci1kZWZhdWx0LCAwLjUpO1xuXG4kY29sb3ItcHJpbWFyeTogJGJsdWUtNjAwO1xuJGNvbG9yLXByaW1hcnktaG92ZXI6ICRibHVlLTcwMDtcbiRjb2xvci1wcmltYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1wcmltYXJ5LCAwLjUpO1xuXG4kY29sb3Itc2Vjb25kYXJ5OiAkaW5kaWdvLTYwMDtcbiRjb2xvci1zZWNvbmRhcnktaG92ZXI6ICRpbmRpZ28tNzAwO1xuJGNvbG9yLXNlY29uZGFyeS1kaXNhYmxlZDogcmdiYSgkY29sb3Itc2Vjb25kYXJ5LCAwLjUpO1xuXG4kY29sb3ItZXJyb3I6ICRyZWQtNjAwO1xuJGNvbG9yLWVycm9yLWhvdmVyOiAkcmVkLTcwMDtcbiRjb2xvci1lcnJvci1kaXNhYmxlZDogcmdiYSgkY29sb3ItZXJyb3IsIDAuNSk7XG5cbiRjb2xvci1zdWNjZXNzOiAkZ3JlZW4tNjAwO1xuJGNvbG9yLXN1Y2Nlc3MtaG92ZXI6ICRncmVlbi03MDA7XG4kY29sb3Itc3VjY2Vzcy1kaXNhYmxlZDogcmdiYSgkY29sb3Itc3VjY2VzcywgMC41KTtcblxuJGNvbG9yLXdhcm5pbmc6ICRhbWJlci02MDA7XG4kY29sb3Itd2FybmluZy1ob3ZlcjogJGFtYmVyLTcwMDtcbiRjb2xvci13YXJuaW5nLWRpc2FibGVkOiByZ2JhKCRjb2xvci13YXJuaW5nLCAwLjUpO1xuXG4kdGV4dC1jb2xvci13aGl0ZTogJHdoaXRlO1xuJHRleHQtY29sb3ItYmxhY2s6ICRibGFjaztcbiR0ZXh0LWNvbG9yLXdoaXRlLWRpc2FibGVkOiByZ2JhKCR3aGl0ZSwgMC41KTtcbiR0ZXh0LWNvbG9yLWJsYWNrLWRpc2FibGVkOiByZ2JhKCRibGFjaywgMC41KTtcblxuLy8gPT09IFNoYWRvd3MgPT09XG4kc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2JhKCRibGFjaywgMC4wNSk7XG4kc2hhZG93LW1kOlxuICAwIDRweCA2cHggLTFweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCAycHggNHB4IC0xcHggcmdiYSgkYmxhY2ssIDAuMDYpO1xuJHNoYWRvdy1sZzpcbiAgMCAxMHB4IDE1cHggLTNweCByZ2JhKCRibGFjaywgMC4xKSxcbiAgMCA0cHggNnB4IC0ycHggcmdiYSgkYmxhY2ssIDAuMDUpO1xuXG4vLyA9PT0gRm9udCBmYW1pbGllcyA9PT1cbiRmb250LWZhbWlseS1zYW5zOiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2VyaWY6IFwiR2VvcmdpYVwiLCBzZXJpZjtcbiRmb250LWZhbWlseS1tb25vOiBcIkZpcmEgQ29kZVwiLCBtb25vc3BhY2U7XG5cbi8vID09PSBGb250IHdlaWdodHMgPT09XG4kZm9udC13ZWlnaHQtcmVndWxhcjogNDAwO1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuXG4vLyA9PT0gTGluZSBoZWlnaHRzID09PVxuJGxpbmUtaGVpZ2h0LXRpZ2h0OiAxLjI7XG4kbGluZS1oZWlnaHQtc251ZzogMS4zNzU7XG4kbGluZS1oZWlnaHQtbm9ybWFsOiAxLjU7XG4kbGluZS1oZWlnaHQtbG9vc2U6IDEuNjI1O1xuXG4vLyA9PT0gRm9udCBTaXplcyDigJQgU2VtYW50aWMgVG9rZW5zID09PVxuXG4vLyA9PT0gVGl0bGVzID09PVxuJGZvbnQtc2l6ZS1oZXJvOiAzcmVtOyAvLyA0OHB4XG4kZm9udC1zaXplLXRpdGxlLTE6IDIuMjVyZW07IC8vIDM2cHhcbiRmb250LXNpemUtdGl0bGUtMjogMS44NzVyZW07IC8vIDMwcHhcbiRmb250LXNpemUtdGl0bGUtMzogMS41cmVtOyAvLyAyNHB4XG5cbi8vID09PSBTdWJ0aXRsZXMgPT09XG4kZm9udC1zaXplLXN1YnRpdGxlLTE6IDEuMjVyZW07IC8vIDIwcHhcbiRmb250LXNpemUtc3VidGl0bGUtMjogMS4xMjVyZW07IC8vIDE4cHhcblxuLy8gPT09IEJvZHkgdGV4dCA9PT1cbiRmb250LXNpemUtYm9keS1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1ib2R5LW1kOiAwLjkzNzVyZW07IC8vIDE1cHhcbiRmb250LXNpemUtYm9keS1zbTogMC44NzVyZW07IC8vIDE0cHhcblxuLy8gPT09IENhcHRpb25zIC8gRGVzY3JpcHRpb25zID09PVxuJGZvbnQtc2l6ZS1jYXB0aW9uOiAwLjc1cmVtOyAvLyAxMnB4XG4kZm9udC1zaXplLWZvb3Rub3RlOiAwLjY4NzVyZW07IC8vIDExcHhcblxuLy8gPT09IEJ1dHRvbnMgPT09XG4kZm9udC1zaXplLWJ1dHRvbi1sZzogMXJlbTsgLy8gMTZweFxuJGZvbnQtc2l6ZS1idXR0b24tbWQ6IDAuODc1cmVtOyAvLyAxNHB4XG4kZm9udC1zaXplLWJ1dHRvbi1zbTogMC43NXJlbTsgLy8gMTJweFxuXG4vLyA9PT0gQW5pbWF0aW9ucyA9PT1cblxuJGN1YmljLWJlemllci1wcmltYXJ5OiBjdWJpYy1iZXppZXIoMC41NSwgLTAuMTksIDAuNTksIDAuOTUpO1xuJGN1YmljLWJlemllci1zZWNvbmRhcnk6IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcbiJdfQ== */","\"use client\";\n\nimport * as React from \"react\";\nimport { type IButton, Button } from \"../Button\";\n\nimport styles from \"./ButtonGroup.module.scss\";\n\nexport interface IButtonGroup {\n children:\n | React.ReactElement<IButton, typeof Button>\n | React.ReactElement<IButton, typeof Button>[];\n align?: \"vertical\" | \"horizontal\";\n variant?:\n | \"default\"\n | \"primary\"\n | \"secondary\"\n | \"success\"\n | \"error\"\n | \"warning\";\n size?: \"xsm\" | \"sm\" | \"md\" | \"lg\" | \"xlg\";\n radius?: \"none\" | \"sm\" | \"md\" | \"lg\" | \"full\";\n disabled?: boolean;\n className?: string;\n}\n\nexport const ButtonGroup: React.FC<IButtonGroup> = ({\n children,\n align = \"horizontal\",\n variant = \"default\",\n size = \"md\",\n radius = \"md\",\n disabled,\n className = \"\",\n}) => {\n return (\n <div\n className={`${styles[\"button-group\"]} ${styles[`button-group-variant--${variant}`]} ${styles[`button-group-size--${size}`]} ${styles[`button-group-radius--${radius}`]} ${styles[`button-group-align--${align}`]} ${className}`}\n >\n {React.Children.toArray(children)\n .filter(\n (child): child is React.ReactElement<IButton, typeof Button> =>\n React.isValidElement(child) && child.type === Button\n )\n .map((child, index) =>\n React.cloneElement(child, {\n key: index || child.key,\n size: size || child.props.size,\n disabled: disabled || child.props.disabled,\n variant: variant || child.props.variant,\n radius: \"none\",\n })\n )}\n </div>\n );\n};\n",".button-group {\n align-items: center;\n display: flex;\n overflow: hidden;\n max-width: max-content;\n}\n.button-group-align--horizontal {\n flex-direction: row;\n}\n.button-group-align--vertical {\n flex-direction: column;\n}\n.button-group-variant--default {\n background-color: #1f2937;\n}\n.button-group-variant--primary {\n background-color: #2563eb;\n}\n.button-group-variant--secondary {\n background-color: #4f46e5;\n}\n.button-group-variant--success {\n background-color: #16a34a;\n}\n.button-group-variant--error {\n background-color: #dc2626;\n}\n.button-group-variant--warning {\n background-color: #d97706;\n}\n.button-group-radius--none {\n border-radius: 0rem;\n}\n.button-group-radius--sm {\n border-radius: 0.125rem;\n}\n.button-group-radius--md {\n border-radius: 0.375rem;\n}\n.button-group-radius--lg {\n border-radius: 0.5rem;\n}\n.button-group-radius--full {\n border-radius: 1.5rem;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL1VzZXJzL2RodW5hbnlhbi9hcmlzdG9ieXRlL2dpdGh1Yi9hcmlzdG9ieXRlLXVpL3BhY2thZ2VzL2J1dHRvbi9jb21wb25lbnRzL0J1dHRvbkdyb3VwIiwic291cmNlcyI6WyJCdXR0b25Hcm91cC5tb2R1bGUuc2NzcyIsIi4uLy4uL3N0eWxlcy9fc2V0dGluZ3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUdFO0VBQ0U7O0FBR0Y7RUFDRTs7QUFLRjtFQUNFLGtCQ2tCSzs7QURmUDtFQUNFLGtCQ3dCSzs7QURyQlA7RUFDRSxrQkNnQ087O0FEN0JUO0VBQ0Usa0JDZ0RNOztBRDdDUjtFQUNFLGtCQ2tDSTs7QUQvQk47RUFDRSxrQkNrRE07O0FEN0NSO0VBQ0U7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRSIsInNvdXJjZXNDb250ZW50IjpbIkB1c2UgXCIuLi8uLi9zdHlsZXMvc2V0dGluZ3NcIiBhcyAqO1xuXG4uYnV0dG9uLWdyb3VwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiBtYXgtY29udGVudDtcblxuICAmLWFsaWduIHtcbiAgICAmLS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgJi0tdmVydGljYWwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmLXZhcmlhbnQge1xuICAgICYtLWRlZmF1bHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi0tcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgICB9XG5cbiAgICAmLS1zZWNvbmRhcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcbiAgICB9XG5cbiAgICAmLS1zdWNjZXNzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIH1cblxuICAgICYtLWVycm9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1lcnJvcjtcbiAgICB9XG5cbiAgICAmLS13YXJuaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICAgIH1cbiAgfVxuXG4gICYtcmFkaXVzIHtcbiAgICAmLS1ub25lIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDByZW07IC8vIDBweFxuICAgIH1cblxuICAgICYtLXNtIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtOyAvLyAycHhcbiAgICB9XG5cbiAgICAmLS1tZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTsgLy8gNnB4XG4gICAgfVxuXG4gICAgJi0tbGcge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtOyAvLyA4cHhcbiAgICB9XG5cbiAgICAmLS1mdWxsIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNXJlbTsgLy8gMjRweFxuICAgIH1cbiAgfVxufVxuIiwiLy8gPT09IERlc2lnbiBUb2tlbnMg4oCUIENvbG9yIFBhbGV0dGUgPT09XG5cbi8vIEJhc2VcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibGFjazogIzAwMDAwMDtcbiR0cmFuc3BhcmVudDogdHJhbnNwYXJlbnQ7XG5cbi8vID09PSBCbGFjayBUcmFuc3BhcmVudCBTY2FsZSA9PT1cbiRibGFjay10cmFuc3BhcmVudC0xMDA6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiRibGFjay10cmFuc3BhcmVudC0yMDA6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRibGFjay10cmFuc3BhcmVudC0zMDA6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiRibGFjay10cmFuc3BhcmVudC00MDA6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiRibGFjay10cmFuc3BhcmVudC01MDA6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRibGFjay10cmFuc3BhcmVudC02MDA6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiRibGFjay10cmFuc3BhcmVudC03MDA6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiRibGFjay10cmFuc3BhcmVudC04MDA6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiRibGFjay10cmFuc3BhcmVudC05MDA6IHJnYmEoMCwgMCwgMCwgMC45KTtcblxuLy8gPT09IEJsYWNrIFRyYW5zcGFyZW50IFNjYWxlID09PVxuJHdoaXRlLXRyYW5zcGFyZW50LTEwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTIwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTMwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTQwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTUwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTYwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTcwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTgwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuJHdoaXRlLXRyYW5zcGFyZW50LTkwMDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuXG4vLyA9PT0gTmV1dHJhbCBTY2FsZSAoR3JleSkgPT09XG4kZ3JleS01MDogI2Y5ZmFmYjtcbiRncmV5LTEwMDogI2YzZjRmNjtcbiRncmV5LTIwMDogI2U1ZTdlYjtcbiRncmV5LTMwMDogI2QxZDVkYjtcbiRncmV5LTQwMDogIzljYTNhZjtcbiRncmV5LTUwMDogIzZiNzI4MDtcbiRncmV5LTYwMDogIzRiNTU2MztcbiRncmV5LTcwMDogIzM3NDE1MTtcbiRncmV5LTgwMDogIzFmMjkzNztcbiRncmV5LTkwMDogIzExMTgyNztcblxuLy8gPT09IFByaW1hcnkgU2NhbGUgKEJsdWUpID09PVxuJGJsdWUtNTA6ICNlZmY2ZmY7XG4kYmx1ZS0xMDA6ICNkYmVhZmU7XG4kYmx1ZS0yMDA6ICNiZmRiZmU7XG4kYmx1ZS0zMDA6ICM5M2M1ZmQ7XG4kYmx1ZS00MDA6ICM2MGE1ZmE7XG4kYmx1ZS01MDA6ICMzYjgyZjY7XG4kYmx1ZS02MDA6ICMyNTYzZWI7IC8vIE1haW5cbiRibHVlLTcwMDogIzFkNGVkODsgLy8gSG92ZXJcbiRibHVlLTgwMDogIzFlNDBhZjtcbiRibHVlLTkwMDogIzFlM2E4YTtcblxuLy8gPT09IFNlY29uZGFyeSBTY2FsZSAoSW5kaWdvKSA9PT1cbiRpbmRpZ28tNTA6ICNlZWYyZmY7XG4kaW5kaWdvLTEwMDogI2UwZTdmZjtcbiRpbmRpZ28tMjAwOiAjYzdkMmZlO1xuJGluZGlnby0zMDA6ICNhNWI0ZmM7XG4kaW5kaWdvLTQwMDogIzgxOGNmODtcbiRpbmRpZ28tNTAwOiAjNjM2NmYxO1xuJGluZGlnby02MDA6ICM0ZjQ2ZTU7IC8vIE1haW5cbiRpbmRpZ28tNzAwOiAjNDMzOGNhOyAvLyBIb3ZlclxuXG4vLyA9PT0gRXJyb3IgU2NhbGUgKFJlZCkgPT09XG4kcmVkLTUwOiAjZmVmMmYyO1xuJHJlZC0xMDA6ICNmZWUyZTI7XG4kcmVkLTIwMDogI2ZlY2FjYTtcbiRyZWQtMzAwOiAjZmNhNWE1O1xuJHJlZC00MDA6ICNmODcxNzE7XG4kcmVkLTUwMDogI2VmNDQ0NDtcbiRyZWQtNjAwOiAjZGMyNjI2OyAvLyBNYWluXG4kcmVkLTcwMDogI2I5MWMxYzsgLy8gSG92ZXJcblxuLy8gPT09IFN1Y2Nlc3MgU2NhbGUgKEdyZWVuKSA9PT1cbiRncmVlbi01MDogI2YwZmRmNDtcbiRncmVlbi0xMDA6ICNkY2ZjZTc7XG4kZ3JlZW4tMjAwOiAjYmJmN2QwO1xuJGdyZWVuLTMwMDogIzg2ZWZhYztcbiRncmVlbi00MDA6ICM0YWRlODA7XG4kZ3JlZW4tNTAwOiAjMjJjNTVlO1xuJGdyZWVuLTYwMDogIzE2YTM0YTsgLy8gTWFpblxuJGdyZWVuLTcwMDogIzE1ODAzZDsgLy8gSG92ZXJcblxuLy8gPT09IFdhcm5pbmcgU2NhbGUgKEFtYmVyKSA9PT1cbiRhbWJlci01MDogI2ZmZmJlYjtcbiRhbWJlci0xMDA6ICNmZWYzYzc7XG4kYW1iZXItMjAwOiAjZmRlNjhhO1xuJGFtYmVyLTMwMDogI2ZjZDM0ZDtcbiRhbWJlci00MDA6ICNmYmJmMjQ7XG4kYW1iZXItNTAwOiAjZjU5ZTBiO1xuJGFtYmVyLTYwMDogI2Q5NzcwNjsgLy8gTWFpblxuJGFtYmVyLTcwMDogI2I0NTMwOTsgLy8gSG92ZXJcblxuLy8gPT09IFNlbWFudGljIFRva2VucyA9PT1cbiRjb2xvci1kZWZhdWx0OiAkZ3JleS04MDA7XG4kY29sb3ItZGVmYXVsdC1ob3ZlcjogJGdyZXktOTAwO1xuJGNvbG9yLWRlZmF1bHQtZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLWRlZmF1bHQsIDAuNSk7XG5cbiRjb2xvci1wcmltYXJ5OiAkYmx1ZS02MDA7XG4kY29sb3ItcHJpbWFyeS1ob3ZlcjogJGJsdWUtNzAwO1xuJGNvbG9yLXByaW1hcnktZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXByaW1hcnksIDAuNSk7XG5cbiRjb2xvci1zZWNvbmRhcnk6ICRpbmRpZ28tNjAwO1xuJGNvbG9yLXNlY29uZGFyeS1ob3ZlcjogJGluZGlnby03MDA7XG4kY29sb3Itc2Vjb25kYXJ5LWRpc2FibGVkOiByZ2JhKCRjb2xvci1zZWNvbmRhcnksIDAuNSk7XG5cbiRjb2xvci1lcnJvcjogJHJlZC02MDA7XG4kY29sb3ItZXJyb3ItaG92ZXI6ICRyZWQtNzAwO1xuJGNvbG9yLWVycm9yLWRpc2FibGVkOiByZ2JhKCRjb2xvci1lcnJvciwgMC41KTtcblxuJGNvbG9yLXN1Y2Nlc3M6ICRncmVlbi02MDA7XG4kY29sb3Itc3VjY2Vzcy1ob3ZlcjogJGdyZWVuLTcwMDtcbiRjb2xvci1zdWNjZXNzLWRpc2FibGVkOiByZ2JhKCRjb2xvci1zdWNjZXNzLCAwLjUpO1xuXG4kY29sb3Itd2FybmluZzogJGFtYmVyLTYwMDtcbiRjb2xvci13YXJuaW5nLWhvdmVyOiAkYW1iZXItNzAwO1xuJGNvbG9yLXdhcm5pbmctZGlzYWJsZWQ6IHJnYmEoJGNvbG9yLXdhcm5pbmcsIDAuNSk7XG5cbiR0ZXh0LWNvbG9yLXdoaXRlOiAkd2hpdGU7XG4kdGV4dC1jb2xvci1ibGFjazogJGJsYWNrO1xuJHRleHQtY29sb3Itd2hpdGUtZGlzYWJsZWQ6IHJnYmEoJHdoaXRlLCAwLjUpO1xuJHRleHQtY29sb3ItYmxhY2stZGlzYWJsZWQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuXG4vLyA9PT0gU2hhZG93cyA9PT1cbiRzaGFkb3ctc206IDAgMXB4IDJweCAwIHJnYmEoJGJsYWNrLCAwLjA1KTtcbiRzaGFkb3ctbWQ6XG4gIDAgNHB4IDZweCAtMXB4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDJweCA0cHggLTFweCByZ2JhKCRibGFjaywgMC4wNik7XG4kc2hhZG93LWxnOlxuICAwIDEwcHggMTVweCAtM3B4IHJnYmEoJGJsYWNrLCAwLjEpLFxuICAwIDRweCA2cHggLTJweCByZ2JhKCRibGFjaywgMC4wNSk7XG5cbi8vID09PSBGb250IGZhbWlsaWVzID09PVxuJGZvbnQtZmFtaWx5LXNhbnM6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiRmb250LWZhbWlseS1zZXJpZjogXCJHZW9yZ2lhXCIsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LW1vbm86IFwiRmlyYSBDb2RlXCIsIG1vbm9zcGFjZTtcblxuLy8gPT09IEZvbnQgd2VpZ2h0cyA9PT1cbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vID09PSBMaW5lIGhlaWdodHMgPT09XG4kbGluZS1oZWlnaHQtdGlnaHQ6IDEuMjtcbiRsaW5lLWhlaWdodC1zbnVnOiAxLjM3NTtcbiRsaW5lLWhlaWdodC1ub3JtYWw6IDEuNTtcbiRsaW5lLWhlaWdodC1sb29zZTogMS42MjU7XG5cbi8vID09PSBGb250IFNpemVzIOKAlCBTZW1hbnRpYyBUb2tlbnMgPT09XG5cbi8vID09PSBUaXRsZXMgPT09XG4kZm9udC1zaXplLWhlcm86IDNyZW07IC8vIDQ4cHhcbiRmb250LXNpemUtdGl0bGUtMTogMi4yNXJlbTsgLy8gMzZweFxuJGZvbnQtc2l6ZS10aXRsZS0yOiAxLjg3NXJlbTsgLy8gMzBweFxuJGZvbnQtc2l6ZS10aXRsZS0zOiAxLjVyZW07IC8vIDI0cHhcblxuLy8gPT09IFN1YnRpdGxlcyA9PT1cbiRmb250LXNpemUtc3VidGl0bGUtMTogMS4yNXJlbTsgLy8gMjBweFxuJGZvbnQtc2l6ZS1zdWJ0aXRsZS0yOiAxLjEyNXJlbTsgLy8gMThweFxuXG4vLyA9PT0gQm9keSB0ZXh0ID09PVxuJGZvbnQtc2l6ZS1ib2R5LWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJvZHktbWQ6IDAuOTM3NXJlbTsgLy8gMTVweFxuJGZvbnQtc2l6ZS1ib2R5LXNtOiAwLjg3NXJlbTsgLy8gMTRweFxuXG4vLyA9PT0gQ2FwdGlvbnMgLyBEZXNjcmlwdGlvbnMgPT09XG4kZm9udC1zaXplLWNhcHRpb246IDAuNzVyZW07IC8vIDEycHhcbiRmb250LXNpemUtZm9vdG5vdGU6IDAuNjg3NXJlbTsgLy8gMTFweFxuXG4vLyA9PT0gQnV0dG9ucyA9PT1cbiRmb250LXNpemUtYnV0dG9uLWxnOiAxcmVtOyAvLyAxNnB4XG4kZm9udC1zaXplLWJ1dHRvbi1tZDogMC44NzVyZW07IC8vIDE0cHhcbiRmb250LXNpemUtYnV0dG9uLXNtOiAwLjc1cmVtOyAvLyAxMnB4XG5cbi8vID09PSBBbmltYXRpb25zID09PVxuXG4kY3ViaWMtYmV6aWVyLXByaW1hcnk6IGN1YmljLWJlemllcigwLjU1LCAtMC4xOSwgMC41OSwgMC45NSk7XG4kY3ViaWMtYmV6aWVyLXNlY29uZGFyeTogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuIl19 */"],"mappings":";;;AAEA,YAAY,WAAW;AACvB,SAAS,eAAe;;;ACKjB,IAAM,eAAe,CAA0C;AAAA,EACpE;AAAA,EACA;AAAA,EACA;AACF,MAAqC;AACnC,QAAM,SAAS,IAAI;AACnB,MAAI,CAAC,OAAQ;AAEb,QAAM,SAAS,SAAS,cAAc,MAAM;AAC5C,QAAM,WAAW,KAAK,IAAI,OAAO,aAAa,OAAO,YAAY;AACjE,QAAM,SAAS,WAAW;AAE1B,SAAO,KAAK;AAEZ,QAAM,QAAQ,SAAS,cAAc,OAAO;AAC5C,QAAM,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKF,QAAQ;AAAA,gBACV,UAAU,OAAO,sBAAsB,EAAE,OAAO,MAAM;AAAA;AAAA;AAAA,eAGvD,UAAU,OAAO,sBAAsB,EAAE,MAAM,MAAM;AAAA;AAAA,iBAEnD,QAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAYvB,SAAO,YAAY,KAAK;AACxB,SAAO,YAAY,MAAM;AAEzB,SAAO,iBAAiB,gBAAgB,MAAM;AAC5C,WAAO,OAAO;AACd,UAAM,OAAO;AAAA,EACf,CAAC;AACH;;;ACrDA;;;AF2DI,mBAEI,KAFJ;AA1BG,IAAM,SAA4B,CAAC;AAAA,EACxC;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,aAAa;AAAA,EACb,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,cAAc;AAAA,EACd,YAAY;AAAA,EACZ;AAAA,EACA,YAAY;AAAA,EACZ;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,MAAY,aAA0B,IAAI;AAEhD,QAAM,cAAc,CAAC,MAAuD;AAC1E,UAAM,EAAE,SAAS,QAAQ,IAAI;AAC7B,iBAAgC,EAAE,KAAK,SAAS,QAAQ,CAAC;AACzD,QAAI,SAAS;AACX,cAAQ,CAAC;AAAA,IACX;AAAA,EACF;AAEA,QAAMA,YAAW,MAAG;AA1DtB;AA2DI,4CACG;AAAA,mBACC;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA,MAAM;AAAA,UACN,WAAW,sBAAO,SAAS;AAAA;AAAA,MAC7B;AAAA,MAED,QACC;AAAA,QAAC;AAAA;AAAA,UACC,WAAW,GAAG,sBAAO,MAAM,CAAC,IAAI,sBAAO,UAAS,UAAK,UAAL,YAAc,MAAM,EAAE,CAAC;AAAA,UAEtE,UAAM,oBAAc,KAAK,SAAS;AAAA;AAAA,MACrC;AAAA,MAED;AAAA,OACH;AAAA;AAGF,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,UAAU,YAAY;AAAA,MACtB,WAAW,GAAG,sBAAO,QAAQ,CAAC,IAAI,sBAAO,mBAAmB,OAAO,EAAE,CAAC,IAAI,sBAAO,sBAAsB,UAAU,EAAE,CAAC,IAAI,sBAAO,gBAAgB,IAAI,EAAE,CAAC,IAAI,sBAAO,kBAAkB,MAAM,EAAE,CAAC,IAAI,YAAY,sBAAO,iBAAiB,IAAI,EAAE,IAAI,SAAS;AAAA,MACvP,SAAS;AAAA,MACR,GAAI,0BACD,EAAE,wBAAwB,IAC1B,EAAE,UAAU,oBAACA,WAAA,EAAS,EAAG;AAAA,MAC5B,GAAG;AAAA;AAAA,EACN;AAEJ;;;AGzFA,YAAYC,YAAW;;;ACFvB;;;ADmCI,gBAAAC,YAAA;AAVG,IAAM,cAAsC,CAAC;AAAA,EAClD;AAAA,EACA,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AAAA,EACP,SAAS;AAAA,EACT;AAAA,EACA,YAAY;AACd,MAAM;AACJ,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,GAAG,2BAAO,cAAc,CAAC,IAAI,2BAAO,yBAAyB,OAAO,EAAE,CAAC,IAAI,2BAAO,sBAAsB,IAAI,EAAE,CAAC,IAAI,2BAAO,wBAAwB,MAAM,EAAE,CAAC,IAAI,2BAAO,uBAAuB,KAAK,EAAE,CAAC,IAAI,SAAS;AAAA,MAE5N,UAAM,gBAAS,QAAQ,QAAQ,EAC7B;AAAA,QACC,CAAC,UACO,sBAAe,KAAK,KAAK,MAAM,SAAS;AAAA,MAClD,EACC;AAAA,QAAI,CAAC,OAAO,UACL,oBAAa,OAAO;AAAA,UACxB,KAAK,SAAS,MAAM;AAAA,UACpB,MAAM,QAAQ,MAAM,MAAM;AAAA,UAC1B,UAAU,YAAY,MAAM,MAAM;AAAA,UAClC,SAAS,WAAW,MAAM,MAAM;AAAA,UAChC,QAAQ;AAAA,QACV,CAAC;AAAA,MACH;AAAA;AAAA,EACJ;AAEJ;","names":["Children","React","jsx"]}
|
package/package.json
CHANGED
|
@@ -1,14 +1,52 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aristobyte-ui/button",
|
|
3
|
-
"
|
|
3
|
+
"description": "react button and buttongroup components with multiple variants, appearances, sizes, radius options, icons, ripple feedback, and fully typed typescript support",
|
|
4
|
+
"version": "1.0.9",
|
|
4
5
|
"license": "MIT",
|
|
5
6
|
"private": false,
|
|
6
7
|
"main": "dist/index.js",
|
|
7
8
|
"module": "dist/index.mjs",
|
|
8
9
|
"types": "dist/index.d.ts",
|
|
10
|
+
"author": "AristoByte <info@aristobyte.com>",
|
|
11
|
+
"homepage": "https://www.npmjs.com/package/@aristobyte-ui/button",
|
|
12
|
+
"repository": {
|
|
13
|
+
"type": "git",
|
|
14
|
+
"url": "git+https://github.com/aristobyte-team/aristobyte-ui.git",
|
|
15
|
+
"directory": "packages/jest-config"
|
|
16
|
+
},
|
|
17
|
+
"bugs": {
|
|
18
|
+
"url": "https://github.com/aristobyte-team/aristobyte-ui.git/issues"
|
|
19
|
+
},
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=20.17.0",
|
|
22
|
+
"npm": ">=10.8.2",
|
|
23
|
+
"yarn": ">=1.22.22"
|
|
24
|
+
},
|
|
25
|
+
"keywords": [
|
|
26
|
+
"aristobyte",
|
|
27
|
+
"ui",
|
|
28
|
+
"button",
|
|
29
|
+
"button-group",
|
|
30
|
+
"Button",
|
|
31
|
+
"ButtonGroup",
|
|
32
|
+
"react",
|
|
33
|
+
"typescript",
|
|
34
|
+
"component",
|
|
35
|
+
"ripple",
|
|
36
|
+
"variants",
|
|
37
|
+
"appearance",
|
|
38
|
+
"size",
|
|
39
|
+
"radius",
|
|
40
|
+
"icon",
|
|
41
|
+
"composable",
|
|
42
|
+
"design-system"
|
|
43
|
+
],
|
|
9
44
|
"files": [
|
|
10
45
|
"dist"
|
|
11
46
|
],
|
|
47
|
+
"publishConfig": {
|
|
48
|
+
"access": "public"
|
|
49
|
+
},
|
|
12
50
|
"exports": {
|
|
13
51
|
".": {
|
|
14
52
|
"import": "./dist/index.mjs",
|