effect-app 1.32.0 → 2.0.1

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 (310) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/_cjs/Array.cjs +132 -0
  3. package/_cjs/Array.cjs.map +1 -0
  4. package/_cjs/Chunk.cjs +128 -0
  5. package/_cjs/Chunk.cjs.map +1 -0
  6. package/_cjs/Config/SecretURL.cjs +3 -3
  7. package/_cjs/Config/SecretURL.cjs.map +1 -1
  8. package/_cjs/Config/internal/configSecretURL.cjs +2 -2
  9. package/_cjs/Config/internal/configSecretURL.cjs.map +1 -1
  10. package/_cjs/Context.cjs +243 -0
  11. package/_cjs/Context.cjs.map +1 -0
  12. package/_cjs/Dictionary.cjs +522 -0
  13. package/_cjs/Dictionary.cjs.map +1 -0
  14. package/_cjs/Effect.cjs +202 -0
  15. package/_cjs/Effect.cjs.map +1 -0
  16. package/_cjs/Function.cjs +107 -0
  17. package/_cjs/Function.cjs.map +1 -0
  18. package/_cjs/NonEmptySet.cjs +26 -0
  19. package/_cjs/NonEmptySet.cjs.map +1 -0
  20. package/_cjs/NonEmptySetAspects.cjs +17 -0
  21. package/_cjs/NonEmptySetAspects.cjs.map +1 -0
  22. package/_cjs/NonEmptySetBase.cjs +82 -0
  23. package/_cjs/NonEmptySetBase.cjs.map +1 -0
  24. package/_cjs/Object.cjs +24 -0
  25. package/_cjs/Object.cjs.map +1 -0
  26. package/_cjs/Operations.cjs +1 -1
  27. package/_cjs/Option.cjs +88 -0
  28. package/_cjs/Option.cjs.map +1 -0
  29. package/_cjs/Prelude.cjs +53 -0
  30. package/_cjs/Prelude.cjs.map +1 -0
  31. package/_cjs/Prelude.code.cjs +53 -0
  32. package/_cjs/Prelude.code.cjs.map +1 -0
  33. package/_cjs/Pure.cjs +39 -36
  34. package/_cjs/Pure.cjs.map +1 -1
  35. package/_cjs/Schema/Class.cjs +61 -0
  36. package/_cjs/Schema/Class.cjs.map +1 -0
  37. package/_cjs/Schema/FastCheck.cjs +39 -0
  38. package/_cjs/Schema/FastCheck.cjs.map +1 -0
  39. package/_cjs/Schema/Methods.cjs +6 -0
  40. package/_cjs/Schema/Methods.cjs.map +1 -0
  41. package/_cjs/Schema/brand.cjs +17 -0
  42. package/_cjs/Schema/brand.cjs.map +1 -0
  43. package/_cjs/Schema/email.cjs +20 -0
  44. package/_cjs/Schema/email.cjs.map +1 -0
  45. package/_cjs/Schema/ext.cjs +174 -0
  46. package/_cjs/Schema/ext.cjs.map +1 -0
  47. package/_cjs/Schema/moreStrings.cjs +124 -0
  48. package/_cjs/Schema/moreStrings.cjs.map +1 -0
  49. package/_cjs/Schema/numbers.cjs +52 -0
  50. package/_cjs/Schema/numbers.cjs.map +1 -0
  51. package/_cjs/Schema/phoneNumber.cjs +22 -0
  52. package/_cjs/Schema/phoneNumber.cjs.map +1 -0
  53. package/_cjs/Schema/schema.cjs +15 -0
  54. package/_cjs/Schema/schema.cjs.map +1 -0
  55. package/_cjs/Schema/strings.cjs +32 -0
  56. package/_cjs/Schema/strings.cjs.map +1 -0
  57. package/_cjs/Schema.cjs +334 -0
  58. package/_cjs/Schema.cjs.map +1 -0
  59. package/_cjs/Set.cjs +567 -0
  60. package/_cjs/Set.cjs.map +1 -0
  61. package/_cjs/Struct.cjs +51 -0
  62. package/_cjs/Struct.cjs.map +1 -0
  63. package/_cjs/Tag.cjs +25 -0
  64. package/_cjs/Tag.cjs.map +1 -0
  65. package/_cjs/Unify.cjs +40 -0
  66. package/_cjs/Unify.cjs.map +1 -0
  67. package/_cjs/_ext/misc.cjs +16 -16
  68. package/_cjs/_ext/misc.cjs.map +1 -1
  69. package/_cjs/_ext/ord.ext.cjs +52 -0
  70. package/_cjs/_ext/ord.ext.cjs.map +1 -0
  71. package/_cjs/builtin.cjs +6 -0
  72. package/_cjs/builtin.cjs.map +1 -0
  73. package/_cjs/client/clientFor.cjs +5 -3
  74. package/_cjs/client/clientFor.cjs.map +1 -1
  75. package/_cjs/client/config.cjs +4 -4
  76. package/_cjs/client/config.cjs.map +1 -1
  77. package/_cjs/client/errors.cjs +9 -9
  78. package/_cjs/client/errors.cjs.map +1 -1
  79. package/_cjs/http/http-client.cjs +35 -0
  80. package/_cjs/http/http-client.cjs.map +1 -0
  81. package/_cjs/ids.cjs +5 -5
  82. package/_cjs/ids.cjs.map +1 -1
  83. package/_cjs/index.cjs +1 -1
  84. package/_cjs/lib.cjs +178 -9
  85. package/_cjs/lib.cjs.map +1 -1
  86. package/_cjs/logger.cjs +1 -1
  87. package/_cjs/transform.cjs +45 -0
  88. package/_cjs/transform.cjs.map +1 -0
  89. package/_cjs/utils/effectify.cjs +25 -0
  90. package/_cjs/utils/effectify.cjs.map +1 -0
  91. package/_cjs/utils/extend.cjs +17 -0
  92. package/_cjs/utils/extend.cjs.map +1 -0
  93. package/_cjs/utils/logger.cjs +23 -0
  94. package/_cjs/utils/logger.cjs.map +1 -0
  95. package/_cjs/utils.cjs +431 -4
  96. package/_cjs/utils.cjs.map +1 -1
  97. package/_cjs/validation/validators.cjs +32 -0
  98. package/_cjs/validation/validators.cjs.map +1 -0
  99. package/_cjs/validation.cjs +45 -0
  100. package/_cjs/validation.cjs.map +1 -0
  101. package/dist/Array.d.ts +64 -0
  102. package/dist/Array.d.ts.map +1 -0
  103. package/dist/Array.js +89 -0
  104. package/dist/Chunk.d.ts +68 -0
  105. package/dist/Chunk.d.ts.map +1 -0
  106. package/dist/Chunk.js +93 -0
  107. package/dist/Config/SecretURL.d.ts +3 -3
  108. package/dist/Config/SecretURL.d.ts.map +1 -1
  109. package/dist/Config/SecretURL.js +2 -2
  110. package/dist/Config/internal/configSecretURL.js +2 -2
  111. package/dist/Context.d.ts +55 -0
  112. package/dist/Context.d.ts.map +1 -0
  113. package/dist/Context.js +204 -0
  114. package/dist/Dictionary.d.ts +260 -0
  115. package/dist/Dictionary.d.ts.map +1 -0
  116. package/dist/Dictionary.js +448 -0
  117. package/dist/Effect.d.ts +115 -0
  118. package/dist/Effect.d.ts.map +1 -0
  119. package/dist/Effect.js +153 -0
  120. package/dist/Function.d.ts +72 -0
  121. package/dist/Function.d.ts.map +1 -0
  122. package/dist/Function.js +71 -0
  123. package/dist/Inputify.type.d.ts +1 -1
  124. package/dist/Inputify.type.d.ts.map +1 -1
  125. package/dist/NonEmptySet.d.ts +3 -0
  126. package/dist/NonEmptySet.d.ts.map +1 -0
  127. package/dist/NonEmptySet.js +3 -0
  128. package/dist/NonEmptySetAspects.d.ts +2 -0
  129. package/dist/NonEmptySetAspects.d.ts.map +1 -0
  130. package/dist/NonEmptySetAspects.js +2 -0
  131. package/dist/NonEmptySetBase.d.ts +39 -0
  132. package/dist/NonEmptySetBase.d.ts.map +1 -0
  133. package/dist/NonEmptySetBase.js +63 -0
  134. package/dist/Object.d.ts +7 -0
  135. package/dist/Object.d.ts.map +1 -0
  136. package/dist/Object.js +7 -0
  137. package/dist/Operations.d.ts +2 -2
  138. package/dist/Operations.js +1 -1
  139. package/dist/Option.d.ts +39 -0
  140. package/dist/Option.d.ts.map +1 -0
  141. package/dist/Option.js +55 -0
  142. package/dist/Prelude.code.d.ts +25 -0
  143. package/dist/Prelude.code.d.ts.map +1 -0
  144. package/dist/Prelude.code.js +24 -0
  145. package/dist/Prelude.d.ts +163 -0
  146. package/dist/Prelude.d.ts.map +1 -0
  147. package/dist/Prelude.js +24 -0
  148. package/dist/Pure.d.ts +13 -12
  149. package/dist/Pure.d.ts.map +1 -1
  150. package/dist/Pure.js +18 -17
  151. package/dist/Schema/Class.d.ts +45 -0
  152. package/dist/Schema/Class.d.ts.map +1 -0
  153. package/dist/Schema/Class.js +50 -0
  154. package/dist/Schema/FastCheck.d.ts +10 -0
  155. package/dist/Schema/FastCheck.d.ts.map +1 -0
  156. package/dist/Schema/FastCheck.js +12 -0
  157. package/dist/Schema/Methods.d.ts +6 -0
  158. package/dist/Schema/Methods.d.ts.map +1 -0
  159. package/dist/Schema/Methods.js +2 -0
  160. package/dist/Schema/brand.d.ts +35 -0
  161. package/dist/Schema/brand.d.ts.map +1 -0
  162. package/dist/Schema/brand.js +7 -0
  163. package/dist/Schema/email.d.ts +9 -0
  164. package/dist/Schema/email.d.ts.map +1 -0
  165. package/dist/Schema/email.js +12 -0
  166. package/dist/Schema/ext.d.ts +89 -0
  167. package/dist/Schema/ext.d.ts.map +1 -0
  168. package/dist/Schema/ext.js +111 -0
  169. package/dist/Schema/moreStrings.d.ts +109 -0
  170. package/dist/Schema/moreStrings.d.ts.map +1 -0
  171. package/dist/Schema/moreStrings.js +108 -0
  172. package/dist/Schema/numbers.d.ts +46 -0
  173. package/dist/Schema/numbers.d.ts.map +1 -0
  174. package/dist/Schema/numbers.js +28 -0
  175. package/dist/Schema/phoneNumber.d.ts +9 -0
  176. package/dist/Schema/phoneNumber.d.ts.map +1 -0
  177. package/dist/Schema/phoneNumber.js +14 -0
  178. package/dist/Schema/schema.d.ts +6 -0
  179. package/dist/Schema/schema.d.ts.map +1 -0
  180. package/dist/Schema/schema.js +5 -0
  181. package/dist/Schema/strings.d.ts +19 -0
  182. package/dist/Schema/strings.d.ts.map +1 -0
  183. package/dist/Schema/strings.js +32 -0
  184. package/dist/{schema.d.ts → Schema.d.ts} +25 -9
  185. package/dist/Schema.d.ts.map +1 -0
  186. package/dist/Schema.js +89 -0
  187. package/dist/Set.d.ts +221 -0
  188. package/dist/Set.d.ts.map +1 -0
  189. package/dist/Set.js +516 -0
  190. package/dist/Struct.d.ts +44 -0
  191. package/dist/Struct.d.ts.map +1 -0
  192. package/dist/Struct.js +29 -0
  193. package/dist/Tag.d.ts +9 -0
  194. package/dist/Tag.d.ts.map +1 -0
  195. package/dist/Tag.js +18 -0
  196. package/dist/Unify.d.ts +43 -0
  197. package/dist/Unify.d.ts.map +1 -0
  198. package/dist/Unify.js +31 -0
  199. package/dist/Widen.type.d.ts +1 -1
  200. package/dist/Widen.type.d.ts.map +1 -1
  201. package/dist/_ext/misc.d.ts +11 -11
  202. package/dist/_ext/misc.d.ts.map +1 -1
  203. package/dist/_ext/misc.js +8 -8
  204. package/dist/_ext/ord.ext.d.ts +23 -0
  205. package/dist/_ext/ord.ext.d.ts.map +1 -0
  206. package/dist/_ext/ord.ext.js +44 -0
  207. package/dist/builtin.d.ts +51 -0
  208. package/dist/builtin.d.ts.map +1 -0
  209. package/dist/builtin.js +2 -0
  210. package/dist/client/clientFor.d.ts +1 -1
  211. package/dist/client/clientFor.d.ts.map +1 -1
  212. package/dist/client/clientFor.js +2 -2
  213. package/dist/client/config.d.ts +1 -1
  214. package/dist/client/config.d.ts.map +1 -1
  215. package/dist/client/config.js +2 -2
  216. package/dist/client/errors.js +1 -1
  217. package/dist/http/http-client.d.ts +43 -0
  218. package/dist/http/http-client.d.ts.map +1 -0
  219. package/dist/http/http-client.js +30 -0
  220. package/dist/ids.d.ts +3 -3
  221. package/dist/ids.d.ts.map +1 -1
  222. package/dist/ids.js +2 -2
  223. package/dist/index.d.ts +1 -1
  224. package/dist/index.d.ts.map +1 -1
  225. package/dist/index.js +2 -2
  226. package/dist/lib.d.ts +22 -4
  227. package/dist/lib.d.ts.map +1 -1
  228. package/dist/lib.js +20 -5
  229. package/dist/logger.d.ts.map +1 -1
  230. package/dist/logger.js +2 -2
  231. package/dist/transform.d.ts +12 -0
  232. package/dist/transform.d.ts.map +1 -0
  233. package/dist/transform.js +39 -0
  234. package/dist/utils/effectify.d.ts +210 -0
  235. package/dist/utils/effectify.d.ts.map +1 -0
  236. package/dist/utils/effectify.js +19 -0
  237. package/dist/utils/extend.d.ts +3 -0
  238. package/dist/utils/extend.d.ts.map +1 -0
  239. package/dist/utils/extend.js +9 -0
  240. package/dist/utils/logger.d.ts +12 -0
  241. package/dist/utils/logger.d.ts.map +1 -0
  242. package/dist/utils/logger.js +15 -0
  243. package/dist/utils.d.ts +192 -1
  244. package/dist/utils.d.ts.map +1 -1
  245. package/dist/utils.js +332 -2
  246. package/dist/validation/validators.d.ts +11 -0
  247. package/dist/validation/validators.d.ts.map +1 -0
  248. package/dist/validation/validators.js +26 -0
  249. package/dist/validation.d.ts +13 -0
  250. package/dist/validation.d.ts.map +1 -0
  251. package/dist/validation.js +14 -0
  252. package/package.json +360 -9
  253. package/src/Array.ts +127 -0
  254. package/src/Chunk.ts +112 -0
  255. package/src/Config/SecretURL.ts +3 -3
  256. package/src/Config/internal/configSecretURL.ts +1 -1
  257. package/src/Context.ts +293 -0
  258. package/src/Dictionary.ts +669 -0
  259. package/src/Effect.ts +265 -0
  260. package/src/Function.ts +175 -0
  261. package/src/Inputify.type.ts +1 -1
  262. package/src/NonEmptySet.ts +3 -0
  263. package/src/NonEmptySetAspects.ts +1 -0
  264. package/src/NonEmptySetBase.ts +109 -0
  265. package/src/Object.ts +19 -0
  266. package/src/Operations.ts +1 -1
  267. package/src/Option.ts +82 -0
  268. package/src/Prelude.code.ts +27 -0
  269. package/src/Prelude.ts +220 -0
  270. package/src/Pure.ts +37 -30
  271. package/src/Schema/Class.ts +225 -0
  272. package/src/Schema/FastCheck.ts +23 -0
  273. package/src/Schema/Methods.ts +8 -0
  274. package/src/Schema/brand.ts +50 -0
  275. package/src/Schema/email.ts +22 -0
  276. package/src/Schema/ext.ts +273 -0
  277. package/src/Schema/moreStrings.ts +260 -0
  278. package/src/Schema/numbers.ts +83 -0
  279. package/src/Schema/phoneNumber.ts +24 -0
  280. package/src/Schema/schema.ts +6 -0
  281. package/src/Schema/strings.ts +60 -0
  282. package/src/{schema.ts → Schema.ts} +52 -20
  283. package/src/Set.ts +674 -0
  284. package/src/Struct.ts +54 -0
  285. package/src/Tag.ts +20 -0
  286. package/src/Unify.ts +56 -0
  287. package/src/Widen.type.ts +1 -1
  288. package/src/_ext/misc.ts +22 -22
  289. package/src/_ext/ord.ext.ts +49 -0
  290. package/src/builtin.ts +64 -0
  291. package/src/client/clientFor.ts +1 -1
  292. package/src/client/config.ts +1 -1
  293. package/src/client/errors.ts +1 -1
  294. package/src/http/http-client.ts +73 -0
  295. package/src/ids.ts +3 -3
  296. package/src/index.ts +1 -1
  297. package/src/lib.ts +88 -4
  298. package/src/logger.ts +1 -1
  299. package/src/transform.ts +80 -0
  300. package/src/utils/effectify.ts +259 -0
  301. package/src/utils/extend.ts +9 -0
  302. package/src/utils/logger.ts +24 -0
  303. package/src/utils.ts +805 -1
  304. package/src/validation/validators.ts +32 -0
  305. package/src/validation.ts +18 -0
  306. package/tsconfig.src.json +1 -5
  307. package/_cjs/schema.cjs +0 -110
  308. package/_cjs/schema.cjs.map +0 -1
  309. package/dist/schema.d.ts.map +0 -1
  310. package/dist/schema.js +0 -73
package/dist/Set.d.ts ADDED
@@ -0,0 +1,221 @@
1
+ import { Option } from "effect";
2
+ import type { Either, Equivalence, Order } from "effect";
3
+ import type { Predicate, Refinement } from "./Function.js";
4
+ /**
5
+ * @tsplus fluent ets/Set find
6
+ */
7
+ export declare function find_<A, B extends A>(as: ReadonlySet<A>, refinement: Refinement<A, B>): B | undefined;
8
+ export declare function find_<A>(set: ReadonlySet<A>, predicate: Predicate<A>): A | undefined;
9
+ /**
10
+ * @tsplus fluent ets/Set findFirst
11
+ */
12
+ export declare function findFirst_<A, B extends A>(set: ReadonlySet<A>, refinement: Refinement<A, B>): Option.Option<B>;
13
+ export declare function findFirst_<A>(set: ReadonlySet<A>, predicate: Predicate<A>): Option.Option<A>;
14
+ /**
15
+ * @tsplus fluent ets/Set findFirstMap
16
+ */
17
+ export declare function findFirstMap_<A, B>(set: ReadonlySet<A>, f: (a: A) => Option.Option<B>): Option.Option<B>;
18
+ export type MutableSet<A> = globalThis.Set<A>;
19
+ export type Set<A> = ReadonlySet<A>;
20
+ export declare const empty: Set<never>;
21
+ /**
22
+ * The set of elements which are in both the first and second set
23
+ */
24
+ export declare function intersection_<A>(E: Equivalence.Equivalence<A>): (l: Set<A>, r: Set<A>) => Set<A>;
25
+ /**
26
+ * The set of elements which are in both the first and second set
27
+ */
28
+ export declare function intersection<A>(E: Equivalence.Equivalence<A>): (r: Set<A>) => (l: Set<A>) => Set<A>;
29
+ /**
30
+ * Convert a mutable set to a readonly one
31
+ */
32
+ export declare function fromMutable<A>(s: MutableSet<A>): Set<A>;
33
+ /**
34
+ * Convert a set to a mutable one
35
+ */
36
+ export declare function toMutable<A>(s: Set<A>): MutableSet<A>;
37
+ /**
38
+ * Convert a set to an Array
39
+ */
40
+ export declare function toArray<A>(O: Order.Order<A>): (set: Set<A>) => ReadonlyArray<A>;
41
+ /**
42
+ * Convert a set to an Array
43
+ */
44
+ export declare function toArray_<A>(x: Set<A>, O: Order.Order<A>): ReadonlyArray<A>;
45
+ /**
46
+ * true if one or more elements match predicate
47
+ */
48
+ export declare function some<A>(predicate: Predicate<A>): (set: Set<A>) => boolean;
49
+ /**
50
+ * true if one or more elements match predicate
51
+ * @tsplus fluent ets/Set some
52
+ */
53
+ export declare function some_<A>(set: Set<A>, predicate: Predicate<A>): boolean;
54
+ /**
55
+ * Projects a Set through a function
56
+ */
57
+ export declare function map<B>(E: Equivalence.Equivalence<B>): <A>(f: (x: A) => B) => (set: Set<A>) => Set<B>;
58
+ /**
59
+ * Projects a Set through a function
60
+ */
61
+ export declare function map_<B>(E: Equivalence.Equivalence<B>): <A>(set: Set<A>, f: (x: A) => B) => Set<B>;
62
+ /**
63
+ * true if all elements match predicate
64
+ */
65
+ export declare function every<A>(predicate: Predicate<A>): (set: Set<A>) => boolean;
66
+ /**
67
+ * true if all elements match predicate
68
+ */
69
+ export declare function every_<A>(set: Set<A>, predicate: Predicate<A>): boolean;
70
+ /**
71
+ * Map + Flatten
72
+ */
73
+ export declare function chain<B>(E: Equivalence.Equivalence<B>): <A>(f: (x: A) => Set<B>) => (set: Set<A>) => Set<B>;
74
+ /**
75
+ * Map + Flatten
76
+ */
77
+ export declare function chain_<B>(E: Equivalence.Equivalence<B>): <A>(set: Set<A>, f: (x: A) => Set<B>) => Set<B>;
78
+ /**
79
+ * `true` if and only if every element in the first set is an element of the second set
80
+ */
81
+ export declare function isSubset<A>(E: Equivalence.Equivalence<A>): (x: Set<A>, y: Set<A>) => boolean;
82
+ /**
83
+ * `true` if and only if every element in the first set is an element of the second set
84
+ */
85
+ export declare function isSubset_<A>(E: Equivalence.Equivalence<A>): (x: Set<A>, y: Set<A>) => boolean;
86
+ /**
87
+ * Filter set values using predicate
88
+ */
89
+ export declare function filter<A, B extends A>(refinement: Refinement<A, B>): (set: Set<A>) => Set<B>;
90
+ export declare function filter<A>(predicate: Predicate<A>): (set: Set<A>) => Set<A>;
91
+ /**
92
+ * Filter set values using predicate
93
+ * @tsplus fluent ets/Set filter
94
+ */
95
+ export declare function filter_<A, B extends A>(set: Set<A>, refinement: Refinement<A, B>): Set<B>;
96
+ export declare function filter_<A>(set: Set<A>, predicate: Predicate<A>): Set<A>;
97
+ /**
98
+ * Partition set values using predicate
99
+ */
100
+ export declare function partition<A, B extends A>(refinement: Refinement<A, B>): (set: Set<A>) => readonly [Set<A>, Set<B>];
101
+ export declare function partition<A>(predicate: Predicate<A>): (set: Set<A>) => readonly [Set<A>, Set<A>];
102
+ /**
103
+ * Partition set values using predicate
104
+ */
105
+ export declare function partition_<A, B extends A>(set: Set<A>, refinement: Refinement<A, B>): readonly [Set<A>, Set<B>];
106
+ export declare function partition_<A>(set: Set<A>, predicate: Predicate<A>): readonly [Set<A>, Set<A>];
107
+ /**
108
+ * Test if a value is a member of a set
109
+ */
110
+ export declare function elem_<A>(E: Equivalence.Equivalence<A>): (set: Set<A>, a: A) => boolean;
111
+ /**
112
+ * Test if a value is a member of a set
113
+ */
114
+ export declare function elem<A>(E: Equivalence.Equivalence<A>): (a: A) => (set: Set<A>) => boolean;
115
+ /**
116
+ * Partition elements according to f
117
+ */
118
+ export declare function partitionMap<B, C>(EB: Equivalence.Equivalence<B>, EC: Equivalence.Equivalence<C>): <A>(f: (a: A) => Either.Either<C, B>) => (set: Set<A>) => readonly [Set<B>, Set<C>];
119
+ /**
120
+ * Partition elements according to f
121
+ */
122
+ export declare function partitionMap_<B, C>(EB: Equivalence.Equivalence<B>, EC: Equivalence.Equivalence<C>): <A>(set: Set<A>, f: (a: A) => Either.Either<C, B>) => readonly [Set<B>, Set<C>];
123
+ /**
124
+ * Form the set difference (`x` - `y`)
125
+ */
126
+ export declare function difference_<A>(E: Equivalence.Equivalence<A>): (l: Set<A>, r: Set<A>) => Set<A>;
127
+ /**
128
+ * Form the set difference (`x` - `y`)
129
+ */
130
+ export declare function difference<A>(E: Equivalence.Equivalence<A>): (x: Set<A>, y: Set<A>) => Set<A>;
131
+ /**
132
+ * Reduce over the set values
133
+ */
134
+ export declare function reduce<A>(O: Order.Order<A>): <B>(b: B, f: (b: B, a: A) => B) => (fa: Set<A>) => B;
135
+ /**
136
+ * Reduce over the set values
137
+ */
138
+ export declare function reduce_<A>(O: Order.Order<A>): <B>(fa: Set<A>, b: B, f: (b: B, a: A) => B) => B;
139
+ /**
140
+ * Create a set with one element
141
+ */
142
+ export declare function singleton<A>(a: A): Set<A>;
143
+ /**
144
+ * Insert a value into a set
145
+ */
146
+ export declare function insert<A>(E: Equivalence.Equivalence<A>): (a: A) => (set: Set<A>) => Set<A>;
147
+ /**
148
+ * Insert a value into a set
149
+ */
150
+ export declare function insert_<A>(E: Equivalence.Equivalence<A>): (set: Set<A>, a: A) => Set<A>;
151
+ /**
152
+ * Delete a value from a set
153
+ */
154
+ export declare function remove<A>(E: Equivalence.Equivalence<A>): (a: A) => (set: Set<A>) => Set<A>;
155
+ /**
156
+ * Delete a value from a set
157
+ */
158
+ export declare function remove_<A>(E: Equivalence.Equivalence<A>): (set: Set<A>, a: A) => Set<A>;
159
+ /**
160
+ * If element is present remove it, if not add it
161
+ */
162
+ export declare function toggle<A>(E: Equivalence.Equivalence<A>): (a: A) => (set: Set<A>) => Set<A>;
163
+ /**
164
+ * If element is present remove it, if not add it
165
+ */
166
+ export declare function toggle_<A>(E: Equivalence.Equivalence<A>): (set: Set<A>, a: A) => Set<A>;
167
+ /**
168
+ * Create a set from an array
169
+ */
170
+ export declare function fromArray<A>(E: Equivalence.Equivalence<A>): (as: ReadonlyArray<A>) => Set<A>;
171
+ /**
172
+ * Set compaction, remove none
173
+ */
174
+ export declare function compact<A>(E: Equivalence.Equivalence<A>): (fa: Set<Option.Option<A>>) => Set<A>;
175
+ /**
176
+ * Separate elements
177
+ */
178
+ export declare function separate<E, A>(EE: Equivalence.Equivalence<E>, EA: Equivalence.Equivalence<A>): (fa: Set<Either.Either<A, E>>) => readonly [Set<E>, Set<A>];
179
+ /**
180
+ * Filter + Map
181
+ */
182
+ export declare function filterMap<B>(E: Equivalence.Equivalence<B>): <A>(f: (a: A) => Option.Option<B>) => (fa: Set<A>) => Set<B>;
183
+ /**
184
+ * Filter + Map
185
+ */
186
+ export declare function filterMap_<B>(E: Equivalence.Equivalence<B>): <A>(fa: Set<A>, f: (a: A) => Option.Option<B>) => Set<B>;
187
+ /**
188
+ * Form the union of two sets
189
+ */
190
+ export declare function union_<A>(E: Equivalence.Equivalence<A>): (set: Set<A>, y: Set<A>) => Set<A>;
191
+ /**
192
+ * Form the union of two sets
193
+ */
194
+ export declare function union<A>(E: Equivalence.Equivalence<A>): (set: Set<A>, y: Set<A>) => Set<A>;
195
+ declare class Wrapper<A> {
196
+ wrapped(ord: Order.Order<A>, eq: Equivalence.Equivalence<A>): {
197
+ insert: (a: A) => (set: Set<A>) => Set<A>;
198
+ insert_: (set: Set<A>, a: A) => Set<A>;
199
+ remove: (a: A) => (set: Set<A>) => Set<A>;
200
+ remove_: (set: Set<A>, a: A) => Set<A>;
201
+ reduce: <B>(b: B, f: (b: B, a: A) => B) => (fa: Set<A>) => B;
202
+ reduce_: <B>(fa: Set<A>, b: B, f: (b: B, a: A) => B) => B;
203
+ replace: (a: A) => (set: Set<A>) => Set<A>;
204
+ replace_: (set: Set<A>, a: A) => Set<A>;
205
+ toArray: (set: Set<A>) => readonly A[];
206
+ fromArray: typeof fromArray;
207
+ from: (it: Iterable<A>) => Set<A>;
208
+ empty: () => globalThis.Set<A>;
209
+ concat_: (set: Set<A>, it: Iterable<A>) => Set<A>;
210
+ concat: (it: Iterable<A>) => (set: Set<A>) => Set<A>;
211
+ map: <A_1>(f: (x: A_1) => A) => (set: Set<A_1>) => Set<A>;
212
+ map_: <A_1>(set: Set<A_1>, f: (x: A_1) => A) => Set<A>;
213
+ filterMap: <A_1>(f: (a: A_1) => Option.Option<A>) => (fa: Set<A_1>) => Set<A>;
214
+ filterMap_: <A_1>(fa: Set<A_1>, f: (a: A_1) => Option.Option<A>) => Set<A>;
215
+ };
216
+ }
217
+ export interface SetSchemaExtensions<A> extends ReturnType<Wrapper<A>["wrapped"]> {
218
+ }
219
+ export declare const make: <A>(ord: Order.Order<A>, eq?: Equivalence.Equivalence<A>) => SetSchemaExtensions<A>;
220
+ export {};
221
+ //# sourceMappingURL=Set.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Set.d.ts","sourceRoot":"","sources":["../src/Set.ts"],"names":[],"mappings":"AAEA,OAAO,EAAS,MAAM,EAAE,MAAM,QAAQ,CAAA;AACtC,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1D;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EAClC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,EAClB,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,CAAC,GAAG,SAAS,CAAA;AAChB,wBAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAAA;AAKrF;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EACvC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,EACnB,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AACnB,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;AAK7F;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,EACnB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,GAC5B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAElB;AAED,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAC7C,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAA;AAEnC,eAAO,MAAM,KAAK,EAAE,GAAG,CAAC,KAAK,CAAa,CAAA;AAE1C;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAchG;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAGnG;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAEvD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAErD;AAoBD;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC,CAM/E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAE1E;AAeD;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAUzE;AAED;;;GAGG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,CAEtE;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAGpG;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAYjG;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAE1E;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,CAEvE;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EACrB,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAGrD;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EACtB,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC5B,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAajD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAG5F;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAG7F;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EACnC,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;AAC1B,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;AAK3E;;;GAGG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EACpC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EACX,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,GAAG,CAAC,CAAC,CAAC,CAAA;AACT,wBAAgB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;AAcxE;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EACtC,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAC7C,wBAAgB,SAAS,CAAC,CAAC,EACzB,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GACtB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAO7C;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,EACvC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EACX,UAAU,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5B,wBAAgB,UAAU,CAAC,CAAC,EAC1B,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EACX,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GACtB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;AAoB5B;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAUtF;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,OAAO,CAGzF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAC/B,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAGrF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC7B,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAyBjF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG9F;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG7F;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EACtB,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAChB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAGtD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EACvB,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAChB,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAGlD;AAwBD;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAEzC;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG1F;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAWvF;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG1F;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAEvF;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG1F;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAKvF;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAa5F;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAE/F;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAC3B,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,EAC9B,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC7B,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAsB7D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC5B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG9D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAC1B,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAC5B,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAY1D;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAiB3F;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAG1F;AAsCD,cAAM,OAAO,CAAC,CAAC;IACb,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;;;;;iBA5PzD,CAAC;kBAUD,CAAC;;;;;;;;;;;;;;CAqPJ;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CAAG;AAEpF,eAAO,MAAM,IAAI,EAAE,CAAC,CAAC,EACnB,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EACnB,EAAE,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,KAC5B,mBAAmB,CAAC,CAAC,CAAS,CAAA"}