eslint-plugin-templ 0.0.2 → 0.0.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"templ-ast-to-eslint-ast.d.ts","sourceRoot":"","sources":["../src/templ-ast-to-eslint-ast.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAUV,YAAY,EAab,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EAEd,UAAU,EASX,MAAM,gBAAgB,CAAC;AAExB;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAoDnE;AAwmBD,qBAAa,uBAAwB,SAAQ,WAAW;IAC7C,IAAI,SAA6B;IAE1C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,GAAG,cAAc,CAAC;gBAGhC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,UAAU,GAAG,cAAc,EACjC,OAAO,CAAC,EAAE,YAAY;CAezB"}
1
+ {"version":3,"file":"templ-ast-to-eslint-ast.d.ts","sourceRoot":"","sources":["../src/templ-ast-to-eslint-ast.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAUV,YAAY,EAab,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EAGd,UAAU,EAUX,MAAM,gBAAgB,CAAC;AAExB;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAoDnE;AAkqBD,qBAAa,uBAAwB,SAAQ,WAAW;IAC7C,IAAI,SAA6B;IAE1C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,GAAG,cAAc,CAAC;gBAGhC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,UAAU,GAAG,cAAc,EACjC,OAAO,CAAC,EAAE,YAAY;CAezB"}
@@ -81,6 +81,8 @@ function convertChild(child) {
81
81
  loc: convertLoc(child.Expression.Range),
82
82
  parts: [],
83
83
  };
84
+ case "Fallthrough":
85
+ return null;
84
86
  default:
85
87
  // Ignore Go expressions, call expressions, control flow, etc.
86
88
  return null;
@@ -124,7 +126,7 @@ function createTrailingSpaceNode(node) {
124
126
  };
125
127
  }
126
128
  function getElementEndPosition(node) {
127
- return node.CloseTagRange ? node.CloseTagRange.To : node.OpenTagEndRange.To;
129
+ return node.CloseTagRange ? node.CloseTagRange.To : node.OpenTagRange.To;
128
130
  }
129
131
  function getElementRange(node) {
130
132
  return {
@@ -132,6 +134,18 @@ function getElementRange(node) {
132
134
  To: getElementEndPosition(node),
133
135
  };
134
136
  }
137
+ function getOpenTagEndRange(node) {
138
+ const end = node.OpenTagRange.To;
139
+ const startOffset = node.SelfClosing ? -2 : -1;
140
+ return {
141
+ From: {
142
+ Index: end.Index + startOffset,
143
+ Line: end.Line,
144
+ Col: end.Col + startOffset,
145
+ },
146
+ To: end,
147
+ };
148
+ }
135
149
  function convertDocType(node) {
136
150
  // templ fmt always writes uppercase <!DOCTYPE, so we hardcode it here.
137
151
  // The html/lowercase rule is disabled in the recommended config to match.
@@ -182,11 +196,12 @@ function convertElement(node) {
182
196
  To: node.NameRange.To,
183
197
  }),
184
198
  };
199
+ const openTagEndRange = getOpenTagEndRange(node);
185
200
  const openEnd = {
186
201
  type: NodeTypes.OpenTagEnd,
187
202
  value: node.SelfClosing ? "/>" : ">",
188
- range: convertRange(node.OpenTagEndRange),
189
- loc: convertLoc(node.OpenTagEndRange),
203
+ range: convertRange(openTagEndRange),
204
+ loc: convertLoc(openTagEndRange),
190
205
  };
191
206
  let closeRange;
192
207
  let closeLoc;
@@ -258,9 +273,9 @@ function convertElement(node) {
258
273
  loc,
259
274
  };
260
275
  }
261
- function getContentRange(openTagEndRange, closeTagRange) {
276
+ function getContentRange(openTagRange, closeTagRange) {
262
277
  return {
263
- From: openTagEndRange.To,
278
+ From: openTagRange.To,
264
279
  To: closeTagRange.From,
265
280
  };
266
281
  }
@@ -268,7 +283,7 @@ function convertScriptElement(node) {
268
283
  const range = convertRange(node.Range);
269
284
  const loc = convertLoc(node.Range);
270
285
  const scriptOpenStartRange = getLiteralRange(node.OpenTagRange.From, "<script");
271
- const contentRange = getContentRange(node.OpenTagEndRange, node.CloseTagRange);
286
+ const contentRange = getContentRange(node.OpenTagRange, node.CloseTagRange);
272
287
  // Extract text content from script element
273
288
  const scriptContents = node.Contents ?? [];
274
289
  const textContent = scriptContents
@@ -280,11 +295,12 @@ function convertScriptElement(node) {
280
295
  range: convertRange(scriptOpenStartRange),
281
296
  loc: convertLoc(scriptOpenStartRange),
282
297
  };
298
+ const openTagEndRange = getOpenTagEndRange(node);
283
299
  const openEnd = {
284
300
  type: NodeTypes.OpenScriptTagEnd,
285
301
  value: ">",
286
- range: convertRange(node.OpenTagEndRange),
287
- loc: convertLoc(node.OpenTagEndRange),
302
+ range: convertRange(openTagEndRange),
303
+ loc: convertLoc(openTagEndRange),
288
304
  };
289
305
  const close = {
290
306
  type: NodeTypes.CloseScriptTag,
@@ -317,7 +333,8 @@ function convertRawElement(node) {
317
333
  const range = convertRange(node.Range);
318
334
  const loc = convertLoc(node.Range);
319
335
  const lowerName = node.Name.toLowerCase();
320
- const contentRange = getContentRange(node.OpenTagEndRange, node.CloseTagRange);
336
+ const contentRange = getContentRange(node.OpenTagRange, node.CloseTagRange);
337
+ const openTagEndRange = getOpenTagEndRange(node);
321
338
  if (lowerName === "style") {
322
339
  const openStart = {
323
340
  type: NodeTypes.OpenStyleTagStart,
@@ -334,8 +351,8 @@ function convertRawElement(node) {
334
351
  const openEnd = {
335
352
  type: NodeTypes.OpenStyleTagEnd,
336
353
  value: ">",
337
- range: convertRange(node.OpenTagEndRange),
338
- loc: convertLoc(node.OpenTagEndRange),
354
+ range: convertRange(openTagEndRange),
355
+ loc: convertLoc(openTagEndRange),
339
356
  };
340
357
  const close = {
341
358
  type: NodeTypes.CloseStyleTag,
@@ -379,8 +396,8 @@ function convertRawElement(node) {
379
396
  const openEnd = {
380
397
  type: NodeTypes.OpenTagEnd,
381
398
  value: ">",
382
- range: convertRange(node.OpenTagEndRange),
383
- loc: convertLoc(node.OpenTagEndRange),
399
+ range: convertRange(openTagEndRange),
400
+ loc: convertLoc(openTagEndRange),
384
401
  };
385
402
  const close = {
386
403
  type: NodeTypes.CloseTag,
@@ -419,6 +436,7 @@ function convertAttributes(attrs) {
419
436
  // Spread attributes cannot be represented in the ESLint HTML AST.
420
437
  break;
421
438
  case "BoolConstantAttribute":
439
+ case "BoolExpressionAttribute":
422
440
  case "ConstantAttribute":
423
441
  case "ExpressionAttribute":
424
442
  if (attr.Key.type !== "ConstantAttributeKey") {
@@ -465,13 +483,10 @@ function convertAttribute(attr) {
465
483
  ({ startWrapper, endWrapper } = createAttributeValueWrappers(attr));
466
484
  break;
467
485
  case "ExpressionAttribute":
468
- value = {
469
- type: NodeTypes.AttributeValue,
470
- value: "",
471
- range: convertRange(attr.InitializerRange),
472
- loc: convertLoc(attr.InitializerRange),
473
- parts: [],
474
- };
486
+ value = createDynamicAttributeValue(attr.AttributeStartRange, attr.Expression);
487
+ break;
488
+ case "BoolExpressionAttribute":
489
+ value = createDynamicAttributeValue(getBoolExpressionAttributeValueRange(attr), attr.Expression);
475
490
  break;
476
491
  case "BoolConstantAttribute":
477
492
  // Boolean attributes have no value
@@ -521,6 +536,31 @@ function createAttributeValueWrappers(attr) {
521
536
  },
522
537
  };
523
538
  }
539
+ function createDynamicAttributeValue(range, expression) {
540
+ const templatePart = {
541
+ type: NodeTypes.Template,
542
+ partOf: NodeTypes.AttributeValue,
543
+ value: expression.Value,
544
+ range: convertRange(expression.Range),
545
+ loc: convertLoc(expression.Range),
546
+ };
547
+ return {
548
+ type: NodeTypes.AttributeValue,
549
+ value: expression.Value,
550
+ range: convertRange(range),
551
+ loc: convertLoc(range),
552
+ parts: [templatePart],
553
+ };
554
+ }
555
+ function getBoolExpressionAttributeValueRange(attr) {
556
+ if (attr.Key.type !== "ConstantAttributeKey") {
557
+ throw new Error("Expression-based attribute keys are not supported in ESLint conversion");
558
+ }
559
+ return {
560
+ From: attr.Key.NameRange.To,
561
+ To: attr.Range.To,
562
+ };
563
+ }
524
564
  function convertLoc(range) {
525
565
  return {
526
566
  start: convertPosition(range.From),
@@ -1 +1 @@
1
- {"version":3,"file":"templ-ast-to-eslint-ast.js","sourceRoot":"","sources":["../src/templ-ast-to-eslint-ast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"templ-ast-to-eslint-ast.js","sourceRoot":"","sources":["../src/templ-ast-to-eslint-ast.ts"],"names":[],"mappings":"AAAA;;GAEG;AA0BH,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAmB3C;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,QAAkB;IACnD,MAAM,QAAQ,GAA6B,EAAE,CAAC;IAE9C,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,uDAAuD;QACvD,qFAAqF;QACrF,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACjC,SAAS;QACX,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,SAAS,EAAE,CAAC;oBACd,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAEzB,wCAAwC;oBACxC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;wBACpD,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;wBACrD,IAAI,aAAa,EAAE,CAAC;4BAClB,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,uBAAuB,CAC/B,iDAAiD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACrG,KAAK,YAAY,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAC9D,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,mCAAmC;IACnC,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEhD,MAAM,KAAK,GACT,UAAU,IAAI,SAAS;QACrB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEb,MAAM,GAAG,GACP,UAAU,IAAI,SAAS;QACrB,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE;QACzD,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;IAErE,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,QAAQ;QACxB,QAAQ;QACR,KAAK;QACL,GAAG;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CACnB,KAAiB;IAEjB,IAAI,CAAC;QACH,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,eAAe;gBAClB,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAErC,KAAK,YAAY;gBACf,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAElC,KAAK,SAAS;gBACZ,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/B,KAAK,YAAY,CAAC;YAClB,KAAK,MAAM;gBACT,OAAO;oBACL,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;oBAChC,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC;oBAC5B,KAAK,EAAE,EAAE;iBACV,CAAC;YAEJ,KAAK,SAAS;gBACZ,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC;YAE/B,KAAK,kBAAkB;gBACrB,OAAO;oBACL,IAAI,EAAE,SAAS,CAAC,IAAI;oBACpB,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,KAAK;oBAC7B,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;oBAC3C,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;oBACvC,KAAK,EAAE,EAAE;iBACV,CAAC;YAEJ,KAAK,aAAa;gBAChB,OAAO,IAAI,CAAC;YAEd;gBACE,8DAA8D;gBAC9D,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,uBAAuB,CAC/B,qBAAqB,KAAK,CAAC,IAAI,QAAQ,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAC3F,KAAK,YAAY,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,IAAsB;IACrD,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAE/C,qEAAqE;IACrE,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC;IACpC,MAAM,QAAQ,GAAG,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IAExD,2EAA2E;IAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;IAC/C,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,GAAG,CAAC;QACd,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,MAAM;QACjC,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IAEjD,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,KAAK,EAAE,IAAI,CAAC,aAAa;QACzB,KAAK,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC;QAC7B,GAAG,EAAE;YACH,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC;YAClC,GAAG,EAAE;gBACH,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,MAAM;aACf;SACF;QACD,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAsB;IACnD,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,SAAS,eAAe,CAAC,IAAsB;IAC7C,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;QAC5B,EAAE,EAAE,qBAAqB,CAAC,IAAI,CAAC;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,IAG3B;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;IACjC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO;QACL,IAAI,EAAE;YACJ,KAAK,EAAE,GAAG,CAAC,KAAK,GAAG,WAAW;YAC9B,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,WAAW;SAC3B;QACD,EAAE,EAAE,GAAG;KACR,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,IAAkB;IACxC,uEAAuE;IACvE,0EAA0E;IAC1E,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QAC/B,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAC3B,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,CAAC,WAAW;YAC3B,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC;YACnC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC;SAChC;QACD,UAAU,EAAE;YACV;gBACE,IAAI,EAAE,SAAS,CAAC,gBAAgB;gBAChC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;gBAChC,KAAK,EAAE;oBACL,IAAI,EAAE,SAAS,CAAC,qBAAqB;oBACrC,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;oBACpC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;iBACjC;aACF;SACF;QACD,KAAK,EAAE;YACL,IAAI,EAAE,SAAS,CAAC,YAAY;YAC5B,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;YACpC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;SACjC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,IAAsB;IAC5C,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IAErC,MAAM,SAAS,GAAqB;QAClC,IAAI,EAAE,SAAS,CAAC,YAAY;QAC5B,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;QACtB,KAAK,EAAE,YAAY,CAAC;YAClB,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YAC5B,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;SACtB,CAAC;QACF,GAAG,EAAE,UAAU,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YAC5B,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;SACtB,CAAC;KACH,CAAC;IAEF,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAmB;QAC9B,IAAI,EAAE,SAAS,CAAC,UAAU;QAC1B,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG;QACpC,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC;QACpC,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC;KACjC,CAAC;IAEF,IAAI,UAA4B,CAAC;IACjC,IAAI,QAGH,CAAC;IAEF,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9C,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC/C,UAAU,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QAClD,QAAQ,GAAG;YACT,KAAK,EAAE,aAAa;YACpB,GAAG,EAAE,aAAa;SACnB,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAiB;QAC1B,IAAI,EAAE,SAAS,CAAC,QAAQ;QACxB,KAAK,EAAE,KAAK,IAAI,CAAC,IAAI,GAAG;QACxB,KAAK,EAAE,UAAU;QACjB,GAAG,EAAE,QAAQ;KACd,CAAC;IAEF,IAAI,UAA2B,CAAC;IAChC,IAAI,CAAC;QACH,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,uBAAuB,CAC/B,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACnF,KAAK,YAAY,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAwB,EAAE,CAAC;IACzC,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,OAAO,EAAE,CAAC;oBACtD,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAEzB,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;wBACpD,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;wBACrD,IAAI,aAAa,EAAE,CAAC;4BAClB,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,uBAAuB,CAC/B,qCAAqC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACzF,KAAK,YAAY,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAC7D,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,QAAQ,GACZ,SAAS,KAAK,QAAQ;QACpB,CAAC,CAAC,SAAS,CAAC,SAAS;QACrB,CAAC,CAAC,SAAS,KAAK,OAAO;YACrB,CAAC,CAAC,SAAS,CAAC,QAAQ;YACpB,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC;IAEtB,sEAAsE;IACtE,kEAAkE;IAClE,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,SAAS;QACT,OAAO;QACP,KAAK;QACL,UAAU;QACV,QAAQ;QACR,KAAK;QACL,GAAG;KACO,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CACtB,YAAwB,EACxB,aAAyB;IAEzB,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,EAAE;QACrB,EAAE,EAAE,aAAa,CAAC,IAAI;KACvB,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAwB;IACpD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,oBAAoB,GAAG,eAAe,CAC1C,IAAI,CAAC,YAAY,CAAC,IAAI,EACtB,SAAS,CACV,CAAC;IACF,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAE5E,2CAA2C;IAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC3C,MAAM,WAAW,GAAG,cAAc;SAC/B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;SACrC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEZ,MAAM,SAAS,GAA2B;QACxC,IAAI,EAAE,SAAS,CAAC,kBAAkB;QAClC,KAAK,EAAE,SAAS;QAChB,KAAK,EAAE,YAAY,CAAC,oBAAoB,CAAC;QACzC,GAAG,EAAE,UAAU,CAAC,oBAAoB,CAAC;KACtC,CAAC;IAEF,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,OAAO,GAAyB;QACpC,IAAI,EAAE,SAAS,CAAC,gBAAgB;QAChC,KAAK,EAAE,GAAG;QACV,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC;QACpC,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC;KACjC,CAAC;IAEF,MAAM,KAAK,GAAuB;QAChC,IAAI,EAAE,SAAS,CAAC,cAAc;QAC9B,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;QACvC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC;KACpC,CAAC;IAEF,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEtD,MAAM,KAAK,GAAqC,WAAW;QACzD,CAAC,CAAC;YACE,IAAI,EAAE,SAAS,CAAC,gBAAgB;YAChC,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC;YACjC,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC;YAC7B,KAAK,EAAE,EAAE;SACV;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,SAAS;QACzB,SAAS;QACT,OAAO;QACP,KAAK;QACL,UAAU;QACV,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;QACvB,KAAK;QACL,GAAG;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAqB;IAC9C,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IAC1C,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5E,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAEjD,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC1B,MAAM,SAAS,GAA0B;YACvC,IAAI,EAAE,SAAS,CAAC,iBAAiB;YACjC,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;YACtB,KAAK,EAAE,YAAY,CAAC;gBAClB,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;gBAC5B,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;aACtB,CAAC;YACF,GAAG,EAAE,UAAU,CAAC;gBACd,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;gBAC5B,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;aACtB,CAAC;SACH,CAAC;QAEF,MAAM,OAAO,GAAwB;YACnC,IAAI,EAAE,SAAS,CAAC,eAAe;YAC/B,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC;YACpC,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC;SACjC,CAAC;QAEF,MAAM,KAAK,GAAsB;YAC/B,IAAI,EAAE,SAAS,CAAC,aAAa;YAC7B,KAAK,EAAE,KAAK,IAAI,CAAC,IAAI,GAAG;YACxB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;YACvC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC;SACpC,CAAC;QAEF,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,MAAM,KAAK,GAAoC,IAAI,CAAC,QAAQ;YAC1D,CAAC,CAAC;gBACE,IAAI,EAAE,SAAS,CAAC,eAAe;gBAC/B,KAAK,EAAE,IAAI,CAAC,QAAQ;gBACpB,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC;gBACjC,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC;gBAC7B,KAAK,EAAE,EAAE;aACV;YACH,CAAC,CAAC,SAAS,CAAC;QAEd,OAAO;YACL,IAAI,EAAE,SAAS,CAAC,QAAQ;YACxB,SAAS;YACT,OAAO;YACP,KAAK;YACL,UAAU;YACV,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;YACvB,KAAK;YACL,GAAG;SACJ,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAqB;QAClC,IAAI,EAAE,SAAS,CAAC,YAAY;QAC5B,KAAK,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE;QACtB,KAAK,EAAE,YAAY,CAAC;YAClB,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YAC5B,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;SACtB,CAAC;QACF,GAAG,EAAE,UAAU,CAAC;YACd,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;YAC5B,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;SACtB,CAAC;KACH,CAAC;IAEF,MAAM,OAAO,GAAmB;QAC9B,IAAI,EAAE,SAAS,CAAC,UAAU;QAC1B,KAAK,EAAE,GAAG;QACV,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC;QACpC,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC;KACjC,CAAC;IAEF,MAAM,KAAK,GAAiB;QAC1B,IAAI,EAAE,SAAS,CAAC,QAAQ;QACxB,KAAK,EAAE,KAAK,IAAI,CAAC,IAAI,GAAG;QACxB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC;QACvC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC;KACpC,CAAC;IAEF,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEtD,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,GAAG;QACnB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,KAAK;QAClB,SAAS;QACT,OAAO;QACP,KAAK;QACL,UAAU;QACV,QAAQ,EAAE,EAAE;QACZ,KAAK;QACL,GAAG;KACJ,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,KAA0C;IAE1C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,GAAoB,EAAE,CAAC;IAEtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,sBAAsB;gBACzB,SAAS,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAChD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACd,SAAS,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAClD,CAAC;gBACD,MAAM;YAER,KAAK,kBAAkB;gBACrB,kEAAkE;gBAClE,MAAM;YAER,KAAK,uBAAuB,CAAC;YAC7B,KAAK,yBAAyB,CAAC;YAC/B,KAAK,mBAAmB,CAAC;YACzB,KAAK,qBAAqB;gBACxB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;oBAC7C,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC;oBACH,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;gBACzC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,IAAI,uBAAuB,CAC/B,8BAA8B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAClF,KAAK,YAAY,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAC7D,CAAC;gBACJ,CAAC;gBACD,MAAM;YAER;gBACE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,gBAAgB,CACvB,IAIgC;IAEhC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAE9C,MAAM,GAAG,GAAqB;QAC5B,IAAI,EAAE,SAAS,CAAC,YAAY;QAC5B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI;QACpB,KAAK,EAAE,QAAQ;QACf,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,EAAE;KACV,CAAC;IAEF,IAAI,KAAqC,CAAC;IAC1C,IAAI,YAAwD,CAAC;IAC7D,IAAI,UAAoD,CAAC;IAEzD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,mBAAmB;YACtB,KAAK,GAAG;gBACN,IAAI,EAAE,SAAS,CAAC,cAAc;gBAC9B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC;gBACpC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;gBAChC,KAAK,EAAE,EAAE;aACV,CAAC;YACF,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC;YACpE,MAAM;QAER,KAAK,qBAAqB;YACxB,KAAK,GAAG,2BAA2B,CACjC,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,UAAU,CAChB,CAAC;YACF,MAAM;QAER,KAAK,yBAAyB;YAC5B,KAAK,GAAG,2BAA2B,CACjC,oCAAoC,CAAC,IAAI,CAAC,EAC1C,IAAI,CAAC,UAAU,CAChB,CAAC;YACF,MAAM;QAER,KAAK,uBAAuB;YAC1B,mCAAmC;YACnC,MAAM;IACV,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,KAAK,SAAS,CAAC;IACrC,MAAM,SAAS,GAAqB,QAAQ;QAC1C,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QAC1B,CAAC,CAAC,QAAQ,CAAC;IAEb,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,SAAS;QACzB,GAAG;QACH,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,kCAAkC;QAC3D,GAAG,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,CAAC;QACrC,GAAG,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,CAAC;QACjC,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CAAC,IAAyB;IAI7D,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEjD,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,MAAM,UAAU,GAAe;QAC7B,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAC9C,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI;KACzB,CAAC;IACF,MAAM,QAAQ,GAAe;QAC3B,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;QACxB,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;KAC1C,CAAC;IAEF,OAAO;QACL,YAAY,EAAE;YACZ,IAAI,EAAE,SAAS,CAAC,0BAA0B;YAC1C,KAAK,EAAE,YAAY;YACnB,KAAK,EAAE,YAAY,CAAC,UAAU,CAAC;YAC/B,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC;SAC5B;QACD,UAAU,EAAE;YACV,IAAI,EAAE,SAAS,CAAC,wBAAwB;YACxC,KAAK,EAAE,YAAY;YACnB,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC;YAC7B,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC;SAC1B;KACF,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,KAAiB,EACjB,UAA2B;IAE3B,MAAM,YAAY,GAAG;QACnB,IAAI,EAAE,SAAS,CAAC,QAAQ;QACxB,MAAM,EAAE,SAAS,CAAC,cAAc;QAChC,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,KAAK,EAAE,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC;QACrC,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;KACyB,CAAC;IAE7D,OAAO;QACL,IAAI,EAAE,SAAS,CAAC,cAAc;QAC9B,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC;QAC1B,GAAG,EAAE,UAAU,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,CAAC,YAAY,CAAC;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,oCAAoC,CAC3C,IAAqC;IAErC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;QAC3B,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;KAClB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB;IACnC,OAAO;QACL,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC;QAClC,GAAG,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CACrB,QAAuB,EACvB,MAAc;IAEd,OAAO;QACL,GAAG,QAAQ;QACX,KAAK,EAAE,QAAQ,CAAC,KAAK,GAAG,MAAM;QAC9B,GAAG,EAAE,QAAQ,CAAC,GAAG,GAAG,MAAM;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAiB;IACrC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,eAAe,CAAC,GAAkB;IACzC,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,kCAAkC;QACtD,MAAM,EAAE,GAAG,CAAC,GAAG;KAChB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,IAAmB,EAAE,KAAa;IACzD,OAAO;QACL,IAAI,EAAE,IAAI;QACV,EAAE,EAAE;YACF,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM;YAChC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,EAAE,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM;SAC7B;KACF,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IAC7C,IAAI,GAAG,yBAAyB,CAAC;IAE1C,IAAI,CAAS;IACb,MAAM,CAAS;IACf,IAAI,CAA8B;IAElC,YACE,OAAe,EACf,IAAiC,EACjC,OAAsB;QAEtB,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,+FAA+F;QAC/F,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;YACd,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;CACF"}