wezard 2.3.0 → 2.4.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/CLAUDE.md +3 -3
- package/README.md +5 -5
- package/config.example.jsonc +12 -0
- package/dist/daemon/approval.js +103 -15
- package/dist/daemon/approval.js.map +1 -1
- package/dist/daemon/chat-name.js +15 -0
- package/dist/daemon/chat-name.js.map +1 -1
- package/dist/daemon/config-api.js +281 -70
- package/dist/daemon/config-api.js.map +1 -1
- package/dist/daemon/danger.js +5 -7
- package/dist/daemon/danger.js.map +1 -1
- package/dist/daemon/detail.js +10 -2
- package/dist/daemon/detail.js.map +1 -1
- package/dist/daemon/handoff.js +4 -3
- package/dist/daemon/handoff.js.map +1 -1
- package/dist/daemon/idle-nudge.js +55 -0
- package/dist/daemon/idle-nudge.js.map +1 -0
- package/dist/daemon/inbound.js +17 -14
- package/dist/daemon/inbound.js.map +1 -1
- package/dist/daemon/index.js +957 -225
- package/dist/daemon/index.js.map +1 -1
- package/dist/daemon/jobs.js +122 -13
- package/dist/daemon/jobs.js.map +1 -1
- package/dist/daemon/mirror-bridge.js +97 -84
- package/dist/daemon/mirror-bridge.js.map +1 -1
- package/dist/daemon/model-select.js +3 -0
- package/dist/daemon/model-select.js.map +1 -1
- package/dist/daemon/notices.js +172 -33
- package/dist/daemon/notices.js.map +1 -1
- package/dist/daemon/peers.js +105 -78
- package/dist/daemon/peers.js.map +1 -1
- package/dist/daemon/pending-items.js +171 -0
- package/dist/daemon/pending-items.js.map +1 -0
- package/dist/daemon/receipts.js +58 -24
- package/dist/daemon/receipts.js.map +1 -1
- package/dist/daemon/route.js +76 -15
- package/dist/daemon/route.js.map +1 -1
- package/dist/daemon/spawn-tmux.js +2 -2
- package/dist/daemon/spawn-tmux.js.map +1 -1
- package/dist/daemon/steward-guard.js +32 -0
- package/dist/daemon/steward-guard.js.map +1 -0
- package/dist/daemon/top-only-nudge.js +29 -0
- package/dist/daemon/top-only-nudge.js.map +1 -0
- package/dist/daemon/wizard.js +114 -61
- package/dist/daemon/wizard.js.map +1 -1
- package/dist/mcp/server.js +75 -25
- package/dist/mcp/server.js.map +1 -1
- package/dist/shared/chat-http.js +23 -13
- package/dist/shared/chat-http.js.map +1 -1
- package/dist/shared/config-meta.js +91 -0
- package/dist/shared/config-meta.js.map +1 -0
- package/dist/shared/config-writer.js +5 -6
- package/dist/shared/config-writer.js.map +1 -1
- package/dist/shared/config.js +279 -294
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/detail-render.js +121 -32
- package/dist/shared/detail-render.js.map +1 -1
- package/dist/shared/detail-store.js.map +1 -1
- package/dist/shared/keepalive.js +5 -5
- package/dist/shared/keepalive.js.map +1 -1
- package/dist/shared/role-render.js +52 -12
- package/dist/shared/role-render.js.map +1 -1
- package/dist/shared/role-view.js +84 -26
- package/dist/shared/role-view.js.map +1 -1
- package/dist/shared/world.js +82 -13
- package/dist/shared/world.js.map +1 -1
- package/hooks/pre-tool-use.sh +14 -12
- package/package.json +1 -1
- package/web/chat.css +63 -37
- package/web/chat.js +513 -283
package/dist/daemon/jobs.js
CHANGED
|
@@ -24,23 +24,116 @@ export const rejectReason = (accept, c) => accept === "none" ? undefined
|
|
|
24
24
|
: c.kind !== "result" || !c.text.trim() ? "没有 `RESULT:` 收口 (或 RESULT 后面是空的)"
|
|
25
25
|
: accept === "artifact" && !c.artifacts.length ? "没有列出 `ARTIFACT:` 交付物"
|
|
26
26
|
: undefined;
|
|
27
|
-
/**
|
|
28
|
-
*
|
|
29
|
-
export const JOB_MEMBER_MAX =
|
|
27
|
+
/** 一个工单最多带这么多直接成员 —— 管辖幅度: 超了就该长一层子 lead, 不是再塞人。
|
|
28
|
+
* (同时也是 "忘了收" 的刹车: 每个成员是一个 tmux pane 加一份上下文。) */
|
|
29
|
+
export const JOB_MEMBER_MAX = 5;
|
|
30
|
+
/** 工单树深度上限: 1 = 根单, 2 = lead 的子单, 3 = 子 lead 的子单。 */
|
|
31
|
+
export const JOB_DEPTH_MAX = 3;
|
|
30
32
|
const KEEP_CLOSED_MS = 24 * 60 * 60 * 1000;
|
|
31
33
|
const newId = () => `J${randomUUID().slice(0, 6)}`;
|
|
32
34
|
/** 写穿式单文件存储, 同 wizard 注册表。收工满 24h 的工单在下一次写盘时被丢掉 ——
|
|
33
35
|
* 账本是为了收尾, 不是为了存档。 */
|
|
34
36
|
const dropStale = (map) => {
|
|
35
37
|
const cutoff = Date.now() - KEEP_CLOSED_MS;
|
|
36
|
-
|
|
38
|
+
// 祖先里还有开着的 (交付等人验收可以等好几天) → 已收工的子单留着, 免得面包屑断。
|
|
39
|
+
const rootOpen = (j) => ancestorsOf((id) => map[id], j).some((a) => a.status === "open");
|
|
40
|
+
return Object.fromEntries(Object.entries(map).filter(([, j]) => j.status === "open" || (j.closedAt ?? 0) > cutoff || rootOpen(j)));
|
|
37
41
|
};
|
|
42
|
+
/** 祖先链, 由近及远 (不含自己)。带环保护: 账本是落盘数据, 不信它没写坏。 */
|
|
43
|
+
export const ancestorsOf = (get, j) => {
|
|
44
|
+
const go = (cur, seen) => {
|
|
45
|
+
const p = cur.parent && !seen.has(cur.parent) ? get(cur.parent) : undefined;
|
|
46
|
+
return p ? [p, ...go(p, new Set([...seen, p.id]))] : [];
|
|
47
|
+
};
|
|
48
|
+
return go(j, new Set([j.id]));
|
|
49
|
+
};
|
|
50
|
+
/** 深度: 根 = 1。 */
|
|
51
|
+
export const depthOf = (get, j) => 1 + ancestorsOf(get, j).length;
|
|
52
|
+
export const childrenOf = (all, id) => all.filter((j) => j.parent === id).sort((a, b) => a.openedAt - b.openedAt);
|
|
53
|
+
/** 前序展开成树序: 根在前、子单跟在父后。返回 [工单, 深度]。父不在账里的当根。 */
|
|
54
|
+
export const treeOrder = (all) => {
|
|
55
|
+
const ids = new Set(all.map((j) => j.id));
|
|
56
|
+
const walk = (j, d) => [[j, d], ...childrenOf(all, j.id).flatMap((c) => walk(c, d + 1))];
|
|
57
|
+
return all
|
|
58
|
+
.filter((j) => !j.parent || !ids.has(j.parent))
|
|
59
|
+
.sort((a, b) => b.openedAt - a.openedAt)
|
|
60
|
+
.flatMap((r) => walk(r, 1));
|
|
61
|
+
};
|
|
62
|
+
const roleOf = (mm) => mm.role ?? "exec";
|
|
63
|
+
/** 一张单现算的阶段 —— 不落盘 (见设计文档 §3.2)。 */
|
|
64
|
+
export const jobStage = (j, all, live) => {
|
|
65
|
+
if (j.status === "closed")
|
|
66
|
+
return "closed";
|
|
67
|
+
if (j.kind === "req" && j.hold)
|
|
68
|
+
return "shelved";
|
|
69
|
+
const open = j.members.filter((mm) => !mm.outcome);
|
|
70
|
+
const asking = open.some((mm) => live(j, mm) === "needs-input");
|
|
71
|
+
if (j.kind === "req") {
|
|
72
|
+
const lead = j.members.find((mm) => roleOf(mm) === "lead");
|
|
73
|
+
if (lead?.outcome === "done")
|
|
74
|
+
return "deliver";
|
|
75
|
+
if (lead?.outcome)
|
|
76
|
+
return "stalled";
|
|
77
|
+
if (asking)
|
|
78
|
+
return "clarify";
|
|
79
|
+
const sub = childrenOf(all, j.id).find((c) => c.status === "open" && c.members.length);
|
|
80
|
+
// 没有子单时 lead 手上还有在飞的活 (自己在干 / 返工中) 也是实施, 不是规划。
|
|
81
|
+
return sub ? jobStage(sub, all, live) : lead && live(j, lead) ? "build" : "plan";
|
|
82
|
+
}
|
|
83
|
+
if (!j.members.length)
|
|
84
|
+
return "plan";
|
|
85
|
+
if (asking)
|
|
86
|
+
return "clarify";
|
|
87
|
+
const doers = j.members.filter((mm) => roleOf(mm) !== "reviewer" && roleOf(mm) !== "expert");
|
|
88
|
+
const reviewers = j.members.filter((mm) => roleOf(mm) === "reviewer");
|
|
89
|
+
return doers.some((mm) => !mm.outcome) ? "build"
|
|
90
|
+
: reviewers.some((mm) => !mm.outcome) ? "review"
|
|
91
|
+
: open.length ? "build" : "deliver";
|
|
92
|
+
};
|
|
93
|
+
const ROLE_ZH = { lead: "lead", exec: "执行", reviewer: "评审", expert: "专家" };
|
|
94
|
+
/** 名册里一个 wizard 的任职: 开着的单里它是什么 (`J1 lead · J2 评审 · J3 开单`); 没有 = 空串。 */
|
|
95
|
+
export const dutyLine = (all, target) => all.filter((j) => j.status === "open")
|
|
96
|
+
.flatMap((j) => [
|
|
97
|
+
...(j.owner === target ? [`${j.id} 开单`] : []),
|
|
98
|
+
...j.members.filter((mm) => mm.target === target).map((mm) => `${j.id} ${ROLE_ZH[mm.role ?? "exec"]}`),
|
|
99
|
+
])
|
|
100
|
+
.join(" · ");
|
|
101
|
+
/** 等人验收的根单: owner 的需求根单里 lead 已交差、单还开着。交付时刻 = lead 落定的那一刻。 */
|
|
102
|
+
export const awaitingAccept = (all, owner, live) => all.filter((j) => j.kind === "req" && j.owner === owner && jobStage(j, all, live) === "deliver")
|
|
103
|
+
.map((j) => ({ job: j, at: j.members.find((mm) => (mm.role ?? "exec") === "lead")?.settledAt ?? j.openedAt }));
|
|
104
|
+
/** lead 没交差就收场的根单 (timeout / silent / dead / canceled): 要管家重派或关单。 */
|
|
105
|
+
export const stalledRoots = (all, owner, live) => all.filter((j) => j.kind === "req" && j.owner === owner && jobStage(j, all, live) === "stalled")
|
|
106
|
+
.map((j) => ({ job: j, status: j.members.find((mm) => (mm.role ?? "exec") === "lead")?.outcome ?? "" }));
|
|
107
|
+
// ── 重试冒泡 (设计文档 §3.3.1) ──────────────────────────────────────
|
|
108
|
+
const HOUR = 3600_000;
|
|
109
|
+
/** 只在白天冒: [09:00, 21:00) 本地时间。 */
|
|
110
|
+
export const NUDGE_FROM_H = 9;
|
|
111
|
+
export const NUDGE_TO_H = 21;
|
|
112
|
+
/** 下一次冒泡的理想时刻 (还没算白天窗口): 交付后 4h → 之后 1 天 → 再之后每 2 天, 不封顶。 */
|
|
113
|
+
export const nextNudgeAt = (deliveredAt, nudge) => !nudge || nudge.n < 1 ? Math.max(deliveredAt, nudge?.lastAt ?? 0) + 4 * HOUR
|
|
114
|
+
: nudge.n < 2 ? nudge.lastAt + 24 * HOUR
|
|
115
|
+
: nudge.lastAt + 48 * HOUR;
|
|
116
|
+
/** 落在 [09:00, 21:00) 之外的时刻顺延到下一个 09:00 (本地时间)。 */
|
|
117
|
+
export const dayClamp = (t) => {
|
|
118
|
+
const d = new Date(t);
|
|
119
|
+
const h = d.getHours();
|
|
120
|
+
if (h >= NUDGE_FROM_H && h < NUDGE_TO_H)
|
|
121
|
+
return t;
|
|
122
|
+
if (h >= NUDGE_TO_H)
|
|
123
|
+
d.setDate(d.getDate() + 1);
|
|
124
|
+
d.setHours(NUDGE_FROM_H, 0, 0, 0);
|
|
125
|
+
return d.getTime();
|
|
126
|
+
};
|
|
127
|
+
/** 这张等验收的根单此刻该不该冒一次。 */
|
|
128
|
+
export const nudgeDue = (deliveredAt, nudge, now) => now >= dayClamp(nextNudgeAt(deliveredAt, nudge));
|
|
129
|
+
/** 搁置的需求根单: 不冒泡、不算等验收, 但挂起表里要看得见, 免得被遗忘。 */
|
|
130
|
+
export const shelvedRoots = (all, owner) => all.filter((j) => j.kind === "req" && j.owner === owner && j.status === "open" && j.hold);
|
|
38
131
|
export const loadJobStore = (filePath) => {
|
|
39
132
|
const db = loadJsonMap(filePath, dropStale);
|
|
40
133
|
return {
|
|
41
|
-
open: (base, owner, title, { plan, expect, maxTurns, accept } = {}) => {
|
|
134
|
+
open: (base, owner, title, { plan, expect, maxTurns, accept, parent, kind, criteria, origin, gate } = {}) => {
|
|
42
135
|
const id = newId();
|
|
43
|
-
return db.set(id, { id, base, owner, title, ...(plan ? { plan } : {}), ...(accept && accept !== "result" ? { accept } : {}), ...(expect ? { expect } : {}), ...(maxTurns ? { maxTurns, turns: 0 } : {}), members: [], status: "open", openedAt: Date.now() });
|
|
136
|
+
return db.set(id, { id, base, owner, title, ...(parent ? { parent } : {}), ...(kind ? { kind } : {}), ...(criteria ? { criteria } : {}), ...(origin ? { origin } : {}), ...(gate ? { gate } : {}), ...(plan ? { plan } : {}), ...(accept && accept !== "result" ? { accept } : {}), ...(expect ? { expect } : {}), ...(maxTurns ? { maxTurns, turns: 0 } : {}), members: [], status: "open", openedAt: Date.now() });
|
|
44
137
|
},
|
|
45
138
|
spend: (id) => {
|
|
46
139
|
const j = db.get(id);
|
|
@@ -51,15 +144,24 @@ export const loadJobStore = (filePath) => {
|
|
|
51
144
|
return { turns, ...(j.maxTurns ? { maxTurns: j.maxTurns } : {}) };
|
|
52
145
|
},
|
|
53
146
|
get: db.get,
|
|
54
|
-
attach: (id, member) => {
|
|
147
|
+
attach: (id, member, kind = "task") => {
|
|
55
148
|
const j = db.get(id);
|
|
56
|
-
|
|
149
|
+
const prev = j?.members.find((x) => x.target === member.target);
|
|
150
|
+
// 满员只拦新面孔: 已在册的再派一段 (re 续问) 必须照记, 否则它旧的定论不作废, 「全部到齐」提前报。
|
|
151
|
+
if (!j || j.status !== "open" || (!prev && j.members.length >= JOB_MEMBER_MAX))
|
|
57
152
|
return undefined;
|
|
58
153
|
const rest = j.members.filter((x) => x.target !== member.target);
|
|
59
|
-
const prev = j.members.find((x) => x.target === member.target);
|
|
60
154
|
// 再派一段 (含 re 续问) = 它又在干了: 旧的定论作废, 不然「全部到齐」会提前报、
|
|
61
155
|
// close_job 会把还在干活的它收掉。
|
|
62
|
-
|
|
156
|
+
const role = member.role ?? prev?.role;
|
|
157
|
+
const forkOf = member.forkOf ?? prev?.forkOf;
|
|
158
|
+
// 根单上 owner 给 lead 派了新活 (task; ask 只是问一句, 不算返工): 不再搁置; 若这一句让 lead 的定论作废, 冒泡也从头计。
|
|
159
|
+
// 定论照旧一律作废 (它又在干了, 见上), 只是 ask 不动 hold / nudge。
|
|
160
|
+
const toLead = j.kind === "req" && role === "lead" && kind === "task";
|
|
161
|
+
const { hold: _h, ...unheld } = j;
|
|
162
|
+
const { nudge: _n, ...unnudged } = unheld;
|
|
163
|
+
const base = !toLead ? j : prev?.outcome ? unnudged : unheld;
|
|
164
|
+
return db.set(id, { ...base, members: [...rest, { ...member, task: member.task || prev?.task || "", spawned: member.spawned || !!prev?.spawned, ...(role ? { role } : {}), ...(forkOf ? { forkOf } : {}), at: Date.now() }] });
|
|
63
165
|
},
|
|
64
166
|
settle: (id, target, outcome, artifacts) => {
|
|
65
167
|
const j = db.get(id);
|
|
@@ -67,16 +169,23 @@ export const loadJobStore = (filePath) => {
|
|
|
67
169
|
return undefined;
|
|
68
170
|
return db.set(id, {
|
|
69
171
|
...j,
|
|
70
|
-
members: j.members.map((x) => (x.target === target ? { ...x, outcome, ...(artifacts?.length ? { artifacts } : {}) } : x)),
|
|
172
|
+
members: j.members.map((x) => (x.target === target ? { ...x, outcome, settledAt: Date.now(), ...(artifacts?.length ? { artifacts } : {}) } : x)),
|
|
71
173
|
});
|
|
72
174
|
},
|
|
73
175
|
tally: (id) => {
|
|
74
176
|
const j = db.get(id);
|
|
75
177
|
return j && { done: j.members.filter((x) => x.outcome).length, total: Math.max(j.members.length, j.expect ?? 0) };
|
|
76
178
|
},
|
|
77
|
-
close: (id, summary) => {
|
|
179
|
+
close: (id, summary, mark) => {
|
|
78
180
|
const j = db.get(id);
|
|
79
|
-
return j ? db.set(id, { ...j, status: "closed", closedAt: Date.now(), summary }) : undefined;
|
|
181
|
+
return j ? db.set(id, { ...j, ...(mark?.gate ? { gate: { ...j.gate, ...mark.gate } } : {}), ...(mark?.end ? { end: mark.end } : {}), status: "closed", closedAt: Date.now(), summary }) : undefined;
|
|
182
|
+
},
|
|
183
|
+
mark: (id, patch) => {
|
|
184
|
+
const j = db.get(id);
|
|
185
|
+
if (!j)
|
|
186
|
+
return undefined;
|
|
187
|
+
const { gate, ...rest } = patch;
|
|
188
|
+
return db.set(id, { ...j, ...rest, ...(gate ? { gate: { ...j.gate, ...gate } } : {}) });
|
|
80
189
|
},
|
|
81
190
|
detach: (target) => Object.values(db.all())
|
|
82
191
|
.filter((j) => j.status === "open" && j.members.some((x) => x.target === target && !x.outcome))
|
package/dist/daemon/jobs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../daemon/jobs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../daemon/jobs.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,EAAE;AACF,wDAAwD;AACxD,8CAA8C;AAC9C,kDAAkD;AAClD,cAAc;AACd,EAAE;AACF,iDAAiD;AACjD,mCAAmC;AACnC,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,oDAAoD;AACpD,oDAAoD;AACpD,sCAAsC;AACtC,EAAE;AACF,8CAA8C;AAC9C,8CAA8C;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAW1D,MAAM,CAAC,MAAM,OAAO,GAAsB,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;AAEzE,kCAAkC;AAClC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAc,EAAE,CAAU,EAAsB,EAAE,CAC7E,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS;IAC3B,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,kCAAkC;QAC1E,CAAC,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,sBAAsB;YACrE,CAAC,CAAC,SAAS,CAAC;AAgGpB;kDACkD;AAClD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAChC,qDAAqD;AACrD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC;AAC/B,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C,MAAM,KAAK,GAAG,GAAW,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAE3D;uBACuB;AACvB,MAAM,SAAS,GAAG,CAAC,GAA8B,EAA6B,EAAE;IAC9E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC;IAC3C,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,CAAC,CAAY,EAAW,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;IAC7G,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CACxG,CAAC;AACJ,CAAC,CAAC;AAOF,8CAA8C;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,CAAY,EAAe,EAAE;IACpE,MAAM,EAAE,GAAG,CAAC,GAAc,EAAE,IAAyB,EAAe,EAAE;QACpE,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5E,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,CAAC,CAAC;IACF,OAAO,EAAE,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC;AACF,iBAAiB;AACjB,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,CAAY,EAAU,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;AAC7F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAyB,EAAE,EAAU,EAAe,EAAE,CAC/E,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE7E,gDAAgD;AAChD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAyB,EAA8B,EAAE;IACjF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,CAAC,CAAY,EAAE,CAAS,EAA8B,EAAE,CACnE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,OAAO,GAAG;SACP,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SAC9C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;SACvC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,CAAC,EAAa,EAAc,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,MAAM,CAAC;AAIhE,oCAAoC;AACpC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAY,EAAE,GAAyB,EAAE,IAAgB,EAAY,EAAE;IAC9F,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC3C,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IACjD,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,aAAa,CAAC,CAAC;IAChE,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC;QAC3D,IAAI,IAAI,EAAE,OAAO,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;QAC/C,IAAI,IAAI,EAAE,OAAO;YAAE,OAAO,SAAS,CAAC;QACpC,IAAI,MAAM;YAAE,OAAO,SAAS,CAAC;QAC7B,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvF,+CAA+C;QAC/C,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACnF,CAAC;IACD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,MAAM;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,UAAU,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC;IAC7F,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC;IACtE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO;QAC9C,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ;YAC9C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1C,CAAC,CAAC;AAEF,MAAM,OAAO,GAAyC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACjH,wEAAwE;AACxE,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAyB,EAAE,MAAc,EAAU,EAAE,CAC5E,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC;KACnC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACd,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,MAAM,CAAC,EAAE,CAAC;CACvG,CAAC;KACD,IAAI,CAAC,KAAK,CAAC,CAAC;AAEjB,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAyB,EAAE,KAAa,EAAE,IAAgB,EAAyC,EAAE,CAClI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,SAAS,CAAC;KAC7F,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAEnH,qEAAqE;AACrE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAyB,EAAE,KAAa,EAAE,IAAgB,EAA6C,EAAE,CACpI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,SAAS,CAAC;KAC7F,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,MAAM,CAAC,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AAE7G,+DAA+D;AAE/D,MAAM,IAAI,GAAG,QAAQ,CAAC;AACtB,kCAAkC;AAClC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC;AAC9B,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC;AAE7B,6DAA6D;AAC7D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,WAAmB,EAAE,KAAqC,EAAU,EAAE,CAChG,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI;IAC1E,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI;QACtC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;AAEjC,kDAAkD;AAClD,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAU,EAAE;IAC5C,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvB,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC,GAAG,UAAU;QAAE,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,IAAI,UAAU;QAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;AACrB,CAAC,CAAC;AAEF,wBAAwB;AACxB,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,WAAmB,EAAE,KAAgD,EAAE,GAAW,EAAW,EAAE,CACtH,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;AAEnD,4CAA4C;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAyB,EAAE,KAAa,EAAe,EAAE,CACpF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AAE5F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAY,EAAE;IACzD,MAAM,EAAE,GAAG,WAAW,CAAY,QAAQ,EAAE,SAAS,CAAC,CAAC;IACvD,OAAO;QACL,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;YAC1G,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,IAAI,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACvZ,CAAC;QACD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;YACZ,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,IAAI,CAAC,CAAC;gBAAE,OAAO,SAAS,CAAC;YACzB,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACjC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAC5B,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACpE,CAAC;QACD,GAAG,EAAE,EAAE,CAAC,GAAG;QACX,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,GAAG,MAAM,EAAE,EAAE;YACpC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,MAAM,IAAI,GAAG,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;YAChE,yDAAyD;YACzD,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,cAAc,CAAC;gBAAE,OAAO,SAAS,CAAC;YACjG,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC;YACjE,gDAAgD;YAChD,wBAAwB;YACxB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,EAAE,MAAM,CAAC;YAC7C,iFAAiF;YACjF,gDAAgD;YAChD,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,CAAC;YACtE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC;YAC1C,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7D,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;QACjO,CAAC;QACD,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;YACzC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;gBAAE,OAAO,SAAS,CAAC;YAC7G,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE;gBAChB,GAAG,CAAC;gBACJ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACjJ,CAAC,CAAC;QACL,CAAC;QACD,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;YACZ,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC;QACpH,CAAC;QACD,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtM,CAAC;QACD,IAAI,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YAClB,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,IAAI,CAAC,CAAC;gBAAE,OAAO,SAAS,CAAC;YACzB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;YAChC,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1F,CAAC;QACD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CACjB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAC9F,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACvB,GAAG,CAAC;YACJ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,UAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAChH,CAAC,CAAC,EAAE,CAAC;QACV,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CACf,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QACvH,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;KACnC,CAAC;AACJ,CAAC,CAAC;AAEF;iEACiE;AACjE,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,GAAc,EACd,CAA0F,EAC9E,EAAE,CAAC,CAAC;IAChB,EAAE,EAAE,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE;IAC9B,IAAI,EAAE,KAAK;IACX,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;IACzB,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,IAAI;IACZ,GAAG,EAAE,GAAG,CAAC,EAAE;IACX,KAAK,EAAE,GAAG,CAAC,KAAK;IAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;IACtB,IAAI,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;IACvB,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAChC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC;QACzB,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC;QACvB,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7D,CAAC,CAAC;CACJ,CAAC,CAAC"}
|