signalk-container 1.20.0 → 1.20.1
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/dist/configNormalize.d.ts +34 -0
- package/dist/configNormalize.d.ts.map +1 -0
- package/dist/configNormalize.js +47 -0
- package/dist/configNormalize.js.map +1 -0
- package/dist/index.d.ts +0 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -18
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/public/configpanel-entry.js +8 -8
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe config-normalization helpers shared between the plugin
|
|
3
|
+
* backend (`index.ts`) and the React config panel. Kept free of any
|
|
4
|
+
* node-only imports so it can be bundled into the configpanel.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Prior managed-image versions the reaper keeps by default, in addition
|
|
8
|
+
* to the running one. Shared between the config schema's `default`, the
|
|
9
|
+
* runtime fallback, and the config panel so they can't drift.
|
|
10
|
+
*/
|
|
11
|
+
export declare const DEFAULT_KEEP_IMAGE_VERSIONS = 1;
|
|
12
|
+
/**
|
|
13
|
+
* Coerce the `keepImageVersions` config value to a non-negative integer.
|
|
14
|
+
* The schema and the panel dropdown constrain it for normal saves, but a
|
|
15
|
+
* config edited by hand or supplied by an API caller can carry a decimal,
|
|
16
|
+
* a negative, or a non-number. A malformed value falls back to the
|
|
17
|
+
* default rather than to `0` — `0` is the most aggressive policy (reap
|
|
18
|
+
* every superseded version), which a typo must never silently select.
|
|
19
|
+
*/
|
|
20
|
+
export declare function normalizeKeepImageVersions(value: unknown): number;
|
|
21
|
+
/**
|
|
22
|
+
* Seed value for the config panel's keep-versions `<select>`: the
|
|
23
|
+
* normalized number rendered as a string. A `<select>` compares option
|
|
24
|
+
* `value`s as strings, so the stored config must round-trip through the
|
|
25
|
+
* same normalization the backend applies before it can match an option.
|
|
26
|
+
*/
|
|
27
|
+
export declare function keepImageVersionsSelectValue(value: unknown): string;
|
|
28
|
+
/**
|
|
29
|
+
* The number written back when the panel saves the `<select>`'s current
|
|
30
|
+
* string value. Goes through the same normalization so a stale/foreign
|
|
31
|
+
* string can never persist a worse policy than the contract allows.
|
|
32
|
+
*/
|
|
33
|
+
export declare function keepImageVersionsFromSelectValue(selectValue: string): number;
|
|
34
|
+
//# sourceMappingURL=configNormalize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configNormalize.d.ts","sourceRoot":"","sources":["../src/configNormalize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAE7C;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAKjE;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEnE;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAK5E"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Browser-safe config-normalization helpers shared between the plugin
|
|
3
|
+
* backend (`index.ts`) and the React config panel. Kept free of any
|
|
4
|
+
* node-only imports so it can be bundled into the configpanel.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Prior managed-image versions the reaper keeps by default, in addition
|
|
8
|
+
* to the running one. Shared between the config schema's `default`, the
|
|
9
|
+
* runtime fallback, and the config panel so they can't drift.
|
|
10
|
+
*/
|
|
11
|
+
export const DEFAULT_KEEP_IMAGE_VERSIONS = 1;
|
|
12
|
+
/**
|
|
13
|
+
* Coerce the `keepImageVersions` config value to a non-negative integer.
|
|
14
|
+
* The schema and the panel dropdown constrain it for normal saves, but a
|
|
15
|
+
* config edited by hand or supplied by an API caller can carry a decimal,
|
|
16
|
+
* a negative, or a non-number. A malformed value falls back to the
|
|
17
|
+
* default rather than to `0` — `0` is the most aggressive policy (reap
|
|
18
|
+
* every superseded version), which a typo must never silently select.
|
|
19
|
+
*/
|
|
20
|
+
export function normalizeKeepImageVersions(value) {
|
|
21
|
+
if (typeof value !== "number" || !Number.isFinite(value)) {
|
|
22
|
+
return DEFAULT_KEEP_IMAGE_VERSIONS;
|
|
23
|
+
}
|
|
24
|
+
return Math.max(0, Math.floor(value));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Seed value for the config panel's keep-versions `<select>`: the
|
|
28
|
+
* normalized number rendered as a string. A `<select>` compares option
|
|
29
|
+
* `value`s as strings, so the stored config must round-trip through the
|
|
30
|
+
* same normalization the backend applies before it can match an option.
|
|
31
|
+
*/
|
|
32
|
+
export function keepImageVersionsSelectValue(value) {
|
|
33
|
+
return String(normalizeKeepImageVersions(value));
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* The number written back when the panel saves the `<select>`'s current
|
|
37
|
+
* string value. Goes through the same normalization so a stale/foreign
|
|
38
|
+
* string can never persist a worse policy than the contract allows.
|
|
39
|
+
*/
|
|
40
|
+
export function keepImageVersionsFromSelectValue(selectValue) {
|
|
41
|
+
// `Number("")` is 0, not NaN — guard so a blank value falls back to the
|
|
42
|
+
// default rather than silently selecting the most aggressive policy.
|
|
43
|
+
if (selectValue.trim() === "")
|
|
44
|
+
return DEFAULT_KEEP_IMAGE_VERSIONS;
|
|
45
|
+
return normalizeKeepImageVersions(Number(selectValue));
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=configNormalize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configNormalize.js","sourceRoot":"","sources":["../src/configNormalize.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC;AAE7C;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,2BAA2B,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,KAAc;IACzD,OAAO,MAAM,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAAC,WAAmB;IAClE,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,2BAA2B,CAAC;IAClE,OAAO,0BAA0B,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AACzD,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -28,13 +28,6 @@ interface App {
|
|
|
28
28
|
savePluginOptions?: (configuration: object, cb: (err: NodeJS.ErrnoException | null) => void) => void;
|
|
29
29
|
[key: string]: unknown;
|
|
30
30
|
}
|
|
31
|
-
/**
|
|
32
|
-
* Coerce the `keepImageVersions` config value to a non-negative integer.
|
|
33
|
-
* The schema constrains it for UI saves, but a config edited by hand or
|
|
34
|
-
* supplied by an API caller can still carry a decimal, a negative, or a
|
|
35
|
-
* non-number — none of which the reaper should act on literally.
|
|
36
|
-
*/
|
|
37
|
-
export declare function normalizeKeepImageVersions(value: unknown): number;
|
|
38
31
|
declare const _default: (app: App) => {
|
|
39
32
|
id: string;
|
|
40
33
|
name: string;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAgBL,YAAY,EASb,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC,OAAO,EAgBL,YAAY,EASb,MAAM,YAAY,CAAC;AAqEpB,UAAU,GAAG;IACX,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE;QACP,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,CAClB,aAAa,EAAE,MAAM,EACrB,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,cAAc,GAAG,IAAI,KAAK,IAAI,KAC5C,IAAI,CAAC;IACV,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;yBAae,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAksDN,YAAY;;+BAkQC,OAAO;;AAp8DtC,wBAu5EE"}
|
package/dist/index.js
CHANGED
|
@@ -10,6 +10,7 @@ import { FileUpdateCache } from "./updates/cache.js";
|
|
|
10
10
|
import { registerUpdateRoutes } from "./updates/routes.js";
|
|
11
11
|
import { DIGEST_RE, resolveImage } from "./manifest/resolver.js";
|
|
12
12
|
import { ManifestStore } from "./manifest/store.js";
|
|
13
|
+
import { DEFAULT_KEEP_IMAGE_VERSIONS, normalizeKeepImageVersions, } from "./configNormalize.js";
|
|
13
14
|
import { generateSetupSnippet, imageRunsAsUser, isDashboardDeploymentError, selfDeployment, } from "./doctor.js";
|
|
14
15
|
/**
|
|
15
16
|
* SSE comment-frame heartbeat interval. 30s is comfortably below
|
|
@@ -17,24 +18,9 @@ import { generateSetupSnippet, imageRunsAsUser, isDashboardDeploymentError, self
|
|
|
17
18
|
* not so frequent that quiet streams pay a noticeable cost.
|
|
18
19
|
*/
|
|
19
20
|
const SSE_HEARTBEAT_MS = 30_000;
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
* the runtime fallback so the two can't drift.
|
|
24
|
-
*/
|
|
25
|
-
const DEFAULT_KEEP_IMAGE_VERSIONS = 1;
|
|
26
|
-
/**
|
|
27
|
-
* Coerce the `keepImageVersions` config value to a non-negative integer.
|
|
28
|
-
* The schema constrains it for UI saves, but a config edited by hand or
|
|
29
|
-
* supplied by an API caller can still carry a decimal, a negative, or a
|
|
30
|
-
* non-number — none of which the reaper should act on literally.
|
|
31
|
-
*/
|
|
32
|
-
export function normalizeKeepImageVersions(value) {
|
|
33
|
-
if (typeof value !== "number" || !Number.isFinite(value)) {
|
|
34
|
-
return DEFAULT_KEEP_IMAGE_VERSIONS;
|
|
35
|
-
}
|
|
36
|
-
return Math.max(0, Math.floor(value));
|
|
37
|
-
}
|
|
21
|
+
// `DEFAULT_KEEP_IMAGE_VERSIONS` and `normalizeKeepImageVersions` live in
|
|
22
|
+
// `./configNormalize.js` so the backend and the React config panel share
|
|
23
|
+
// one contract — a browser-safe module with no node-only imports.
|
|
38
24
|
export default (app) => {
|
|
39
25
|
let runtimeInfo = null;
|
|
40
26
|
let runtimePreference = "auto";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,WAAW,CAAC;AA2B7B,OAAO,EACL,+BAA+B,EAC/B,uBAAuB,EACvB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACxB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,YAAY,EACZ,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,YAAY,IAAI,sBAAsB,EACtC,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAmB,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,0BAA0B,EAC1B,cAAc,GACf,MAAM,aAAa,CAAC;AAkCrB;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEhC,yEAAyE;AACzE,yEAAyE;AACzE,kEAAkE;AAElE,eAAe,CAAC,GAAQ,EAAE,EAAE;IAC1B,IAAI,WAAW,GAAgC,IAAI,CAAC;IACpD,IAAI,iBAAiB,GAAsB,MAAM,CAAC;IAClD,IAAI,UAAU,GAA0B,IAAI,CAAC;IAC7C,MAAM,YAAY,GAAG,IAAI,GAAG,EAA0B,CAAC;IACvD,IAAI,aAAa,GAAyB,IAAI,CAAC;IAC/C,IAAI,aAAa,GAAyB,IAAI,CAAC;IAE/C;;;;;;OAMG;IACH,KAAK,UAAU,uBAAuB,CACpC,OAA6B;QAE7B,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAsB,EAAE,CAAC;QACnC,KAAK,MAAM,QAAQ,IAAI,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;YAClD,KAAK,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CACjD,QAAQ,CAAC,UAAU,CACpB,EAAE,CAAC;gBACF,MAAM,cAAc,GAAG,MAAM,cAAc,CACzC,OAAO,EACP,YAAY,CAAC,aAAa,CAAC,CAC5B,CAAC;gBACF,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oEAAoE;IACpE,mEAAmE;IACnE,mEAAmE;IACnE,sEAAsE;IACtE,0DAA0D;IAC1D,qEAAqE;IACrE,qEAAqE;IACrE,+DAA+D;IAC/D,6DAA6D;IAC7D,oBAAoB;IACpB,IAAI,YAAY,GAAG,IAAI,OAAO,CAAO,GAAG,EAAE;QACxC,kEAAkE;QAClE,sDAAsD;IACxD,CAAC,CAAC,CAAC;IAEH;;;;;;;;;;;;;;;OAeG;IACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAA2B,CAAC;IACvD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAM7B,CAAC;IACJ,sEAAsE;IACtE,kEAAkE;IAClE,4DAA4D;IAC5D,gEAAgE;IAChE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC5D,kEAAkE;IAClE,mEAAmE;IACnE,gEAAgE;IAChE,eAAe;IACf,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAAsB,CAAC;IACjE,IAAI,gBAAgB,GAA4C,EAAE,CAAC;IACnE,uEAAuE;IACvE,gEAAgE;IAChE,yEAAyE;IACzE,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,IAAI,iBAAiB,GAA2B,IAAI,CAAC;IACrD,mEAAmE;IACnE,gEAAgE;IAChE,4CAA4C;IAC5C,IAAI,sBAAsB,GAAkB,IAAI,CAAC;IACjD,IAAI,uBAAuB,GAA2B,IAAI,CAAC;IAC3D,yEAAyE;IACzE,uEAAuE;IACvE,uEAAuE;IACvE,oEAAoE;IACpE,IAAI,qBAAqB,GAAgC,SAAS,CAAC;IACnE,IAAI,eAAe,GAAoC,IAAI,CAAC;IAC5D,KAAK,UAAU,2BAA2B;QACxC,IAAI,qBAAqB,KAAK,SAAS;YAAE,OAAO,qBAAqB,CAAC;QACtE,IAAI,eAAe;YAAE,OAAO,eAAe,CAAC;QAC5C,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QAC9B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAChE,eAAe,GAAG,QAAQ,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC;YAChC,IAAI,eAAe,KAAK,QAAQ,EAAE,CAAC;gBACjC,qBAAqB,GAAG,QAAQ,CAAC;YACnC,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,IAAI,eAAe,KAAK,QAAQ;gBAAE,eAAe,GAAG,IAAI,CAAC;QAC3D,CAAC;IACH,CAAC;IACD,wEAAwE;IACxE,mEAAmE;IACnE,0EAA0E;IAC1E,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEjD,0EAA0E;IAC1E,oEAAoE;IACpE,wEAAwE;IACxE,kEAAkE;IAClE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,KAAK,UAAU,sBAAsB;QACnC,IAAI,gBAAgB;YAAE,OAAO,gBAAgB,CAAC;QAC9C,IAAI,iBAAiB;YAAE,OAAO,iBAAiB,CAAC;QAChD,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3E,iBAAiB,GAAG,QAAQ,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC;YACzC,kEAAkE;YAClE,kEAAkE;YAClE,2DAA2D;YAC3D,IAAI,iBAAiB,KAAK,QAAQ,EAAE,CAAC;gBACnC,gBAAgB,GAAG,QAAQ,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,8BAA8B,gBAAgB,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,IAAI,iBAAiB,KAAK,QAAQ;gBAAE,iBAAiB,GAAG,IAAI,CAAC;QAC/D,CAAC;IACH,CAAC;IACD,KAAK,UAAU,4BAA4B;QACzC,IAAI,sBAAsB;YAAE,OAAO,sBAAsB,CAAC;QAC1D,IAAI,uBAAuB;YAAE,OAAO,uBAAuB,CAAC;QAC5D,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC;QAC1C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,wBAAwB,CACvC,UAAU,EACV,WAAW,EACX,GAAG,CAAC,KAAK,CACV,CAAC;QACF,uBAAuB,GAAG,QAAQ,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC;YAC/C,IAAI,uBAAuB,KAAK,QAAQ,EAAE,CAAC;gBACzC,sBAAsB,GAAG,QAAQ,CAAC;gBAClC,GAAG,CAAC,KAAK,CAAC,oCAAoC,sBAAsB,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,IAAI,uBAAuB,KAAK,QAAQ;gBAAE,uBAAuB,GAAG,IAAI,CAAC;QAC3E,CAAC;IACH,CAAC;IACD;;;;;;;;;OASG;IACH,SAAS,uBAAuB,CAAC,IAAY;QAC3C,KAAK,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC;YACxC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC/B,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;gBACtC,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBAClC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,CAAC;gBACD,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAClC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC;gBAAE,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAC1E,qEAAqE;IACrE,wEAAwE;IACxE,0EAA0E;IAC1E,SAAS,qBAAqB,CAAC,IAAY;QACzC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAClC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QACD,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAmC,CAAC;IACtE,sEAAsE;IACtE,kEAAkE;IAClE,sEAAsE;IACtE,sEAAsE;IACtE,0DAA0D;IAC1D,MAAM,cAAc,GAAG,IAAI,GAAG,EAAmC,CAAC;IAClE,sEAAsE;IACtE,wEAAwE;IACxE,mEAAmE;IACnE,IAAI,aAAa,GAAwB,IAAI,CAAC;IAE9C;;;;;;;;;;;;;OAaG;IACH,SAAS,sBAAsB,CAAC,YAAoB;QAClD,IAAI,CAAC,aAAa,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAC7C,GAAG,CAAC,KAAK,CACP,0BAA0B,YAAY,6BAA6B,aAAa,KAAK,IAAI,uBAAuB,CAAC,CAAC,GAAG,CAAC,iBAAiB,GAAG,CAC3I,CAAC;YACF,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG;YACb,GAAG,aAAa;YAChB,kBAAkB,EAAE,EAAE,GAAG,gBAAgB,EAAE;SAC5C,CAAC;QACF,iEAAiE;QACjE,0BAA0B;QAC1B,aAAa,GAAG,MAAM,CAAC;QACvB,GAAG,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;YACpC,IAAI,GAAG,EAAE,CAAC;gBACR,GAAG,CAAC,KAAK,CACP,iDAAiD,YAAY,MAAM,GAAG,CAAC,OAAO,IAAI;oBAChF,+EAA+E,CAClF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CACP,0BAA0B,YAAY,gCAAgC,CACvE,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,SAAS,cAAc,CAAC,IAAY,EAAE,MAA+B;QACnE,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,aAAa;YAC7B,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC;YACzC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC;QAClB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC;QACrC,CAAC;QACD,sBAAsB,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACH,SAAS,aAAa,CAAC,IAAY;QACjC,IAAI,CAAC,CAAC,IAAI,IAAI,gBAAgB,CAAC;YAAE,OAAO;QACxC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC9B,sBAAsB,CAAC,iBAAiB,IAAI,GAAG,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,SAAS,iBAAiB,CACxB,IAAY,EACZ,SAAkB;QAElB,IAAI,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;YAAE,OAAO,MAAM,CAAC;QAChD,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpE,MAAM,GAAG,qBAAqB,CAAC,WAAW,EAAE,IAAI,EAAE;YAChD,SAAS;YACT,SAAS,EAAE,iBAAiB;YAC5B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,kBAAkB,GAAG,EAAE,CAAC;YACpE,iBAAiB,EAAE,CAAC,GAAG,EAAE,EAAE,CACzB,GAAG,CAAC,KAAK,CACP,QAAQ,IAAI,wBACV,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH;SACJ,CAAC,CAAC;QACH,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,GAAG,GAAwB;QAC/B,UAAU;YACR,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,SAAS;YACP,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,KAAa,EAAE,UAAkC;YAC/D,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,SAAS,CACb,WAAW,EACX,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,EAC1C,UAAU,CACX,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,WAAW,CAAC,KAAa;YAC7B,IAAI,CAAC,WAAW;gBAAE,OAAO,KAAK,CAAC;YAC/B,OAAO,WAAW,CAChB,WAAW,EACX,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,CAC3C,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,gBAAwB;YAC3C,IAAI,CAAC,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC9B,OAAO,cAAc,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,CAAC,aAAa,CACjB,IAAY,EACZ,MAAuB,EACvB,OAA8B;YAE9B,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAEpE,iEAAiE;YACjE,gEAAgE;YAChE,oDAAoD;YACpD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CACb,sBAAsB,MAAM,CAAC,KAAK,mCAAmC,MAAM,CAAC,MAAM,EAAE,CACrF,CAAC;YACJ,CAAC;YAED,uEAAuE;YACvE,qEAAqE;YACrE,qDAAqD;YACrD,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC5B,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;gBAC9C,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;gBAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,CAAC;gBAClD,IAAI,QAAQ,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;oBACpC,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,wBAAwB,gBAAgB,uCAAuC,QAAQ,2BAA2B,MAAM,GAAG,CACjJ,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG;oBACP,GAAG,IAAI;oBACP,OAAO,EAAE;wBACP,GAAG,IAAI,CAAC,OAAO;wBACf,CAAC,gBAAgB,CAAC,EAAE,MAAM;qBAC3B;iBACF,CAAC;YACJ,CAAC;YAED,qEAAqE;YACrE,wEAAwE;YACxE,uEAAuE;YACvE,qEAAqE;YACrE,gBAAgB;YAChB,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,MAAM,4BAA4B,EAAE,CAAC;gBACpD,MAAM,EAAE,sBAAsB,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;gBACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,sBAAsB,CAAC,CAAC;gBACxD,IAAI,QAAQ,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;oBACpC,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,8BAA8B,sBAAsB,uCAAuC,QAAQ,2BAA2B,MAAM,GAAG,CAC7J,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG;oBACP,GAAG,IAAI;oBACP,GAAG,EAAE,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,sBAAsB,CAAC;oBAC/D,OAAO,EAAE;wBACP,GAAG,IAAI,CAAC,OAAO;wBACf,CAAC,sBAAsB,CAAC,EAAE,MAAM;qBACjC;iBACF,CAAC;YACJ,CAAC;YAED,+DAA+D;YAC/D,iEAAiE;YACjE,iEAAiE;YACjE,EAAE;YACF,qEAAqE;YACrE,oEAAoE;YACpE,yEAAyE;YACzE,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;YAEjD,qEAAqE;YACrE,oEAAoE;YACpE,wEAAwE;YACxE,8BAA8B;YAC9B,MAAM,qBAAqB,GACzB,MAAM,CAAC,sBAAsB,IAAI,EAAE,CAAC;YAEtC,IAAI,MAAM,CAAC,sBAAsB,EAAE,MAAM,EAAE,CAAC;gBAC1C,qEAAqE;gBACrE,gEAAgE;gBAChE,MAAM,EACJ,sBAAsB,EACtB,WAAW,EAAE,kBAAkB,EAC/B,KAAK,EAAE,YAAY,EACnB,GAAG,SAAS,EACb,GAAG,MAAM,CAAC;gBAEX,iEAAiE;gBACjE,kEAAkE;gBAClE,+DAA+D;gBAC/D,IAAI,kBAAkB,EAAE,CAAC;oBACvB,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,2DAA2D;wBAC9E,IAAI,kBAAkB,uBAAuB;wBAC7C,kEAAkE,CACrE,CAAC;gBACJ,CAAC;gBACD,IAAI,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzD,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,qDAAqD;wBACxE,+FAA+F;wBAC/F,4DAA4D,CAC/D,CAAC;gBACJ,CAAC;gBAED,iEAAiE;gBACjE,yDAAyD;gBACzD,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;oBACnD,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,aAAa,EAAE,CAAC,CAAC;gBAClD,CAAC;gBAED,sEAAsE;gBACtE,qEAAqE;gBACrE,mEAAmE;gBACnE,qEAAqE;gBACrE,mEAAmE;gBACnE,MAAM,QAAQ,GAAG,eAAe,EAAE;oBAChC,CAAC,CAAC,MAAM,2BAA2B,EAAE;oBACrC,CAAC,CAAC,IAAI,CAAC;gBACT,MAAM,aAAa,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;gBAE5C,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;oBACtB,iEAAiE;oBACjE,gEAAgE;oBAChE,kCAAkC;oBAClC,MAAM,YAAY,GAA2B,EAAE,CAAC;oBAChD,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;wBACnD,iEAAiE;wBACjE,2DAA2D;wBAC3D,gEAAgE;wBAChE,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAC;wBAC5C,IAAI,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;4BACxD,OAAO,GAAG,aAAa,QAAQ,EAAE,CAAC;4BAClC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;4BACtC,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;gCAC/B,GAAG,CAAC,KAAK,CACP,0BAA0B,IAAI,WAAW,aAAa,yBAAyB,QAAQ,EAAE,CAC1F,CAAC;4BACJ,CAAC;wBACH,CAAC;wBACD,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACxC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,aAAa,QAAQ,EAAE,CAAC;oBAChE,CAAC;oBACD,kEAAkE;oBAClE,4DAA4D;oBAC5D,uDAAuD;oBACvD,MAAM,GAAG;wBACP,GAAG,SAAS;wBACZ,KAAK,EAAE,EAAE,GAAG,YAAY,EAAE,GAAG,YAAY,EAAE;qBACzB,CAAC;gBACvB,CAAC;qBAAM,IAAI,aAAa,EAAE,CAAC;oBACzB,iEAAiE;oBACjE,6DAA6D;oBAC7D,8DAA8D;oBAC9D,uCAAuC;oBACvC,IAAI,kBAAkB,IAAI,kBAAkB,KAAK,aAAa,EAAE,CAAC;wBAC/D,GAAG,CAAC,KAAK,CACP,0BAA0B,IAAI,uCAAuC,kBAAkB,2BAA2B,aAAa,GAAG,CACnI,CAAC;oBACJ,CAAC;oBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;oBAC9D,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;wBACnD,cAAc,CAAC,GAAG,CAChB,GAAG,IAAI,IAAI,aAAa,EAAE,EAC1B,GAAG,QAAQ,IAAI,aAAa,EAAE,CAC/B,CAAC;oBACJ,CAAC;oBACD,kEAAkE;oBAClE,+BAA+B;oBAC/B,MAAM,GAAG;wBACP,GAAG,SAAS;wBACZ,WAAW,EAAE,aAAa;qBACR,CAAC;gBACvB,CAAC;qBAAM,CAAC;oBACN,iEAAiE;oBACjE,gEAAgE;oBAChE,oEAAoE;oBACpE,EAAE;oBACF,4DAA4D;oBAC5D,mEAAmE;oBACnE,4DAA4D;oBAC5D,kEAAkE;oBAClE,kEAAkE;oBAClE,oEAAoE;oBACpE,gEAAgE;oBAChE,+DAA+D;oBAC/D,+DAA+D;oBAC/D,qEAAqE;oBACrE,8DAA8D;oBAC9D,2DAA2D;oBAC3D,6DAA6D;oBAC7D,eAAe;oBACf,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;oBACjE,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CACb,0BAA0B,IAAI,iDAAiD;4BAC7E,kFAAkF;4BAClF,iEAAiE,CACpE,CAAC;oBACJ,CAAC;oBACD,GAAG,CAAC,KAAK,CACP,0BAA0B,IAAI,2DAA2D,MAAM,EAAE,CAClG,CAAC;oBACF,mEAAmE;oBACnE,oEAAoE;oBACpE,oEAAoE;oBACpE,mEAAmE;oBACnE,oEAAoE;oBACpE,kEAAkE;oBAClE,4DAA4D;oBAC5D,gEAAgE;oBAChE,iEAAiE;oBACjE,0CAA0C;oBAC1C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBAC5D,MAAM,YAAY,GAAG,QAAQ,KAAK,SAAS,CAAC;oBAC5C,KAAK,MAAM,aAAa,IAAI,sBAAsB,EAAE,CAAC;wBACnD,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAC;wBAC5C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAClC,IAAI,YAAY,EAAE,CAAC;gCACjB,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,aAAa,EAAE,CAAC,CAAC;gCAC3D,SAAS;4BACX,CAAC;4BACD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,aAAa,CAAC,CAAC;4BACtD,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;gCAC7B,sDAAsD;gCACtD,mBAAmB,CAAC,MAAM,CAAC,CAAC;gCAC5B,MAAM,IAAI,KAAK,CACb,0BAA0B,IAAI,WAAW,aAAa,qBAAqB;oCACzE,8CAA8C,MAAM,KAAK;oCACzD,wCAAwC,CAC3C,CAAC;4BACJ,CAAC;4BACD,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,aAAa,EAAE,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;oBACD,mEAAmE;oBACnE,gDAAgD;oBAChD,MAAM,GAAG;wBACP,GAAG,SAAS;wBACZ,WAAW,EAAE,aAAa,MAAM,EAAE;qBAChB,CAAC;gBACvB,CAAC;YACH,CAAC;YAED,+DAA+D;YAC/D,gEAAgE;YAChE,kEAAkE;YAClE,yDAAyD;YACzD,kDAAkD;YAClD,+DAA+D;YAC/D,uCAAuC;YACvC,cAAc,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAE1D,gEAAgE;YAChE,iEAAiE;YACjE,6DAA6D;YAC7D,MAAM,MAAM,GAAG,mBAAmB,CAChC,MAAM,CAAC,SAAS,EAChB,gBAAgB,CAAC,IAAI,CAAC,CACvB,CAAC;YACF,gEAAgE;YAChE,2DAA2D;YAC3D,8DAA8D;YAC9D,gEAAgE;YAChE,oCAAoC;YACpC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,uBAAuB,CACnE,MAAM,EACN,WAAW,CACZ,CAAC;YACF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,wBAAwB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,MAAM,EAAE,CACpE,CAAC;YACJ,CAAC;YACD,MAAM,wBAAwB,GAAoB;gBAChD,GAAG,MAAM;gBACT,SAAS,EAAE,cAAc;aAC1B,CAAC;YAEF,gEAAgE;YAChE,2DAA2D;YAC3D,6DAA6D;YAC7D,iCAAiC;YACjC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,qBAAqB,CACtD,wBAAwB,CAAC,OAAO,CACjC,CAAC;YAEF,MAAM,eAAe,GAAG,CAAC,KAAkB,EAAE,EAAE,CAC7C,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE,CAC3D,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,qCAAqC;gBACxD,GAAG,KAAK,CAAC,aAAa,OAAO,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,KAAK;gBAC/D,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACxD,CACF,CAAC;YAEJ,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,sBAAsB,CAAC,CAAC,aAAa,OAAO,CAAC,CAAC,MAAM,sBAAsB,CAChG,CAAC;gBACF,eAAe,CAAC;oBACd,aAAa,EAAE,CAAC,CAAC,aAAa;oBAC9B,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,iCAAiC;iBAC/D,CAAC,CAAC;YACL,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,eAAe,CAAC;oBACd,aAAa,EAAE,CAAC,CAAC,aAAa;oBAC9B,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,sBAAsB,CAAC,CAAC,MAAM,iBAAiB;iBACxD,CAAC,CAAC;YACL,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,GAAG,OAAO;qBACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,aAAa,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;qBAC/C,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,iEAAiE;gBACjE,gCAAgC;gBAChC,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,0DAA0D,IAAI,EAAE,CACtF,CAAC;gBACF,2DAA2D;gBAC3D,uDAAuD;gBACvD,2DAA2D;gBAC3D,+DAA+D;gBAC/D,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBACjD,MAAM,IAAI,KAAK,CACb,iBAAiB,IAAI,+CAA+C,IAAI,EAAE,CAC3E,CAAC;YACJ,CAAC;YAED,MAAM,eAAe,GAAoB;gBACvC,GAAG,wBAAwB;gBAC3B,OAAO,EAAE,IAAI;aACd,CAAC;YAEF,+DAA+D;YAC/D,6DAA6D;YAC7D,6DAA6D;YAC7D,6CAA6C;YAC7C,MAAM,SAAS,GAAG,uBAAuB,CACvC,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAC1B,OAAO,EACP,OAAO,EACP,IAAI,CACL,CAAC;YAEF,iEAAiE;YACjE,kEAAkE;YAClE,sEAAsE;YACtE,kEAAkE;YAClE,mEAAmE;YACnE,gEAAgE;YAChE,yDAAyD;YACzD,kEAAkE;YAClE,WAAW;YACX,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC1C,sEAAsE;YACtE,kDAAkD;YAClD,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAEjD,gEAAgE;YAChE,+DAA+D;YAC/D,+DAA+D;YAC/D,+DAA+D;YAC/D,kDAAkD;YAClD,MAAM,QAAQ,GAAG,MAAM,YAAY,CACjC,WAAW,EACX,eAAe,EACf;gBACE,YAAY,EAAE,sBAAsB;gBACpC,WAAW;gBACX,SAAS;gBACT,aAAa;gBACb,cAAc;aACf,EACD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,IAAI,MAAM,GAAG,EAAE,CAAC,CACpD,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,aAAa,CACjB,WAAW,EACX,IAAI,EACJ,eAAe,EACf,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EACvB,OAAO,EACP,SAAS,EACT,WAAW,CACZ,CAAC;YACJ,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,kEAAkE;gBAClE,oEAAoE;gBACpE,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;oBAC3C,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBAClC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,oEAAoE;YACpE,sEAAsE;YACtE,sEAAsE;YACtE,mEAAmE;YACnE,mDAAmD;YACnD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACvC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAE7C,iEAAiE;YACjE,+DAA+D;YAC/D,6DAA6D;YAC7D,sEAAsE;YACtE,gEAAgE;YAChE,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,cAAc,EAAE,CAAC;gBACzC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;oBAClC,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YAED,qEAAqE;YACrE,uEAAuE;YACvE,qEAAqE;YACrE,kEAAkE;YAClE,uDAAuD;YACvD,EAAE;YACF,oEAAoE;YACpE,sEAAsE;YACtE,sEAAsE;YACtE,kEAAkE;YAClE,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC;oBACH,MAAM,YAAY,GAAG,MAAM,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBACpE,KAAK,MAAM,aAAa,IAAI,qBAAqB,EAAE,CAAC;wBAClD,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,aAAa,EAAE,CAAC;wBAC5C,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBAC5C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC;4BAAE,SAAS;wBAC1D,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;wBAC7C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;4BAAE,SAAS;wBACzC,+DAA+D;wBAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;wBAC5D,MAAM,MAAM,GAAG,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;wBACnC,IAAI,CAAC,MAAM;4BAAE,SAAS;wBACtB,MAAM,KAAK,GAAG,aAAa,MAAM,CAAC,QAAQ,EAAE,CAAC;wBAC7C,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;4BACrB,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,oCAAoC,aAAa,KAAK;gCACzE,WAAW,MAAM,cAAc,KAAK,4BAA4B,CACnE,CAAC;4BACF,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAChD,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gCAChC,mBAAmB,CAAC,UAAU,CAAC,CAAC;4BAClC,CAAC;4BACD,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;wBACtC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,qDACnB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,2DAA2D;YAC3D,8DAA8D;YAC9D,iEAAiE;YACjE,yDAAyD;YACzD,4DAA4D;YAC5D,8DAA8D;YAC9D,2DAA2D;YAC3D,mCAAmC;YACnC,EAAE;YACF,8DAA8D;YAC9D,yDAAyD;YACzD,kDAAkD;YAClD,qCAAqC;YACrC,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,YAAY,GAAkB,QAAQ,CAAC;gBAC3C,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBACnE,IAAI,UAAU,EAAE,CAAC;wBACf,YAAY,GAAG;4BACb,QAAQ,EAAE,QAAQ,CAAC,QAAQ;4BAC3B,cAAc,EAAE,UAAU;4BAC1B,MAAM,EAAE,QAAQ,CAAC,MAAM;yBACxB,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,0DAA0D;oBAC1D,4DAA4D;oBAC5D,6BAA6B;oBAC7B,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACxG,CAAC;gBACJ,CAAC;gBACD,aAAa;qBACV,gBAAgB,CAAC;oBAChB,QAAQ,EAAE,OAAO,EAAE,QAAQ,IAAI,aAAa,IAAI,EAAE;oBAClD,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,SAAS;oBAClD,aAAa,EAAE,IAAI;oBACnB,MAAM,EAAE;wBACN,KAAK,EAAE,eAAe,CAAC,KAAK;wBAC5B,GAAG,EAAE,eAAe,CAAC,GAAG;wBACxB,MAAM,EAAE,eAAe,CAAC,MAAM;wBAC9B,aAAa,EAAE,eAAe,CAAC,aAAa;qBAC7C;oBACD,QAAQ,EAAE,YAAY;oBACtB,2DAA2D;oBAC3D,kDAAkD;oBAClD,8DAA8D;oBAC9D,yCAAyC;iBAC1C,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CACb,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,8BAA8B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC9F,CACF,CAAC;YACN,CAAC;YAED,6DAA6D;YAC7D,gEAAgE;YAChE,+DAA+D;YAC/D,8DAA8D;YAC9D,2DAA2D;YAC3D,EAAE;YACF,oEAAoE;YACpE,0DAA0D;YAC1D,8DAA8D;YAC9D,sDAAsD;YACtD,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC7D,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC;gBACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;gBAE9D,2DAA2D;gBAC3D,6DAA6D;gBAC7D,6DAA6D;gBAC7D,wDAAwD;gBACxD,6DAA6D;gBAC7D,mDAAmD;gBACnD,EAAE;gBACF,8DAA8D;gBAC9D,mEAAmE;gBACnE,kEAAkE;gBAClE,mEAAmE;gBACnE,8DAA8D;gBAC9D,kEAAkE;gBAClE,iEAAiE;gBACjE,iEAAiE;gBACjE,gEAAgE;gBAChE,mEAAmE;gBACnE,2DAA2D;gBAC3D,+DAA+D;gBAC/D,kEAAkE;gBAClE,wCAAwC;gBACxC,EAAE;gBACF,mEAAmE;gBACnE,kEAAkE;gBAClE,+DAA+D;gBAC/D,mEAAmE;gBACnE,mEAAmE;gBACnE,8DAA8D;gBAC9D,mEAAmE;gBACnE,iEAAiE;gBACjE,6DAA6D;gBAC7D,MAAM,WAAW,GAAG,+BAA+B,CACjD,UAAU,EACV,cAAc,EACd,WAAW,EAAE,SAAS,CACvB,CAAC;gBACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,+BAA+B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC;wBACzG,sFAAsF;wBACtF,sDAAsD,IAAI,iCAAiC,CAC9F,CAAC;oBACF,kEAAkE;gBACpE,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;gBACxE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;oBACb,yDAAyD;oBACzD,wDAAwD;oBACxD,wDAAwD;oBACxD,qDAAqD;oBACrD,sDAAsD;oBACtD,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,mCAAmC,IAAI,CAAC,MAAM,IAAI,gBAAgB,IAAI;wBACzF,6CAA6C;wBAC7C,4BAA4B,IAAI,iCAAiC,CACpE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,+CAA+C,CACrE,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,+DAA+D;YAC/D,8DAA8D;YAC9D,gEAAgE;YAChE,qDAAqD;YACrD,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC1B,eAAe,CAAC;oBACd,aAAa,EAAE,CAAC,CAAC,aAAa;oBAC9B,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,MAAM,EAAE,WAAW;oBACnB,MAAM,EAAE,aAAa,CAAC,CAAC,MAAM,iCAAiC;iBAC/D,CAAC,CAAC;YACL,CAAC;YAED,gEAAgE;YAChE,2DAA2D;YAC3D,6DAA6D;YAC7D,4DAA4D;YAC5D,+DAA+D;YAC/D,8CAA8C;YAC9C,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;gBAC5B,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC;gBAClD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;gBACxE,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;oBAC7B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACf,sBAAsB,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,CACvD,GAAG,CAAC,KAAK,CACP,iBAAiB,IAAI,oCACnB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CACF;iBACJ,CAAC,CAAC;gBACH,0BAA0B,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,uDAAuD;gBACvD,yDAAyD;gBACzD,0DAA0D;gBAC1D,0DAA0D;gBAC1D,mDAAmD;gBACnD,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACzC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1C,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC;oBACnE,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACxC,IAAI,QAAQ;oBAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAEtC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;oBACnC,IAAI,CAAC;wBACH,MAAM,EAAE,GAAG,MAAM,OAAO,CAAC,WAAY,EAAE,CAAC;wBACxC,IAAI,CAAC,EAAE,EAAE,CAAC;4BACR,OAAO,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,OAAO,CAAC,WAAW,EAAE,CACnB,IAAI,EACJ,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CACjD,CAAC;oBACJ,CAAC;gBACH,CAAC,EAAE,KAAK,CAAC,CAAC;gBACV,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,KAAK,CAAC,QAAQ,CACZ,IAAY,EACZ,MAAuB,EACvB,OAA8B;YAE9B,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,mEAAmE;YACnE,qEAAqE;YACrE,mEAAmE;YACnE,kEAAkE;YAClE,gEAAgE;YAChE,+DAA+D;YAC/D,iEAAiE;YACjE,wCAAwC;YACxC,IAAI,CAAC;gBACH,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,GAAG,KAAK,SAAS;oBAAE,MAAM,GAAG,CAAC;YACnC,CAAC;YACD,MAAM,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,KAAK,CAAC,uBAAuB,CAC3B,aAAqB,EACrB,aAAqB;YAErB,IAAI,CAAC,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC9B,MAAM,GAAG,GAAG,GAAG,aAAa,IAAI,aAAa,EAAE,CAAC;YAChD,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YACpC,IAAI,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CACb,2BAA2B,aAAa,KAAK,aAAa,KAAK;oBAC7D,qFAAqF;oBACrF,wDAAwD,CAC3D,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,uBAAuB;YAC3B,4DAA4D;YAC5D,6DAA6D;YAC7D,4DAA4D;YAC5D,8DAA8D;YAC9D,6BAA6B;YAC7B,IAAI,CAAC,WAAW,IAAI,CAAC,GAAG,CAAC,cAAc;gBAAE,OAAO,IAAI,CAAC;YACrD,OAAO,sBAAsB,EAAE,CAAC;QAClC,CAAC;QAED,KAAK,CAAC,eAAe,CAAC,OAAe;YACnC,IAAI,CAAC,WAAW;gBAAE,OAAO,IAAI,CAAC;YAC9B,OAAO,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1D,CAAC;QAED,KAAK,CAAC,KAAK,CAAC,IAAY;YACtB,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC1C,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,IAAY;YACrB,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACvC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,IAAY;YACvB,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,eAAe,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YACzC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,KAAK,CAAC,iBAAiB,CACrB,IAAY,EACZ,QAAgB,EAChB,OAAoC;YAEpC,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,WAAW,CAAC;YAC5B,oEAAoE;YACpE,uEAAuE;YACvE,oEAAoE;YACpE,yEAAyE;YACzE,yEAAyE;YACzE,+DAA+D;YAC/D,oEAAoE;YACpE,MAAM,UAAU,GAAG,KAAK,EAAE,KAAa,EAAE,GAAW,EAAE,EAAE;gBACtD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE;oBACnC,KAAK;oBACL,+DAA+D;oBAC/D,qEAAqE;oBACrE,mEAAmE;oBACnE,cAAc;oBACd,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;oBACxB,OAAO,EAAE;wBACP,WAAW,eAAe,QAAQ,eAAe,aAAa,eAAe,0BAA0B;qBACxG;oBACD,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE;oBACnC,KAAK,EAAE,qBAAqB;oBAC5B,aAAa,EAAE,OAAO,EAAE,aAAa;iBACtC,CAAC,CAAC;gBACH,OAAO;oBACL,EAAE,EAAE,MAAM,CAAC,MAAM,KAAK,WAAW;oBACjC,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,CAAC;YACJ,CAAC,CAAC;YACF,wEAAwE;YACxE,wEAAwE;YACxE,qEAAqE;YACrE,wEAAwE;YACxE,MAAM,iBAAiB,CACrB,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,SAAS,EACT,GAAG,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAClC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,IAAY;YACzB,IAAI,CAAC,WAAW;gBAAE,OAAO,YAAY,CAAC;YACtC,OAAO,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,MAA0B;YACrC,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;QAED,KAAK,CAAC,OAAO,CACX,IAAY,EACZ,OAA2C;YAE3C,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,OAAO,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,KAAK,CAAC,mBAAmB,CAAC,MAEzB;YACC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACxB,CAAC;YACD,OAAO,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC,KAAK;YACT,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC;QAED,KAAK,CAAC,cAAc;YAClB,IAAI,CAAC,WAAW;gBAAE,OAAO,EAAE,CAAC;YAC5B,OAAO,cAAc,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC;QAED,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,OAAiB;YACnD,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,OAAO,eAAe,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,IAAY;YAC9B,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,aAAa,CAAC,IAAY;YAC9B,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,gBAAgB,CAAC,aAAqB,EAAE,WAAmB;YAC/D,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,gBAAgB,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,KAAK,CAAC,qBAAqB,CAAC,aAAqB,EAAE,WAAmB;YACpE,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACpE,MAAM,qBAAqB,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QACvE,CAAC;QAED,KAAK,CAAC,eAAe,CACnB,IAAY,EACZ,MAA+B;YAE/B,IAAI,CAAC,WAAW;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAEpE,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;YAC9D,MAAM,QAAQ,GAAa,EAAE,CAAC;YAE9B,+DAA+D;YAC/D,kEAAkE;YAClE,6DAA6D;YAC7D,2DAA2D;YAC3D,iEAAiE;YACjE,8DAA8D;YAC9D,6DAA6D;YAC7D,wDAAwD;YACxD,EAAE;YACF,8DAA8D;YAC9D,6DAA6D;YAC7D,2DAA2D;YAC3D,iDAAiD;YACjD,4DAA4D;YAC5D,qDAAqD;YACrD,EAAE;YACF,oDAAoD;YACpD,mEAAmE;YACnE,+DAA+D;YAC/D,4DAA4D;YAC5D,WAAW;YACX,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACrD,MAAM,YAAY,GAAG,mBAAmB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;YAEhE,+DAA+D;YAC/D,uDAAuD;YACvD,8DAA8D;YAC9D,2DAA2D;YAC3D,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,uBAAuB,CACnE,YAAY,EACZ,WAAW,CACZ,CAAC;YACF,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,MAAM,CAAC,GAAG,qBAAqB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;gBACtD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjB,GAAG,CAAC,KAAK,CAAC,mBAAmB,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9C,CAAC;YAED,4DAA4D;YAC5D,iEAAiE;YACjE,yDAAyD;YACzD,qCAAqC;YACrC,6DAA6D;YAC7D,+DAA+D;YAC/D,4DAA4D;YAC5D,iEAAiE;YACjE,gCAAgC;YAChC,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAE7D,6DAA6D;YAC7D,mEAAmE;YACnE,iEAAiE;YACjE,6DAA6D;YAC7D,kCAAkC;YAClC,IAAI,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC;gBACpD,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBACzD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CACb,8BAA8B,QAAQ,iBAAiB,CACxD,CAAC;gBACJ,CAAC;gBACD,uDAAuD;gBACvD,2DAA2D;gBAC3D,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;gBACpD,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7B,OAAO;oBACL,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;iBACjD,CAAC;YACJ,CAAC;YAED,kEAAkE;YAClE,gEAAgE;YAChE,+DAA+D;YAC/D,gEAAgE;YAChE,kDAAkD;YAClD,EAAE;YACF,mEAAmE;YACnE,8DAA8D;YAC9D,iEAAiE;YACjE,+DAA+D;YAC/D,gEAAgE;YAChE,8DAA8D;YAC9D,MAAM,cAAc,GAAG,mBAAmB,CACxC,aAAa,EACb,gBAAgB,CAAC,IAAI,CAAC,CACvB,CAAC;YACF,MAAM,oBAAoB,GAAG,+BAA+B,CAC1D,UAAU,EACV,cAAc,EACd,cAAc,CACf,CAAC;YACF,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,GAAG,CAAC,CAAC;YACtD,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClD,MAAM,CAAC,GAAG,yDAAyD,SAAS,EAAE,CAAC;gBAC/E,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACjB,GAAG,CAAC,KAAK,CAAC,mBAAmB,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9C,CAAC;YAED,4DAA4D;YAC5D,4DAA4D;YAC5D,iEAAiE;YACjE,MAAM,IAAI,GAAG,aAAa;gBACxB,CAAC,CAAC;oBACE,EAAE,EAAE,KAAc;oBAClB,MAAM,EAAE,0DAA0D;iBACnE;gBACH,CAAC,CAAC,MAAM,aAAa,CAAC,WAAW,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;YAC/D,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACZ,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;gBACpD,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC7B,yDAAyD;gBACzD,yDAAyD;gBACzD,gBAAgB;gBAChB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACrC,IAAI,MAAM,EAAE,CAAC;oBACX,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE;wBACpB,GAAG,MAAM;wBACT,SAAS,EAAE,EAAE,GAAG,cAAc,EAAE;qBACjC,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO;oBACL,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;iBACjD,CAAC;YACJ,CAAC;YAED,qEAAqE;YACrE,kEAAkE;YAClE,mCAAmC;YACnC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,gCAAgC;oBACtE,uBAAuB,IAAI,CAAC,MAAM,IAAI,gBAAgB,IAAI;oBAC1D,sDAAsD,CACzD,CAAC;YACJ,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,SAAS,GAAoB;gBACjC,GAAG,YAAY;gBACf,SAAS,EAAE,EAAE,GAAG,cAAc,EAAE;aACjC,CAAC;YAEF,wDAAwD;YACxD,6DAA6D;YAC7D,6DAA6D;YAC7D,6CAA6C;YAC7C,IAAI,CAAC;gBACH,MAAM,eAAe,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,QAAQ,CAAC,IAAI,CACX,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC9E,CAAC;YACJ,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CACxD,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CACf,CAAC;YACJ,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,6DAA6D;gBAC7D,0DAA0D;gBAC1D,wDAAwD;gBACxD,MAAM,WAAW,GACf,WAAW,YAAY,KAAK;oBAC1B,CAAC,CAAC,WAAW,CAAC,OAAO;oBACrB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC1B,GAAG,CAAC,KAAK,CACP,mBAAmB,IAAI,4DAA4D,WAAW,EAAE,CACjG,CAAC;gBAEF,IAAI,CAAC;oBACH,qDAAqD;oBACrD,MAAM,eAAe,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oBACzD,MAAM,aAAa,CAAC,WAAW,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE,CAC3D,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CACf,CAAC;oBACF,4DAA4D;oBAC5D,8DAA8D;oBAC9D,2DAA2D;oBAC3D,MAAM,IAAI,KAAK,CACb,qCAAqC,IAAI,KAAK,WAAW,IAAI;wBAC3D,4EAA4E,EAC9E,EAAE,KAAK,EAAE,WAAW,EAAE,CACvB,CAAC;gBACJ,CAAC;gBAAC,OAAO,WAAW,EAAE,CAAC;oBACrB,wDAAwD;oBACxD,8DAA8D;oBAC9D,0DAA0D;oBAC1D,MAAM,WAAW,GACf,WAAW,YAAY,KAAK;wBAC1B,CAAC,CAAC,WAAW,CAAC,OAAO;wBACrB,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC1B,4DAA4D;oBAC5D,6DAA6D;oBAC7D,SAAS;oBACT,IAAI,WAAW,KAAK,WAAW,IAAI,WAAW,KAAK,WAAW,EAAE,CAAC;wBAC/D,6DAA6D;wBAC7D,MAAM,WAAW,CAAC;oBACpB,CAAC;oBACD,IAAI,WAAW,CAAC,UAAU,CAAC,+BAA+B,CAAC,EAAE,CAAC;wBAC5D,2DAA2D;wBAC3D,MAAM,WAAW,CAAC;oBACpB,CAAC;oBACD,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACzB,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAChC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAC9B,GAAG,CAAC,cAAc,CAChB,aAAa,IAAI,iCAAiC;wBAChD,oBAAoB,WAAW,0BAA0B,WAAW,KAAK;wBACzE,+BAA+B,CAClC,CAAC;oBACF,MAAM,IAAI,KAAK,CACb,qCAAqC,IAAI,KAAK,WAAW,IAAI;wBAC3D,4BAA4B,WAAW,KAAK;wBAC5C,uEAAuE,EACzE,EAAE,KAAK,EAAE,WAAW,EAAE,CACvB,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACjC,kBAAkB,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;YACpD,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC7B,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;QAC3C,CAAC;QAED,YAAY,CAAC,IAAY;YACvB,OAAO,EAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QACrD,CAAC;QAED,+DAA+D;QAC/D,+DAA+D;QAC/D,IAAI,OAAO;YACT,OAAO,aAAa,IAAI,iBAAiB,CAAC;QAC5C,CAAC;QAED,gEAAgE;QAChE,gEAAgE;QAChE,8DAA8D;QAC9D,IAAI,QAAQ;YACV,OAAO,aAAa,IAAI,YAAY,CAAC;QACvC,CAAC;QACD,gEAAgE;QAChE,iEAAiE;QACjE,2DAA2D;QAC3D,kDAAkD;QAClD,IAAI,MAAM;YACR,OAAO,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QAC/C,CAAC;KACF,CAAC;IAEF,MAAM,UAAU,GAAc;QAC5B,KAAK,CAAC,eAAe,CACnB,KAAa,EACb,IAA8B;YAE9B,+DAA+D;YAC/D,+DAA+D;YAC/D,yCAAyC;YACzC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,mCAAmC;iBAC3C,CAAC;YACJ,CAAC;YACD,OAAO,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,KAAK,CAAC,cAAc;YAClB,OAAO,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,CAAC,oBAAoB,CACxB,SAA6B,SAAS,EACtC,MAA6B;YAE7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAChE,OAAO,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC;QAC1E,CAAC;KACF,CAAC;IAEF,MAAM,UAAU,GAAc;QAC5B,KAAK,CAAC,eAAe;YAKnB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,mCAAmC;aAC3C,CAAC;QACJ,CAAC;QACD,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,uCAAuC;QACvC,KAAK,CAAC,cAAc;YAClB,OAAO,cAAc,CAAC,iBAAiB,CAAC,CAAC;QAC3C,CAAC;QACD,8DAA8D;QAC9D,kEAAkE;QAClE,gEAAgE;QAChE,uEAAuE;QACvE,KAAK,CAAC,oBAAoB,CACxB,SAA6B,SAAS,EACtC,MAA6B;YAE7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,cAAc,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAChE,OAAO,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QACjD,CAAC;KACF,CAAC;IAEF,MAAM,YAAY,GAAgB;QAChC,KAAK,CAAC,GAAG;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,IAAI;YACR,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,KAAK,CAAC,mBAAmB;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;KACF,CAAC;IAEF;;;;OAIG;IACH,MAAM,iBAAiB,GAAG;QACxB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;QAClB,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;QACpB,QAAQ,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;QACxB,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI;QACzB,iBAAiB,EAAE,GAAG,EAAE,CAAC,EAAE;QAC3B,OAAO,EAAE;YACP,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;gBACrB,KAAK,CAAC,KAAK;oBACT,OAAO;wBACL,IAAI,EAAE,OAAgB;wBACtB,KAAK,EAAE,mCAAmC;qBAC3C,CAAC;gBACJ,CAAC;aACF,CAAC;YACF,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpB,KAAK,CAAC,KAAK;oBACT,OAAO;wBACL,IAAI,EAAE,OAAgB;wBACtB,KAAK,EAAE,mCAAmC;qBAC3C,CAAC;gBACJ,CAAC;aACF,CAAC;SACH;KAC0B,CAAC;IAE9B,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,mBAAmB;QAEzB,MAAM,EAAE;YACN,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAClC,OAAO,EAAE,MAAM;oBACf,KAAK,EAAE,mBAAmB;oBAC1B,WAAW,EACT,6DAA6D;iBAChE;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC;oBAClC,OAAO,EAAE,QAAQ;oBACjB,KAAK,EAAE,4BAA4B;oBACnC,WAAW,EACT,kKAAkK;iBACrK;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,2BAA2B;oBACpC,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,qCAAqC;oBAC5C,WAAW,EACT,+SAA+S;iBAClT;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,8BAA8B;oBACrC,WAAW,EAAE,yCAAyC;iBACvD;gBACD,mBAAmB,EAAE;oBACnB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,uBAAuB;oBAC9B,WAAW,EACT,6EAA6E;iBAChF;gBACD,sBAAsB,EAAE;oBACtB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,0BAA0B;oBACjC,WAAW,EACT,gJAAgJ;iBACnJ;gBACD,yBAAyB,EAAE;oBACzB,IAAI,EAAE,SAAS;oBACf,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,+CAA+C;oBACtD,WAAW,EACT,iZAAiZ;iBACpZ;gBACD,kBAAkB,EAAE;oBAClB,IAAI,EAAE,QAAiB;oBACvB,KAAK,EAAE,kCAAkC;oBACzC,WAAW,EACT,sWAAsW;oBACxW,oBAAoB,EAAE;wBACpB,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE;4BACjE,SAAS,EAAE;gCACT,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,gCAAgC;6BACxC;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,4CAA4C;6BACpD;4BACD,MAAM,EAAE;gCACN,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,oCAAoC;6BAC5C;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,uDAAuD;6BAC/D;4BACD,iBAAiB,EAAE;gCACjB,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,mBAAmB;6BAC3B;4BACD,SAAS,EAAE;gCACT,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,oBAAoB;6BAC5B;4BACD,WAAW,EAAE;gCACX,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,KAAK,EAAE,oCAAoC;6BAC5C;yBACF;qBACF;oBACD,OAAO,EAAE,EAAE;iBACZ;aACF;SACF;QAED,KAAK,CAAC,MAAoB;YACxB,2DAA2D;YAC3D,gEAAgE;YAChE,8DAA8D;YAC9D,gEAAgE;YAChE,gEAAgE;YAChE,8DAA8D;YAC9D,YAAY;YACZ,IAAI,iBAAiB,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;YAC7C,YAAY,GAAG,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE;gBACrC,iBAAiB,GAAG,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,kEAAkE;YAClE,gEAAgE;YAChE,8CAA8C;YAC9C,aAAa,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;YAC9B,8DAA8D;YAC9D,yDAAyD;YACzD,6DAA6D;YAC7D,+DAA+D;YAC/D,8DAA8D;YAC9D,uDAAuD;YACvD,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,IAAI,EAAE,CAAC;YACnD,8DAA8D;YAC9D,6DAA6D;YAC7D,sDAAsD;YACtD,gBAAgB,CAAC,MAAM,CAAC,yBAAyB,KAAK,IAAI,CAAC,CAAC;YAE5D,2DAA2D;YAC3D,2DAA2D;YAC3D,wDAAwD;YACxD,yDAAyD;YACzD,uDAAuD;YACvD,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc;gBAChC,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE;gBACtB,CAAC,CAAC,wBAAwB,CAAC;YAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC3D,MAAM,UAAU,GAAG,sBAAsB,CACvC,MAAM,CAAC,mBAAmB,EAC1B,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CACpB,CAAC;YACF,aAAa,GAAG,IAAI,aAAa,CAAC;gBAChC,GAAG,EAAE;oBACH,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;oBAChD,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;oBAChD,aAAa,EAAE,GAAG,CAAC,aAAa;wBAC9B,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,aAAc,CAAC,EAAE,EAAE,KAAK,CAAC;wBAC9C,CAAC,CAAC,SAAS;iBACd;gBACD,UAAU,EAAE;oBACV,UAAU,EAAE,GAAG,EAAE,CAAC,WAAW;oBAC7B,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CACjB,WAAW;wBACT,CAAC,CAAC,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC;wBACtC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAA8B,CAAC;oBACrD,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;wBACzB,IAAI,CAAC,WAAW;4BAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;wBACpE,MAAM,SAAS,CACb,WAAW,EACX,sBAAsB,CAAC,KAAK,EAAE,WAAW,CAAC,CAC3C,CAAC;oBACJ,CAAC;oBACD,cAAc,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE;wBACzC,IAAI,CAAC,WAAW;4BAAE,OAAO,IAAI,CAAC;wBAC9B,OAAO,cAAc,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;oBACvD,CAAC;iBACF;gBACD,KAAK,EAAE;oBACL,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;oBACrB,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC;oBAClD,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAwB,CAAC;iBAC/D;gBACD,KAAK,EAAE,IAAI,eAAe,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC9D,sBAAsB,EAAE,UAAU;gBAClC,gBAAgB,EAAE,MAAM,CAAC,sBAAsB,KAAK,KAAK;aAC1D,CAAC,CAAC;YAEH,aAAa,GAAG,IAAI,aAAa,CAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,6BAA6B,CAAC,EACjD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CACxB,CAAC;YAEF,qDAAqD;YACrD,8DAA8D;YAC9D,iEAAiE;YAChE,UAAkB,CAAC,0BAA0B,GAAG,GAAG,CAAC;YAErD,6CAA6C;YAC7C,CAAC,KAAK,IAAI,EAAE;gBACV,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC;gBAC5C,iBAAiB,GAAG,UAAU,CAAC;gBAC/B,MAAM,aAAa,GAAG,eAAe,EAAE,CAAC;gBACxC,IAAI,aAAa,EAAE,CAAC;oBAClB,GAAG,CAAC,KAAK,CACP,4DAA4D;wBAC1D,0EAA0E,CAC7E,CAAC;gBACJ,CAAC;gBACD,GAAG,CAAC,KAAK,CAAC,kCAAkC,EAAE,UAAU,CAAC,CAAC;gBAC1D,WAAW,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC9C,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC;gBAEnD,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,4DAA4D;oBAC5D,6DAA6D;oBAC7D,wDAAwD;oBACxD,iDAAiD;oBACjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,CAAC;oBAChD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACxD,GAAG,CAAC,cAAc,CAChB,GAAG,QAAQ,kFAAkF,CAC9F,CAAC;oBACF,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAClC,GAAG,CAAC,KAAK,CACP,yCAAyC,QAAQ,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvF,CAAC;oBACJ,CAAC;oBACD,iBAAiB,EAAE,CAAC;oBACpB,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;gBACtC,GAAG,CAAC,KAAK,CACP,kBAAkB,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE;oBAC5D,cAAc,WAAW,CAAC,UAAU,IAAI,SAAS,EAAE;oBACnD,cAAc,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE;oBAC5E,mBAAmB,aAAa,EAAE,CACrC,CAAC;gBAEF,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,GAAG,CAAC,eAAe,CACjB,GAAG,YAAY,GAAG,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CACxH,CAAC;gBAEF,mEAAmE;gBACnE,iEAAiE;gBACjE,oEAAoE;gBACpE,oEAAoE;gBACpE,kEAAkE;gBAClE,gEAAgE;gBAChE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,CAAC,CAAC;gBAChD,IAAI,0BAA0B,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC9C,MAAM,QAAQ,GAAG,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACxD,GAAG,CAAC,cAAc,CAChB,GAAG,QAAQ,kFAAkF,CAC9F,CAAC;oBACF,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAClC,GAAG,CAAC,KAAK,CACP,yCAAyC,QAAQ,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa,KAAK,KAAK,EAAE,CAAC;oBAC3D,MAAM,UAAU,GACd,MAAM,CAAC,aAAa,KAAK,QAAQ;wBAC/B,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;wBACzB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;oBAC/B,4DAA4D;oBAC5D,0DAA0D;oBAC1D,oBAAoB;oBACpB,MAAM,iBAAiB,GAAG,0BAA0B,CAClD,MAAM,CAAC,iBAAiB,CACzB,CAAC;oBACF,UAAU,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;wBAClC,8DAA8D;wBAC9D,+BAA+B;wBAC/B,MAAM,OAAO,GAAG,WAAW,CAAC;wBAC5B,IAAI,CAAC,OAAO;4BAAE,OAAO;wBACrB,0DAA0D;wBAC1D,0DAA0D;wBAC1D,6DAA6D;wBAC7D,uDAAuD;wBACvD,wDAAwD;wBACxD,4DAA4D;wBAC5D,iDAAiD;wBACjD,IAAI,CAAC;4BACH,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,CAAC;4BACvD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CACvC,OAAO,EACP,OAAO,EACP,iBAAiB,CAClB,CAAC;4BACF,GAAG,CAAC,KAAK,CACP,UAAU,MAAM,CAAC,aAAa,yCAAyC,MAAM,CAAC,cAAc,EAAE,CAC/F,CAAC;wBACJ,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;wBAClD,CAAC;wBACD,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;4BAC1C,GAAG,CAAC,KAAK,CACP,UAAU,MAAM,CAAC,aAAa,sBAAsB,MAAM,CAAC,cAAc,EAAE,CAC5E,CAAC;wBACJ,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,GAAG,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;wBACvC,CAAC;oBACH,CAAC,EAAE,UAAU,CAAC,CAAC;gBACjB,CAAC;gBAED,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACvC,iBAAiB,EAAE,CAAC;YACtB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjB,GAAG,CAAC,cAAc,CAChB,mBAAmB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACtE,CAAC;gBACF,iBAAiB,EAAE,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI;YACF,IAAI,UAAU,EAAE,CAAC;gBACf,aAAa,CAAC,UAAU,CAAC,CAAC;gBAC1B,UAAU,GAAG,IAAI,CAAC;YACpB,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC1C,aAAa,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YACD,YAAY,CAAC,KAAK,EAAE,CAAC;YACrB,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,CAAC,IAAI,EAAE,CAAC;gBACrB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,aAAa,GAAG,IAAI,CAAC;YACrB,WAAW,CAAC,KAAK,EAAE,CAAC;YACpB,gBAAgB,CAAC,KAAK,EAAE,CAAC;YACzB,+DAA+D;YAC/D,8DAA8D;YAC9D,2CAA2C;YAC3C,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC/C,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACjC,CAAC;YACD,gBAAgB,CAAC,KAAK,EAAE,CAAC;YACzB,0BAA0B,CAAC,KAAK,EAAE,CAAC;YACnC,kBAAkB,CAAC,KAAK,EAAE,CAAC;YAC3B,cAAc,CAAC,KAAK,EAAE,CAAC;YACvB,gBAAgB,GAAG,EAAE,CAAC;YACtB,aAAa,GAAG,IAAI,CAAC;YACrB,4DAA4D;YAC5D,2DAA2D;YAC3D,yBAAyB;YACzB,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,gBAAgB,GAAG,IAAI,CAAC;YACxB,iBAAiB,GAAG,IAAI,CAAC;YACzB,sBAAsB,GAAG,IAAI,CAAC;YAC9B,uBAAuB,GAAG,IAAI,CAAC;YAC/B,qBAAqB,GAAG,SAAS,CAAC;YAClC,eAAe,GAAG,IAAI,CAAC;YACvB,cAAc,CAAC,KAAK,EAAE,CAAC;YACvB,eAAe,CAAC,KAAK,EAAE,CAAC;YACxB,qEAAqE;YACrE,+DAA+D;YAC/D,WAAW,EAAE,CAAC;YACd,WAAW,GAAG,IAAI,CAAC;YACnB,OAAQ,UAAkB,CAAC,0BAA0B,CAAC;QACxD,CAAC;QAED,kBAAkB,CAAC,MAAe;YAChC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;gBACvC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBACD,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;gBAChD,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,cAAc,EAAE,CAAC;oBAC9C,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACvB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,GAAG,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC3D,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1D,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,GAAG,CAAC,iCAAiC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC/D,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrC,yDAAyD;gBACzD,6DAA6D;gBAC7D,iDAAiD;gBACjD,IAAI,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACvC,iEAAiE;gBACjE,gEAAgE;gBAChE,gEAAgE;gBAChE,4DAA4D;gBAC5D,6DAA6D;gBAC7D,8DAA8D;gBAC9D,2DAA2D;gBAC3D,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnE,IAAI,CAAC;wBACH,SAAS,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBACxD,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,qDAAqD;wBACrD,uDAAuD;wBACvD,qDAAqD;wBACrD,mDAAmD;wBACnD,sDAAsD;wBACtD,GAAG,CAAC,KAAK,CACP,gBAAgB,IAAI,kCAAkC,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,MAC9F,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE,CACH,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI;oBACJ,SAAS;oBACT,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI;iBACzC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAChE,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;gBAC3D,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBACvD,GAAG,CAAC,IAAI,CAAC;wBACP,IAAI;wBACJ,GAAG,MAAM;wBACT,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC;wBACjC,yDAAyD;wBACzD,qDAAqD;wBACrD,8CAA8C;wBAC9C,QAAQ,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,IAAI;qBACzC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH;;;;;;;;;;;;eAYG;YACH,MAAM,CAAC,MAAM,CAAC,iCAAiC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAClE,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrC,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC/C,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EACH,kCAAkC,IAAI,wBAAwB;4BAC9D,+DAA+D;4BAC/D,qBAAqB;qBACxB,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC;oBACH,gEAAgE;oBAChE,4DAA4D;oBAC5D,4DAA4D;oBAC5D,6DAA6D;oBAC7D,6DAA6D;oBAC7D,wBAAwB;oBACxB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;oBAC9D,aAAa,CAAC,IAAI,CAAC,CAAC;oBACpB,GAAG,CAAC,IAAI,CAAC;wBACP,IAAI;wBACJ,OAAO,EAAE,IAAI;wBACb,GAAG,MAAM;wBACT,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC;wBACjC,QAAQ,EAAE,IAAI;qBACf,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC3D,IAAI,CAAC;oBACH,MAAM,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAChC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBAClC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC5D,IAAI,CAAC;oBACH,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACjC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBAClC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC7D,IAAI,CAAC;oBACH,MAAM,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAClC,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBAClC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,2DAA2D;YAC3D,4DAA4D;YAC5D,0DAA0D;YAC1D,iDAAiD;YACjD,MAAM,CAAC,GAAG,CAAC,4BAA4B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBACD,6DAA6D;gBAC7D,2DAA2D;gBAC3D,0DAA0D;gBAC1D,+CAA+C;gBAC/C,2DAA2D;gBAC3D,+BAA+B;gBAC/B,MAAM,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAChE,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oBACpB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjD,OAAO;gBACT,CAAC;gBACD,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;gBACnE,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;oBACrB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;oBAClD,OAAO;gBACT,CAAC;gBACD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC;gBAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;gBAC7B,+DAA+D;gBAC/D,6DAA6D;gBAC7D,iDAAiD;gBACjD,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBACzD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC9D,OAAO;oBACT,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,wCACL,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE;qBACH,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;oBACvD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5B,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;qBACxD,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,iEAAiE;YACjE,8DAA8D;YAC9D,gEAAgE;YAChE,4DAA4D;YAC5D,MAAM,CAAC,GAAG,CAAC,mCAAmC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBACjE,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;oBAClE,OAAO;gBACT,CAAC;gBACD,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC5B,2DAA2D;gBAC3D,2DAA2D;gBAC3D,sDAAsD;gBACtD,2DAA2D;gBAC3D,yDAAyD;gBACzD,0DAA0D;gBAC1D,2DAA2D;gBAC3D,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;oBACzD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBACxB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC9D,OAAO;oBACT,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,wCACL,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CACjD,EAAE;qBACH,CAAC,CAAC;oBACH,OAAO;gBACT,CAAC;gBACD,wDAAwD;gBACxD,yDAAyD;gBACzD,wDAAwD;gBACxD,2DAA2D;gBAC3D,wDAAwD;gBACxD,gDAAgD;gBAChD,EAAE;gBACF,2BAA2B;gBAC3B,EAAE;gBACF,wDAAwD;gBACxD,0DAA0D;gBAC1D,2DAA2D;gBAC3D,yBAAyB;gBACzB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;gBACnD,GAAG,CAAC,SAAS,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;gBACzD,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;gBAC1C,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;gBACzC,GAAG,CAAC,SAAS,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;gBAC9C,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC;gBACrB,wDAAwD;gBACxD,sDAAsD;gBACtD,0DAA0D;gBAC1D,sDAAsD;gBACtD,mDAAmD;gBACnD,GAAG,CAAC,YAAY,EAAE,CAAC;gBACnB,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAE/C,IAAI,MAAuB,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,0DAA0D;oBAC1D,8DAA8D;oBAC9D,GAAG,CAAC,KAAK,CACP,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAC5E,CAAC;oBACF,GAAG,CAAC,GAAG,EAAE,CAAC;oBACV,OAAO;gBACT,CAAC;gBAED,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;oBAC7B,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;wBACf,0DAA0D;wBAC1D,qDAAqD;wBACrD,0DAA0D;wBAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;wBAC/C,wDAAwD;wBACxD,uDAAuD;wBACvD,uDAAuD;wBACvD,uDAAuD;wBACvD,sDAAsD;wBACtD,sDAAsD;wBACtD,IAAI,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,SAAS;4BAAE,OAAO;wBAC/C,IAAI,CAAC;4BACH,GAAG,CAAC,KAAK,CAAC,SAAS,QAAQ,MAAM,CAAC,CAAC;wBACrC,CAAC;wBAAC,MAAM,CAAC;4BACP,0DAA0D;wBAC5D,CAAC;oBACH,CAAC;oBACD,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;wBAClB,oDAAoD;wBACpD,oDAAoD;wBACpD,8CAA8C;wBAC9C,IAAI,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,SAAS;4BAAE,OAAO;wBAC/C,IAAI,CAAC;4BACH,GAAG,CAAC,KAAK,CAAC,qBAAqB,MAAM,MAAM,CAAC,CAAC;4BAC7C,GAAG,CAAC,GAAG,EAAE,CAAC;wBACZ,CAAC;wBAAC,MAAM,CAAC;4BACP,6BAA6B;wBAC/B,CAAC;oBACH,CAAC;iBACF,CAAC,CAAC;gBAEH,4DAA4D;gBAC5D,yDAAyD;gBACzD,2DAA2D;gBAC3D,0DAA0D;gBAC1D,kDAAkD;gBAClD,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;oBACjC,IAAI,CAAC;wBACH,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;oBAC/B,CAAC;oBAAC,MAAM,CAAC;wBACP,0DAA0D;oBAC5D,CAAC;gBACH,CAAC,EAAE,gBAAgB,CAAC,CAAC;gBACrB,SAAS,CAAC,KAAK,EAAE,CAAC;gBAElB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACnB,aAAa,CAAC,SAAS,CAAC,CAAC;oBACzB,KAAK,EAAE,CAAC;oBACR,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACxC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC;wBAC7D,qDAAqD;wBACrD,mDAAmD;wBACnD,uCAAuC;wBACvC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAChC,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;gBAC5C,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;oBACjC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,iEAAiE;YACjE,8DAA8D;YAC9D,6DAA6D;YAC7D,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAClD,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAI3B,CAAC;gBACF,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9D,GAAG;yBACA,MAAM,CAAC,GAAG,CAAC;yBACX,IAAI,CAAC,EAAE,KAAK,EAAE,gDAAgD,EAAE,CAAC,CAAC;oBACrE,OAAO;gBACT,CAAC;gBACD,MAAM,GAAG,GACP,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;oBACjD,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE;oBAC7B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;gBACjB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oBAChE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,+DAA+D;YAC/D,4DAA4D;YAC5D,iEAAiE;YACjE,6DAA6D;YAC7D,MAAM,CAAC,GAAG,CAAC,wBAAwB,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;gBACvD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;oBACjD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,4DAA4D;YAC5D,2DAA2D;YAC3D,yDAAyD;YACzD,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBACnD,MAAM,SAAS,GACb,OAAO,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ;oBAClC,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,MAAiB,CAAC,WAAW,EAAE;oBAC5C,CAAC,CAAC,SAAS,CAAC;gBAChB,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBACnD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;oBAC1D,OAAO;gBACT,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAClD,SAA+B,CAChC,CAAC;oBACF,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;wBAC7C,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBACjB,OAAO;oBACT,CAAC;oBACD,MAAM,IAAI,GAAG;wBACX,MAAM,CAAC,OAAO;wBACd,MAAM,CAAC,UAAU,IAAI,IAAI,GAAG,MAAM,CAAC,UAAU;wBAC7C,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;4BACrB,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;qBAClE;yBACE,MAAM,CAAC,OAAO,CAAC;yBACf,IAAI,CAAC,IAAI,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;wBACnB,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBAC5D,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,yDAAyD;YACzD,wCAAwC;YACxC,IAAI,aAAa,EAAE,CAAC;gBAClB,oBAAoB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;KACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,SAAS,uBAAuB,CAC9B,MAAsC;IAEtC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,YAAY;YACf,OAAO,4BAA4B,CAAC;QACtC,KAAK,oBAAoB;YACvB,OAAO,4BAA4B,CAAC;QACtC,KAAK,mBAAmB;YACtB,OAAO,mCAAmC,CAAC;QAC7C,KAAK,oBAAoB;YACvB,OAAO,kCAAkC,CAAC;QAC5C,KAAK,+BAA+B;YAClC,OAAO,6CAA6C,CAAC;QACvD,KAAK,IAAI;YACP,OAAO,eAAe,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAyB,EACzB,QAAgB;IAEhB,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IAC5B,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,IAAI;YACP,OAAO,CAAC,CAAC;QACX,KAAK,GAAG;YACN,OAAO,CAAC,GAAG,IAAI,CAAC;QAClB,KAAK,GAAG;YACN,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QACvB,KAAK,GAAG;YACN,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC5B,KAAK,GAAG;YACN,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACjC;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import"./chunks/virtualExposes-B__J5cSP.js";import"./chunks/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__signalk_container__remoteEntry_js-CCHPs5oP.js";var e=globalThis.__SK_REACT__;if(!e)throw Error(`signalk-container: window.__SK_REACT__ is not set. The host signalk-server admin UI must expose React on window for plugin federation. Requires signalk-server 2.27.0 or newer.`);var t=e,{Activity:n,Children:r,Component:i,Fragment:a,Profiler:o,PureComponent:s,StrictMode:c,Suspense:l,cache:u,cacheSignal:d,cloneElement:f,createContext:p,createElement:m,createRef:h,forwardRef:g,isValidElement:_,lazy:v,memo:y,startTransition:b,use:x,useActionState:S,useCallback:C,useContext:w,useDebugValue:T,useDeferredValue:
|
|
1
|
+
import"./chunks/virtualExposes-B__J5cSP.js";import"./chunks/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__signalk_container__remoteEntry_js-CCHPs5oP.js";var e=globalThis.__SK_REACT__;if(!e)throw Error(`signalk-container: window.__SK_REACT__ is not set. The host signalk-server admin UI must expose React on window for plugin federation. Requires signalk-server 2.27.0 or newer.`);var t=e,{Activity:n,Children:r,Component:i,Fragment:a,Profiler:o,PureComponent:s,StrictMode:c,Suspense:l,cache:u,cacheSignal:d,cloneElement:f,createContext:p,createElement:m,createRef:h,forwardRef:g,isValidElement:_,lazy:v,memo:y,startTransition:b,use:x,useActionState:S,useCallback:C,useContext:w,useDebugValue:T,useDeferredValue:ee,useEffect:E,useEffectEvent:D,useId:O,useImperativeHandle:k,useInsertionEffect:te,useLayoutEffect:A,useMemo:ne,useOptimistic:re,useReducer:ie,useRef:j,useState:M,useSyncExternalStore:ae,useTransition:N,version:oe}=t;async function P(e){return await(async()=>{if(typeof navigator>`u`||!navigator.clipboard)return!1;try{return await navigator.clipboard.writeText(e),!0}catch{return!1}})()||(()=>{if(typeof document>`u`)return!1;let t=document.createElement(`textarea`);t.value=e,t.style.position=`fixed`,t.style.top=`-1000px`,t.style.left=`-1000px`,t.setAttribute(`readonly`,``),document.body.appendChild(t),t.select();let n;try{n=document.execCommand(`copy`)}catch{n=!1}return document.body.removeChild(t),n})()}var F=globalThis.__SK_REACT_JSX_RUNTIME__;if(!F)throw Error(`signalk-container: window.__SK_REACT_JSX_RUNTIME__ is not set by the host.`);var I=F,{Fragment:L,jsx:R,jsxs:z}=I;I.jsxDEV;var B=1e4,se=200,V={overlay:{position:`fixed`,inset:0,background:`rgba(0,0,0,0.5)`,display:`flex`,alignItems:`center`,justifyContent:`center`,zIndex:99999},modal:{background:`#fff`,borderRadius:8,boxShadow:`0 10px 25px rgba(0,0,0,0.2)`,width:`min(90vw, 1100px)`,maxHeight:`85vh`,display:`flex`,flexDirection:`column`,overflow:`hidden`},header:{padding:`12px 16px`,borderBottom:`1px solid #e5e7eb`,display:`flex`,alignItems:`center`,gap:12},title:{fontSize:16,fontWeight:600,color:`#111`,flex:1},statusDot:{width:10,height:10,borderRadius:`50%`,flexShrink:0},statusGreen:{background:`#10b981`},statusAmber:{background:`#f59e0b`},statusRed:{background:`#ef4444`},toolbarBtn:{padding:`5px 10px`,fontSize:12,background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`,borderRadius:4,cursor:`pointer`},toolbarBtnActive:{background:`#3b82f6`,color:`#fff`,borderColor:`#3b82f6`},closeBtn:{padding:`5px 12px`,fontSize:12,background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`,borderRadius:4,cursor:`pointer`},body:{flex:1,overflow:`auto`,background:`#1f2937`,color:`#e5e7eb`,fontFamily:`"SF Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace`,fontSize:12,lineHeight:1.5,padding:`12px 16px`,margin:0,whiteSpace:`pre-wrap`,wordBreak:`break-word`},endBanner:{padding:`8px 16px`,background:`#fef3c7`,color:`#92400e`,fontSize:12,borderTop:`1px solid #fde68a`},metaLine:{fontSize:11,color:`#6b7280`}};function ce({name:e,onClose:t}){let[n,r]=M([]),[i,a]=M(`connecting`),[o,s]=M(null),[c,l]=M(!0),[u,d]=M(!1),f=j(null),p=j(null),m=j(null),h=j(!1),g=j(!1),_=j(null),v=j(null),y=j(null),b=C(e=>{r(t=>{let n=t.concat(e);return n.length>B?n.slice(n.length-B):n})},[]);E(()=>{let t=!1;return(async()=>{let n=!1;try{let r=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/logs?tail=${se}`);if(t)return;if(r.ok){let e=await r.json();b(Array.isArray(e.lines)?e.lines:[]),a(`backfill`)}else r.status===404?(b([`[error] container not found (HTTP 404)`]),s(`container not found`),a(`disconnected`),n=!0):(b([`[error] backfill failed: HTTP ${r.status}`]),a(`backfill`))}catch(e){if(t)return;b([`[error] backfill failed: ${e instanceof Error?e.message:String(e)}`])}if(t||n)return;let r=new EventSource(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/logs/stream`);m.current=r,r.addEventListener(`hello`,()=>{t||a(`streaming`)}),r.onmessage=e=>{t||e.data!=null&&b([e.data])},r.addEventListener(`end`,e=>{if(t)return;let n=e.data;s(n||`stream ended`),a(`disconnected`),r.close()}),r.onerror=()=>{t||a(e=>e===`disconnected`?e:`connecting`)}})(),()=>{t=!0,m.current&&=(m.current.close(),null)}},[e,b]),A(()=>{if(!c||h.current)return;let e=p.current;e&&(g.current=!0,e.scrollIntoView({block:`end`,inline:`nearest`}),requestAnimationFrame(()=>{g.current=!1}))},[n,c]);let x=C(e=>{if(g.current){g.current=!1;return}let t=f.current;t&&(h.current=!(t.scrollHeight-t.scrollTop-t.clientHeight<8))},[]),S=C(()=>{l(e=>{let t=!e;if(t){h.current=!1;let e=p.current;e&&(g.current=!0,e.scrollIntoView({block:`end`,inline:`nearest`}),requestAnimationFrame(()=>{g.current=!1}))}return t})},[]),w=C(async()=>{await P(n.join(`
|
|
2
2
|
`))&&(d(!0),setTimeout(()=>d(!1),1500))},[n]),T=C(()=>{let t=new Blob([n.join(`
|
|
3
3
|
`)+`
|
|
4
|
-
`],{type:`text/plain;charset=utf-8`}),r=URL.createObjectURL(t),i=document.createElement(`a`);i.href=r,i.download=`${e}-${new Date().toISOString().replace(/[:.]/g,`-`)}.log`,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)},[n,e]);
|
|
5
|
-
`),
|
|
6
|
-
`)}var ue=`/plugins/signalk-container/api/doctor/deployment`,q={overlay:{position:`fixed`,inset:0,background:`rgba(0,0,0,0.5)`,display:`flex`,alignItems:`center`,justifyContent:`center`,zIndex:99999},modal:{background:`#fff`,borderRadius:8,boxShadow:`0 10px 25px rgba(0,0,0,0.2)`,width:`min(90vw, 760px)`,maxHeight:`85vh`,display:`flex`,flexDirection:`column`,overflow:`hidden`},header:{padding:`12px 16px`,borderBottom:`1px solid #e5e7eb`,display:`flex`,alignItems:`center`,gap:12},title:{fontSize:16,fontWeight:600,color:`#111`,flex:1},statusDot:{width:10,height:10,borderRadius:`50%`,flexShrink:0},statusGreen:{background:`#10b981`},statusAmber:{background:`#f59e0b`},statusRed:{background:`#ef4444`},toolbarBtn:{padding:`5px 10px`,fontSize:12,background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`,borderRadius:4,cursor:`pointer`},body:{flex:1,overflow:`auto`,padding:`16px`,color:`#111`,fontSize:13},headline:{fontSize:15,fontWeight:600,marginBottom:12},row:{display:`flex`,gap:12,padding:`4px 0`,borderBottom:`1px solid #f3f4f6`},rowLabel:{width:150,flexShrink:0,color:`#6b7280`},rowValue:{color:`#111`,wordBreak:`break-word`},rowValueMissing:{color:`#b45309`,fontWeight:600},dim:{color:`#9ca3af`},sectionLabel:{fontSize:12,fontWeight:600,color:`#374151`,marginTop:16,marginBottom:6},pre:{background:`#1f2937`,color:`#e5e7eb`,fontFamily:`"SF Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace`,fontSize:12,lineHeight:1.5,padding:`12px`,margin:0,borderRadius:6,whiteSpace:`pre-wrap`,wordBreak:`break-word`},toggle:{marginTop:16,fontSize:12,background:`none`,border:`none`,color:`#3b82f6`,cursor:`pointer`,padding:0},message:{color:`#6b7280`,padding:`8px 0`},error:{color:`#ef4444`,padding:`8px 0`}};function de(e){return e===`ok`?q.statusGreen:e===`self-id-unresolved`||e===`cgroup-controllers-incomplete`?q.statusAmber:q.statusRed}function J({label:e,value:t,missing:n}){return
|
|
7
|
-
`)}):
|
|
8
|
-
`)})]}),t.linger&&t.linger.advice.length>0&&L
|
|
9
|
-
`)})]}),I(`button`,{type:`button`,style:q.toggle,onClick:()=>c(e=>!e),children:s?`▾ Hide raw JSON`:`▸ Show raw JSON`}),s&&I(`pre`,{style:{...q.pre,marginTop:8},children:JSON.stringify(t,null,2)})]})]})]})})}var X={root:{fontFamily:`-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif`,color:`#333`,padding:`16px 0`},sectionTitle:{fontSize:13,fontWeight:600,color:`#888`,textTransform:`uppercase`,letterSpacing:`0.05em`,marginBottom:10,marginTop:24},btn:{display:`inline-flex`,alignItems:`center`,gap:8,padding:`8px 16px`,border:`none`,borderRadius:6,fontSize:13,fontWeight:600,cursor:`pointer`},btnPrimary:{background:`#3b82f6`,color:`#fff`},btnDanger:{background:`#ef4444`,color:`#fff`,padding:`6px 12px`,fontSize:12},btnWarning:{background:`#f59e0b`,color:`#fff`,padding:`6px 12px`,fontSize:12},btnSave:{background:`#3b82f6`,color:`#fff`},btnSuccess:{background:`#10b981`,color:`#fff`},btnSecondary:{background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`},btnDisabled:{opacity:.5,cursor:`not-allowed`},status:{marginTop:8,fontSize:12,minHeight:18},runtimeCard:{display:`flex`,alignItems:`center`,gap:14,padding:`14px 18px`,background:`#f8f9fa`,border:`1px solid #e0e0e0`,borderRadius:10,marginBottom:12},runtimeIcon:{width:44,height:44,borderRadius:10,display:`flex`,alignItems:`center`,justifyContent:`center`,fontSize:22,flexShrink:0},runtimeInfo:{flex:1},runtimeName:{fontSize:15,fontWeight:600,color:`#333`},runtimeVersion:{fontSize:12,color:`#888`},runtimeRemediation:{fontSize:12,color:`#666`,fontFamily:`ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,whiteSpace:`pre-wrap`,marginTop:6,lineHeight:1.45},containerItem:{display:`flex`,alignItems:`center`,gap:12,padding:`10px 14px`,background:`#f8f9fa`,border:`1px solid #e0e0e0`,borderRadius:10,marginBottom:8},stateIndicator:{width:10,height:10,borderRadius:`50%`,flexShrink:0},containerInfo:{flex:1,minWidth:0},containerName:{fontSize:14,fontWeight:600,color:`#333`},containerMeta:{fontSize:11,color:`#888`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},containerActions:{display:`flex`,gap:6,flexShrink:0},containerCard:{background:`#f8f9fa`,border:`1px solid #e0e0e0`,borderRadius:10,marginBottom:8,overflow:`hidden`},containerItemFlat:{display:`flex`,alignItems:`center`,gap:12,padding:`10px 14px`},limitsRow:{display:`flex`,alignItems:`center`,gap:10,padding:`6px 14px 10px 34px`,fontSize:11,color:`#666`,flexWrap:`wrap`},updatesRow:{display:`flex`,alignItems:`center`,gap:10,padding:`0 14px 10px 34px`,fontSize:11,color:`#666`,flexWrap:`wrap`},limitBadge:{display:`inline-flex`,alignItems:`center`,padding:`2px 8px`,borderRadius:12,background:`#e5e7eb`,color:`#374151`,fontSize:11,fontWeight:500},overrideBadge:{display:`inline-flex`,alignItems:`center`,padding:`2px 8px`,borderRadius:12,background:`#fef3c7`,color:`#92400e`,fontSize:10,fontWeight:600},editLimitsBtn:{marginLeft:`auto`,padding:`3px 10px`,fontSize:11,background:`#fff`,color:`#3b82f6`,border:`1px solid #3b82f6`,borderRadius:6,cursor:`pointer`,fontWeight:500},limitsEditor:{borderTop:`1px solid #e0e0e0`,padding:`14px 14px 14px 34px`,background:`#fff`},limitsEditorGrid:{display:`grid`,gridTemplateColumns:`160px 1fr auto`,gap:`8px 12px`,alignItems:`center`,marginBottom:10},limitsEditorLabel:{fontSize:12,fontWeight:500,color:`#555`},limitsEditorInput:{padding:`5px 8px`,borderRadius:5,border:`1px solid #ccc`,fontSize:12,background:`#fff`,color:`#333`,fontFamily:`inherit`,width:`100%`,boxSizing:`border-box`},limitsEditorInputDisabled:{background:`#f3f4f6`,color:`#9ca3af`,fontStyle:`italic`},limitsEditorUnsetBtn:{width:24,height:24,borderRadius:4,border:`1px solid #d1d5db`,background:`#fff`,color:`#6b7280`,fontSize:14,lineHeight:1,cursor:`pointer`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`},limitsEditorUnsetBtnActive:{background:`#fee2e2`,color:`#991b1b`,border:`1px solid #fca5a5`},limitsEditorAdvancedToggle:{fontSize:11,color:`#3b82f6`,cursor:`pointer`,userSelect:`none`,marginTop:6,marginBottom:10,display:`inline-block`},limitsEditorActions:{display:`flex`,gap:8,justifyContent:`flex-end`,marginTop:10},limitsEditorResult:{marginTop:10,padding:`8px 10px`,borderRadius:6,fontSize:11,lineHeight:1.5},limitsEditorResultLive:{background:`#d1fae5`,color:`#065f46`},limitsEditorResultRecreated:{background:`#fef3c7`,color:`#92400e`},limitsEditorResultError:{background:`#fee2e2`,color:`#991b1b`},limitsEditorWarning:{marginTop:4,fontSize:10,opacity:.85,fontStyle:`italic`},empty:{textAlign:`center`,padding:`30px 16px`,color:`#999`,fontSize:13},fieldRow:{display:`flex`,alignItems:`center`,gap:12,marginBottom:10},label:{fontSize:13,fontWeight:500,color:`#555`,width:160,flexShrink:0},select:{padding:`6px 10px`,borderRadius:6,border:`1px solid #ccc`,fontSize:13,background:`#fff`,color:`#333`},hint:{fontSize:11,color:`#aaa`,marginLeft:8},pruneResult:{fontSize:12,color:`#10b981`,marginTop:6}},pe={running:`#10b981`,stopped:`#f59e0b`,missing:`#94a3b8`,"no-runtime":`#ef4444`},me={running:`Running`,stopped:`Stopped`,missing:`Not created`,"no-runtime":`No runtime`};function Z({label:e,value:t,options:n,onChange:r,hint:i}){return L(`div`,{style:X.fieldRow,children:[I(`span`,{style:X.label,children:e}),I(`select`,{style:X.select,value:t,onChange:e=>r(e.target.value),children:n.map(e=>I(`option`,{value:e.value,children:e.label},e.value))}),i&&I(`span`,{style:X.hint,children:i})]})}function he({label:e,value:t,onChange:n,hint:r}){return L(`div`,{style:X.fieldRow,children:[I(`span`,{style:X.label,children:e}),L(`label`,{style:{display:`inline-flex`,alignItems:`center`,cursor:`pointer`,gap:8},children:[I(`input`,{type:`checkbox`,checked:t,onChange:e=>n(e.target.checked),style:{width:16,height:16,cursor:`pointer`}}),I(`span`,{style:{fontSize:13,color:`#555`},children:t?`Enabled`:`Disabled`})]}),r&&I(`span`,{style:X.hint,children:r})]})}function Q(e){return e&&e.startsWith(`sk-`)?e.slice(3):e}var $=[{key:`cpus`,label:`CPU (cores)`,type:`number`,step:`0.1`,min:`0.1`,placeholder:`e.g. 1.5`,primary:!0},{key:`memory`,label:`Memory`,type:`text`,placeholder:`e.g. 512m, 2g`,primary:!0},{key:`memorySwap`,label:`Memory + swap`,type:`text`,placeholder:`= memory to disable swap`,primary:!0},{key:`pidsLimit`,label:`Max processes`,type:`number`,step:`1`,min:`1`,placeholder:`e.g. 200`,primary:!0},{key:`cpuShares`,label:`CPU shares (weight)`,type:`number`,step:`1`,min:`2`,placeholder:`default 1024`,primary:!1},{key:`cpusetCpus`,label:`Pin to CPUs`,type:`text`,placeholder:`e.g. "0,1" or "1-3"`,primary:!1},{key:`memoryReservation`,label:`Memory reservation`,type:`text`,placeholder:`soft floor, e.g. 256m`,primary:!1},{key:`oomScoreAdj`,label:`OOM score adjust`,type:`number`,step:`1`,min:`-1000`,max:`1000`,placeholder:`-1000 to 1000`,primary:!1}];function ge(e){try{let t=new Date(e).getTime();if(!Number.isFinite(t))return e;let n=Math.max(0,Math.floor((Date.now()-t)/1e3));if(n<5)return`just now`;if(n<60)return`${n}s ago`;let r=Math.floor(n/60);if(r<60)return`${r}m ago`;let i=Math.floor(r/60);return i<24?`${i}h ago`:`${Math.floor(i/24)}d ago`}catch{return e}}function _e(e){if(!e)return`No update data`;let{runningTag:t,currentVersion:n,latestVersion:r,updateAvailable:i,reason:a,fromCache:o}=e;return a===`offline`?o?`\u{1F4E1} Offline — last cached result shows ${i?`update available`:`up to date`}`:`📡 Offline — no cached result yet`:a===`newer-version`?`\u2191 Update available: ${n} \u2192 ${r}`:a===`digest-drift`?`\u21BB Rebuild available for :${t}${r?` (latest stable: ${r})`:``}`:a===`up-to-date`?`\u2705 Up to date${n?` (`+n+`)`:``}`:a===`older-than-pinned`?`\u2139 Pinned to ${n}, latest stable is ${r}`:a===`error`?`\u26A0 Check error: ${e.error||`unknown`}`:`State: ${a||`unknown`}`}function ve(e){if(!e||!e.reason)return null;let{reason:t,runningTag:n,currentVersion:r,latestVersion:i,fromCache:a}=e;return t===`newer-version`?{label:`\u2191 ${i||`update`} available`,bg:`#fef3c7`,fg:`#92400e`,title:`Update available: ${r} \u2192 ${i}`}:t===`digest-drift`?{label:`↻ rebuild available`,bg:`#fef3c7`,fg:`#92400e`,title:`Image rebuild available for :${n}${i?` (latest stable ${i})`:``}`}:t===`offline`?{label:a?`📡 offline (cached)`:`📡 offline`,bg:`#e5e7eb`,fg:`#4b5563`,title:a?`Network unreachable; showing last cached check result`:`Network unreachable; no cached result yet`}:t===`error`?{label:`⚠ check error`,bg:`#fee2e2`,fg:`#991b1b`,title:e.error||`Update check error`}:t===`up-to-date`?{label:`✅ up to date`,bg:`#dcfce7`,fg:`#166534`,title:`Up to date${r?` (`+r+`)`:``}`}:null}function ye(e){let t={};for(let n of $){let r=n.key,i=e[n.key];if(i===null){t[r]=null;continue}if(!(i===void 0||i===``))if(n.type===`number`){let e=Number(i);if(!Number.isFinite(e))continue;t[r]=e}else t[r]=i}return t}function be(e,t){if(t==null||t===``)return null;switch(e){case`cpus`:return`${t} CPU`;case`memory`:return`${t}`;case`memorySwap`:return`swap: ${t}`;case`memoryReservation`:return`reserve: ${t}`;case`pidsLimit`:return`${t} PIDs`;case`cpuShares`:return`shares: ${t}`;case`cpusetCpus`:return`cpus: ${t}`;case`oomScoreAdj`:return`oom: ${t}`;default:return`${e}: ${t}`}}function xe({containerName:e,effective:n,initialOverride:r,onApply:i,onResetToDefault:a,onClose:o}){let s=e=>{let t=e??n,r={};for(let e of $){let n=e.key,i=t?t[n]:void 0;i==null?r[e.key]=``:r[e.key]=String(i)}return r},[c,l]=j(()=>s(n)),[u,d]=j(()=>r?$.some(e=>!e.primary&&r[e.key]!==void 0):!1),[f,p]=j(!1),[m,h]=j(!1),[g,_]=j(null),v=(e,t)=>{l(n=>({...n,[e]:t}))},y=e=>{l(t=>({...t,[e]:t[e]===null?``:null}))},b=()=>{l(s(n)),_(null)},x=async()=>{p(!0),_(null);try{let e=await i(ye(c));_(e),e&&e.effective&&l(s(e.effective))}catch(e){_({error:e instanceof Error?e.message:String(e)})}p(!1)},S=async()=>{if(window.confirm(`Reset ${e} to the plugin's default resource limits? This will remove your override and may cause a brief container recreate (~5s of downtime) if memory limits need to be unset.`)){h(!0),_(null);try{let e=await a();_(e),e&&e.effective&&l(s(e.effective))}catch(e){_({error:e instanceof Error?e.message:String(e)})}h(!1)}},C=n=>{let r=c[n.key],i=r===null;return L(t.Fragment,{children:[I(`label`,{style:X.limitsEditorLabel,htmlFor:`lim-${e}-${n.key}`,children:n.label}),I(`input`,{id:`lim-${e}-${n.key}`,type:i?`text`:n.type,value:i?``:r,step:n.step,min:n.min,max:n.max,placeholder:i?`(unset — remove limit)`:n.placeholder,disabled:i,onChange:e=>v(n.key,e.target.value),style:{...X.limitsEditorInput,...i?X.limitsEditorInputDisabled:{}}}),I(`button`,{type:`button`,onClick:()=>y(n.key),title:i?`Click to set a value again`:`Click to explicitly unset (remove this limit)`,style:{...X.limitsEditorUnsetBtn,...i?X.limitsEditorUnsetBtnActive:{}},children:i?`↺`:`×`})]},n.key)},w=$.filter(e=>e.primary),T=$.filter(e=>!e.primary);return L(`div`,{style:X.limitsEditor,children:[I(`div`,{style:X.limitsEditorGrid,children:w.map(C)}),L(`span`,{onClick:()=>d(!u),style:X.limitsEditorAdvancedToggle,children:[u?`▾`:`▸`,` Advanced (`,T.length,` more fields)`]}),u&&I(`div`,{style:X.limitsEditorGrid,children:T.map(C)}),L(`div`,{style:X.limitsEditorActions,children:[I(`button`,{type:`button`,onClick:o,disabled:f||m,style:{...X.btn,padding:`6px 12px`,fontSize:12,background:`#fff`,color:`#6b7280`,border:`1px solid #d1d5db`,...f||m?X.btnDisabled:{}},children:`Close`}),I(`button`,{type:`button`,onClick:S,disabled:f||m,title:`Clear override and restore plugin-default limits`,style:{...X.btn,padding:`6px 12px`,fontSize:12,background:`#fff`,color:`#d97706`,border:`1px solid #f59e0b`,...f||m?X.btnDisabled:{}},children:m?`Resetting...`:`Reset to default`}),I(`button`,{type:`button`,onClick:b,disabled:f||m,title:`Discard unsaved changes in this form (does not touch the server)`,style:{...X.btn,padding:`6px 12px`,fontSize:12,background:`#fff`,color:`#6b7280`,border:`1px solid #d1d5db`,...f||m?X.btnDisabled:{}},children:`Revert`}),I(`button`,{type:`button`,onClick:x,disabled:f||m,style:{...X.btn,...X.btnPrimary,padding:`6px 14px`,fontSize:12,...f||m?X.btnDisabled:{}},children:f?`Applying...`:`Apply`})]}),g&&I(`div`,{style:{...X.limitsEditorResult,...g.error?X.limitsEditorResultError:g.method===`recreated`?X.limitsEditorResultRecreated:X.limitsEditorResultLive},children:g.error?L(F,{children:[I(`strong`,{children:`Error:`}),` `,g.error]}):L(F,{children:[I(`strong`,{children:g.method===`live`?`Applied live (no restart)`:`Container recreated`}),g.warnings&&g.warnings.length>0&&I(`div`,{style:X.limitsEditorWarning,children:g.warnings.map((e,t)=>L(`div`,{children:[`⚠ `,e]},t))})]})})]})}function Se(e){return e?U(e.status):`No container runtime found`}function Ce({configuration:e,save:t}){let n=e||{},[r,i]=j(n.runtime||`auto`),[a,o]=j(n.pruneSchedule||`weekly`),[s,c]=j(n.updateCheckInterval||`24h`),[l,u]=j(n.backgroundUpdateChecks!==!1),[d,f]=j(n.containerOverrides||{}),[p,m]=j(null),[h,g]=j(null),[_,v]=j([]),[y,b]=j({}),[x,S]=j({}),[w,T]=j({}),[E,ee]=j({}),[O,k]=j(new Set),[te,ne]=j(new Set),[re,ie]=j(null),[ae,A]=j(!1),[oe,se]=j(!0),[ce,M]=j(``),[N,P]=j(!1),[F,R]=j(null),z=C(async()=>{try{let[e,t]=await Promise.all([fetch(`/plugins/signalk-container/api/runtime`),fetch(`/plugins/signalk-container/api/containers`)]),n=!1;if(e.ok){let t=await e.json();m(t),n=t!==null}else m(null);if(n)g(null);else try{let e=await fetch(`/plugins/signalk-container/api/doctor/deployment`);e.ok?g(await e.json()):g(null)}catch{g(null)}let r=[];if(t.ok?(r=await t.json(),v(r)):v([]),r.length>0){let e={},t={};await Promise.all(r.map(async n=>{let r=Q(n.name);try{let n=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(r)}/resources`);if(n.ok){let i=await n.json();e[r]=i.effective||{},t[r]=i.override??null}}catch{}})),b(e),S(t)}try{let e=await fetch(`/plugins/signalk-container/api/updates`);if(e.ok){let t=await e.json();if(Array.isArray(t)){let e={},n={};for(let r of t)r&&r.containerName&&(n[r.containerName]=r,r.pluginId&&(e[r.containerName]=r.pluginId));T(e=>{let t={...n};for(let r of Object.keys(n)){let i=n[r],a=e[r];i.reason===`unknown`&&a&&a.reason&&a.reason!==`unknown`&&(t[r]=a)}return t}),ee(e)}}}catch{}}catch{m(null),v([])}se(!1)},[]);D(()=>{z();let e=setInterval(z,5e3);return()=>clearInterval(e)},[z]);let B=e=>{let t=Q(e);ne(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})},V=async(e,t)=>{let n=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/resources`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));return n.ok?(r.effective&&b(t=>({...t,[e]:r.effective})),S(t=>({...t,[e]:r.override??null})),f(t=>{let n={...t};return r.override&&Object.keys(r.override).length>0?n[e]=r.override:delete n[e],n}),{method:r.method,warnings:r.warnings,effective:r.effective}):{error:r.error||`${n.status} ${n.statusText}`}},H=async e=>{let t=E[e];if(!t){M(`${e}: no update service registered. The consumer plugin hasn't migrated to signalk-container's update detection yet.`),P(!0);return}k(t=>{let n=new Set(t);return n.add(e),n}),M(`Checking ${e} for updates...`),P(!1);try{let n=await fetch(`/plugins/signalk-container/api/updates/${encodeURIComponent(t)}/check`,{method:`POST`});if(n.ok){let t=await n.json();T(n=>({...n,[e]:t})),M(_e(t)),P(!1)}else M(`Check failed: ${(await n.json().catch(()=>({error:n.statusText}))).error}`),P(!0)}catch(e){M(`Check error: ${e instanceof Error?e.message:String(e)}`),P(!0)}k(t=>{let n=new Set(t);return n.delete(e),n})},U=async e=>{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/resources`,{method:`DELETE`}),n=await t.json().catch(()=>({}));return t.ok?(n.effective&&b(t=>({...t,[e]:n.effective})),S(t=>({...t,[e]:null})),f(t=>{let n={...t};return delete n[e],n}),{method:n.method,warnings:n.warnings,effective:n.effective}):{error:n.error||`${t.status} ${t.statusText}`}},W=()=>{let e={};for(let[t,n]of Object.entries(x))n&&Object.keys(n).length>0&&(e[t]=n);t({...n,runtime:r,pruneSchedule:a,maxConcurrentJobs:n.maxConcurrentJobs||2,updateCheckInterval:s,backgroundUpdateChecks:l,containerOverrides:e}),M(`Saved! Plugin will restart.`),P(!1)},G=async e=>{M(`Starting ${e}...`),P(!1);try{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/start`,{method:`POST`});t.ok?(M(`${e} started.`),z()):(M(`Failed: ${(await t.json().catch(()=>({error:t.statusText}))).error}`),P(!0))}catch(e){M(`Error: ${e instanceof Error?e.message:String(e)}`),P(!0)}},K=async e=>{M(`Stopping ${e}...`),P(!1);try{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/stop`,{method:`POST`});t.ok?(M(`${e} stopped.`),z()):(M(`Failed: ${(await t.json().catch(()=>({error:t.statusText}))).error}`),P(!0))}catch(e){M(`Error: ${e instanceof Error?e.message:String(e)}`),P(!0)}},ue=async(e,t)=>{if(!(t===`running`&&!window.confirm(`${e} is running. Stop and remove it?`))){M(`Removing ${e}...`),P(!1);try{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/remove`,{method:`POST`});t.ok?(M(`${e} removed.`),z()):(M(`Failed: ${(await t.json().catch(()=>({error:t.statusText}))).error}`),P(!0))}catch(e){M(`Error: ${e instanceof Error?e.message:String(e)}`),P(!0)}}},q=async()=>{M(`Pruning dangling images...`),P(!1),R(null);try{let e=await fetch(`/plugins/signalk-container/api/prune`,{method:`POST`});if(e.ok){let t=await e.json().catch(()=>({error:e.statusText}));R(t),M(`Pruned ${t.imagesRemoved} image(s), reclaimed ${t.spaceReclaimed}.`)}else M(`Prune failed: ${(await e.json().catch(()=>({error:e.statusText}))).error}`),P(!0)}catch(e){M(`Error: ${e instanceof Error?e.message:String(e)}`),P(!0)}};return L(`div`,{style:X.root,children:[I(`div`,{style:X.sectionTitle,children:`Runtime`}),oe?I(`div`,{style:X.empty,children:`Detecting container runtime...`}):p?L(`div`,{style:X.runtimeCard,children:[I(`div`,{style:{...X.runtimeIcon,background:p.runtime===`podman`?`#892ca0`:`#2496ed`,color:`#fff`},children:p.runtime===`podman`?`P`:`D`}),L(`div`,{style:X.runtimeInfo,children:[L(`div`,{style:X.runtimeName,children:[p.runtime.charAt(0).toUpperCase()+p.runtime.slice(1),p.isPodmanDockerShim?` (via docker shim)`:``]}),L(`div`,{style:X.runtimeVersion,children:[`Version `,p.version]})]}),I(`div`,{style:{...X.stateIndicator,background:`#10b981`},title:`Runtime available`})]}):L(`div`,{style:X.runtimeCard,children:[I(`div`,{style:{...X.runtimeIcon,background:`#fef2f2`,color:`#ef4444`},children:`!`}),L(`div`,{style:X.runtimeInfo,children:[I(`div`,{style:X.runtimeName,children:Se(h)}),h&&h.remediation.length>0&&I(`div`,{style:X.runtimeRemediation,children:h.remediation.join(`
|
|
10
|
-
`)}),
|
|
4
|
+
`],{type:`text/plain;charset=utf-8`}),r=URL.createObjectURL(t),i=document.createElement(`a`);i.href=r,i.download=`${e}-${new Date().toISOString().replace(/[:.]/g,`-`)}.log`,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)},[n,e]);E(()=>{let e=e=>{e.key===`Escape`&&t()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[t]),E(()=>{y.current=typeof document<`u`?document.activeElement:null;let e=setTimeout(()=>{v.current?.focus()},0);return()=>{clearTimeout(e);let t=y.current;if(t instanceof HTMLElement)try{t.focus()}catch{}}},[]);let ee=C(e=>{if(e.key!==`Tab`)return;let t=_.current;if(!t)return;let n=Array.from(t.querySelectorAll(`button:not([disabled]), [tabindex]:not([tabindex="-1"])`)).filter(e=>e.offsetParent!==null);if(n.length===0)return;let r=n[0],i=n[n.length-1],a=document.activeElement;e.shiftKey?(a===r||!t.contains(a))&&(e.preventDefault(),i.focus()):a===i&&(e.preventDefault(),r.focus())},[]),D=C(e=>{e.target===e.currentTarget&&t()},[t]),O=i===`streaming`?V.statusGreen:i===`disconnected`?V.statusRed:V.statusAmber,k=i===`connecting`?`Connecting…`:i===`backfill`?`Backfilled — opening live stream…`:i===`streaming`?`Live`:`Disconnected`;return R(`div`,{style:V.overlay,onClick:D,role:`dialog`,"aria-modal":`true`,"aria-label":`Logs for ${e}`,children:z(`div`,{style:V.modal,ref:_,onKeyDown:ee,children:[z(`div`,{style:V.header,children:[R(`span`,{style:{...V.statusDot,...O},title:k}),R(`span`,{style:V.title,children:e}),R(`span`,{style:V.metaLine,children:k}),z(`span`,{style:V.metaLine,children:[`· `,n.length,` lines`]}),R(`button`,{type:`button`,style:{...V.toolbarBtn,...c?V.toolbarBtnActive:{}},onClick:S,title:`Auto-scroll to bottom on new lines`,children:`Auto-scroll`}),R(`button`,{type:`button`,style:V.toolbarBtn,onClick:w,title:`Copy visible log to clipboard`,children:u?`Copied!`:`Copy`}),R(`button`,{type:`button`,style:V.toolbarBtn,onClick:T,title:`Download log as text file`,children:`Download`}),R(`button`,{type:`button`,style:V.closeBtn,onClick:t,ref:v,children:`Close`})]}),z(`pre`,{ref:f,style:V.body,onScroll:x,"aria-label":`Container log output`,tabIndex:0,children:[n.length===0?`(no log lines yet)`:n.join(`
|
|
5
|
+
`),R(`div`,{ref:p,"aria-hidden":`true`})]}),o&&z(`div`,{style:V.endBanner,children:[`Stream ended: `,o]})]})})}function H(e){return typeof e==`object`&&!!e}function U(e){if(!H(e)||typeof e.status!=`string`||typeof e.isContainerized!=`boolean`||!Array.isArray(e.remediation)||!H(e.binary)||!H(e.daemon)||typeof e.daemon.reachable!=`boolean`||!H(e.selfId)||!H(e.env)||!H(e.cgroupControllers))return!1;let t=e.cgroupControllers;if(!Array.isArray(t.missing)||t.available!==null&&!Array.isArray(t.available))return!1;if(`linger`in e&&e.linger!=null){if(!H(e.linger))return!1;let t=e.linger;if(t.user!==null&&typeof t.user!=`string`||typeof t.enabled!=`boolean`||!Array.isArray(t.advice))return!1}return!0}function W(e){switch(e){case`ok`:return`Runtime ready`;case`no-runtime`:return`No container runtime found`;case`socket-unreachable`:return`Runtime socket unreachable`;case`permission-denied`:return`Runtime socket: permission denied`;case`self-id-unresolved`:return`Signal K container ID unresolved`;case`cgroup-controllers-incomplete`:return`Host cgroup controllers not fully delegated`}}function G(e,t=`—`){return e==null||e===``?t:e}function K(e){return e==null?`unknown`:e?`yes`:`no`}function le(e){let t=[];if(t.push(`Deployment Doctor — ${W(e.status)}`),t.push(`status: ${e.status}`),t.push(``),t.push(`containerized: ${K(e.isContainerized)}`),t.push(`runtime: ${G(e.binary.name)} ${G(e.binary.version,``)}`.trimEnd()),t.push(`daemon reachable: ${K(e.daemon.reachable)}`),t.push(`rootless: ${K(e.daemon.rootless)}`),t.push(`socket: ${G(e.daemon.socketPath)}`),e.daemon.error&&t.push(`daemon error: ${e.daemon.error}`),e.isContainerized){let n=e.selfId.source?` (via ${e.selfId.source})`:``;t.push(`self container id: ${G(e.selfId.value)}${n}`)}let n=e.cgroupControllers;if(t.push(`cgroup controllers: ${G(n.available?.join(` `)??null)}`),n.missing.length>0&&t.push(`cgroup controllers MISSING: ${n.missing.join(` `)}`),n.kernelDisabledMemory&&t.push(`kernel cmdline disables the memory controller`),e.containerStorage){let n=e.containerStorage,r=n.idmapHazard?` (idmap hazard)`:``;t.push(`storage: ${G(n.fstype)} at ${G(n.storagePath)}${r}`)}if(e.linger){let n=e.linger.user?` for ${e.linger.user}`:``;t.push(`systemd linger: ${e.linger.enabled?`enabled`:`NOT enabled`}${n}`)}let r=Object.entries(e.env).filter(([,e])=>e!=null);if(r.length>0){t.push(``),t.push(`env:`);for(let[e,n]of r)t.push(` ${e}=${n}`)}if(t.push(``),e.remediation.length>0){t.push(`Remediation:`);for(let n of e.remediation)t.push(n)}else t.push(`No action needed (status ok).`);if(e.containerStorage&&e.containerStorage.advice.length>0){t.push(``),t.push(`Storage advice:`);for(let n of e.containerStorage.advice)t.push(n)}if(e.linger&&e.linger.advice.length>0){t.push(``),t.push(`Linger advice:`);for(let n of e.linger.advice)t.push(n)}return t.join(`
|
|
6
|
+
`)}var ue=`/plugins/signalk-container/api/doctor/deployment`,q={overlay:{position:`fixed`,inset:0,background:`rgba(0,0,0,0.5)`,display:`flex`,alignItems:`center`,justifyContent:`center`,zIndex:99999},modal:{background:`#fff`,borderRadius:8,boxShadow:`0 10px 25px rgba(0,0,0,0.2)`,width:`min(90vw, 760px)`,maxHeight:`85vh`,display:`flex`,flexDirection:`column`,overflow:`hidden`},header:{padding:`12px 16px`,borderBottom:`1px solid #e5e7eb`,display:`flex`,alignItems:`center`,gap:12},title:{fontSize:16,fontWeight:600,color:`#111`,flex:1},statusDot:{width:10,height:10,borderRadius:`50%`,flexShrink:0},statusGreen:{background:`#10b981`},statusAmber:{background:`#f59e0b`},statusRed:{background:`#ef4444`},toolbarBtn:{padding:`5px 10px`,fontSize:12,background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`,borderRadius:4,cursor:`pointer`},body:{flex:1,overflow:`auto`,padding:`16px`,color:`#111`,fontSize:13},headline:{fontSize:15,fontWeight:600,marginBottom:12},row:{display:`flex`,gap:12,padding:`4px 0`,borderBottom:`1px solid #f3f4f6`},rowLabel:{width:150,flexShrink:0,color:`#6b7280`},rowValue:{color:`#111`,wordBreak:`break-word`},rowValueMissing:{color:`#b45309`,fontWeight:600},dim:{color:`#9ca3af`},sectionLabel:{fontSize:12,fontWeight:600,color:`#374151`,marginTop:16,marginBottom:6},pre:{background:`#1f2937`,color:`#e5e7eb`,fontFamily:`"SF Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace`,fontSize:12,lineHeight:1.5,padding:`12px`,margin:0,borderRadius:6,whiteSpace:`pre-wrap`,wordBreak:`break-word`},toggle:{marginTop:16,fontSize:12,background:`none`,border:`none`,color:`#3b82f6`,cursor:`pointer`,padding:0},message:{color:`#6b7280`,padding:`8px 0`},error:{color:`#ef4444`,padding:`8px 0`}};function de(e){return e===`ok`?q.statusGreen:e===`self-id-unresolved`||e===`cgroup-controllers-incomplete`?q.statusAmber:q.statusRed}function J({label:e,value:t,missing:n}){return z(`div`,{style:q.row,children:[R(`span`,{style:q.rowLabel,children:e}),R(`span`,{style:{...q.rowValue,...n?q.rowValueMissing:{}},children:t})]})}function Y(e){return e==null||e===``?R(`span`,{style:q.dim,children:`—`}):e}function fe({onClose:e}){let[t,n]=M(null),[r,i]=M(!0),[a,o]=M(null),[s,c]=M(!1),[l,u]=M(!1),d=j(null),f=j(null),p=j(null);E(()=>{let e=!1;return(async()=>{try{let t=await fetch(ue);if(e)return;if(!t.ok){o(t.status===401||t.status===403?`HTTP ${t.status} — not authorized. Are you logged in to the admin UI?`:`HTTP ${t.status} fetching the deployment doctor.`),i(!1);return}let r=await t.json();if(e)return;if(!U(r)){o(`Unexpected response shape from the deployment doctor.`),i(!1);return}n(r),i(!1)}catch(t){if(e)return;o(t instanceof Error?t.message:`Failed to reach the server.`),i(!1)}})(),()=>{e=!0}},[]),E(()=>{let t=t=>{t.key===`Escape`&&e()};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[e]),E(()=>{p.current=typeof document<`u`?document.activeElement:null;let e=setTimeout(()=>f.current?.focus(),0);return()=>{clearTimeout(e);let t=p.current;if(t instanceof HTMLElement)try{t.focus()}catch{}}},[]);let m=C(e=>{if(e.key!==`Tab`)return;let t=d.current;if(!t)return;let n=Array.from(t.querySelectorAll(`button:not([disabled]), [tabindex]:not([tabindex="-1"])`)).filter(e=>e.offsetParent!==null);if(n.length===0)return;let r=n[0],i=n[n.length-1],a=document.activeElement;e.shiftKey?(a===r||!t.contains(a))&&(e.preventDefault(),i.focus()):a===i&&(e.preventDefault(),r.focus())},[]),h=C(t=>{t.target===t.currentTarget&&e()},[e]),g=C(async()=>{t&&await P(le(t))&&u(!0)},[t]);E(()=>{if(!l)return;let e=setTimeout(()=>u(!1),1500);return()=>clearTimeout(e)},[l]);let _=t?.cgroupControllers;return R(`div`,{style:q.overlay,onClick:h,role:`dialog`,"aria-modal":`true`,"aria-label":`Deployment Doctor`,children:z(`div`,{style:q.modal,ref:d,onKeyDown:m,children:[z(`div`,{style:q.header,children:[t&&R(`span`,{style:{...q.statusDot,...de(t.status)}}),R(`span`,{style:q.title,children:`Deployment Doctor`}),t&&R(`button`,{type:`button`,style:q.toolbarBtn,onClick:g,title:`Copy the full report to the clipboard`,children:l?`Copied!`:`Copy`}),R(`button`,{type:`button`,ref:f,style:q.toolbarBtn,onClick:e,children:`Close`})]}),z(`div`,{style:q.body,children:[r&&R(`div`,{style:q.message,children:`Running diagnostics…`}),a&&R(`div`,{style:q.error,children:a}),t&&z(L,{children:[R(`div`,{style:q.headline,children:W(t.status)}),R(J,{label:`Containerized`,value:t.isContainerized?`yes`:`no`}),R(J,{label:`Runtime`,value:t.binary.name?`${t.binary.name} ${t.binary.version??``}`.trim():Y(null)}),R(J,{label:`Daemon reachable`,value:t.daemon.reachable?`yes`:`no`}),R(J,{label:`Rootless`,value:t.daemon.rootless==null?`unknown`:t.daemon.rootless?`yes`:`no`}),R(J,{label:`Socket`,value:Y(t.daemon.socketPath)}),t.daemon.error&&R(J,{label:`Daemon error`,value:t.daemon.error,missing:!0}),t.isContainerized&&R(J,{label:`Self container ID`,value:t.selfId.value?`${t.selfId.value}${t.selfId.source?` (via ${t.selfId.source})`:``}`:Y(null),missing:!t.selfId.value}),R(J,{label:`cgroup controllers`,value:Y(_?.available?.join(` `)??null)}),_&&_.missing.length>0&&R(J,{label:`cgroup MISSING`,value:_.missing.join(` `),missing:!0}),_?.kernelDisabledMemory&&R(J,{label:`Kernel cmdline`,value:`disables the memory controller`,missing:!0}),t.containerStorage&&R(J,{label:`Storage`,value:`${t.containerStorage.fstype??`?`} at ${t.containerStorage.storagePath??`?`}${t.containerStorage.idmapHazard?` (idmap hazard)`:``}`,missing:t.containerStorage.idmapHazard}),t.linger&&R(J,{label:`systemd linger`,value:`${t.linger.enabled?`enabled`:`NOT enabled`}${t.linger.user?` for ${t.linger.user}`:``}`,missing:!t.linger.enabled}),R(`div`,{style:q.sectionLabel,children:`Remediation`}),t.remediation.length>0?R(`pre`,{style:q.pre,children:t.remediation.join(`
|
|
7
|
+
`)}):R(`div`,{style:q.message,children:`No action needed (status ok).`}),t.containerStorage&&t.containerStorage.advice.length>0&&z(L,{children:[R(`div`,{style:q.sectionLabel,children:`Storage advice`}),R(`pre`,{style:q.pre,children:t.containerStorage.advice.join(`
|
|
8
|
+
`)})]}),t.linger&&t.linger.advice.length>0&&z(L,{children:[R(`div`,{style:q.sectionLabel,children:`Linger advice`}),R(`pre`,{style:q.pre,children:t.linger.advice.join(`
|
|
9
|
+
`)})]}),R(`button`,{type:`button`,style:q.toggle,onClick:()=>c(e=>!e),children:s?`▾ Hide raw JSON`:`▸ Show raw JSON`}),s&&R(`pre`,{style:{...q.pre,marginTop:8},children:JSON.stringify(t,null,2)})]})]})]})})}function pe(e){return typeof e!=`number`||!Number.isFinite(e)?1:Math.max(0,Math.floor(e))}function me(e){return String(pe(e))}function he(e){return e.trim()===``?1:pe(Number(e))}var X={root:{fontFamily:`-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif`,color:`#333`,padding:`16px 0`},sectionTitle:{fontSize:13,fontWeight:600,color:`#888`,textTransform:`uppercase`,letterSpacing:`0.05em`,marginBottom:10,marginTop:24},btn:{display:`inline-flex`,alignItems:`center`,gap:8,padding:`8px 16px`,border:`none`,borderRadius:6,fontSize:13,fontWeight:600,cursor:`pointer`},btnPrimary:{background:`#3b82f6`,color:`#fff`},btnDanger:{background:`#ef4444`,color:`#fff`,padding:`6px 12px`,fontSize:12},btnWarning:{background:`#f59e0b`,color:`#fff`,padding:`6px 12px`,fontSize:12},btnSave:{background:`#3b82f6`,color:`#fff`},btnSuccess:{background:`#10b981`,color:`#fff`},btnSecondary:{background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`},btnDisabled:{opacity:.5,cursor:`not-allowed`},status:{marginTop:8,fontSize:12,minHeight:18},runtimeCard:{display:`flex`,alignItems:`center`,gap:14,padding:`14px 18px`,background:`#f8f9fa`,border:`1px solid #e0e0e0`,borderRadius:10,marginBottom:12},runtimeIcon:{width:44,height:44,borderRadius:10,display:`flex`,alignItems:`center`,justifyContent:`center`,fontSize:22,flexShrink:0},runtimeInfo:{flex:1},runtimeName:{fontSize:15,fontWeight:600,color:`#333`},runtimeVersion:{fontSize:12,color:`#888`},runtimeRemediation:{fontSize:12,color:`#666`,fontFamily:`ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,whiteSpace:`pre-wrap`,marginTop:6,lineHeight:1.45},containerItem:{display:`flex`,alignItems:`center`,gap:12,padding:`10px 14px`,background:`#f8f9fa`,border:`1px solid #e0e0e0`,borderRadius:10,marginBottom:8},stateIndicator:{width:10,height:10,borderRadius:`50%`,flexShrink:0},containerInfo:{flex:1,minWidth:0},containerName:{fontSize:14,fontWeight:600,color:`#333`},containerMeta:{fontSize:11,color:`#888`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},containerActions:{display:`flex`,gap:6,flexShrink:0},containerCard:{background:`#f8f9fa`,border:`1px solid #e0e0e0`,borderRadius:10,marginBottom:8,overflow:`hidden`},containerItemFlat:{display:`flex`,alignItems:`center`,gap:12,padding:`10px 14px`},limitsRow:{display:`flex`,alignItems:`center`,gap:10,padding:`6px 14px 10px 34px`,fontSize:11,color:`#666`,flexWrap:`wrap`},updatesRow:{display:`flex`,alignItems:`center`,gap:10,padding:`0 14px 10px 34px`,fontSize:11,color:`#666`,flexWrap:`wrap`},limitBadge:{display:`inline-flex`,alignItems:`center`,padding:`2px 8px`,borderRadius:12,background:`#e5e7eb`,color:`#374151`,fontSize:11,fontWeight:500},overrideBadge:{display:`inline-flex`,alignItems:`center`,padding:`2px 8px`,borderRadius:12,background:`#fef3c7`,color:`#92400e`,fontSize:10,fontWeight:600},editLimitsBtn:{marginLeft:`auto`,padding:`3px 10px`,fontSize:11,background:`#fff`,color:`#3b82f6`,border:`1px solid #3b82f6`,borderRadius:6,cursor:`pointer`,fontWeight:500},limitsEditor:{borderTop:`1px solid #e0e0e0`,padding:`14px 14px 14px 34px`,background:`#fff`},limitsEditorGrid:{display:`grid`,gridTemplateColumns:`160px 1fr auto`,gap:`8px 12px`,alignItems:`center`,marginBottom:10},limitsEditorLabel:{fontSize:12,fontWeight:500,color:`#555`},limitsEditorInput:{padding:`5px 8px`,borderRadius:5,border:`1px solid #ccc`,fontSize:12,background:`#fff`,color:`#333`,fontFamily:`inherit`,width:`100%`,boxSizing:`border-box`},limitsEditorInputDisabled:{background:`#f3f4f6`,color:`#9ca3af`,fontStyle:`italic`},limitsEditorUnsetBtn:{width:24,height:24,borderRadius:4,border:`1px solid #d1d5db`,background:`#fff`,color:`#6b7280`,fontSize:14,lineHeight:1,cursor:`pointer`,display:`inline-flex`,alignItems:`center`,justifyContent:`center`},limitsEditorUnsetBtnActive:{background:`#fee2e2`,color:`#991b1b`,border:`1px solid #fca5a5`},limitsEditorAdvancedToggle:{fontSize:11,color:`#3b82f6`,cursor:`pointer`,userSelect:`none`,marginTop:6,marginBottom:10,display:`inline-block`},limitsEditorActions:{display:`flex`,gap:8,justifyContent:`flex-end`,marginTop:10},limitsEditorResult:{marginTop:10,padding:`8px 10px`,borderRadius:6,fontSize:11,lineHeight:1.5},limitsEditorResultLive:{background:`#d1fae5`,color:`#065f46`},limitsEditorResultRecreated:{background:`#fef3c7`,color:`#92400e`},limitsEditorResultError:{background:`#fee2e2`,color:`#991b1b`},limitsEditorWarning:{marginTop:4,fontSize:10,opacity:.85,fontStyle:`italic`},empty:{textAlign:`center`,padding:`30px 16px`,color:`#999`,fontSize:13},fieldRow:{display:`flex`,alignItems:`center`,gap:12,marginBottom:10},label:{fontSize:13,fontWeight:500,color:`#555`,width:160,flexShrink:0},select:{padding:`6px 10px`,borderRadius:6,border:`1px solid #ccc`,fontSize:13,background:`#fff`,color:`#333`},hint:{fontSize:11,color:`#aaa`,marginLeft:8},pruneResult:{fontSize:12,color:`#10b981`,marginTop:6}},ge={running:`#10b981`,stopped:`#f59e0b`,missing:`#94a3b8`,"no-runtime":`#ef4444`},_e={running:`Running`,stopped:`Stopped`,missing:`Not created`,"no-runtime":`No runtime`};function Z({label:e,value:t,options:n,onChange:r,hint:i}){return z(`div`,{style:X.fieldRow,children:[R(`span`,{style:X.label,children:e}),R(`select`,{style:X.select,value:t,onChange:e=>r(e.target.value),children:n.map(e=>R(`option`,{value:e.value,children:e.label},e.value))}),i&&R(`span`,{style:X.hint,children:i})]})}function ve({label:e,value:t,onChange:n,hint:r}){return z(`div`,{style:X.fieldRow,children:[R(`span`,{style:X.label,children:e}),z(`label`,{style:{display:`inline-flex`,alignItems:`center`,cursor:`pointer`,gap:8},children:[R(`input`,{type:`checkbox`,checked:t,onChange:e=>n(e.target.checked),style:{width:16,height:16,cursor:`pointer`}}),R(`span`,{style:{fontSize:13,color:`#555`},children:t?`Enabled`:`Disabled`})]}),r&&R(`span`,{style:X.hint,children:r})]})}function Q(e){return e&&e.startsWith(`sk-`)?e.slice(3):e}var $=[{key:`cpus`,label:`CPU (cores)`,type:`number`,step:`0.1`,min:`0.1`,placeholder:`e.g. 1.5`,primary:!0},{key:`memory`,label:`Memory`,type:`text`,placeholder:`e.g. 512m, 2g`,primary:!0},{key:`memorySwap`,label:`Memory + swap`,type:`text`,placeholder:`= memory to disable swap`,primary:!0},{key:`pidsLimit`,label:`Max processes`,type:`number`,step:`1`,min:`1`,placeholder:`e.g. 200`,primary:!0},{key:`cpuShares`,label:`CPU shares (weight)`,type:`number`,step:`1`,min:`2`,placeholder:`default 1024`,primary:!1},{key:`cpusetCpus`,label:`Pin to CPUs`,type:`text`,placeholder:`e.g. "0,1" or "1-3"`,primary:!1},{key:`memoryReservation`,label:`Memory reservation`,type:`text`,placeholder:`soft floor, e.g. 256m`,primary:!1},{key:`oomScoreAdj`,label:`OOM score adjust`,type:`number`,step:`1`,min:`-1000`,max:`1000`,placeholder:`-1000 to 1000`,primary:!1}];function ye(e){try{let t=new Date(e).getTime();if(!Number.isFinite(t))return e;let n=Math.max(0,Math.floor((Date.now()-t)/1e3));if(n<5)return`just now`;if(n<60)return`${n}s ago`;let r=Math.floor(n/60);if(r<60)return`${r}m ago`;let i=Math.floor(r/60);return i<24?`${i}h ago`:`${Math.floor(i/24)}d ago`}catch{return e}}function be(e){if(!e)return`No update data`;let{runningTag:t,currentVersion:n,latestVersion:r,updateAvailable:i,reason:a,fromCache:o}=e;return a===`offline`?o?`\u{1F4E1} Offline — last cached result shows ${i?`update available`:`up to date`}`:`📡 Offline — no cached result yet`:a===`newer-version`?`\u2191 Update available: ${n} \u2192 ${r}`:a===`digest-drift`?`\u21BB Rebuild available for :${t}${r?` (latest stable: ${r})`:``}`:a===`up-to-date`?`\u2705 Up to date${n?` (`+n+`)`:``}`:a===`older-than-pinned`?`\u2139 Pinned to ${n}, latest stable is ${r}`:a===`error`?`\u26A0 Check error: ${e.error||`unknown`}`:`State: ${a||`unknown`}`}function xe(e){if(!e||!e.reason)return null;let{reason:t,runningTag:n,currentVersion:r,latestVersion:i,fromCache:a}=e;return t===`newer-version`?{label:`\u2191 ${i||`update`} available`,bg:`#fef3c7`,fg:`#92400e`,title:`Update available: ${r} \u2192 ${i}`}:t===`digest-drift`?{label:`↻ rebuild available`,bg:`#fef3c7`,fg:`#92400e`,title:`Image rebuild available for :${n}${i?` (latest stable ${i})`:``}`}:t===`offline`?{label:a?`📡 offline (cached)`:`📡 offline`,bg:`#e5e7eb`,fg:`#4b5563`,title:a?`Network unreachable; showing last cached check result`:`Network unreachable; no cached result yet`}:t===`error`?{label:`⚠ check error`,bg:`#fee2e2`,fg:`#991b1b`,title:e.error||`Update check error`}:t===`up-to-date`?{label:`✅ up to date`,bg:`#dcfce7`,fg:`#166534`,title:`Up to date${r?` (`+r+`)`:``}`}:null}function Se(e){let t={};for(let n of $){let r=n.key,i=e[n.key];if(i===null){t[r]=null;continue}if(!(i===void 0||i===``))if(n.type===`number`){let e=Number(i);if(!Number.isFinite(e))continue;t[r]=e}else t[r]=i}return t}function Ce(e,t){if(t==null||t===``)return null;switch(e){case`cpus`:return`${t} CPU`;case`memory`:return`${t}`;case`memorySwap`:return`swap: ${t}`;case`memoryReservation`:return`reserve: ${t}`;case`pidsLimit`:return`${t} PIDs`;case`cpuShares`:return`shares: ${t}`;case`cpusetCpus`:return`cpus: ${t}`;case`oomScoreAdj`:return`oom: ${t}`;default:return`${e}: ${t}`}}function we({containerName:e,effective:n,initialOverride:r,onApply:i,onResetToDefault:a,onClose:o}){let s=e=>{let t=e??n,r={};for(let e of $){let n=e.key,i=t?t[n]:void 0;i==null?r[e.key]=``:r[e.key]=String(i)}return r},[c,l]=M(()=>s(n)),[u,d]=M(()=>r?$.some(e=>!e.primary&&r[e.key]!==void 0):!1),[f,p]=M(!1),[m,h]=M(!1),[g,_]=M(null),v=(e,t)=>{l(n=>({...n,[e]:t}))},y=e=>{l(t=>({...t,[e]:t[e]===null?``:null}))},b=()=>{l(s(n)),_(null)},x=async()=>{p(!0),_(null);try{let e=await i(Se(c));_(e),e&&e.effective&&l(s(e.effective))}catch(e){_({error:e instanceof Error?e.message:String(e)})}p(!1)},S=async()=>{if(window.confirm(`Reset ${e} to the plugin's default resource limits? This will remove your override and may cause a brief container recreate (~5s of downtime) if memory limits need to be unset.`)){h(!0),_(null);try{let e=await a();_(e),e&&e.effective&&l(s(e.effective))}catch(e){_({error:e instanceof Error?e.message:String(e)})}h(!1)}},C=n=>{let r=c[n.key],i=r===null;return z(t.Fragment,{children:[R(`label`,{style:X.limitsEditorLabel,htmlFor:`lim-${e}-${n.key}`,children:n.label}),R(`input`,{id:`lim-${e}-${n.key}`,type:i?`text`:n.type,value:i?``:r,step:n.step,min:n.min,max:n.max,placeholder:i?`(unset — remove limit)`:n.placeholder,disabled:i,onChange:e=>v(n.key,e.target.value),style:{...X.limitsEditorInput,...i?X.limitsEditorInputDisabled:{}}}),R(`button`,{type:`button`,onClick:()=>y(n.key),title:i?`Click to set a value again`:`Click to explicitly unset (remove this limit)`,style:{...X.limitsEditorUnsetBtn,...i?X.limitsEditorUnsetBtnActive:{}},children:i?`↺`:`×`})]},n.key)},w=$.filter(e=>e.primary),T=$.filter(e=>!e.primary);return z(`div`,{style:X.limitsEditor,children:[R(`div`,{style:X.limitsEditorGrid,children:w.map(C)}),z(`span`,{onClick:()=>d(!u),style:X.limitsEditorAdvancedToggle,children:[u?`▾`:`▸`,` Advanced (`,T.length,` more fields)`]}),u&&R(`div`,{style:X.limitsEditorGrid,children:T.map(C)}),z(`div`,{style:X.limitsEditorActions,children:[R(`button`,{type:`button`,onClick:o,disabled:f||m,style:{...X.btn,padding:`6px 12px`,fontSize:12,background:`#fff`,color:`#6b7280`,border:`1px solid #d1d5db`,...f||m?X.btnDisabled:{}},children:`Close`}),R(`button`,{type:`button`,onClick:S,disabled:f||m,title:`Clear override and restore plugin-default limits`,style:{...X.btn,padding:`6px 12px`,fontSize:12,background:`#fff`,color:`#d97706`,border:`1px solid #f59e0b`,...f||m?X.btnDisabled:{}},children:m?`Resetting...`:`Reset to default`}),R(`button`,{type:`button`,onClick:b,disabled:f||m,title:`Discard unsaved changes in this form (does not touch the server)`,style:{...X.btn,padding:`6px 12px`,fontSize:12,background:`#fff`,color:`#6b7280`,border:`1px solid #d1d5db`,...f||m?X.btnDisabled:{}},children:`Revert`}),R(`button`,{type:`button`,onClick:x,disabled:f||m,style:{...X.btn,...X.btnPrimary,padding:`6px 14px`,fontSize:12,...f||m?X.btnDisabled:{}},children:f?`Applying...`:`Apply`})]}),g&&R(`div`,{style:{...X.limitsEditorResult,...g.error?X.limitsEditorResultError:g.method===`recreated`?X.limitsEditorResultRecreated:X.limitsEditorResultLive},children:g.error?z(L,{children:[R(`strong`,{children:`Error:`}),` `,g.error]}):z(L,{children:[R(`strong`,{children:g.method===`live`?`Applied live (no restart)`:`Container recreated`}),g.warnings&&g.warnings.length>0&&R(`div`,{style:X.limitsEditorWarning,children:g.warnings.map((e,t)=>z(`div`,{children:[`⚠ `,e]},t))})]})})]})}function Te(e){return e?W(e.status):`No container runtime found`}function Ee({configuration:e,save:t}){let n=e||{},[r,i]=M(n.runtime||`auto`),[a,o]=M(n.pruneSchedule||`weekly`),[s,c]=M(me(n.keepImageVersions)),[l,u]=M(n.updateCheckInterval||`24h`),[d,f]=M(n.backgroundUpdateChecks!==!1),[p,m]=M(n.containerOverrides||{}),[h,g]=M(null),[_,v]=M(null),[y,b]=M([]),[x,S]=M({}),[w,T]=M({}),[ee,D]=M({}),[O,k]=M({}),[te,A]=M(new Set),[ne,re]=M(new Set),[ie,j]=M(null),[ae,N]=M(!1),[oe,P]=M(!0),[F,I]=M(``),[L,B]=M(!1),[se,V]=M(null),H=C(async()=>{try{let[e,t]=await Promise.all([fetch(`/plugins/signalk-container/api/runtime`),fetch(`/plugins/signalk-container/api/containers`)]),n=!1;if(e.ok){let t=await e.json();g(t),n=t!==null}else g(null);if(n)v(null);else try{let e=await fetch(`/plugins/signalk-container/api/doctor/deployment`);e.ok?v(await e.json()):v(null)}catch{v(null)}let r=[];if(t.ok?(r=await t.json(),b(r)):b([]),r.length>0){let e={},t={};await Promise.all(r.map(async n=>{let r=Q(n.name);try{let n=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(r)}/resources`);if(n.ok){let i=await n.json();e[r]=i.effective||{},t[r]=i.override??null}}catch{}})),S(e),T(t)}try{let e=await fetch(`/plugins/signalk-container/api/updates`);if(e.ok){let t=await e.json();if(Array.isArray(t)){let e={},n={};for(let r of t)r&&r.containerName&&(n[r.containerName]=r,r.pluginId&&(e[r.containerName]=r.pluginId));D(e=>{let t={...n};for(let r of Object.keys(n)){let i=n[r],a=e[r];i.reason===`unknown`&&a&&a.reason&&a.reason!==`unknown`&&(t[r]=a)}return t}),k(e)}}}catch{}}catch{g(null),b([])}P(!1)},[]);E(()=>{H();let e=setInterval(H,5e3);return()=>clearInterval(e)},[H]);let U=e=>{let t=Q(e);re(e=>{let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n})},W=async(e,t)=>{let n=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/resources`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));return n.ok?(r.effective&&S(t=>({...t,[e]:r.effective})),T(t=>({...t,[e]:r.override??null})),m(t=>{let n={...t};return r.override&&Object.keys(r.override).length>0?n[e]=r.override:delete n[e],n}),{method:r.method,warnings:r.warnings,effective:r.effective}):{error:r.error||`${n.status} ${n.statusText}`}},G=async e=>{let t=O[e];if(!t){I(`${e}: no update service registered. The consumer plugin hasn't migrated to signalk-container's update detection yet.`),B(!0);return}A(t=>{let n=new Set(t);return n.add(e),n}),I(`Checking ${e} for updates...`),B(!1);try{let n=await fetch(`/plugins/signalk-container/api/updates/${encodeURIComponent(t)}/check`,{method:`POST`});if(n.ok){let t=await n.json();D(n=>({...n,[e]:t})),I(be(t)),B(!1)}else I(`Check failed: ${(await n.json().catch(()=>({error:n.statusText}))).error}`),B(!0)}catch(e){I(`Check error: ${e instanceof Error?e.message:String(e)}`),B(!0)}A(t=>{let n=new Set(t);return n.delete(e),n})},K=async e=>{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/resources`,{method:`DELETE`}),n=await t.json().catch(()=>({}));return t.ok?(n.effective&&S(t=>({...t,[e]:n.effective})),T(t=>({...t,[e]:null})),m(t=>{let n={...t};return delete n[e],n}),{method:n.method,warnings:n.warnings,effective:n.effective}):{error:n.error||`${t.status} ${t.statusText}`}},le=()=>{let e={};for(let[t,n]of Object.entries(w))n&&Object.keys(n).length>0&&(e[t]=n);t({...n,runtime:r,pruneSchedule:a,keepImageVersions:he(s),maxConcurrentJobs:n.maxConcurrentJobs||2,updateCheckInterval:l,backgroundUpdateChecks:d,containerOverrides:e}),I(`Saved! Plugin will restart.`),B(!1)},ue=async e=>{I(`Starting ${e}...`),B(!1);try{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/start`,{method:`POST`});t.ok?(I(`${e} started.`),H()):(I(`Failed: ${(await t.json().catch(()=>({error:t.statusText}))).error}`),B(!0))}catch(e){I(`Error: ${e instanceof Error?e.message:String(e)}`),B(!0)}},q=async e=>{I(`Stopping ${e}...`),B(!1);try{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/stop`,{method:`POST`});t.ok?(I(`${e} stopped.`),H()):(I(`Failed: ${(await t.json().catch(()=>({error:t.statusText}))).error}`),B(!0))}catch(e){I(`Error: ${e instanceof Error?e.message:String(e)}`),B(!0)}},de=async(e,t)=>{if(!(t===`running`&&!window.confirm(`${e} is running. Stop and remove it?`))){I(`Removing ${e}...`),B(!1);try{let t=await fetch(`/plugins/signalk-container/api/containers/${encodeURIComponent(e)}/remove`,{method:`POST`});t.ok?(I(`${e} removed.`),H()):(I(`Failed: ${(await t.json().catch(()=>({error:t.statusText}))).error}`),B(!0))}catch(e){I(`Error: ${e instanceof Error?e.message:String(e)}`),B(!0)}}},J=async()=>{I(`Pruning dangling images...`),B(!1),V(null);try{let e=await fetch(`/plugins/signalk-container/api/prune`,{method:`POST`});if(e.ok){let t=await e.json().catch(()=>({error:e.statusText}));V(t),I(`Pruned ${t.imagesRemoved} image(s), reclaimed ${t.spaceReclaimed}.`)}else I(`Prune failed: ${(await e.json().catch(()=>({error:e.statusText}))).error}`),B(!0)}catch(e){I(`Error: ${e instanceof Error?e.message:String(e)}`),B(!0)}};return z(`div`,{style:X.root,children:[R(`div`,{style:X.sectionTitle,children:`Runtime`}),oe?R(`div`,{style:X.empty,children:`Detecting container runtime...`}):h?z(`div`,{style:X.runtimeCard,children:[R(`div`,{style:{...X.runtimeIcon,background:h.runtime===`podman`?`#892ca0`:`#2496ed`,color:`#fff`},children:h.runtime===`podman`?`P`:`D`}),z(`div`,{style:X.runtimeInfo,children:[z(`div`,{style:X.runtimeName,children:[h.runtime.charAt(0).toUpperCase()+h.runtime.slice(1),h.isPodmanDockerShim?` (via docker shim)`:``]}),z(`div`,{style:X.runtimeVersion,children:[`Version `,h.version]})]}),R(`div`,{style:{...X.stateIndicator,background:`#10b981`},title:`Runtime available`})]}):z(`div`,{style:X.runtimeCard,children:[R(`div`,{style:{...X.runtimeIcon,background:`#fef2f2`,color:`#ef4444`},children:`!`}),z(`div`,{style:X.runtimeInfo,children:[R(`div`,{style:X.runtimeName,children:Te(_)}),_&&_.remediation.length>0&&R(`div`,{style:X.runtimeRemediation,children:_.remediation.join(`
|
|
10
|
+
`)}),R(`button`,{style:{...X.btn,...X.btnSecondary,marginTop:8},onClick:()=>N(!0),children:`Run Doctor`})]})]}),R(`div`,{style:X.sectionTitle,children:`Settings`}),R(Z,{label:`Preferred runtime`,value:r,onChange:i,options:[{value:`auto`,label:`Auto-detect (Podman preferred)`},{value:`podman`,label:`Podman`},{value:`docker`,label:`Docker`}]}),R(Z,{label:`Auto-prune images`,value:a,onChange:o,options:[{value:`off`,label:`Off`},{value:`weekly`,label:`Weekly`},{value:`monthly`,label:`Monthly`}]}),R(Z,{label:`Keep old image versions`,value:s,onChange:c,options:[{value:`0`,label:`Running only`},{value:`1`,label:`Keep 1 prior`},{value:`2`,label:`Keep 2 prior`},{value:`3`,label:`Keep 3 prior`},{value:`5`,label:`Keep 5 prior`}],hint:a===`off`?`Runs with auto-prune — currently Off`:`Old versions of managed-container images to keep besides the running one`}),R(Z,{label:`Update check interval`,value:l,onChange:u,options:[{value:`1h`,label:`Every hour`},{value:`6h`,label:`Every 6 hours`},{value:`12h`,label:`Every 12 hours`},{value:`24h`,label:`Daily (recommended)`},{value:`48h`,label:`Every 2 days`},{value:`168h`,label:`Weekly`}],hint:`How often to check for new container images`}),R(ve,{label:`Background update checks`,value:d,onChange:f,hint:`Disable on metered connections; manual check still works`}),R(`div`,{style:X.sectionTitle,children:`Managed Containers`}),y.length===0?R(`div`,{style:X.empty,children:oe?`Loading...`:`No managed containers. Other plugins will create them.`}):y.map(e=>{let t=Q(e.name),n=x[t]||{},r=w[t],i=r&&Object.keys(r).length>0,a=ne.has(t),o=t.startsWith(`job-`),s=$.map(e=>Ce(e.key,n[e.key])).filter(Boolean),c=ee[t],l=xe(c),u=!!O[t],d=te.has(t);return z(`div`,{style:X.containerCard,children:[z(`div`,{style:X.containerItemFlat,children:[R(`div`,{style:{...X.stateIndicator,background:ge[e.state]||`#94a3b8`},title:_e[e.state]||e.state}),z(`div`,{style:X.containerInfo,children:[R(`div`,{style:X.containerName,children:e.name}),z(`div`,{style:X.containerMeta,children:[e.image,` · `,_e[e.state]||e.state,e.ports&&e.ports.length>0&&e.ports[0]?` · ${e.ports.join(`, `)}`:``]})]}),z(`div`,{style:X.containerActions,children:[e.state===`stopped`&&R(`button`,{style:{...X.btn,...X.btnPrimary,padding:`6px 12px`,fontSize:12},onClick:()=>ue(e.name),children:`Start`}),e.state===`running`&&R(`button`,{style:{...X.btn,...X.btnWarning},onClick:()=>q(e.name),children:`Stop`}),R(`button`,{style:{...X.btn,background:`#fff`,color:`#374151`,border:`1px solid #d1d5db`},onClick:()=>j(e.name),title:`Stream the container's stdout+stderr log`,children:`Logs`}),R(`button`,{style:{...X.btn,...X.btnDanger},onClick:()=>de(e.name,e.state),children:`Remove`})]})]}),z(`div`,{style:X.limitsRow,children:[s.length===0?R(`span`,{style:{color:`#9ca3af`,fontStyle:`italic`},children:`No resource limits set`}):s.map((e,t)=>R(`span`,{style:X.limitBadge,children:e},t)),i&&R(`span`,{style:X.overrideBadge,title:`You have a user override configured for this container`,children:`Override active`}),e.state===`running`&&!o&&R(`button`,{type:`button`,style:X.editLimitsBtn,onClick:()=>U(e.name),children:a?`Collapse ▾`:`Edit Limits ▸`})]}),u&&e.state===`running`&&z(`div`,{style:X.updatesRow,children:[l?R(`span`,{style:{...X.limitBadge,background:l.bg,color:l.fg},title:l.title,children:l.label}):R(`span`,{style:{color:`#9ca3af`,fontStyle:`italic`},children:`No update check yet`}),c?.lastSuccessfulCheckAt&&z(`span`,{style:{fontSize:10,color:`#9ca3af`},title:`Last successful check: ${c.lastSuccessfulCheckAt}`,children:[`checked`,` `,ye(c.lastSuccessfulCheckAt)]}),R(`button`,{type:`button`,onClick:()=>G(t),disabled:d,title:`Force a fresh update check now`,style:{...X.editLimitsBtn,marginLeft:`auto`,...d?X.btnDisabled:{}},children:d?`Checking...`:`Check now ↻`})]}),a&&R(we,{containerName:t,effective:n,initialOverride:r,onApply:e=>W(t,e),onResetToDefault:()=>K(t),onClose:()=>U(e.name)})]},e.name)}),R(`div`,{style:X.sectionTitle,children:`Maintenance`}),z(`div`,{style:{display:`flex`,gap:8,flexWrap:`wrap`},children:[R(`button`,{style:{...X.btn,...X.btnSuccess},onClick:J,children:`Prune Dangling Images`}),R(`button`,{style:{...X.btn,...X.btnSecondary},onClick:()=>N(!0),children:`Doctor`})]}),F&&R(`div`,{style:{...X.status,color:L?`#ef4444`:`#10b981`},children:F}),R(`div`,{style:{...X.sectionTitle,marginTop:28},children:`\xA0`}),R(`button`,{style:{...X.btn,...X.btnSave},onClick:le,children:`Save Configuration`}),ie&&R(ce,{name:ie,onClose:()=>j(null)}),ae&&R(fe,{onClose:()=>N(!1)})]})}export{Ee as default};
|