arc-1 0.9.19 → 0.9.21

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.
Files changed (177) hide show
  1. package/README.md +7 -4
  2. package/dist/adt/client.d.ts +29 -1
  3. package/dist/adt/client.d.ts.map +1 -1
  4. package/dist/adt/client.js +72 -3
  5. package/dist/adt/client.js.map +1 -1
  6. package/dist/adt/ddic-xml.d.ts +29 -0
  7. package/dist/adt/ddic-xml.d.ts.map +1 -1
  8. package/dist/adt/ddic-xml.js +112 -1
  9. package/dist/adt/ddic-xml.js.map +1 -1
  10. package/dist/adt/devtools.d.ts +9 -2
  11. package/dist/adt/devtools.d.ts.map +1 -1
  12. package/dist/adt/devtools.js +126 -5
  13. package/dist/adt/devtools.js.map +1 -1
  14. package/dist/adt/diagnostics.d.ts +99 -4
  15. package/dist/adt/diagnostics.d.ts.map +1 -1
  16. package/dist/adt/diagnostics.js +443 -10
  17. package/dist/adt/diagnostics.js.map +1 -1
  18. package/dist/adt/errors.d.ts +13 -1
  19. package/dist/adt/errors.d.ts.map +1 -1
  20. package/dist/adt/errors.js +244 -25
  21. package/dist/adt/errors.js.map +1 -1
  22. package/dist/adt/features.d.ts.map +1 -1
  23. package/dist/adt/features.js +2 -1
  24. package/dist/adt/features.js.map +1 -1
  25. package/dist/adt/gcts.d.ts +3 -3
  26. package/dist/adt/gcts.d.ts.map +1 -1
  27. package/dist/adt/gcts.js +24 -3
  28. package/dist/adt/gcts.js.map +1 -1
  29. package/dist/adt/http.d.ts.map +1 -1
  30. package/dist/adt/http.js +4 -3
  31. package/dist/adt/http.js.map +1 -1
  32. package/dist/adt/transport.d.ts +43 -4
  33. package/dist/adt/transport.d.ts.map +1 -1
  34. package/dist/adt/transport.js +84 -10
  35. package/dist/adt/transport.js.map +1 -1
  36. package/dist/adt/types.d.ts +104 -0
  37. package/dist/adt/types.d.ts.map +1 -1
  38. package/dist/adt/xml-parser.d.ts +37 -0
  39. package/dist/adt/xml-parser.d.ts.map +1 -1
  40. package/dist/adt/xml-parser.js +102 -0
  41. package/dist/adt/xml-parser.js.map +1 -1
  42. package/dist/authz/policy.d.ts.map +1 -1
  43. package/dist/authz/policy.js +11 -1
  44. package/dist/authz/policy.js.map +1 -1
  45. package/dist/cache/cache.d.ts +25 -0
  46. package/dist/cache/cache.d.ts.map +1 -1
  47. package/dist/cache/cache.js.map +1 -1
  48. package/dist/cache/caching-layer.d.ts +31 -2
  49. package/dist/cache/caching-layer.d.ts.map +1 -1
  50. package/dist/cache/caching-layer.js +102 -2
  51. package/dist/cache/caching-layer.js.map +1 -1
  52. package/dist/cache/memory.d.ts +2 -1
  53. package/dist/cache/memory.d.ts.map +1 -1
  54. package/dist/cache/memory.js +46 -0
  55. package/dist/cache/memory.js.map +1 -1
  56. package/dist/cache/sqlite.d.ts +2 -1
  57. package/dist/cache/sqlite.d.ts.map +1 -1
  58. package/dist/cache/sqlite.js +64 -0
  59. package/dist/cache/sqlite.js.map +1 -1
  60. package/dist/cli.js +4 -2
  61. package/dist/cli.js.map +1 -1
  62. package/dist/handlers/context.d.ts.map +1 -1
  63. package/dist/handlers/context.js +27 -4
  64. package/dist/handlers/context.js.map +1 -1
  65. package/dist/handlers/diagnose.d.ts.map +1 -1
  66. package/dist/handlers/diagnose.js +88 -4
  67. package/dist/handlers/diagnose.js.map +1 -1
  68. package/dist/handlers/dispatch.d.ts.map +1 -1
  69. package/dist/handlers/dispatch.js +9 -0
  70. package/dist/handlers/dispatch.js.map +1 -1
  71. package/dist/handlers/feature-cache.d.ts +5 -0
  72. package/dist/handlers/feature-cache.d.ts.map +1 -1
  73. package/dist/handlers/feature-cache.js +10 -0
  74. package/dist/handlers/feature-cache.js.map +1 -1
  75. package/dist/handlers/git.d.ts.map +1 -1
  76. package/dist/handlers/git.js +3 -3
  77. package/dist/handlers/git.js.map +1 -1
  78. package/dist/handlers/manage.d.ts.map +1 -1
  79. package/dist/handlers/manage.js +44 -0
  80. package/dist/handlers/manage.js.map +1 -1
  81. package/dist/handlers/object-types.d.ts +1 -1
  82. package/dist/handlers/object-types.d.ts.map +1 -1
  83. package/dist/handlers/object-types.js +17 -2
  84. package/dist/handlers/object-types.js.map +1 -1
  85. package/dist/handlers/query.d.ts.map +1 -1
  86. package/dist/handlers/query.js +35 -3
  87. package/dist/handlers/query.js.map +1 -1
  88. package/dist/handlers/read.d.ts.map +1 -1
  89. package/dist/handlers/read.js +33 -8
  90. package/dist/handlers/read.js.map +1 -1
  91. package/dist/handlers/schemas.d.ts +79 -5
  92. package/dist/handlers/schemas.d.ts.map +1 -1
  93. package/dist/handlers/schemas.js +33 -0
  94. package/dist/handlers/schemas.js.map +1 -1
  95. package/dist/handlers/tool-registry.d.ts +4 -4
  96. package/dist/handlers/tool-registry.d.ts.map +1 -1
  97. package/dist/handlers/tool-registry.js +6 -0
  98. package/dist/handlers/tool-registry.js.map +1 -1
  99. package/dist/handlers/tools.d.ts.map +1 -1
  100. package/dist/handlers/tools.js +132 -34
  101. package/dist/handlers/tools.js.map +1 -1
  102. package/dist/handlers/transport.d.ts.map +1 -1
  103. package/dist/handlers/transport.js +82 -5
  104. package/dist/handlers/transport.js.map +1 -1
  105. package/dist/handlers/write/create.d.ts.map +1 -1
  106. package/dist/handlers/write/create.js +224 -7
  107. package/dist/handlers/write/create.js.map +1 -1
  108. package/dist/handlers/write-helpers.d.ts +1 -0
  109. package/dist/handlers/write-helpers.d.ts.map +1 -1
  110. package/dist/handlers/write-helpers.js +49 -5
  111. package/dist/handlers/write-helpers.js.map +1 -1
  112. package/dist/handlers/write.d.ts.map +1 -1
  113. package/dist/handlers/write.js +18 -2
  114. package/dist/handlers/write.js.map +1 -1
  115. package/dist/plugins/manifest-interpreter.d.ts.map +1 -1
  116. package/dist/plugins/manifest-interpreter.js +3 -1
  117. package/dist/plugins/manifest-interpreter.js.map +1 -1
  118. package/dist/public/testing.d.ts +2 -1
  119. package/dist/public/testing.d.ts.map +1 -1
  120. package/dist/public/testing.js +13 -0
  121. package/dist/public/testing.js.map +1 -1
  122. package/dist/public/types.d.ts +2 -2
  123. package/dist/public/types.d.ts.map +1 -1
  124. package/dist/public/ui/app.js +1044 -0
  125. package/dist/public/ui/arc-mark.svg +5 -0
  126. package/dist/public/ui/index.html +43 -0
  127. package/dist/public/ui/styles.css +563 -0
  128. package/dist/server/audit.d.ts +4 -2
  129. package/dist/server/audit.d.ts.map +1 -1
  130. package/dist/server/audit.js +42 -13
  131. package/dist/server/audit.js.map +1 -1
  132. package/dist/server/config.d.ts.map +1 -1
  133. package/dist/server/config.js +103 -1
  134. package/dist/server/config.js.map +1 -1
  135. package/dist/server/http.d.ts +2 -1
  136. package/dist/server/http.d.ts.map +1 -1
  137. package/dist/server/http.js +22 -1
  138. package/dist/server/http.js.map +1 -1
  139. package/dist/server/logger.d.ts +1 -1
  140. package/dist/server/logger.d.ts.map +1 -1
  141. package/dist/server/logger.js +9 -4
  142. package/dist/server/logger.js.map +1 -1
  143. package/dist/server/plugin-loader.d.ts.map +1 -1
  144. package/dist/server/plugin-loader.js +1 -1
  145. package/dist/server/plugin-loader.js.map +1 -1
  146. package/dist/server/safe-http-client.d.ts +12 -6
  147. package/dist/server/safe-http-client.d.ts.map +1 -1
  148. package/dist/server/safe-http-client.js +84 -15
  149. package/dist/server/safe-http-client.js.map +1 -1
  150. package/dist/server/server.d.ts +1 -1
  151. package/dist/server/server.d.ts.map +1 -1
  152. package/dist/server/server.js +29 -4
  153. package/dist/server/server.js.map +1 -1
  154. package/dist/server/sinks/file.d.ts +3 -0
  155. package/dist/server/sinks/file.d.ts.map +1 -1
  156. package/dist/server/sinks/file.js +15 -3
  157. package/dist/server/sinks/file.js.map +1 -1
  158. package/dist/server/sinks/stderr.d.ts.map +1 -1
  159. package/dist/server/sinks/stderr.js +2 -30
  160. package/dist/server/sinks/stderr.js.map +1 -1
  161. package/dist/server/types.d.ts +22 -0
  162. package/dist/server/types.d.ts.map +1 -1
  163. package/dist/server/types.js +7 -0
  164. package/dist/server/types.js.map +1 -1
  165. package/dist/server/ui-log-buffer.d.ts +29 -0
  166. package/dist/server/ui-log-buffer.d.ts.map +1 -0
  167. package/dist/server/ui-log-buffer.js +72 -0
  168. package/dist/server/ui-log-buffer.js.map +1 -0
  169. package/dist/server/ui-state.d.ts +32 -0
  170. package/dist/server/ui-state.d.ts.map +1 -0
  171. package/dist/server/ui-state.js +230 -0
  172. package/dist/server/ui-state.js.map +1 -0
  173. package/dist/server/ui.d.ts +20 -0
  174. package/dist/server/ui.d.ts.map +1 -0
  175. package/dist/server/ui.js +275 -0
  176. package/dist/server/ui.js.map +1 -0
  177. package/package.json +13 -9
@@ -4,7 +4,7 @@
4
4
  * Unlike source-based objects, these ADT object types are fully defined by
5
5
  * structured XML payloads on create/update.
6
6
  */
7
- import { escapeXmlAttr } from './xml-parser.js';
7
+ import { escapeXmlAttr, parseXml } from './xml-parser.js';
8
8
  /**
9
9
  * Normalize LLM-friendly binding type strings into SAP ADT values.
10
10
  *
@@ -147,6 +147,117 @@ ${fixValuesXml}
147
147
  </doma:content>
148
148
  </doma:domain>`;
149
149
  }
150
+ /** ABAP built-in types accepted as a table-type row (typeKind=predefinedAbapType). */
151
+ const TTYP_BUILTIN_ROW_TYPES = new Set([
152
+ 'STRING',
153
+ 'XSTRING',
154
+ 'I',
155
+ 'INT8',
156
+ 'F',
157
+ 'P',
158
+ 'D',
159
+ 'T',
160
+ 'C',
161
+ 'N',
162
+ 'X',
163
+ 'B',
164
+ 'S',
165
+ 'DECFLOAT16',
166
+ 'DECFLOAT34',
167
+ 'UTCLONG',
168
+ ]);
169
+ const TTYP_ROW_TYPE_NAME_RE = /^(?:\/[A-Z0-9_]+\/)?[A-Z0-9_]+$/;
170
+ /**
171
+ * Build the create XML for a DDIC table type (TTYP). Live-verified on a4h 758 + 816 (201): the
172
+ * `<ttyp:rowType>` children are XSD-required IN ORDER — typeKind, typeName, builtInType, rangeType.
173
+ * Built-in row → predefinedAbapType + builtInType.dataType=<builtin>; structure row → dictionaryType +
174
+ * typeName=<struct> + builtInType.dataType=STRU. Standard table, non-unique standard key (advanced
175
+ * options not yet exposed). See research/abap-types/types/ttyp.md.
176
+ */
177
+ export function buildTableTypeXml(params) {
178
+ const masterLanguage = normalizeAdtLanguage(params.language);
179
+ const responsible = normalizeAdtResponsible(params.responsible);
180
+ const rowType = params.rowType.trim().toUpperCase();
181
+ // TTYP_BUILTIN_ROW_TYPES is a best-effort heuristic for AUTO-DETECTION ONLY (when the caller omits
182
+ // rowTypeKind). It must not gate an EXPLICIT rowTypeKind: SAP adds built-in types over releases
183
+ // (e.g. UTCLONG in 7.54), so allow-listing them and throwing on a miss would reject a valid type
184
+ // ARC-1 simply hasn't enumerated. When rowTypeKind is given we trust it and let SAP be the
185
+ // authority (it rejects a genuinely wrong type). See the UTCLONG case in research/abap-types/types/ttyp.md.
186
+ const kind = params.rowTypeKind ?? (TTYP_BUILTIN_ROW_TYPES.has(rowType) ? 'builtin' : 'structure');
187
+ if (!TTYP_ROW_TYPE_NAME_RE.test(rowType)) {
188
+ throw new Error(`Invalid TTYP rowType "${params.rowType}". Use a built-in ABAP type or a DDIC type name such as BAPIRET2 or /NS/TYPE.`);
189
+ }
190
+ // A row type whose NAME is a known built-in cannot be a DDIC structure (built-in names are reserved),
191
+ // so an explicit rowTypeKind="structure" there is a caller mistake we can catch cheaply. The inverse
192
+ // (rowTypeKind="builtin" for an unlisted name) is NOT checked — see the heuristic note above.
193
+ if (kind === 'structure' && TTYP_BUILTIN_ROW_TYPES.has(rowType)) {
194
+ throw new Error(`TTYP rowType "${rowType}" is a built-in ABAP row type; omit rowTypeKind or use "builtin".`);
195
+ }
196
+ const rowTypeXml = kind === 'builtin'
197
+ ? `<ttyp:typeKind>predefinedAbapType</ttyp:typeKind><ttyp:typeName/><ttyp:builtInType><ttyp:dataType>${escapeXmlAttr(rowType)}</ttyp:dataType><ttyp:length>000000</ttyp:length><ttyp:decimals>000000</ttyp:decimals></ttyp:builtInType><ttyp:rangeType/>`
198
+ : `<ttyp:typeKind>dictionaryType</ttyp:typeKind><ttyp:typeName>${escapeXmlAttr(rowType)}</ttyp:typeName><ttyp:builtInType><ttyp:dataType>STRU</ttyp:dataType><ttyp:length>000000</ttyp:length><ttyp:decimals>000000</ttyp:decimals></ttyp:builtInType><ttyp:rangeType/>`;
199
+ return `<?xml version="1.0" encoding="UTF-8"?>
200
+ <ttyp:tableType xmlns:ttyp="http://www.sap.com/dictionary/tabletype"
201
+ xmlns:adtcore="http://www.sap.com/adt/core"
202
+ adtcore:description="${escapeXmlAttr(params.description)}"
203
+ adtcore:name="${escapeXmlAttr(params.name)}"
204
+ adtcore:type="TTYP/DA"
205
+ adtcore:masterLanguage="${masterLanguage}"
206
+ adtcore:responsible="${escapeXmlAttr(responsible)}">
207
+ <adtcore:packageRef adtcore:name="${escapeXmlAttr(params.package)}"/>
208
+ <ttyp:rowType>${rowTypeXml}</ttyp:rowType>
209
+ <ttyp:initialRowCount>00000</ttyp:initialRowCount>
210
+ <ttyp:accessType>standard</ttyp:accessType>
211
+ <ttyp:primaryKey ttyp:isVisible="true" ttyp:isEditable="true"><ttyp:definition>standard</ttyp:definition><ttyp:kind>nonUnique</ttyp:kind><ttyp:components ttyp:isVisible="false"/><ttyp:alias/></ttyp:primaryKey>
212
+ <ttyp:secondaryKeys ttyp:isVisible="true" ttyp:isEditable="true"><ttyp:allowed>notSpecified</ttyp:allowed></ttyp:secondaryKeys>
213
+ </ttyp:tableType>`;
214
+ }
215
+ function asRecord(value) {
216
+ return typeof value === 'object' && value !== null && !Array.isArray(value)
217
+ ? value
218
+ : undefined;
219
+ }
220
+ /** Parse the key fields of a table-type read response (`<ttyp:tableType>`). */
221
+ export function parseTableType(xml) {
222
+ const parsed = parseXml(xml);
223
+ const tt = asRecord(parsed.tableType);
224
+ if (!tt) {
225
+ throw new Error('Invalid TTYP response: expected <ttyp:tableType>.');
226
+ }
227
+ const adtType = String(tt['@_type'] ?? '').trim();
228
+ if (adtType && adtType !== 'TTYP/DA') {
229
+ throw new Error(`Invalid TTYP response: expected adtcore:type="TTYP/DA", got "${adtType}".`);
230
+ }
231
+ const rowTypeNode = asRecord(tt.rowType);
232
+ if (!rowTypeNode) {
233
+ throw new Error('Invalid TTYP response: missing <ttyp:rowType>.');
234
+ }
235
+ const builtIn = asRecord(rowTypeNode.builtInType) ?? {};
236
+ const pk = asRecord(tt.primaryKey) ?? {};
237
+ const typeName = String(rowTypeNode.typeName ?? '').trim();
238
+ const builtInDataType = String(builtIn.dataType ?? '').trim();
239
+ const typeKind = String(rowTypeNode.typeKind ?? '').trim();
240
+ if (!typeKind) {
241
+ throw new Error('Invalid TTYP response: missing row type kind.');
242
+ }
243
+ // NOTE: we intentionally do NOT allow-list typeKind values. A read must stay permissive — SAP has
244
+ // several row-type kinds (dictionaryType, predefinedAbapType, refTo*, rangeType*, and possibly more
245
+ // in newer releases); 264 real table types across a4h 758+816 only exercised four. Hard-failing a
246
+ // read on an unlisted-but-valid kind is worse than returning it verbatim, and genuine junk/error XML
247
+ // is already caught above by the missing <ttyp:tableType>/<ttyp:rowType> checks.
248
+ const rowType = typeName || builtInDataType;
249
+ if (!rowType) {
250
+ throw new Error('Invalid TTYP response: missing row type name.');
251
+ }
252
+ return {
253
+ name: String(tt['@_name'] ?? ''),
254
+ description: String(tt['@_description'] ?? ''),
255
+ rowType,
256
+ rowTypeKind: typeKind,
257
+ accessType: String(tt.accessType ?? ''),
258
+ keyKind: String(pk.kind ?? ''),
259
+ };
260
+ }
150
261
  export function buildMessageClassXml(params) {
151
262
  const masterLanguage = normalizeAdtLanguage(params.language);
152
263
  const messages = params.messages ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"ddic-xml.js","sourceRoot":"","sources":["../../src/adt/ddic-xml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ddic-xml.js","sourceRoot":"","sources":["../../src/adt/ddic-xml.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@
9
9
  */
10
10
  import type { AdtHttpClient } from './http.js';
11
11
  import { type SafetyConfig } from './safety.js';
12
- import type { CdsTestCasesResult, FixDelta, FixProposal, SyntaxCheckResult, UnitTestResult } from './types.js';
12
+ import type { CdsTestCasesResult, CoverageSummary, FixDelta, FixProposal, SyntaxCheckResult, UnitTestRunResult } from './types.js';
13
13
  /** Run syntax check on an ABAP object.
14
14
  *
15
15
  * Two modes:
@@ -80,7 +80,14 @@ export declare function publishServiceBinding(http: AdtHttpClient, safety: Safet
80
80
  /** Unpublish an OData service binding (removes the service from consumption) */
81
81
  export declare function unpublishServiceBinding(http: AdtHttpClient, safety: SafetyConfig, name: string, version?: string, serviceType?: 'odatav2' | 'odatav4'): Promise<PublishResult>;
82
82
  /** Run ABAP unit tests for an object */
83
- export declare function runUnitTests(http: AdtHttpClient, safety: SafetyConfig, objectUrl: string): Promise<UnitTestResult[]>;
83
+ export declare function runUnitTests(http: AdtHttpClient, safety: SafetyConfig, objectUrl: string, opts?: {
84
+ coverage?: boolean;
85
+ }): Promise<UnitTestRunResult>;
86
+ /** Extract the coverage-measurement URI from an abapunit testruns result run with coverage="true". */
87
+ export declare function extractCoverageMeasurementUri(testrunsXml: string): string | null;
88
+ /** Parse the object-level statement/branch/procedure aggregate from a coverage-measurement response,
89
+ * plus the per-method drill-down (methods below full statement coverage, worst-first). */
90
+ export declare function parseCoverageMeasurement(xml: string): CoverageSummary;
84
91
  /** Run ATC check on an object */
85
92
  export declare function runAtcCheck(http: AdtHttpClient, safety: SafetyConfig, objectUrl: string, variant?: string): Promise<{
86
93
  findings: AtcFinding[];
@@ -1 +1 @@
1
- {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../src/adt/devtools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devtools.d.ts","sourceRoot":"","sources":["../../src/adt/devtools.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  * - RunATCCheck: ABAP Test Cockpit (code quality)
9
9
  */
10
10
  import { logger } from '../server/logger.js';
11
- import { AdtApiError } from './errors.js';
11
+ import { AdtApiError, AdtSafetyError } from './errors.js';
12
12
  import { checkOperation, OperationType } from './safety.js';
13
13
  import { decodeXmlEntities, escapeXmlAttr, findDeepNodes, parseXml } from './xml-parser.js';
14
14
  /** Run syntax check on an ABAP object.
@@ -372,12 +372,12 @@ export async function unpublishServiceBinding(http, safety, name, version = '000
372
372
  return postPublishJob(http, serviceType, 'unpublishjob', name, version);
373
373
  }
374
374
  /** Run ABAP unit tests for an object */
375
- export async function runUnitTests(http, safety, objectUrl) {
375
+ export async function runUnitTests(http, safety, objectUrl, opts = {}) {
376
376
  checkOperation(safety, OperationType.Test, 'RunUnitTests');
377
377
  const body = `<?xml version="1.0" encoding="UTF-8"?>
378
378
  <aunit:runConfiguration xmlns:aunit="http://www.sap.com/adt/aunit">
379
379
  <external>
380
- <coverage active="false"/>
380
+ <coverage active="${opts.coverage ? 'true' : 'false'}"/>
381
381
  </external>
382
382
  <options>
383
383
  <uriType value="semantic"/>
@@ -396,7 +396,112 @@ export async function runUnitTests(http, safety, objectUrl) {
396
396
  const resp = await http.post('/sap/bc/adt/abapunit/testruns', body, 'application/vnd.sap.adt.abapunit.testruns.config.v4+xml', {
397
397
  Accept: 'application/vnd.sap.adt.abapunit.testruns.result.v2+xml',
398
398
  });
399
- return parseUnitTestResults(resp.body);
399
+ const tests = parseUnitTestResults(resp.body);
400
+ if (!opts.coverage)
401
+ return { tests };
402
+ // Coverage is a second step: the run result references a coverage measurement, which we POST
403
+ // (with the same object set) to retrieve the statement/branch/procedure aggregate. The endpoint is
404
+ // live-verified on 7.50 + 758 + 816 (2026-06-25); the best-effort fallback (missing URI / fetch
405
+ // failure / no valid metrics → return tests with no coverage) is defensive for unknown systems.
406
+ const measurementUri = extractCoverageMeasurementUri(resp.body);
407
+ if (!measurementUri)
408
+ return { tests };
409
+ try {
410
+ const coverageQuery = `<?xml version="1.0" encoding="UTF-8"?>
411
+ <cov:query xmlns:cov="http://www.sap.com/adt/cov"><adtcore:objectSets xmlns:adtcore="http://www.sap.com/adt/core"><objectSet kind="inclusive"><adtcore:objectReferences><adtcore:objectReference adtcore:uri="${escapeXmlAttr(objectUrl)}"/></adtcore:objectReferences></objectSet></adtcore:objectSets></cov:query>`;
412
+ const measResp = await http.post(measurementUri, coverageQuery, 'application/xml', { Accept: 'application/xml' });
413
+ const coverage = parseCoverageMeasurement(measResp.body);
414
+ return hasCoverageMetrics(coverage) ? { tests, coverage } : { tests };
415
+ }
416
+ catch {
417
+ return { tests };
418
+ }
419
+ }
420
+ /** Extract the coverage-measurement URI from an abapunit testruns result run with coverage="true". */
421
+ export function extractCoverageMeasurementUri(testrunsXml) {
422
+ const parsed = parseXml(testrunsXml);
423
+ for (const node of findDeepNodes(parsed, 'coverage')) {
424
+ const uri = node['@_uri'];
425
+ if (typeof uri === 'string' && uri.includes('/coverage/measurements/'))
426
+ return uri;
427
+ }
428
+ return null;
429
+ }
430
+ /** Max per-method entries returned (worst-first); pathological classes don't bloat the output. */
431
+ const MAX_METHODS_BELOW_FULL = 50;
432
+ /** Validate + extract the statement/branch/procedure metrics from one `<coverages>` node.
433
+ * Non-finite / negative attrs are skipped so malformed XML degrades instead of emitting NaN. */
434
+ function parseCoverageEntries(coveragesNode) {
435
+ const raw = coveragesNode.coverage;
436
+ const entries = (Array.isArray(raw) ? raw : raw ? [raw] : []);
437
+ const out = {};
438
+ for (const e of entries) {
439
+ const type = String(e['@_type'] ?? '');
440
+ const total = Number(e['@_total'] ?? 0);
441
+ const executed = Number(e['@_executed'] ?? 0);
442
+ if ((type === 'statement' || type === 'branch' || type === 'procedure') &&
443
+ Number.isFinite(total) &&
444
+ Number.isFinite(executed) &&
445
+ total >= 0 &&
446
+ executed >= 0) {
447
+ out[type] = { executed, total, percent: total ? Math.round((executed / total) * 10000) / 100 : 0 };
448
+ }
449
+ }
450
+ return out;
451
+ }
452
+ /** Walk the measurement tree and collect every per-method (CLAS/OM) coverage node. */
453
+ function collectMethodCoverages(parsed) {
454
+ const methods = [];
455
+ const visit = (obj) => {
456
+ if (!obj || typeof obj !== 'object')
457
+ return;
458
+ if (Array.isArray(obj)) {
459
+ for (const item of obj)
460
+ visit(item);
461
+ return;
462
+ }
463
+ const rec = obj;
464
+ // removeNSPrefix strips adtcore: (element key `objectReference`, attrs `@_type`/`@_name`); the
465
+ // parser also arrays `objectReference` (ARRAY_TAGS), so unwrap the single entry.
466
+ const refRaw = rec.objectReference;
467
+ const ref = (Array.isArray(refRaw) ? refRaw[0] : refRaw);
468
+ // Method node type is `CLAS/OM` on 758/816 but `CLAS/OM/<visibility>` (e.g. CLAS/OM/public) on
469
+ // NW 7.50 — live-verified 2026-06-25; match the prefix so per-method works on all three.
470
+ const refType = ref ? String(ref['@_type'] ?? '') : '';
471
+ if (ref && (refType === 'CLAS/OM' || refType.startsWith('CLAS/OM/')) && rec.coverages) {
472
+ const name = String(ref['@_name'] ?? '');
473
+ const coveragesNode = (Array.isArray(rec.coverages) ? rec.coverages[0] : rec.coverages);
474
+ const metrics = parseCoverageEntries(coveragesNode);
475
+ if (name && (metrics.statement || metrics.branch || metrics.procedure)) {
476
+ methods.push({ method: name, ...metrics });
477
+ }
478
+ }
479
+ for (const value of Object.values(rec))
480
+ visit(value);
481
+ };
482
+ visit(parsed);
483
+ return methods;
484
+ }
485
+ /** Parse the object-level statement/branch/procedure aggregate from a coverage-measurement response,
486
+ * plus the per-method drill-down (methods below full statement coverage, worst-first). */
487
+ export function parseCoverageMeasurement(xml) {
488
+ const parsed = parseXml(xml);
489
+ const firstCoverages = findDeepNodes(parsed, 'coverages')[0];
490
+ if (!firstCoverages)
491
+ return {};
492
+ const summary = parseCoverageEntries(firstCoverages);
493
+ // Per-method nodes are already in THIS response (no extra round-trip). Surface only methods below
494
+ // 100% statement coverage — the actionable subset the object aggregate hides — worst-first, capped.
495
+ const below = collectMethodCoverages(parsed)
496
+ .filter((m) => m.statement !== undefined && m.statement.executed < m.statement.total)
497
+ .sort((a, b) => a.statement.percent - b.statement.percent || b.statement.total - a.statement.total)
498
+ .slice(0, MAX_METHODS_BELOW_FULL);
499
+ if (below.length > 0)
500
+ summary.methodsBelowFull = below;
501
+ return summary;
502
+ }
503
+ function hasCoverageMetrics(summary) {
504
+ return Boolean(summary.statement || summary.branch || summary.procedure);
400
505
  }
401
506
  /** Run ATC check on an object */
402
507
  export async function runAtcCheck(http, safety, objectUrl, variant) {
@@ -470,6 +575,21 @@ export function supportsCdsTestCases(http) {
470
575
  return undefined;
471
576
  return http.discoveryAcceptFor('/sap/bc/adt/aunit/dbtestdoubles/cds/testcases') !== undefined;
472
577
  }
578
+ function assertQuickfixProposalUri(uri) {
579
+ const quickfixProposalPrefix = '/sap/bc/adt/quickfixes/';
580
+ let parsed;
581
+ try {
582
+ parsed = new URL(uri, 'https://arc1.invalid');
583
+ }
584
+ catch {
585
+ throw new AdtSafetyError(`ApplyFixProposal refused invalid quickfix proposal URI: '${uri}'`);
586
+ }
587
+ if (!uri.startsWith(quickfixProposalPrefix) ||
588
+ parsed.origin !== 'https://arc1.invalid' ||
589
+ !parsed.pathname.startsWith(quickfixProposalPrefix)) {
590
+ throw new AdtSafetyError(`ApplyFixProposal refused non-quickfix proposal URI: '${uri}'. Use a proposal URI returned by SAPDiagnose(action="quickfix").`);
591
+ }
592
+ }
473
593
  /** Get SAP quick fix proposals for a given source position */
474
594
  export async function getFixProposals(http, safety, sourceUri, source, line, column) {
475
595
  checkOperation(safety, OperationType.Read, 'GetFixProposals');
@@ -491,7 +611,8 @@ export async function getFixProposals(http, safety, sourceUri, source, line, col
491
611
  }
492
612
  /** Apply one SAP quick fix proposal and return replacement deltas */
493
613
  export async function applyFixProposal(http, safety, proposal, sourceUri, source, line, column) {
494
- checkOperation(safety, OperationType.Read, 'ApplyFixProposal');
614
+ checkOperation(safety, OperationType.Update, 'ApplyFixProposal');
615
+ assertQuickfixProposalUri(proposal.uri);
495
616
  const uriWithStart = `${sourceUri}#start=${line},${column}`;
496
617
  const userContent = proposal.userContent === undefined
497
618
  ? ''
@@ -1 +1 @@
1
- {"version":3,"file":"devtools.js","sourceRoot":"","sources":["../../src/adt/devtools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"devtools.js","sourceRoot":"","sources":["../../src/adt/devtools.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE1D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,aAAa,CAAC;AAc/E,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE5F;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAmB,EACnB,MAAoB,EACpB,SAAiB,EACjB,OAA+D;IAE/D,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAE1D,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,QAAQ,CAAC;IAE7C,IAAI,OAAO,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,WAAW,GAAG,GAAG,SAAS,cAAc,CAAC;QAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACzE,MAAM,IAAI,GAAG;;qCAEoB,aAAa,CAAC,SAAS,CAAC,qBAAqB,OAAO;;oFAEL,aAAa,CAAC,WAAW,CAAC;0BACpF,OAAO;;;;0BAIP,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,8CAA8C,EAAE,IAAI,EAAE,eAAe,EAAE;YAClG,MAAM,EAAE,2CAA2C;SACpD,CAAC,CAAC;QACH,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,IAAI,GAAG;;qCAEsB,aAAa,CAAC,SAAS,CAAC,qBAAqB,OAAO;0BAC/D,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,EAAE,0CAA0C,EAAE;QACtG,MAAM,EAAE,2CAA2C;KACpD,CAAC,CAAC;IAEH,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3C,CAAC;AAOD,oDAAoD;AACpD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAmB,EAAE,MAAoB,EAAE,MAAc;IACzF,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAElE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,sCAAsC,EAAE,MAAM,EAAE,2BAA2B,EAAE;QACxG,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IACH,OAAO,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC;AAED,kDAAkD;AAClD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAmB,EACnB,MAAoB;IAEpB,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;IAEvE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,+CAA+C,EAAE;QAC3E,MAAM,EAAE,2CAA2C;KACpD,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,IAAI,GAAI,MAAM,CAAC,qBAA6D,IAAI,EAAE,CAAC;IAEzF,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,MAAM,UAAU,GACd,QAAQ,KAAK,cAAc,IAAI,QAAQ,KAAK,cAAc,IAAI,QAAQ,KAAK,aAAa,IAAI,QAAQ,KAAK,MAAM;QAC7G,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,cAAc,CAAC;IAErB,OAAO;QACL,WAAW,EAAE,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;QAC5F,KAAK,EAAE,UAAU;KAClB,CAAC;AACJ,CAAC;AAED,oDAAoD;AACpD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAmB,EACnB,MAAoB,EACpB,QAA+B;IAE/B,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IAEzE,MAAM,IAAI,GAAG,yGAAyG,QAAQ,CAAC,WAAW,0BAA0B,QAAQ,CAAC,KAAK,wEAAwE,CAAC;IAC3P,MAAM,IAAI,CAAC,GAAG,CAAC,+CAA+C,EAAE,IAAI,EAAE,2CAA2C,CAAC,CAAC;AACrH,CAAC;AAiBD;;;;;8BAK8B;AAC9B,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,IAAmB,EACnB,MAAoB,EACpB,SAAiB,EACjB,OAA+C;IAE/C,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAE3D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,KAAK,KAAK,CAAC;QAC7C,MAAM,QAAQ,GAAG,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,IAAI,GAAG;;0CAEyB,aAAa,CAAC,SAAS,CAAC,IAAI,QAAQ;4BAClD,CAAC;QAEzB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAC1B,4DAA4D,QAAQ,EAAE,EACtE,IAAI,EACJ,eAAe,EACf,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAC9B,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;QAElD,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7C,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,SAAS,EAAE,gBAAgB,CAAC,CAAC;IAC3F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,IAAI,SAAS,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAmB,EACnB,MAAoB,EACpB,OAA6C,EAC7C,OAAgC;IAEhC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,KAAK,KAAK,CAAC;IAC7C,MAAM,IAAI,GAAG,OAAO;SACjB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,2CAA2C,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAC/G;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,IAAI,GAAG;;EAEb,IAAI;4BACsB,CAAC;IAE3B,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAC1B,4DAA4D,QAAQ,EAAE,EACtE,IAAI,EACJ,eAAe,EACf,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAC9B,CAAC;QACF,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;QAElD,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7C,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YACxC,OAAO,0CAA0C,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5F,CAAC;QAED,OAAO,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,gBAAgB,EAAE;YAClG,iBAAiB,EAAE,OAAO;YAC1B,QAAQ,EAAE,OAAO,EAAE,QAAQ;YAC3B,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED;;;;4CAI4C;AAC5C,KAAK,UAAU,eAAe,CAC5B,IAAmB,EACnB,IAA0C,EAC1C,WAAmB,EACnB,gBAAwB,EACxB,OAIC;IAED,MAAM,CAAC,KAAK,CAAC,6FAA6F,EAAE;QAC1G,KAAK,EAAE,IAAI,CAAC,MAAM;QAClB,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;KACzD,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI;SAClB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,2CAA2C,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,mBAAmB,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAC/G;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,IAAI,GAAG;;EAEb,QAAQ;4BACkB,CAAC;IAE3B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,IAAI,MAAoC,CAAC;IACzC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAC1B,gEAAgE,EAChE,IAAI,EACJ,eAAe,EACf,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAC9B,CAAC;QACF,MAAM,GAAG,eAAe,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5D,IAAI,OAAO,EAAE,iBAAiB,EAAE,CAAC;YAC/B,MAAM,GAAG,MAAM,0CAA0C,CACvD,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,iBAAiB,EACzB,MAAM,EACN,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAC/B,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,SAAS,CAAC;YACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,+BAA+B;YACtC,WAAW;YACX,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,gBAAgB;YAChB,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW;YAC1C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;SAC/C,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IACtC,OAAO,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACrH,CAAC;AAED,SAAS,4BAA4B,CAAC,MAAwB;IAC5D,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IACjC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO;SAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC;SACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAClB,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,0CAA0C,CACvD,IAAmB,EACnB,MAAoB,EACpB,OAA6C,EAC7C,QAA0B,EAC1B,OAAgC;IAEhC,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAC;IAErF,MAAM,CAAC,KAAK,CAAC,8EAA8E,EAAE;QAC3F,KAAK,EAAE,OAAO,CAAC,MAAM;QACrB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;KAC5D,CAAC,CAAC;IAEH,MAAM,YAAY,GAA+E,EAAE,CAAC;IACpG,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC5G,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,IAAI,GACR,mEAAmE;QACnE,WAAW,OAAO,CAAC,MAAM,UAAU,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;IACrF,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAChE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC,CAC/D,CAAC;IACF,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAC/D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,GAAG,MAAM;QACT,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE;KACvC,CAAC,CAAC,CACJ,CAAC;IAEF,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACvD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,aAAa,CAAC;YAClC,OAAO,EAAE;gBACP,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE;gBACnC,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACjC,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,SAAkB,EAAE,CAAC,CAAC,CAAC,MAAM,CACnF;gBACD,GAAG,YAAY;aAChB;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,aAAa,CAAC;QACxD,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,YAAY,CAAC;KAClF,CAAC;AACJ,CAAC;AAED,6CAA6C;AAC7C,iFAAiF;AACjF,qFAAqF;AACrF,mEAAmE;AACnE,sFAAsF;AACtF,4EAA4E;AAC5E,iEAAiE;AACjE,EAAE;AACF,iFAAiF;AACjF,kFAAkF;AAClF,iFAAiF;AACjF,2EAA2E;AAC3E,SAAS,iBAAiB,CAAC,GAAY,EAAE,WAAmB;IAC1D,IACE,GAAG,YAAY,WAAW;QAC1B,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC;QAC5E,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,qBAAqB,CAAC,EACjD,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,UAAU,oEAAoE,EAAE;YAC7G,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,GAAG,CAAC,IAAI;SACf,CAAC,CAAC;QACH,OAAO;YACL,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE;gBACR,UAAU,WAAW,qHAAqH;aAC3I;YACD,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,WAAW,gCAAgC,EAAE,CAAC;SAC9F,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,eAAe,CAAC,OAA0B;IACjD,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC;YACnC,MAAM,IAAI,GAAG,iCAAiC,KAAK,qBAAqB,CAAC;YACzE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;AACvG,CAAC;AASD,SAAS,aAAa,CAAC,GAAY,EAAE,GAAW;IAC9C,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IACtD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACvC,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;QACxC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,GAA8B,CAAC;IAC9C,IAAI,GAAG,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACtC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACtC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAW;IACvC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IACxE,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACpD,OAAO;QACL,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QACzD,SAAS,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QACrD,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,gHAAgH,aAAa,CAAC,IAAI,CAAC,gCAAgC,CAAC;AAC7K,CAAC;AAED,+FAA+F;AAC/F,+FAA+F;AAC/F,8FAA8F;AAC9F,mEAAmE;AACnE,yFAAyF;AACzF,2EAA2E;AAC3E,MAAM,kBAAkB,GAAG,iDAAiD,CAAC;AAE7E;;;GAGG;AACH,SAAS,mBAAmB,CAAC,WAAkC,EAAE,GAAkC;IACjG,OAAO,oFAAoF,WAAW,IAAI,GAAG,EAAE,CAAC;AAClH,CAAC;AAED;;;;GAIG;AACH,SAAS,2BAA2B,CAAC,GAAY;IAC/C,IAAI,CAAC,CAAC,GAAG,YAAY,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACnE,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;AAC3F,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,IAAmB,EACnB,WAAkC,EAClC,GAAkC,EAClC,IAAY,EACZ,OAAe;IAEf,MAAM,IAAI,GAAG,gCAAgC,WAAW,IAAI,GAAG,iBAAiB,kBAAkB,CAAC,IAAI,CAAC,mBAAmB,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;IACzJ,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACzG,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC;YAAE,MAAM,GAAG,CAAC;QACjD,MAAM,SAAS,GAAG,mBAAmB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACxD,MAAM,CAAC,KAAK,CAAC,4DAA4D,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACxF,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAmB,EACnB,MAAoB,EACpB,IAAY,EACZ,OAAO,GAAG,MAAM,EAChB,cAAqC,SAAS;IAE9C,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IACxE,OAAO,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AACxE,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAmB,EACnB,MAAoB,EACpB,IAAY,EACZ,OAAO,GAAG,MAAM,EAChB,cAAqC,SAAS;IAE9C,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE,yBAAyB,CAAC,CAAC;IAC1E,OAAO,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,wCAAwC;AACxC,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAmB,EACnB,MAAoB,EACpB,SAAiB,EACjB,OAA+B,EAAE;IAEjC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAE3D,MAAM,IAAI,GAAG;;;wBAGS,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;;;;;;;;;;;gDAWR,aAAa,CAAC,SAAS,CAAC;;;;0BAI9C,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAC1B,+BAA+B,EAC/B,IAAI,EACJ,yDAAyD,EACzD;QACE,MAAM,EAAE,yDAAyD;KAClE,CACF,CAAC;IAEF,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAErC,6FAA6F;IAC7F,mGAAmG;IACnG,gGAAgG;IAChG,gGAAgG;IAChG,MAAM,cAAc,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACtC,IAAI,CAAC;QACH,MAAM,aAAa,GAAG;gNACsL,aAAa,CAAC,SAAS,CAAC,6EAA6E,CAAC;QAClT,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAClH,MAAM,QAAQ,GAAG,wBAAwB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,sGAAsG;AACtG,MAAM,UAAU,6BAA6B,CAAC,WAAmB;IAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC;QACrD,MAAM,GAAG,GAAI,IAAgC,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAAE,OAAO,GAAG,CAAC;IACrF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kGAAkG;AAClG,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAElC;iGACiG;AACjG,SAAS,oBAAoB,CAAC,aAAsC;IAClE,MAAM,GAAG,GAAG,aAAa,CAAC,QAAQ,CAAC;IACnC,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAmC,CAAC;IAChG,MAAM,GAAG,GAAmC,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,IACE,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,WAAW,CAAC;YACnE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YACtB,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzB,KAAK,IAAI,CAAC;YACV,QAAQ,IAAI,CAAC,EACb,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,sFAAsF;AACtF,SAAS,sBAAsB,CAAC,MAAe;IAC7C,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,CAAC,GAAY,EAAQ,EAAE;QACnC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO;QAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,GAAG;gBAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,GAA8B,CAAC;QAC3C,+FAA+F;QAC/F,iFAAiF;QACjF,MAAM,MAAM,GAAG,GAAG,CAAC,eAAe,CAAC;QACnC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAwC,CAAC;QAChG,+FAA+F;QAC/F,yFAAyF;QACzF,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YACtF,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YACzC,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAGrF,CAAC;YACF,MAAM,OAAO,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;YACpD,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvE,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC,CAAC;IACF,KAAK,CAAC,MAAM,CAAC,CAAC;IACd,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;2FAC2F;AAC3F,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAwC,CAAC;IACpG,IAAI,CAAC,cAAc;QAAE,OAAO,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAoB,oBAAoB,CAAC,cAAc,CAAC,CAAC;IACtE,kGAAkG;IAClG,oGAAoG;IACpG,MAAM,KAAK,GAAG,sBAAsB,CAAC,MAAM,CAAC;SACzC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC;SACpF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAU,CAAC,OAAO,GAAG,CAAC,CAAC,SAAU,CAAC,OAAO,IAAI,CAAC,CAAC,SAAU,CAAC,KAAK,GAAG,CAAC,CAAC,SAAU,CAAC,KAAK,CAAC;SACtG,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,gBAAgB,GAAG,KAAK,CAAC;IACvD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAwB;IAClD,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;AAC3E,CAAC;AAED,iCAAiC;AACjC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAmB,EACnB,MAAoB,EACpB,SAAiB,EACjB,OAAgB;IAEhB,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAE1D,oFAAoF;IACpF,qFAAqF;IACrF,yFAAyF;IACzF,uFAAuF;IACvF,qFAAqF;IACrF,mFAAmF;IAEnF,0FAA0F;IAC1F,qFAAqF;IACrF,+CAA+C;IAC/C,MAAM,YAAY,GAAG,OAAO;QAC1B,CAAC,CAAC,0CAA0C,kBAAkB,CAAC,OAAO,CAAC,EAAE;QACzE,CAAC,CAAC,2BAA2B,CAAC;IAChC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IACpG,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,WAAW,CAAC,uEAAuE,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IACpH,CAAC;IAED,0EAA0E;IAC1E,MAAM,OAAO,GAAG;;;;;gDAK8B,aAAa,CAAC,SAAS,CAAC;;;;WAI7D,CAAC;IACV,MAAM,IAAI,CAAC,IAAI,CAAC,mCAAmC,kBAAkB,CAAC,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE;QAC/G,MAAM,EAAE,iBAAiB;KAC1B,CAAC,CAAC;IAEH,0DAA0D;IAC1D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,6BAA6B,kBAAkB,CAAC,UAAU,CAAC,EAAE,EAAE;QAC/F,MAAM,EAAE,iCAAiC;KAC1C,CAAC,CAAC;IAEH,OAAO,EAAE,QAAQ,EAAE,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAmB,EACnB,MAAoB,EACpB,aAAqB;IAErB,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAE9D,MAAM,IAAI,GAAG,+DAA+D,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC;IAChH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAChC,MAAM,EAAE,kEAAkE;KAC3E,CAAC,CAAC;IACH,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAmB;IACtD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;QAAE,OAAO,SAAS,CAAC;IAC/C,OAAO,IAAI,CAAC,kBAAkB,CAAC,+CAA+C,CAAC,KAAK,SAAS,CAAC;AAChG,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAW;IAC5C,MAAM,sBAAsB,GAAG,yBAAyB,CAAC;IACzD,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,cAAc,CAAC,4DAA4D,GAAG,GAAG,CAAC,CAAC;IAC/F,CAAC;IACD,IACE,CAAC,GAAG,CAAC,UAAU,CAAC,sBAAsB,CAAC;QACvC,MAAM,CAAC,MAAM,KAAK,sBAAsB;QACxC,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,sBAAsB,CAAC,EACnD,CAAC;QACD,MAAM,IAAI,cAAc,CACtB,wDAAwD,GAAG,mEAAmE,CAC/H,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAmB,EACnB,MAAoB,EACpB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,MAAc;IAEd,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,GAAG,SAAS,UAAU,IAAI,IAAI,MAAM,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,yCAAyC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;IAEzF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE;YAC1D,MAAM,EAAE,eAAe;SACxB,CAAC,CAAC;QACH,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,WAAW,IAAI,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,CAAC,EAAE,CAAC;YACrF,wEAAwE;YACxE,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAmB,EACnB,MAAoB,EACpB,QAAqB,EACrB,SAAiB,EACjB,MAAc,EACd,IAAY,EACZ,MAAc;IAEd,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACjE,yBAAyB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAExC,MAAM,YAAY,GAAG,GAAG,SAAS,UAAU,IAAI,IAAI,MAAM,EAAE,CAAC;IAC5D,MAAM,WAAW,GACf,QAAQ,CAAC,WAAW,KAAK,SAAS;QAChC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;iBACS,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC;IACnE,MAAM,eAAe,GAAG,wBAAwB,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IAC3E,2FAA2F;IAC3F,yBAAyB;IACzB,MAAM,IAAI,GAAG;;;eAGA,aAAa,CAAC,MAAM,CAAC;4CACQ,aAAa,CAAC,YAAY,CAAC;YAC3D,eAAe,GAAG,WAAW;8BACX,CAAC;IAE7B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,iBAAiB,EAAE;QAClE,MAAM,EAAE,iBAAiB;KAC1B,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAyBD,8DAA8D;AAC9D,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAEvE,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,WAAW,KAAK,OAAO,IAAI,WAAW,KAAK,OAAO,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC;QACnG,IAAI,OAAO;YAAE,SAAS,GAAG,IAAI,CAAC;QAE9B,MAAM,SAAS,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,SAAS;YAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAExC,MAAM,QAAQ,GAAkC,OAAO;YACrD,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,WAAW,KAAK,SAAS;gBACzC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,MAAM,CAAC;QAEb,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC5B,MAAM,MAAM,GAAsB,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAChE,IAAI,MAAM;YAAE,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,mGAAmG;QACnG,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACtD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YAC7B,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;YAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IAED,IAAI,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAE3D,gEAAgE;IAChE,yEAAyE;IACzE,MAAM,QAAQ,GAAG,4BAA4B,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACzD,QAAQ;YACR,OAAO;SACR,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAChD,CAAC;AAED;4FAC4F;AAC5F,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,MAAM,OAAO,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,IAAI,QAAQ,CAAC;YACnC,MAAM,IAAI,GAAG,iCAAiC,KAAK,qBAAqB,CAAC;YACzE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;AACvG,CAAC;AAED;wEACwE;AACxE,SAAS,4BAA4B,CACnC,MAA+B;IAE/B,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAuD,EAAE,CAAC;IACnE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;YAAE,SAAS;QAC5D,MAAM,IAAI,GAAG,aAAa,CAAC,UAAqC,EAAE,KAAK,CAAC,CAAC;QACzE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAChC,MAAM,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC;QACtC,MAAM,aAAa,GACjB,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ;YAChD,CAAC,CAAC,MAAM,CAAE,aAAyC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpE,CAAC,CAAC,EAAE,CAAC;QACT,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;gBACxC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC/B,IAAI,EAAE,aAAa;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,CAA0B;IAClD,+DAA+D;IAC/D,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;IAC9B,IAAI,IAAI;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IAE9B,4CAA4C;IAC5C,MAAM,aAAa,GAAG,CAAC,CAAC,SAAS,CAAC;IAClC,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEnE,MAAM,MAAM,GAAG,aAAwC,CAAC;IACxD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrE,IAAI,GAAG,IAAI,IAAI;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAW;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,gCAAgC;IAChC,mFAAmF;IACnF,oGAAoG;IACpG,mFAAmF;IACnF,MAAM,IAAI,GAAG,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,GAAG,aAAa,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAoB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACvC,IAAI,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,IAAI,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACnD,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,IAAI;gBAAE,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM;gBAAE,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO;YACL,QAAQ,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;YACpE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YACvD,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC5C,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC;QACvD,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAW;IACvC,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEvD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACtC,iCAAiC;QACjC,iDAAiD;QACjD,wFAAwF;QACxF,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChC,MAAM;YACR,CAAC;YACD,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,UAAU,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC5F,OAAO,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChC,MAAM;YACR,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAChD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YACnC,mDAAmD;YACnD,IAAI,OAA2B,CAAC;YAChC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAI,MAAM,CAAC,CAAC,CAA6B,CAAC,KAAK,CAAC;gBAC9D,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;oBACrB,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACjC,OAAO,GAAG,QAAQ,CAAC;oBACrB,CAAC;yBAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACpE,OAAO,GAAG,MAAM,CAAE,QAAoC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;oBACzE,CAAC;yBAAM,CAAC;wBACN,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YACD,6DAA6D;YAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAEzD,OAAO,CAAC,IAAI,CAAC;gBACX,OAAO;gBACP,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;gBACtC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7F,CAAC;IACD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,SAAS,CAAC;AACpF,CAAC;AAED,SAAS,YAAY,CAAC,IAAa;IACjC,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3G,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC1E,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,IAA+B,CAAC;IAC5C,IAAI,OAAO,IAAI,GAAG;QAAE,OAAO,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACpC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;SAC/B,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAmC,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC3G,CAAC;IACD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7E,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAE3B,MAAM,QAAQ,GAAsB,EAAE,GAAG,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,SAAS,EAAE,CAAC,eAAe,CAAC,CAAC;IACjD,IAAI,IAAI,IAAI,IAAI;QAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,IAAI,IAAI,IAAI;QAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/C,IAAI,WAAW,IAAI,IAAI;QAAE,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACpE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,YAAY;QAAE,OAAO,SAAS,CAAC;IAEpC,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,GAAG,GAAG,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACtD,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAAE,GAAG,CAAC,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC;QAClE,MAAM,GAAG,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,GAAG;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACpD,CAAC;AAED,SAAS,6BAA6B,CAAC,GAAsB;IAC3D,MAAM,KAAK,GAAG,CAAC,gBAAgB,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1D,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpF,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,iBAAiB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpF,IAAI,GAAG,CAAC,WAAW,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,wBAAwB,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzG,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,wBAAwB,CAAC,eAAgD;IAChF,MAAM,KAAK,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;SAClC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC;SACpE,GAAG,CACF,CAAC,QAAQ,EAAE,EAAE,CAAC;iBACH,aAAa,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;iCACrB,6BAA6B,CAAC,QAAQ,CAAC;YAC5D,CACP,CAAC;IAEJ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO;;EAEP,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;qBACG,CAAC;AACtB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC1D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACvD,MAAM,eAAe,GAAG,oBAAoB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACrE,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACzC,WAAW,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;YACvD,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC;YAC7C,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1B,CAAC;IAC1B,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;AACnD,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW,EAAE,GAAoB;IAC9D,MAAM,EAAE,GAAG,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,2BAA2B,CAAC;IACzF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5B,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAA6B;IACtD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAEpE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhE,MAAM,YAAY,GAAG,qBAAqB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,qBAAqB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAErD,MAAM,SAAS,GACb,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,mBAAmB,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC1C,YAAY,EAAE,IAAI;QAClB,CAAC,CAAC;IACJ,MAAM,WAAW,GACf,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC1C,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACvC,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC1C,mBAAmB,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,CAAC;QAC5C,mBAAmB,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QACzC,YAAY,EAAE,MAAM;QACpB,CAAC,CAAC;IACJ,MAAM,OAAO,GACX,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtC,mBAAmB,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,CAAC;QACxC,UAAU,EAAE,IAAI;QAChB,SAAS,CAAC;IACZ,MAAM,SAAS,GACb,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,mBAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxC,mBAAmB,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC;QAC1C,mBAAmB,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;QACvC,UAAU,EAAE,MAAM;QAClB,WAAW,CAAC;IAEd,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAE7G,OAAO;QACL,GAAG;QACH,KAAK,EAAE;YACL,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE;YAC/C,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE;SAC1C;QACD,OAAO;KACR,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAChG,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAElE,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,CAAU,CAAC;IACvF,IAAI,KAAK,GAAmC,EAAE,CAAC;IAE/C,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACnC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM;IAC9B,CAAC;IAED,OAAO,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAE/C,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACrB,oFAAoF;QACpF,kFAAkF;QAClF,qFAAqF;QACrF,uFAAuF;QACvF,yDAAyD;QACzD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAAE,IAAI,GAAG,QAAQ,CAAC;QAC/C,CAAC;QAED,MAAM,eAAe,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACnF,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;QACtF,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;QAC5F,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;QAEtF,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;YAC7D,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC3C,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;YAC/C,GAAG,EAAE,MAAM;YACX,IAAI;YACJ,YAAY;YACZ,WAAW,EAAE,MAAM,IAAI,SAAS,IAAI,MAAM;SAC3C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4FAA4F;AAC5F,SAAS,WAAW,CAAC,CAAU;IAC7B,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IACzB,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IACpC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO,MAAM,CAAE,CAA6B,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAA4B,CAAC;IAChE,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAEzC,MAAM,SAAS,GAAkB,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC9E,MAAM,EAAE,GAAgB;YACtB,KAAK,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;YACrC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE;YAC/C,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE;YACjD,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE;SACpD,CAAC;QACF,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,eAAe;YAAE,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC;QAC1D,MAAM,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE,CAAC;QACrE,IAAI,iBAAiB;YAAE,EAAE,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAChE,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;AAC7D,CAAC"}