@voxgig/apidef 6.3.7 → 6.3.9

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 (48) hide show
  1. package/dist/apidef.d.ts +3 -2
  2. package/dist/apidef.js +35 -5
  3. package/dist/apidef.js.map +1 -1
  4. package/dist/builder/entity/entity.d.ts +2 -1
  5. package/dist/builder/entity/entity.js +63 -0
  6. package/dist/builder/entity/entity.js.map +1 -1
  7. package/dist/builder/entity/info.js.map +1 -1
  8. package/dist/builder/entity.js.map +1 -1
  9. package/dist/builder/flow/flowHeuristic01.js.map +1 -1
  10. package/dist/builder/flow.js.map +1 -1
  11. package/dist/guide/guide.js +49 -6
  12. package/dist/guide/guide.js.map +1 -1
  13. package/dist/guide/heuristic01.js +99 -89
  14. package/dist/guide/heuristic01.js.map +1 -1
  15. package/dist/parse.js +151 -18
  16. package/dist/parse.js.map +1 -1
  17. package/dist/resolver.js.map +1 -1
  18. package/dist/transform/args.js.map +1 -1
  19. package/dist/transform/clean.js.map +1 -1
  20. package/dist/transform/entity.js.map +1 -1
  21. package/dist/transform/field.js +14 -0
  22. package/dist/transform/field.js.map +1 -1
  23. package/dist/transform/flow.js.map +1 -1
  24. package/dist/transform/flowstep.js.map +1 -1
  25. package/dist/transform/operation.js.map +1 -1
  26. package/dist/transform/select.js.map +1 -1
  27. package/dist/transform/top.d.ts +2 -1
  28. package/dist/transform/top.js +32 -2
  29. package/dist/transform/top.js.map +1 -1
  30. package/dist/transform.d.ts +8 -7
  31. package/dist/transform.js.map +1 -1
  32. package/dist/tsconfig.tsbuildinfo +1 -1
  33. package/dist/types.d.ts +97 -84
  34. package/dist/types.js.map +1 -1
  35. package/dist/utility.d.ts +6 -1
  36. package/dist/utility.js +205 -16
  37. package/dist/utility.js.map +1 -1
  38. package/package.json +8 -8
  39. package/src/apidef.ts +38 -4
  40. package/src/builder/entity/entity.ts +70 -1
  41. package/src/guide/guide.ts +50 -6
  42. package/src/guide/heuristic01.ts +37 -28
  43. package/src/parse.ts +161 -20
  44. package/src/transform/field.ts +16 -1
  45. package/src/transform/top.ts +37 -2
  46. package/src/tsconfig.json +1 -0
  47. package/src/types.ts +5 -0
  48. package/src/utility.ts +226 -16
package/dist/utility.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.sortedEntries = exports.sortedKeys = void 0;
6
+ exports.sortedEntries = exports.sortedKeys = exports.CANON_ONE = exports.VALID_CANON = void 0;
7
7
  exports.nom = nom;
8
8
  exports.getdlog = getdlog;
9
9
  exports.loadFile = loadFile;
@@ -33,6 +33,9 @@ exports.writeFileSyncWarn = writeFileSyncWarn;
33
33
  exports.warnOnError = warnOnError;
34
34
  exports.relativizePath = relativizePath;
35
35
  exports.getModelPath = getModelPath;
36
+ exports.isEntityWrapperProp = isEntityWrapperProp;
37
+ exports.envelopeProp = envelopeProp;
38
+ exports.closedBodyTransform = closedBodyTransform;
36
39
  const node_path_1 = __importDefault(require("node:path"));
37
40
  const jostraca_1 = require("jostraca");
38
41
  const util_1 = require("@voxgig/util");
@@ -127,7 +130,12 @@ function formatJsonSrc(jsonsrc) {
127
130
  //
128
131
  // Keys are lowercase; depluralize() does a case-insensitive lookup
129
132
  // and reapplies the caller's casing on the way out.
130
- const IRREGULARS = {
133
+ //
134
+ // Null-prototype: these tables are indexed by spec-derived names, so a
135
+ // schema or path segment called `constructor` / `__proto__` / `toString`
136
+ // would otherwise resolve to the inherited Object member and be returned
137
+ // as a "match" — crashing matchCase() on a function. See NULL_PROTO_NOTE.
138
+ const IRREGULARS = Object.assign(Object.create(null), {
131
139
  'analytics': 'analytics',
132
140
  'analyses': 'analysis',
133
141
  'appendices': 'appendix',
@@ -191,7 +199,17 @@ const IRREGULARS = {
191
199
  'vertices': 'vertex',
192
200
  'women': 'woman',
193
201
  'yes': 'yes',
194
- };
202
+ });
203
+ // NULL_PROTO_NOTE: every plain-object lookup table in this module whose keys
204
+ // come from an API spec is built with a null prototype
205
+ // (`Object.assign(Object.create(null), {...})`). Without it, `TABLE[name]`
206
+ // inherits from Object.prototype, so `TABLE['constructor']` yields the Object
207
+ // constructor (truthy, a function) and `TABLE['__proto__']` yields
208
+ // Object.prototype (truthy, an object). Both then flow into code expecting a
209
+ // string. A spec with `components.schemas.Constructor` is enough to reach
210
+ // this: canonize -> depluralize -> matchCase -> `.toLowerCase is not a
211
+ // function`, failing the whole build at the guide stage. Keep new tables
212
+ // null-prototype, or use a Map (CANONIZE_CACHE already does).
195
213
  // Sorted longest-first so the most specific IRREGULARS suffix wins.
196
214
  // Without this, 'women' would be shadowed by 'men' (3 < 5) under
197
215
  // insertion-order iteration. Both happen to round-trip correctly
@@ -225,10 +243,11 @@ function matchCase(source, target) {
225
243
  // inherit the override without signature churn. apidef is
226
244
  // single-model-per-process; if that ever changes, switch this to a
227
245
  // per-context map.
228
- let CUSTOM_PLURALS = {};
246
+ // Null-prototype: see NULL_PROTO_NOTE above.
247
+ let CUSTOM_PLURALS = Object.create(null);
229
248
  let CUSTOM_PLURAL_KEYS = [];
230
249
  function setCustomPlurals(plurals) {
231
- CUSTOM_PLURALS = {};
250
+ CUSTOM_PLURALS = Object.create(null);
232
251
  if (plurals) {
233
252
  for (const k of Object.keys(plurals)) {
234
253
  // Skip null/undefined values so a partially-typed model entry
@@ -660,9 +679,15 @@ function formatJSONIC(val, opts) {
660
679
  return String(c);
661
680
  }
662
681
  };
663
- return renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderPrimitive, renderComment);
682
+ return renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderPrimitive, renderComment, false);
664
683
  }
665
- function renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderPrimitive, renderComment) {
684
+ function renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderPrimitive, renderComment,
685
+ // True once the value has already been through decircular. `seen` never
686
+ // forgets a node, so a merely REPEATED reference (a shared node in a DAG,
687
+ // not a cycle) also lands in the fallback below. If decircular leaves such
688
+ // a repeat in place, retrying forever overflows the stack — which is what
689
+ // formatting a deep validation error used to do. Retry at most once.
690
+ decircularized) {
666
691
  const space = ' ';
667
692
  const seen = new WeakSet();
668
693
  let stack = new Array(32);
@@ -681,6 +706,9 @@ function renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderP
681
706
  stack[top] = undefined;
682
707
  top -= 1;
683
708
  if (frame.kind === 'close') {
709
+ if (undefined !== frame.node) {
710
+ seen.delete(frame.node);
711
+ }
684
712
  const indent = space.repeat(frame.indentLevel);
685
713
  const hsep = 0 < frame.indentLevel && frame.indentLevel <= hsepd;
686
714
  lines.push(`${indent}${c('bracket', frame.token)}${hsep ? '\n' : ''}`);
@@ -696,21 +724,40 @@ function renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderP
696
724
  lines.push(`${linePrefix}${renderPrimitive(v)}${commentSuffix}`);
697
725
  continue;
698
726
  }
699
- // Circular reference detected — fall back to decircular
727
+ // Repeated reference — fall back to decircular, but only once.
700
728
  if (seen.has(v)) {
701
- return renderJSONIC((0, util_1.decircular)(val), hsepd, showd, useColor, maxlines, exclude, c, renderPrimitive, renderComment);
729
+ if (!decircularized) {
730
+ // decircular recurses per level, so a deep value can overflow the
731
+ // stack inside it. This whole path usually runs while formatting an
732
+ // error, so degrade to the marker instead of throwing over it.
733
+ let flat;
734
+ try {
735
+ flat = (0, util_1.decircular)(val);
736
+ }
737
+ catch (err) {
738
+ flat = undefined;
739
+ }
740
+ if (undefined !== flat) {
741
+ return renderJSONIC(flat, hsepd, showd, useColor, maxlines, exclude, c, renderPrimitive, renderComment, true);
742
+ }
743
+ }
744
+ // decircular did not resolve it, so render a marker rather than
745
+ // recursing again. Better a placeholder than a crash while
746
+ // formatting an error the user actually needs to read.
747
+ lines.push(`${linePrefix}${c('string', '"[Circular]"')}${commentSuffix}`);
748
+ continue;
702
749
  }
703
750
  seen.add(v);
704
751
  if (Array.isArray(v)) {
705
752
  const arr = v;
706
753
  if (arr.length === 0) {
707
754
  lines.push(`${linePrefix}${c('bracket', '[')}${commentSuffix}`);
708
- stack[++top] = { kind: 'close', token: ']', indentLevel };
755
+ stack[++top] = { kind: 'close', token: ']', indentLevel, node: v };
709
756
  continue;
710
757
  }
711
758
  // opening line
712
759
  lines.push(`${linePrefix}${c('bracket', '[')}${commentSuffix}`);
713
- stack[++top] = { kind: 'close', token: ']', indentLevel };
760
+ stack[++top] = { kind: 'close', token: ']', indentLevel, node: v };
714
761
  // children (reverse push)
715
762
  const childPrefix = space.repeat(indentLevel + 1);
716
763
  for (let i = arr.length - 1; i >= 0; i--) {
@@ -735,12 +782,12 @@ function renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderP
735
782
  (showd || !k.endsWith('$')));
736
783
  if (printableKeys.length === 0) {
737
784
  lines.push(`${linePrefix}${c('bracket', '{')}${commentSuffix}`);
738
- stack[++top] = { kind: 'close', token: '}', indentLevel };
785
+ stack[++top] = { kind: 'close', token: '}', indentLevel, node: v };
739
786
  continue;
740
787
  }
741
788
  // opening line
742
789
  lines.push(`${linePrefix}${c('bracket', '{')}${commentSuffix}`);
743
- stack[++top] = { kind: 'close', token: '}', indentLevel };
790
+ stack[++top] = { kind: 'close', token: '}', indentLevel, node: v };
744
791
  const nextIndentStr = space.repeat(indentLevel + 1);
745
792
  for (let i = printableKeys.length - 1; i >= 0; i--) {
746
793
  const k = printableKeys[i];
@@ -761,7 +808,17 @@ function renderJSONIC(val, hsepd, showd, useColor, maxlines, exclude, c, renderP
761
808
  }
762
809
  return lines.join('\n') + '\n';
763
810
  }
764
- const VALID_CANON = {
811
+ // Canonical type-sentinel vocabulary. VALID_CANON maps an OpenAPI type NAME
812
+ // to its `$SENTINEL` form; CANON_ONE is the union sentinel produced by
813
+ // `validator` for a multi-type (`['`$ONE`', [member, ...]]`). Both are part
814
+ // of the public API so downstream consumers (e.g. @voxgig/sdkgen's
815
+ // sentinel -> language-type table) can verify they cover the full set
816
+ // instead of hand-syncing against this file.
817
+ //
818
+ // Null-prototype (see NULL_PROTO_NOTE): `type` values come from the spec, so
819
+ // a schema declaring `type: constructor` would otherwise return the Object
820
+ // constructor here rather than falling through to the 'Any' default.
821
+ const VALID_CANON = Object.assign(Object.create(null), {
765
822
  'string': '`$STRING`',
766
823
  'number': '`$NUMBER`',
767
824
  'integer': '`$INTEGER`',
@@ -770,7 +827,10 @@ const VALID_CANON = {
770
827
  'array': '`$ARRAY`',
771
828
  'object': '`$OBJECT`',
772
829
  'any': '`$ANY`',
773
- };
830
+ });
831
+ exports.VALID_CANON = VALID_CANON;
832
+ const CANON_ONE = '`$ONE`';
833
+ exports.CANON_ONE = CANON_ONE;
774
834
  function validator(torig) {
775
835
  if ('string' === typeof torig) {
776
836
  const tstr = torig.toLowerCase().trim();
@@ -778,7 +838,7 @@ function validator(torig) {
778
838
  return canon;
779
839
  }
780
840
  else if (Array.isArray(torig)) {
781
- return ['`$ONE`', torig.map((t) => validator(t))];
841
+ return [CANON_ONE, torig.map((t) => validator(t))];
782
842
  }
783
843
  else {
784
844
  return '`$ANY`';
@@ -1152,4 +1212,133 @@ function getModelPath(model, path, flags) {
1152
1212
  }
1153
1213
  return current;
1154
1214
  }
1215
+ // A response property only "wraps" the entity when it is itself a structured
1216
+ // value that could contain the entity: an object, an array, a $ref, or a
1217
+ // composed (allOf/oneOf/anyOf) schema. A scalar property (string, integer,
1218
+ // number, boolean) that merely shares the entity's name is a field of the
1219
+ // entity, not a wrapper, so the response must not be unwrapped down to it.
1220
+ function isEntityWrapperProp(propSchema) {
1221
+ if (null == propSchema || 'object' !== typeof propSchema) {
1222
+ return false;
1223
+ }
1224
+ if (null != propSchema.$ref) {
1225
+ return true;
1226
+ }
1227
+ if (null != propSchema.properties ||
1228
+ null != propSchema.items ||
1229
+ null != propSchema.allOf ||
1230
+ null != propSchema.oneOf ||
1231
+ null != propSchema.anyOf) {
1232
+ return true;
1233
+ }
1234
+ const t = propSchema.type;
1235
+ return 'object' === t || 'array' === t;
1236
+ }
1237
+ // A response body that is nothing but a single wrapper property is an
1238
+ // ENVELOPE around the result: `{item: {...}}`, `{data: {...}}`,
1239
+ // `{items: [...]}`, `{results: [...]}`. Return that property's name so the
1240
+ // caller can unwrap to it, or null when the body is the result itself.
1241
+ //
1242
+ // Two conditions keep this from firing on a response that IS the entity:
1243
+ //
1244
+ // 1. EXACTLY ONE property. A body with siblings is a structure in its own
1245
+ // right, not a wrapper — `{ok, id}` from a delete, or any paged
1246
+ // `{results, next}`, must be handed over whole.
1247
+ // 2. The property's SHAPE matches the operation's cardinality. A `list`
1248
+ // unwraps only to an array, every other op only to a non-array. So a
1249
+ // single-entity op facing `{items: [...]}` is left alone rather than
1250
+ // silently yielding a list, and vice versa.
1251
+ //
1252
+ // A one-field entity whose sole field is itself structured can still be
1253
+ // unwrapped wrongly; that is the residual cost of the spec not saying which
1254
+ // it means. Naming the wrapper after the entity remains the unambiguous
1255
+ // signal, and is still checked first.
1256
+ function envelopeProp(resprops, opname) {
1257
+ const keys = (0, struct_1.keysof)(resprops);
1258
+ if (1 !== keys.length) {
1259
+ return null;
1260
+ }
1261
+ const key = keys[0];
1262
+ const prop = resprops[key];
1263
+ if (!isEntityWrapperProp(prop)) {
1264
+ return null;
1265
+ }
1266
+ const islist = propIsList(prop);
1267
+ if (null == islist || islist !== ('list' === opname)) {
1268
+ return null;
1269
+ }
1270
+ return key;
1271
+ }
1272
+ // Is this schema a collection? null when the schema does not say.
1273
+ //
1274
+ // `isEntityWrapperProp` accepts a composed schema (allOf/oneOf/anyOf) as
1275
+ // structured, but a composed schema carries no outer `type` or `items` — so
1276
+ // reading those alone silently called it a non-list. A `list` then kept its
1277
+ // envelope, and worse, a single-entity op unwrapped to an array-valued
1278
+ // property. Composed branches are inspected instead, and unanimity required:
1279
+ // a union that is an array in one branch and an object in another does not
1280
+ // say what the caller will get, and an envelope is not worth guessing at.
1281
+ function propIsList(schema) {
1282
+ if (null == schema || 'object' !== typeof schema) {
1283
+ return null;
1284
+ }
1285
+ const branches = schema.allOf ?? schema.oneOf ?? schema.anyOf;
1286
+ if (Array.isArray(branches)) {
1287
+ if (0 === branches.length) {
1288
+ return null;
1289
+ }
1290
+ const first = propIsList(branches[0]);
1291
+ if (null == first) {
1292
+ return null;
1293
+ }
1294
+ for (const branch of branches) {
1295
+ if (propIsList(branch) !== first) {
1296
+ return null;
1297
+ }
1298
+ }
1299
+ return first;
1300
+ }
1301
+ return 'array' === schema.type || null != schema.items;
1302
+ }
1303
+ // The request BODY a closed schema permits, as a transform mapping.
1304
+ //
1305
+ // `additionalProperties: false` is the spec saying the server rejects any
1306
+ // property it did not declare. When a body says that, sending the caller's
1307
+ // whole request payload is wrong: an op's payload also carries its PATH
1308
+ // params (`id` for `PUT /item/{id}`), and a closed shape 400s the entire
1309
+ // request over that one extra key. Restricting the body to the declared
1310
+ // properties is then not a heuristic — it is what the spec asked for.
1311
+ //
1312
+ // Returns null for an open or property-less schema, where `reqdata` (send
1313
+ // everything) remains the right default: an open body accepts extras, and
1314
+ // with no declared properties there is nothing to restrict to.
1315
+ //
1316
+ // The KEY is the property's wire name — that is what goes on the wire and
1317
+ // what the server matches against. The SOURCE is read by the field's
1318
+ // CANONICAL name, because that is the only name the caller ever sees:
1319
+ // findFieldDefs runs every property through `canonize(normalizeFieldName())`,
1320
+ // so a spec property `UserName` reaches the generated request type as
1321
+ // `user_name`. Reading `reqdata.UserName` would find nothing and send
1322
+ // undefined.
1323
+ function closedBodyTransform(schema) {
1324
+ if (null == schema || 'object' !== typeof schema) {
1325
+ return null;
1326
+ }
1327
+ if (false !== schema.additionalProperties) {
1328
+ return null;
1329
+ }
1330
+ const names = (0, struct_1.keysof)(schema.properties);
1331
+ if (0 === names.length) {
1332
+ return null;
1333
+ }
1334
+ // Null prototype: a spec is free to declare a property called `__proto__`,
1335
+ // and on an ordinary object that assignment sets the prototype instead of
1336
+ // creating an own property — the mapping would vanish, and with it the
1337
+ // whole body restriction if it were the only one.
1338
+ const out = Object.create(null);
1339
+ for (const name of names) {
1340
+ out[name] = '`reqdata.' + canonize(normalizeFieldName(name)) + '`';
1341
+ }
1342
+ return out;
1343
+ }
1155
1344
  //# sourceMappingURL=utility.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utility.js","sourceRoot":"","sources":["../src/utility.ts"],"names":[],"mappings":";;;;;;AAm2CE,kBAAG;AACH,0BAAO;AACP,4BAAQ;AACR,sCAAa;AACb,kCAAW;AACX,4CAAgB;AAChB,gDAAkB;AAClB,oBAAI;AACJ,0BAAO;AACP,8BAAS;AACT,gCAAU;AACV,oCAAY;AACZ,8BAAS;AACT,4BAAQ;AACR,0CAAe;AACf,oDAAoB;AACpB,oCAAY;AACZ,4CAAgB;AAChB,sCAAa;AACb,gDAAkB;AAClB,kDAAmB;AACnB,wCAAc;AACd,gDAAkB;AAClB,8BAAS;AACT,kDAAmB;AACnB,8CAAiB;AACjB,kCAAW;AACX,wCAAc;AACd,oCAAY;AA93Cd,0DAA4B;AAE5B,uCAA4D;AAE5D,uCAAyC;AAEzC,2CAOuB;AAUvB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;AAElC,0EAA0E;AAC1E,MAAM,UAAU,GAAG,CAAC,GAAQ,EAAY,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AAq2CtE,gCAAU;AAp2CZ,MAAM,aAAa,GAAG,CAAC,GAAQ,EAAmB,EAAE,CAClD,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAo2CxE,sCAAa;AAl2Cf,iFAAiF;AACjF,MAAM,WAAW,GAAG,+BAA+B,CAAA;AACnD,MAAM,sBAAsB,GAAG,KAAK,CAAA;AACpC,MAAM,eAAe,GAAG,qDAAqD,CAAA;AAE7E,MAAM,WAAW,GAAG,0BAA0B,CAAA;AAC9C,MAAM,SAAS,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACpD,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;AAGtE,SAAS,UAAU,CAAC,IAAiC;IACnD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAAA;IAC3B,MAAM,OAAO,GAA8D,EAAE,CAAA;IAC7E,MAAM,IAAI,GAAG,SAAS,IAAI,CAAC,GAAwB;QACjD,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,CAAA;QACnD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACjB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACvB,CAAC,CAAA;IACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACtB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IAClB,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,SAAS,iBAAiB,CAAC,IAAY,EAAE,EAAO,EAAE,IAAY,EAAE,IAAY;IAC1E,IAAI,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO,GAAQ,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,GAAG;YACH,IAAI,EAAE,uBAAuB,GAAG,cAAc,CAAC,IAAI,CAAC;SACrD,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAID,SAAS,OAAO,CACd,KAAc,EACd,QAAiB;IAGjB,MAAM,GAAG,GAAG,KAAK,IAAI,GAAG,CAAA;IACxB,MAAM,IAAI,GAAG,mBAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,GAAG,CAAC,CAAA;IAC3C,MAAM,CAAC,GAAG,MAAa,CAAA;IACvB,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE,CAC9B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC,CAAA;IACnD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAA;IACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAChB,IAAI,CAAC,GAAG,GAAG,CAAC,QAAiB,EAAE,CAAiB,EAAE,EAAE,CACpD,CAAC,CAAC,GAAG,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpD,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7E,OAAO,IAAI,CAAA;AACb,CAAC;AAED,2BAA2B;AAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;AAG1C,SAAS,QAAQ,CAAC,IAAY,EAAE,IAAY,EAAE,EAAU,EAAE,GAAQ;IAChE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5C,OAAO,MAAM,CAAA;IACf,CAAC;IACD,OAAO,GAAQ,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;QAC5C,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC;AAGD,SAAS,aAAa,CAAC,OAAe;IACpC,OAAO,OAAO;SACX,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC;SAC5B,OAAO,CAAC,sBAAsB,EAAE,KAAK,CAAC;SACtC,OAAO,CAAC,eAAe,EAAE,eAAe,CAAC,CAAA;AAC9C,CAAC;AAGD,uEAAuE;AACvE,sEAAsE;AACtE,6BAA6B;AAC7B,EAAE;AACF,sEAAsE;AACtE,qCAAqC;AACrC,EAAE;AACF,gEAAgE;AAChE,mEAAmE;AACnE,4CAA4C;AAC5C,EAAE;AACF,oEAAoE;AACpE,kEAAkE;AAClE,oEAAoE;AACpE,gEAAgE;AAChE,EAAE;AACF,mEAAmE;AACnE,sEAAsE;AACtE,uEAAuE;AACvE,uEAAuE;AACvE,yCAAyC;AACzC,EAAE;AACF,mEAAmE;AACnE,oDAAoD;AACpD,MAAM,UAAU,GAA2B;IACzC,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,UAAU;IACtB,YAAY,EAAE,UAAU;IACxB,YAAY,EAAE,WAAW;IACzB,MAAM,EAAE,MAAM;IACd,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,OAAO;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE,WAAW;IACvB,mBAAmB;IACnB,WAAW,EAAE,WAAW;IACxB,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,QAAQ;IACnB,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,UAAU;IACvB,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,OAAO;IAClB,MAAM,EAAE,MAAM;IACd,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,QAAQ;IACpB,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,OAAO;IACf,YAAY,EAAE,WAAW;IACzB,QAAQ,EAAE,OAAO;IACjB,WAAW,EAAE,UAAU;IACvB,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,OAAO;IACjB,OAAO,EAAE,OAAO;IAChB,OAAO,EAAE,MAAM;IACf,WAAW,EAAE,UAAU;IACvB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,QAAQ;IACnB,WAAW,EAAE,UAAU;IACvB,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE,OAAO;IACjB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE,YAAY;IACzB,QAAQ,EAAE,QAAQ;IAClB,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,QAAQ;IACnB,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,OAAO;IACjB,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,OAAO;IAChB,KAAK,EAAE,KAAK;CACb,CAAA;AAED,oEAAoE;AACpE,iEAAiE;AACjE,iEAAiE;AACjE,mEAAmE;AACnE,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;AAGlF,gEAAgE;AAChE,kEAAkE;AAClE,kEAAkE;AAClE,qEAAqE;AACrE,sDAAsD;AACtD,SAAS,SAAS,CAAC,MAAc,EAAE,MAAc;IAC/C,IAAI,MAAM,KAAK,MAAM,CAAC,WAAW,EAAE;QAAE,OAAO,MAAM,CAAC,WAAW,EAAE,CAAA;IAChE,IAAI,MAAM,KAAK,MAAM,CAAC,WAAW,EAAE;QAAE,OAAO,MAAM,CAAC,WAAW,EAAE,CAAA;IAChE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAA;IAChE,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAGD,yDAAyD;AACzD,qEAAqE;AACrE,6DAA6D;AAC7D,gEAAgE;AAChE,oEAAoE;AACpE,iEAAiE;AACjE,qDAAqD;AACrD,EAAE;AACF,4DAA4D;AAC5D,8DAA8D;AAC9D,0DAA0D;AAC1D,mEAAmE;AACnE,mBAAmB;AACnB,IAAI,cAAc,GAA2B,EAAE,CAAA;AAC/C,IAAI,kBAAkB,GAAa,EAAE,CAAA;AAGrC,SAAS,gBAAgB,CAAC,OAAkD;IAC1E,cAAc,GAAG,EAAE,CAAA;IACnB,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,8DAA8D;YAC9D,0BAA0B;YAC1B,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACpB,IAAI,IAAI,IAAI,CAAC;gBAAE,SAAQ;YACvB,cAAc,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IACD,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IAEpF,uEAAuE;IACvE,yEAAyE;IACzE,0EAA0E;IAC1E,8DAA8D;IAC9D,uEAAuE;IACvE,cAAc,CAAC,KAAK,EAAE,CAAA;AACxB,CAAC;AAGD,SAAS,kBAAkB;IACzB,gBAAgB,CAAC,SAAS,CAAC,CAAA;AAC7B,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,4DAA4D;IAC5D,+DAA+D;IAC/D,gEAAgE;IAChE,iEAAiE;IACjE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAEhC,gEAAgE;IAChE,yDAAyD;IACzD,mDAAmD;IACnD,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IACzC,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IACrC,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,kBAAkB,EAAE,CAAC;QACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;YACvC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAA;QAChF,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAC/B,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;YACvC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;QAC5E,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,oEAAoE;IACpE,oEAAoE;IAEpE,+DAA+D;IAC/D,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,MAAM,CAAA;QACf,CAAC;IACH,CAAC;IAED,sDAAsD;IACtD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,MAAM,OAAO,GAAG,OAAO,KAAK,OAAO,CAAC,WAAW,EAAE,CAAA;QACjD,qDAAqD;QACrD,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACvC,CAAC;QACD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;IAED,kCAAkC;IAClC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,oEAAoE;IACpE,+CAA+C;IAC/C,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,mEAAmE;IACnE,qEAAqE;IACrE,6DAA6D;IAC7D,qEAAqE;IACrE,kEAAkE;IAClE,uCAAuC;IACvC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,wDAAwD;IACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;QAChD,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,iEAAiE;IACjE,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QACrB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,CAAC,EACf,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC1B,CAAC;IAED,2CAA2C;IAC3C,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,SAAS,IAAI,CAAC,GAAQ,EAAE,IAAY;IAClC,MAAM,IAAI,GAAU,EAAE,CAAA;IACtB,MAAM,OAAO,GAAG,CAAC,CAAM,EAAQ,EAAE;QAC/B,IAAI,CAAC,CAAC,IAAI,QAAQ,KAAK,OAAO,CAAC;YAAE,OAAM;QACvC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;gBAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACd,IAAI,IAAI,KAAK,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;gBACvD,IAAI,CAAC,IAAI,QAAQ,KAAK,OAAO,CAAC;oBAAE,OAAO,CAAC,CAAC,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IACD,OAAO,CAAC,GAAG,CAAC,CAAA;IACZ,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,SAAS,OAAO,CAAC,IAAS,EAAE,KAAU;IACpC,IAAI,IAAI,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IAC1B,IAAI,IAAI,GAAU,EAAE,CAAA;IAEpB,IAAA,kBAAS,EAAC,IAAI,EAAE,KAAK,EAAE;QACrB,KAAK,EAAE;YACL,QAAQ;YACR,OAAO;YACP,IAAI;YACJ,OAAO;YACP,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,OAAO;SAChB;QACD,IAAI;QACJ,IAAI;KACL,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QACzB,IAAI,CAAC,IAAI,CAAC,CAAA;IACZ,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAA;AACrB,CAAC;AAGD,SAAS,QAAQ,CAAC,GAAc;IAC9B,+DAA+D;IAC/D,IAAI,iBAAQ,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;QAC1B,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAClB,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;YAC9B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;YAC3B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED,+CAA+C;SAC1C,IAAI,cAAK,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CAAA;QAC5B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;QAC3B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;QAC9B,CAAC;IACH,CAAC;AACH,CAAC;AAGD,SAAS,OAAO,CAAC,GAAc,EAAE,GAAQ,EAAE,GAAQ,EAAE,KAAU;IAC7D,+DAA+D;IAC/D,IAAI,iBAAQ,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;QAC1B,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAClB,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;YAC9B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;YAC3B,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAA;gBACrD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAClC,CAAC;QACH,CAAC;IACH,CAAC;SAGI,IAAI,cAAK,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAA;QAE1B,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACtB,OAAM;QACR,CAAC;QAED,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,CAAA;QACnC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,KAAK,CAAA;QAClC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;QAE3B,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;QAC3B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAA;QAE7B,+DAA+D;QAC/D,MAAM,KAAK,GAAG,IAAA,eAAM,EAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE;YAC7C,IAAI,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE;YACrB,IAAI,EAAE,GAAG,CAAC,IAAI;SACf,CAAC,CAAA;QAEF,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAA;QAEvB,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YACvD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;AACH,CAAC;AAID,SAAS,IAAI,CAAC,GAAc,EAAE,IAAS,EAAE,IAAS,EAAE,KAAU;IAC5D,IAAI,iBAAQ,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;QAC1B,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;QACrB,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACjC,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAClB,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,CAAA;YAC9B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;YAC3B,IAAI,IAAA,eAAM,EAAC,IAAI,CAAC,EAAE,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,IAAI,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;oBACzB,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;oBAC9B,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE;wBACvC,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,GAAG,CAAC,IAAI;qBACf,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAGD,SAAS,OAAO,CAAC,GAAc,EAAE,IAAS,EAAE,IAAS,EAAE,KAAU;IAC/D,IAAI,cAAK,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;QACvB,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAA;QAE1B,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAA;QAEzC,MAAM,QAAQ,GACZ,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;aAC9B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAG,EAAU,CAAC,CAAA;QAEvD,IAAI,QAAQ,YAAY,MAAM,EAAE,CAAC;YAC/B,QAAQ,GAAG;gBACT,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE;aAC3C,CAAA;QACH,CAAC;QAED,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,IAAA,eAAM,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAE3C,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,KAAK,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;gBAC3B,IAAI,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;gBACzB,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAA;gBAErC,IAAA,eAAM,EAAC,IAAA,cAAK,EAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE;oBACjD,IAAI,EAAE,IAAA,cAAK,EAAC;wBACV,GAAG,CAAC,IAAI;wBAER,gFAAgF;wBAChF,2DAA2D;wBAC3D,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,IAAA,cAAK,EAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE;qBACxE,CAAC;oBACF,IAAI,EAAE,GAAG,CAAC,IAAI;iBACf,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAGD,SAAS,OAAO,CAAC,GAAc,EAAE,GAAQ,EAAE,GAAQ,EAAE,KAAU;IAC7D,IACE,iBAAQ,KAAK,GAAG,CAAC,IAAI;WAClB,IAAI,IAAI,GAAG,CAAC,KAAK;WACjB,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,EAC1B,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAEhC,oDAAoD;QACpD,gDAAgD;QAChD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAA;QAC1B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAA;QAEhC,MAAM,MAAM,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;QAC3B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAA;QAEzD,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAA;QAE1C,MAAM,KAAK,GAAG,IAAA,eAAM,EAAC,KAAK,EAAE,MAAM,EAAE;YAClC,IAAI,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,EAAE;YACrB,IAAI,EAAE,GAAG,CAAC,IAAI;SACf,CAAC,CAAA;QAEF,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAA;QAE5B,IAAI,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,GAAG,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAA;QACnE,CAAC;QAED,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IACrB,CAAC;AACH,CAAC;AAMD,uDAAuD;AACvD,kBAAkB;AAClB,mBAAmB;AACnB,uBAAuB;AACvB,uCAAuC;AACvC,iCAAiC;AACjC,mCAAmC;AACnC,SAAS,SAAS,CAAC,IAAuB,EAAE,IAAY;IAGtD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;IAClF,MAAM,GAAG,GAAQ,EAAE,CAAA;IACnB,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;IACd,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;IACf,GAAG,CAAC,IAAI,GAAG,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAEjE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAA;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAA;IAExB,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAA;IAC3B,OAAO,EAAE,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;QAChC,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA;QACjB,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;QAChB,IAAI,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QAEpB,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBACb,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;oBACb,EAAE,GAAG,CAAC,CAAA;oBACN,EAAE,EAAE,CAAA;oBACJ,EAAE,EAAE,CAAA;gBACN,CAAC;qBACI,CAAC;oBACJ,MAAK;gBACP,CAAC;YACH,CAAC;iBACI,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,EAAE,CAAC;gBACzB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;oBAChB,EAAE,EAAE,CAAA;oBACJ,MAAK;gBACP,CAAC;qBACI,CAAC;oBACJ,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;wBACZ,YAAY;wBACZ,EAAE,GAAG,EAAE,CAAA;wBACP,EAAE,GAAG,CAAC,CAAC,CAAA;oBACT,CAAC;oBACD,EAAE,GAAG,CAAC,CAAA;gBACR,CAAC;YACH,CAAC;iBACI,IAAI,EAAE,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC;gBACvB,EAAE,EAAE,CAAA;gBACJ,EAAE,EAAE,CAAA;YACN,CAAC;iBACI,CAAC;gBACJ,EAAE,GAAG,CAAC,CAAA;gBACN,MAAK;YACP,CAAC;QACH,CAAC;aACI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC3B,EAAE,EAAE,CAAA;YACJ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACvB,CAAC;aACI,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC;YAC1B,EAAE,EAAE,CAAA;YACJ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACvB,CAAC;aACI,CAAC;YACJ,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;gBACZ,YAAY;gBACZ,EAAE,GAAG,EAAE,CAAA;gBACP,EAAE,GAAG,CAAC,CAAC,CAAA;YACT,CAAC;YACD,EAAE,GAAG,CAAC,CAAA;QACR,CAAC;QAED,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;YAChB,MAAK;QACP,CAAC;IACH,CAAC;IAED,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,GAAG,EAAE,CAAA;QACd,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QACpC,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO,IAAI,IAAI,OAAO,IAAI,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AACrF,CAAC;AAGD,SAAS,YAAY,CACnB,GAAS,EACT,IAMC;IAED,IAAI,SAAS,KAAK,GAAG;QAAE,OAAO,EAAE,CAAA;IAEhC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,CAAA;IAC9B,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IACvB,MAAM,QAAQ,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,CAAA;IACrC,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAA;IACnD,MAAM,OAAO,GAAG,IAAI,EAAE,OAAO,IAAI,EAAE,CAAA;IAEnC,mBAAmB;IACnB,MAAM,MAAM,GAAG;QACb,KAAK,EAAE,SAAS;QAChB,GAAG,EAAE,UAAU,EAAO,cAAc;QACpC,MAAM,EAAE,UAAU,EAAI,eAAe;QACrC,MAAM,EAAE,UAAU,EAAI,gBAAgB;QACtC,OAAO,EAAE,UAAU,EAAG,cAAc;QACpC,IAAI,EAAE,UAAU,EAAM,cAAc;QACpC,OAAO,EAAE,UAAU,EAAG,QAAQ;QAC9B,OAAO,EAAE,UAAU,EAAG,cAAc;KACrC,CAAA;IAED,MAAM,CAAC,GAAG,CAAC,KAA0B,EAAE,IAAY,EAAE,EAAE,CACrD,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAE5D,MAAM,eAAe,GAAG,CAAC,CAAM,EAAU,EAAE;QACzC,IAAI,CAAC,KAAK,IAAI;YAAE,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAA;QAClB,QAAQ,CAAC,EAAE,CAAC;YACV,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBACvE,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;qBACpB,SAAS,CAAC,CAAC,CAAC;qBACZ,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;oBACtB,+DAA+D;oBAC/D,6DAA6D;oBAC7D,2DAA2D;qBAC1D,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;qBACpB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;qBACpB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YACxB,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAC1E,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YACzD,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;YAC/D,KAAK,QAAQ,CAAC;YACd,KAAK,UAAU,CAAC;YAChB,KAAK,WAAW;gBACd,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YAC1B,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QACnC,CAAC;IACH,CAAC,CAAA;IAED,MAAM,aAAa,GAAG,CAAC,CAAM,EAAiB,EAAE;QAC9C,IAAI,CAAC,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChF,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAA;QACnC,IAAI,CAAC;YAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;QAAC,CAAC;IAC7D,CAAC,CAAA;IAED,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACnE,eAAe,EAAE,aAAa,CAAC,CAAA;AACnC,CAAC;AAGD,SAAS,YAAY,CACnB,GAAQ,EACR,KAAa,EACb,KAAc,EACd,QAAiB,EACjB,QAAgB,EAChB,OAAiB,EACjB,CAAuC,EACvC,eAAmC,EACnC,aAAwC;IAGxC,MAAM,KAAK,GAAG,IAAI,CAAA;IAgBlB,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAA;IAE1B,IAAI,KAAK,GAAG,IAAI,KAAK,CAAsC,EAAE,CAAC,CAAA;IAC9D,IAAI,GAAG,GAAG,CAAC,CAAC,CAAA;IAEZ,2DAA2D;IAC3D,IAAI,UAAU,GAAkB,IAAI,CAAA;IACpC,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QACnC,UAAU,GAAG,aAAa,CAAE,GAAW,CAAC,UAAU,CAAC,CAAC,CAAA;IACtD,CAAC;IACD,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG;QACb,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,UAAU;KACrF,CAAA;IAED,MAAM,KAAK,GAAa,EAAE,CAAA;IAE1B,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAE,CAAA;QAEzB,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;QACtB,GAAG,IAAI,CAAC,CAAA;QAER,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;YAC9C,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAA;YAChE,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACtE,SAAQ;QACV,CAAC;QAED,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAA;QACnB,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAQ,CAAS,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC7E,CAAC,GAAI,CAAS,CAAC,MAAM,EAAE,CAAA;QACzB,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,KAAK,CAAA;QACzC,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,KAAK,KAAK,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAEhG,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,aAAa,EAAE,CAAC,CAAA;YAChE,SAAQ;QACV,CAAC;QAED,wDAAwD;QACxD,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,OAAO,YAAY,CAAC,IAAA,iBAAU,EAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAC/E,eAAe,EAAE,aAAa,CAAC,CAAA;QACnC,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAEX,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,CAAU,CAAA;YACtB,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,aAAa,EAAE,CAAC,CAAA;gBAC/D,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,CAAA;gBACzD,SAAQ;YACV,CAAC;YAED,eAAe;YACf,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,aAAa,EAAE,CAAC,CAAA;YAC/D,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,CAAA;YAEzD,0BAA0B;YAC1B,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;YACjD,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,UAAU,GAAG,aAAa,CAAE,CAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;gBAC5D,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG;oBACb,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;oBACb,WAAW,EAAE,WAAW,GAAG,CAAC;oBAC5B,UAAU,EAAE,GAAG,WAAW,EAAE;oBAC5B,aAAa,EAAE,UAAU;iBAC1B,CAAA;YACH,CAAC;YACD,SAAQ;QACV,CAAC;QAED,eAAe;QACf,MAAM,GAAG,GAAG,CAAwB,CAAA;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC7B,IAAI,CAAC,YAAY,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;QAC1C,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC5D,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAE9B,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,aAAa,EAAE,CAAC,CAAA;YAC/D,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,CAAA;YACzD,SAAQ;QACV,CAAC;QAED,eAAe;QACf,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,aAAa,EAAE,CAAC,CAAA;QAC/D,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,WAAW,EAAE,CAAA;QAEzD,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,CAAC,CAAA;QACnD,KAAK,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;YAC1B,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxB,SAAQ;YACV,CAAC;YAED,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC3B,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;YACxB,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;YAE9C,KAAK,CAAC,EAAE,GAAG,CAAC,GAAG;gBACb,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,WAAW,GAAG,CAAC;gBAC5B,UAAU,EAAE,GAAG,aAAa,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI;gBACpD,aAAa,EAAE,GAAG;aACnB,CAAA;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;AAChC,CAAC;AAGD,MAAM,WAAW,GAA2B;IAC1C,QAAQ,EAAE,WAAW;IACrB,QAAQ,EAAE,WAAW;IACrB,SAAS,EAAE,YAAY;IACvB,SAAS,EAAE,YAAY;IACvB,MAAM,EAAE,SAAS;IACjB,OAAO,EAAE,UAAU;IACnB,QAAQ,EAAE,WAAW;IACrB,KAAK,EAAE,QAAQ;CAChB,CAAA;AAGD,SAAS,SAAS,CAAC,KAAoC;IACrD,IAAI,QAAQ,KAAK,OAAO,KAAK,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAA;QACvC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,KAAK,CAAA;QACxC,OAAO,KAAK,CAAA;IACd,CAAC;SACI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3D,CAAC;SACI,CAAC;QACJ,OAAO,QAAQ,CAAA;IACjB,CAAC;AACH,CAAC;AAED,MAAM,WAAW,GACf,kEAAkE,CAAA;AAEpE,SAAS,aAAa,CAAC,CAAS;IAC9B,OAAO,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAA;AAEhD,SAAS,QAAQ,CAAC,CAAS;IACzB,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACpC,IAAI,SAAS,KAAK,MAAM;QAAE,OAAO,MAAM,CAAA;IACvC,MAAM,GAAG,GAAG,WAAW,CAAC,IAAA,kBAAO,EAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;SACxE,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAA;IAChC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAC1B,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,0DAA0D;AAC1D,gEAAgE;AAChE,oEAAoE;AACpE,uEAAuE;AACvE,sEAAsE;AACtE,mEAAmE;AACnE,SAAS,oBAAoB,CAAC,IAAY;IACxC,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC5B,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,OAAO,GAAG,CAAA;QACZ,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,oEAAoE;AACpE,yEAAyE;AACzE,sEAAsE;AACtE,wEAAwE;AACxE,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAA;AAC7C,CAAC;AAGD,kEAAkE;AAClE,kEAAkE;AAClE,SAAS,YAAY,CAAC,CAAS;IAC7B,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IAC3C,6CAA6C;IAC7C,IAAI,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;IAC1B,uEAAuE;IACvE,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IAC/B,+CAA+C;IAC/C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAA;IACvC,6CAA6C;IAC7C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAEnD,uDAAuD;IACvD,oEAAoE;IACpE,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACpD,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACpB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACf,CAAC;IACH,CAAC;IACD,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAErB,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAA;IAE1B,2EAA2E;IAC3E,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;IACjB,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,uDAAuD;AACvD,2DAA2D;AAC3D,SAAS,gBAAgB,CAAC,CAAS;IACjC,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;IAC5B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACxC,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChD,IAAI,CAAC,EAAE,CAAC,CAAA;AACb,CAAC;AAGD,MAAM,eAAe,GAAG,oIAAoI,CAAA;AAC5J,MAAM,eAAe,GAAG,uGAAuG,CAAA;AAC/H,MAAM,cAAc,GAAG,mJAAmJ,CAAA;AAC1K,MAAM,cAAc,GAAG,8GAA8G,CAAA;AACrI,MAAM,UAAU,GAAG,aAAa,CAAA;AAEhC,SAAS,cAAc,CAAC,IAAY,EAAE,QAAgB;IACpD,6DAA6D;IAC7D,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,YAAY,CAAA;QACnD,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,WAAW,CAAA;QAC7C,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,YAAY,CAAA;QACnD,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,WAAW,CAAA;QACjD,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,WAAW,CAAA;IACnD,CAAC;SACI,IAAI,WAAW,KAAK,QAAQ,EAAE,CAAC;QAClC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,YAAY,CAAA;IACrD,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAGD,SAAS,kBAAkB,CAAC,CAAS;IACnC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACpC,OAAO,CAAC;SACL,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;SACzB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;AAC1B,CAAC;AAGD,MAAM,mBAAmB,GAAG,CAAC,CAAA;AAC7B,MAAM,mBAAmB,GAAG,EAAE,CAAA;AAE9B,SAAS,mBAAmB,CAC1B,IAAY,EACZ,QAA6B;IAE7B,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IAElE,4DAA4D;IAC5D,IAAI,MAAM,CAAC,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC/B,IAAI,SAAS,GAAG,EAAE,CAAA;QAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,GAAG,IAAI,CAAA;YAC7D,IAAI,IAAI,CAAC,MAAM,GAAG,mBAAmB;gBAAE,MAAK;YAC5C,SAAS,GAAG,IAAI,CAAA;QAClB,CAAC;QACD,MAAM,GAAG,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;IAClE,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;QAC9D,MAAM,GAAG,GAAG,GAAG,MAAM,CAAA;IACvB,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,mBAAmB,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QACtE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IAC3B,CAAC;IAED,IAAI,MAAM,KAAK,IAAI,IAAI,IAAI,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAChD,mEAAmE;QACnE,sEAAsE;QACtE,wEAAwE;QACxE,wEAAwE;QACxE,8DAA8D;QAC9D,sEAAsE;QACtE,sEAAsE;QACtE,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACvC,OAAO,MAAM,CAAA;QACf,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,IAAI,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAC3C,OAAO,MAAM,GAAG,CAAC,CAAA;YACnB,CAAC;YACD,CAAC,EAAE,CAAA;QACL,CAAC;QACD,MAAM,GAAG,MAAM,GAAG,CAAC,CAAA;IACrB,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAGD,4DAA4D;AAC5D,MAAM,YAAY,GAAG,CAAC,kBAAkB,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;AAEjF,wEAAwE;AACxE,0EAA0E;AAC1E,uDAAuD;AACvD,2EAA2E;AAC3E,gEAAgE;AAChE,yEAAyE;AACzE,sEAAsE;AACtE,2EAA2E;AAC3E,sEAAsE;AACtE,0EAA0E;AAC1E,MAAM,oBAAoB,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAA;AAEhG,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;AAEnE,SAAS,kBAAkB,CACzB,IAAY,EACZ,UAAoD;IAEpD,IAAI,OAAO,GAAG,IAAI,CAAA;IAClB,IAAI,QAAQ,GAAG,KAAK,CAAA;IAEpB,IAAI,IAAI,IAAI,UAAU,EAAE,CAAC;QACvB,KAAK,MAAM,MAAM,IAAI,oBAAoB,EAAE,CAAC;YAC1C,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAChC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAA;gBAClE,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;gBAChF,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnD,OAAO,GAAG,SAAS,CAAA;oBACnB,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;gBACD,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAChC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAA;gBAClE,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxE,MAAK;YACP,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAClD,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC1B,OAAO,GAAG,SAAS,CAAA;YACrB,CAAC;YACD,MAAK;QACP,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAGD,SAAS,WAAW,CAAC,KAAa,EAAE,IAAY,EAAE,EAAY,EAAE,MAAY;IAC1E,IAAI,CAAC;QACH,OAAO,EAAE,EAAE,CAAA;IACb,CAAC;IACD,OAAO,GAAQ,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,IAAI,EAAE,WAAW,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,CAAC,OAAO;YAC9C,GAAG;SACJ,CAAC,CAAA;QACF,OAAO,MAAM,CAAA;IACf,CAAC;AACH,CAAC;AAID,SAAS,SAAS,CAAC,OAAe,EAAE,UAAqC,EAAE,GAAG,IAAW;IACvF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;IAE7C,IAAI,IAAI,IAAI,OAAO,IAAI,EAAE,KAAK,OAAO;QAAE,OAAM;IAE7C,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAErD,wBAAwB;QACxB,IAAI,OAAO,KAAK,UAAU;YAAE,OAAM;QAElC,qFAAqF;QACrF,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;YAC/B,IAAI,UAAU,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,WAAW,EAAE;gBAAE,OAAM;QACrE,CAAC;IACH,CAAC;IAED,WAAW,CAAC,UAAU,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,CAAA;AACxC,CAAC;AAGD,SAAS,mBAAmB,CAC1B,GAAQ,EACR,OAAe,EACf,IAA4C;IAE5C,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,CAAA;IACpC,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,KAAK,CAAA;IAElC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;IAC/C,CAAC;IAED,MAAM,aAAa,GAAG,IAAA,eAAI,EAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;SACtC,MAAM,CAAC,CAAC,OAAY,EAAE,EAAE;QACvB,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;QACzC,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,kEAAkE;YAClE,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QACjE,CAAC;aAAM,CAAC;YACN,uCAAuC;YACvC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QACjC,CAAC;IACH,CAAC,CAAC,CAAA;IAEJ,OAAO,aAAa,CAAC,MAAM,CAAA;AAC7B,CAAC;AAGD,0BAA0B;AAC1B,SAAS,SAAS,CAAC,CAAU;IAC3B,OAAO,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,IAAA,kBAAO,EAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAC9D,CAAC;AAGD,4DAA4D;AAC5D,2CAA2C;AAC3C,SAAS,GAAG,CAAC,CAAM,EAAE,MAAc;IACjC,IAAI,SAAS,GAAG,QAAQ,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;IACzD,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;QACtB,OAAO,aAAa,CAAA;IACtB,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;IACjC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,YAAY,GAAG,SAAS,GAAG,IAAI,CAAA;IACvD,GAAG;QACD,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAQ,EAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAQ,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;IAE/C,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IACzB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACrC,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,0CAA0C;AAC1C,SAAS,YAAY,CACnB,KAAU,EACV,IAAY,EACZ,KAAqD;IAErD,MAAM,QAAQ,GAAG,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAA;IACxC,MAAM,WAAW,GAAG,KAAK,EAAE,WAAW,IAAI,IAAI,CAAA;IAE9C,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;QAChB,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QACtD,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAI,CAAA,CAAE,yCAAyC;IAChE,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,SAAS,GAAa,EAAE,CAAA;IAE5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAErB,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;gBAC1E,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,MAAM;oBAClD,sBAAsB,YAAY,MAAM;oBACxC,2BAA2B,IAAI,QAAQ,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,CAClF,CAAA;YACH,CAAC;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,2DAA2D;QAC3D,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACpD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;gBAC1E,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,MAAM;oBAClD,sBAAsB,YAAY,MAAM;oBACxC,2BAA2B,IAAI,QAAQ,OAAO,OAAO,GAAG,CACzD,CAAA;YACH,CAAC;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,0BAA0B;QAC1B,IAAI,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC;YACvB,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;gBAC1E,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;oBAC1C,CAAC,CAAC,mBAAmB,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;oBACzC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;gBAE1C,MAAM,IAAI,KAAK,CACb,oCAAoC,QAAQ,MAAM;oBAClD,sBAAsB,YAAY,MAAM;oBACxC,aAAa,IAAI,qBAAqB;oBACtC,mBAAmB,aAAa,EAAE,CACnC,CAAA;YACH,CAAC;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;QAED,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAED,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7B,OAAO,GAAG,SAAS,CAAA;QACrB,CAAC;QACD,IAAI,QAAQ,KAAK,OAAO,OAAO,EAAE,CAAC;YAChC,MAAM,GAAG,GAAQ,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;YACjD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;gBACrC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;oBAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;wBACvB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;oBAChB,CAAC;yBACI,CAAC;wBACJ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;oBAClB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;YACF,OAAO,GAAG,GAAG,CAAA;QACf,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC"}
1
+ {"version":3,"file":"utility.js","sourceRoot":"","sources":["../src/utility.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@voxgig/apidef",
3
- "version": "6.3.7",
3
+ "version": "6.3.9",
4
4
  "main": "dist/apidef.js",
5
5
  "type": "commonjs",
6
6
  "types": "dist/apidef.d.ts",
@@ -32,8 +32,8 @@
32
32
  "repo-tag-dry": "REPO_VERSION=`node -e \"console.log(require('./package').version)\"` && echo \"[dry-run] TAG: v$REPO_VERSION\" && if git rev-parse -q --verify refs/tags/v$REPO_VERSION >/dev/null; then echo \"[dry-run] WARNING: tag v$REPO_VERSION already exists - bump the version first\"; else echo \"[dry-run] would commit -a, push, tag v$REPO_VERSION and push --tags; nothing done\"; fi && git status --short",
33
33
  "repo-publish": "npm run clean && npm i && npm run repo-publish-quick",
34
34
  "repo-publish-dry": "npm run clean && npm i && npm run repo-publish-quick-dry",
35
- "repo-publish-quick": "npm run build && npm run test && npm run repo-tag && npm publish --registry https://registry.npmjs.org --access=public",
36
- "repo-publish-quick-dry": "npm run build && npm run test && ( npm publish --dry-run --registry https://registry.npmjs.org --access=public || echo \"[dry-run] npm publish refused (see npm error above) - usually the version is already published; bump package.json before a real release\" )",
35
+ "repo-publish-quick": "npm run build && npm run test && npm run repo-tag && npm stage publish --registry https://registry.npmjs.org --access=public",
36
+ "repo-publish-quick-dry": "npm run build && npm run test && ( npm stage publish --dry-run --registry https://registry.npmjs.org --access=public || echo \"[dry-run] npm stage publish refused (see npm error above) - usually the version is already published; bump package.json before a real release\" )",
37
37
  "repo-release": "npm run repo-publish && npm run repo-tag",
38
38
  "repo-release-dry": "npm run repo-publish-quick-dry && npm run repo-tag-dry"
39
39
  },
@@ -46,16 +46,16 @@
46
46
  "LICENSE"
47
47
  ],
48
48
  "devDependencies": {
49
- "@types/node": "25.9.2",
50
- "typescript": "6.0.3"
49
+ "@types/node": "^25.9.5",
50
+ "typescript": "7.0.2"
51
51
  },
52
52
  "peerDependencies": {
53
- "@jsonic/yaml": ">=0",
53
+ "@tabnas/jsonic": ">=0.4.3",
54
+ "@tabnas/yaml": ">=0.4.2",
54
55
  "@voxgig/struct": ">=0",
55
56
  "@voxgig/util": ">=0",
56
- "aontu": ">=0",
57
+ "aontu": "^0.49.0",
57
58
  "jostraca": ">=0",
58
- "jsonic": ">=2",
59
59
  "shape": ">=10"
60
60
  },
61
61
  "dependencies": {