rubico 2.6.0 → 2.6.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 (336) hide show
  1. package/dist/Transducer.es.js +1 -1
  2. package/dist/Transducer.es.min.js +1 -1
  3. package/dist/Transducer.js +1 -1
  4. package/dist/Transducer.min.js +1 -1
  5. package/dist/Transducer.mjs +1 -1
  6. package/dist/__.es.js +1 -1
  7. package/dist/__.es.min.js +1 -1
  8. package/dist/__.js +1 -1
  9. package/dist/__.min.js +1 -1
  10. package/dist/__.mjs +1 -1
  11. package/dist/all.es.js +1 -1
  12. package/dist/all.es.min.js +1 -1
  13. package/dist/all.js +1 -1
  14. package/dist/all.min.js +1 -1
  15. package/dist/all.mjs +1 -1
  16. package/dist/always.es.js +1 -1
  17. package/dist/always.es.min.js +1 -1
  18. package/dist/always.js +1 -1
  19. package/dist/always.min.js +1 -1
  20. package/dist/always.mjs +1 -1
  21. package/dist/and.es.js +1 -1
  22. package/dist/and.es.min.js +1 -1
  23. package/dist/and.js +1 -1
  24. package/dist/and.min.js +1 -1
  25. package/dist/and.mjs +1 -1
  26. package/dist/assign.es.js +1 -1
  27. package/dist/assign.es.min.js +1 -1
  28. package/dist/assign.js +1 -1
  29. package/dist/assign.min.js +1 -1
  30. package/dist/assign.mjs +1 -1
  31. package/dist/compose.es.js +1 -1
  32. package/dist/compose.es.min.js +1 -1
  33. package/dist/compose.js +1 -1
  34. package/dist/compose.min.js +1 -1
  35. package/dist/compose.mjs +1 -1
  36. package/dist/curry.es.js +1 -1
  37. package/dist/curry.es.min.js +1 -1
  38. package/dist/curry.js +1 -1
  39. package/dist/curry.min.js +1 -1
  40. package/dist/curry.mjs +1 -1
  41. package/dist/eq.es.js +1 -1
  42. package/dist/eq.es.min.js +1 -1
  43. package/dist/eq.js +1 -1
  44. package/dist/eq.min.js +1 -1
  45. package/dist/eq.mjs +1 -1
  46. package/dist/every.es.js +1 -1
  47. package/dist/every.es.min.js +1 -1
  48. package/dist/every.js +1 -1
  49. package/dist/every.min.js +1 -1
  50. package/dist/every.mjs +1 -1
  51. package/dist/filter.es.js +1 -1
  52. package/dist/filter.es.min.js +1 -1
  53. package/dist/filter.js +1 -1
  54. package/dist/filter.min.js +1 -1
  55. package/dist/filter.mjs +1 -1
  56. package/dist/flatMap.es.js +1 -1
  57. package/dist/flatMap.es.min.js +1 -1
  58. package/dist/flatMap.js +1 -1
  59. package/dist/flatMap.min.js +1 -1
  60. package/dist/flatMap.mjs +1 -1
  61. package/dist/forEach.es.js +1 -1
  62. package/dist/forEach.es.min.js +1 -1
  63. package/dist/forEach.js +1 -1
  64. package/dist/forEach.min.js +1 -1
  65. package/dist/forEach.mjs +1 -1
  66. package/dist/get.es.js +1 -1
  67. package/dist/get.es.min.js +1 -1
  68. package/dist/get.js +1 -1
  69. package/dist/get.min.js +1 -1
  70. package/dist/get.mjs +1 -1
  71. package/dist/gt.es.js +1 -1
  72. package/dist/gt.es.min.js +1 -1
  73. package/dist/gt.js +1 -1
  74. package/dist/gt.min.js +1 -1
  75. package/dist/gt.mjs +1 -1
  76. package/dist/gte.es.js +1 -1
  77. package/dist/gte.es.min.js +1 -1
  78. package/dist/gte.js +1 -1
  79. package/dist/gte.min.js +1 -1
  80. package/dist/gte.mjs +1 -1
  81. package/dist/lt.es.js +1 -1
  82. package/dist/lt.es.min.js +1 -1
  83. package/dist/lt.js +1 -1
  84. package/dist/lt.min.js +1 -1
  85. package/dist/lt.mjs +1 -1
  86. package/dist/lte.es.js +1 -1
  87. package/dist/lte.es.min.js +1 -1
  88. package/dist/lte.js +1 -1
  89. package/dist/lte.min.js +1 -1
  90. package/dist/lte.mjs +1 -1
  91. package/dist/map.es.js +1 -1
  92. package/dist/map.es.min.js +1 -1
  93. package/dist/map.js +1 -1
  94. package/dist/map.min.js +1 -1
  95. package/dist/map.mjs +1 -1
  96. package/dist/not.es.js +1 -1
  97. package/dist/not.es.min.js +1 -1
  98. package/dist/not.js +1 -1
  99. package/dist/not.min.js +1 -1
  100. package/dist/not.mjs +1 -1
  101. package/dist/omit.es.js +1 -1
  102. package/dist/omit.es.min.js +1 -1
  103. package/dist/omit.js +1 -1
  104. package/dist/omit.min.js +1 -1
  105. package/dist/omit.mjs +1 -1
  106. package/dist/or.es.js +1 -1
  107. package/dist/or.es.min.js +1 -1
  108. package/dist/or.js +1 -1
  109. package/dist/or.min.js +1 -1
  110. package/dist/or.mjs +1 -1
  111. package/dist/pick.es.js +1 -1
  112. package/dist/pick.es.min.js +1 -1
  113. package/dist/pick.js +1 -1
  114. package/dist/pick.min.js +1 -1
  115. package/dist/pick.mjs +1 -1
  116. package/dist/pipe.es.js +1 -1
  117. package/dist/pipe.es.min.js +1 -1
  118. package/dist/pipe.js +1 -1
  119. package/dist/pipe.min.js +1 -1
  120. package/dist/pipe.mjs +1 -1
  121. package/dist/reduce.es.js +1 -1
  122. package/dist/reduce.es.min.js +1 -1
  123. package/dist/reduce.js +1 -1
  124. package/dist/reduce.min.js +1 -1
  125. package/dist/reduce.mjs +1 -1
  126. package/dist/rubico.es.js +64 -46
  127. package/dist/rubico.es.min.js +2 -2
  128. package/dist/rubico.global.js +64 -46
  129. package/dist/rubico.global.min.js +2 -2
  130. package/dist/rubico.js +64 -46
  131. package/dist/rubico.min.js +2 -2
  132. package/dist/rubico.mjs +64 -46
  133. package/dist/set.es.js +1 -1
  134. package/dist/set.es.min.js +1 -1
  135. package/dist/set.js +1 -1
  136. package/dist/set.min.js +1 -1
  137. package/dist/set.mjs +1 -1
  138. package/dist/some.es.js +1 -1
  139. package/dist/some.es.min.js +1 -1
  140. package/dist/some.js +1 -1
  141. package/dist/some.min.js +1 -1
  142. package/dist/some.mjs +1 -1
  143. package/dist/switchCase.es.js +1 -1
  144. package/dist/switchCase.es.min.js +1 -1
  145. package/dist/switchCase.js +1 -1
  146. package/dist/switchCase.min.js +1 -1
  147. package/dist/switchCase.mjs +1 -1
  148. package/dist/tap.es.js +64 -15
  149. package/dist/tap.es.min.js +2 -2
  150. package/dist/tap.js +64 -15
  151. package/dist/tap.min.js +2 -2
  152. package/dist/tap.mjs +64 -15
  153. package/dist/thunkify.es.js +1 -1
  154. package/dist/thunkify.es.min.js +1 -1
  155. package/dist/thunkify.js +1 -1
  156. package/dist/thunkify.min.js +1 -1
  157. package/dist/thunkify.mjs +1 -1
  158. package/dist/transform.es.js +1 -1
  159. package/dist/transform.es.min.js +1 -1
  160. package/dist/transform.js +1 -1
  161. package/dist/transform.min.js +1 -1
  162. package/dist/transform.mjs +1 -1
  163. package/dist/tryCatch.es.js +1 -1
  164. package/dist/tryCatch.es.min.js +1 -1
  165. package/dist/tryCatch.js +1 -1
  166. package/dist/tryCatch.min.js +1 -1
  167. package/dist/tryCatch.mjs +1 -1
  168. package/dist/x/append.es.js +1 -1
  169. package/dist/x/append.es.min.js +1 -1
  170. package/dist/x/append.js +1 -1
  171. package/dist/x/append.min.js +1 -1
  172. package/dist/x/append.mjs +1 -1
  173. package/dist/x/callProp.es.js +1 -1
  174. package/dist/x/callProp.es.min.js +1 -1
  175. package/dist/x/callProp.js +1 -1
  176. package/dist/x/callProp.min.js +1 -1
  177. package/dist/x/callProp.mjs +1 -1
  178. package/dist/x/defaultsDeep.es.js +1 -1
  179. package/dist/x/defaultsDeep.es.min.js +1 -1
  180. package/dist/x/defaultsDeep.js +1 -1
  181. package/dist/x/defaultsDeep.min.js +1 -1
  182. package/dist/x/defaultsDeep.mjs +1 -1
  183. package/dist/x/differenceWith.es.js +1 -1
  184. package/dist/x/differenceWith.es.min.js +1 -1
  185. package/dist/x/differenceWith.js +1 -1
  186. package/dist/x/differenceWith.min.js +1 -1
  187. package/dist/x/differenceWith.mjs +1 -1
  188. package/dist/x/filterOut.es.js +1 -1
  189. package/dist/x/filterOut.es.min.js +1 -1
  190. package/dist/x/filterOut.js +1 -1
  191. package/dist/x/filterOut.min.js +1 -1
  192. package/dist/x/filterOut.mjs +1 -1
  193. package/dist/x/find.es.js +1 -1
  194. package/dist/x/find.es.min.js +1 -1
  195. package/dist/x/find.js +1 -1
  196. package/dist/x/find.min.js +1 -1
  197. package/dist/x/find.mjs +1 -1
  198. package/dist/x/findIndex.es.js +1 -1
  199. package/dist/x/findIndex.es.min.js +1 -1
  200. package/dist/x/findIndex.js +1 -1
  201. package/dist/x/findIndex.min.js +1 -1
  202. package/dist/x/findIndex.mjs +1 -1
  203. package/dist/x/first.es.js +1 -1
  204. package/dist/x/first.es.min.js +1 -1
  205. package/dist/x/first.js +1 -1
  206. package/dist/x/first.min.js +1 -1
  207. package/dist/x/first.mjs +1 -1
  208. package/dist/x/flatten.es.js +1 -1
  209. package/dist/x/flatten.es.min.js +1 -1
  210. package/dist/x/flatten.js +1 -1
  211. package/dist/x/flatten.min.js +1 -1
  212. package/dist/x/flatten.mjs +1 -1
  213. package/dist/x/groupBy.es.js +1 -1
  214. package/dist/x/groupBy.es.min.js +1 -1
  215. package/dist/x/groupBy.js +1 -1
  216. package/dist/x/groupBy.min.js +1 -1
  217. package/dist/x/groupBy.mjs +1 -1
  218. package/dist/x/has.es.js +1 -1
  219. package/dist/x/has.es.min.js +1 -1
  220. package/dist/x/has.js +1 -1
  221. package/dist/x/has.min.js +1 -1
  222. package/dist/x/has.mjs +1 -1
  223. package/dist/x/identity.es.js +1 -1
  224. package/dist/x/identity.es.min.js +1 -1
  225. package/dist/x/identity.js +1 -1
  226. package/dist/x/identity.min.js +1 -1
  227. package/dist/x/identity.mjs +1 -1
  228. package/dist/x/includes.es.js +1 -1
  229. package/dist/x/includes.es.min.js +1 -1
  230. package/dist/x/includes.js +1 -1
  231. package/dist/x/includes.min.js +1 -1
  232. package/dist/x/includes.mjs +1 -1
  233. package/dist/x/isDeepEqual.es.js +1 -1
  234. package/dist/x/isDeepEqual.es.min.js +1 -1
  235. package/dist/x/isDeepEqual.js +1 -1
  236. package/dist/x/isDeepEqual.min.js +1 -1
  237. package/dist/x/isDeepEqual.mjs +1 -1
  238. package/dist/x/isEmpty.es.js +1 -1
  239. package/dist/x/isEmpty.es.min.js +1 -1
  240. package/dist/x/isEmpty.js +1 -1
  241. package/dist/x/isEmpty.min.js +1 -1
  242. package/dist/x/isEmpty.mjs +1 -1
  243. package/dist/x/isEqual.es.js +1 -1
  244. package/dist/x/isEqual.es.min.js +1 -1
  245. package/dist/x/isEqual.js +1 -1
  246. package/dist/x/isEqual.min.js +1 -1
  247. package/dist/x/isEqual.mjs +1 -1
  248. package/dist/x/isFunction.es.js +1 -1
  249. package/dist/x/isFunction.es.min.js +1 -1
  250. package/dist/x/isFunction.js +1 -1
  251. package/dist/x/isFunction.min.js +1 -1
  252. package/dist/x/isFunction.mjs +1 -1
  253. package/dist/x/isIn.es.js +1 -1
  254. package/dist/x/isIn.es.min.js +1 -1
  255. package/dist/x/isIn.js +1 -1
  256. package/dist/x/isIn.min.js +1 -1
  257. package/dist/x/isIn.mjs +1 -1
  258. package/dist/x/isObject.es.js +1 -1
  259. package/dist/x/isObject.es.min.js +1 -1
  260. package/dist/x/isObject.js +1 -1
  261. package/dist/x/isObject.min.js +1 -1
  262. package/dist/x/isObject.mjs +1 -1
  263. package/dist/x/isString.es.js +1 -1
  264. package/dist/x/isString.es.min.js +1 -1
  265. package/dist/x/isString.js +1 -1
  266. package/dist/x/isString.min.js +1 -1
  267. package/dist/x/isString.mjs +1 -1
  268. package/dist/x/keys.es.js +1 -1
  269. package/dist/x/keys.es.min.js +1 -1
  270. package/dist/x/keys.js +1 -1
  271. package/dist/x/keys.min.js +1 -1
  272. package/dist/x/keys.mjs +1 -1
  273. package/dist/x/last.es.js +1 -1
  274. package/dist/x/last.es.min.js +1 -1
  275. package/dist/x/last.js +1 -1
  276. package/dist/x/last.min.js +1 -1
  277. package/dist/x/last.mjs +1 -1
  278. package/dist/x/maxBy.es.js +1 -1
  279. package/dist/x/maxBy.es.min.js +1 -1
  280. package/dist/x/maxBy.js +1 -1
  281. package/dist/x/maxBy.min.js +1 -1
  282. package/dist/x/maxBy.mjs +1 -1
  283. package/dist/x/noop.es.js +1 -1
  284. package/dist/x/noop.es.min.js +1 -1
  285. package/dist/x/noop.js +1 -1
  286. package/dist/x/noop.min.js +1 -1
  287. package/dist/x/noop.mjs +1 -1
  288. package/dist/x/pluck.es.js +1 -1
  289. package/dist/x/pluck.es.min.js +1 -1
  290. package/dist/x/pluck.js +1 -1
  291. package/dist/x/pluck.min.js +1 -1
  292. package/dist/x/pluck.mjs +1 -1
  293. package/dist/x/prepend.es.js +1 -1
  294. package/dist/x/prepend.es.min.js +1 -1
  295. package/dist/x/prepend.js +1 -1
  296. package/dist/x/prepend.min.js +1 -1
  297. package/dist/x/prepend.mjs +1 -1
  298. package/dist/x/size.es.js +1 -1
  299. package/dist/x/size.es.min.js +1 -1
  300. package/dist/x/size.js +1 -1
  301. package/dist/x/size.min.js +1 -1
  302. package/dist/x/size.mjs +1 -1
  303. package/dist/x/trace.es.js +66 -17
  304. package/dist/x/trace.es.min.js +2 -2
  305. package/dist/x/trace.js +66 -17
  306. package/dist/x/trace.min.js +2 -2
  307. package/dist/x/trace.mjs +66 -17
  308. package/dist/x/unionWith.es.js +1 -1
  309. package/dist/x/unionWith.es.min.js +1 -1
  310. package/dist/x/unionWith.js +1 -1
  311. package/dist/x/unionWith.min.js +1 -1
  312. package/dist/x/unionWith.mjs +1 -1
  313. package/dist/x/uniq.es.js +1 -1
  314. package/dist/x/uniq.es.min.js +1 -1
  315. package/dist/x/uniq.js +1 -1
  316. package/dist/x/uniq.min.js +1 -1
  317. package/dist/x/uniq.mjs +1 -1
  318. package/dist/x/unless.es.js +1 -1
  319. package/dist/x/unless.es.min.js +1 -1
  320. package/dist/x/unless.js +1 -1
  321. package/dist/x/unless.min.js +1 -1
  322. package/dist/x/unless.mjs +1 -1
  323. package/dist/x/values.es.js +1 -1
  324. package/dist/x/values.es.min.js +1 -1
  325. package/dist/x/values.js +1 -1
  326. package/dist/x/values.min.js +1 -1
  327. package/dist/x/values.mjs +1 -1
  328. package/dist/x/when.es.js +1 -1
  329. package/dist/x/when.es.min.js +1 -1
  330. package/dist/x/when.js +1 -1
  331. package/dist/x/when.min.js +1 -1
  332. package/dist/x/when.mjs +1 -1
  333. package/es.js +64 -46
  334. package/index.js +64 -46
  335. package/package.json +1 -1
  336. package/tap.js +66 -28
package/dist/rubico.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -152,32 +152,67 @@ const curryArgs2 = function (baseFunc, arg0, arg1) {
152
152
  return curryArgs2ResolveArgs1(baseFunc, arg0)
153
153
  }
154
154
 
155
- // _tap(args Array, func function) -> Promise|any
156
- const _tap = function (args, func) {
155
+ // argument resolver for curryArgs3
156
+ const curryArgs3ResolveArgs0 = (
157
+ baseFunc, arg1, arg2,
158
+ ) => function args0Resolver(...args) {
159
+ return baseFunc(args, arg1, arg2)
160
+ }
161
+
162
+ // argument resolver for curryArgs3
163
+ const curryArgs3ResolveArgs1 = (
164
+ baseFunc, arg0, arg2,
165
+ ) => function arg1Resolver(...args) {
166
+ return baseFunc(arg0, args, arg2)
167
+ }
168
+
169
+ // argument resolver for curryArgs3
170
+ const curryArgs3ResolveArgs2 = (
171
+ baseFunc, arg0, arg1,
172
+ ) => function arg2Resolver(...args) {
173
+ return baseFunc(arg0, arg1, args)
174
+ }
175
+
176
+ const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
177
+ if (arg0 == __) {
178
+ return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
179
+ }
180
+ if (arg1 == __) {
181
+ return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
182
+ }
183
+ return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
184
+ }
185
+
186
+ // _tap(args Array, f function) -> Promise|any
187
+ const _tap = function (args, f) {
157
188
  const result = args[0],
158
- call = func(...args)
189
+ call = f(...args)
159
190
  return isPromise(call) ? call.then(always(result)) : result
160
191
  }
161
192
 
162
193
  const tap = function (...args) {
163
- const func = args.pop()
194
+ const f = args.pop()
164
195
  if (args.length == 0) {
165
- return curryArgs2(_tap, __, func)
196
+ return curryArgs2(_tap, __, f)
166
197
  }
167
198
  if (areAnyValuesPromises(args)) {
168
- return promiseAll(args).then(curry2(_tap, __, func))
199
+ return promiseAll(args).then(curry2(_tap, __, f))
169
200
  }
170
- return _tap(args, func)
201
+ return _tap(args, f)
171
202
  }
172
203
 
173
- tap.if = (predicate, func) => function tappingIf(...args) {
174
- const predication = predicate(...args)
175
- if (isPromise(predication)) {
176
- return predication.then(curry3(
177
- thunkConditional, __, thunkifyArgs(tap(func), args), always(args[0])))
204
+ const _tapIf = function (predicate, f, args) {
205
+ const b = predicate(...args)
206
+ if (isPromise(b)) {
207
+ return b.then(curry3(
208
+ thunkConditional,
209
+ __,
210
+ thunkifyArgs(tap(f), args),
211
+ always(args[0]),
212
+ ))
178
213
  }
179
- if (predication) {
180
- const execution = func(...args)
214
+ if (b) {
215
+ const execution = f(...args)
181
216
  if (isPromise(execution)) {
182
217
  return execution.then(always(args[0]))
183
218
  }
@@ -185,6 +220,20 @@ tap.if = (predicate, func) => function tappingIf(...args) {
185
220
  return args[0]
186
221
  }
187
222
 
223
+ tap.if = function (...args) {
224
+ if (args.length == 2) {
225
+ return curryArgs3(_tapIf, args[0], args[1], __)
226
+ }
227
+ const argsLength = args.length
228
+ const f = args[argsLength - 1]
229
+ const predicate = args[argsLength - 2]
230
+ const argValues = args.slice(0, -2)
231
+ if (areAnyValuesPromises(argValues)) {
232
+ return promiseAll(argValues).then(curry3(_tapIf, predicate, f, __))
233
+ }
234
+ return _tapIf(predicate, f, args)
235
+ }
236
+
188
237
  const isArray = Array.isArray
189
238
 
190
239
  const functionArrayAll = function (funcs, args) {
@@ -451,37 +500,6 @@ const nonfunctionsConditional = function (array, index) {
451
500
  return array[index]
452
501
  }
453
502
 
454
- // argument resolver for curryArgs3
455
- const curryArgs3ResolveArgs0 = (
456
- baseFunc, arg1, arg2,
457
- ) => function args0Resolver(...args) {
458
- return baseFunc(args, arg1, arg2)
459
- }
460
-
461
- // argument resolver for curryArgs3
462
- const curryArgs3ResolveArgs1 = (
463
- baseFunc, arg0, arg2,
464
- ) => function arg1Resolver(...args) {
465
- return baseFunc(arg0, args, arg2)
466
- }
467
-
468
- // argument resolver for curryArgs3
469
- const curryArgs3ResolveArgs2 = (
470
- baseFunc, arg0, arg1,
471
- ) => function arg2Resolver(...args) {
472
- return baseFunc(arg0, arg1, args)
473
- }
474
-
475
- const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
476
- if (arg0 == __) {
477
- return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
478
- }
479
- if (arg1 == __) {
480
- return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
481
- }
482
- return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
483
- }
484
-
485
503
  const switchCase = (...args) => {
486
504
  const values = args.pop()
487
505
  if (areAllValuesNonfunctions(values)) {
@@ -1,8 +1,8 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
6
6
  */
7
7
 
8
- !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.rubico=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=function(t){const e=t.length;let o=-1;for(;++o<e;){const e=t[o];if(n(e))return!0}return!1},e=Promise.all.bind(Promise),o=(t,e)=>function(...o){const r=t(...o);return n(r)?r.then(e):e(r)},r=(n,t)=>n(...t),u=Symbol.for("placeholder"),c=function(n,t,e){return t==u?((n,t)=>function(e){return n(e,t)})(n,e):((n,t)=>function(e){return n(t,e)})(n,t)},f=n=>function(){return n},i=(n,t)=>function(){return n(...t)},s=(n,t,e)=>n?t():e(),l=function(n,t,e,o){return t==u?((n,t,e)=>function(o){return n(o,t,e)})(n,e,o):e==u?((n,t,e)=>function(o){return n(t,o,e)})(n,t,o):((n,t,e)=>function(o){return n(t,e,o)})(n,t,e)},h=function(n,t,e){return t==u?((n,t)=>function(...e){return n(e,t)})(n,e):((n,t)=>function(...e){return n(t,e)})(n,t)},a=function(t,e){const o=t[0],r=e(...t);return n(r)?r.then(f(o)):o},p=function(...n){const o=n.pop();return 0==n.length?h(a,u,o):t(n)?e(n).then(c(a,u,o)):a(n,o)};p.if=(t,e)=>function(...o){const r=t(...o);if(n(r))return r.then(l(s,u,i(p(e),o),f(o[0])));if(r){const t=e(...o);if(n(t))return t.then(f(o[0]))}return o[0]};const d=Array.isArray,y=function(t,o){const r=t.length,u=Array(r);let c=-1,f=!1;for(;++c<r;){const e=t[c](...o);n(e)&&(f=!0),u[c]=e}return f?e(u):u},g=function(n,t,e,o,r){return t==u?((n,t,e,o)=>function(r){return n(r,t,e,o)})(n,e,o,r):e==u?((n,t,e,o)=>function(r){return n(t,r,e,o)})(n,t,o,r):o==u?((n,t,e,o)=>function(r){return n(t,e,r,o)})(n,t,e,r):((n,t,e,o)=>function(r){return n(t,e,o,r)})(n,t,e,o)},w=function(n,t,e){return n[t]=e,n},v=async function(t,e,o,r){const u=t.length;for(;++r<u;){const u=t[r](...e);o[r]=n(u)?await u:u}return o},x=function(t,e){const r=t.length,c=[];let f=-1;for(;++f<r;){const r=t[f](...e);if(n(r))return r.then(o(l(w,c,f,u),g(v,t,e,u,f)));c[f]=r}return c},j=function(t,o){const r={},c=[];for(const e in t){const f=t[e](...o);n(f)?c.push(f.then(l(w,r,e,u))):r[e]=f}return 0==c.length?r:e(c).then(f(r))},b=function(...n){const o=n.pop();return 0==n.length?d(o)?h(y,o,u):h(j,o,u):t(n)?d(o)?e(n).then(c(y,o,u)):e(n).then(c(j,o,u)):d(o)?y(o,n):j(o,n)};b.series=function(...n){const o=n.pop();return 0==n.length?h(x,o,u):t(n)?e(n).then(c(x,o,u)):x(o,n)};const S=Object.assign,M=function(t,e){const o=j(e,[t]);return n(o)?o.then(l(S,{},t,u)):{...t,...o}},O=function(n,t,e){return n(t,...e)},m=function(t,e,o){try{const r=t(...o);return n(r)?r.catch(l(O,e,u,o)):r}catch(n){return e(n,...o)}},z=(n,t,e,o)=>function(){return n(t,e,o)},A=function(t,e,o){const r=t.length-1;for(;(o+=2)<r;){const r=t[o],c=t[o+1],h="function"==typeof r?r(...e):r;if(n(h))return h.then(l(s,u,"function"==typeof c?i(c,e):f(c),z(A,t,e,o)));if(h)return"function"==typeof c?c(...e):c}if(o==t.length)return;const c=t[r];return"function"==typeof c?c(...e):c},E=function(n){const t=n.length;let e=-1;for(;++e<t;)if("function"==typeof n[e])return!1;return!0},T=(n,t,e)=>function(){return n(t,e)},I=function(t,e){const o=t.length,r=o-1;for(;(e+=2)<r;){const o=t[e],r=t[e+1];if(n(o))return o.then(l(s,u,f(r),T(I,t,e)));if(o)return r}if(e!=o)return t[e]},D=Symbol.iterator,P=(n,t)=>({toString:()=>"[object MappingIterator]",[D](){return this},next(){const e=n.next();return e.done?e:{value:t(e.value),done:!1}}}),B=n=>({value:n,done:!1}),$=Symbol.asyncIterator,k=(t,e)=>({[$](){return this},async next(){const o=await t.next();if(o.done)return o;const r=e(o.value);return n(r)?r.then(B):{value:r,done:!1}}}),C=function(t,o){const r=t.length,u=Array(r);let c=-1,f=!1;for(;++c<r;){const e=o(t[c],c,t);n(e)&&(f=!0),u[c]=e}return f?e(u):u},_=(n,t,e)=>n[t](e),q=function(t,o){const r=new Set,c=[];for(const e of t){const f=o(e,e,t);n(f)?c.push(f.then(l(_,r,"add",u))):r.add(f)}return 0==c.length?r:e(c).then(f(r))},F=(n,t,e,o)=>n[t](e,o),R=t=>new Promise((t=>function(e){const o={};let r=0;for(const u in t){const c=t[u];n(c)?(r+=1,c.then((n=>function(t){o[n]=t,r-=1,0==r&&e(o)})(u))):o[u]=c}0==r&&e(o)})(t)),V=function(t,e){const o={};let r=!1;for(const u in t){const c=e(t[u],u,t);n(c)&&(r=!0),o[u]=c}return r?R(o):o},G=async function(t,e,o,r){const u=t.length;for(;++r<u;){const u=e(t[r],r);o[r]=n(u)?await u:u}return o},H=function(t,e){const r=t.length,c=Array(r);let f=-1;for(;++f<r;){const r=e(t[f],f);if(n(r))return r.then(o(l(w,c,f,u),g(G,t,e,u,f)));c[f]=r}return c},J=(n,t,e,o,r)=>function(){return n(t,e,o,r)},K=async function(t,e,o,r){for(const u in t){if(u in r)continue;let c=e(t[u]);n(c)&&(c=await c),o[u]=c}return o},L=function(n,t){return n.add(t),n},N=async function(t,e,o){let r=t.next();for(;!r.done;){let u=e(r.value);n(u)&&(u=await u),o.add(u),r=t.next()}return o},Q=function(n,t,e){return n.set(t,e)},U=async function(t,e,o){let r=t.next();for(;!r.done;){let u=e(r.value[1]);n(u)&&(u=await u),o.set(r.value[0],u),r=t.next()}return o},W=n=>function(...t){return n(...t),t[0]},X=Promise.race.bind(Promise),Y=async function(t,o,r,u,c,f){const i=t.length;for(;++c<i;){f.size>=r&&await X(f);const e=o(t[c]);if(n(e)){const n=e.then(W((()=>f.delete(n))));f.add(n),u[c]=n}else u[c]=e}return e(u)},Z=function(t,e,o){const r=t.length,u=Array(r);let c=-1;for(;++c<r;){const r=o(t[c]);if(n(r)){const n=new Set,f=r.then(W((()=>n.delete(f))));return n.add(f),u[c]=f,Y(t,o,e,u,c,n)}u[c]=r}return u},nn=async function(t,o,r,u,c,f){let i=o.next();for(;!i.done;){f.size>=r&&await X(f);const e=u(i.value,i.value,t);if(n(e)){const n=e.then((t=>{f.delete(n),c.add(t)}));f.add(n)}else c.add(e);i=o.next()}return f.size>0&&await e(f),c},tn=async function(t,o,r,u,c,f){let i=o.next();for(;!i.done;){f.size>=r&&await X(f);const e=i.value[0],s=u(i.value[1],e,t);if(n(s)){c.set(e,s);const n=s.then((t=>{f.delete(n),c.set(e,t)}));f.add(n)}else c.set(e,s);i=o.next()}return f.size>0&&await e(f),c},en=async function(t,o,r,u,c,f){for(const e in t){if(e in c)continue;f.size>=o&&await X(f);const i=r(t[e],e,t);if(n(i)){u[e]=i;const n=i.then((t=>{f.delete(n),u[e]=t}));f.add(n)}else u[e]=i}return f.size>0&&await e(f),u},on=(n,t,e)=>function(...o){const r=e.length,c=o.length,f=[];let i=-1,s=-1,l=0;for(;++i<r;){const r=e[i];if(r==u&&(s+=1)<c){const n=o[s];n==u&&(l+=1),f.push(n)}else f.push(r);if(f.length==n)return 0==l?t(...f):rn(n,t,f)}for(;++s<c;){const e=o[s];if(e==u&&(l+=1),f.push(e),f.length==n)return 0==l?t(...f):rn(n,t,f)}return rn(n,t,f)},rn=function(n,t,e){const o=e.length;if(o<n)return on(n,t,e);let r=-1;for(;++r<o;){if(e[r]==u)return on(n,t,e)}return t(...e)},un=n=>function([t,e]){return n(t,e)},cn=function(t,o){const r=new Map,u=[];return t.forEach(((t,e,o)=>function(r,u){const c=t([u,r]);n(c)?o.push(c.then(un(rn(3,Q,[e])))):e.set(c[0],c[1])})(o,r,u)),0==u.length?r:e(u).then(f(r))},fn=function(t,o){return d(t)?C(t,o):null==t?t:"function"==typeof t.then?t.then(o):"function"==typeof t.map?t.map(o):"string"==typeof t||t.constructor==String?function(t,e){const o=C(t,e);return n(o)?o.then(l(_,u,"join","")):o.join("")}(t,o):t.constructor==Set?q(t,o):t.constructor==Map?function(t,o){const r=new Map,c=[];for(const[e,f]of t){const i=o(f,e,t);n(i)?c.push(i.then(g(F,r,"set",e,u))):r.set(e,i)}return 0==c.length?r:e(c).then(f(r))}(t,o):"function"==typeof t[D]?P(t[D](),o):"function"==typeof t[$]?k(t[$](),o):t.constructor==Object?V(t,o):o(t)},sn=function(t,e){return null==e?c(fn,u,t):n(t)?t.then(c(fn,u,e)):fn(t,e)},ln=(t,o)=>{if(null==t)throw new TypeError("value is not an Object or Map");if(t.constructor==Object)return function(t,o){const r={},u=[];for(const e in t){const c=o([e,t[e]]);n(c)?u.push(c.then(un(rn(3,w,[r])))):r[c[0]]=c[1]}return 0==u.length?r:e(u).then(f(r))}(t,o);if(t.constructor==Map)return cn(t,o);throw new TypeError("value is not an Object or Map")};sn.entries=function(t,e){return null==e?c(ln,u,t):n(t)?t.then(c(ln,u,e)):ln(t,e)};const hn=function(t,e){if(d(t))return H(t,e);if(null==t)throw new TypeError(`invalid collection ${t}`);if("string"==typeof t||t.constructor==String)return function(t,e){const o=H(t,e);return n(o)?o.then(l(_,u,"join","")):o.join("")}(t,e);if(t.constructor==Set)return function(t,e){const r=new Set,f=t[D]();let i=f.next();for(;!i.done;){const t=e(i.value);if(n(t))return t.then(o(c(L,r,u),z(N,f,e,r)));r.add(t),i=f.next()}return r}(t,e);if(t.constructor==Map)return function(t,e){const r=new Map,c=t[D]();let f=c.next();for(;!f.done;){const t=f.value[0],i=e(f.value[1]);if(n(i))return i.then(o(l(Q,r,t,u),z(U,c,e,r)));r.set(t,i),f=c.next()}return r}(t,e);if(t.constructor==Object)return function(t,e){const r={},c={};for(const f in t){c[f]=!0;const i=e(t[f],f,t);if(n(i))return i.then(o(l(w,r,f,u),J(K,t,e,r,c)));r[f]=i}return r}(t,e);throw new TypeError(`invalid collection ${t}`)};sn.series=function(t,e){return null==e?c(hn,u,t):n(t)?t.then(c(hn,u,e)):hn(t,e)};const an=function(t,e,o){if(d(t))return Z(t,e,o);if(null==t)throw new TypeError(`invalid collection ${t}`);if("string"==typeof t||t.constructor==String)return function(t,e,o){const r=Z(t,e,o);return n(r)?r.then(l(_,u,"join","")):r.join("")}(t,e,o);if(t.constructor==Set)return function(t,e,o){const r=new Set,u=t[D]();let c=u.next();for(;!c.done;){const f=o(c.value,c.value,t);if(n(f)){const n=new Set,c=f.then((t=>{n.delete(c),r.add(t)}));return n.add(c),nn(t,u,e,o,r,n)}r.add(f),c=u.next()}return r}(t,e,o);if(t.constructor==Map)return function(t,e,o){const r=new Map,u=t[D]();let c=u.next();for(;!c.done;){const f=c.value[0],i=o(c.value[1],f,t);if(n(i)){const n=new Set;r.set(f,i);const c=i.then((t=>{n.delete(c),r.set(f,t)}));return n.add(c),tn(t,u,e,o,r,n)}r.set(f,i),c=u.next()}return r}(t,e,o);if(t.constructor==Object)return function(t,e,o){const r={},u={};for(const c in t){u[c]=!0;const f=o(t[c],c,t);if(n(f)){const n=new Set;r[c]=f;const i=f.then((t=>{n.delete(i),r[c]=t}));return n.add(i),en(t,e,o,r,u,n)}r[c]=f}return r}(t,e,o);throw new TypeError(`invalid collection ${t}`)};sn.pool=function(t,e,o){return null==o?l(an,u,t,e):n(t)?t.then(l(an,u,e,o)):an(t,e,o)};const pn=(n,t)=>({[D](){return this},next(){let e=n.next();for(;!e.done;){const{value:o}=e;if(t(o))return{value:o,done:!1};e=n.next()}return e}}),dn=(t,e)=>({isAsyncIteratorDone:!1,[$](){return this},async next(){for(;!this.isAsyncIteratorDone;){const{value:o,done:r}=await t.next();if(r)this.isAsyncIteratorDone=!0;else{const t=e(o);if(n(t)?await t:t)return{value:o,done:!1}}}return{value:void 0,done:!0}}}),yn=function(n,t,e,o){const r=t.length;let u=n.length-1;for(;++o<r;)n[++u]=e(t[o],o,n);return n},gn=function(n,t,e,o){const r=n.length;let u=-1;for(;++e<r;)o[++u]&&t.push(n[e]);return t},wn=function(t,o){const r=t.length,c=[];let f=-1,i=-1;for(;++f<r;){const r=t[f],s=o(r,f,t);if(n(s))return e(yn([s],t,o,f)).then(g(gn,t,c,f-1,u));s&&(c[++i]=r)}return c},vn=(n,t)=>function(){return n(t)},xn=function(){},jn=function(n,t,e,o){o&&(n[t]=e)},bn=function(t,o){return d(t)?wn(t,o):null==t?t:"string"==typeof t||t.constructor==String?function(t,e){const o=wn(t,e);return n(o)?o.then(l(_,u,"join","")):o.join("")}(t,o):t.constructor==Set?function(t,o){const r=new Set,c=r.add.bind(r),i=[];for(const e of t){const f=o(e,e,t);n(f)?i.push(f.then(l(s,u,vn(c,e),xn))):f&&r.add(e)}return 0==i.length?r:e(i).then(f(r))}(t,o):t.constructor==Map?function(t,o){const r=new Map,c=[];for(const[e,f]of t){const i=o(f,e,t);n(i)?c.push(i.then(l(s,u,J(F,r,"set",e,f),xn))):i&&r.set(e,f)}return 0==c.length?r:e(c).then(f(r))}(t,o):"function"==typeof t.filter?t.filter(o):"function"==typeof t[D]?pn(t[D](),o):"function"==typeof t[$]?dn(t[$](),o):t.constructor==Object?function(t,o){const r={},c=[];for(const e in t){const f=t[e],i=o(f,e,t);n(i)?c.push(i.then(g(jn,r,e,t[e],u))):i&&(r[e]=f)}return 0==c.length?r:e(c).then(f(r))}(t,o):t},Sn=Object.values,Mn=(Object.prototype.toString,async function(t,e,o){let r=t.next();if(r.done)return o;for(;!r.done;)o=e(o,r.value),n(o)&&(o=await o),r=t.next();return o}),On=async function(t,e,o,r){const u=t.length;for(;++r<u;)o=e(o,t[r],r,t),n(o)&&(o=await o);return o},mn=Object.keys,zn=async function(t,e,o,r,u){const c=r.length;for(;++u<c;){const c=r[u];o=e(o,t[c],c,t),n(o)&&(o=await o)}return o},An=async function(t,e,o,r){for(const[u,c]of r)o=e(o,c,u,t),n(o)&&(o=await o);return o},En=function(t,e,o){return d(t)?function(t,e,o){const r=t.length;let c=-1;for(void 0===o&&(o=t[++c]);++c<r;)if(o=e(o,t[c],c,t),n(o))return o.then(g(On,t,e,u,c));return o}(t,e,o):null==t?void 0===o?c(e,t,u):e(o,t):t.constructor==Map?function(t,e,o){const r=t.entries();if(void 0===o){const n=r.next();if(n.done)return o;o=n.value[1]}for(const[c,f]of r)if(o=e(o,f,c,t),n(o))return o.then(g(An,t,e,u,r));return o}(t,e,o):"function"==typeof t[D]?function(t,e,o){let r=t.next();if(r.done)return o;for(void 0===o&&(o=r.value,r=t.next());!r.done;){if(o=e(o,r.value),n(o))return o.then(l(Mn,t,e,u));r=t.next()}return o}(t[D](),e,o):"function"==typeof t[$]?async function(n,t,e){let o=await n.next();if(o.done)return e;for(void 0===e&&(e=o.value,o=await n.next());!o.done;)e=await t(e,o.value),o=await n.next();return e}(t[$](),e,o):"function"==typeof t.reduce?t.reduce(e,o):"function"==typeof t.chain?t.chain(c(e,o,u)):"function"==typeof t.flatMap?t.flatMap(c(e,o,u)):t.constructor==Object?function(t,e,o){const r=mn(t),c=r.length;let f=-1;for(void 0===o&&(o=t[r[++f]]);++f<c;){const c=r[f];if(o=e(o,t[c],c,t),n(o))return o.then((i=zn,l=e,h=u,a=r,p=f,(s=t)==u?((n,t,e,o,r)=>function(u){return n(u,t,e,o,r)})(i,l,h,a,p):l==u?((n,t,e,o,r)=>function(u){return n(t,u,e,o,r)})(i,s,h,a,p):h==u?((n,t,e,o,r)=>function(u){return n(t,e,u,o,r)})(i,s,l,a,p):a==u?((n,t,e,o,r)=>function(u){return n(t,e,o,u,r)})(i,s,l,h,p):((n,t,e,o,r)=>function(u){return n(t,e,o,r,u)})(i,s,l,h,a)))}var i,s,l,h,a,p;return o}(t,e,o):void 0===o?c(e,t,u):e(o,t)},Tn=function(t,e,o){if("function"==typeof o){const r=o(t);return n(r)?r.then(l(En,t,e,u)):En(t,e,r)}return n(o)?o.then(l(En,t,e,u)):En(t,e,o)},In=ArrayBuffer.isView,Dn=function(n,t){return d(t)||In(t)?function(n,t){const e=n.length,o=t.length;let r=-1;for(;++r<o;)n[e+r]=t[r];return n}(n,t):(n.push(t),n)},Pn="function"==typeof Buffer,Bn=Pn?Buffer.alloc:xn,$n=function(n,t){const e=n.length,o=Pn&&n.constructor==Buffer?Bn(e+t.length):new n.constructor(e+t.length);return o.set(n),o.set(t,e),o},kn=function(n,t){return d(t)||In(t)?$n(n,t):$n(n,[t])},Cn=(n,t)=>new Promise(((n,t)=>function(e,o){t.on("data",(n=>function(t,e,o){return n.write(t,e,o),n})(n)),t.on("end",vn(e,n)),t.on("error",o)})(n,t)),_n=function(n,t){return null!=(e=t)&&"function"==typeof e.pipe?Cn(n,t):(n.write(t),n);var e},qn=function(n,t){if(null!=t&&t.constructor==Set){for(const e of t)n.add(e);return n}return n.add(t)},Fn=function(n,t){return n.concat(t)},Rn=function(t,e,o){const r=En(t,e(xn),null);return n(r)?r.then(f(o)):o},Vn=function(t,e,o){if(d(o))return En(t,e(Dn),o);if(In(o)){const r=En(t,e(Dn),[]);return n(r)?r.then(c(kn,o,u)):kn(o,r)}if(null==o)return Rn(t,e,o);const r=o.constructor;if("string"==typeof o||r==String){const r=En(t,e(Dn),[o]);return n(r)?r.then(l(_,u,"join","")):r.join("")}return"function"==typeof o.concat?En(t,e(Fn),o):"function"==typeof o.write?En(t,e(_n),o):r==Set?En(t,e(qn),o):r==Object?En(t,e(S),o):Rn(t,e,o)},Gn=function(t,e,o){if("function"==typeof o){const r=o(t);return n(r)?r.then(l(Vn,t,e,u)):Vn(t,e,r)}return n(o)?o.then(l(Vn,t,e,u)):Vn(t,e,o)},Hn=function(n,t){return n.push(t),n},Jn=n=>new Promise((t=>{setTimeout(t,n)})),Kn=(n,t)=>t,Ln=n=>n,Nn=(n,t)=>function(...e){return t(n(...e))},Qn=async function(t,o){const r=[];for await(const e of t){const t=o(e);n(t)&&r.push(t)}return 0==r.length?t:e(r).then(f(t))},Un=function(t){const o=t.length,r=[],i=[];let s=-1;for(;++s<o;){const e=t[s];if(d(e)){const n=e.length;let t=-1;for(;++t<n;)i.push(e[t])}else if(null==e)i.push(e);else if("function"==typeof e.then)r.push(e.then(c(Hn,i,u)));else if("function"==typeof e[D])for(const n of e)i.push(n);else if("function"==typeof e[$])r.push(Qn(e[$](),c(Hn,i,u)));else if("function"==typeof e.chain){const t=e.chain(Ln);n(t)?r.push(t.then(c(Hn,i,u))):i.push(t)}else if("function"==typeof e.flatMap){const t=e.flatMap(Ln);n(t)?r.push(t.then(c(Hn,i,u))):i.push(t)}else if("function"==typeof e.reduce){const t=e.reduce(Nn(Kn,c(Hn,i,u)),null);n(t)&&r.push(t)}else if(e.constructor==Object)for(const n in e)i.push(e[n]);else i.push(e)}return 0==r.length?i:e(r).then(f(i))},Wn=function(t){const o=[],r={},f=c(S,r,u),i=Nn(Kn,f);for(const e in t){const u=t[e];if(null!=u)if("function"==typeof u[D])for(const n of u)S(r,n);else if("function"==typeof u[$])o.push(Qn(u[$](),f));else if("function"==typeof u.chain){const t=u.chain(Ln);n(t)?o.push(t.then(f)):S(r,t)}else if("function"==typeof u.flatMap){const t=u.flatMap(Ln);n(t)?o.push(t.then(f)):f(t)}else if("function"==typeof u.reduce){const t=u.reduce(i,null);n(t)&&o.push(t)}else S(r,u)}return 0==o.length?r:e(o).then((()=>r))},Xn=function(t){t.size;const o=[],r=new Set,c=(n,t)=>r.add(t),f=l(_,r,"add",u);for(const e of t)if(d(e)){const n=e.length;let t=-1;for(;++t<n;)r.add(e[t])}else if(null==e)r.add(e);else if("function"==typeof e[D])for(const n of e)r.add(n);else if("function"==typeof e[$])o.push(Qn(e[$](),f));else if("function"==typeof e.chain){const t=e.chain(Ln);n(t)?o.push(t.then(f)):r.add(t)}else if("function"==typeof e.flatMap){const t=e.flatMap(Ln);n(t)?o.push(t.then(f)):r.add(t)}else if("function"==typeof e.reduce){const t=e.reduce(c,null);n(t)&&o.push(t)}else if(e.constructor==Object)for(const n in e)r.add(e[n]);else r.add(e);return 0==o.length?r:e(o).then((()=>r))},Yn=o(Un,c(((n,t)=>n.join(t)),u,"")),Zn=function(t,e){if(d(t))return function(t,e){const o=C(t,e);return n(o)?o.then(Un):Un(o)}(t,e);if(null==t)return e(t);if("function"==typeof t.then)return t.then(e);if("function"==typeof t.next)return D in t?function(n,t){let e=[],o=0;return{[D](){return this},next(){if(o<e.length){const n=e[o];return o+=1,{value:n,done:!1}}const r=n.next();if(r.done)return r;const u=En(t(r.value),Hn,[]);return u.length>1&&(e=u,o=1),{value:u[0],done:!1}}}}(t,e):function(t,e){const o=[],r=new Set;return{isAsyncIteratorDone:!1,[$](){return this},toString:()=>"[object FlatMappingAsyncIterator]",async next(){for(;!this.isAsyncIteratorDone||o.length>0||r.size>0;){if(!this.isAsyncIteratorDone){const{value:c,done:f}=await t.next();if(f)this.isAsyncIteratorDone=f;else{const t=e(c);if(n(t)){const n=t.then(l(En,u,Hn,o)).then((()=>r.delete(n)));r.add(n)}else{const e=En(t,Hn,o);if(n(e)){const n=e.then((()=>r.delete(n)));r.add(n)}}}}if(o.length>0)return{value:o.shift(),done:!1};r.size>0&&await X([Jn(1e3),...r])}return{value:void 0,done:!0}}}}(t,e);if("function"==typeof t.chain)return t.chain(e);if("function"==typeof t.flatMap)return t.flatMap(e);const o=t.constructor;return o==Object?function(t,e){const o=V(t,e);return n(o)?o.then(Wn):Wn(o)}(t,e):o==Set?function(t,e){const o=q(t,e);return n(o)?o.then(Xn):Xn(o)}(t,e):"string"==typeof t||o==String?function(t,e){const o=C(t,e);return n(o)?o.then(Yn):Yn(o)}(t,e):e(t)},nt=async function(t,e,o){const r=t.length;for(;++o<r;){const r=e(t[o]);n(r)&&await r}return t},tt=async function(t,e,o){for(const r in t){if(r in o)continue;const u=e(t[r]);n(u)&&await u}return t},et=async function(t,e){let o=t.next();for(;!o.done;){const r=e(o.value);n(r)&&await r,o=t.next()}return t},ot=function(t,o){return d(t)?function(t,o){const r=t.length,u=[];let c=-1;for(;++c<r;){const e=o(t[c]);n(e)&&u.push(e)}return 0==u.length?t:e(u).then(f(t))}(t,o):null==t?t:"function"==typeof t.forEach?(t.forEach(o),t):"function"==typeof t[D]?function(t,o){const r=[];for(const e of t){const t=o(e);n(t)&&r.push(t)}return 0==r.length?t:e(r).then(f(t))}(t[D](),o):"function"==typeof t[$]?Qn(t[$](),o):t.constructor==Object?function(t,o){const r=[];for(const e in t){const u=o(t[e]);n(u)&&r.push(u)}return 0==r.length?t:e(r).then(f(t))}(t,o):t},rt=function(t,e){return"function"==typeof t?c(ot,u,t):n(t)?t.then(c(ot,u,e)):ot(t,e)},ut=function(t,e){if(d(t))return function(t,e){const o=t.length;let r=-1;for(;++r<o;){const o=e(t[r]);if(n(o))return o.then(z(nt,t,e,r))}return t}(t,e);if(null==t)throw new TypeError(`invalid collection ${t}`);if("function"==typeof t[D])return function(t,e){let o=t.next();for(;!t.done;){const r=e(o.value);if(n(r))return r.then(T(et,t,e));o=t.next()}return t}(t[D](),e);if("function"==typeof t[$])return async function(t,e){for await(const o of t){const t=e(o);n(t)&&await t}return t}(t[$](),e);if(t.constructor==Object)return function(t,e){const o={};for(const r in t){o[r]=!0;const u=e(t[r]);if(n(u))return u.then(z(tt,t,e,o))}return t}(t,e);throw new TypeError(`invalid collection ${t}`)};rt.series=function(t,e){return"function"==typeof t?c(ut,u,t):n(t)?t.then(c(ut,u,e)):ut(t,e)};const ct=function(n){const t=n.then((n=>[n,t]));return t},ft=async function(t,e,o,r){const u=t.length;for(;++o<u;){const u=e(t[o]);if(n(u))r.add(ct(u));else if(u)return!0}for(;r.size>0;){const[n,t]=await X(r);if(r.delete(t),n)return!0}return!1},it=function(t,e){const o=t.length;let r=-1;for(;++r<o;){const o=e(t[r]);if(n(o))return ft(t,e,r,new Set([ct(o)]));if(o)return!0}return!1},st=async function(t,e,o,r=20){let u=t.next();for(n(u)&&(u=await u);!u.done;){if(o.size>=r){const[n,t]=await X(o);if(o.delete(t),n)return!0}const c=e(u.value);if(n(c))o.add(ct(c));else if(c)return!0;u=t.next(),n(u)&&(u=await u)}for(;o.size>0;){const[n,t]=await X(o);if(o.delete(t),n)return!0}return!1},lt=function(t,e){return d(t)?it(t,e):null==t?e(t):"function"==typeof t[D]?function(t,e){for(const o of t){const r=e(o);if(n(r))return st(t,e,new Set([ct(r)]));if(r)return!0}return!1}(t[D](),e):"function"==typeof t[$]?st(t[$](),e,new Set):"function"==typeof t.reduce?t.reduce((t=>function(e,o){return!0===e?e:n(e)?e.then(c((n=>function(t,e){return!!t||n(e)})(t),u,o)):!!e||t(o)})(e),!1):t.constructor==Object?it(Sn(t),e):e(t)},ht=function(t,o){const r=t.length,c=[];let f=-1;for(;++f<r;){const e=o(t[f]);if(n(e))c.push(e);else if(!e)return!1}return 0==c.length||e(c).then(l(_,u,"every",Boolean))},at=(n,t,e)=>!!t&&n(e),pt=function(t,o){return d(t)?ht(t,o):null==t?o(t):"function"==typeof t[D]?function(t,o){const r=[];for(const e of t){const t=o(e);if(n(t))r.push(t);else if(!t)return!1}return 0==r.length||e(r).then(l(_,u,"every",Boolean))}(t[D](),o):"function"==typeof t[$]?async function(t,e,o,r=20){let u=await t.next();for(;!u.done;){if(o.size>=r){const[n,t]=await X(o);if(o.delete(t),!n)return!1}const c=e(u.value);if(n(c))o.add(ct(c));else if(!c)return!1;u=await t.next()}for(;o.size>0;){const[n,t]=await X(o);if(o.delete(t),!n)return!1}return!0}(t[$](),o,new Set):"function"==typeof t.reduce?t.reduce((t=>function(e,o){return!1!==e&&(n(e)?e.then(l(at,t,u,o)):!!e&&t(o))})(o),!0):t.constructor==Object?ht(Sn(t),o):o(t)},dt=function(t,e){const o=t.length;for(;++e<o;){const o=t[e];if(n(o))return o.then(l(s,u,T(dt,t,e),f(!1)));if(!o)return!1}return!0},yt=async function(t,e,o){const r=e.length;for(;++o<r;){let r=e[o];if("function"==typeof r&&(r=r(...t)),n(r)&&(r=await r),!r)return!1}return!0},gt=function(t,e){const o=e.length;let r=-1;for(;++r<o;){let o=e[r];if("function"==typeof o&&(o=o(...t)),n(o))return o.then(l(s,u,z(yt,t,e,r),f(!1)));if(!o)return!1}return!0},wt=function(t,e){const o=t.length;for(;++e<o;){const o=t[e];if(n(o))return o.then(l(s,u,f(!0),T(wt,t,e)));if(o)return!0}return!1},vt=async function(t,e,o){const r=e.length;for(;++o<r;){let r=e[o];if("function"==typeof r&&(r=r(...t)),n(r)&&(r=await r),r)return!0}return!1},xt=function(t,e){const o=e.length;let r=-1;for(;++r<o;){let o=e[r];if("function"==typeof o&&(o=o(...t)),n(o))return o.then(l(s,u,f(!0),z(vt,t,e,r)));if(o)return!0}return!1},jt=n=>!n,bt=function(t,e){const o=e(...t);return n(o)?o.then(jt):!o},St=function(n,t,e,o,r){return t==u?((n,t,e,o)=>function(...r){return n(r,t,e,o)})(n,e,o,r):e==u?((n,t,e,o)=>function(...r){return n(t,r,e,o)})(n,t,o,r):o==u?((n,t,e,o)=>function(...r){return n(t,e,r,o)})(n,t,e,r):((n,t,e,o)=>function(...r){return n(t,e,o,r)})(n,t,e,o)},Mt=function(t,o,r,u){const c=r(...t),f=u(...t);return n(c)||n(f)?e([c,f]).then(un(o)):o(c,f)},Ot=function(t,o,r,u){const c=r(...t);return n(c)||n(u)?e([c,u]).then(un(o)):o(c,u)},mt=function(t,o,r,u){const c=u(...t);return n(r)||n(c)?e([r,c]).then(un(o)):o(r,c)},zt=o=>function(...r){const c=r.pop(),f=r.pop(),i="function"==typeof f,s="function"==typeof c;return i&&s?0==r.length?St(Mt,u,o,f,c):t(r)?e(r).then(g(Mt,u,o,f,c)):Mt(r,o,f,c):i?0==r.length?St(Ot,u,o,f,c):t(r)?e(r).then(g(Ot,u,o,f,c)):Ot(r,o,f,c):s?0==r.length?St(mt,u,o,f,c):t(r)?e(r).then(g(mt,u,o,f,c)):mt(r,o,f,c):n(f)||n(c)?e([f,c]).then(un(o)):o(f,c)},At=zt((function(n,t){return n==t})),Et=zt(((n,t)=>n>t)),Tt=zt(((n,t)=>n<t)),It=zt(((n,t)=>n>=t)),Dt=zt(((n,t)=>n<=t)),Pt=/[.|[|\]]+/,Bt=function(n,t){const e=new Map,o=function(o){if(e.has(o))return e.get(o);const r=n(o);return e.set(o,r),e.size>t&&e.clear(),r};return o.cache=e,o}((function(n){const t=n.length-1,e="["==n[0],o="]"==n[t];return e&&o?n.slice(1,t).split(Pt):e?n.slice(1).split(Pt):o?n.slice(0,t).split(Pt):n.split(Pt)}),500),$t=n=>d(n)?n:"string"==typeof n?Bt(n):[n],kt=function(n,t){const e=$t(t),o=e.length;let r=-1,u=n;for(;++r<o;)if(u=u[e[r]],null==u)return;return u},Ct=function(n,t,e){const o=null==n?void 0:kt(n,t);return void 0===o?"function"==typeof e?e(n):e:o},_t=function(n,t,e){if(!(n=>{if(null==n)return!1;const t=typeof n;return"object"==t||"function"==t})(n))return n;const o=$t(e),r=o.length,u=r-1,c={...n};let f=c,i=-1;for(;++i<r;){const n=o[i];if(i==u)f[n]=t;else{const t=f[n],e=d(t)?t.slice():{...t};f[n]=e,f=e}}return c},qt=function(t,e,o){if("function"==typeof o){const r=o(t);return n(r)?r.then(l(_t,t,u,e)):_t(t,r,e)}return n(o)?o.then(l(_t,t,u,e)):_t(t,o,e)},Ft=function(n,t){if(null==n)return n;const e=t.length;let o={},r=-1;for(;++r<e;){const e=t[r],u=kt(n,e);null!=u&&(o=_t(o,u,e))}return o},Rt=function(n,t){if(null==n)return;const e=$t(t),o=e.length-1;let r=-1,u=n;for(;++r<o;)if(u=u[e[r]],null==u)return;const c=e[r];null!=u&&c in u&&delete u[c]},Vt=function(n){const t={};for(const e in n){const o=n[e];d(o)?t[e]=Gt(o):null!=o&&o.constructor==Object?t[e]=Vt(o):t[e]=o}return t},Gt=function(n){const t=n.length,e=[];let o=-1;for(;++o<t;){const t=n[o];d(t)?e[o]=Gt(t):null!=t&&t.constructor==Object?e[o]=Vt(t):e[o]=t}return e},Ht=function(n,t){const e=t.length,o=d(r=n)?Gt(r):null==r?r:r.constructor==Object?Vt(r):r;var r;let u=-1;for(;++u<e;)Rt(o,t[u]);return o},Jt=(n,...t)=>rn(n.length,n,t);Jt.arity=function(n,t,...e){return rn(n,t,e)};return{pipe:function(...n){const f=n.pop().reduce(o);return 0==n.length?f:t(n)?e(n).then(c(r,f,u)):f(...n)},compose:function(...n){const f=n.pop().reduceRight(o);return 0==n.length?f:t(n)?e(n).then(c(r,f,u)):f(...n)},tap:p,forEach:rt,switchCase:(...n)=>{const o=n.pop();return E(o)?I(o,-2):0==n.length?(r=A,f=u,i=-2,(c=o)==u?((n,t,e)=>function(...o){return n(o,t,e)})(r,f,i):f==u?((n,t,e)=>function(...o){return n(t,o,e)})(r,c,i):((n,t,e)=>function(...o){return n(t,e,o)})(r,c,f)):t(n)?e(n).then(l(A,o,u,-2)):A(o,n,-2);var r,c,f,i},tryCatch:function(...n){if(n.length>2){const o=n.pop(),r=n.pop();return t(n)?e(n).then(l(m,r,o,u)):m(r,o,n)}const o=n[0],r=n[1];return function(...n){return m(o,r,n)}},all:b,assign:function(t,e){return null==e?c(M,u,t):n(t)?t.then(c(M,u,e)):M(t,e)},get:function(t,e,o){return"string"==typeof t||"number"==typeof t||d(t)?l(Ct,u,t,e):n(t)?t.then(l(Ct,u,e,o)):Ct(t,e,o)},set:function(t,e,o){return null==o?l(qt,u,t,e):n(t)?t.then(l(qt,u,e,o)):qt(t,e,o)},pick:function(t,e){return null==e?c(Ft,u,t):n(t)?t.then(c(Ft,u,e)):Ft(t,e)},omit:function(t,e){return null==e?c(Ht,u,t):n(t)?t.then(c(Ht,u,e)):Ht(t,e)},map:sn,filter:function(n,t){return"function"==typeof n?c(bn,u,n):bn(n,t)},flatMap:(t,e)=>"function"==typeof t?c(Zn,u,t):n(t)?t.then(c(Zn,u,e)):Zn(t,e),reduce:function(...t){return"function"==typeof t[0]?l(Tn,u,t[0],t[1]):n(t[0])?t[0].then(l(Tn,u,t[1],t[2])):Tn(t[0],t[1],t[2])},transform:function(...t){return"function"==typeof t[0]?l(Gn,u,t[0],t[1]):n(t[0])?t[0].then(l(Gn,u,t[1],t[2])):Gn(t[0],t[1],t[2])},and:function(...n){const o=n.pop();return E(o)?dt(o,-1):0==n.length?h(gt,u,o):t(n)?e(n).then(c(gt,u,o)):gt(n,o)},or:function(...n){const o=n.pop();return E(o)?wt(o,-1):0==n.length?h(xt,u,o):t(n)?e(n).then(c(xt,u,o)):xt(n,o)},not:function(...n){const o=n.pop();return"function"==typeof o?0==n.length?h(bt,u,o):t(n)?e(n).then(c(bt,u,o)):bt(n,o):!o},some:function(t,e){return"function"==typeof t?c(lt,u,t):n(t)?t.then(c(lt,u,e)):lt(t,e)},every:function(t,e){return"function"==typeof t?c(pt,u,t):n(t)?t.then(c(pt,u,e)):pt(t,e)},eq:At,gt:Et,lt:Tt,gte:It,lte:Dt,thunkify:(n,...o)=>function(){return t(o)?e(o).then(c(r,n,u)):n(...o)},always:f,curry:Jt,__:u}}());
8
+ !function(n,t){"object"==typeof module?module.exports=t:"function"==typeof define?define((()=>t)):n.rubico=t}("object"==typeof globalThis?globalThis:this,function(){"use strict";const n=n=>null!=n&&"function"==typeof n.then,t=function(t){const e=t.length;let o=-1;for(;++o<e;){const e=t[o];if(n(e))return!0}return!1},e=Promise.all.bind(Promise),o=(t,e)=>function(...o){const r=t(...o);return n(r)?r.then(e):e(r)},r=(n,t)=>n(...t),u=Symbol.for("placeholder"),c=function(n,t,e){return t==u?((n,t)=>function(e){return n(e,t)})(n,e):((n,t)=>function(e){return n(t,e)})(n,t)},f=n=>function(){return n},i=(n,t)=>function(){return n(...t)},s=(n,t,e)=>n?t():e(),l=function(n,t,e,o){return t==u?((n,t,e)=>function(o){return n(o,t,e)})(n,e,o):e==u?((n,t,e)=>function(o){return n(t,o,e)})(n,t,o):((n,t,e)=>function(o){return n(t,e,o)})(n,t,e)},h=function(n,t,e){return t==u?((n,t)=>function(...e){return n(e,t)})(n,e):((n,t)=>function(...e){return n(t,e)})(n,t)},a=function(n,t,e,o){return t==u?((n,t,e)=>function(...o){return n(o,t,e)})(n,e,o):e==u?((n,t,e)=>function(...o){return n(t,o,e)})(n,t,o):((n,t,e)=>function(...o){return n(t,e,o)})(n,t,e)},p=function(t,e){const o=t[0],r=e(...t);return n(r)?r.then(f(o)):o},d=function(...n){const o=n.pop();return 0==n.length?h(p,u,o):t(n)?e(n).then(c(p,u,o)):p(n,o)},y=function(t,e,o){const r=t(...o);if(n(r))return r.then(l(s,u,i(d(e),o),f(o[0])));if(r){const t=e(...o);if(n(t))return t.then(f(o[0]))}return o[0]};d.if=function(...n){if(2==n.length)return a(y,n[0],n[1],u);const o=n.length,r=n[o-1],c=n[o-2],f=n.slice(0,-2);return t(f)?e(f).then(l(y,c,r,u)):y(c,r,n)};const g=Array.isArray,w=function(t,o){const r=t.length,u=Array(r);let c=-1,f=!1;for(;++c<r;){const e=t[c](...o);n(e)&&(f=!0),u[c]=e}return f?e(u):u},v=function(n,t,e,o,r){return t==u?((n,t,e,o)=>function(r){return n(r,t,e,o)})(n,e,o,r):e==u?((n,t,e,o)=>function(r){return n(t,r,e,o)})(n,t,o,r):o==u?((n,t,e,o)=>function(r){return n(t,e,r,o)})(n,t,e,r):((n,t,e,o)=>function(r){return n(t,e,o,r)})(n,t,e,o)},x=function(n,t,e){return n[t]=e,n},j=async function(t,e,o,r){const u=t.length;for(;++r<u;){const u=t[r](...e);o[r]=n(u)?await u:u}return o},b=function(t,e){const r=t.length,c=[];let f=-1;for(;++f<r;){const r=t[f](...e);if(n(r))return r.then(o(l(x,c,f,u),v(j,t,e,u,f)));c[f]=r}return c},S=function(t,o){const r={},c=[];for(const e in t){const f=t[e](...o);n(f)?c.push(f.then(l(x,r,e,u))):r[e]=f}return 0==c.length?r:e(c).then(f(r))},M=function(...n){const o=n.pop();return 0==n.length?g(o)?h(w,o,u):h(S,o,u):t(n)?g(o)?e(n).then(c(w,o,u)):e(n).then(c(S,o,u)):g(o)?w(o,n):S(o,n)};M.series=function(...n){const o=n.pop();return 0==n.length?h(b,o,u):t(n)?e(n).then(c(b,o,u)):b(o,n)};const O=Object.assign,m=function(t,e){const o=S(e,[t]);return n(o)?o.then(l(O,{},t,u)):{...t,...o}},z=function(n,t,e){return n(t,...e)},A=function(t,e,o){try{const r=t(...o);return n(r)?r.catch(l(z,e,u,o)):r}catch(n){return e(n,...o)}},E=(n,t,e,o)=>function(){return n(t,e,o)},T=function(t,e,o){const r=t.length-1;for(;(o+=2)<r;){const r=t[o],c=t[o+1],h="function"==typeof r?r(...e):r;if(n(h))return h.then(l(s,u,"function"==typeof c?i(c,e):f(c),E(T,t,e,o)));if(h)return"function"==typeof c?c(...e):c}if(o==t.length)return;const c=t[r];return"function"==typeof c?c(...e):c},I=function(n){const t=n.length;let e=-1;for(;++e<t;)if("function"==typeof n[e])return!1;return!0},D=(n,t,e)=>function(){return n(t,e)},P=function(t,e){const o=t.length,r=o-1;for(;(e+=2)<r;){const o=t[e],r=t[e+1];if(n(o))return o.then(l(s,u,f(r),D(P,t,e)));if(o)return r}if(e!=o)return t[e]},B=Symbol.iterator,$=(n,t)=>({toString:()=>"[object MappingIterator]",[B](){return this},next(){const e=n.next();return e.done?e:{value:t(e.value),done:!1}}}),k=n=>({value:n,done:!1}),C=Symbol.asyncIterator,_=(t,e)=>({[C](){return this},async next(){const o=await t.next();if(o.done)return o;const r=e(o.value);return n(r)?r.then(k):{value:r,done:!1}}}),q=function(t,o){const r=t.length,u=Array(r);let c=-1,f=!1;for(;++c<r;){const e=o(t[c],c,t);n(e)&&(f=!0),u[c]=e}return f?e(u):u},F=(n,t,e)=>n[t](e),R=function(t,o){const r=new Set,c=[];for(const e of t){const f=o(e,e,t);n(f)?c.push(f.then(l(F,r,"add",u))):r.add(f)}return 0==c.length?r:e(c).then(f(r))},V=(n,t,e,o)=>n[t](e,o),G=t=>new Promise((t=>function(e){const o={};let r=0;for(const u in t){const c=t[u];n(c)?(r+=1,c.then((n=>function(t){o[n]=t,r-=1,0==r&&e(o)})(u))):o[u]=c}0==r&&e(o)})(t)),H=function(t,e){const o={};let r=!1;for(const u in t){const c=e(t[u],u,t);n(c)&&(r=!0),o[u]=c}return r?G(o):o},J=async function(t,e,o,r){const u=t.length;for(;++r<u;){const u=e(t[r],r);o[r]=n(u)?await u:u}return o},K=function(t,e){const r=t.length,c=Array(r);let f=-1;for(;++f<r;){const r=e(t[f],f);if(n(r))return r.then(o(l(x,c,f,u),v(J,t,e,u,f)));c[f]=r}return c},L=(n,t,e,o,r)=>function(){return n(t,e,o,r)},N=async function(t,e,o,r){for(const u in t){if(u in r)continue;let c=e(t[u]);n(c)&&(c=await c),o[u]=c}return o},Q=function(n,t){return n.add(t),n},U=async function(t,e,o){let r=t.next();for(;!r.done;){let u=e(r.value);n(u)&&(u=await u),o.add(u),r=t.next()}return o},W=function(n,t,e){return n.set(t,e)},X=async function(t,e,o){let r=t.next();for(;!r.done;){let u=e(r.value[1]);n(u)&&(u=await u),o.set(r.value[0],u),r=t.next()}return o},Y=n=>function(...t){return n(...t),t[0]},Z=Promise.race.bind(Promise),nn=async function(t,o,r,u,c,f){const i=t.length;for(;++c<i;){f.size>=r&&await Z(f);const e=o(t[c]);if(n(e)){const n=e.then(Y((()=>f.delete(n))));f.add(n),u[c]=n}else u[c]=e}return e(u)},tn=function(t,e,o){const r=t.length,u=Array(r);let c=-1;for(;++c<r;){const r=o(t[c]);if(n(r)){const n=new Set,f=r.then(Y((()=>n.delete(f))));return n.add(f),u[c]=f,nn(t,o,e,u,c,n)}u[c]=r}return u},en=async function(t,o,r,u,c,f){let i=o.next();for(;!i.done;){f.size>=r&&await Z(f);const e=u(i.value,i.value,t);if(n(e)){const n=e.then((t=>{f.delete(n),c.add(t)}));f.add(n)}else c.add(e);i=o.next()}return f.size>0&&await e(f),c},on=async function(t,o,r,u,c,f){let i=o.next();for(;!i.done;){f.size>=r&&await Z(f);const e=i.value[0],s=u(i.value[1],e,t);if(n(s)){c.set(e,s);const n=s.then((t=>{f.delete(n),c.set(e,t)}));f.add(n)}else c.set(e,s);i=o.next()}return f.size>0&&await e(f),c},rn=async function(t,o,r,u,c,f){for(const e in t){if(e in c)continue;f.size>=o&&await Z(f);const i=r(t[e],e,t);if(n(i)){u[e]=i;const n=i.then((t=>{f.delete(n),u[e]=t}));f.add(n)}else u[e]=i}return f.size>0&&await e(f),u},un=(n,t,e)=>function(...o){const r=e.length,c=o.length,f=[];let i=-1,s=-1,l=0;for(;++i<r;){const r=e[i];if(r==u&&(s+=1)<c){const n=o[s];n==u&&(l+=1),f.push(n)}else f.push(r);if(f.length==n)return 0==l?t(...f):cn(n,t,f)}for(;++s<c;){const e=o[s];if(e==u&&(l+=1),f.push(e),f.length==n)return 0==l?t(...f):cn(n,t,f)}return cn(n,t,f)},cn=function(n,t,e){const o=e.length;if(o<n)return un(n,t,e);let r=-1;for(;++r<o;){if(e[r]==u)return un(n,t,e)}return t(...e)},fn=n=>function([t,e]){return n(t,e)},sn=function(t,o){const r=new Map,u=[];return t.forEach(((t,e,o)=>function(r,u){const c=t([u,r]);n(c)?o.push(c.then(fn(cn(3,W,[e])))):e.set(c[0],c[1])})(o,r,u)),0==u.length?r:e(u).then(f(r))},ln=function(t,o){return g(t)?q(t,o):null==t?t:"function"==typeof t.then?t.then(o):"function"==typeof t.map?t.map(o):"string"==typeof t||t.constructor==String?function(t,e){const o=q(t,e);return n(o)?o.then(l(F,u,"join","")):o.join("")}(t,o):t.constructor==Set?R(t,o):t.constructor==Map?function(t,o){const r=new Map,c=[];for(const[e,f]of t){const i=o(f,e,t);n(i)?c.push(i.then(v(V,r,"set",e,u))):r.set(e,i)}return 0==c.length?r:e(c).then(f(r))}(t,o):"function"==typeof t[B]?$(t[B](),o):"function"==typeof t[C]?_(t[C](),o):t.constructor==Object?H(t,o):o(t)},hn=function(t,e){return null==e?c(ln,u,t):n(t)?t.then(c(ln,u,e)):ln(t,e)},an=(t,o)=>{if(null==t)throw new TypeError("value is not an Object or Map");if(t.constructor==Object)return function(t,o){const r={},u=[];for(const e in t){const c=o([e,t[e]]);n(c)?u.push(c.then(fn(cn(3,x,[r])))):r[c[0]]=c[1]}return 0==u.length?r:e(u).then(f(r))}(t,o);if(t.constructor==Map)return sn(t,o);throw new TypeError("value is not an Object or Map")};hn.entries=function(t,e){return null==e?c(an,u,t):n(t)?t.then(c(an,u,e)):an(t,e)};const pn=function(t,e){if(g(t))return K(t,e);if(null==t)throw new TypeError(`invalid collection ${t}`);if("string"==typeof t||t.constructor==String)return function(t,e){const o=K(t,e);return n(o)?o.then(l(F,u,"join","")):o.join("")}(t,e);if(t.constructor==Set)return function(t,e){const r=new Set,f=t[B]();let i=f.next();for(;!i.done;){const t=e(i.value);if(n(t))return t.then(o(c(Q,r,u),E(U,f,e,r)));r.add(t),i=f.next()}return r}(t,e);if(t.constructor==Map)return function(t,e){const r=new Map,c=t[B]();let f=c.next();for(;!f.done;){const t=f.value[0],i=e(f.value[1]);if(n(i))return i.then(o(l(W,r,t,u),E(X,c,e,r)));r.set(t,i),f=c.next()}return r}(t,e);if(t.constructor==Object)return function(t,e){const r={},c={};for(const f in t){c[f]=!0;const i=e(t[f],f,t);if(n(i))return i.then(o(l(x,r,f,u),L(N,t,e,r,c)));r[f]=i}return r}(t,e);throw new TypeError(`invalid collection ${t}`)};hn.series=function(t,e){return null==e?c(pn,u,t):n(t)?t.then(c(pn,u,e)):pn(t,e)};const dn=function(t,e,o){if(g(t))return tn(t,e,o);if(null==t)throw new TypeError(`invalid collection ${t}`);if("string"==typeof t||t.constructor==String)return function(t,e,o){const r=tn(t,e,o);return n(r)?r.then(l(F,u,"join","")):r.join("")}(t,e,o);if(t.constructor==Set)return function(t,e,o){const r=new Set,u=t[B]();let c=u.next();for(;!c.done;){const f=o(c.value,c.value,t);if(n(f)){const n=new Set,c=f.then((t=>{n.delete(c),r.add(t)}));return n.add(c),en(t,u,e,o,r,n)}r.add(f),c=u.next()}return r}(t,e,o);if(t.constructor==Map)return function(t,e,o){const r=new Map,u=t[B]();let c=u.next();for(;!c.done;){const f=c.value[0],i=o(c.value[1],f,t);if(n(i)){const n=new Set;r.set(f,i);const c=i.then((t=>{n.delete(c),r.set(f,t)}));return n.add(c),on(t,u,e,o,r,n)}r.set(f,i),c=u.next()}return r}(t,e,o);if(t.constructor==Object)return function(t,e,o){const r={},u={};for(const c in t){u[c]=!0;const f=o(t[c],c,t);if(n(f)){const n=new Set;r[c]=f;const i=f.then((t=>{n.delete(i),r[c]=t}));return n.add(i),rn(t,e,o,r,u,n)}r[c]=f}return r}(t,e,o);throw new TypeError(`invalid collection ${t}`)};hn.pool=function(t,e,o){return null==o?l(dn,u,t,e):n(t)?t.then(l(dn,u,e,o)):dn(t,e,o)};const yn=(n,t)=>({[B](){return this},next(){let e=n.next();for(;!e.done;){const{value:o}=e;if(t(o))return{value:o,done:!1};e=n.next()}return e}}),gn=(t,e)=>({isAsyncIteratorDone:!1,[C](){return this},async next(){for(;!this.isAsyncIteratorDone;){const{value:o,done:r}=await t.next();if(r)this.isAsyncIteratorDone=!0;else{const t=e(o);if(n(t)?await t:t)return{value:o,done:!1}}}return{value:void 0,done:!0}}}),wn=function(n,t,e,o){const r=t.length;let u=n.length-1;for(;++o<r;)n[++u]=e(t[o],o,n);return n},vn=function(n,t,e,o){const r=n.length;let u=-1;for(;++e<r;)o[++u]&&t.push(n[e]);return t},xn=function(t,o){const r=t.length,c=[];let f=-1,i=-1;for(;++f<r;){const r=t[f],s=o(r,f,t);if(n(s))return e(wn([s],t,o,f)).then(v(vn,t,c,f-1,u));s&&(c[++i]=r)}return c},jn=(n,t)=>function(){return n(t)},bn=function(){},Sn=function(n,t,e,o){o&&(n[t]=e)},Mn=function(t,o){return g(t)?xn(t,o):null==t?t:"string"==typeof t||t.constructor==String?function(t,e){const o=xn(t,e);return n(o)?o.then(l(F,u,"join","")):o.join("")}(t,o):t.constructor==Set?function(t,o){const r=new Set,c=r.add.bind(r),i=[];for(const e of t){const f=o(e,e,t);n(f)?i.push(f.then(l(s,u,jn(c,e),bn))):f&&r.add(e)}return 0==i.length?r:e(i).then(f(r))}(t,o):t.constructor==Map?function(t,o){const r=new Map,c=[];for(const[e,f]of t){const i=o(f,e,t);n(i)?c.push(i.then(l(s,u,L(V,r,"set",e,f),bn))):i&&r.set(e,f)}return 0==c.length?r:e(c).then(f(r))}(t,o):"function"==typeof t.filter?t.filter(o):"function"==typeof t[B]?yn(t[B](),o):"function"==typeof t[C]?gn(t[C](),o):t.constructor==Object?function(t,o){const r={},c=[];for(const e in t){const f=t[e],i=o(f,e,t);n(i)?c.push(i.then(v(Sn,r,e,t[e],u))):i&&(r[e]=f)}return 0==c.length?r:e(c).then(f(r))}(t,o):t},On=Object.values,mn=(Object.prototype.toString,async function(t,e,o){let r=t.next();if(r.done)return o;for(;!r.done;)o=e(o,r.value),n(o)&&(o=await o),r=t.next();return o}),zn=async function(t,e,o,r){const u=t.length;for(;++r<u;)o=e(o,t[r],r,t),n(o)&&(o=await o);return o},An=Object.keys,En=async function(t,e,o,r,u){const c=r.length;for(;++u<c;){const c=r[u];o=e(o,t[c],c,t),n(o)&&(o=await o)}return o},Tn=async function(t,e,o,r){for(const[u,c]of r)o=e(o,c,u,t),n(o)&&(o=await o);return o},In=function(t,e,o){return g(t)?function(t,e,o){const r=t.length;let c=-1;for(void 0===o&&(o=t[++c]);++c<r;)if(o=e(o,t[c],c,t),n(o))return o.then(v(zn,t,e,u,c));return o}(t,e,o):null==t?void 0===o?c(e,t,u):e(o,t):t.constructor==Map?function(t,e,o){const r=t.entries();if(void 0===o){const n=r.next();if(n.done)return o;o=n.value[1]}for(const[c,f]of r)if(o=e(o,f,c,t),n(o))return o.then(v(Tn,t,e,u,r));return o}(t,e,o):"function"==typeof t[B]?function(t,e,o){let r=t.next();if(r.done)return o;for(void 0===o&&(o=r.value,r=t.next());!r.done;){if(o=e(o,r.value),n(o))return o.then(l(mn,t,e,u));r=t.next()}return o}(t[B](),e,o):"function"==typeof t[C]?async function(n,t,e){let o=await n.next();if(o.done)return e;for(void 0===e&&(e=o.value,o=await n.next());!o.done;)e=await t(e,o.value),o=await n.next();return e}(t[C](),e,o):"function"==typeof t.reduce?t.reduce(e,o):"function"==typeof t.chain?t.chain(c(e,o,u)):"function"==typeof t.flatMap?t.flatMap(c(e,o,u)):t.constructor==Object?function(t,e,o){const r=An(t),c=r.length;let f=-1;for(void 0===o&&(o=t[r[++f]]);++f<c;){const c=r[f];if(o=e(o,t[c],c,t),n(o))return o.then((i=En,l=e,h=u,a=r,p=f,(s=t)==u?((n,t,e,o,r)=>function(u){return n(u,t,e,o,r)})(i,l,h,a,p):l==u?((n,t,e,o,r)=>function(u){return n(t,u,e,o,r)})(i,s,h,a,p):h==u?((n,t,e,o,r)=>function(u){return n(t,e,u,o,r)})(i,s,l,a,p):a==u?((n,t,e,o,r)=>function(u){return n(t,e,o,u,r)})(i,s,l,h,p):((n,t,e,o,r)=>function(u){return n(t,e,o,r,u)})(i,s,l,h,a)))}var i,s,l,h,a,p;return o}(t,e,o):void 0===o?c(e,t,u):e(o,t)},Dn=function(t,e,o){if("function"==typeof o){const r=o(t);return n(r)?r.then(l(In,t,e,u)):In(t,e,r)}return n(o)?o.then(l(In,t,e,u)):In(t,e,o)},Pn=ArrayBuffer.isView,Bn=function(n,t){return g(t)||Pn(t)?function(n,t){const e=n.length,o=t.length;let r=-1;for(;++r<o;)n[e+r]=t[r];return n}(n,t):(n.push(t),n)},$n="function"==typeof Buffer,kn=$n?Buffer.alloc:bn,Cn=function(n,t){const e=n.length,o=$n&&n.constructor==Buffer?kn(e+t.length):new n.constructor(e+t.length);return o.set(n),o.set(t,e),o},_n=function(n,t){return g(t)||Pn(t)?Cn(n,t):Cn(n,[t])},qn=(n,t)=>new Promise(((n,t)=>function(e,o){t.on("data",(n=>function(t,e,o){return n.write(t,e,o),n})(n)),t.on("end",jn(e,n)),t.on("error",o)})(n,t)),Fn=function(n,t){return null!=(e=t)&&"function"==typeof e.pipe?qn(n,t):(n.write(t),n);var e},Rn=function(n,t){if(null!=t&&t.constructor==Set){for(const e of t)n.add(e);return n}return n.add(t)},Vn=function(n,t){return n.concat(t)},Gn=function(t,e,o){const r=In(t,e(bn),null);return n(r)?r.then(f(o)):o},Hn=function(t,e,o){if(g(o))return In(t,e(Bn),o);if(Pn(o)){const r=In(t,e(Bn),[]);return n(r)?r.then(c(_n,o,u)):_n(o,r)}if(null==o)return Gn(t,e,o);const r=o.constructor;if("string"==typeof o||r==String){const r=In(t,e(Bn),[o]);return n(r)?r.then(l(F,u,"join","")):r.join("")}return"function"==typeof o.concat?In(t,e(Vn),o):"function"==typeof o.write?In(t,e(Fn),o):r==Set?In(t,e(Rn),o):r==Object?In(t,e(O),o):Gn(t,e,o)},Jn=function(t,e,o){if("function"==typeof o){const r=o(t);return n(r)?r.then(l(Hn,t,e,u)):Hn(t,e,r)}return n(o)?o.then(l(Hn,t,e,u)):Hn(t,e,o)},Kn=function(n,t){return n.push(t),n},Ln=n=>new Promise((t=>{setTimeout(t,n)})),Nn=(n,t)=>t,Qn=n=>n,Un=(n,t)=>function(...e){return t(n(...e))},Wn=async function(t,o){const r=[];for await(const e of t){const t=o(e);n(t)&&r.push(t)}return 0==r.length?t:e(r).then(f(t))},Xn=function(t){const o=t.length,r=[],i=[];let s=-1;for(;++s<o;){const e=t[s];if(g(e)){const n=e.length;let t=-1;for(;++t<n;)i.push(e[t])}else if(null==e)i.push(e);else if("function"==typeof e.then)r.push(e.then(c(Kn,i,u)));else if("function"==typeof e[B])for(const n of e)i.push(n);else if("function"==typeof e[C])r.push(Wn(e[C](),c(Kn,i,u)));else if("function"==typeof e.chain){const t=e.chain(Qn);n(t)?r.push(t.then(c(Kn,i,u))):i.push(t)}else if("function"==typeof e.flatMap){const t=e.flatMap(Qn);n(t)?r.push(t.then(c(Kn,i,u))):i.push(t)}else if("function"==typeof e.reduce){const t=e.reduce(Un(Nn,c(Kn,i,u)),null);n(t)&&r.push(t)}else if(e.constructor==Object)for(const n in e)i.push(e[n]);else i.push(e)}return 0==r.length?i:e(r).then(f(i))},Yn=function(t){const o=[],r={},f=c(O,r,u),i=Un(Nn,f);for(const e in t){const u=t[e];if(null!=u)if("function"==typeof u[B])for(const n of u)O(r,n);else if("function"==typeof u[C])o.push(Wn(u[C](),f));else if("function"==typeof u.chain){const t=u.chain(Qn);n(t)?o.push(t.then(f)):O(r,t)}else if("function"==typeof u.flatMap){const t=u.flatMap(Qn);n(t)?o.push(t.then(f)):f(t)}else if("function"==typeof u.reduce){const t=u.reduce(i,null);n(t)&&o.push(t)}else O(r,u)}return 0==o.length?r:e(o).then((()=>r))},Zn=function(t){t.size;const o=[],r=new Set,c=(n,t)=>r.add(t),f=l(F,r,"add",u);for(const e of t)if(g(e)){const n=e.length;let t=-1;for(;++t<n;)r.add(e[t])}else if(null==e)r.add(e);else if("function"==typeof e[B])for(const n of e)r.add(n);else if("function"==typeof e[C])o.push(Wn(e[C](),f));else if("function"==typeof e.chain){const t=e.chain(Qn);n(t)?o.push(t.then(f)):r.add(t)}else if("function"==typeof e.flatMap){const t=e.flatMap(Qn);n(t)?o.push(t.then(f)):r.add(t)}else if("function"==typeof e.reduce){const t=e.reduce(c,null);n(t)&&o.push(t)}else if(e.constructor==Object)for(const n in e)r.add(e[n]);else r.add(e);return 0==o.length?r:e(o).then((()=>r))},nt=o(Xn,c(((n,t)=>n.join(t)),u,"")),tt=function(t,e){if(g(t))return function(t,e){const o=q(t,e);return n(o)?o.then(Xn):Xn(o)}(t,e);if(null==t)return e(t);if("function"==typeof t.then)return t.then(e);if("function"==typeof t.next)return B in t?function(n,t){let e=[],o=0;return{[B](){return this},next(){if(o<e.length){const n=e[o];return o+=1,{value:n,done:!1}}const r=n.next();if(r.done)return r;const u=In(t(r.value),Kn,[]);return u.length>1&&(e=u,o=1),{value:u[0],done:!1}}}}(t,e):function(t,e){const o=[],r=new Set;return{isAsyncIteratorDone:!1,[C](){return this},toString:()=>"[object FlatMappingAsyncIterator]",async next(){for(;!this.isAsyncIteratorDone||o.length>0||r.size>0;){if(!this.isAsyncIteratorDone){const{value:c,done:f}=await t.next();if(f)this.isAsyncIteratorDone=f;else{const t=e(c);if(n(t)){const n=t.then(l(In,u,Kn,o)).then((()=>r.delete(n)));r.add(n)}else{const e=In(t,Kn,o);if(n(e)){const n=e.then((()=>r.delete(n)));r.add(n)}}}}if(o.length>0)return{value:o.shift(),done:!1};r.size>0&&await Z([Ln(1e3),...r])}return{value:void 0,done:!0}}}}(t,e);if("function"==typeof t.chain)return t.chain(e);if("function"==typeof t.flatMap)return t.flatMap(e);const o=t.constructor;return o==Object?function(t,e){const o=H(t,e);return n(o)?o.then(Yn):Yn(o)}(t,e):o==Set?function(t,e){const o=R(t,e);return n(o)?o.then(Zn):Zn(o)}(t,e):"string"==typeof t||o==String?function(t,e){const o=q(t,e);return n(o)?o.then(nt):nt(o)}(t,e):e(t)},et=async function(t,e,o){const r=t.length;for(;++o<r;){const r=e(t[o]);n(r)&&await r}return t},ot=async function(t,e,o){for(const r in t){if(r in o)continue;const u=e(t[r]);n(u)&&await u}return t},rt=async function(t,e){let o=t.next();for(;!o.done;){const r=e(o.value);n(r)&&await r,o=t.next()}return t},ut=function(t,o){return g(t)?function(t,o){const r=t.length,u=[];let c=-1;for(;++c<r;){const e=o(t[c]);n(e)&&u.push(e)}return 0==u.length?t:e(u).then(f(t))}(t,o):null==t?t:"function"==typeof t.forEach?(t.forEach(o),t):"function"==typeof t[B]?function(t,o){const r=[];for(const e of t){const t=o(e);n(t)&&r.push(t)}return 0==r.length?t:e(r).then(f(t))}(t[B](),o):"function"==typeof t[C]?Wn(t[C](),o):t.constructor==Object?function(t,o){const r=[];for(const e in t){const u=o(t[e]);n(u)&&r.push(u)}return 0==r.length?t:e(r).then(f(t))}(t,o):t},ct=function(t,e){return"function"==typeof t?c(ut,u,t):n(t)?t.then(c(ut,u,e)):ut(t,e)},ft=function(t,e){if(g(t))return function(t,e){const o=t.length;let r=-1;for(;++r<o;){const o=e(t[r]);if(n(o))return o.then(E(et,t,e,r))}return t}(t,e);if(null==t)throw new TypeError(`invalid collection ${t}`);if("function"==typeof t[B])return function(t,e){let o=t.next();for(;!t.done;){const r=e(o.value);if(n(r))return r.then(D(rt,t,e));o=t.next()}return t}(t[B](),e);if("function"==typeof t[C])return async function(t,e){for await(const o of t){const t=e(o);n(t)&&await t}return t}(t[C](),e);if(t.constructor==Object)return function(t,e){const o={};for(const r in t){o[r]=!0;const u=e(t[r]);if(n(u))return u.then(E(ot,t,e,o))}return t}(t,e);throw new TypeError(`invalid collection ${t}`)};ct.series=function(t,e){return"function"==typeof t?c(ft,u,t):n(t)?t.then(c(ft,u,e)):ft(t,e)};const it=function(n){const t=n.then((n=>[n,t]));return t},st=async function(t,e,o,r){const u=t.length;for(;++o<u;){const u=e(t[o]);if(n(u))r.add(it(u));else if(u)return!0}for(;r.size>0;){const[n,t]=await Z(r);if(r.delete(t),n)return!0}return!1},lt=function(t,e){const o=t.length;let r=-1;for(;++r<o;){const o=e(t[r]);if(n(o))return st(t,e,r,new Set([it(o)]));if(o)return!0}return!1},ht=async function(t,e,o,r=20){let u=t.next();for(n(u)&&(u=await u);!u.done;){if(o.size>=r){const[n,t]=await Z(o);if(o.delete(t),n)return!0}const c=e(u.value);if(n(c))o.add(it(c));else if(c)return!0;u=t.next(),n(u)&&(u=await u)}for(;o.size>0;){const[n,t]=await Z(o);if(o.delete(t),n)return!0}return!1},at=function(t,e){return g(t)?lt(t,e):null==t?e(t):"function"==typeof t[B]?function(t,e){for(const o of t){const r=e(o);if(n(r))return ht(t,e,new Set([it(r)]));if(r)return!0}return!1}(t[B](),e):"function"==typeof t[C]?ht(t[C](),e,new Set):"function"==typeof t.reduce?t.reduce((t=>function(e,o){return!0===e?e:n(e)?e.then(c((n=>function(t,e){return!!t||n(e)})(t),u,o)):!!e||t(o)})(e),!1):t.constructor==Object?lt(On(t),e):e(t)},pt=function(t,o){const r=t.length,c=[];let f=-1;for(;++f<r;){const e=o(t[f]);if(n(e))c.push(e);else if(!e)return!1}return 0==c.length||e(c).then(l(F,u,"every",Boolean))},dt=(n,t,e)=>!!t&&n(e),yt=function(t,o){return g(t)?pt(t,o):null==t?o(t):"function"==typeof t[B]?function(t,o){const r=[];for(const e of t){const t=o(e);if(n(t))r.push(t);else if(!t)return!1}return 0==r.length||e(r).then(l(F,u,"every",Boolean))}(t[B](),o):"function"==typeof t[C]?async function(t,e,o,r=20){let u=await t.next();for(;!u.done;){if(o.size>=r){const[n,t]=await Z(o);if(o.delete(t),!n)return!1}const c=e(u.value);if(n(c))o.add(it(c));else if(!c)return!1;u=await t.next()}for(;o.size>0;){const[n,t]=await Z(o);if(o.delete(t),!n)return!1}return!0}(t[C](),o,new Set):"function"==typeof t.reduce?t.reduce((t=>function(e,o){return!1!==e&&(n(e)?e.then(l(dt,t,u,o)):!!e&&t(o))})(o),!0):t.constructor==Object?pt(On(t),o):o(t)},gt=function(t,e){const o=t.length;for(;++e<o;){const o=t[e];if(n(o))return o.then(l(s,u,D(gt,t,e),f(!1)));if(!o)return!1}return!0},wt=async function(t,e,o){const r=e.length;for(;++o<r;){let r=e[o];if("function"==typeof r&&(r=r(...t)),n(r)&&(r=await r),!r)return!1}return!0},vt=function(t,e){const o=e.length;let r=-1;for(;++r<o;){let o=e[r];if("function"==typeof o&&(o=o(...t)),n(o))return o.then(l(s,u,E(wt,t,e,r),f(!1)));if(!o)return!1}return!0},xt=function(t,e){const o=t.length;for(;++e<o;){const o=t[e];if(n(o))return o.then(l(s,u,f(!0),D(xt,t,e)));if(o)return!0}return!1},jt=async function(t,e,o){const r=e.length;for(;++o<r;){let r=e[o];if("function"==typeof r&&(r=r(...t)),n(r)&&(r=await r),r)return!0}return!1},bt=function(t,e){const o=e.length;let r=-1;for(;++r<o;){let o=e[r];if("function"==typeof o&&(o=o(...t)),n(o))return o.then(l(s,u,f(!0),E(jt,t,e,r)));if(o)return!0}return!1},St=n=>!n,Mt=function(t,e){const o=e(...t);return n(o)?o.then(St):!o},Ot=function(n,t,e,o,r){return t==u?((n,t,e,o)=>function(...r){return n(r,t,e,o)})(n,e,o,r):e==u?((n,t,e,o)=>function(...r){return n(t,r,e,o)})(n,t,o,r):o==u?((n,t,e,o)=>function(...r){return n(t,e,r,o)})(n,t,e,r):((n,t,e,o)=>function(...r){return n(t,e,o,r)})(n,t,e,o)},mt=function(t,o,r,u){const c=r(...t),f=u(...t);return n(c)||n(f)?e([c,f]).then(fn(o)):o(c,f)},zt=function(t,o,r,u){const c=r(...t);return n(c)||n(u)?e([c,u]).then(fn(o)):o(c,u)},At=function(t,o,r,u){const c=u(...t);return n(r)||n(c)?e([r,c]).then(fn(o)):o(r,c)},Et=o=>function(...r){const c=r.pop(),f=r.pop(),i="function"==typeof f,s="function"==typeof c;return i&&s?0==r.length?Ot(mt,u,o,f,c):t(r)?e(r).then(v(mt,u,o,f,c)):mt(r,o,f,c):i?0==r.length?Ot(zt,u,o,f,c):t(r)?e(r).then(v(zt,u,o,f,c)):zt(r,o,f,c):s?0==r.length?Ot(At,u,o,f,c):t(r)?e(r).then(v(At,u,o,f,c)):At(r,o,f,c):n(f)||n(c)?e([f,c]).then(fn(o)):o(f,c)},Tt=Et((function(n,t){return n==t})),It=Et(((n,t)=>n>t)),Dt=Et(((n,t)=>n<t)),Pt=Et(((n,t)=>n>=t)),Bt=Et(((n,t)=>n<=t)),$t=/[.|[|\]]+/,kt=function(n,t){const e=new Map,o=function(o){if(e.has(o))return e.get(o);const r=n(o);return e.set(o,r),e.size>t&&e.clear(),r};return o.cache=e,o}((function(n){const t=n.length-1,e="["==n[0],o="]"==n[t];return e&&o?n.slice(1,t).split($t):e?n.slice(1).split($t):o?n.slice(0,t).split($t):n.split($t)}),500),Ct=n=>g(n)?n:"string"==typeof n?kt(n):[n],_t=function(n,t){const e=Ct(t),o=e.length;let r=-1,u=n;for(;++r<o;)if(u=u[e[r]],null==u)return;return u},qt=function(n,t,e){const o=null==n?void 0:_t(n,t);return void 0===o?"function"==typeof e?e(n):e:o},Ft=function(n,t,e){if(!(n=>{if(null==n)return!1;const t=typeof n;return"object"==t||"function"==t})(n))return n;const o=Ct(e),r=o.length,u=r-1,c={...n};let f=c,i=-1;for(;++i<r;){const n=o[i];if(i==u)f[n]=t;else{const t=f[n],e=g(t)?t.slice():{...t};f[n]=e,f=e}}return c},Rt=function(t,e,o){if("function"==typeof o){const r=o(t);return n(r)?r.then(l(Ft,t,u,e)):Ft(t,r,e)}return n(o)?o.then(l(Ft,t,u,e)):Ft(t,o,e)},Vt=function(n,t){if(null==n)return n;const e=t.length;let o={},r=-1;for(;++r<e;){const e=t[r],u=_t(n,e);null!=u&&(o=Ft(o,u,e))}return o},Gt=function(n,t){if(null==n)return;const e=Ct(t),o=e.length-1;let r=-1,u=n;for(;++r<o;)if(u=u[e[r]],null==u)return;const c=e[r];null!=u&&c in u&&delete u[c]},Ht=function(n){const t={};for(const e in n){const o=n[e];g(o)?t[e]=Jt(o):null!=o&&o.constructor==Object?t[e]=Ht(o):t[e]=o}return t},Jt=function(n){const t=n.length,e=[];let o=-1;for(;++o<t;){const t=n[o];g(t)?e[o]=Jt(t):null!=t&&t.constructor==Object?e[o]=Ht(t):e[o]=t}return e},Kt=function(n,t){const e=t.length,o=g(r=n)?Jt(r):null==r?r:r.constructor==Object?Ht(r):r;var r;let u=-1;for(;++u<e;)Gt(o,t[u]);return o},Lt=(n,...t)=>cn(n.length,n,t);Lt.arity=function(n,t,...e){return cn(n,t,e)};return{pipe:function(...n){const f=n.pop().reduce(o);return 0==n.length?f:t(n)?e(n).then(c(r,f,u)):f(...n)},compose:function(...n){const f=n.pop().reduceRight(o);return 0==n.length?f:t(n)?e(n).then(c(r,f,u)):f(...n)},tap:d,forEach:ct,switchCase:(...n)=>{const o=n.pop();return I(o)?P(o,-2):0==n.length?a(T,o,u,-2):t(n)?e(n).then(l(T,o,u,-2)):T(o,n,-2)},tryCatch:function(...n){if(n.length>2){const o=n.pop(),r=n.pop();return t(n)?e(n).then(l(A,r,o,u)):A(r,o,n)}const o=n[0],r=n[1];return function(...n){return A(o,r,n)}},all:M,assign:function(t,e){return null==e?c(m,u,t):n(t)?t.then(c(m,u,e)):m(t,e)},get:function(t,e,o){return"string"==typeof t||"number"==typeof t||g(t)?l(qt,u,t,e):n(t)?t.then(l(qt,u,e,o)):qt(t,e,o)},set:function(t,e,o){return null==o?l(Rt,u,t,e):n(t)?t.then(l(Rt,u,e,o)):Rt(t,e,o)},pick:function(t,e){return null==e?c(Vt,u,t):n(t)?t.then(c(Vt,u,e)):Vt(t,e)},omit:function(t,e){return null==e?c(Kt,u,t):n(t)?t.then(c(Kt,u,e)):Kt(t,e)},map:hn,filter:function(n,t){return"function"==typeof n?c(Mn,u,n):Mn(n,t)},flatMap:(t,e)=>"function"==typeof t?c(tt,u,t):n(t)?t.then(c(tt,u,e)):tt(t,e),reduce:function(...t){return"function"==typeof t[0]?l(Dn,u,t[0],t[1]):n(t[0])?t[0].then(l(Dn,u,t[1],t[2])):Dn(t[0],t[1],t[2])},transform:function(...t){return"function"==typeof t[0]?l(Jn,u,t[0],t[1]):n(t[0])?t[0].then(l(Jn,u,t[1],t[2])):Jn(t[0],t[1],t[2])},and:function(...n){const o=n.pop();return I(o)?gt(o,-1):0==n.length?h(vt,u,o):t(n)?e(n).then(c(vt,u,o)):vt(n,o)},or:function(...n){const o=n.pop();return I(o)?xt(o,-1):0==n.length?h(bt,u,o):t(n)?e(n).then(c(bt,u,o)):bt(n,o)},not:function(...n){const o=n.pop();return"function"==typeof o?0==n.length?h(Mt,u,o):t(n)?e(n).then(c(Mt,u,o)):Mt(n,o):!o},some:function(t,e){return"function"==typeof t?c(at,u,t):n(t)?t.then(c(at,u,e)):at(t,e)},every:function(t,e){return"function"==typeof t?c(yt,u,t):n(t)?t.then(c(yt,u,e)):yt(t,e)},eq:Tt,gt:It,lt:Dt,gte:Pt,lte:Bt,thunkify:(n,...o)=>function(){return t(o)?e(o).then(c(r,n,u)):n(...o)},always:f,curry:Lt,__:u}}());
package/dist/rubico.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -146,32 +146,67 @@ const curryArgs2 = function (baseFunc, arg0, arg1) {
146
146
  return curryArgs2ResolveArgs1(baseFunc, arg0)
147
147
  }
148
148
 
149
- // _tap(args Array, func function) -> Promise|any
150
- const _tap = function (args, func) {
149
+ // argument resolver for curryArgs3
150
+ const curryArgs3ResolveArgs0 = (
151
+ baseFunc, arg1, arg2,
152
+ ) => function args0Resolver(...args) {
153
+ return baseFunc(args, arg1, arg2)
154
+ }
155
+
156
+ // argument resolver for curryArgs3
157
+ const curryArgs3ResolveArgs1 = (
158
+ baseFunc, arg0, arg2,
159
+ ) => function arg1Resolver(...args) {
160
+ return baseFunc(arg0, args, arg2)
161
+ }
162
+
163
+ // argument resolver for curryArgs3
164
+ const curryArgs3ResolveArgs2 = (
165
+ baseFunc, arg0, arg1,
166
+ ) => function arg2Resolver(...args) {
167
+ return baseFunc(arg0, arg1, args)
168
+ }
169
+
170
+ const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
171
+ if (arg0 == __) {
172
+ return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
173
+ }
174
+ if (arg1 == __) {
175
+ return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
176
+ }
177
+ return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
178
+ }
179
+
180
+ // _tap(args Array, f function) -> Promise|any
181
+ const _tap = function (args, f) {
151
182
  const result = args[0],
152
- call = func(...args)
183
+ call = f(...args)
153
184
  return isPromise(call) ? call.then(always(result)) : result
154
185
  }
155
186
 
156
187
  const tap = function (...args) {
157
- const func = args.pop()
188
+ const f = args.pop()
158
189
  if (args.length == 0) {
159
- return curryArgs2(_tap, __, func)
190
+ return curryArgs2(_tap, __, f)
160
191
  }
161
192
  if (areAnyValuesPromises(args)) {
162
- return promiseAll(args).then(curry2(_tap, __, func))
193
+ return promiseAll(args).then(curry2(_tap, __, f))
163
194
  }
164
- return _tap(args, func)
195
+ return _tap(args, f)
165
196
  }
166
197
 
167
- tap.if = (predicate, func) => function tappingIf(...args) {
168
- const predication = predicate(...args)
169
- if (isPromise(predication)) {
170
- return predication.then(curry3(
171
- thunkConditional, __, thunkifyArgs(tap(func), args), always(args[0])))
198
+ const _tapIf = function (predicate, f, args) {
199
+ const b = predicate(...args)
200
+ if (isPromise(b)) {
201
+ return b.then(curry3(
202
+ thunkConditional,
203
+ __,
204
+ thunkifyArgs(tap(f), args),
205
+ always(args[0]),
206
+ ))
172
207
  }
173
- if (predication) {
174
- const execution = func(...args)
208
+ if (b) {
209
+ const execution = f(...args)
175
210
  if (isPromise(execution)) {
176
211
  return execution.then(always(args[0]))
177
212
  }
@@ -179,6 +214,20 @@ tap.if = (predicate, func) => function tappingIf(...args) {
179
214
  return args[0]
180
215
  }
181
216
 
217
+ tap.if = function (...args) {
218
+ if (args.length == 2) {
219
+ return curryArgs3(_tapIf, args[0], args[1], __)
220
+ }
221
+ const argsLength = args.length
222
+ const f = args[argsLength - 1]
223
+ const predicate = args[argsLength - 2]
224
+ const argValues = args.slice(0, -2)
225
+ if (areAnyValuesPromises(argValues)) {
226
+ return promiseAll(argValues).then(curry3(_tapIf, predicate, f, __))
227
+ }
228
+ return _tapIf(predicate, f, args)
229
+ }
230
+
182
231
  const isArray = Array.isArray
183
232
 
184
233
  const functionArrayAll = function (funcs, args) {
@@ -445,37 +494,6 @@ const nonfunctionsConditional = function (array, index) {
445
494
  return array[index]
446
495
  }
447
496
 
448
- // argument resolver for curryArgs3
449
- const curryArgs3ResolveArgs0 = (
450
- baseFunc, arg1, arg2,
451
- ) => function args0Resolver(...args) {
452
- return baseFunc(args, arg1, arg2)
453
- }
454
-
455
- // argument resolver for curryArgs3
456
- const curryArgs3ResolveArgs1 = (
457
- baseFunc, arg0, arg2,
458
- ) => function arg1Resolver(...args) {
459
- return baseFunc(arg0, args, arg2)
460
- }
461
-
462
- // argument resolver for curryArgs3
463
- const curryArgs3ResolveArgs2 = (
464
- baseFunc, arg0, arg1,
465
- ) => function arg2Resolver(...args) {
466
- return baseFunc(arg0, arg1, args)
467
- }
468
-
469
- const curryArgs3 = function (baseFunc, arg0, arg1, arg2) {
470
- if (arg0 == __) {
471
- return curryArgs3ResolveArgs0(baseFunc, arg1, arg2)
472
- }
473
- if (arg1 == __) {
474
- return curryArgs3ResolveArgs1(baseFunc, arg0, arg2)
475
- }
476
- return curryArgs3ResolveArgs2(baseFunc, arg0, arg1)
477
- }
478
-
479
497
  const switchCase = (...args) => {
480
498
  const values = args.pop()
481
499
  if (areAllValuesNonfunctions(values)) {
package/dist/set.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/set.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/set.min.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/set.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/some.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/some.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/some.min.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
package/dist/some.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.
@@ -1,5 +1,5 @@
1
1
  /**
2
- * rubico v2.6.0
2
+ * rubico v2.6.1
3
3
  * https://github.com/a-synchronous/rubico
4
4
  * (c) 2019-2024 Richard Tong
5
5
  * rubico may be freely distributed under the MIT license.