@sentry/warden 0.42.0 → 0.43.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/args.d.ts +1 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/help.js +1 -1
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/output/tasks.d.ts.map +1 -1
- package/dist/cli/output/tasks.js +13 -5
- package/dist/cli/output/tasks.js.map +1 -1
- package/dist/config/schema.d.ts +4 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/output/dedup.d.ts +12 -35
- package/dist/output/dedup.d.ts.map +1 -1
- package/dist/output/dedup.js +49 -143
- package/dist/output/dedup.js.map +1 -1
- package/dist/output/renderer.js +1 -1
- package/dist/output/renderer.js.map +1 -1
- package/dist/sdk/analyze.d.ts.map +1 -1
- package/dist/sdk/analyze.js +38 -7
- package/dist/sdk/analyze.js.map +1 -1
- package/dist/sdk/circuit-breaker.d.ts +7 -1
- package/dist/sdk/circuit-breaker.d.ts.map +1 -1
- package/dist/sdk/circuit-breaker.js +15 -1
- package/dist/sdk/circuit-breaker.js.map +1 -1
- package/dist/sdk/errors.d.ts +13 -0
- package/dist/sdk/errors.d.ts.map +1 -1
- package/dist/sdk/errors.js +4 -0
- package/dist/sdk/errors.js.map +1 -1
- package/dist/sdk/otel.d.ts +2 -2
- package/dist/sdk/otel.d.ts.map +1 -1
- package/dist/sdk/otel.js +6 -3
- package/dist/sdk/otel.js.map +1 -1
- package/dist/sdk/runtimes/claude.d.ts.map +1 -1
- package/dist/sdk/runtimes/claude.js +1 -0
- package/dist/sdk/runtimes/claude.js.map +1 -1
- package/dist/sdk/runtimes/pi.d.ts.map +1 -1
- package/dist/sdk/runtimes/pi.js +11 -12
- package/dist/sdk/runtimes/pi.js.map +1 -1
- package/dist/sdk/runtimes/types.d.ts +2 -0
- package/dist/sdk/runtimes/types.d.ts.map +1 -1
- package/dist/sdk/types.d.ts +2 -2
- package/dist/sdk/types.d.ts.map +1 -1
- package/package.json +3 -3
package/dist/output/dedup.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createHash } from 'node:crypto';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { findingLine } from '../types/index.js';
|
|
4
|
+
import { escapeHtml } from '../utils/index.js';
|
|
4
5
|
import { getRuntime } from '../sdk/runtimes/index.js';
|
|
5
6
|
import { applyMergeGroups, canUseRuntimeAuth } from '../sdk/extract.js';
|
|
6
7
|
import { buildJsonOutputSection, formatIndexedFindingsForPrompt, joinPromptSections, } from '../sdk/prompt-sections.js';
|
|
@@ -19,8 +20,10 @@ export function generateContentHash(title, description) {
|
|
|
19
20
|
export function generateMarker(path, line, contentHash) {
|
|
20
21
|
return `<!-- warden:v1:${path}:${line}:${contentHash} -->`;
|
|
21
22
|
}
|
|
23
|
+
/** Generate the hidden metadata marker embedded in Warden comments. */
|
|
22
24
|
export function generateFindingMetadata(finding) {
|
|
23
25
|
const metadata = {
|
|
26
|
+
id: finding.id,
|
|
24
27
|
severity: finding.severity,
|
|
25
28
|
confidence: finding.confidence,
|
|
26
29
|
};
|
|
@@ -48,6 +51,7 @@ export function parseMarker(body) {
|
|
|
48
51
|
contentHash,
|
|
49
52
|
};
|
|
50
53
|
}
|
|
54
|
+
/** Parse and validate a Warden finding metadata marker. */
|
|
51
55
|
export function parseWardenFindingMetadata(body) {
|
|
52
56
|
const match = body.match(/<!-- warden:finding:v1:([A-Za-z0-9_-]+) -->/);
|
|
53
57
|
const encoded = match?.[1];
|
|
@@ -55,6 +59,9 @@ export function parseWardenFindingMetadata(body) {
|
|
|
55
59
|
return null;
|
|
56
60
|
try {
|
|
57
61
|
const parsed = JSON.parse(Buffer.from(encoded, 'base64url').toString('utf8'));
|
|
62
|
+
const id = parsed.id;
|
|
63
|
+
if (id !== undefined && typeof id !== 'string')
|
|
64
|
+
return null;
|
|
58
65
|
const severity = parsed.severity;
|
|
59
66
|
if (severity !== 'high' && severity !== 'medium' && severity !== 'low')
|
|
60
67
|
return null;
|
|
@@ -65,7 +72,7 @@ export function parseWardenFindingMetadata(body) {
|
|
|
65
72
|
confidence !== 'low') {
|
|
66
73
|
return null;
|
|
67
74
|
}
|
|
68
|
-
return { severity, confidence };
|
|
75
|
+
return { id, severity, confidence };
|
|
69
76
|
}
|
|
70
77
|
catch {
|
|
71
78
|
return null;
|
|
@@ -119,156 +126,55 @@ function fallbackCommentTitle(body, commentId) {
|
|
|
119
126
|
}
|
|
120
127
|
return truncateText(description, 80);
|
|
121
128
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
129
|
+
const FINDING_ID_PATTERN = '[^<\\r\\n]+';
|
|
130
|
+
const SKILL_LIST_PATTERN = '[^<\\r\\n]+?';
|
|
131
|
+
const CURRENT_FOOTER_PATTERN = new RegExp(`<sub>Identified by Warden · (${SKILL_LIST_PATTERN})(?: · (${FINDING_ID_PATTERN}))?</sub>`);
|
|
132
|
+
const PRIOR_FOOTER_PATTERN = new RegExp(`<sub>Identified by Warden (${SKILL_LIST_PATTERN})(?: · (${FINDING_ID_PATTERN}))?</sub>`);
|
|
133
|
+
function decodeFooterValue(value) {
|
|
134
|
+
return value.replaceAll('<', '<').replaceAll('>', '>').replaceAll('&', '&');
|
|
135
|
+
}
|
|
136
|
+
function parseSkillList(value) {
|
|
137
|
+
return value.split(',').map((skill) => decodeFooterValue(skill.trim()));
|
|
138
|
+
}
|
|
139
|
+
function parseWardenFooter(body) {
|
|
140
|
+
const currentMatch = body.match(CURRENT_FOOTER_PATTERN);
|
|
141
|
+
// TODO(2026-08-01): Remove PRIOR_FOOTER_PATTERN after comments using it have aged out.
|
|
142
|
+
const match = currentMatch ?? body.match(PRIOR_FOOTER_PATTERN);
|
|
143
|
+
const fullMatch = match?.[0];
|
|
144
|
+
const skillList = match?.[1];
|
|
145
|
+
if (!fullMatch || !skillList)
|
|
146
|
+
return null;
|
|
147
|
+
// Do not reinterpret historical bracket, backtick, or `via` footers as the prior plain format.
|
|
148
|
+
if (!currentMatch && (/^via\s+`/.test(skillList) || /^\[[^\]]+\](?:,\s*\[[^\]]+\])*$/.test(skillList))) {
|
|
149
|
+
return null;
|
|
132
150
|
}
|
|
133
|
-
|
|
134
|
-
|
|
151
|
+
return {
|
|
152
|
+
fullMatch,
|
|
153
|
+
skills: parseSkillList(skillList),
|
|
154
|
+
findingId: match[2] ? decodeFooterValue(match[2]) : undefined,
|
|
155
|
+
};
|
|
135
156
|
}
|
|
136
|
-
/**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
* legacy formats: backtick (Identified by Warden `skill`), bracket
|
|
140
|
-
* (<sub>Identified by Warden [skill]</sub>), via
|
|
141
|
-
* (<sub>Identified by Warden via `skill`</sub>), old
|
|
142
|
-
* (<sub>warden: skill</sub>).
|
|
143
|
-
*/
|
|
144
|
-
export function isWardenComment(body) {
|
|
145
|
-
return (body.includes('<sub>Identified by Warden ') ||
|
|
146
|
-
body.includes('Identified by Warden `') ||
|
|
147
|
-
body.includes('<sub>warden:') ||
|
|
148
|
-
body.includes('<!-- warden:v1:'));
|
|
157
|
+
/** Parse the finding ID from hidden metadata or a supported transitional footer. */
|
|
158
|
+
export function parseWardenFindingId(body) {
|
|
159
|
+
return parseWardenFindingMetadata(body)?.id ?? parseWardenFooter(body)?.findingId;
|
|
149
160
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
.map((s) => s.trim())
|
|
154
|
-
.filter(Boolean);
|
|
161
|
+
/** Check if a comment body is a supported Warden comment. */
|
|
162
|
+
export function isWardenComment(body) {
|
|
163
|
+
return body.includes('<!-- warden:v1:') || parseWardenFooter(body) !== null;
|
|
155
164
|
}
|
|
156
|
-
/**
|
|
157
|
-
* Parse skill names from a Warden comment's attribution line.
|
|
158
|
-
* Supports five formats:
|
|
159
|
-
* - Current: "<sub>Identified by Warden skill1, skill2 · id</sub>"
|
|
160
|
-
* - Legacy backtick: "Identified by Warden `skill1`, `skill2` · id"
|
|
161
|
-
* - Legacy bracket: "<sub>Identified by Warden [skill1], [skill2] · id</sub>"
|
|
162
|
-
* - Legacy via: "<sub>Identified by Warden via `skill1`, `skill2` · severity</sub>"
|
|
163
|
-
* - Legacy old: "<sub>warden: skill1, skill2</sub>"
|
|
164
|
-
*/
|
|
165
|
+
/** Parse skill names from a supported Warden attribution footer. */
|
|
165
166
|
export function parseWardenSkills(body) {
|
|
166
|
-
|
|
167
|
-
const plainSubMatch = body.match(/<sub>Identified by Warden (?!via\s)([^`[\]<]+?)(?:\s*·|<\/sub>)/);
|
|
168
|
-
if (plainSubMatch?.[1]) {
|
|
169
|
-
const skills = parsePlainSkillList(plainSubMatch[1]);
|
|
170
|
-
if (skills.length > 0)
|
|
171
|
-
return skills;
|
|
172
|
-
}
|
|
173
|
-
// Try legacy backtick format (no "via"): Identified by Warden `skill1`, `skill2` · id
|
|
174
|
-
const backtickMatch = body.match(/Identified by Warden ((?:`[^`]+`(?:, )?)+)/);
|
|
175
|
-
if (backtickMatch?.[1]) {
|
|
176
|
-
const skills = [...backtickMatch[1].matchAll(/`([^`]+)`/g)]
|
|
177
|
-
.map((m) => m[1])
|
|
178
|
-
.filter((s) => s !== undefined);
|
|
179
|
-
if (skills.length > 0)
|
|
180
|
-
return skills;
|
|
181
|
-
}
|
|
182
|
-
// Try legacy bracket format: <sub>Identified by Warden [skill1], [skill2] · id</sub>
|
|
183
|
-
const bracketMatch = body.match(/<sub>Identified by Warden ((?:\[[^\]]+\](?:, )?)+)/);
|
|
184
|
-
if (bracketMatch?.[1]) {
|
|
185
|
-
const skills = [...bracketMatch[1].matchAll(/\[([^\]]+)\]/g)]
|
|
186
|
-
.map((m) => m[1])
|
|
187
|
-
.filter((s) => s !== undefined);
|
|
188
|
-
if (skills.length > 0)
|
|
189
|
-
return skills;
|
|
190
|
-
}
|
|
191
|
-
// Try legacy via format: <sub>Identified by Warden via `skill1`, `skill2` · severity</sub>
|
|
192
|
-
const viaMatch = body.match(/<sub>Identified by Warden via ([^·<]+)/);
|
|
193
|
-
if (viaMatch?.[1]) {
|
|
194
|
-
const skills = [...viaMatch[1].matchAll(/`([^`]+)`/g)]
|
|
195
|
-
.map((m) => m[1])
|
|
196
|
-
.filter((s) => s !== undefined);
|
|
197
|
-
if (skills.length > 0)
|
|
198
|
-
return skills;
|
|
199
|
-
}
|
|
200
|
-
// Fall back to legacy old format: <sub>warden: skill1, skill2</sub>
|
|
201
|
-
const oldMatch = body.match(/<sub>warden:\s*([^<]+)<\/sub>/);
|
|
202
|
-
if (!oldMatch?.[1]) {
|
|
203
|
-
return [];
|
|
204
|
-
}
|
|
205
|
-
return oldMatch[1]
|
|
206
|
-
.split(',')
|
|
207
|
-
.map((s) => s.trim())
|
|
208
|
-
.filter(Boolean);
|
|
167
|
+
return parseWardenFooter(body)?.skills ?? [];
|
|
209
168
|
}
|
|
210
|
-
/**
|
|
211
|
-
* Update a Warden comment body to add a new skill to the attribution.
|
|
212
|
-
* Current format: Changes "<sub>Identified by Warden skill1 · id</sub>"
|
|
213
|
-
* to "<sub>Identified by Warden skill1, skill2 · id</sub>"
|
|
214
|
-
* Legacy backtick: Changes "Identified by Warden `skill1` · id"
|
|
215
|
-
* to "Identified by Warden `skill1`, `skill2` · id"
|
|
216
|
-
* Legacy bracket: Changes "<sub>Identified by Warden [skill1] · id</sub>"
|
|
217
|
-
* to "<sub>Identified by Warden [skill1], [skill2] · id</sub>"
|
|
218
|
-
* Legacy via: Changes "<sub>Identified by Warden via `skill1` · severity</sub>"
|
|
219
|
-
* to "<sub>Identified by Warden via `skill1`, `skill2` · severity</sub>"
|
|
220
|
-
* Legacy old: Changes "<sub>warden: skill1</sub>" to "<sub>warden: skill1, skill2</sub>"
|
|
221
|
-
* Returns null if skill is already listed or if no attribution tag exists.
|
|
222
|
-
*/
|
|
169
|
+
/** Add a skill to a supported Warden attribution footer. */
|
|
223
170
|
export function updateWardenCommentBody(body, newSkill) {
|
|
224
|
-
const
|
|
225
|
-
|
|
226
|
-
if (existingSkills.length === 0) {
|
|
171
|
+
const footer = parseWardenFooter(body);
|
|
172
|
+
if (!footer || footer.skills.includes(newSkill))
|
|
227
173
|
return null;
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
}
|
|
233
|
-
// Check if it's the current muted format: <sub>Identified by Warden skill · id</sub>
|
|
234
|
-
const plainSubFormatMatch = body.match(/<sub>Identified by Warden (?!via\s)[^`[\]<]+<\/sub>/);
|
|
235
|
-
if (plainSubFormatMatch) {
|
|
236
|
-
const allSkills = [...existingSkills, newSkill].join(', ');
|
|
237
|
-
const subTagMatch = body.match(/<sub>Identified by Warden (?!via\s)([^<]*?)(\s*·[^<]*)?<\/sub>/);
|
|
238
|
-
const suffix = subTagMatch?.[2] || '';
|
|
239
|
-
return body.replace(/<sub>Identified by Warden (?!via\s)[^<]+<\/sub>/, () => `<sub>Identified by Warden ${allSkills}${suffix}</sub>`);
|
|
240
|
-
}
|
|
241
|
-
// Check if it's the legacy backtick format (no <sub>, no "via"): Identified by Warden `skill` · id
|
|
242
|
-
const backtickFormatMatch = body.match(/Identified by Warden `[^`]+`/) && !body.includes('<sub>Identified by Warden');
|
|
243
|
-
if (backtickFormatMatch) {
|
|
244
|
-
const existingSkillsFormatted = existingSkills.map((s) => `\`${s}\``).join(', ');
|
|
245
|
-
const lineMatch = body.match(/Identified by Warden ((?:`[^`]+`(?:, )?)+)(.*)/);
|
|
246
|
-
const suffix = lineMatch?.[2] || '';
|
|
247
|
-
return body.replace(/Identified by Warden (?:`[^`]+`(?:, )?)+.*/, () => `Identified by Warden ${existingSkillsFormatted}, \`${newSkill}\`${suffix}`);
|
|
248
|
-
}
|
|
249
|
-
// Check if it's the legacy bracket format: <sub>Identified by Warden [skill] · id</sub>
|
|
250
|
-
const bracketFormatMatch = body.match(/<sub>Identified by Warden \[[^\]]+\]/);
|
|
251
|
-
if (bracketFormatMatch) {
|
|
252
|
-
const existingSkillsFormatted = existingSkills.map((s) => `[${s}]`).join(', ');
|
|
253
|
-
const subTagMatch = body.match(/<sub>Identified by Warden ((?:\[[^\]]+\](?:, )?)+)(.*?)<\/sub>/);
|
|
254
|
-
const suffix = subTagMatch?.[2] || '';
|
|
255
|
-
return body.replace(/<sub>Identified by Warden [^<]+<\/sub>/, () => `<sub>Identified by Warden ${existingSkillsFormatted}, [${newSkill}]${suffix}</sub>`);
|
|
256
|
-
}
|
|
257
|
-
// Check if it's the legacy via format
|
|
258
|
-
const viaFormatMatch = body.match(/<sub>Identified by Warden via `[^`]+`/);
|
|
259
|
-
if (viaFormatMatch) {
|
|
260
|
-
const existingSkillsFormatted = existingSkills.map((s) => `\`${s}\``).join(', ');
|
|
261
|
-
// Extract the suffix (metadata) starting from the · separator, not from the skill list
|
|
262
|
-
const subTagMatch = body.match(/<sub>Identified by Warden via ([^<]+)<\/sub>/);
|
|
263
|
-
const fullContent = subTagMatch?.[1] || '';
|
|
264
|
-
const separatorIndex = fullContent.indexOf(' · ');
|
|
265
|
-
const suffix = separatorIndex >= 0 ? fullContent.slice(separatorIndex) : '';
|
|
266
|
-
return body.replace(/<sub>Identified by Warden via [^<]+<\/sub>/, () => `<sub>Identified by Warden via ${existingSkillsFormatted}, \`${newSkill}\`${suffix}</sub>`);
|
|
267
|
-
}
|
|
268
|
-
// Legacy old format: <sub>warden: skill1, skill2</sub>
|
|
269
|
-
const allSkills = [...existingSkills, newSkill].join(', ');
|
|
270
|
-
// Use a replacer function to avoid special $ character interpretation in skill names
|
|
271
|
-
return body.replace(/<sub>warden:\s*[^<]+<\/sub>/, () => `<sub>warden: ${allSkills}</sub>`);
|
|
174
|
+
const skills = [...footer.skills, newSkill].map(escapeHtml).join(', ');
|
|
175
|
+
const findingId = parseWardenFindingMetadata(body)?.id ?? footer.findingId;
|
|
176
|
+
const idSuffix = findingId ? ` · ${escapeHtml(findingId)}` : '';
|
|
177
|
+
return body.replace(footer.fullMatch, () => `<sub>Identified by Warden · ${skills}${idSuffix}</sub>`);
|
|
272
178
|
}
|
|
273
179
|
const REVIEW_THREADS_QUERY = `
|
|
274
180
|
query($owner: String!, $repo: String!, $prNumber: Int!, $cursor: String) {
|
package/dist/output/dedup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dedup.js","sourceRoot":"","sources":["../../src/output/dedup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAExE,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,kBAAkB,GACnB,MAAM,2BAA2B,CAAC;AA2EnC;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa,EAAE,WAAmB;IACpE,MAAM,OAAO,GAAG,GAAG,KAAK,KAAK,WAAW,EAAE,CAAC;IAC3C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,IAAY,EAAE,WAAmB;IAC5E,OAAO,kBAAkB,IAAI,IAAI,IAAI,IAAI,WAAW,MAAM,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAiD;IACvF,MAAM,QAAQ,GAAG;QACf,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC;IACF,OAAO,0BAA0B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;AAC7G,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACzE,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAE7B,+FAA+F;IAC/F,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC3B,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,IAAY;IACrD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAE1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAqB,CAAC;QAClG,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,KAAK;YAAE,OAAO,IAAI,CAAC;QAEpF,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACrC,IACE,UAAU,KAAK,SAAS;YACxB,UAAU,KAAK,MAAM;YACrB,UAAU,KAAK,QAAQ;YACvB,UAAU,KAAK,KAAK,EACpB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,0DAA0D;IAC1D,6DAA6D;IAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAChE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+DAA+D;IAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAErE,uEAAuE;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAChE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAEnE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAEzD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,yBAAyB,CAAC,IAAY;IAC7C,OAAO,IAAI;SACR,UAAU,CAAC,+BAA+B,EAAE,GAAG,CAAC;SAChD,UAAU,CAAC,kBAAkB,EAAE,GAAG,CAAC;SACnC,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC;SAC3B,UAAU,CAAC,uBAAuB,EAAE,GAAG,CAAC;SACxC,UAAU,CAAC,wBAAwB,EAAE,IAAI,CAAC;SAC1C,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;SAC9B,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC;SACvB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,SAAiB;IACpD,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC;AACzD,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAY;IAC9C,OAAO,YAAY,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,SAAiB;IAC3D,MAAM,WAAW,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,kBAAkB,SAAS,EAAE,CAAC;IACvC,CAAC;IAED,OAAO,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACzG,IAAI,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC3E,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QAClD,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;IACpB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAC7E,OAAO,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QACvC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK;SACT,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,gFAAgF;IAChF,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACpG,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IACvC,CAAC;IAED,sFAAsF;IACtF,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC/E,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;aACxD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IACvC,CAAC;IAED,qFAAqF;IACrF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACtF,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;aAC1D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IACvC,CAAC;IAED,2FAA2F;IAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACtE,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;aACnD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;QAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IACvC,CAAC;IAED,oEAAoE;IACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,QAAQ,CAAC,CAAC,CAAC;SACf,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY,EAAE,QAAgB;IACpE,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE/C,4DAA4D;IAC5D,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uCAAuC;IACvC,IAAI,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qFAAqF;IACrF,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAC9F,IAAI,mBAAmB,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,CAAC,GAAG,cAAc,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACjG,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CACjB,iDAAiD,EACjD,GAAG,EAAE,CAAC,6BAA6B,SAAS,GAAG,MAAM,QAAQ,CAC9D,CAAC;IACJ,CAAC;IAED,mGAAmG;IACnG,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IACtH,IAAI,mBAAmB,EAAE,CAAC;QACxB,MAAM,uBAAuB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,OAAO,CACjB,4CAA4C,EAC5C,GAAG,EAAE,CAAC,wBAAwB,uBAAuB,OAAO,QAAQ,KAAK,MAAM,EAAE,CAClF,CAAC;IACJ,CAAC;IAED,wFAAwF;IACxF,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC9E,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,uBAAuB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACjG,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CACjB,wCAAwC,EACxC,GAAG,EAAE,CAAC,6BAA6B,uBAAuB,MAAM,QAAQ,IAAI,MAAM,QAAQ,CAC3F,CAAC;IACJ,CAAC;IAED,sCAAsC;IACtC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3E,IAAI,cAAc,EAAE,CAAC;QACnB,MAAM,uBAAuB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjF,uFAAuF;QACvF,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC,OAAO,CACjB,4CAA4C,EAC5C,GAAG,EAAE,CAAC,iCAAiC,uBAAuB,OAAO,QAAQ,KAAK,MAAM,QAAQ,CACjG,CAAC;IACJ,CAAC;IAED,uDAAuD;IACvD,MAAM,SAAS,GAAG,CAAC,GAAG,cAAc,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,qFAAqF;IACrF,OAAO,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,GAAG,EAAE,CAAC,gBAAgB,SAAS,QAAQ,CAAC,CAAC;AAC9F,CAAC;AAoCD,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiC5B,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAgB,EAChB,KAAa,EACb,IAAY,EACZ,QAAgB;IAEhB,MAAM,QAAQ,GAAsB,EAAE,CAAC;IAEvC,wDAAwD;IACxD,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,WAAW,GAAG,IAAI,CAAC;IAEvB,OAAO,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAA0B,MAAM,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;YAClF,KAAK;YACL,IAAI;YACJ,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;QACrD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,kCAAkC;YAClC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,aAAa,CAAC;QAE1C,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACnC,sCAAsC;YACtC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACvE,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAExF,wDAAwD;YACxD,2EAA2E;YAC3E,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,oBAAoB,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;YAChG,MAAM,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,0BAA0B,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAEzF,QAAQ,CAAC,IAAI,CAAC;gBACZ,EAAE,EAAE,YAAY,CAAC,UAAU;gBAC3B,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,YAAY,CAAC,IAAI;gBACvC,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC,YAAY,IAAI,CAAC;gBACzE,KAAK;gBACL,WAAW;gBACX,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBACzE,WAAW,EAAE,MAAM,EAAE,WAAW,IAAI,mBAAmB,CAAC,KAAK,EAAE,WAAW,CAAC;gBAC3E,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,QAAQ;gBACR,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBACnE,QAAQ,EAAE,eAAe,EAAE,QAAQ;gBACnC,UAAU,EAAE,eAAe,EAAE,UAAU;gBACvC,IAAI,EAAE,YAAY,CAAC,IAAI;gBACvB,aAAa,EAAE,YAAY,CAAC,EAAE;gBAC9B,KAAK,EAAE,YAAY,CAAC,MAAM,EAAE,KAAK;gBACjC,iBAAiB,EAAE,YAAY,CAAC,cAAc,EAAE,GAAG;aACpD,CAAC,CAAC;QACL,CAAC;QAED,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC3C,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;IACtC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,OAAgB,EAChB,KAAa,EACb,IAAY,EACZ,QAAgB;IAEhB,MAAM,WAAW,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAChF,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC/C,CAAC;AAED,4EAA4E;AAC5E,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CACpC,CAAC,CAAC,MAAM,CAAC;IACP,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;IAC9B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAChC,CAAC,CACH,CAAC;AAUF;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CACnC,QAAmB,EACnB,gBAAmC,EACnC,MAA0B,EAC1B,UAAyF,EAAE;IAE3F,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IAChC,CAAC;IAED,MAAM,YAAY,GAAG,gBAAgB;SAClC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;SAChF,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAAC;IAE9D,MAAM,MAAM,GAAG,kBAAkB,CAAC;QAChC;;QAEI;QACJ;EACF,YAAY;qBACO;QACjB;EACF,YAAY;gBACE;QACZ;;;;uBAImB;QACnB,sBAAsB,CAAC;;kCAEO,CAAC;KAChC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,YAAY,CAAC;QACxE,IAAI,EAAE,eAAe;QACrB,SAAS,EAAE,OAAO,CAAC,YAAY;QAC/B,MAAM;QACN,MAAM;QACN,MAAM,EAAE,sBAAsB;QAC9B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,GAAG;QACd,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,wDAAwD,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACrF,OAAO,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IACrD,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;QAC3D,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;AAC1C,CAAC;AAiBD,MAAM,qBAAqB,GAAG;;;;;;;;CAQ7B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAgB,EAChB,KAAa,EACb,IAAY,EACZ,SAAiB,EACjB,OAAe;IAEf,MAAM,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;QACtC,KAAK;QACL,IAAI;QACJ,UAAU,EAAE,SAAS;QACrB,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAgB,EAChB,aAAqB,EACrB,WAAiC,MAAM;IAEvC,MAAM,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE;QAC3C,SAAS,EAAE,aAAa;QACxB,OAAO,EAAE,QAAQ;KAClB,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAgB,EAChB,KAAa,EACb,IAAY,EACZ,OAA0B,EAC1B,YAAoB;IAEpB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;oBACjC,OAAO,EAAE,CAAC;oBACV,SAAS;gBACX,CAAC;gBACD,MAAM,OAAO,GAAG,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;gBACnF,qEAAqE;gBACrE,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;oBACpF,uEAAuE;oBACvE,MAAM,CAAC,eAAe,CAAC,IAAI,GAAG,OAAO,CAAC;oBACtC,OAAO,EAAE,CAAC;gBACZ,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAC5C,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;oBAC1C,OAAO,EAAE,CAAC;oBACV,SAAS;gBACX,CAAC;gBACD,MAAM,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;gBAC1E,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,0CAA0C,MAAM,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC,CAAC;YACzF,MAAM,EAAE,CAAC;QACX,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAAgB,EAAE,KAAc;IACvE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE,2CAA2C;QACnD,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;QAC3B,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS;QAC5D,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,WAAW,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC;QACpE,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;QAC5B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,4BAA4B;AAC5B,gFAAgF;AAEhF,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAY9B,gGAAgG;AAChG,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CACvC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,CAC1B,CAAC;AAEF;;;GAGG;AACH,SAAS,qBAAqB,CAAC,QAAmB;IAChD,qBAAqB;IACrB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAgB,EAAE,CAAC;IAEjC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAE/B,sBAAsB;QACtB,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1E,6EAA6E;QAC7E,4CAA4C;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,OAAO,GAAc,CAAC,KAAK,CAAC,CAAC;QAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACvB,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;gBAAE,SAAS;YAE7B,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,mBAAmB,EAAE,CAAC;gBACjE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;oBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,QAAmB,EACnB,UAA8B,EAAE;IAEhC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,WAAW,GAAc,EAAE,CAAC;IAClC,MAAM,mBAAmB,GAAc,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,mBAAmB,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QAEtC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IAE9D,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,gBAAgB,gBAAgB,gDAAgD,CAAC,CAAC;IAChG,CAAC;IAED,8BAA8B;IAC9B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAEpD,6FAA6F;IAC7F,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7E,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC;IACzG,CAAC;IAED,oDAAoD;IACpD,yEAAyE;IACzE,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,8BAA8B,CAAC,aAAa,EAAE;QACjE,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,kBAAkB,CAAC;QAChC;;QAEI;QACJ;EACF,YAAY;YACF;QACR;;;;uBAImB;QACnB,sBAAsB,CAAC,qEAAqE,CAAC;KAC9F,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,YAAY,CAAC;QACxE,IAAI,EAAE,eAAe;QACrB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM;QACN,MAAM,EAAE,yBAAyB;QACjC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,GAAG;QACd,UAAU,EAAE,OAAO,CAAC,UAAU;KAC/B,CAAC,CAAC;IAEH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,yDAAyD,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACtF,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9H,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAEhF,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9H,CAAC;IAED,MAAM,YAAY,GAAG,WAAW;SAC7B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC;IAEtD,OAAO,CAAC,GAAG,CAAC,gBAAgB,QAAQ,CAAC,IAAI,2CAA2C,CAAC,CAAC;IAEtF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,CAAC,GAAG,mBAAmB,EAAE,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;AAC7I,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAAmB,EACnB,gBAAmC,EACnC,UAA8B,EAAE;IAEhC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,mEAAmE;IACnE,MAAM,aAAa,GAAG,IAAI,GAAG,EAA2B,CAAC;IACzD,MAAM,WAAW,GAAG,IAAI,GAAG,EAA2B,CAAC;IACvD,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACnD,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACf,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,MAAM,mBAAmB,GAAc,EAAE,CAAC;IAC1C,MAAM,gBAAgB,GAAsB,EAAE,CAAC;IAE/C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,SAAS,IAAI,CAAC,CAAC;QAC3E,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QAEtC,IAAI,eAAe,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE7C,qFAAqF;QACrF,uFAAuF;QACvF,6EAA6E;QAC7E,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACpD,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,CAAC;gBAC9C,MAAM,OAAO,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;gBAClD,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,WAAW,EAAE,CAAC;oBAChB,eAAe,GAAG,WAAW,CAAC;oBAC9B,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,gBAAgB,GAAG,eAAe,CAAC,QAAQ,IAAI,eAAe,CAAC,SAAS;gBAC5E,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,eAAe,CAAC,SAAS,EAAE;gBAC/C,CAAC,CAAC,OAAO,CAAC;YACZ,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB;gBACnE,iBAAiB,EAAE,OAAO,CAAC,EAAE;gBAC7B,OAAO,EAAE,gBAAgB;gBACzB,eAAe,EAAE,eAAe;gBAChC,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,UAAU,gBAAgB,CAAC,MAAM,mCAAmC,CAAC,CAAC;IACpF,CAAC;IAED,2EAA2E;IAC3E,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,CAAC;IAChE,CAAC;IAED,8DAA8D;IAC9D,MAAM,cAAc,GAAG,MAAM,sBAAsB,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEpH,IAAI,cAAc,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,UAAU,cAAc,CAAC,OAAO,CAAC,IAAI,oDAAoD,CAAC,CAAC;IACzG,CAAC;IAED,MAAM,WAAW,GAAc,EAAE,CAAC;IAClC,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE,CAAC;QAC1C,MAAM,eAAe,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/D,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,gBAAgB,GAAG,eAAe,CAAC,QAAQ,IAAI,eAAe,CAAC,SAAS;gBAC5E,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,eAAe,CAAC,SAAS,EAAE;gBAC/C,CAAC,CAAC,OAAO,CAAC;YACZ,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB;gBACnE,iBAAiB,EAAE,OAAO,CAAC,EAAE;gBAC7B,OAAO,EAAE,gBAAgB;gBACzB,eAAe,EAAE,eAAe;gBAChC,SAAS,EAAE,UAAU;aACtB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC;AAC7E,CAAC"}
|
|
1
|
+
{"version":3,"file":"dedup.js","sourceRoot":"","sources":["../../src/output/dedup.ts"],"names":[],"mappings":"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"}
|
package/dist/output/renderer.js
CHANGED
|
@@ -119,7 +119,7 @@ function renderHiddenFindingsLink(hiddenCount, checkRunUrl) {
|
|
|
119
119
|
}
|
|
120
120
|
function renderAttributionFooter(skill, findingId) {
|
|
121
121
|
const idSuffix = findingId ? ` · ${escapeHtml(findingId)}` : '';
|
|
122
|
-
return `<sub>Identified by Warden ${escapeHtml(skill)}${idSuffix}</sub>`;
|
|
122
|
+
return `<sub>Identified by Warden · ${escapeHtml(skill)}${idSuffix}</sub>`;
|
|
123
123
|
}
|
|
124
124
|
function renderSummaryComment(report, findings, groupByFile, checkRunUrl, hiddenCount) {
|
|
125
125
|
const lines = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/output/renderer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/output/renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/sdk/analyze.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAa,OAAO,EAAe,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/sdk/analyze.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAa,OAAO,EAAe,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAO1E,OAAO,EAA8C,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAM/F,OAAO,EAML,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,KAAK,kBAAkB,EAExB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAsC,MAAM,mBAAmB,CAAC;AACvG,OAAO,KAAK,EAAE,aAAa,EAAqB,MAAM,mBAAmB,CAAC;AAoL1E;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,EAAE,CAAA;CAAE,CAkB7C;AAyBD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,eAAe,EACxB,YAAY,SAAI,GACf,aAAa,GAAG,SAAS,CA4B3B;AA+fD;;GAEG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,EAChC,SAAS,CAAC,EAAE,qBAAqB,EACjC,SAAS,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,kBAAkB,CAAC,CAsH7B;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAgB9E;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAC5B,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,WAAW,CAAC,CA2BtB"}
|
package/dist/sdk/analyze.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { getHunkLineRange } from '../diff/index.js';
|
|
2
2
|
import { Sentry, emitExtractionMetrics, emitRetryMetric, emitSkillMetrics, ensureLocalTracing } from '../sentry.js';
|
|
3
3
|
import { SkillRunnerError, WardenAuthenticationError, isRetryableError, isAuthenticationError, isAuthenticationErrorMessage, isSubprocessError, classifyError, mapExtractionErrorCode, sanitizeErrorMessage } from './errors.js';
|
|
4
|
+
import { genAiProviderName } from './otel.js';
|
|
4
5
|
import { DEFAULT_RETRY_CONFIG, calculateRetryDelay, sleep } from './retry.js';
|
|
5
6
|
import { aggregateUsage, emptyUsage, estimateTokens, aggregateAuxiliaryUsage, aggregateAuxiliaryUsageAttribution } from './usage.js';
|
|
6
7
|
import { buildHunkSystemPrompt, buildHunkUserPrompt } from './prompt.js';
|
|
@@ -37,12 +38,24 @@ function hunkFailureFromCircuit(reason, usage, attempts, trace) {
|
|
|
37
38
|
trace,
|
|
38
39
|
};
|
|
39
40
|
}
|
|
40
|
-
function recordCircuitFailure(options, code, message) {
|
|
41
|
+
function recordCircuitFailure(options, code, message, providerContext) {
|
|
41
42
|
if (!isCircuitBreakerCode(code))
|
|
42
43
|
return undefined;
|
|
43
|
-
options.circuitBreaker?.recordFailure(code, message);
|
|
44
|
+
options.circuitBreaker?.recordFailure(code, message, providerContext, providerContext ? options : undefined);
|
|
44
45
|
return options.circuitBreaker?.reason;
|
|
45
46
|
}
|
|
47
|
+
function providerErrorContext(options, result, message) {
|
|
48
|
+
const model = result.responseModel ?? options.model;
|
|
49
|
+
const runtime = options.runtime ?? 'pi';
|
|
50
|
+
return {
|
|
51
|
+
runtime,
|
|
52
|
+
provider: genAiProviderName(runtime, model, result.responseProvider),
|
|
53
|
+
model,
|
|
54
|
+
status: result.status,
|
|
55
|
+
responseId: result.responseId,
|
|
56
|
+
message: sanitizeErrorMessage(message),
|
|
57
|
+
};
|
|
58
|
+
}
|
|
46
59
|
function allHunksFailedGuidance(runtime) {
|
|
47
60
|
if ((runtime ?? 'pi') === 'pi') {
|
|
48
61
|
return 'Verify Pi has credentials for the selected provider/model, or choose a configured Pi model.';
|
|
@@ -337,7 +350,9 @@ async function analyzeHunk(skill, hunkCtx, repoPath, options, callbacks, prConte
|
|
|
337
350
|
? 'provider_unavailable'
|
|
338
351
|
: 'sdk_error';
|
|
339
352
|
const failureMessage = `Runtime execution failed: ${errorSummary}`;
|
|
340
|
-
const openReason = recordCircuitFailure(options, failureCode, failureMessage
|
|
353
|
+
const openReason = recordCircuitFailure(options, failureCode, failureMessage, failureCode === 'provider_unavailable'
|
|
354
|
+
? providerErrorContext(options, resultMessage, errorSummary)
|
|
355
|
+
: undefined);
|
|
341
356
|
notifyHunkFailed(callbacks, callbacks?.lineRange ?? lineRange, failureMessage);
|
|
342
357
|
if (openReason) {
|
|
343
358
|
return hunkFailureFromCircuit(openReason, accumulatedUsage, attempt + 1, buildHunkTrace({
|
|
@@ -528,7 +543,16 @@ async function analyzeHunk(skill, hunkCtx, repoPath, options, callbacks, prConte
|
|
|
528
543
|
span.setAttribute('warden.finding.count', 0);
|
|
529
544
|
const { code: retryCode, message } = classifyError(lastError);
|
|
530
545
|
const retryMsg = sanitizeErrorMessage(message);
|
|
531
|
-
const openReason = recordCircuitFailure(options, retryCode, retryMsg
|
|
546
|
+
const openReason = recordCircuitFailure(options, retryCode, retryMsg, retryCode === 'provider_unavailable'
|
|
547
|
+
? {
|
|
548
|
+
runtime: runtimeName,
|
|
549
|
+
provider: genAiProviderName(runtimeName, options.model),
|
|
550
|
+
model: options.model,
|
|
551
|
+
status: 'provider_error',
|
|
552
|
+
attempts: retryConfig.maxRetries + 1,
|
|
553
|
+
message: retryMsg,
|
|
554
|
+
}
|
|
555
|
+
: undefined);
|
|
532
556
|
if (openReason) {
|
|
533
557
|
return hunkFailureFromCircuit(openReason, accumulatedUsage, retryConfig.maxRetries + 1, buildHunkTrace({
|
|
534
558
|
enabled: options.captureTraces,
|
|
@@ -715,17 +739,21 @@ export function generateSummary(skillName, findings) {
|
|
|
715
739
|
* Run a skill on a PR, analyzing each hunk separately.
|
|
716
740
|
*/
|
|
717
741
|
export async function runSkill(skill, context, options = {}) {
|
|
742
|
+
// This clone's identity scopes circuit-breaker provider diagnostics to this skill run.
|
|
743
|
+
const scopedOptions = {
|
|
744
|
+
...options,
|
|
745
|
+
};
|
|
718
746
|
return Sentry.startSpan({
|
|
719
747
|
op: 'skill.run',
|
|
720
748
|
name: `run ${skill.name}`,
|
|
721
749
|
attributes: {
|
|
722
750
|
'gen_ai.agent.name': skill.name,
|
|
723
|
-
...(options.
|
|
751
|
+
...(options.triggerName ? { 'warden.trigger.name': options.triggerName } : {}),
|
|
724
752
|
'warden.file.count': context.pullRequest?.files.length ?? 0,
|
|
725
753
|
},
|
|
726
754
|
}, async (span) => {
|
|
727
755
|
try {
|
|
728
|
-
const report = await runSkillAnalysis(skill, context,
|
|
756
|
+
const report = await runSkillAnalysis(skill, context, scopedOptions);
|
|
729
757
|
span.setAttribute('warden.finding.count', report.findings.length);
|
|
730
758
|
emitSkillMetrics(report);
|
|
731
759
|
return report;
|
|
@@ -892,7 +920,10 @@ async function runSkillAnalysis(skill, context, options = {}) {
|
|
|
892
920
|
const totalAttemptFailures = totalFailedHunks + totalFailedExtractions;
|
|
893
921
|
const circuitReason = options.circuitBreaker?.reason;
|
|
894
922
|
if (circuitReason && totalAttemptFailures > 0 && allFindings.length === 0) {
|
|
895
|
-
throw new SkillRunnerError(circuitReason.message, {
|
|
923
|
+
throw new SkillRunnerError(circuitReason.message, {
|
|
924
|
+
code: circuitReason.code,
|
|
925
|
+
providerContext: options.circuitBreaker?.providerContextFor(options),
|
|
926
|
+
});
|
|
896
927
|
}
|
|
897
928
|
if (totalAttemptFailures > 0 && totalAttemptFailures === totalHunks && allFindings.length === 0) {
|
|
898
929
|
const analysisFailures = allHunkFailures.filter((failure) => failure.type === 'analysis');
|