alasio 9.0.0 → 10.0.0
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/cli/src/bound-harnesses.js +98 -0
- package/dist/cli/src/bound-harnesses.js.map +1 -0
- package/dist/cli/src/branches.js +30 -14
- package/dist/cli/src/branches.js.map +1 -1
- package/dist/cli/src/cluster/docker.js +21 -11
- package/dist/cli/src/cluster/docker.js.map +1 -1
- package/dist/cli/src/cluster/host.js +5 -1
- package/dist/cli/src/cluster/host.js.map +1 -1
- package/dist/cli/src/cluster/k3s.js +62 -3
- package/dist/cli/src/cluster/k3s.js.map +1 -1
- package/dist/cli/src/cluster/node.js +47 -13
- package/dist/cli/src/cluster/node.js.map +1 -1
- package/dist/cli/src/cluster/stargz.js +40 -3
- package/dist/cli/src/cluster/stargz.js.map +1 -1
- package/dist/cli/src/commands/common.js +2 -2
- package/dist/cli/src/commands/common.js.map +1 -1
- package/dist/cli/src/commands/lake.js +1 -1
- package/dist/cli/src/commands/lake.js.map +1 -1
- package/dist/cli/src/commands/login-relay.js +91 -0
- package/dist/cli/src/commands/login-relay.js.map +1 -0
- package/dist/cli/src/commands/login.js +11 -10
- package/dist/cli/src/commands/login.js.map +1 -1
- package/dist/cli/src/commands/logs.js +89 -6
- package/dist/cli/src/commands/logs.js.map +1 -1
- package/dist/cli/src/commands/restart.js +10 -4
- package/dist/cli/src/commands/restart.js.map +1 -1
- package/dist/cli/src/commands/restore-filer-store.js +27 -10
- package/dist/cli/src/commands/restore-filer-store.js.map +1 -1
- package/dist/cli/src/commands/status.js +59 -12
- package/dist/cli/src/commands/status.js.map +1 -1
- package/dist/cli/src/commands/up.js +9 -6
- package/dist/cli/src/commands/up.js.map +1 -1
- package/dist/cli/src/commands/upgrade.js +21 -5
- package/dist/cli/src/commands/upgrade.js.map +1 -1
- package/dist/cli/src/folders.js +9 -13
- package/dist/cli/src/folders.js.map +1 -1
- package/dist/cli/src/gateway-calls.js +14 -8
- package/dist/cli/src/gateway-calls.js.map +1 -1
- package/dist/cli/src/install.js +7 -41
- package/dist/cli/src/install.js.map +1 -1
- package/dist/cli/src/kube/api.js +59 -12
- package/dist/cli/src/kube/api.js.map +1 -1
- package/dist/cli/src/kube/apply.js +107 -9
- package/dist/cli/src/kube/apply.js.map +1 -1
- package/dist/cli/src/kube/rollout.js +16 -6
- package/dist/cli/src/kube/rollout.js.map +1 -1
- package/dist/cli/src/main.js +2 -1
- package/dist/cli/src/main.js.map +1 -1
- package/dist/cli/src/manifests/admission.js +228 -11
- package/dist/cli/src/manifests/admission.js.map +1 -1
- package/dist/cli/src/manifests/alasio.js +151 -63
- package/dist/cli/src/manifests/alasio.js.map +1 -1
- package/dist/cli/src/manifests/branch.js +6 -1
- package/dist/cli/src/manifests/branch.js.map +1 -1
- package/dist/cli/src/manifests/codex-login.js +101 -0
- package/dist/cli/src/manifests/codex-login.js.map +1 -0
- package/dist/cli/src/manifests/collector.js +26 -21
- package/dist/cli/src/manifests/collector.js.map +1 -1
- package/dist/cli/src/manifests/common.js +50 -23
- package/dist/cli/src/manifests/common.js.map +1 -1
- package/dist/cli/src/manifests/config.js +79 -30
- package/dist/cli/src/manifests/config.js.map +1 -1
- package/dist/cli/src/manifests/disruption.js +8 -3
- package/dist/cli/src/manifests/disruption.js.map +1 -1
- package/dist/cli/src/manifests/folders.js +8 -5
- package/dist/cli/src/manifests/folders.js.map +1 -1
- package/dist/cli/src/manifests/harness-pools.js +236 -0
- package/dist/cli/src/manifests/harness-pools.js.map +1 -0
- package/dist/cli/src/manifests/image-holder.js +61 -0
- package/dist/cli/src/manifests/image-holder.js.map +1 -0
- package/dist/cli/src/manifests/index.js +6 -2
- package/dist/cli/src/manifests/index.js.map +1 -1
- package/dist/cli/src/manifests/keda.js +4 -2
- package/dist/cli/src/manifests/keda.js.map +1 -1
- package/dist/cli/src/manifests/lake.js +1 -17
- package/dist/cli/src/manifests/lake.js.map +1 -1
- package/dist/cli/src/manifests/log.js +63 -16
- package/dist/cli/src/manifests/log.js.map +1 -1
- package/dist/cli/src/manifests/neon.js +57 -77
- package/dist/cli/src/manifests/neon.js.map +1 -1
- package/dist/cli/src/manifests/network-policies.js +111 -39
- package/dist/cli/src/manifests/network-policies.js.map +1 -1
- package/dist/cli/src/manifests/node-agent.js +39 -19
- package/dist/cli/src/manifests/node-agent.js.map +1 -1
- package/dist/cli/src/manifests/object-store.js +95 -23
- package/dist/cli/src/manifests/object-store.js.map +1 -1
- package/dist/cli/src/manifests/sandbox-gateway.js +143 -45
- package/dist/cli/src/manifests/sandbox-gateway.js.map +1 -1
- package/dist/cli/src/manifests/scalers.js +5 -4
- package/dist/cli/src/manifests/scalers.js.map +1 -1
- package/dist/cli/src/manifests/sizing.js +1 -1
- package/dist/cli/src/manifests/sizing.js.map +1 -1
- package/dist/cli/src/manifests/valkey.js +19 -5
- package/dist/cli/src/manifests/valkey.js.map +1 -1
- package/dist/cli/src/manifests/volume-lock.js +43 -0
- package/dist/cli/src/manifests/volume-lock.js.map +1 -0
- package/dist/cli/src/manifests/vpa.js +12 -1
- package/dist/cli/src/manifests/vpa.js.map +1 -1
- package/dist/cli/src/manifests/workspace-storage.js +19 -16
- package/dist/cli/src/manifests/workspace-storage.js.map +1 -1
- package/dist/cli/src/neon-storage.js +0 -2
- package/dist/cli/src/neon-storage.js.map +1 -1
- package/dist/cli/src/release.js +9 -9
- package/dist/cli/src/release.js.map +1 -1
- package/dist/cli/src/setup-pod.js +44 -0
- package/dist/cli/src/setup-pod.js.map +1 -0
- package/dist/cli/src/target.js +2 -2
- package/dist/cli/src/target.js.map +1 -1
- package/dist/cli/src/telegram.js +13 -4
- package/dist/cli/src/telegram.js.map +1 -1
- package/dist/cli/src/wakes.js +68 -0
- package/dist/cli/src/wakes.js.map +1 -0
- package/dist/cli/src/webhook.js +5 -2
- package/dist/cli/src/webhook.js.map +1 -1
- package/dist/cluster/node/pins.json +6 -5
- package/dist/neon/control/branches.js +11 -4
- package/dist/neon/control/branches.js.map +1 -1
- package/dist/neon/control/endpoints.js +81 -10
- package/dist/neon/control/endpoints.js.map +1 -1
- package/dist/neon/control/secrets.js +11 -6
- package/dist/neon/control/secrets.js.map +1 -1
- package/dist/src/binder/bindings.js +195 -0
- package/dist/src/binder/bindings.js.map +1 -0
- package/dist/src/binder/names.js +30 -0
- package/dist/src/binder/names.js.map +1 -1
- package/dist/src/binder/tokens.js +17 -4
- package/dist/src/binder/tokens.js.map +1 -1
- package/dist/src/branch/names.js +10 -6
- package/dist/src/branch/names.js.map +1 -1
- package/dist/src/events/names.js +24 -3
- package/dist/src/events/names.js.map +1 -1
- package/dist/src/gateway/names.js +44 -5
- package/dist/src/gateway/names.js.map +1 -1
- package/dist/src/harness/names.js +18 -0
- package/dist/src/harness/names.js.map +1 -1
- package/dist/src/kube/client.js +212 -0
- package/dist/src/kube/client.js.map +1 -0
- package/dist/src/kube/sandbox-shape.js +6 -0
- package/dist/src/kube/sandbox-shape.js.map +1 -1
- package/dist/src/kube/started-map.js +12 -0
- package/dist/src/kube/started-map.js.map +1 -0
- package/dist/src/node-agent/names.js +13 -6
- package/dist/src/node-agent/names.js.map +1 -1
- package/dist/src/telegram/bot-commands.js +17 -0
- package/dist/src/telegram/bot-commands.js.map +1 -0
- package/dist/src/telegram/stop.js +12 -0
- package/dist/src/telegram/stop.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BACKGROUND_READ_SECONDS_VARIABLE, backgroundReadSeconds, CONTAINERD, CPU_FEATURES_CONTAINER, GVISOR_RELEASES, META_URL_VARIABLE, NODE_AGENT_PORT, NODE_AGENT_TOKEN_VARIABLE, NODE_DIRECTORY, nodeAgentStopSeconds, POD_IP_VARIABLE, RESTORES_FROM_BUCKET_SINCE_VARIABLE, SNAPSHOT_CACHE_BYTES_VARIABLE, } from "../../../src/node-agent/names.js";
|
|
2
2
|
import { memoryBytes } from "../capacity.js";
|
|
3
3
|
import { currentGvisorRelease, NODE_PINS } from "../cluster/node.js";
|
|
4
4
|
import { imageReference } from "../images.js";
|
|
5
|
-
import {
|
|
5
|
+
import { sessionsNamespace } from "./alasio.js";
|
|
6
|
+
import { componentName, given, imagePullSecrets, labels, MAIN_ENVIRONMENT, NAMESPACE, otelEnv, selectorLabels, TINI_SUBREAPER } from "./common.js";
|
|
6
7
|
import { priority } from "./priorities.js";
|
|
7
8
|
import { verticalPodAutoscaler } from "./sizing.js";
|
|
8
9
|
import { WORKSPACE_QUOTAS } from "./workspace-storage.js";
|
|
@@ -10,17 +11,20 @@ import { WORKSPACE_QUOTAS } from "./workspace-storage.js";
|
|
|
10
11
|
const SNAPSHOTS_SECRET = componentName("snapshots");
|
|
11
12
|
/** The Secret of the token the sandbox gateway presents to the node agents, under `token`. */
|
|
12
13
|
const NODE_AGENT_SECRET = componentName("node-agent");
|
|
14
|
+
/** The node agents' ServiceAccount, and the Role of each namespace it reads the pods of, and its binding. */
|
|
15
|
+
const NODE_AGENT_ACCOUNT = componentName("node-agent");
|
|
13
16
|
/** The node's paths the agent has at the same paths: each one's volume, what must be there, and whether the agent only reads it. */
|
|
14
17
|
const HOST_PATHS = [
|
|
15
18
|
// The shims' runsc root (/run/containerd/runsc) and, where systemd runs the node, its bus.
|
|
16
19
|
{ name: "run", path: "/run", type: "Directory" },
|
|
17
20
|
{ name: "gvisor", path: GVISOR_RELEASES, type: "DirectoryOrCreate", readOnly: true },
|
|
18
21
|
{ name: "containerd", path: CONTAINERD, type: "DirectoryOrCreate", readOnly: true },
|
|
19
|
-
|
|
20
|
-
//
|
|
21
|
-
//
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
// alasio's directory of the node's: workspace storage, as the node's mount of it holds it,
|
|
23
|
+
// the pool pods' directories, which it attaches workspaces into and writes their tokens
|
|
24
|
+
// beside, and the snapshots' cache. The directory, not the mount point: a bind of the mount
|
|
25
|
+
// point is of the mount it finds there, and the node's mount made there anew, as it is once
|
|
26
|
+
// its juicefs is gone, would never be the agent's.
|
|
27
|
+
{ name: "alasio", path: NODE_DIRECTORY, type: "DirectoryOrCreate" },
|
|
24
28
|
];
|
|
25
29
|
/** What each suffix of a size multiplies it by, as Kubernetes counts a quantity. */
|
|
26
30
|
const SIZE_UNITS = { Ki: 2 ** 10, Mi: 2 ** 20, Gi: 2 ** 30, Ti: 2 ** 40, Pi: 2 ** 50, k: 1e3, M: 1e6, G: 1e9, T: 1e12, P: 1e15 };
|
|
@@ -40,8 +44,8 @@ function daemonSet(config) {
|
|
|
40
44
|
name,
|
|
41
45
|
mountPath: path,
|
|
42
46
|
...(readOnly ? { readOnly } : {}),
|
|
43
|
-
// What is mounted under the node's /run, and its mount of workspace storage, after the agent starts are the agent's too.
|
|
44
|
-
...(name === "run" || name === "
|
|
47
|
+
// What is mounted under the node's /run, and in alasio's directory, its mount of workspace storage among it, after the agent starts are the agent's too.
|
|
48
|
+
...(name === "run" || name === "alasio" ? { mountPropagation: "HostToContainer" } : {}),
|
|
45
49
|
}));
|
|
46
50
|
return {
|
|
47
51
|
apiVersion: "apps/v1",
|
|
@@ -63,8 +67,9 @@ function daemonSet(config) {
|
|
|
63
67
|
// unsaved, or leave its cache half written (src/node-agent/operations.ts).
|
|
64
68
|
terminationGracePeriodSeconds: nodeAgentStopSeconds(sandboxBytes),
|
|
65
69
|
hostPID: true,
|
|
66
|
-
//
|
|
67
|
-
|
|
70
|
+
// Of the cluster's API, it reads the pods alone (nodeAgentObjects).
|
|
71
|
+
serviceAccountName: NODE_AGENT_ACCOUNT,
|
|
72
|
+
automountServiceAccountToken: true,
|
|
68
73
|
enableServiceLinks: false,
|
|
69
74
|
...imagePullSecrets(config),
|
|
70
75
|
...given("nodeSelector", { ...sessions.nodeSelector }),
|
|
@@ -75,17 +80,19 @@ function daemonSet(config) {
|
|
|
75
80
|
name: CPU_FEATURES_CONTAINER,
|
|
76
81
|
image: imageReference(config.images.alasio),
|
|
77
82
|
imagePullPolicy: config.images.pullPolicy,
|
|
78
|
-
|
|
83
|
+
args: ["node", "/opt/alasio/src/node-agent/cpu-features.ts", currentGvisorRelease()],
|
|
84
|
+
env: [TINI_SUBREAPER],
|
|
79
85
|
securityContext: { privileged: true, runAsUser: 0 },
|
|
80
86
|
resources: sessions.snapshots.nodeAgent.resources,
|
|
81
|
-
volumeMounts
|
|
87
|
+
volumeMounts,
|
|
82
88
|
}],
|
|
83
89
|
containers: [{
|
|
84
90
|
name: "node-agent",
|
|
85
91
|
image: imageReference(config.images.alasio),
|
|
86
92
|
imagePullPolicy: config.images.pullPolicy,
|
|
87
|
-
|
|
93
|
+
args: ["node", "/opt/alasio/src/node-agent/main.ts"],
|
|
88
94
|
env: [
|
|
95
|
+
TINI_SUBREAPER,
|
|
89
96
|
{ name: "NODE_NAME", valueFrom: { fieldRef: { fieldPath: "spec.nodeName" } } },
|
|
90
97
|
// Its pod's address, which it serves the bucket to its node's restores on (src/node-agent/store-proxy.ts).
|
|
91
98
|
{ name: POD_IP_VARIABLE, valueFrom: { fieldRef: { fieldPath: "status.podIP" } } },
|
|
@@ -94,7 +101,7 @@ function daemonSet(config) {
|
|
|
94
101
|
{ name: RESTORES_FROM_BUCKET_SINCE_VARIABLE, value: NODE_PINS.gvisor.restoresFromBucketSince },
|
|
95
102
|
{ name: BACKGROUND_READ_SECONDS_VARIABLE, value: String(backgroundReadSeconds(sandboxBytes)) },
|
|
96
103
|
// Workspace storage's metadata engine, which it sets workspaces' quotas on alone, as a user of its own there: no key of its object store.
|
|
97
|
-
|
|
104
|
+
{ name: META_URL_VARIABLE, valueFrom: { secretKeyRef: { name: WORKSPACE_QUOTAS, key: "metaurl" } } },
|
|
98
105
|
...(otelEnv(config).length > 0 ? [{ name: "OTEL_SERVICE_NAME", value: "alasio-node-agent" }, ...otelEnv(config)] : []),
|
|
99
106
|
],
|
|
100
107
|
envFrom: [{ secretRef: { name: SNAPSHOTS_SECRET } }],
|
|
@@ -111,13 +118,26 @@ function daemonSet(config) {
|
|
|
111
118
|
};
|
|
112
119
|
}
|
|
113
120
|
/**
|
|
114
|
-
* The node agents,
|
|
121
|
+
* The node agents, and their sizing: recommended, not applied in place, as
|
|
115
122
|
* a resize would restart an agent in the middle of a snapshot's upload.
|
|
116
123
|
*/
|
|
117
124
|
export function nodeAgentObjects(config) {
|
|
118
|
-
if (!nodeAgentRuns(config))
|
|
119
|
-
return [];
|
|
120
125
|
const agents = daemonSet(config);
|
|
121
|
-
|
|
126
|
+
// Who the agents are, and that they may read the pods of main's namespaces they attach into.
|
|
127
|
+
const serviceAccount = { apiVersion: "v1", kind: "ServiceAccount", metadata: { name: NODE_AGENT_ACCOUNT, namespace: NAMESPACE, labels: labels("node-agent") } };
|
|
128
|
+
return [serviceAccount, ...[NAMESPACE, sessionsNamespace(config, MAIN_ENVIRONMENT)].flatMap(nodeAgentPodReaders), agents, verticalPodAutoscaler(agents, "Recommended")];
|
|
129
|
+
}
|
|
130
|
+
/** That the node agents may read the pods of `namespace`, as they watch those of a namespace they attach into: its Role, and its binding. */
|
|
131
|
+
export function nodeAgentPodReaders(namespace) {
|
|
132
|
+
const metadata = { name: NODE_AGENT_ACCOUNT, namespace, labels: labels("node-agent") };
|
|
133
|
+
const role = { apiVersion: "rbac.authorization.k8s.io/v1", kind: "Role", metadata, rules: [{ apiGroups: [""], resources: ["pods"], verbs: ["get", "list", "watch"] }] };
|
|
134
|
+
const binding = {
|
|
135
|
+
apiVersion: "rbac.authorization.k8s.io/v1",
|
|
136
|
+
kind: "RoleBinding",
|
|
137
|
+
metadata,
|
|
138
|
+
subjects: [{ kind: "ServiceAccount", name: NODE_AGENT_ACCOUNT, namespace: NAMESPACE }],
|
|
139
|
+
roleRef: { apiGroup: "rbac.authorization.k8s.io", kind: "Role", name: NODE_AGENT_ACCOUNT },
|
|
140
|
+
};
|
|
141
|
+
return [role, binding];
|
|
122
142
|
}
|
|
123
143
|
//# sourceMappingURL=node-agent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-agent.js","sourceRoot":"","sources":["../../../../src/manifests/node-agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node-agent.js","sourceRoot":"","sources":["../../../../src/manifests/node-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { HISTORY_DAYS } from "../../../neon/control/branches.js";
|
|
2
|
+
import { memoryBytes } from "../capacity.js";
|
|
2
3
|
import { imageReference } from "../images.js";
|
|
3
|
-
import { claimSpec, componentName, labels, NAMESPACE, neonName, replicasOf, restrictedContainer,
|
|
4
|
+
import { BACKGROUND_CPU, claimSpec, componentName, labels, NAMESPACE, neonName, oncePolicyApplies, replicasOf, restrictedContainer, scaled, script, selectorLabels, stackLabels, stackPodSpec } from "./common.js";
|
|
4
5
|
import { filerStoreMaxmemoryBytes } from "./config.js";
|
|
5
6
|
import { replicaBudget, spread } from "./disruption.js";
|
|
6
7
|
import { priority } from "./priorities.js";
|
|
7
8
|
import { cpuScaledObject } from "./scalers.js";
|
|
8
9
|
import { verticalPodAutoscaler } from "./sizing.js";
|
|
9
|
-
import { VALKEY_PORT, valkeyObjects, valkeyPassword, valkeyPod } from "./valkey.js";
|
|
10
|
+
import { VALKEY_ONE_AT_A_TIME, VALKEY_PORT, valkeyObjects, valkeyPassword, valkeyPod } from "./valkey.js";
|
|
11
|
+
import { oneAtATime } from "./volume-lock.js";
|
|
10
12
|
/** The gateways' name, their Service's, by which the stack reaches the store. */
|
|
11
13
|
export const GATEWAY = componentName("seaweedfs");
|
|
12
14
|
export const MASTER = componentName("seaweedfs-master");
|
|
@@ -158,20 +160,32 @@ function partStatefulSet(config, name, component, scale, pod, storage, { service
|
|
|
158
160
|
},
|
|
159
161
|
};
|
|
160
162
|
}
|
|
161
|
-
/**
|
|
162
|
-
|
|
163
|
+
/**
|
|
164
|
+
* The container of a part, `name`, running `weed` with `args`, probed at `path` on its HTTP
|
|
165
|
+
* port; of a part with a volume, the `server` on it at /data.
|
|
166
|
+
*/
|
|
167
|
+
function partContainer(config, name, args, path, port, resources, server) {
|
|
163
168
|
const probe = { httpGet: { path, port } };
|
|
164
169
|
return {
|
|
165
170
|
name,
|
|
166
171
|
image: imageReference(config.objectStore.bundled.image),
|
|
167
172
|
imagePullPolicy: "IfNotPresent",
|
|
173
|
+
// On a volume, started once no other server holds the volume's lock (./volume-lock.ts),
|
|
174
|
+
// a file of its own beside the part's, by the image's entrypoint, as one without is,
|
|
175
|
+
// which runs weed with the image's defaults for the part.
|
|
176
|
+
...(server ? { command: ["/bin/sh", "-c", oneAtATime(`/data/.alasio-${name}.lock`, server), "/entrypoint.sh"] } : {}),
|
|
168
177
|
args: [...args, `-metricsPort=${METRICS_PORT}`],
|
|
169
178
|
env: POD_ENV,
|
|
170
179
|
ports: [{ name: "http", containerPort: port }, { name: "grpc", containerPort: port + 10_000 }, { name: "metrics", containerPort: METRICS_PORT }],
|
|
171
180
|
readinessProbe: { ...probe, periodSeconds: 5 },
|
|
181
|
+
// Started once it answers, which one on a volume does only once the server before it
|
|
182
|
+
// there has ended (within that pod's grace): five minutes for that and its start, so the
|
|
183
|
+
// wait is not ended by the liveness probe and put back by a crash loop.
|
|
184
|
+
...(server ? { startupProbe: { ...probe, periodSeconds: 5, failureThreshold: 60 } } : {}),
|
|
172
185
|
livenessProbe: { ...probe, initialDelaySeconds: 30, periodSeconds: 10, failureThreshold: 6 },
|
|
173
186
|
securityContext: restrictedContainer(),
|
|
174
187
|
...(resources ? { resources } : {}),
|
|
188
|
+
...(server ? { volumeMounts: [{ name: "data", mountPath: "/data" }] } : {}),
|
|
175
189
|
};
|
|
176
190
|
}
|
|
177
191
|
/** The masters: of their state, a volume each; of three, in Raft, each naming the others. */
|
|
@@ -194,7 +208,7 @@ function masterObjects(config) {
|
|
|
194
208
|
"-garbageThreshold=0.1",
|
|
195
209
|
"-telemetry=false",
|
|
196
210
|
];
|
|
197
|
-
const container =
|
|
211
|
+
const container = partContainer(config, "master", args, "/cluster/status", 9333, bundled.masters.resources, "master");
|
|
198
212
|
const statefulSet = partStatefulSet(config, MASTER, COMPONENTS.master, scaling, { containers: [container] }, bundled.masters.storage);
|
|
199
213
|
return [headless(MASTER, COMPONENTS.master, PORTS.master), statefulSet, ...replicaBudget(COMPONENTS.master, NAMESPACE, scaling), verticalPodAutoscaler(statefulSet, "Recommended")];
|
|
200
214
|
}
|
|
@@ -218,7 +232,7 @@ function volumeServerObjects(config) {
|
|
|
218
232
|
"-dataCenter=dc1",
|
|
219
233
|
"-rack=rack1",
|
|
220
234
|
];
|
|
221
|
-
const container =
|
|
235
|
+
const container = partContainer(config, "volume", args, "/status", 8080, volumeServers.resources, "volume server");
|
|
222
236
|
const statefulSet = partStatefulSet(config, VOLUME_SERVER, COMPONENTS.volumeServer, volumeServers.scaling, { containers: [container] }, volumeServers.storage, {
|
|
223
237
|
strictly: bundled.replication !== "000",
|
|
224
238
|
});
|
|
@@ -303,6 +317,47 @@ function filerStoreObjects(config) {
|
|
|
303
317
|
users: [filer, collector, backup],
|
|
304
318
|
});
|
|
305
319
|
}
|
|
320
|
+
/**
|
|
321
|
+
* How many MiB an S3 gateway of `resources` holds at most of the uploads under way: a request
|
|
322
|
+
* past it waits for room, its part held whole as it is read. An eighth of its memory limit,
|
|
323
|
+
* 256 MiB of 2 GiB; 256 where it has no limit.
|
|
324
|
+
*
|
|
325
|
+
* SeaweedFS 4.48 waits for room (s3api_circuit_breaker.go Limit) on a sync.Cond, which an
|
|
326
|
+
* upload that ends signals once it has given back its bytes, by an atomic and without the
|
|
327
|
+
* Cond's lock: a request between its look and its wait misses that signal and sleeps on
|
|
328
|
+
* until the next upload ends. A request woken that finds no room waits again behind those
|
|
329
|
+
* waiting, while one that comes and finds room goes in at once, so one may wait as others
|
|
330
|
+
* pass it; and it looks before it adds its own, so the uploads under way may go past the
|
|
331
|
+
* bound by one request's. Under the load job (test/gateway-memory.test.ts) a PUT waited
|
|
332
|
+
* 22 s at the most.
|
|
333
|
+
*/
|
|
334
|
+
export function gatewayUploadBufferMiB(resources) {
|
|
335
|
+
const limit = resources.limits?.memory;
|
|
336
|
+
return limit === undefined ? 256 : Math.max(16, Math.floor(memoryBytes(limit) / 8 / 2 ** 20));
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* The sizes, at least, by default and at most, of each of a gateway's connections' kernel
|
|
340
|
+
* buffers, received and sent: at most 1 MiB, of the 6 and 4 MiB a node allows by default. A
|
|
341
|
+
* request waiting for the gateway's budgets keeps its connection, its client's bytes filling
|
|
342
|
+
* the buffer it receives into, all charged to the gateway's cgroup: 243 MiB of them, beside
|
|
343
|
+
* 766 MiB of its own, as it was killed at its 1 GiB limit under the box's load (CI). Safe
|
|
344
|
+
* sysctls since Kubernetes 1.32, namespaced to the pod.
|
|
345
|
+
*/
|
|
346
|
+
export const GATEWAY_SYSCTLS = [
|
|
347
|
+
{ name: "net.ipv4.tcp_rmem", value: "4096 131072 1048576" },
|
|
348
|
+
{ name: "net.ipv4.tcp_wmem", value: "4096 16384 1048576" },
|
|
349
|
+
];
|
|
350
|
+
/**
|
|
351
|
+
* The Go runtime's soft memory limit of a container of `resources`, GOMEMLIMIT: three fifths
|
|
352
|
+
* of its memory limit, so that its collector runs before the kernel's OOM killer would,
|
|
353
|
+
* rather than once its heap has doubled, beside what the kernel charges the container that
|
|
354
|
+
* Go does not count, its connections' buffers among it; none where it has no limit. Its
|
|
355
|
+
* live heap under the load job was 130 to 330 MiB of the 620 to 770 MiB it held (CI).
|
|
356
|
+
*/
|
|
357
|
+
export function goMemoryLimit(resources) {
|
|
358
|
+
const limit = resources.limits?.memory;
|
|
359
|
+
return limit === undefined ? {} : { env: [{ name: "GOMEMLIMIT", value: `${Math.floor((memoryBytes(limit) * 0.6) / 2 ** 20)}MiB` }] };
|
|
360
|
+
}
|
|
306
361
|
/**
|
|
307
362
|
* The S3 gateways, on the filers, each making the buckets and their lifecycle rules as
|
|
308
363
|
* it starts, in sidecars, and ready only once they are made.
|
|
@@ -310,13 +365,12 @@ function filerStoreObjects(config) {
|
|
|
310
365
|
function gatewayObjects(config) {
|
|
311
366
|
const { bundled, buckets } = config.objectStore;
|
|
312
367
|
const { scaling } = bundled.gateways;
|
|
313
|
-
const
|
|
314
|
-
const made = [buckets.neon, buckets.lake, buckets.backups, ...(config.workspaceStorage.enabled ? [buckets.workspaces] : []), ...(snapshots ? [buckets.snapshots] : [])];
|
|
368
|
+
const made = [buckets.neon, buckets.lake, buckets.backups, buckets.workspaces, buckets.snapshots];
|
|
315
369
|
// Each bucket's rules given as its admin: Neon's as the admin's, the snapshots' as their own
|
|
316
370
|
// identity's, as nothing else may write that bucket (neon/control/secrets.ts s3Identities).
|
|
317
371
|
const lifecycles = [
|
|
318
372
|
{ bucket: buckets.neon, rules: NEON_LIFECYCLE, as: "ADMIN" },
|
|
319
|
-
|
|
373
|
+
{ bucket: buckets.snapshots, rules: SNAPSHOTS_LIFECYCLE, as: "SNAPSHOTS" },
|
|
320
374
|
];
|
|
321
375
|
const image = imageReference(bundled.image);
|
|
322
376
|
const ready = { exec: { command: ["test", "-f", "/tmp/ready"] }, periodSeconds: 5 };
|
|
@@ -338,6 +392,9 @@ function gatewayObjects(config) {
|
|
|
338
392
|
spec: {
|
|
339
393
|
...priority("floor"),
|
|
340
394
|
...stackPodSpec(config),
|
|
395
|
+
// Its connections' buffers held small: the kernel's are charged to its cgroup,
|
|
396
|
+
// and it holds a connection for each request under way or waiting (GATEWAY_SYSCTLS).
|
|
397
|
+
securityContext: { ...stackPodSpec(config).securityContext, sysctls: [...GATEWAY_SYSCTLS] },
|
|
341
398
|
...spread(COMPONENTS.gateway, scaling),
|
|
342
399
|
terminationGracePeriodSeconds: 30,
|
|
343
400
|
containers: [
|
|
@@ -353,7 +410,19 @@ function gatewayObjects(config) {
|
|
|
353
410
|
"-allowDeleteBucketNotEmpty=false",
|
|
354
411
|
"-autoCreateBucket=false",
|
|
355
412
|
`-metricsPort=${METRICS_PORT}`,
|
|
413
|
+
// What it holds of uploads under way, bounded (gatewayUploadBufferMiB), as
|
|
414
|
+
// SeaweedFS holds none, part by part, whole.
|
|
415
|
+
`-concurrentUploadLimitMB=${gatewayUploadBufferMiB(bundled.gateways.resources)}`,
|
|
416
|
+
// What its GETs hold is not budgeted (no -readerCacheSizeMB): SeaweedFS's
|
|
417
|
+
// reader budget, short of room, takes back the oldest chunk held, even one a
|
|
418
|
+
// GET is reading, which that GET then reads again. Each GET holds its chunk
|
|
419
|
+
// and four ahead, of the filers' 4 MiB, so the box's clients' GETs at once, 86
|
|
420
|
+
// with eight restores of images of their own, want 1.2 GiB, and 2 with
|
|
421
|
+
// fifteen, more than a budget a gateway can afford. Unbudgeted, they hold at most SeaweedFS's 256
|
|
422
|
+
// chunks in flight, 1 GiB, which its limit (2 GiB) has room for beside the
|
|
423
|
+
// rest: under the load job it held 1.6 GiB at most.
|
|
356
424
|
],
|
|
425
|
+
...goMemoryLimit(bundled.gateways.resources),
|
|
357
426
|
ports: [...PORTS.gateway.map(({ name, port }) => ({ name, containerPort: port })), { name: "metrics", containerPort: METRICS_PORT }],
|
|
358
427
|
readinessProbe: { httpGet: { path: "/healthz", port: "s3" }, periodSeconds: 5 },
|
|
359
428
|
livenessProbe: { httpGet: { path: "/healthz", port: "s3" }, initialDelaySeconds: 30, periodSeconds: 10, failureThreshold: 6 },
|
|
@@ -487,12 +556,11 @@ function lifecyclePass(config) {
|
|
|
487
556
|
command: [
|
|
488
557
|
"/bin/sh",
|
|
489
558
|
"-c",
|
|
490
|
-
|
|
491
|
-
`until wget -q -O /dev/null http://${MASTER}:9333/cluster/status; do sleep 2; done && ` +
|
|
559
|
+
`${oncePolicyApplies(`wget -q -O /dev/null http://${MASTER}:9333/cluster/status`)} && ` +
|
|
492
560
|
`printf '${commands.map((command) => `${command}\\n`).join("")}' | weed shell -master=${masters(config)} -filer=${FILER}:8888`,
|
|
493
561
|
],
|
|
494
562
|
securityContext: restrictedContainer(),
|
|
495
|
-
resources: { requests: { cpu:
|
|
563
|
+
resources: { requests: { cpu: BACKGROUND_CPU, memory: "32Mi" }, limits: { memory: "256Mi" } },
|
|
496
564
|
volumeMounts: [{ name: "tmp", mountPath: "/tmp" }],
|
|
497
565
|
}],
|
|
498
566
|
volumes: [{ name: "tmp", emptyDir: {} }],
|
|
@@ -509,8 +577,8 @@ function lifecyclePass(config) {
|
|
|
509
577
|
* taken by the user that may do that alone, on the backups' schedule; written under a
|
|
510
578
|
* name of its own, then renamed, so a backup that fails leaves none behind but its
|
|
511
579
|
* predecessors, of which the last `keep` are kept. On a volume of their own, outside the
|
|
512
|
-
* store they copy, made, where the
|
|
513
|
-
* another
|
|
580
|
+
* store they copy, made, where the stack has several nodes and another can take it, on
|
|
581
|
+
* another of them than the filer store's (the volume is placed by the pod that first mounts
|
|
514
582
|
* it, and keeps its pods on its node from then on). `alasio restore-filer-store` puts one
|
|
515
583
|
* back (filerStoreRestore).
|
|
516
584
|
*/
|
|
@@ -533,15 +601,13 @@ function filerStoreBackup(config) {
|
|
|
533
601
|
"-c",
|
|
534
602
|
script("set -eu", "stamp=$(date -u +%Y%m%dT%H%M%SZ)",
|
|
535
603
|
// What a backup that failed left behind, which no other is writing: they run one at a time.
|
|
536
|
-
"rm -f /backups/.filer-store-*.rdb",
|
|
537
|
-
// Waits out the moment before its NetworkPolicy applies, as a new pod.
|
|
538
|
-
`until valkey-cli -h ${FILER_STORE} --user ${FILER_STORE_USERS.backup.name} ping 2>/dev/null | grep -q PONG; do sleep 2; done`, `valkey-cli -h ${FILER_STORE} --user ${FILER_STORE_USERS.backup.name} --rdb "/backups/.filer-store-$stamp.rdb"`, 'test -s "/backups/.filer-store-$stamp.rdb"', 'mv "/backups/.filer-store-$stamp.rdb" "/backups/filer-store-$stamp.rdb"',
|
|
604
|
+
"rm -f /backups/.filer-store-*.rdb", oncePolicyApplies(`valkey-cli -h ${FILER_STORE} --user ${FILER_STORE_USERS.backup.name} ping 2>/dev/null | grep -q PONG`), `valkey-cli -h ${FILER_STORE} --user ${FILER_STORE_USERS.backup.name} --rdb "/backups/.filer-store-$stamp.rdb"`, 'test -s "/backups/.filer-store-$stamp.rdb"', 'mv "/backups/.filer-store-$stamp.rdb" "/backups/filer-store-$stamp.rdb"',
|
|
539
605
|
// All but the newest KEEP, which sort by when they were made.
|
|
540
606
|
"ls /backups | grep '^filer-store-.*\\.rdb$' | sort -r | tail -n +$((KEEP + 1)) | while read -r old; do rm \"/backups/$old\"; done"),
|
|
541
607
|
],
|
|
542
608
|
env: [{ name: "KEEP", value: String(filerStore.backups.keep) }, { name: "VALKEYCLI_AUTH", valueFrom: valkeyPassword(FILER_STORE_USERS.backup.secret) }],
|
|
543
609
|
securityContext: { ...restrictedContainer(), readOnlyRootFilesystem: true },
|
|
544
|
-
resources: { requests: { cpu:
|
|
610
|
+
resources: { requests: { cpu: BACKGROUND_CPU, memory: "64Mi" }, limits: { memory: "512Mi" } },
|
|
545
611
|
volumeMounts: [{ name: "backups", mountPath: "/backups" }],
|
|
546
612
|
};
|
|
547
613
|
const cronJob = {
|
|
@@ -628,9 +694,10 @@ export function backupsListing(config) {
|
|
|
628
694
|
* with the filer store stopped, as two Jobs, since the backups' volume and the filer
|
|
629
695
|
* store's may be on different nodes: on the backups' node, a Valkey that loads the backup
|
|
630
696
|
* and serves it, behind a Service, to the other alone (./network-policies.ts), with the
|
|
631
|
-
* backup user's password; and on the filer store's,
|
|
632
|
-
*
|
|
633
|
-
*
|
|
697
|
+
* backup user's password; and on the filer store's, holding the lock of its volume as its
|
|
698
|
+
* Valkey does (./volume-lock.ts), one that takes a snapshot of it, as the backups do, onto
|
|
699
|
+
* the filer store's volume beside what is there, loads it in a Valkey of its own, checks it
|
|
700
|
+
* holds as many keys as the backup, and only then deletes what was
|
|
634
701
|
* there and writes the append-only file the filer store loads as it starts, then prints
|
|
635
702
|
* how many keys it restored (RESTORED).
|
|
636
703
|
*/
|
|
@@ -673,7 +740,12 @@ export function filerStoreRestore(config, file) {
|
|
|
673
740
|
containers: [{
|
|
674
741
|
...container,
|
|
675
742
|
name: "restore",
|
|
743
|
+
// Once no Valkey runs on the volume, as one whose pod was deleted outright may still,
|
|
744
|
+
// and holding its lock, so none starts there until the restore has ended.
|
|
676
745
|
command: [
|
|
746
|
+
"/bin/sh",
|
|
747
|
+
"-c",
|
|
748
|
+
VALKEY_ONE_AT_A_TIME,
|
|
677
749
|
"/bin/sh",
|
|
678
750
|
"-c",
|
|
679
751
|
script("set -eu", `backup() { valkey-cli -h ${RESTORE_SOURCE} "$@"; }`,
|
|
@@ -693,9 +765,9 @@ export function filerStoreRestore(config, file) {
|
|
|
693
765
|
});
|
|
694
766
|
return [service, source, restore];
|
|
695
767
|
}
|
|
696
|
-
/** The bundled object store's objects, when it runs
|
|
768
|
+
/** The bundled object store's objects, when it runs. */
|
|
697
769
|
export function objectStoreObjects(config) {
|
|
698
|
-
if (!config.
|
|
770
|
+
if (!config.objectStore.bundled.enabled)
|
|
699
771
|
return [];
|
|
700
772
|
return [
|
|
701
773
|
...masterObjects(config),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-store.js","sourceRoot":"","sources":["../../../../src/manifests/object-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"object-store.js","sourceRoot":"","sources":["../../../../src/manifests/object-store.ts"],"names":[],"mappings":"AA2CA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACnN,OAAO,EAAE,wBAAwB,EAAkC,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAmB,MAAM,aAAa,CAAC;AAC3H,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,iFAAiF;AACjF,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,MAAM,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;AACxD,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,kBAAkB,CAAC,CAAC;AAC/D,kGAAkG;AAClG,MAAM,CAAC,MAAM,KAAK,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC;AACtD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC,uBAAuB,CAAC,CAAC;AAClE,mEAAmE;AACnE,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC,uBAAuB,CAAC,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,WAAW,QAAQ,EAAE,KAAK,EAAE,CAAC,cAAc,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE;IACzG,SAAS,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,WAAW,YAAY,EAAE,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;IAC7G,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,WAAW,SAAS,EAAE,KAAK,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE;CAChE,CAAC;AAEhD,yEAAyE;AACzE,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,kBAAkB,EAAE,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,uBAAuB,EAAE,CAAC;AAEhL,kDAAkD;AAClD,MAAM,CAAC,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,qGAAqG;AACrG,MAAM,CAAC,MAAM,gBAAgB,GAAG,8BAA8B,CAAC;AAC/D,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC,+BAA+B,CAAC,CAAC;AAEtE,2DAA2D;AAC3D,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AAEjC,4DAA4D;AAC5D,MAAM,UAAU,GAAG,YAAY,CAAC;AAEhC,oHAAoH;AACpH,MAAM,KAAK,GAAG;IACZ,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACrE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC3E,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACpE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;CACxE,CAAC;AAEF;;;;GAIG;AACH,MAAM,eAAe,GAAG,YAAY,GAAG,CAAC,CAAC;AAEzC,8EAA8E;AAC9E,MAAM,iBAAiB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,cAAc,GAAG;IACrB,KAAK,EAAE;QACL;YACE,EAAE,EAAE,mBAAmB;YACvB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;YACjC,2BAA2B,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE;YAChE,8BAA8B,EAAE,EAAE,mBAAmB,EAAE,CAAC,EAAE;SAC3D;QACD;YACE,EAAE,EAAE,uBAAuB;YAC3B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE;YACjC,2BAA2B,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE;YAClD,8BAA8B,EAAE,EAAE,mBAAmB,EAAE,CAAC,EAAE;SAC3D;QACD;YACE,EAAE,EAAE,YAAY;YAChB,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB,EAAE,iBAAiB,GAAG,CAAC,EAAE,EAAE;YACxF,UAAU,EAAE,EAAE,IAAI,EAAE,eAAe,GAAG,CAAC,EAAE;SAC1C;KACF;CACF,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG;IAC1B,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,0BAA0B,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,8BAA8B,EAAE,EAAE,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC;CACnJ,CAAC;AAEF,gHAAgH;AAChH,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,OAAe,EAAE,IAAY,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,OAAO,IAAI,OAAO,IAAI,SAAS,sBAAsB,IAAI,EAAE,CAAC;AAE5J,+HAA+H;AAC/H,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,KAAa,EAAE,IAAY,EAAE,EAAE,CAClF,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEpG,kDAAkD;AAClD,MAAM,OAAO,GAAG,CAAC,EAAE,WAAW,EAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAEhI,8EAA8E;AAC9E,MAAM,OAAO,GAAe;IAC1B,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,EAAE;IAC7E,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,oBAAoB,EAAE,EAAE,EAAE;CACxF,CAAC;AAEF,qGAAqG;AACrG,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,mBAAmB,OAAO,qCAAqC,CAAC;AAExG,yGAAyG;AACzG,SAAS,QAAQ,CAAC,IAAY,EAAE,SAAiB,EAAE,KAAkE;IACnH,OAAO;QACL,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE;QACxE,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,wBAAwB,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE;KAC7J,CAAC;AACJ,CAAC;AASD,qMAAqM;AACrM,SAAS,eAAe,CACtB,MAAqB,EACrB,IAAY,EACZ,SAAiB,EACjB,KAAY,EACZ,GAAmH,EACnH,OAAsE,EACtE,EAAE,OAAO,GAAG,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,QAAQ,GAAG,KAAK,EAAE,GAAgB,EAAE;IAEvE,OAAO;QACL,UAAU,EAAE,SAAS;QACrB,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE;QACxE,IAAI,EAAE;YACJ,WAAW,EAAE,OAAO;YACpB,GAAG,UAAU,CAAC,KAAK,CAAC;YACpB,mBAAmB,EAAE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU;YAC1D,QAAQ,EAAE,EAAE,WAAW,EAAE,cAAc,CAAC,SAAS,CAAC,EAAE;YACpD,QAAQ,EAAE;gBACR,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE;gBAC5C,IAAI,EAAE;oBACJ,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;oBACxC,GAAG,YAAY,CAAC,MAAM,CAAC;oBACvB,GAAG,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC;oBACrC,6BAA6B,EAAE,EAAE;oBACjC,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrE,UAAU,EAAE,GAAG,CAAC,UAAU;oBAC1B,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjD;aACF;YACD,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzG;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,MAAqB,EACrB,IAAY,EACZ,IAAc,EACd,IAAY,EACZ,IAAY,EACZ,SAAmC,EACnC,MAAe;IAEf,MAAM,KAAK,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;IAC1C,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;QACvD,eAAe,EAAE,cAAc;QAC/B,wFAAwF;QACxF,qFAAqF;QACrF,0DAA0D;QAC1D,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,IAAI,OAAO,EAAE,MAAM,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrH,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,gBAAgB,YAAY,EAAE,CAAC;QAC/C,GAAG,EAAE,OAAO;QACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,GAAG,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;QAChJ,cAAc,EAAE,EAAE,GAAG,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE;QAC9C,qFAAqF;QACrF,yFAAyF;QACzF,wEAAwE;QACxE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,GAAG,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,aAAa,EAAE,EAAE,GAAG,KAAK,EAAE,mBAAmB,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE;QAC5F,eAAe,EAAE,mBAAmB,EAAE;QACtC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAC;AACJ,CAAC;AAED,6FAA6F;AAC7F,SAAS,aAAa,CAAC,MAAqB;IAC1C,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IACvC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IACpC,MAAM,IAAI,GAAG;QACX,QAAQ;QACR,aAAa;QACb,UAAU,CAAC,MAAM,CAAC;QAClB,kBAAkB;QAClB,kEAAkE;QAClE,UAAU,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;QACtD,yBAAyB;QACzB,uBAAuB,OAAO,CAAC,WAAW,EAAE;QAC5C,kFAAkF;QAClF,qFAAqF;QACrF,mFAAmF;QACnF,yDAAyD;QACzD,uBAAuB;QACvB,kBAAkB;KACnB,CAAC;IACF,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtH,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtI,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AACtL,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,MAAqB;IAChD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IACvC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAClC,MAAM,IAAI,GAAG;QACX,QAAQ;QACR,YAAY;QACZ,QAAQ,aAAa,CAAC,OAAO,EAAE;QAC/B,iBAAiB,aAAa,CAAC,YAAY,EAAE;QAC7C,WAAW,OAAO,CAAC,MAAM,CAAC,EAAE;QAC5B,UAAU,CAAC,aAAa,CAAC;QACzB,kBAAkB;QAClB,iBAAiB;QACjB,aAAa;KACd,CAAC;IACF,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACnH,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,UAAU,CAAC,YAAY,EAAE,aAAa,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC,OAAO,EAAE;QAC7J,QAAQ,EAAE,OAAO,CAAC,WAAW,KAAK,KAAK;KACxC,CAAC,CAAC;IACH,OAAO;QACL,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC;QACpE,WAAW;QACX,GAAG,aAAa,CAAC,UAAU,CAAC,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC,OAAO,CAAC;QAC3E,qBAAqB,CAAC,WAAW,EAAE,aAAa,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,0IAA0I;AAC1I,MAAM,UAAU,SAAS;IACvB,OAAO;QACL,UAAU;QACV,gBAAgB;QAChB,cAAc,WAAW,IAAI,WAAW,GAAG;QAC3C,eAAe,iBAAiB,CAAC,KAAK,CAAC,IAAI,GAAG;QAC9C,cAAc;QACd,gBAAgB,UAAU,GAAG;QAC7B,4BAA4B;QAC5B,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,MAAqB;IACzC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IACvC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC3B,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAgB,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACpM,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,SAAiB,EAAE,IAAY,EAAE,GAAG,GAAe,EAAE,EAAe,EAAE,CAAC,CAAC;QACrG,IAAI,EAAE,YAAY,IAAI,EAAE;QACxB,KAAK,EAAE,SAAS;QAChB,eAAe,EAAE,cAAc;QAC/B,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;QAChC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,eAAe,EAAE,mBAAmB,EAAE;QACtC,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;KACpF,CAAC,CAAC;IACH,MAAM,cAAc,GAAG;QACrB,wEAAwE;QACxE,OAAO,CACL,aAAa,EACb,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EACxC,uBAAuB,WAAW,WAAW,iBAAiB,CAAC,KAAK,CAAC,IAAI,oDAAoD,EAC7H,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CACxF;QACD,OAAO,CAAC,eAAe,EAAE,KAAK,EAAE,6BAA6B,MAAM,iEAAiE,CAAC;KACtI,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,WAAW,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;IAC3H,MAAM,SAAS,GAAgB;QAC7B,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC;QAC3E,GAAG,EAAE,CAAC,GAAG,OAAO,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9G,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;KACpH,CAAC;IACF,MAAM,WAAW,GAAG,eAAe,CACjC,MAAM,EACN,KAAK,EACL,UAAU,CAAC,KAAK,EAChB,MAAM,CAAC,OAAO,EACd,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,EACrI,SAAS,EACT,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,CACxC,CAAC;IACF,kFAAkF;IAClF,MAAM,OAAO,GAAc;QACzB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;QACtF,IAAI,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;KACzE,CAAC;IACF,OAAO;QACL,SAAS;QACT,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;QACpD,OAAO;QACP,WAAW;QACX,GAAG,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC;QAC7D,qBAAqB,CAAC,WAAW,EAAE,SAAS,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,SAAS,iBAAiB,CAAC,MAAqB;IAC9C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IAClD,MAAM,SAAS,GAAG,GAAG,wBAAwB,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC;IAChF,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE;QAC3B,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,UAAU,CAAC,UAAU;QAChC,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS;QACT,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAA6D;IAClG,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACvC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AAChG,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,qBAAqB,EAAE;IAC3D,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,oBAAoB,EAAE;CAClD,CAAC;AAEX;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,SAA6D;IACzF,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACvC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;AACvI,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,MAAqB;IAC3C,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IAChD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;IACrC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IAClG,6FAA6F;IAC7F,4FAA4F;IAC5F,MAAM,UAAU,GAAG;QACjB,EAAE,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,EAAE;QAC5D,EAAE,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,EAAE,WAAW,EAAE;KAC3E,CAAC;IACF,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;IACpF,MAAM,OAAO,GAAc;QACzB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC1F,IAAI,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAoB,EAAE;KAC9I,CAAC;IACF,MAAM,UAAU,GAAiB;QAC/B,UAAU,EAAE,SAAS;QACrB,IAAI,EAAE,YAAY;QAClB,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC1F,IAAI,EAAE;YACJ,GAAG,UAAU,CAAC,OAAO,CAAC;YACtB,QAAQ,EAAE,EAAE,WAAW,EAAE,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC7D,QAAQ,EAAE;gBACR,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBACrD,IAAI,EAAE;oBACJ,GAAG,QAAQ,CAAC,OAAO,CAAC;oBACpB,GAAG,YAAY,CAAC,MAAM,CAAC;oBACvB,+EAA+E;oBAC/E,qFAAqF;oBACrF,eAAe,EAAE,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC,GAAG,eAAe,CAAC,EAAE;oBAC3F,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;oBACtC,6BAA6B,EAAE,EAAE;oBACjC,UAAU,EAAE;wBACV;4BACE,IAAI,EAAE,IAAI;4BACV,KAAK;4BACL,eAAe,EAAE,cAAc;4BAC/B,IAAI,EAAE;gCACJ,IAAI;gCACJ,UAAU,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gCAC9E,kBAAkB;gCAClB,gCAAgC;gCAChC,kCAAkC;gCAClC,yBAAyB;gCACzB,gBAAgB,YAAY,EAAE;gCAC9B,2EAA2E;gCAC3E,6CAA6C;gCAC7C,4BAA4B,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gCAChF,0EAA0E;gCAC1E,6EAA6E;gCAC7E,4EAA4E;gCAC5E,+EAA+E;gCAC/E,uEAAuE;gCACvE,kGAAkG;gCAClG,2EAA2E;gCAC3E,oDAAoD;6BACrD;4BACD,GAAG,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;4BAC5C,KAAK,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;4BACpI,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;4BAC/E,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE;4BAC7H,eAAe,EAAE,mBAAmB,EAAE;4BACtC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;4BACrC,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;yBACpF;wBACD,gFAAgF;wBAChF,gFAAgF;wBAChF,8EAA8E;wBAC9E,iFAAiF;wBACjF,2FAA2F;wBAC3F,4CAA4C;wBAC5C;4BACE,IAAI,EAAE,SAAS;4BACf,KAAK;4BACL,eAAe,EAAE,cAAc;4BAC/B,OAAO,EAAE;gCACP,SAAS;gCACT,IAAI;gCACJ,MAAM,CACJ,QAAQ,EACR,sDAAsD,OAAO,CAAC,MAAM,CAAC,WAAW,KAAK,UAAU;gCAC/F,2EAA2E;gCAC3E,4EAA4E,EAC5E,4EAA4E,EAC5E,mFAAmF,EACnF,iBAAiB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EACrC,iCAAiC,EACjC,oEAAoE,EACpE,4OAA4O,EAC5O,cAAc,EACd,QAAQ,EACR,8CAA8C,EAC9C,MAAM,EACN,sBAAsB,EACtB,MAAM,EACN,qCAAqC,OAAO,CAAC,IAAI,WAAW,EAC5D,qCAAqC,OAAO,CAAC,IAAI,sBAAsB,EACvE,kBAAkB,EAClB,qBAAqB,CACtB;6BACF;4BACD,cAAc,EAAE,KAAK;4BACrB,eAAe,EAAE,mBAAmB,EAAE;4BACtC,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;4BACpF,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;yBACzD;wBACD,mEAAmE;wBACnE;4BACE,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;4BACxC,eAAe,EAAE,cAAc;4BAC/B,OAAO,EAAE;gCACP,SAAS;gCACT,IAAI;gCACJ,MAAM,CACJ,QAAQ,EACR,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE;oCAC9C,MAAM,GAAG,GAAG,uBAAuB,EAAE,oCAAoC,EAAE,yDAAyD,CAAC;oCACrI,OAAO;wCACL,SAAS,GAAG,yBAAyB,MAAM,gCAAgC;wCAC3E,GAAG,GAAG,gDAAgD,MAAM,+BAA+B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG;qCACpH,CAAC;gCACJ,CAAC,CAAC,EACF,kBAAkB,EAClB,qBAAqB,CACtB;6BACF;4BACD,GAAG,EAAE;gCACH,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,WAAW,EAAE;gCAClD,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;gCAC/B,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;oCAC/B,MAAM,MAAM,GAAG,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;oCAClF,OAAO;wCACL,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,mBAAmB,EAAE,EAAE,EAAE;wCACjG,EAAE,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,uBAAuB,EAAE,EAAE,EAAE;qCACtG,CAAC;gCACJ,CAAC,CAAC;6BACH;4BACD,cAAc,EAAE,KAAK;4BACrB,eAAe,EAAE,mBAAmB,EAAE;4BACtC,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;4BACpF,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;yBAC7D;qBACF;oBACD,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE;wBACrE,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE;wBACnC,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE;qBACxC;iBACF;aACF;SACF;KACF,CAAC;IACF,OAAO;QACL,OAAO;QACP,UAAU;QACV,sFAAsF;QACtF,uEAAuE;QACvE,GAAG,eAAe,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC;QAC7E,GAAG,aAAa,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC;QACxD,kGAAkG;QAClG,qBAAqB,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;KACvF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,aAAa,CAAC,MAAqB;IAC1C,MAAM,SAAS,GAAG,mBAAmB,CAAC;IACtC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IACnD,MAAM,QAAQ,GAAG;QACf,2CAA2C,OAAO,+BAA+B;QACjF,MAAM;QACN,6CAA6C,WAAW,uBAAuB;QAC/E,GAAG,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC;QACnE,QAAQ;KACT,CAAC;IACF,OAAO;QACL,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE;QAClG,IAAI,EAAE;YACJ,QAAQ,EAAE,YAAY;YACtB,iBAAiB,EAAE,QAAQ;YAC3B,0BAA0B,EAAE,CAAC;YAC7B,sBAAsB,EAAE,CAAC;YACzB,WAAW,EAAE;gBACX,IAAI,EAAE;oBACJ,YAAY,EAAE,CAAC;oBACf,2DAA2D;oBAC3D,qBAAqB,EAAE,IAAI;oBAC3B,QAAQ,EAAE;wBACR,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,EAAE;wBAC5C,IAAI,EAAE;4BACJ,aAAa,EAAE,OAAO;4BACtB,GAAG,QAAQ,CAAC,WAAW,CAAC;4BACxB,GAAG,YAAY,CAAC,MAAM,CAAC;4BACvB,UAAU,EAAE,CAAC;oCACX,IAAI,EAAE,WAAW;oCACjB,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC;oCACvD,eAAe,EAAE,cAAc;oCAC/B,OAAO,EAAE;wCACP,SAAS;wCACT,IAAI;wCACJ,GAAG,iBAAiB,CAAC,+BAA+B,MAAM,sBAAsB,CAAC,MAAM;4CACvF,WAAW,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,OAAO,CAAC,MAAM,CAAC,WAAW,KAAK,OAAO;qCAC/H;oCACD,eAAe,EAAE,mBAAmB,EAAE;oCACtC,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;oCAC7F,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;iCACnD,CAAC;4BACF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;yBACzC;qBACF;iBACF;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,gBAAgB,CAAC,MAAqB;IAC7C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IAClD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAC3C,MAAM,KAAK,GAA4B;QACrC,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE;QACnF,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;KAC5C,CAAC;IACF,MAAM,IAAI,GAAgB;QACxB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC;QACvC,eAAe,EAAE,cAAc;QAC/B,OAAO,EAAE;YACP,SAAS;YACT,IAAI;YACJ,MAAM,CACJ,SAAS,EACT,kCAAkC;YAClC,4FAA4F;YAC5F,mCAAmC,EACnC,iBAAiB,CAAC,iBAAiB,WAAW,WAAW,iBAAiB,CAAC,MAAM,CAAC,IAAI,kCAAkC,CAAC,EACzH,iBAAiB,WAAW,WAAW,iBAAiB,CAAC,MAAM,CAAC,IAAI,2CAA2C,EAC/G,4CAA4C,EAC5C,yEAAyE;YACzE,8DAA8D;YAC9D,mIAAmI,CACpI;SACF;QACD,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACvJ,eAAe,EAAE,EAAE,GAAG,mBAAmB,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE;QAC3E,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QAC7F,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;KAC3D,CAAC;IACF,MAAM,OAAO,GAAc;QACzB,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,gBAAgB,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE;QAC3G,IAAI,EAAE;YACJ,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ;YACrC,iBAAiB,EAAE,QAAQ;YAC3B,0BAA0B,EAAE,CAAC;YAC7B,sBAAsB,EAAE,CAAC;YACzB,WAAW,EAAE;gBACX,IAAI,EAAE;oBACJ,YAAY,EAAE,CAAC;oBACf,qBAAqB,EAAE,IAAI;oBAC3B,QAAQ,EAAE;wBACR,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE;wBAC9C,IAAI,EAAE;4BACJ,aAAa,EAAE,OAAO;4BACtB,GAAG,QAAQ,CAAC,WAAW,CAAC;4BACxB,GAAG,SAAS,CAAC,MAAM,CAAC;4BACpB,QAAQ,EAAE,EAAE,eAAe,EAAE,EAAE,+CAA+C,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE;4BACrH,UAAU,EAAE,CAAC,IAAI,CAAC;4BAClB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC;yBAC9E;qBACF;iBACF;aACF;SACF;KACF,CAAC;IACF,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC1B,CAAC;AAED,8DAA8D;AAC9D,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAA6B,EAAE,CAAC,CAAC;IAClE,MAAM,EAAE,GAAG;IACX,eAAe,EAAE,EAAE,aAAa,EAAE,EAAE,WAAW,EAAE,cAAc,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE;CACtH,CAAC,CAAC;AAEH,6GAA6G;AAC7G,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,MAAM,EAAE,sCAAsC,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;AAE/H,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;AACvE,MAAM,CAAC,MAAM,OAAO,GAAG,aAAa,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC,uCAAuC,CAAC,CAAC;AAEtF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,WAAW,IAAI,CAAC;AAEzD,kHAAkH;AAClH,MAAM,CAAC,MAAM,QAAQ,GAAG,yBAAyB,CAAC;AAElD;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAqB;IAClD,OAAO;QACL,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE;QAC3F,IAAI,EAAE;YACJ,YAAY,EAAE,CAAC;YACf,qBAAqB,EAAE,GAAG;YAC1B,uBAAuB,EAAE,IAAI;YAC7B,QAAQ,EAAE;gBACR,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE;gBAC9C,IAAI,EAAE;oBACJ,aAAa,EAAE,OAAO;oBACtB,GAAG,QAAQ,CAAC,WAAW,CAAC;oBACxB,GAAG,SAAS,CAAC,MAAM,CAAC;oBACpB,UAAU,EAAE,CAAC;4BACX,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;4BAClE,eAAe,EAAE,cAAc;4BAC/B,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,qDAAqD,CAAC;4BACjF,eAAe,EAAE,EAAE,GAAG,mBAAmB,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE;4BAC3E,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;4BACnF,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;yBAC3E,CAAC;oBACF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;iBAC9F;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAqB,EAAE,IAAY;IACnE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IAClD,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,cAAc,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IACpG,MAAM,SAAS,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,eAAe,EAAE,EAAE,GAAG,mBAAmB,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IACvJ,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,SAAiB,EAAE,IAAe,EAAS,EAAE,CAAC,CAAC;QACxE,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,KAAK;QACX,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE;QACnE,IAAI,EAAE;YACJ,YAAY,EAAE,CAAC;YACf,qBAAqB,EAAE,IAAI;YAC3B,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,EAAE;SACjJ;KACF,CAAC,CAAC;IACH,MAAM,OAAO,GAAc;QACzB,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE;QACnG,IAAI,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE;KAC9G,CAAC;IACF,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,MAAM,EAAE;QAC5D,UAAU,EAAE,CAAC;gBACX,GAAG,SAAS;gBACZ,IAAI,EAAE,OAAO;gBACb,oDAAoD;gBACpD,OAAO,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,EAAE,mBAAmB,CAAC;gBAC9K,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;gBACvD,cAAc,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,gCAAgC,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE;gBAC5G,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO,EAAE,EAAE;gBAC7H,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aAC3E,CAAC;QACF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;KAC9F,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,iBAAiB,WAAW,GAAG,CAAC,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC,OAAO,EAAE;QACvD,UAAU,EAAE,CAAC;gBACX,GAAG,SAAS;gBACZ,IAAI,EAAE,SAAS;gBACf,sFAAsF;gBACtF,0EAA0E;gBAC1E,OAAO,EAAE;oBACP,SAAS;oBACT,IAAI;oBACJ,oBAAoB;oBACpB,SAAS;oBACT,IAAI;oBACJ,MAAM,CACJ,SAAS,EACT,4BAA4B,cAAc,UAAU;oBACpD,kGAAkG;oBAClG,gEAAgE,EAChE,2BAA2B;oBAC3B,2FAA2F;oBAC3F,yBAAyB,EACzB,gCAAgC,EAChC,2BAA2B,EAC3B,wBAAwB,WAAW,GAAG,CAAC,oHAAoH,EAC3J,WAAW;oBACX,kDAAkD;oBAClD,SAAS,KAAK,uEAAuE,EACrF,YAAY,KAAK,UAAU,EAC3B,0GAA0G,EAC1G,2CAA2C,EAC3C,GAAG,KAAK,uCAAuC;oBAC/C,oFAAoF;oBACpF,uBAAuB,KAAK,yKAAyK,EACrM,GAAG,KAAK,wKAAwK,EAChL,GAAG,KAAK,WAAW,EACnB,MAAM,EACN,sBAAsB,EACtB,8BAA8B,CAC/B;iBACF;gBACD,SAAS,EAAE,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,OAAO,EAAE,EAAE;gBAC7H,YAAY,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;aACrD,CAAC;QACF,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,CAAC;KACrF,CAAC,CAAC;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,wDAAwD;AACxD,MAAM,UAAU,kBAAkB,CAAC,MAAqB;IACtD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACnD,OAAO;QACL,GAAG,aAAa,CAAC,MAAM,CAAC;QACxB,GAAG,mBAAmB,CAAC,MAAM,CAAC;QAC9B,GAAG,iBAAiB,CAAC,MAAM,CAAC;QAC5B,GAAG,YAAY,CAAC,MAAM,CAAC;QACvB,GAAG,cAAc,CAAC,MAAM,CAAC;QACzB,aAAa,CAAC,MAAM,CAAC;QACrB,GAAG,gBAAgB,CAAC,MAAM,CAAC;KAC5B,CAAC;AACJ,CAAC"}
|