@fncts/schema 0.0.21 → 0.0.23

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 (87) hide show
  1. package/AST.d.ts +4 -4
  2. package/ASTAnnotation.d.ts +7 -0
  3. package/Eq.d.ts +13 -0
  4. package/Schema/derivations.d.ts +12 -4
  5. package/Schema.d.ts +0 -1
  6. package/_cjs/AST.cjs +4 -5
  7. package/_cjs/AST.cjs.map +1 -1
  8. package/_cjs/ASTAnnotation.cjs +7 -3
  9. package/_cjs/ASTAnnotation.cjs.map +1 -1
  10. package/_cjs/ASTAnnotationMap.cjs +1 -2
  11. package/_cjs/ASTAnnotationMap.cjs.map +1 -1
  12. package/_cjs/Eq.cjs +156 -0
  13. package/_cjs/Eq.cjs.map +1 -0
  14. package/_cjs/Gen.cjs +1 -2
  15. package/_cjs/Gen.cjs.map +1 -1
  16. package/_cjs/Guard.cjs +1 -2
  17. package/_cjs/Guard.cjs.map +1 -1
  18. package/_cjs/ParseError/PathFormatter.cjs +1 -2
  19. package/_cjs/ParseError/PathFormatter.cjs.map +1 -1
  20. package/_cjs/ParseError/TreeFormatter.cjs +1 -2
  21. package/_cjs/ParseError/TreeFormatter.cjs.map +1 -1
  22. package/_cjs/ParseResult.cjs +1 -2
  23. package/_cjs/ParseResult.cjs.map +1 -1
  24. package/_cjs/Parser/api.cjs +1 -2
  25. package/_cjs/Parser/api.cjs.map +1 -1
  26. package/_cjs/Parser/definition.cjs +1 -2
  27. package/_cjs/Parser/definition.cjs.map +1 -1
  28. package/_cjs/Parser/interpreter.cjs +1 -2
  29. package/_cjs/Parser/interpreter.cjs.map +1 -1
  30. package/_cjs/Schema/api/conc.cjs +1 -2
  31. package/_cjs/Schema/api/conc.cjs.map +1 -1
  32. package/_cjs/Schema/api/either.cjs +1 -2
  33. package/_cjs/Schema/api/either.cjs.map +1 -1
  34. package/_cjs/Schema/api/hashMap.cjs +1 -2
  35. package/_cjs/Schema/api/hashMap.cjs.map +1 -1
  36. package/_cjs/Schema/api/hashSet.cjs +1 -2
  37. package/_cjs/Schema/api/hashSet.cjs.map +1 -1
  38. package/_cjs/Schema/api/list.cjs +1 -2
  39. package/_cjs/Schema/api/list.cjs.map +1 -1
  40. package/_cjs/Schema/api/map.cjs +1 -2
  41. package/_cjs/Schema/api/map.cjs.map +1 -1
  42. package/_cjs/Schema/api/maybe.cjs +1 -2
  43. package/_cjs/Schema/api/maybe.cjs.map +1 -1
  44. package/_cjs/Schema/api/set.cjs +1 -2
  45. package/_cjs/Schema/api/set.cjs.map +1 -1
  46. package/_cjs/Schema/api.cjs +1 -2
  47. package/_cjs/Schema/api.cjs.map +1 -1
  48. package/_cjs/Schema/definition.cjs +1 -2
  49. package/_cjs/Schema/definition.cjs.map +1 -1
  50. package/_cjs/Schema/derivations.cjs +9 -6
  51. package/_cjs/Schema/derivations.cjs.map +1 -1
  52. package/_cjs/Schema.cjs +0 -11
  53. package/_cjs/Schema.cjs.map +1 -1
  54. package/_cjs/Show.cjs +2 -2
  55. package/_cjs/Show.cjs.map +1 -1
  56. package/_cjs/utils.cjs +2 -2
  57. package/_cjs/utils.cjs.map +1 -1
  58. package/_mjs/AST.mjs +3 -3
  59. package/_mjs/AST.mjs.map +1 -1
  60. package/_mjs/ASTAnnotation.mjs +5 -0
  61. package/_mjs/ASTAnnotation.mjs.map +1 -1
  62. package/_mjs/Eq.mjs +148 -0
  63. package/_mjs/Eq.mjs.map +1 -0
  64. package/_mjs/Schema/derivations.mjs +8 -4
  65. package/_mjs/Schema/derivations.mjs.map +1 -1
  66. package/_mjs/Schema.mjs +0 -1
  67. package/_mjs/Schema.mjs.map +1 -1
  68. package/_mjs/Show.mjs +1 -0
  69. package/_mjs/Show.mjs.map +1 -1
  70. package/_mjs/utils.mjs +1 -0
  71. package/_mjs/utils.mjs.map +1 -1
  72. package/_src/AST.ts +5 -3
  73. package/_src/ASTAnnotation.ts +7 -0
  74. package/_src/Eq.ts +156 -0
  75. package/_src/Schema/derivations.ts +17 -6
  76. package/_src/Schema.ts +0 -1
  77. package/_src/Show.ts +4 -2
  78. package/_src/global.ts +4 -0
  79. package/_src/utils.ts +1 -0
  80. package/global.d.ts +4 -0
  81. package/package.json +3 -3
  82. package/Schema/api/immutableArray.d.ts +0 -22
  83. package/_cjs/Schema/api/immutableArray.cjs +0 -62
  84. package/_cjs/Schema/api/immutableArray.cjs.map +0 -1
  85. package/_mjs/Schema/api/immutableArray.mjs +0 -53
  86. package/_mjs/Schema/api/immutableArray.mjs.map +0 -1
  87. package/_src/Schema/api/immutableArray.ts +0 -58
package/AST.d.ts CHANGED
@@ -341,16 +341,16 @@ export declare class PropertySignature {
341
341
  */
342
342
  export declare function createPropertySignature(name: PropertyKey, type: AST, isOptional: boolean, isReadonly: boolean, annotations?: ASTAnnotationMap): PropertySignature;
343
343
  export declare class IndexSignature {
344
- readonly parameter: StringKeyword | SymbolKeyword | TemplateLiteral | Refinement;
344
+ readonly parameter: StringKeyword | SymbolKeyword | TemplateLiteral | NumberKeyword | Refinement;
345
345
  readonly type: AST;
346
346
  readonly isReadonly: boolean;
347
- constructor(parameter: StringKeyword | SymbolKeyword | TemplateLiteral | Refinement, type: AST, isReadonly: boolean);
347
+ constructor(parameter: StringKeyword | SymbolKeyword | TemplateLiteral | NumberKeyword | Refinement, type: AST, isReadonly: boolean);
348
348
  }
349
349
  /**
350
350
  * @tsplus static fncts.schema.ASTOps createIndexSignature
351
351
  * @tsplus location "@fncts/schema/AST"
352
352
  */
353
- export declare function createIndexSignature(parameter: StringKeyword | SymbolKeyword | TemplateLiteral | Refinement, type: AST, isReadonly: boolean): IndexSignature;
353
+ export declare function createIndexSignature(parameter: StringKeyword | SymbolKeyword | TemplateLiteral | NumberKeyword | Refinement, type: AST, isReadonly: boolean): IndexSignature;
354
354
  export declare class TypeLiteral extends AST {
355
355
  readonly annotations: ASTAnnotationMap;
356
356
  readonly _tag = ASTTag.TypeLiteral;
@@ -482,7 +482,7 @@ export declare function appendRestElement(restElement: AST): (self: Tuple) => Tu
482
482
  * @tsplus location "@fncts/schema/AST"
483
483
  */
484
484
  export declare function appendElement(element: Element): (self: Tuple) => Tuple;
485
- export declare function getParameter(x: IndexSignature["parameter"]): StringKeyword | SymbolKeyword | TemplateLiteral;
485
+ export declare function getParameter(x: IndexSignature["parameter"]): StringKeyword | NumberKeyword | SymbolKeyword | TemplateLiteral;
486
486
  /**
487
487
  * @tsplus getter fncts.schema.AST getPropertySignatures
488
488
  * @tsplus location "@fncts/schema/AST"
@@ -4,6 +4,7 @@ import { Tag } from "@fncts/base/data/Tag/definition";
4
4
  import { ParseError } from "@fncts/schema/ParseError";
5
5
  import { Vector } from "@fncts/base/collection/immutable/Vector";
6
6
  import { AST } from "@fncts/schema/AST";
7
+ import { Eq } from "@fncts/base/data/Eq/definition";
7
8
  import type { Validation } from "@fncts/base/data/Branded";
8
9
  export declare const ASTAnnotationVariance: unique symbol;
9
10
  export type ASTAnnotationVariance = typeof ASTAnnotationVariance;
@@ -88,3 +89,9 @@ export declare const GenHookTag: import("@fncts/base/data/Tag").Tag<Hook<any>, H
88
89
  * @tsplus location "@fncts/schema/ASTAnnotation"
89
90
  */
90
91
  export declare const GenHook: ASTAnnotation<Hook<any>>;
92
+ export declare const EqHookTag: import("@fncts/base/data/Tag").Tag<Hook<import("@fncts/base/typeclass").Eq<any>>, Hook<import("@fncts/base/typeclass").Eq<any>>>;
93
+ /**
94
+ * @tsplus static fncts.schema.ASTAnnotationOps EqHook
95
+ * @tsplus location "@fncts/schema/ASTAnnotation"
96
+ */
97
+ export declare const EqHook: ASTAnnotation<Hook<import("@fncts/base/typeclass").Eq<any>>>;
package/Eq.d.ts ADDED
@@ -0,0 +1,13 @@
1
+ import { Schema } from "@fncts/schema/Schema/definition";
2
+ import { Eq } from "@fncts/base/data/Eq/definition";
3
+ import { AST } from "@fncts/schema/AST";
4
+ /**
5
+ * @tsplus getter fncts.schema.Schema equals
6
+ * @tsplus location "@fncts/schema/Eq"
7
+ */
8
+ export declare function equals<A>(self: Schema<A>): (a: A, b: A) => boolean;
9
+ /**
10
+ * @tsplus getter fncts.schema.Schema eq
11
+ * @tsplus location "@fncts/schema/Eq"
12
+ */
13
+ export declare function eq<A>(self: Schema<A>): Eq<A>;
@@ -4,6 +4,7 @@ import { Schema } from "@fncts/schema/Schema/definition";
4
4
  import { LiteralValue, AST } from "@fncts/schema/AST";
5
5
  import { Maybe } from "@fncts/base/data/Maybe/definition";
6
6
  import { Vector } from "@fncts/base/collection/immutable/Vector";
7
+ import type { Union } from "@fncts/typelevel";
7
8
  import type { OptionalKeys, RequiredKeys } from "@fncts/typelevel/Object";
8
9
  /**
9
10
  * @tsplus derive fncts.schema.Schema<_> 10
@@ -23,11 +24,17 @@ export declare function deriveLiteral<A extends LiteralValue>(...[value]: Check<
23
24
  type MaybeKeys<A> = {
24
25
  [K in keyof A]: A[K] extends Maybe<any> ? K : never;
25
26
  }[keyof A];
27
+ type IndexSignatures<A extends Record<PropertyKey, any>> = Union.ListOf<{
28
+ [K in keyof A]: Check<Check.IsLiteral<K>> extends Check.True ? never : {
29
+ key: Schema<K>;
30
+ value: Schema<A[K]>;
31
+ };
32
+ }[keyof A]>;
26
33
  /**
27
34
  * @tsplus derive fncts.schema.Schema<_> 20
28
35
  * @tsplus location "@fncts/schema/Schema/derivations"
29
36
  */
30
- export declare function deriveStruct<A extends Record<string, any>>(...[requiredFields, optionalFields, maybeFields]: Check<Check.IsStruct<A>> extends Check.True ? [
37
+ export declare function deriveStruct<A extends Record<string, any>>(...[requiredFields, optionalFields, maybeFields, indexSchema]: Check<Check.IsStruct<A>> extends Check.True ? [
31
38
  ...[
32
39
  requiredFields: {
33
40
  [k in Exclude<RequiredKeys<A>, MaybeKeys<A>>]: Schema<A[k]>;
@@ -38,17 +45,18 @@ export declare function deriveStruct<A extends Record<string, any>>(...[required
38
45
  [k in OptionalKeys<A>]: Schema<A[k]>;
39
46
  }
40
47
  ]),
41
- ...([MaybeKeys<A>] extends [never] ? [] : [
48
+ ...([MaybeKeys<A>] extends [never] ? [maybeFields: {}] : [
42
49
  maybeFields: {
43
50
  [k in MaybeKeys<A>]: [A[k]] extends [Maybe<infer _A>] ? Schema<_A> : never;
44
51
  }
45
- ])
52
+ ]),
53
+ ...[indexSchema: IndexSignatures<A>]
46
54
  ] : never): Schema<A>;
47
55
  /**
48
56
  * @tsplus derive fncts.schema.Schema<_> 10
49
57
  * @tsplus location "@fncts/schema/Schema/derivations"
50
58
  */
51
- export declare function deriveTuple<A extends ReadonlyArray<unknown>>(...[components]: Check<Check.IsTuple<A>> extends Check.True ? [components: {
59
+ export declare function deriveTuple<A extends ReadonlyArray<any>>(...[components]: Check<Check.IsTuple<A>> extends Check.True ? [components: {
52
60
  [K in keyof A]: Schema<A[K]>;
53
61
  }] : never): Schema<A>;
54
62
  /**
package/Schema.d.ts CHANGED
@@ -5,7 +5,6 @@ export * from "./Schema/api/conc.js";
5
5
  export * from "./Schema/api/either.js";
6
6
  export * from "./Schema/api/hashMap.js";
7
7
  export * from "./Schema/api/hashSet.js";
8
- export * from "./Schema/api/immutableArray.js";
9
8
  export * from "./Schema/api/list.js";
10
9
  export * from "./Schema/api/map.js";
11
10
  export * from "./Schema/api/maybe.js";
package/_cjs/AST.cjs CHANGED
@@ -66,8 +66,7 @@ var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require
66
66
  var _Showable = /*#__PURE__*/require("@fncts/base/data/Showable");
67
67
  var _utils = /*#__PURE__*/require("@fncts/schema/utils");
68
68
  var _ASTAnnotationMap = /*#__PURE__*/require("./ASTAnnotationMap.cjs");
69
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
70
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
69
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
71
70
  var _a;
72
71
  const fileName_1 = "(@fncts/schema) src/AST.ts";
73
72
  const createLiteral = exports.createLiteral = createLiteral_1;
@@ -950,9 +949,9 @@ function getPropertySignatures_1(self) {
950
949
  }) => {
951
950
  if (tsplus_module_3.every(ps => tsplus_module_3.some(p => p.name === name)(ps))(propertySignatures)) {
952
951
  const members = tsplus_module_3.flatMap(ps => tsplus_module_3.filter(p => p.name === name)(ps))(propertySignatures);
953
- return tsplus_module_4.just(createPropertySignature_1(name, createUnion_1(tsplus_module_3.map(p => p.type)(members)), tsplus_module_3.some(p => p.isOptional)(members), tsplus_module_3.some(p => p.isReadonly)(members)), fileName_1 + ":1163:22");
952
+ return tsplus_module_4.just(createPropertySignature_1(name, createUnion_1(tsplus_module_3.map(p => p.type)(members)), tsplus_module_3.some(p => p.isOptional)(members), tsplus_module_3.some(p => p.isReadonly)(members)), fileName_1 + ":1165:22");
954
953
  }
955
- return tsplus_module_4.nothing(fileName_1 + ":1172:23");
954
+ return tsplus_module_4.nothing(fileName_1 + ":1174:23");
956
955
  })(tsplus_module_3.unsafeGet(0)(propertySignatures));
957
956
  }
958
957
  case 17 /* ASTTag.TypeLiteral */:
@@ -1221,7 +1220,7 @@ function getFormattedExpected(verbose = false) {
1221
1220
  return self => {
1222
1221
  if (verbose) {
1223
1222
  const description = tsplus_module_15.orElse(() => self.annotations.get(tsplus_module_2.Title))(self.annotations.get(tsplus_module_2.Description));
1224
- return tsplus_module_12.match(() => description, identifier => tsplus_module_12.match(() => tsplus_module_4.just(identifier, fileName_1 + ":1510:23"), description => tsplus_module_4.just(`${identifier} (${description})`, fileName_1 + ":1511:34"))(description))(self.annotations.get(tsplus_module_2.Identifier));
1223
+ return tsplus_module_12.match(() => description, identifier => tsplus_module_12.match(() => tsplus_module_4.just(identifier, fileName_1 + ":1512:23"), description => tsplus_module_4.just(`${identifier} (${description})`, fileName_1 + ":1513:34"))(description))(self.annotations.get(tsplus_module_2.Identifier));
1225
1224
  } else {
1226
1225
  return tsplus_module_15.orElse(() => self.annotations.get(tsplus_module_2.Description))(tsplus_module_15.orElse(() => self.annotations.get(tsplus_module_2.Title))(self.annotations.get(tsplus_module_2.Identifier)));
1227
1226
  }
package/_cjs/AST.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"AST.cjs","names":["_Showable","require","_utils","_ASTAnnotationMap","_getRequireWildcardCache","e","WeakMap","r","t","_interopRequireWildcard","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","createLiteral","exports","createLiteral_1","isLiteral","isLiteral_1","createUniqueSymbol","createUniqueSymbol_1","isUniqueSymbol","isUniqueSymbol_1","isStringKeyword","isStringKeyword_1","isNumberKeyword","isNumberKeyword_1","isSymbolKeyword","isSymbolKeyword_1","createTemplateLiteral","createTemplateLiteral_1","createElement","createElement_1","createTuple","createTuple_1","createPropertySignature","createPropertySignature_1","createIndexSignature","createIndexSignature_1","createTypeLiteral","createTypeLiteral_1","createUnion","createUnion_1","createLazy","createLazy_1","createRefinement","createRefinement_1","getPropertySignatures","getPropertySignatures_1","keysOf","keysOf_1","partial","partial_1","getFrom","getFrom_1","getTo","getTo_1","ASTTypeId","Symbol","for","Annotated","constructor","annotations","ASTAnnotationMap","empty","AST","_a","toString","verbose","tsplus_module_1","showAST","concrete","_","getAnnotations","key","self","Declaration","typeParameters","decode","encode","_tag","clone","newProperties","createDeclaration","isDeclaration","Literal","literal","UniqueSymbol","symbol","UndefinedKeyword","undefinedKeyword_1","annotate","tsplus_module_2","Title","undefinedKeyword","VoidKeyword","voidKeyword","NeverKeyword","neverKeyword_1","neverKeyword","UnknownKeyword","unknownKeyword_1","unknownKeyword","AnyKeyword","anyKeyword","StringKeyword","stringKeyword_1","stringKeyword","NumberKeyword","numberKeyword_1","numberKeyword","BooleanKeyword","booleanKeyword","isBooleanKeyword","BigIntKeyword","bigIntKeyword","isBigIntKeyword","SymbolKeyword","symbolKeyword_1","symbolKeyword","ObjectKeyword","objectKeyword","Enum","enums","createEnum","TemplateLiteralSpan","type","TemplateLiteral","head","spans","tsplus_module_3","isNonEmpty","Element","isOptional","String","Tuple","elements","rest","isReadonly","unknownArray","tsplus_module_4","just","vector","fileName_1","PropertySignature","name","IndexSignature","parameter","TypeLiteral","propertySignatures","indexSignatures","sortByAscendingCardinality","isTypeLiteral","unknownRecord","Union","types","isUnion","candidates","unify","length","unsafeGet","sortByDescendingWeight","Lazy","getAST","isLazy","Refinement","from","predicate","input","options","tsplus_module_5","succeed","fail","tsplus_module_6","typeError","isRefinement","Transform","to","createTransform","Validation","validation","createValidation","getCardinality","ast","ast_1","sort","tsplus_module_8","contramap","tsplus_module_7","Ord","OrdWeight","tsplus_module_9","tuple","maxWeight","tsplus_module_10","max","maxWeightAll","weights","tsplus_module_11","foldLeft","emptyWeight","b","getWeight","tsplus_module_12","match","y","z","Surrogate","map","x","out","flatMap","some","filter","m","combineAnnotations","combine","setAnnotation","annotation","value","appendRestElement","restElement","tsplus_module_13","isJust","Error","appendElement","element","append","nothing","getParameter","surrogate","mapWithIndex","filterMap","every","ps","p","members","concat","is","keyof","createRecord","emptyPushable","go","tsplus_module_14","push","forEach","show","pick","keys","includes","omit","tsplus_module_15","f","createKey","getCompiler","compile","memoize","getLiterals","isDecoding","propertySignature","getSearchTree","otherwise","member","tags","j","hash","buckets","literals","prototype","getFormattedExpected","description","orElse","Description","identifier","Identifier"],"sources":["../_src/AST.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAAA,SAAA,gBAAAC,OAAA;AACA,IAAAC,MAAA,gBAAAD,OAAA;AAGA,IAAAE,iBAAA,gBAAAF,OAAA;AAAyD,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAI,wBAAAJ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;;;MA6KzCW,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAAE,eAAA;MAObC,SAAS,GAAAF,OAAA,CAAAE,SAAA,GAAAC,WAAA;MA0BTC,kBAAkB,GAAAJ,OAAA,CAAAI,kBAAA,GAAAC,oBAAA;MAUlBC,cAAc,GAAAN,OAAA,CAAAM,cAAA,GAAAC,gBAAA;MAwIdC,eAAe,GAAAR,OAAA,CAAAQ,eAAA,GAAAC,iBAAA;MA8BfC,eAAe,GAAAV,OAAA,CAAAU,eAAA,GAAAC,iBAAA;MA0FfC,eAAe,GAAAZ,OAAA,CAAAY,eAAA,GAAAC,iBAAA;MAiGfC,qBAAqB,GAAAd,OAAA,CAAAc,qBAAA,GAAAC,uBAAA;MA8BrBC,aAAa,GAAAhB,OAAA,CAAAgB,aAAA,GAAAC,eAAA;MAgCbC,WAAW,GAAAlB,OAAA,CAAAkB,WAAA,GAAAC,aAAA;MAyCXC,uBAAuB,GAAApB,OAAA,CAAAoB,uBAAA,GAAAC,yBAAA;MAyBvBC,oBAAoB,GAAAtB,OAAA,CAAAsB,oBAAA,GAAAC,sBAAA;MA+CpBC,iBAAiB,GAAAxB,OAAA,CAAAwB,iBAAA,GAAAC,mBAAA;MAgDjBC,WAAW,GAAA1B,OAAA,CAAA0B,WAAA,GAAAC,aAAA;MAiCXC,UAAU,GAAA5B,OAAA,CAAA4B,UAAA,GAAAC,YAAA;MA0CVC,gBAAgB,GAAA9B,OAAA,CAAA8B,gBAAA,GAAAC,kBAAA;MA+QhBC,qBAAqB,GAAAhC,OAAA,CAAAgC,qBAAA,GAAAC,uBAAA;MA6CrBC,MAAM,GAAAlC,OAAA,CAAAkC,MAAA,GAAAC,QAAA;MAuGNC,OAAO,GAAApC,OAAA,CAAAoC,OAAA,GAAAC,SAAA;MAqCPC,OAAO,GAAAtC,OAAA,CAAAsC,OAAA,GAAAC,SAAA;MAuCPC,KAAK,GAAAxC,OAAA,CAAAwC,KAAA,GAAAC,OAAA;AAh1Cd,MAAMC,SAAS,GAAA1C,OAAA,CAAA0C,SAAA,gBAAGC,MAAM,CAACC,GAAG,CAAC,kBAAkB,CAAC;AAGjD,MAAgBC,SAAS;EAA/BC,YAAA;IACW,KAAAC,WAAW,GAAqBC,kCAAgB,CAACC,KAAK;EACjE;;AAEA;;;;AAAAjD,OAAA,CAAA6C,SAAA,GAAAA,SAAA;AAIM,MAAgBK,GAAI,SAAQL,SAAS;EAA3CC,YAAA;;IACW,KAAAK,EAAA,CAAW,GAAcT,SAAS;EAO7C;EAHEU,QAAQA,CAACC,OAAA,GAAmB,KAAK;IAC/B,OAAOC,eAAA,CAAAC,OAAA,CAAUF,OAAO,EAAjB,IAAI,CAAc;EAC3B;;AACDrD,OAAA,CAAAkD,GAAA,GAAAA,GAAA;KAPWR,SAAS;AAsErB;;;;AAIM,SAAUc,QAAQA,CAACC,CAAM;EAC7B;AAAA;AAGI,SAAUC,cAAcA,CAAIC,GAAqB;EACrD,OAAQC,IAAe,IAAc;IACnC,OAAOA,IAAI,CAACb,WAAW,CAAC5D,GAAG,CAACwE,GAAG,CAAC;EAClC,CAAC;AACH;AAEA;;;AAIA;;;AAGM,MAAOE,WAAY,SAAQX,GAAG;EAElCJ,YACWgB,cAA2B,EAC3BC,MAEoD,EACpDC,MAEoD,EACpDjB,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IATE,KAAAa,cAAc,GAAdA,cAAc;IACd,KAAAC,MAAM,GAANA,MAAM;IAGN,KAAAC,MAAM,GAANA,MAAM;IAGN,KAAAjB,WAAW,GAAXA,WAAW;IATb,KAAAkB,IAAI;EAYb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIN,WAAW,CACpBM,aAAa,CAACL,cAAc,IAAI,IAAI,CAACA,cAAc,EACnDK,aAAa,CAACJ,MAAM,IAAI,IAAI,CAACA,MAAM,EACnCI,aAAa,CAACH,MAAM,IAAI,IAAI,CAACA,MAAM,EACnCG,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAA6D,WAAA,GAAAA,WAAA;AAGM,SAAUO,iBAAiBA,CAC/BN,cAA2B,EAC3BC,MAA2G,EAC3GC,MAA2G,EAC3GjB,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EAEtD,OAAO,IAAIY,WAAW,CAACC,cAAc,EAAEC,MAAM,EAAEC,MAAM,EAAEjB,WAAW,CAAC;AACrE;AAEA;;;AAGM,SAAUsB,aAAaA,CAACT,IAAS;EACrC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAQM,MAAOK,OAAQ,SAAQpB,GAAG;EAE9BJ,YACWyB,OAAqB,EACrBxB,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAHE,KAAAsB,OAAO,GAAPA,OAAO;IACP,KAAAxB,WAAW,GAAXA,WAAW;IAHb,KAAAkB,IAAI;EAMb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIG,OAAO,CAACH,aAAa,CAACI,OAAO,IAAI,IAAI,CAACA,OAAO,EAAEJ,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EAC1G;;AAGF;;;AAAA/C,OAAA,CAAAsE,OAAA,GAAAA,OAAA;AAGA,SAAArE,gBAA8BsE,OAAqB,EAAExB,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EACzG,OAAO,IAAIqB,OAAO,CAACC,OAAO,EAAExB,WAAW,CAAC;AAC1C;AAEA;;;AAGA,SAAA5C,YAA0ByD,IAAS;EACjC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAOO,YAAa,SAAQtB,GAAG;EAEnCJ,YACW2B,MAAc,EACd1B,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAHE,KAAAwB,MAAM,GAANA,MAAM;IACN,KAAA1B,WAAW,GAAXA,WAAW;IAHb,KAAAkB,IAAI;EAMb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIK,YAAY,CAACL,aAAa,CAACM,MAAM,IAAI,IAAI,CAACA,MAAM,EAAEN,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EAC7G;;AAGF;;;AAAA/C,OAAA,CAAAwE,YAAA,GAAAA,YAAA;AAGA,SAAAnE,qBACEoE,MAAc,EACd1B,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EAEtD,OAAO,IAAIuB,YAAY,CAACC,MAAM,EAAE1B,WAAW,CAAC;AAC9C;AAEA;;;AAGA,SAAAxC,iBAA+BqD,IAAS;EACtC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAOS,gBAAiB,SAAQxB,GAAG;EAEvCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIO,gBAAgB,CAACP,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EAC5E;;AAGF;;;AAAA/C,OAAA,CAAA0E,gBAAA,GAAAA,gBAAA;AAGO,MAAMC,kBAAA,gBAAqC,IAAID,gBAAgB,cACpE1B,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,WAAW,CAAC,CAClE;MAFYC,gBAAgB,GAAA/E,OAAA,CAAA+E,gBAAA,GAAAJ,kBAAA;AAI7B;;;AAIM,MAAOK,WAAY,SAAQ9B,GAAG;EAElCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIa,WAAW,CAACb,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACvE;;AAGF;;;AAAA/C,OAAA,CAAAgF,WAAA,GAAAA,WAAA;AAGO,MAAMC,WAAW,GAAAjF,OAAA,CAAAiF,WAAA,gBAAgB,IAAID,WAAW,cAAChC,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,MAAM,CAAC,CAAC;AAErH;;;AAIM,MAAOI,YAAa,SAAQhC,GAAG;EAEnCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIe,YAAY,CAACf,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACxE;;AAGF;;;AAAA/C,OAAA,CAAAkF,YAAA,GAAAA,YAAA;AAGO,MAAMC,cAAA,gBAA6B,IAAID,YAAY,cACxDlC,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,OAAO,CAAC,CAC9D;MAFYM,YAAY,GAAApF,OAAA,CAAAoF,YAAA,GAAAD,cAAA;AAIzB;;;AAIM,MAAOE,cAAe,SAAQnC,GAAG;EAErCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIkB,cAAc,CAAClB,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EAC1E;;AAGF;;;AAAA/C,OAAA,CAAAqF,cAAA,GAAAA,cAAA;AAGO,MAAMC,gBAAA,gBAAiC,IAAID,cAAc,cAC9DrC,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,SAAS,CAAC,CAChE;MAFYS,cAAc,GAAAvF,OAAA,CAAAuF,cAAA,GAAAD,gBAAA;AAI3B;;;AAIM,MAAOE,UAAW,SAAQtC,GAAG;EAEjCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIqB,UAAU,CAACrB,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACtE;;AAGF;;;AAAA/C,OAAA,CAAAwF,UAAA,GAAAA,UAAA;AAGO,MAAMC,UAAU,GAAAzF,OAAA,CAAAyF,UAAA,gBAAe,IAAID,UAAU,cAACxC,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,KAAK,CAAC,CAAC;AAEjH;;;AAIM,MAAOY,aAAc,SAAQxC,GAAG;EAEpCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIuB,aAAa,CAACvB,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACzE;;AAGF;;;AAAA/C,OAAA,CAAA0F,aAAA,GAAAA,aAAA;AAGO,MAAMC,eAAA,gBAA+B,IAAID,aAAa,cAC3D1C,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,QAAQ,CAAC,CAC/D;MAFYc,aAAa,GAAA5F,OAAA,CAAA4F,aAAA,GAAAD,eAAA;AAI1B;;;AAGA,SAAAlF,kBAAgCmD,IAAS;EACvC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAO4B,aAAc,SAAQ3C,GAAG;EAEpCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAI0B,aAAa,CAAC1B,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACzE;;AAGF;;;AAAA/C,OAAA,CAAA6F,aAAA,GAAAA,aAAA;AAGO,MAAMC,eAAA,gBAA+B,IAAID,aAAa,cAC3D7C,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,QAAQ,CAAC,CAC/D;MAFYiB,aAAa,GAAA/F,OAAA,CAAA+F,aAAA,GAAAD,eAAA;AAI1B;;;AAGA,SAAAnF,kBAAgCiD,IAAS;EACvC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAO+B,cAAe,SAAQ9C,GAAG;EAErCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAI6B,cAAc,CAAC7B,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EAC1E;;AAGF;;;AAAA/C,OAAA,CAAAgG,cAAA,GAAAA,cAAA;AAGO,MAAMC,cAAc,GAAAjG,OAAA,CAAAiG,cAAA,gBAAmB,IAAID,cAAc,cAC9DhD,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,SAAS,CAAC,CAChE;AAED;;;AAGM,SAAUoB,gBAAgBA,CAACtC,IAAS;EACxC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAOkC,aAAc,SAAQjD,GAAG;EAEpCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIgC,aAAa,CAAChC,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACzE;;AAGF;;;AAAA/C,OAAA,CAAAmG,aAAA,GAAAA,aAAA;AAGO,MAAMC,aAAa,GAAApG,OAAA,CAAAoG,aAAA,gBAAkB,IAAID,aAAa,cAC3DnD,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,QAAQ,CAAC,CAC/D;AAED;;;AAGM,SAAUuB,eAAeA,CAACzC,IAAS;EACvC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAOqC,aAAc,SAAQpD,GAAG;EAEpCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAImC,aAAa,CAACnC,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACzE;;AAGF;;;AAAA/C,OAAA,CAAAsG,aAAA,GAAAA,aAAA;AAGO,MAAMC,eAAA,gBAA+B,IAAID,aAAa,cAC3DtD,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,QAAQ,CAAC,CAC/D;MAFY0B,aAAa,GAAAxG,OAAA,CAAAwG,aAAA,GAAAD,eAAA;AAI1B;;;AAGA,SAAA1F,kBAAgC+C,IAAS;EACvC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAOwC,aAAc,SAAQvD,GAAG;EAEpCJ,YAAqBC,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IACzE,KAAK,EAAE;IADY,KAAAF,WAAW,GAAXA,WAAW;IADvB,KAAAkB,IAAI;EAGb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIsC,aAAa,CAACtC,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACzE;;AAGF;;;AAAA/C,OAAA,CAAAyG,aAAA,GAAAA,aAAA;AAGO,MAAMC,aAAa,GAAA1G,OAAA,CAAA0G,aAAA,gBAAkB,IAAID,aAAa,cAC3DzD,kCAAgB,CAACC,KAAK,CAAC2B,QAAQ,CAAAC,eAAA,CAAAC,KAAA,EAAsB,QAAQ,CAAC,CAC/D;AAED;;;AAIM,MAAO6B,IAAK,SAAQzD,GAAG;EAE3BJ,YACW8D,KAAiD,EACjD7D,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAHE,KAAA2D,KAAK,GAALA,KAAK;IACL,KAAA7D,WAAW,GAAXA,WAAW;IAHb,KAAAkB,IAAI;EAMb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIwC,IAAI,CAACxC,aAAa,CAACyC,KAAK,IAAI,IAAI,CAACA,KAAK,EAAEzC,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACnG;;AAGF;;;AAAA/C,OAAA,CAAA2G,IAAA,GAAAA,IAAA;AAGM,SAAUE,UAAUA,CACxBD,KAAiD,EACjD7D,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EAEtD,OAAO,IAAI0D,IAAI,CAACC,KAAK,EAAE7D,WAAW,CAAC;AACrC;AAEM,MAAO+D,mBAAmB;EAC9BhE,YACWiE,IAAmC,EACnCxC,OAAe;IADf,KAAAwC,IAAI,GAAJA,IAAI;IACJ,KAAAxC,OAAO,GAAPA,OAAO;EACf;EAEHnB,QAAQA,CAAA;IACN,QAAQ,IAAI,CAAC2D,IAAI,CAAC9C,IAAI;MACpB;QACE,OAAO,WAAW;MACpB;QACE,OAAO,WAAW;IACtB;EACF;;AAGF;;;AAAAjE,OAAA,CAAA8G,mBAAA,GAAAA,mBAAA;AAIM,MAAOE,eAAgB,SAAQ9D,GAAG;EAEtCJ,YACWmE,IAAY,EACZC,KAAkC,EAClCnE,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAJE,KAAAgE,IAAI,GAAJA,IAAI;IACJ,KAAAC,KAAK,GAALA,KAAK;IACL,KAAAnE,WAAW,GAAXA,WAAW;IAJb,KAAAkB,IAAI;EAOb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAOpD,uBAAA,CACLoD,aAAa,CAAC8C,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/B9C,aAAa,CAAC+C,KAAK,IAAI,IAAI,CAACA,KAAK,EACjC/C,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAAgH,eAAA,GAAAA,eAAA;AAGA,SAAAjG,wBACEkG,IAAY,EACZC,KAAkC,EAClCnE,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EAEtD,IAAIkE,eAAA,CAAAC,UAAA,CAAAF,KAAK,CAAa,EAAE;IACtB,OAAO,IAAIF,eAAe,CAACC,IAAI,EAAEC,KAAK,EAAEnE,WAAW,CAAC;EACtD,CAAC,MAAM;IACL,OAAO9C,eAAA,CAAcgH,IAAI,EAAElE,WAAW,CAAC;EACzC;AACF;AAEA;;;AAIM,MAAOsE,OAAO;EAClBvE,YACWiE,IAAS,EACTO,UAAmB;IADnB,KAAAP,IAAI,GAAJA,IAAI;IACJ,KAAAO,UAAU,GAAVA,UAAU;EAClB;EAEHlE,QAAQA,CAAA;IACN,OAAOmE,MAAM,CAAC,IAAI,CAACR,IAAI,CAAC,IAAI,IAAI,CAACO,UAAU,GAAG,GAAG,GAAG,EAAE,CAAC;EACzD;;AAGF;;;AAAAtH,OAAA,CAAAqH,OAAA,GAAAA,OAAA;AAGA,SAAApG,gBAA8B8F,IAAS,EAAEO,UAAmB;EAC1D,OAAO,IAAID,OAAO,CAACN,IAAI,EAAEO,UAAU,CAAC;AACtC;AAEA;;;AAIM,MAAOE,KAAM,SAAQtE,GAAG;EAE5BJ,YACW2E,QAAyB,EACzBC,IAAwB,EACxBC,UAAmB,EACnB5E,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IALE,KAAAwE,QAAQ,GAARA,QAAQ;IACR,KAAAC,IAAI,GAAJA,IAAI;IACJ,KAAAC,UAAU,GAAVA,UAAU;IACV,KAAA5E,WAAW,GAAXA,WAAW;IALb,KAAAkB,IAAI;EAQb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIqD,KAAK,CACdrD,aAAa,CAACsD,QAAQ,IAAI,IAAI,CAACA,QAAQ,EACvCtD,aAAa,CAACuD,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/BvD,aAAa,CAACwD,UAAU,IAAI,IAAI,CAACA,UAAU,EAC3CxD,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAAwH,KAAA,GAAAA,KAAA;AAGA,SAAArG,cACEsG,QAAyB,EACzBC,IAAwB,EACxBC,UAAmB,EACnB5E,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EAEtD,OAAO,IAAIuE,KAAK,CAACC,QAAQ,EAAEC,IAAI,EAAEC,UAAU,EAAE5E,WAAW,CAAC;AAC3D;AAEA;;;AAGO,MAAM6E,YAAY,GAAA5H,OAAA,CAAA4H,YAAA,gBAAGzG,aAAA,cAAgBgG,eAAA,CAAAlE,KAAA,EAAc,eAAE4E,eAAA,CAAAC,IAAA,cAAKX,eAAA,CAAAY,MAAA,CAAAzC,gBAAA,CAA0B,EAAA0C,UAAA,aAAC,EAAE,IAAI,CAAC;AAEnG;;;AAIM,MAAOC,iBAAiB;EAC5BnF,YACWoF,IAAiB,EACjBnB,IAAS,EACTO,UAAmB,EACnBK,UAAmB,EACnB5E,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAJtD,KAAAiF,IAAI,GAAJA,IAAI;IACJ,KAAAnB,IAAI,GAAJA,IAAI;IACJ,KAAAO,UAAU,GAAVA,UAAU;IACV,KAAAK,UAAU,GAAVA,UAAU;IACV,KAAA5E,WAAW,GAAXA,WAAW;EACnB;EAEHmB,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAI8D,iBAAiB,CAC1B9D,aAAa,CAAC+D,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/B/D,aAAa,CAAC4C,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/B5C,aAAa,CAACmD,UAAU,IAAI,IAAI,CAACA,UAAU,EAC3CnD,aAAa,CAACwD,UAAU,IAAI,IAAI,CAACA,UAAU,EAC3CxD,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAAiI,iBAAA,GAAAA,iBAAA;AAGA,SAAA5G,0BACE6G,IAAiB,EACjBnB,IAAS,EACTO,UAAmB,EACnBK,UAAmB,EACnB5E,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EAEtD,OAAO,IAAIgF,iBAAiB,CAACC,IAAI,EAAEnB,IAAI,EAAEO,UAAU,EAAEK,UAAU,EAAE5E,WAAW,CAAC;AAC/E;AAEA;;;AAIM,MAAOoF,cAAc;EACzBrF,YACWsF,SAAuE,EACvErB,IAAS,EACTY,UAAmB;IAFnB,KAAAS,SAAS,GAATA,SAAS;IACT,KAAArB,IAAI,GAAJA,IAAI;IACJ,KAAAY,UAAU,GAAVA,UAAU;EAClB;;AAGL;;;AAAA3H,OAAA,CAAAmI,cAAA,GAAAA,cAAA;AAGA,SAAA5G,uBACE6G,SAAuE,EACvErB,IAAS,EACTY,UAAmB;EAEnB,OAAO,IAAIQ,cAAc,CAACC,SAAS,EAAErB,IAAI,EAAEY,UAAU,CAAC;AACxD;AAEA;;;AAIM,MAAOU,WAAY,SAAQnF,GAAG;EAIlCJ,YACEwF,kBAA6C,EAC7CC,eAAuC,EAC9BxF,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAFE,KAAAF,WAAW,GAAXA,WAAW;IANb,KAAAkB,IAAI;IASX,IAAI,CAACqE,kBAAkB,GAAGE,0BAA0B,CAACF,kBAAkB,CAAC;IACxE,IAAI,CAACC,eAAe,GAAMC,0BAA0B,CAACD,eAAe,CAAC;EACvE;EAEArE,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIkE,WAAW,CACpBlE,aAAa,CAACmE,kBAAkB,IAAI,IAAI,CAACA,kBAAkB,EAC3DnE,aAAa,CAACoE,eAAe,IAAI,IAAI,CAACA,eAAe,EACrDpE,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;;AAAA/C,OAAA,CAAAqI,WAAA,GAAAA,WAAA;AAIM,SAAUI,aAAaA,CAAC7E,IAAS;EACrC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAGA,SAAAxC,oBACE6G,kBAA6C,EAC7CC,eAAuC,EACvCxF,WAA8B;EAE9B,OAAO,IAAIsF,WAAW,CAACC,kBAAkB,EAAEC,eAAe,EAAExF,WAAW,CAAC;AAC1E;AAEA;;;AAGO,MAAM2F,aAAa,GAAA1I,OAAA,CAAA0I,aAAA,gBAAGjH,mBAAA,cAC3B0F,eAAA,CAAAlE,KAAA,EAAc,eACdkE,eAAA,CAAAY,MAAA,cACExG,sBAAA,CAAAoE,eAAA,EAAAL,gBAAA,EAAgE,IAAI,CAAC,eACrE/D,sBAAA,CAAAgF,eAAA,EAAAjB,gBAAA,EAAgE,IAAI,CAAC,CACtE,CACF;AAED;;;AAIM,MAAOqD,KAAM,SAAQzF,GAAG;EAE5BJ,YACW8F,KAAkB,EAClB7F,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAHE,KAAA2F,KAAK,GAALA,KAAK;IACL,KAAA7F,WAAW,GAAXA,WAAW;IAHb,KAAAkB,IAAI;EAMb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAOxC,aAAA,CAAYwC,aAAa,CAACyE,KAAK,IAAI,IAAI,CAACA,KAAK,EAAEzE,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACtG;;AAGF;;;AAAA/C,OAAA,CAAA2I,KAAA,GAAAA,KAAA;AAGM,SAAUE,OAAOA,CAACjF,IAAS;EAC/B;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAGA,SAAAtC,cAA4BmH,UAAuB,EAAE/F,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;EACzG,MAAM2F,KAAK,GAAGG,KAAK,CAACD,UAAU,CAAC;EAC/B,QAAQF,KAAK,CAACI,MAAM;IAClB,KAAK,CAAC;MACJ,OAAA7D,cAAA;IACF,KAAK,CAAC;MACJ,OAAOgC,eAAA,CAAA8B,SAAA,CAAgB,CAAC,EAAjBL,KAAK,CAAc;IAC5B;MACE,OAAO,IAAID,KAAK,CAACO,sBAAsB,CAACN,KAAK,CAAC,EAAE7F,WAAW,CAAC;EAChE;AACF;AAEA;;;AAIM,MAAOoG,IAAK,SAAQjG,GAAG;EAE3BJ,YACWsG,MAAiB,EACjBrG,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAHE,KAAAmG,MAAM,GAANA,MAAM;IACN,KAAArG,WAAW,GAAXA,WAAW;IAHb,KAAAkB,IAAI;EAMb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIgF,IAAI,CAAChF,aAAa,CAACiF,MAAM,IAAI,IAAI,CAACA,MAAM,EAAEjF,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAAC;EACrG;;AAGF;;;AAAA/C,OAAA,CAAAmJ,IAAA,GAAAA,IAAA;AAGA,SAAAtH,aAA2BuH,MAAiB,EAAErG,WAA8B;EAC1E,OAAO,IAAIoG,IAAI,CAACC,MAAM,EAAErG,WAAW,CAAC;AACtC;AAEA;;;AAGM,SAAUsG,MAAMA,CAACzF,IAAS;EAC9B;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAEA;;;AAIM,MAAOqF,UAAW,SAAQpG,GAAG;EAEjCJ,YACWyG,IAAS,EACTC,SAAkC,EAClCzG,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAJE,KAAAsG,IAAI,GAAJA,IAAI;IACJ,KAAAC,SAAS,GAATA,SAAS;IACT,KAAAzG,WAAW,GAAXA,WAAW;IAJb,KAAAkB,IAAI;EAOb;EAEAF,MAAMA,CAAC0F,KAAU,EAAEC,OAAsB;IACvC,OAAO,IAAI,CAACF,SAAS,CAACC,KAAK,CAAC,GAAGE,eAAA,CAAAC,OAAA,CAAoBH,KAAK,CAAC,GAAGE,eAAA,CAAAE,IAAA,CAAiBC,eAAA,CAAAC,SAAA,CAAqB,IAAI,EAAEN,KAAK,CAAC,CAAC;EACjH;EAEAvF,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAImF,UAAU,CACnBnF,aAAa,CAACoF,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/BpF,aAAa,CAACqF,SAAS,IAAI,IAAI,CAACA,SAAS,EACzCrF,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAAsJ,UAAA,GAAAA,UAAA;AAGA,SAAAvH,mBACEwH,IAAS,EACTC,SAAkC,EAClCzG,WAA8B;EAE9B,OAAO,IAAIuG,UAAU,CAACC,IAAI,EAAEC,SAAS,EAAEzG,WAAW,CAAC;AACrD;AAEM,SAAUiH,YAAYA,CAACpG,IAAS;EACpC;EACA,OAAOA,IAAI,CAACK,IAAI;AAClB;AAOA;;;AAIM,MAAOgG,SAAU,SAAQ/G,GAAG;EAEhCJ,YACWyG,IAAS,EACTW,EAAO,EACPnG,MAAgE,EAChEC,MAAgE,EAChEjB,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IANE,KAAAsG,IAAI,GAAJA,IAAI;IACJ,KAAAW,EAAE,GAAFA,EAAE;IACF,KAAAnG,MAAM,GAANA,MAAM;IACN,KAAAC,MAAM,GAANA,MAAM;IACN,KAAAjB,WAAW,GAAXA,WAAW;IANb,KAAAkB,IAAI;EASb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAI8F,SAAS,CAClB9F,aAAa,CAACoF,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/BpF,aAAa,CAAC+F,EAAE,IAAI,IAAI,CAACA,EAAE,EAC3B/F,aAAa,CAACJ,MAAM,IAAI,IAAI,CAACA,MAAM,EACnCI,aAAa,CAACH,MAAM,IAAI,IAAI,CAACA,MAAM,EACnCG,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAAiK,SAAA,GAAAA,SAAA;AAGM,SAAUE,eAAeA,CAC7BZ,IAAS,EACTW,EAAO,EACPnG,MAAgE,EAChEC,MAAgE,EAChEjB,WAA8B;EAE9B,OAAO,IAAIkH,SAAS,CAACV,IAAI,EAAE9G,OAAA,CAAMyH,EAAE,CAAC,EAAEnG,MAAM,EAAEC,MAAM,EAAEjB,WAAW,CAAC;AACpE;AAEA;;;AAIM,MAAOqH,UAAW,SAAQlH,GAAG;EAEjCJ,YACWyG,IAAS,EACTc,UAA+C,EAC/CtH,WAAA,GAAgCC,kCAAgB,CAACC,KAAK;IAE/D,KAAK,EAAE;IAJE,KAAAsG,IAAI,GAAJA,IAAI;IACJ,KAAAc,UAAU,GAAVA,UAAU;IACV,KAAAtH,WAAW,GAAXA,WAAW;IAJb,KAAAkB,IAAI;EAOb;EAEAC,KAAKA,CAACC,aAA4B;IAChC,OAAO,IAAIiG,UAAU,CACnBjG,aAAa,CAACoF,IAAI,IAAI,IAAI,CAACA,IAAI,EAC/BpF,aAAa,CAACkG,UAAU,IAAI,IAAI,CAACA,UAAU,EAC3ClG,aAAa,CAACpB,WAAW,IAAI,IAAI,CAACA,WAAW,CAC9C;EACH;;AAGF;;;AAAA/C,OAAA,CAAAoK,UAAA,GAAAA,UAAA;AAGM,SAAUE,gBAAgBA,CAC9Bf,IAAS,EACTc,UAA+C,EAC/CtH,WAA8B;EAE9B,OAAO,IAAIqH,UAAU,CAACb,IAAI,EAAEc,UAAU,EAAEtH,WAAW,CAAC;AACtD;AAEA;;;AAGM,SAAUwH,cAAcA,CAACC,GAAQ;cAARA,GAAA;cAAAA,GAAA;YAAkB;IAC/C;IACA,QAAQC,KAAA,CAAIxG,IAAI;MACd;QACE,OAAO,CAAC;MACV;MACA;MACA;MACA;QACE,OAAO,CAAC;MACV;QACE,OAAO,CAAC;MACV;MACA;MACA;MACA;QACE,OAAO,CAAC;MACV;QACE,OAAO,CAAC;MACV;MACA;QACE,OAAO,CAAC;MACV;gBACwBwG,KAAA,CAAIlB,IAAI;;;MAChC;gBACwBkB,KAAA,CAAIP,EAAE;;;MAC9B;QACE,OAAO,CAAC;IACZ;EACF;;AAEA,SAAS1B,0BAA0BA,CAAmCI,KAAgB;EACpF,OAAOzB,eAAA,CAAAuD,IAAA,CAAWC,eAAA,CAAAC,SAAA,CAAqB,CAAC;IAAE7D;EAAI,CAAE,KAAKwD,cAAc,CAACxD,IAAI,CAAC,EAAA8D,eAAA,CAAAC,GAAA,CAAC,EAAnElC,KAAK,CAA+D;AAC7E;AAIA,MAAMmC,SAAS,gBAAGC,eAAA,CAAAC,KAAA,CAAAJ,eAAA,CAAAC,GAAA,EAAAD,eAAA,CAAAC,GAAA,EAAAD,eAAA,CAAAC,GAAA,CAA6C;AAE/D,MAAMI,SAAS,gBAAGC,gBAAA,CAAAC,GAAA,CAAQL,SAAS,CAAC;AAEpC,SAASM,YAAYA,CAACC,OAAyB;EAC7C,OAAOC,gBAAA,CAAAC,QAAA,CAAiBC,WAAW,EAAE,CAACC,CAAC,EAAEpM,CAAC,KAAK4L,SAAS,CAACQ,CAAC,CAAC,CAACpM,CAAC,CAAC,EAAvDgM,OAAO,CAAiD;AACjE;AAEA,MAAMG,WAAW,GAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAE/B,SAAUE,SAASA,CAACnB,GAAQ;EAChC;EACA,QAAQA,GAAG,CAACvG,IAAI;IACd;MACE,OAAO2H,gBAAA,CAAAC,KAAA,CACL,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACdrB,GAAG,IAAI;QACN,MAAM,CAAC/G,CAAC,EAAEqI,CAAC,EAAEC,CAAC,CAAC,GAAGJ,SAAS,CAACnB,GAAG,CAAC;QAChC,OAAO,CAAC,CAAC,EAAEsB,CAAC,EAAEC,CAAC,CAAC;MAClB,CAAC,EALIvB,GAAG,CAACzH,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAmH,SAAA,CAAyB,CAMlD;IACH;MACE,OAAO,CACL,CAAC,EACDxB,GAAG,CAAC/C,QAAQ,CAACuB,MAAM,EACnB4C,gBAAA,CAAAC,KAAA,CACE,MAAM,CAAC,EACNnE,IAAI,IAAKA,IAAI,CAACsB,MAAM,EAFvBwB,GAAG,CAAC9C,IAAI,CAGP,CACF;IACH;MAAyB;QACvB,MAAMoE,CAAC,GAAGtB,GAAG,CAAClC,kBAAkB,CAACU,MAAM;QACvC,MAAM+C,CAAC,GAAGvB,GAAG,CAACjC,eAAe,CAACS,MAAM;QACpC,OAAO8C,CAAC,GAAGC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAED,CAAC,EAAEC,CAAC,CAAC;MAC7C;IACA;MACE,OAAOV,YAAY,CAAClE,eAAA,CAAA8E,GAAA,CAAcN,SAAS,EAAvBnB,GAAG,CAAC5B,KAAK,CAAe,CAAC;IAC/C;MACE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAClB;MACE,MAAM,CAACsD,CAAC,EAAEJ,CAAC,EAAEC,CAAC,CAAC,GAAGJ,SAAS,CAACnB,GAAG,CAACjB,IAAI,CAAC;MACrC,OAAO,CAAC2C,CAAC,GAAG,CAAC,EAAEJ,CAAC,EAAEC,CAAC,CAAC;IACtB;MACE,OAAOJ,SAAS,CAACnB,GAAG,CAACjB,IAAI,CAAC;IAC5B;MACE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACnB;IACA;MACE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACnB;MACE,OAAOkC,WAAW;EACtB;AACF;AAEA,SAASvC,sBAAsBA,CAACN,KAAkB;EAChD,OAAOzB,eAAA,CAAAuD,IAAA,CAAWC,eAAA,CAAAC,SAAA,CAAoBe,SAAS,EAA7BZ,SAAS,CAAqB,EAAzCnC,KAAK,CAAqC;AACnD;AAEA,SAASG,KAAKA,CAACD,UAAuB;EACpC,IAAIqD,GAAG,GAAGhF,eAAA,CAAAiF,OAAA,CAAoB5B,GAAG,IAAI;IACnC;IACA,QAAQA,GAAG,CAACvG,IAAI;MACd;QACE,OAAOkD,eAAA,CAAAlE,KAAA,EAAmB;MAC5B;QACE,OAAOuH,GAAG,CAAC5B,KAAK;MAClB;QACE,OAAOzB,eAAA,CAAAY,MAAA,CAAOyC,GAAG,CAAC;IACtB;EACF,CAAC,EAVS1B,UAAU,CAUlB;EACF,IAAI3B,eAAA,CAAAkF,IAAA,CAAA5L,iBAAA,EAAA0L,GAAG,CAAsB,EAAE;IAC7BA,GAAG,GAAGhF,eAAA,CAAAmF,MAAA,CAAYC,CAAC,IAAK,EAAEpM,WAAA,CAAAoM,CAAC,CAAY,IAAI,OAAOA,CAAC,CAAChI,OAAO,KAAK,QAAQ,CAAC,EAAnE4H,GAAG,CAAiE;EAC5E;EACA,IAAIhF,eAAA,CAAAkF,IAAA,CAAA1L,iBAAA,EAAAwL,GAAG,CAAsB,EAAE;IAC7BA,GAAG,GAAGhF,eAAA,CAAAmF,MAAA,CAAYC,CAAC,IAAK,EAAEpM,WAAA,CAAAoM,CAAC,CAAY,IAAI,OAAOA,CAAC,CAAChI,OAAO,KAAK,QAAQ,CAAC,EAAnE4H,GAAG,CAAiE;EAC5E;EACA,IAAIhF,eAAA,CAAAkF,IAAA,CAAAxL,iBAAA,EAAAsL,GAAG,CAAsB,EAAE;IAC7BA,GAAG,GAAGhF,eAAA,CAAAmF,MAAA,CAAYC,CAAC,IAAK,CAAChM,gBAAA,CAAAgM,CAAC,CAAiB,EAArCJ,GAAG,CAAmC;EAC9C;EACA,OAAOA,GAAG;AACZ;AAEA;;;AAGM,SAAUK,kBAAkBA,CAACzJ,WAA6B;EAC9D,OAAQa,IAAS,IAAS;IACxB,OAAOA,IAAI,CAACM,KAAK,CAAC;MAAEnB,WAAW,EAAEa,IAAI,CAACb,WAAW,CAAC0J,OAAO,CAAC1J,WAAW;IAAC,CAAE,CAAC;EAC3E,CAAC;AACH;AAEA;;;AAGM,SAAU2J,aAAaA,CAAIC,UAA4B,EAAEC,KAAQ;EACrE,OAAQhJ,IAAS,IAAS;IACxB,OAAOA,IAAI,CAACM,KAAK,CAAC;MAAEnB,WAAW,EAAEa,IAAI,CAACb,WAAW,CAAC6B,QAAQ,CAAC+H,UAAU,EAAEC,KAAK;IAAC,CAAE,CAAC;EAClF,CAAC;AACH;AAEA;;;AAGM,SAAUC,iBAAiBA,CAACC,WAAgB;EAChD,OAAQlJ,IAAW,IAAW;IAC5B,IAAImJ,gBAAA,CAAAC,MAAA,CAAApJ,IAAI,CAAC8D,IAAI,CAAS,EAAE;MACtB,MAAM,IAAIuF,KAAK,CAAC,6DAA6D,CAAC;IAChF;IACA,OAAO9L,aAAA,CAAYyC,IAAI,CAAC6D,QAAQ,EAAEI,eAAA,CAAAC,IAAA,CAAKX,eAAA,CAAAY,MAAA,CAAO+E,WAAW,CAAC,EAAA9E,UAAA,cAAC,EAAEpE,IAAI,CAAC+D,UAAU,EAAE/D,IAAI,CAACb,WAAW,CAAC;EACjG,CAAC;AACH;AAEA;;;AAGM,SAAUmK,aAAaA,CAACC,OAAgB;EAC5C,OAAQvJ,IAAW,IAAW;IAC5B,IAAIuD,eAAA,CAAAkF,IAAA,CAAoB1N,CAAC,IAAKA,CAAC,CAAC2I,UAAU,EAAtC1D,IAAI,CAAC6D,QAAQ,CAA0B,IAAI,CAAC0F,OAAO,CAAC7F,UAAU,EAAE;MAClE,MAAM,IAAI2F,KAAK,CAAC,gEAAgE,CAAC;IACnF;IACA,OAAOrB,gBAAA,CAAAC,KAAA,CACL,MAAM1K,aAAA,CAAYgG,eAAA,CAAAiG,MAAA,CAAqBD,OAAO,EAA5BvJ,IAAI,CAAC6D,QAAQ,CAAgB,EAAEI,eAAA,CAAAwF,OAAA,CAAArF,UAAA,cAAS,EAAEpE,IAAI,CAAC+D,UAAU,EAAE/D,IAAI,CAACb,WAAW,CAAC,EAC7F2E,IAAI,IAAI;MACP,IAAIyF,OAAO,CAAC7F,UAAU,EAAE;QACtB,MAAM,IAAI2F,KAAK,CAAC,gEAAgE,CAAC;MACnF;MACA,OAAO9L,aAAA,CAAYyC,IAAI,CAAC6D,QAAQ,EAAEI,eAAA,CAAAC,IAAA,CAAKX,eAAA,CAAAiG,MAAA,CAAYD,OAAO,CAACpG,IAAI,EAAxBW,IAAI,CAAqB,EAAAM,UAAA,cAAC,EAAEpE,IAAI,CAAC+D,UAAU,EAAE/D,IAAI,CAACb,WAAW,CAAC;IACvG,CAAC,EAPIa,IAAI,CAAC8D,IAAI,CAQf;EACH,CAAC;AACH;AAEM,SAAU4F,YAAYA,CAACpB,CAA8B;EACzD,OAAOlC,YAAY,CAACkC,CAAC,CAAC,GAAGoB,YAAY,CAACpB,CAAC,CAAC3C,IAAW,CAAC,GAAG2C,CAAC;AAC1D;AAEA;;;AAGA,SAAAjK,wBAAsC2B,IAAS;EAC7C;EACA,QAAQA,IAAI,CAACK,IAAI;IACf;MACE,OAAO2H,gBAAA,CAAAC,KAAA,CACL,MAAM1E,eAAA,CAAAlE,KAAA,EAAc,EACnBsK,SAAS,IAAKtL,uBAAA,CAAsBsL,SAAS,CAAC,EAF1C3J,IAAI,CAACb,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAmH,SAAA,CAAyB,CAGnD;IACH;MACE,OAAO7E,eAAA,CAAAqG,YAAA,CAA2B,CAAC3N,CAAC,EAAEsN,OAAO,KAC3C9L,yBAAA,CAAwBxB,CAAC,EAAEsN,OAAO,CAACpG,IAAI,EAAEoG,OAAO,CAAC7F,UAAU,EAAE1D,IAAI,CAAC+D,UAAU,CAAC,EADxE/D,IAAI,CAAC6D,QAAQ,CAEnB;IACH;MAAmB;QACjB,MAAMa,kBAAkB,GAAGnB,eAAA,CAAA8E,GAAA,CAAAhK,uBAAA,EAAA2B,IAAI,CAACgF,KAAK,CAA2B;QAChE,OAAOzB,eAAA,CAAAsG,SAAA,CAAiC,CAAC;UAAEvF;QAAI,CAAE,KAAI;UACnD,IAAIf,eAAA,CAAAuG,KAAA,CAA0BC,EAAE,IAAKxG,eAAA,CAAAkF,IAAA,CAASuB,CAAC,IAAKA,CAAC,CAAC1F,IAAI,KAAKA,IAAI,EAA9ByF,EAAE,CAA6B,EAAhErF,kBAAkB,CAA+C,EAAE;YACrE,MAAMuF,OAAO,GAAG1G,eAAA,CAAAiF,OAAA,CAA4BuB,EAAE,IAAKxG,eAAA,CAAAmF,MAAA,CAAWsB,CAAC,IAAKA,CAAC,CAAC1F,IAAI,KAAKA,IAAI,EAAhCyF,EAAE,CAA+B,EAApErF,kBAAkB,CAAmD;YACrF,OAAOT,eAAA,CAAAC,IAAA,CACLzG,yBAAA,CACE6G,IAAI,EACJvG,aAAA,CAAYwF,eAAA,CAAA8E,GAAA,CAAa2B,CAAC,IAAKA,CAAC,CAAC7G,IAAI,EAAzB8G,OAAO,CAAmB,CAAC,EACvC1G,eAAA,CAAAkF,IAAA,CAAcuB,CAAC,IAAKA,CAAC,CAACtG,UAAU,EAAhCuG,OAAO,CAA0B,EACjC1G,eAAA,CAAAkF,IAAA,CAAcuB,CAAC,IAAKA,CAAC,CAACjG,UAAU,EAAhCkG,OAAO,CAA0B,CAClC,EAAA7F,UAAA,cACF;UACH;UACA,OAAOH,eAAA,CAAAwF,OAAA,CAAArF,UAAA,cAAS;QAClB,CAAC,EAbMb,eAAA,CAAA8B,SAAA,CAAmB,CAAC,EAApBX,kBAAkB,CAAI,CAa3B;MACJ;IACA;MACE,OAAO1E,IAAI,CAAC0E,kBAAkB;IAChC;MACE,OAAOrG,uBAAA,CAAsB2B,IAAI,CAACwF,MAAM,EAAE,CAAC;IAC7C;MACE,OAAOnH,uBAAA,CAAsB2B,IAAI,CAAC2F,IAAI,CAAC;IACzC;MACE,OAAOtH,uBAAA,CAAsB2B,IAAI,CAACsG,EAAE,CAAC;IACvC;MACE,OAAO/C,eAAA,CAAAlE,KAAA,EAAc;EACzB;AACF;AAEA;;;AAGA,SAAAd,SAAuBqI,GAAQ;EAC7B;EACA,QAAQA,GAAG,CAACvG,IAAI;IACd;MACE,OAAO2H,gBAAA,CAAAC,KAAA,CACL,MAAM1E,eAAA,CAAAlE,KAAA,EAAc,EACnBsK,SAAS,IAAKpL,QAAA,CAAOoL,SAAS,CAAC,EAF3B/C,GAAG,CAACzH,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAmH,SAAA,CAAyB,CAGlD;IACH;IACA;MACE,OAAO7E,eAAA,CAAAY,MAAA,CAAApC,eAAA,EAAAG,eAAA,EAAAS,eAAA,CAAmD;IAC5D;MACE,OAAOY,eAAA,CAAAY,MAAA,CAAO9H,eAAA,CAAc,QAAQ,CAAC,CAAC;IACxC;MACE,OAAOkH,eAAA,CAAA2G,MAAA,CAEG3G,eAAA,CAAA8E,GAAA,CAAyB8B,EAAE,IAAKT,YAAY,CAACS,EAAE,CAAC3F,SAAS,CAAC,EAA1DoC,GAAG,CAACjC,eAAe,CAAwC,EAF9DpB,eAAA,CAAA8E,GAAA,CACC2B,CAAC,IAAM,OAAOA,CAAC,CAAC1F,IAAI,KAAK,QAAQ,GAAG7H,oBAAA,CAAmBuN,CAAC,CAAC1F,IAAI,CAAC,GAAGjI,eAAA,CAAc2N,CAAC,CAAC1F,IAAI,CAAE,EADxFsC,GAAG,CAAClC,kBAAkB,CACmE,CAC1B;IACxE;MACE,OAAOnB,eAAA,CAAA8E,GAAA,CAAgC2B,CAAC,IACtC,OAAOA,CAAC,CAAC1F,IAAI,KAAK,QAAQ,GAAG7H,oBAAA,CAAmBuN,CAAC,CAAC1F,IAAI,CAAC,GAAGjI,eAAA,CAAc2N,CAAC,CAAC1F,IAAI,CAAC,EAD1EjG,uBAAA,CAAsBuI,GAAG,CAAC,CAEhC;IACH;MACE,OAAOrI,QAAA,CAAOqI,GAAG,CAACpB,MAAM,EAAE,CAAC;IAC7B;MACE,OAAOjH,QAAA,CAAOqI,GAAG,CAACjB,IAAI,CAAC;IACzB;MACE,OAAOpH,QAAA,CAAOqI,GAAG,CAACN,EAAE,CAAC;IACvB;MACE,OAAO/C,eAAA,CAAAlE,KAAA,EAAc;EACzB;AACF;AAEA;;;AAGM,SAAU+K,KAAKA,CAACpK,IAAS;EAC7B,OAAOjC,aAAA,CAAAQ,QAAA,CAAgByB,IAAI,EAAQ;AACrC;AAEA;;;AAGM,SAAUqK,YAAYA,CAACtK,GAAQ,EAAEiJ,KAAU,EAAEjF,UAAmB;EACpE,MAAMW,kBAAkB,GAAqCnB,eAAA,CAAA+G,aAAA,EAAsB;EACnF,MAAM3F,eAAe,GAAwCpB,eAAA,CAAA+G,aAAA,EAAsB;EAEnF,SAASC,EAAEA,CAACxK,GAAQ;IAClB;IACA,QAAQA,GAAG,CAACM,IAAI;MACd;QACE;MACF;MACA;MACA;MACA;QACEmK,gBAAA,CAAAC,IAAA,CAAqB9M,sBAAA,CAAqBoC,GAAG,EAAEiJ,KAAK,EAAEjF,UAAU,CAAC,EAAjEY,eAAe,CAAmD;QAClE;MACF;QACE,IAAI,OAAO5E,GAAG,CAACY,OAAO,KAAK,QAAQ,IAAI,OAAOZ,GAAG,CAACY,OAAO,KAAK,QAAQ,EAAE;UACtE6J,gBAAA,CAAAC,IAAA,CAAwBhN,yBAAA,CAAwBsC,GAAG,CAACY,OAAO,EAAEqI,KAAK,EAAE,KAAK,EAAEjF,UAAU,CAAC,EAAtFW,kBAAkB,CAAqE;QACzF;QACA;MACF;QACE8F,gBAAA,CAAAC,IAAA,CAAwBhN,yBAAA,CAAwBsC,GAAG,CAACc,MAAM,EAAEmI,KAAK,EAAE,KAAK,EAAEjF,UAAU,CAAC,EAArFW,kBAAkB,CAAoE;QACtF;MACF;QACEnB,eAAA,CAAAmH,OAAA,CAAkBH,EAAE,EAApBxK,GAAG,CAACiF,KAAK,CAAY;QACrB;MACF;QACE,MAAM,IAAIqE,KAAK,CAAC,kCAAkC,IAAAsB,cAAI,EAAC5K,GAAG,CAAC,EAAE,CAAC;IAClE;EACF;EACAwK,EAAE,CAACxK,GAAG,CAAC;EACP,OAAOlC,mBAAA,CAAkB6G,kBAAkB,EAAEC,eAAe,CAAC;AAC/D;AAEA;;;AAGM,SAAUiG,IAAIA,CAACC,IAAyB;EAC5C,OAAQ7K,IAAS,IAAiB;IAChC,OAAOnC,mBAAA,CACL0F,eAAA,CAAAmF,MAAA,CAAmCqB,EAAE,IAAKxG,eAAA,CAAAuH,QAAA,CAAcf,EAAE,CAACzF,IAAI,EAArBuG,IAAI,CAAkB,EAAAxM,uBAAA,CAAhE2B,IAAI,EAA6D,EACjEuD,eAAA,CAAAlE,KAAA,EAAc,CACf;EACH,CAAC;AACH;AAEA;;;AAGM,SAAU0L,IAAIA,CAACF,IAAyB;EAC5C,OAAQ7K,IAAS,IAAiB;IAChC,OAAOnC,mBAAA,CACL0F,eAAA,CAAAmF,MAAA,CAAmCqB,EAAE,IAAK,CAACxG,eAAA,CAAAuH,QAAA,CAAcf,EAAE,CAACzF,IAAI,EAArBuG,IAAI,CAAkB,EAAAxM,uBAAA,CAAjE2B,IAAI,EAA8D,EAClEuD,eAAA,CAAAlE,KAAA,EAAc,CACf;EACH,CAAC;AACH;AAEA;;;AAGA,SAAAZ,UAAwBuB,IAAS;EAC/B;EACA,QAAQA,IAAI,CAACK,IAAI;IACf;MACE,OAAO9C,aAAA,CACLgG,eAAA,CAAA8E,GAAA,CAAmBtN,CAAC,IAAKsC,eAAA,CAActC,CAAC,CAACoI,IAAI,EAAE,IAAI,CAAC,EAApDnD,IAAI,CAAC6D,QAAQ,CAAwC,EACrDmH,gBAAA,CAAA3C,GAAA,CAAevE,IAAI,IAAKP,eAAA,CAAAY,MAAA,CAAOpG,aAAA,CAAYwF,eAAA,CAAAiG,MAAA,CAAAzI,kBAAA,EAAA+C,IAAI,CAAyB,CAAC,CAAC,EAA1E9D,IAAI,CAAC8D,IAAI,CAAkE,EAC3E9D,IAAI,CAAC+D,UAAU,CAChB;IACH;MACE,OAAOlG,mBAAA,CACL0F,eAAA,CAAA8E,GAAA,CAA6B4C,CAAC,IAAKxN,yBAAA,CAAwBwN,CAAC,CAAC3G,IAAI,EAAE2G,CAAC,CAAC9H,IAAI,EAAE,IAAI,EAAE8H,CAAC,CAAClH,UAAU,EAAEkH,CAAC,CAAC9L,WAAW,CAAC,EAA7Ga,IAAI,CAAC0E,kBAAkB,CAAuF,EAC9G1E,IAAI,CAAC2E,eAAe,CACrB;IACH;MACE,OAAO5G,aAAA,CAAYwF,eAAA,CAAA8E,GAAA,CAAA5J,SAAA,EAAAuB,IAAI,CAACgF,KAAK,CAAa,CAAC;IAC7C;MACE,OAAO/G,YAAA,CAAW,MAAMQ,SAAA,CAAQuB,IAAI,CAACwF,MAAM,EAAE,CAAC,CAAC;IACjD;MACE,OAAO/G,SAAA,CAAQuB,IAAI,CAAC2F,IAAI,CAAC;IAC3B;MACE,OAAOlH,SAAA,CAAQuB,IAAI,CAACsG,EAAE,CAAC;IACzB;MACE,OAAOtG,IAAI;EACf;AACF;AAEA;;;AAGM,SAAUkL,SAASA,CAACnL,GAAgB;EACxC,OAAO,OAAOA,GAAG,KAAK,QAAQ,GAAGtD,oBAAA,CAAuBsD,GAAG,CAAC,GAAG1D,eAAA,CAAkB0D,GAAG,CAAC;AACvF;AAEA;;;AAGA,SAAApB,UAAwBiI,GAAQ;EAC9B;EACA,QAAQA,GAAG,CAACvG,IAAI;IACd;MAAyB;QACvB,MAAMsJ,SAAS,GAAG/C,GAAG,CAACzH,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAmH,SAAA,CAAyB;QAC9D,IAAIe,gBAAA,CAAAC,MAAA,CAAAO,SAAS,CAAS,EAAE;UACtB,OAAOhL,SAAA,CAAQgL,SAAS,CAACX,KAAK,CAAC;QACjC;QACA;MACF;IACA;MACE,OAAOzL,aAAA,CACLgG,eAAA,CAAA8E,GAAA,CAAkBkB,OAAO,IAAKlM,eAAA,CAAkBsB,SAAA,CAAQ4K,OAAO,CAACpG,IAAI,CAAC,EAAEoG,OAAO,CAAC7F,UAAU,CAAC,EAA1FkD,GAAG,CAAC/C,QAAQ,CAA+E,EAC3FmH,gBAAA,CAAA3C,GAAA,CAAca,WAAW,IAAK3F,eAAA,CAAA8E,GAAA,CAAA1J,SAAA,EAAAuK,WAAW,CAAa,EAAtDtC,GAAG,CAAC9C,IAAI,CAA+C,EACvD8C,GAAG,CAAC7C,UAAU,EACd6C,GAAG,CAACzH,WAAW,CAChB;IACH;MACE,OAAOtB,mBAAA,CACL0F,eAAA,CAAA8E,GAAA,CAA4B0B,EAAE,IAC5BtM,yBAAA,CAA4BsM,EAAE,CAACzF,IAAI,EAAE3F,SAAA,CAAQoL,EAAE,CAAC5G,IAAI,CAAC,EAAE4G,EAAE,CAACrG,UAAU,EAAEqG,EAAE,CAAChG,UAAU,EAAEgG,EAAE,CAAC5K,WAAW,CAAC,EADtGyH,GAAG,CAAClC,kBAAkB,CAErB,EACDnB,eAAA,CAAA8E,GAAA,CAAyB8B,EAAE,IAAKxM,sBAAA,CAAyBwM,EAAE,CAAC3F,SAAS,EAAE7F,SAAA,CAAQwL,EAAE,CAAChH,IAAI,CAAC,EAAEgH,EAAE,CAACpG,UAAU,CAAC,EAAvG6C,GAAG,CAACjC,eAAe,CAAqF,EACxGiC,GAAG,CAACzH,WAAW,CAChB;IACH;MACE,OAAOpB,aAAA,CAAgBwF,eAAA,CAAA8E,GAAA,CAAA1J,SAAA,EAAAiI,GAAG,CAAC5B,KAAK,CAAa,EAAE4B,GAAG,CAACzH,WAAW,CAAC;IACjE;MACE,OAAOlB,YAAA,CAAe,MAAMU,SAAA,CAAQiI,GAAG,CAACpB,MAAM,EAAE,CAAC,EAAEoB,GAAG,CAACzH,WAAW,CAAC;IACrE;IACA;MACE,OAAOR,SAAA,CAAQiI,GAAG,CAACjB,IAAI,CAAC;EAC5B;EACA,OAAOiB,GAAG;AACZ;AAEA;;;AAGA,SAAA/H,QAAsB+H,GAAQ;EAC5B;EACA,QAAQA,GAAG,CAACvG,IAAI;IACd;MAAyB;QACvB,MAAMsJ,SAAS,GAAG/C,GAAG,CAACzH,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAmH,SAAA,CAAyB;QAC9D,IAAIe,gBAAA,CAAAC,MAAA,CAAAO,SAAS,CAAS,EAAE;UACtB,OAAO9K,OAAA,CAAM8K,SAAS,CAACX,KAAK,CAAC;QAC/B;QACA;MACF;IACA;MACE,OAAOzL,aAAA,CACLgG,eAAA,CAAA8E,GAAA,CAAkBkB,OAAO,IAAKlM,eAAA,CAAkBwB,OAAA,CAAM0K,OAAO,CAACpG,IAAI,CAAC,EAAEoG,OAAO,CAAC7F,UAAU,CAAC,EAAxFkD,GAAG,CAAC/C,QAAQ,CAA6E,EACzFmH,gBAAA,CAAA3C,GAAA,CAAca,WAAW,IAAK3F,eAAA,CAAA8E,GAAA,CAAAxJ,OAAA,EAAAqK,WAAW,CAAW,EAApDtC,GAAG,CAAC9C,IAAI,CAA6C,EACrD8C,GAAG,CAAC7C,UAAU,EACd6C,GAAG,CAACzH,WAAW,CAChB;IACH;MACE,OAAOtB,mBAAA,CACL0F,eAAA,CAAA8E,GAAA,CAA4B0B,EAAE,IAC5BtM,yBAAA,CAA4BsM,EAAE,CAACzF,IAAI,EAAEzF,OAAA,CAAMkL,EAAE,CAAC5G,IAAI,CAAC,EAAE4G,EAAE,CAACrG,UAAU,EAAEqG,EAAE,CAAChG,UAAU,EAAEgG,EAAE,CAAC5K,WAAW,CAAC,EADpGyH,GAAG,CAAClC,kBAAkB,CAErB,EACDnB,eAAA,CAAA8E,GAAA,CAAyB8B,EAAE,IAAKxM,sBAAA,CAAyBwM,EAAE,CAAC3F,SAAS,EAAE3F,OAAA,CAAMsL,EAAE,CAAChH,IAAI,CAAC,EAAEgH,EAAE,CAACpG,UAAU,CAAC,EAArG6C,GAAG,CAACjC,eAAe,CAAmF,EACtGiC,GAAG,CAACzH,WAAW,CAChB;IACH;MACE,OAAOpB,aAAA,CAAgBwF,eAAA,CAAA8E,GAAA,CAAAxJ,OAAA,EAAA+H,GAAG,CAAC5B,KAAK,CAAW,EAAE4B,GAAG,CAACzH,WAAW,CAAC;IAC/D;MACE,OAAOlB,YAAA,CAAe,MAAMY,OAAA,CAAM+H,GAAG,CAACpB,MAAM,EAAE,CAAC,EAAEoB,GAAG,CAACzH,WAAW,CAAC;IACnE;MACE,OAAOhB,kBAAA,CAAqBU,OAAA,CAAM+H,GAAG,CAACjB,IAAI,CAAC,EAAEiB,GAAG,CAAChB,SAAS,EAAEgB,GAAG,CAACzH,WAAW,CAAC;IAC9E;MACE,OAAON,OAAA,CAAM+H,GAAG,CAACN,EAAE,CAAC;EACxB;EACA,OAAOM,GAAG;AACZ;AAEA;;;AAGM,SAAUuE,WAAWA,CAAIlD,KAAmB;EAChD,MAAMmD,OAAO,GAAoB,IAAAC,cAAO,EAAEzE,GAAQ,IAAI;IACpD;IACA,OAAOqB,KAAK,CAACrB,GAAG,CAACvG,IAAI,CAAC,CAACuG,GAAU,EAAEwE,OAAO,CAAC;EAC7C,CAAC,CAAC;EACF,OAAOA,OAAO;AAChB;AAEM,SAAUE,WAAWA,CAAC1E,GAAQ,EAAE2E,UAAmB;EACvD;EACA,QAAQ3E,GAAG,CAACvG,IAAI;IACd;MAAyB;QACvB,MAAMsJ,SAAS,GAAG/C,GAAG,CAACzH,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAmH,SAAA,CAAyB;QAC9D,IAAIe,gBAAA,CAAAC,MAAA,CAAAO,SAAS,CAAS,EAAE;UACtB,OAAO2B,WAAW,CAAC3B,SAAS,CAACX,KAAK,EAAEuC,UAAU,CAAC;QACjD;QACA;MACF;IACA;MAAyB;QACvB,MAAMhD,GAAG,GAAkC,EAAE;QAC7C,KAAK,IAAItM,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG2K,GAAG,CAAClC,kBAAkB,CAACU,MAAM,EAAEnJ,CAAC,EAAE,EAAE;UACtD,MAAMuP,iBAAiB,GAAGjI,eAAA,CAAA8B,SAAA,CAAuBpJ,CAAC,EAAxB2K,GAAG,CAAClC,kBAAkB,CAAI;UACpD,IAAInI,WAAA,CAAAiP,iBAAiB,CAACrI,IAAI,CAAY,IAAI,CAACqI,iBAAiB,CAAC9H,UAAU,EAAE;YACvE6E,GAAG,CAACkC,IAAI,CAAC,CAACe,iBAAiB,CAAClH,IAAI,EAAEkH,iBAAiB,CAACrI,IAAI,CAAC,CAAC;UAC5D;QACF;QACA,OAAOoF,GAAG;MACZ;IACA;MACE,OAAO+C,WAAW,CAAC1E,GAAG,CAACjB,IAAI,EAAE4F,UAAU,CAAC;IAC1C;MACE,OAAOD,WAAW,CAACC,UAAU,GAAG3E,GAAG,CAACjB,IAAI,GAAGiB,GAAG,CAACN,EAAE,EAAEiF,UAAU,CAAC;EAClE;EACA,OAAO,EAAE;AACX;AAEM,SAAUE,aAAaA,CAC3BxB,OAAoB,EACpBsB,UAAmB;EAWnB,MAAMV,IAAI,GAMN,EAAE;EACN,MAAMa,SAAS,GAAe,EAAE;EAChC,KAAK,IAAIzP,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGgO,OAAO,CAAC7E,MAAM,EAAEnJ,CAAC,EAAE,EAAE;IACvC,MAAM0P,MAAM,GAAGpI,eAAA,CAAA8B,SAAA,CAAQpJ,CAAC,EAATgO,OAAO,CAAI;IAC1B,MAAM2B,IAAI,GAAKN,WAAW,CAACK,MAAM,EAAEJ,UAAU,CAAC;IAC9C,IAAIK,IAAI,CAACxG,MAAM,GAAG,CAAC,EAAE;MACnB,KAAK,IAAIyG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,IAAI,CAACxG,MAAM,EAAEyG,CAAC,EAAE,EAAE;QACpC,MAAM,CAAC9L,GAAG,EAAEY,OAAO,CAAC,GAAGiL,IAAI,CAACC,CAAC,CAAE;QAC/B,MAAMC,IAAI,GAAanI,MAAM,CAAChD,OAAO,CAACA,OAAO,CAAC;QAC9CkK,IAAI,CAAC9K,GAAG,CAAE,KAAV8K,IAAI,CAAC9K,GAAG,CAAE,GAAa;UAAEgM,OAAO,EAAE,EAAE;UAAEnF,GAAG,EAAArF,cAAkB;UAAEyK,QAAQ,EAAE;QAAE,CAAE;QAC3E,MAAMD,OAAO,GAAUlB,IAAI,CAAC9K,GAAG,CAAE,CAACgM,OAAO;QACzC,IAAIpQ,MAAM,CAACsQ,SAAS,CAAClQ,cAAc,CAACC,IAAI,CAAC+P,OAAO,EAAED,IAAI,CAAC,EAAE;UACvD,IAAID,CAAC,GAAGD,IAAI,CAACxG,MAAM,GAAG,CAAC,EAAE;YACvB;UACF;UACA2G,OAAO,CAACD,IAAI,CAAE,CAACrB,IAAI,CAACkB,MAAM,CAAC;UAC3Bd,IAAI,CAAC9K,GAAG,CAAE,CAAC6G,GAAG,GAAG7I,aAAA,CAAgBwF,eAAA,CAAAY,MAAA,CAAO0G,IAAI,CAAC9K,GAAG,CAAE,CAAC6G,GAAG,EAAEjG,OAAO,CAAC,CAAC;UACjEkK,IAAI,CAAC9K,GAAG,CAAE,CAACiM,QAAQ,CAACvB,IAAI,CAAC9J,OAAO,CAAC;QACnC,CAAC,MAAM;UACLoL,OAAO,CAACD,IAAI,CAAE,GAAG,CAACH,MAAM,CAAC;UACzBd,IAAI,CAAC9K,GAAG,CAAE,CAAC6G,GAAG,GAAG7I,aAAA,CAAgBwF,eAAA,CAAAY,MAAA,CAAO0G,IAAI,CAAC9K,GAAG,CAAE,CAAC6G,GAAG,EAAEjG,OAAO,CAAC,CAAC;UACjEkK,IAAI,CAAC9K,GAAG,CAAE,CAACiM,QAAQ,CAACvB,IAAI,CAAC9J,OAAO,CAAC;UACjC;QACF;MACF;IACF,CAAC,MAAM;MACL+K,SAAS,CAACjB,IAAI,CAACkB,MAAM,CAAC;IACxB;EACF;EACA,OAAO;IAAEd,IAAI;IAAEa;EAAS,CAAE;AAC5B;AAEA;;;AAGM,SAAUQ,oBAAoBA,CAACzM,OAAA,GAAmB,KAAK;EAC3D,OAAQO,IAAS,IAAmB;IAClC,IAAIP,OAAO,EAAE;MACX,MAAM0M,WAAW,GAAGnB,gBAAA,CAAAoB,MAAA,OAEVpM,IAAI,CAACb,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAC,KAAA,CAAqB,EAF/BlB,IAAI,CAACb,WAAW,CACjC5D,GAAG,CAAA0F,eAAA,CAAAoL,WAAA,CAA2B,CACmB;MACpD,OAAOrE,gBAAA,CAAAC,KAAA,CACL,MAAMkE,WAAW,EAChBG,UAAU,IACTtE,gBAAA,CAAAC,KAAA,CACE,MAAMhE,eAAA,CAAAC,IAAA,CAAKoI,UAAU,EAAAlI,UAAA,cAAC,EACrB+H,WAAW,IAAKlI,eAAA,CAAAC,IAAA,CAAK,GAAGoI,UAAU,KAAKH,WAAW,GAAG,EAAA/H,UAAA,cAAC,EAFzD+H,WAAW,CAGV,EANEnM,IAAI,CAACb,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAsL,UAAA,CAA0B,CAOpD;IACH,CAAC,MAAM;MACL,OAAOvB,gBAAA,CAAAoB,MAAA,OAGGpM,IAAI,CAACb,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAoL,WAAA,CAA2B,EAHlDrB,gBAAA,CAAAoB,MAAA,OAEGpM,IAAI,CAACb,WAAW,CAAC5D,GAAG,CAAA0F,eAAA,CAAAC,KAAA,CAAqB,EAF5ClB,IAAI,CAACb,WAAW,CACpB5D,GAAG,CAAA0F,eAAA,CAAAsL,UAAA,CAA0B,CACoB,CACM;IAC5D;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"file":"AST.cjs","names":["_Showable","require","_utils","_ASTAnnotationMap","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","createLiteral","exports","createLiteral_1","isLiteral","isLiteral_1","createUniqueSymbol","createUniqueSymbol_1","isUniqueSymbol","isUniqueSymbol_1","isStringKeyword","isStringKeyword_1","isNumberKeyword","isNumberKeyword_1","isSymbolKeyword","isSymbolKeyword_1","createTemplateLiteral","createTemplateLiteral_1","createElement","createElement_1","createTuple","createTuple_1","createPropertySignature","createPropertySignature_1","createIndexSignature","createIndexSignature_1","createTypeLiteral","createTypeLiteral_1","createUnion","createUnion_1","createLazy","createLazy_1","createRefinement","createRefinement_1","getPropertySignatures","getPropertySignatures_1","keysOf","keysOf_1","partial","partial_1","getFrom","getFrom_1","getTo","getTo_1","ASTTypeId","Symbol","for","Annotated","constructor","annotations","ASTAnnotationMap","empty","AST","_a","toString","verbose","tsplus_module_1","showAST","concrete","_","getAnnotations","key","self","Declaration","typeParameters","decode","encode","_tag","clone","newProperties","createDeclaration","isDeclaration","Literal","literal","UniqueSymbol","symbol","UndefinedKeyword","undefinedKeyword_1","annotate","tsplus_module_2","Title","undefinedKeyword","VoidKeyword","voidKeyword","NeverKeyword","neverKeyword_1","neverKeyword","UnknownKeyword","unknownKeyword_1","unknownKeyword","AnyKeyword","anyKeyword","StringKeyword","stringKeyword_1","stringKeyword","NumberKeyword","numberKeyword_1","numberKeyword","BooleanKeyword","booleanKeyword","isBooleanKeyword","BigIntKeyword","bigIntKeyword","isBigIntKeyword","SymbolKeyword","symbolKeyword_1","symbolKeyword","ObjectKeyword","objectKeyword","Enum","enums","createEnum","TemplateLiteralSpan","type","TemplateLiteral","head","spans","tsplus_module_3","isNonEmpty","Element","isOptional","String","Tuple","elements","rest","isReadonly","unknownArray","tsplus_module_4","just","vector","fileName_1","PropertySignature","name","IndexSignature","parameter","TypeLiteral","propertySignatures","indexSignatures","sortByAscendingCardinality","isTypeLiteral","unknownRecord","Union","types","isUnion","candidates","unify","length","unsafeGet","sortByDescendingWeight","Lazy","getAST","isLazy","Refinement","from","predicate","input","options","tsplus_module_5","succeed","fail","tsplus_module_6","typeError","isRefinement","Transform","to","createTransform","Validation","validation","createValidation","getCardinality","ast","ast_1","sort","tsplus_module_8","contramap","tsplus_module_7","Ord","OrdWeight","tsplus_module_9","tuple","maxWeight","tsplus_module_10","max","maxWeightAll","weights","tsplus_module_11","foldLeft","emptyWeight","b","a","getWeight","tsplus_module_12","match","y","z","Surrogate","map","x","out","flatMap","some","filter","m","combineAnnotations","combine","setAnnotation","annotation","value","appendRestElement","restElement","tsplus_module_13","isJust","Error","appendElement","element","append","nothing","getParameter","surrogate","mapWithIndex","filterMap","every","ps","p","members","concat","is","keyof","createRecord","emptyPushable","go","tsplus_module_14","push","forEach","show","pick","keys","includes","omit","tsplus_module_15","createKey","getCompiler","compile","memoize","getLiterals","isDecoding","propertySignature","getSearchTree","otherwise","member","tags","j","hash","buckets","literals","prototype","getFormattedExpected","description","orElse","Description","identifier","Identifier"],"sources":["../_src/AST.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.TitleTag = exports.Title = exports.SurrogateTag = exports.Surrogate = exports.ParserHookTag = exports.ParserHook = exports.ParseOptionalTag = exports.ParseOptional = exports.OptionalTag = exports.Optional = exports.MessageTag = exports.Message = exports.IdentifierTag = exports.Identifier = exports.GenHookTag = exports.GenHook = exports.DescriptionTag = exports.Description = exports.BrandTag = exports.Brand = exports.ASTAnnotationVariance = exports.ASTAnnotationTypeId = exports.ASTAnnotation = void 0;
6
+ exports.TitleTag = exports.Title = exports.SurrogateTag = exports.Surrogate = exports.ParserHookTag = exports.ParserHook = exports.ParseOptionalTag = exports.ParseOptional = exports.OptionalTag = exports.Optional = exports.MessageTag = exports.Message = exports.IdentifierTag = exports.Identifier = exports.GenHookTag = exports.GenHook = exports.EqHookTag = exports.EqHook = exports.DescriptionTag = exports.Description = exports.BrandTag = exports.Brand = exports.ASTAnnotationVariance = exports.ASTAnnotationTypeId = exports.ASTAnnotation = void 0;
7
7
  exports.hook = hook;
8
8
  exports.isASTAnnotation = isASTAnnotation;
9
9
  var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Hashable/definition"));
@@ -13,8 +13,7 @@ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require(
13
13
  var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/util/predicates"));
14
14
  var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Tag/constructors"));
15
15
  var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/collection/immutable/Vector/api"));
16
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
17
  var _a;
19
18
  const ASTAnnotationVariance = exports.ASTAnnotationVariance = /*#__PURE__*/Symbol.for("fncts.schema.ASTAnnotation.Variance");
20
19
  const ASTAnnotationTypeId = exports.ASTAnnotationTypeId = /*#__PURE__*/Symbol.for("fncts.schema.ASTAnnotation");
@@ -93,4 +92,9 @@ const GenHookTag = exports.GenHookTag = /*#__PURE__*/tsplus_module_6.makeTag();
93
92
  * @tsplus static fncts.schema.ASTAnnotationOps GenHook
94
93
  */
95
94
  const GenHook = exports.GenHook = /*#__PURE__*/new ASTAnnotation(GenHookTag, "GenHook", (_, b) => b);
95
+ const EqHookTag = exports.EqHookTag = /*#__PURE__*/tsplus_module_6.makeTag();
96
+ /**
97
+ * @tsplus static fncts.schema.ASTAnnotationOps EqHook
98
+ */
99
+ const EqHook = exports.EqHook = /*#__PURE__*/new ASTAnnotation(EqHookTag, "EqHook", (_, b) => b);
96
100
  //# sourceMappingURL=ASTAnnotation.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ASTAnnotation.cjs","names":["ASTAnnotationVariance","exports","Symbol","for","ASTAnnotationTypeId","ASTAnnotation","constructor","tag","identifier","combine","_a","tsplus_module_1","hashSymbol","tsplus_module_2","combineHash","hashString","hashUnknown","tsplus_module_3","equalsSymbol","that","isASTAnnotation","tsplus_module_4","strictEquals","u","tsplus_module_5","isObject","TitleTag","tsplus_module_6","makeTag","Title","_","a","IdentifierTag","Identifier","DescriptionTag","Description","MessageTag","Message","BrandTag","Brand","b","tsplus_module_7","concat","OptionalTag","Optional","ParseOptionalTag","ParseOptional","SurrogateTag","Surrogate","hook","handler","ParserHookTag","ParserHook","GenHookTag","GenHook"],"sources":["../_src/ASTAnnotation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ASTAnnotation.cjs","names":["ASTAnnotationVariance","exports","Symbol","for","ASTAnnotationTypeId","ASTAnnotation","constructor","tag","identifier","combine","_a","tsplus_module_1","hashSymbol","tsplus_module_2","combineHash","hashString","hashUnknown","tsplus_module_3","equalsSymbol","that","isASTAnnotation","tsplus_module_4","strictEquals","u","tsplus_module_5","isObject","TitleTag","tsplus_module_6","makeTag","Title","_","a","IdentifierTag","Identifier","DescriptionTag","Description","MessageTag","Message","BrandTag","Brand","b","tsplus_module_7","concat","OptionalTag","Optional","ParseOptionalTag","ParseOptional","SurrogateTag","Surrogate","hook","handler","ParserHookTag","ParserHook","GenHookTag","GenHook","EqHookTag","EqHook"],"sources":["../_src/ASTAnnotation.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -8,8 +8,7 @@ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require(
8
8
  var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
9
9
  var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/collection/immutable/Conc/constructors"));
10
10
  var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/collection/immutable/Conc/api"));
11
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
12
  class ASTAnnotationMap {
14
13
  constructor(map) {
15
14
  this.map = map;
@@ -1 +1 @@
1
- {"version":3,"file":"ASTAnnotationMap.cjs","names":["ASTAnnotationMap","constructor","map","combine","that","tsplus_module_4","foldLeft","tsplus_module_1","empty","acc","k","v","set","tsplus_module_2","match","_","get","concat","tsplus_module_3","from","key","overwrite","value","update","f","annotate"],"sources":["../_src/ASTAnnotationMap.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;AAEM,MAAOA,gBAAgB;EAC3BC,YAAqBC,GAAqC;IAArC,KAAAA,GAAG,GAAHA,GAAG;EAAqC;EAC7DC,OAAOA,CAACC,IAAsB;IAC5B,OAAO,IAAIJ,gBAAgB,CACzBK,eAAA,CAAAC,QAAA,CAEYC,eAAA,CAAAC,KAAA,EAAe,EAAE,CAACC,GAAG,EAAE,CAACC,CAAC,EAAEC,CAAC,CAAC,KACrCJ,eAAA,CAAAK,GAAA,CACEF,CAAC,EACDG,eAAA,CAAAC,KAAA,CACE,MAAMH,CAAC,EACNI,CAAC,IAAKL,CAAC,CAACP,OAAO,CAACY,CAAC,EAAEJ,CAAC,CAAC,EAFxBJ,eAAA,CAAAS,GAAA,CAAQN,CAAC,EAATD,GAAG,CAAO,CAGT,EALHA,GAAG,CAMF,EATLJ,eAAA,CAAAY,MAAA,CACUC,eAAA,CAAAC,IAAA,CAAUf,IAAI,CAACF,GAAG,CAAC,EAD7BgB,eAAA,CAAAC,IAAA,CAAU,IAAI,CAACjB,GAAG,CAAC,CACW,CAS3B,CACJ;EACH;EACAc,GAAGA,CAAII,GAAqB;IAC1B,OAAOb,eAAA,CAAAS,GAAA,CAAaI,GAAG,EAAhB,IAAI,CAAClB,GAAG,CAAS;EAC1B;EACQmB,SAASA,CAAID,GAAqB,EAAEE,KAAQ;IAClD,OAAO,IAAItB,gBAAgB,CAACO,eAAA,CAAAK,GAAA,CAAaQ,GAAG,EAAEE,KAAK,EAAvB,IAAI,CAACpB,GAAG,CAAgB,CAAC;EACvD;EACQqB,MAAMA,CAAIH,GAAqB,EAAEI,CAAqB;IAC5D,OAAO,IAAI,CAACH,SAAS,CAACD,GAAG,EAAEI,CAAC,CAAC,IAAI,CAACR,GAAG,CAACI,GAAG,CAAC,CAAC,CAAC;EAC9C;EACAK,QAAQA,CAAIL,GAAqB,EAAEE,KAAQ;IACzC,OAAO,IAAI,CAACC,MAAM,CAACH,GAAG,EAAGT,CAAC,IACxBE,eAAA,CAAAC,KAAA,CACE,MAAMQ,KAAK,EACVX,CAAC,IAAKS,GAAG,CAACjB,OAAO,CAACQ,CAAC,EAAEW,KAAK,CAAC,EAF9BX,CAAC,CAGA,CACF;EACH;;;AACOX,gBAAA,CAAAQ,KAAK,gBAAqB,IAAIR,gBAAgB,cAACO,eAAA,CAAAC,KAAA,EAAe,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"ASTAnnotationMap.cjs","names":["ASTAnnotationMap","constructor","map","combine","that","tsplus_module_4","foldLeft","tsplus_module_1","empty","acc","k","v","set","tsplus_module_2","match","_","get","concat","tsplus_module_3","from","key","overwrite","value","update","f","annotate"],"sources":["../_src/ASTAnnotationMap.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;AAEM,MAAOA,gBAAgB;EAC3BC,YAAqBC,GAAqC;IAArC,KAAAA,GAAG,GAAHA,GAAG;EAAqC;EAC7DC,OAAOA,CAACC,IAAsB;IAC5B,OAAO,IAAIJ,gBAAgB,CACzBK,eAAA,CAAAC,QAAA,CAEYC,eAAA,CAAAC,KAAA,EAAe,EAAE,CAACC,GAAG,EAAE,CAACC,CAAC,EAAEC,CAAC,CAAC,KACrCJ,eAAA,CAAAK,GAAA,CACEF,CAAC,EACDG,eAAA,CAAAC,KAAA,CACE,MAAMH,CAAC,EACNI,CAAC,IAAKL,CAAC,CAACP,OAAO,CAACY,CAAC,EAAEJ,CAAC,CAAC,EAFxBJ,eAAA,CAAAS,GAAA,CAAQN,CAAC,EAATD,GAAG,CAAO,CAGT,EALHA,GAAG,CAMF,EATLJ,eAAA,CAAAY,MAAA,CACUC,eAAA,CAAAC,IAAA,CAAUf,IAAI,CAACF,GAAG,CAAC,EAD7BgB,eAAA,CAAAC,IAAA,CAAU,IAAI,CAACjB,GAAG,CAAC,CACW,CAS3B,CACJ;EACH;EACAc,GAAGA,CAAII,GAAqB;IAC1B,OAAOb,eAAA,CAAAS,GAAA,CAAaI,GAAG,EAAhB,IAAI,CAAClB,GAAG,CAAS;EAC1B;EACQmB,SAASA,CAAID,GAAqB,EAAEE,KAAQ;IAClD,OAAO,IAAItB,gBAAgB,CAACO,eAAA,CAAAK,GAAA,CAAaQ,GAAG,EAAEE,KAAK,EAAvB,IAAI,CAACpB,GAAG,CAAgB,CAAC;EACvD;EACQqB,MAAMA,CAAIH,GAAqB,EAAEI,CAAqB;IAC5D,OAAO,IAAI,CAACH,SAAS,CAACD,GAAG,EAAEI,CAAC,CAAC,IAAI,CAACR,GAAG,CAACI,GAAG,CAAC,CAAC,CAAC;EAC9C;EACAK,QAAQA,CAAIL,GAAqB,EAAEE,KAAQ;IACzC,OAAO,IAAI,CAACC,MAAM,CAACH,GAAG,EAAGT,CAAC,IACxBE,eAAA,CAAAC,KAAA,CACE,MAAMQ,KAAK,EACVX,CAAC,IAAKS,GAAG,CAACjB,OAAO,CAACQ,CAAC,EAAEW,KAAK,CAAC,EAF9BX,CAAC,CAGA,CACF;EACH;;;AACOX,gBAAA,CAAAQ,KAAK,gBAAqB,IAAIR,gBAAgB,cAACO,eAAA,CAAAC,KAAA,EAAe,CAAC","ignoreList":[]}
package/_cjs/Eq.cjs ADDED
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.eq = void 0;
7
+ exports.equals = equals;
8
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Eq/api"));
9
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/collection/immutable/Vector/api"));
10
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/schema/ASTAnnotation"));
11
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/api"));
12
+ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
13
+ var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("@fncts/base/data/Eq/definition"));
14
+ var _Global = /*#__PURE__*/require("@fncts/base/data/Global");
15
+ var _utils = /*#__PURE__*/require("./utils.cjs");
16
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
+ const eq = exports.eq = eq_1;
18
+ /**
19
+ * @tsplus getter fncts.schema.Schema equals
20
+ */
21
+ function equals(self) {
22
+ const eq = eq_1(self);
23
+ return (a, b) => eq.equals(b)(a);
24
+ }
25
+ /**
26
+ * @tsplus getter fncts.schema.Schema eq
27
+ */
28
+ function eq_1(self) {
29
+ return goMemo(self.ast);
30
+ }
31
+ const eqMemoMap = /*#__PURE__*/(0, _Global.globalValue)(/*#__PURE__*/Symbol.for("fncts.schema.Eq.eqMemoMap"), () => new WeakMap());
32
+ function goMemo(ast) {
33
+ const memo = eqMemoMap.get(ast);
34
+ if (memo) {
35
+ return memo;
36
+ }
37
+ const eq = go(ast);
38
+ eqMemoMap.set(ast, eq);
39
+ return eq;
40
+ }
41
+ function go(ast) {
42
+ void 0;
43
+ switch (ast._tag) {
44
+ case 0 /* ASTTag.Declaration */:
45
+ return tsplus_module_4.getOrElse(() => tsplus_module_1.strict)(tsplus_module_4.map(eq => eq(...tsplus_module_2.map(go)(ast.typeParameters)))(ast.annotations.get(tsplus_module_3.EqHook)));
46
+ case 1 /* ASTTag.Literal */:
47
+ case 2 /* ASTTag.UniqueSymbol */:
48
+ case 3 /* ASTTag.UndefinedKeyword */:
49
+ case 4 /* ASTTag.VoidKeyword */:
50
+ case 6 /* ASTTag.UnknownKeyword */:
51
+ case 7 /* ASTTag.AnyKeyword */:
52
+ case 9 /* ASTTag.NumberKeyword */:
53
+ case 10 /* ASTTag.BooleanKeyword */:
54
+ case 11 /* ASTTag.BigIntKeyword */:
55
+ case 12 /* ASTTag.SymbolKeyword */:
56
+ case 13 /* ASTTag.ObjectKeyword */:
57
+ case 15 /* ASTTag.TemplateLiteral */:
58
+ case 8 /* ASTTag.StringKeyword */:
59
+ return tsplus_module_1.strict;
60
+ case 5 /* ASTTag.NeverKeyword */:
61
+ return tsplus_module_1.never;
62
+ case 16 /* ASTTag.Tuple */:
63
+ {
64
+ const elements = tsplus_module_2.map(element => goMemo(element.type))(ast.elements);
65
+ const rest = tsplus_module_4.map(rest => tsplus_module_2.map(ast => goMemo(ast))(rest))(ast.rest);
66
+ return tsplus_module_6.makeEq({
67
+ equals: y => x => {
68
+ if (x.length !== y.length) {
69
+ return false;
70
+ }
71
+ let i = 0;
72
+ for (; i < elements.length; i++) {
73
+ const eq = tsplus_module_2.unsafeGet(i)(elements);
74
+ const xi = x[i];
75
+ const yi = y[i];
76
+ if (!eq.equals(yi)(xi)) {
77
+ return false;
78
+ }
79
+ }
80
+ if (tsplus_module_5.isJust(rest)) {
81
+ const head = tsplus_module_2.unsafeHead(rest.value);
82
+ const tail = tsplus_module_2.tail(rest.value);
83
+ for (; i < x.length - tail.length; i++) {
84
+ if (!head.equals(y[i])(x[i])) {
85
+ return false;
86
+ }
87
+ }
88
+ for (let j = 0; j < tail.length; j++) {
89
+ i += j;
90
+ const eq = tsplus_module_2.unsafeGet(i)(elements);
91
+ const xi = x[i];
92
+ const yi = y[i];
93
+ if (!eq.equals(yi)(xi)) {
94
+ return false;
95
+ }
96
+ }
97
+ }
98
+ return true;
99
+ }
100
+ });
101
+ }
102
+ case 17 /* ASTTag.TypeLiteral */:
103
+ {
104
+ const propertySignatureTypes = tsplus_module_2.map(ps => go(ps.type))(ast.propertySignatures);
105
+ const indexSignatures = tsplus_module_2.map(is => [go(is.parameter), go(is.type)])(ast.indexSignatures);
106
+ const requiredEqs = {};
107
+ const optionalEqs = {};
108
+ for (let i = 0; i < propertySignatureTypes.length; i++) {
109
+ const ps = tsplus_module_2.unsafeGet(i)(ast.propertySignatures);
110
+ const name = ps.name;
111
+ if (!ps.isOptional) {
112
+ requiredEqs[name] = tsplus_module_2.unsafeGet(i)(propertySignatureTypes);
113
+ } else {
114
+ optionalEqs[name] = tsplus_module_2.unsafeGet(i)(propertySignatureTypes);
115
+ }
116
+ }
117
+ let output = tsplus_module_1.struct(requiredEqs, optionalEqs);
118
+ for (let i = 0; i < indexSignatures.length; i++) {
119
+ const [, type] = tsplus_module_2.unsafeGet(i)(indexSignatures);
120
+ output = tsplus_module_1.intersection(tsplus_module_6.makeEq({
121
+ equals: y => x => {
122
+ for (const key of (0, _utils.getKeysForIndexSignature)(x, tsplus_module_2.unsafeGet(i)(ast.indexSignatures).parameter)) {
123
+ if (key in requiredEqs || key in optionalEqs) {
124
+ continue;
125
+ }
126
+ if (!type.equals(y[key])(x[key])) {
127
+ return false;
128
+ }
129
+ }
130
+ return true;
131
+ }
132
+ }))(output);
133
+ }
134
+ return output;
135
+ }
136
+ case 18 /* ASTTag.Union */:
137
+ return tsplus_module_1.union(tsplus_module_2.toArray(tsplus_module_2.map(goMemo)(ast.types)));
138
+ case 19 /* ASTTag.Lazy */:
139
+ {
140
+ const f = () => goMemo(ast.getAST());
141
+ const get = (0, _utils.memoize)(f);
142
+ return tsplus_module_6.makeEq({
143
+ equals: y => x => get(f).equals(y)(x)
144
+ });
145
+ }
146
+ case 14 /* ASTTag.Enum */:
147
+ return tsplus_module_1.strict;
148
+ case 21 /* ASTTag.Transform */:
149
+ return goMemo(ast.to);
150
+ case 20 /* ASTTag.Refinement */:
151
+ return goMemo(ast.from);
152
+ case 22 /* ASTTag.Validation */:
153
+ return goMemo(ast.from);
154
+ }
155
+ }
156
+ //# sourceMappingURL=Eq.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Eq.cjs","names":["_Global","require","_utils","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","eq","exports","eq_1","equals","self","a","b","goMemo","ast","eqMemoMap","globalValue","Symbol","for","memo","go","_tag","tsplus_module_4","getOrElse","tsplus_module_1","strict","map","tsplus_module_2","typeParameters","annotations","tsplus_module_3","EqHook","never","elements","element","type","rest","tsplus_module_6","makeEq","y","x","length","unsafeGet","xi","yi","tsplus_module_5","isJust","head","unsafeHead","value","tail","j","propertySignatureTypes","ps","propertySignatures","indexSignatures","is","parameter","requiredEqs","optionalEqs","name","isOptional","output","struct","intersection","key","getKeysForIndexSignature","union","toArray","types","getAST","memoize","to","from"],"sources":["../_src/Eq.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}