@procedures/collections 0.27.7 → 0.28.0
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.
- package/CHANGELOG.md +26 -0
- package/README.md +3 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/async/async-queue.d.ts +11 -0
- package/dist/async/async-queue.d.ts.map +1 -1
- package/dist/async/async-queue.js +30 -0
- package/dist/async/async-queue.js.map +1 -1
- package/dist/async/channels.d.ts +23 -0
- package/dist/async/channels.d.ts.map +1 -1
- package/dist/async/channels.js +81 -18
- package/dist/async/channels.js.map +1 -1
- package/package.json +2 -2
- package/src/async/async-queue.ts +30 -0
- package/src/async/channels.ts +90 -26
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# @procedures/collections
|
|
2
2
|
|
|
3
|
+
## 0.28.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [06694d7]
|
|
8
|
+
- @procedures/client@0.28.0
|
|
9
|
+
|
|
10
|
+
## 0.27.8
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- 1834a5e: Fixes for the correctness findings of the second audit pass (roadmap O56).
|
|
15
|
+
|
|
16
|
+
PATCH: bug fixes. A caller that used the documented behavior sees no change.
|
|
17
|
+
|
|
18
|
+
- `server.call` of `@procedures/peer` with `address` closes the connection that it makes for the call: after a success, an error and an abort. Before, each call left its client, its entry in the map of the connections and, with WebSocket, an open socket.
|
|
19
|
+
- `parseIcs()` of `@procedures/ics` ignores the properties of a component inside an event. Before, the UID and the SUMMARY of a VALARM (Apple and iCloud give each alarm a UID) replaced those of the event.
|
|
20
|
+
- EXDATE and RECURRENCE-ID of an event with a TZID now name an occurrence by its date in that zone. Before, the occurrences were compared by their date in UTC, so an evening event in a zone west of UTC kept its excluded occurrence and showed its override next to the original. `exdates` and `recurrenceId` hold dates in the zone of `tzid`: a value in UTC or in another zone changes to it.
|
|
21
|
+
- `select()` of `@procedures/collections` withdraws the receives of the cases that lose, and `merge()` keeps no receive on an input while it waits for its reader. Before, each case that lost took the next value of its channel and dropped it, and `merge()` dropped about half of the values. `select()` now also gives a value that is `undefined` (a `Channel<void>`). New: `AsyncQueue.waitTake()`, `Channel.waitReceive()` and the optional `wait` of a `SelectCase`. `merge()` takes the inputs in turn.
|
|
22
|
+
- `shell.run` of `@procedures/shell` refuses an encoding that `Buffer` does not know at the validation of its input. `runCommand()` gives a failure result and `streamCommand()` throws, before they start the program. Before, the decode threw in the listener of the child, which ended the host, and the call never settled. Each encoding that worked before still works.
|
|
23
|
+
- `getTree()` of `ProcedureRegistry` in `@procedures/client` no longer writes into the stored procedures. When a path is a procedure and also the namespace of longer paths, its node is a namespace, and the procedure is at the key `""` of that node. Before, a longer path wrote its segment into the stored procedure of the shorter path (a segment such as `handler` replaced its handler), or replaced the namespace.
|
|
24
|
+
|
|
25
|
+
Notice of the next MINOR: it makes the ReDoS guard of `$regex` in the collection queries of `@procedures/client` stricter. The guard will refuse a pattern with a variable or overlapping repeated group, for example `(a|a)*` or `(\w+\s){2}`. Write such a pattern without the repeated group, for example `\w+\s\w+\s`. Only a host that turns `$regex` on sees the change.
|
|
26
|
+
- Updated dependencies [1834a5e]
|
|
27
|
+
- @procedures/client@0.27.8
|
|
28
|
+
|
|
3
29
|
## 0.27.7
|
|
4
30
|
|
|
5
31
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -205,6 +205,9 @@ await notes.query({ title: { $regex: "^draft", $options: "i" } });
|
|
|
205
205
|
- The option `queryPolicy` of a storage applies to each call without a policy. The third argument of `query()` gives the policy of one call.
|
|
206
206
|
- The procedure `find` gives the policy of its host to `query()` of the storage, so the host sets the policy in one place.
|
|
207
207
|
- A pattern that repeats a group that repeats without a bound, for example `(a+)+`, is always an error.
|
|
208
|
+
- A repeated group with a repetition of variable length, for example `(a{2,3})+`, is also an error.
|
|
209
|
+
- A repeated group with alternatives that can start with the same character, for example `(a|aa)+`, is also an error.
|
|
210
|
+
- A group with a bounded repetition and few ways to match passes, for example `(\d{1,3}\.){3}`.
|
|
208
211
|
|
|
209
212
|
#### The two forms of a patch
|
|
210
213
|
|
package/dist/.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":"7.0.2","root":[[88,96],[99,138],[143,146]],"packageJsons":["../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/fast-check/package.json","../../../node_modules/.pnpm/punycode@2.3.1/node_modules/punycode/package.json","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/package.json","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/package.json","../package.json","../../client/package.json"],"missingPackageJsons":["../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/assert/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/assert/strict/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/async_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/buffer/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/child_process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/cluster/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/console/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/constants/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/crypto/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/dgram/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/diagnostics_channel/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/dns/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/dns/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/domain/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/fs/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/fs/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/http/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/http2/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/https/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/inspector/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/inspector/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/module/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/net/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/assert/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dns/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/fs/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/readline/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/timers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/os/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/path/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/path/posix/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/path/win32/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/perf_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/punycode/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/querystring/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/readline/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/readline/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/repl/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/consumers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/web/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/string_decoder/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/timers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/timers/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/tls/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/trace_events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/tty/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/url/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/util/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/util/types/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/v8/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/vm/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/wasi/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/worker_threads/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/zlib/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/assert/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/assert/strict/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/async_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/buffer/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/child_process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/cluster/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/console/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/constants/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/crypto/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/dgram/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/diagnostics_channel/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/dns/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/dns/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/domain/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/fs/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/fs/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/http/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/http2/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/https/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/inspector/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/inspector/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/module/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/net/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/os/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/path/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/path/posix/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/path/win32/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/perf_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/punycode/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/querystring/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/readline/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/readline/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/repl/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/consumers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/web/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/string_decoder/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/timers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/timers/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/tls/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/trace_events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/tty/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/url/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/util/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/util/types/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/v8/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/vm/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/wasi/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/worker_threads/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/zlib/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/fast-check/lib/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/pure-rand/types/JumpableRandomGenerator/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/pure-rand/types/RandomGenerator/package.json","../../../node_modules/.pnpm/node_modules/@types/assert/package.json","../../../node_modules/.pnpm/node_modules/@types/assert/strict/package.json","../../../node_modules/.pnpm/node_modules/@types/async_hooks/package.json","../../../node_modules/.pnpm/node_modules/@types/buffer/package.json","../../../node_modules/.pnpm/node_modules/@types/child_process/package.json","../../../node_modules/.pnpm/node_modules/@types/cluster/package.json","../../../node_modules/.pnpm/node_modules/@types/console/package.json","../../../node_modules/.pnpm/node_modules/@types/constants/package.json","../../../node_modules/.pnpm/node_modules/@types/crypto/package.json","../../../node_modules/.pnpm/node_modules/@types/dgram/package.json","../../../node_modules/.pnpm/node_modules/@types/diagnostics_channel/package.json","../../../node_modules/.pnpm/node_modules/@types/dns/package.json","../../../node_modules/.pnpm/node_modules/@types/dns/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/domain/package.json","../../../node_modules/.pnpm/node_modules/@types/events/package.json","../../../node_modules/.pnpm/node_modules/@types/fs/package.json","../../../node_modules/.pnpm/node_modules/@types/fs/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/http/package.json","../../../node_modules/.pnpm/node_modules/@types/http2/package.json","../../../node_modules/.pnpm/node_modules/@types/https/package.json","../../../node_modules/.pnpm/node_modules/@types/inspector/package.json","../../../node_modules/.pnpm/node_modules/@types/inspector/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/module/package.json","../../../node_modules/.pnpm/node_modules/@types/net/package.json","../../../node_modules/.pnpm/node_modules/@types/os/package.json","../../../node_modules/.pnpm/node_modules/@types/path/package.json","../../../node_modules/.pnpm/node_modules/@types/path/posix/package.json","../../../node_modules/.pnpm/node_modules/@types/path/win32/package.json","../../../node_modules/.pnpm/node_modules/@types/perf_hooks/package.json","../../../node_modules/.pnpm/node_modules/@types/process/package.json","../../../node_modules/.pnpm/node_modules/@types/punycode/package.json","../../../node_modules/.pnpm/node_modules/@types/querystring/package.json","../../../node_modules/.pnpm/node_modules/@types/readline/package.json","../../../node_modules/.pnpm/node_modules/@types/readline/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/repl/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/consumers/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/web/package.json","../../../node_modules/.pnpm/node_modules/@types/string_decoder/package.json","../../../node_modules/.pnpm/node_modules/@types/timers/package.json","../../../node_modules/.pnpm/node_modules/@types/timers/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/tls/package.json","../../../node_modules/.pnpm/node_modules/@types/trace_events/package.json","../../../node_modules/.pnpm/node_modules/@types/tty/package.json","../../../node_modules/.pnpm/node_modules/@types/url/package.json","../../../node_modules/.pnpm/node_modules/@types/util/package.json","../../../node_modules/.pnpm/node_modules/@types/util/types/package.json","../../../node_modules/.pnpm/node_modules/@types/v8/package.json","../../../node_modules/.pnpm/node_modules/@types/vm/package.json","../../../node_modules/.pnpm/node_modules/@types/wasi/package.json","../../../node_modules/.pnpm/node_modules/@types/worker_threads/package.json","../../../node_modules/.pnpm/node_modules/@types/zlib/package.json","../../../node_modules/.pnpm/node_modules/assert/package.json","../../../node_modules/.pnpm/node_modules/assert/strict/package.json","../../../node_modules/.pnpm/node_modules/async_hooks/package.json","../../../node_modules/.pnpm/node_modules/buffer/package.json","../../../node_modules/.pnpm/node_modules/child_process/package.json","../../../node_modules/.pnpm/node_modules/cluster/package.json","../../../node_modules/.pnpm/node_modules/console/package.json","../../../node_modules/.pnpm/node_modules/constants/package.json","../../../node_modules/.pnpm/node_modules/crypto/package.json","../../../node_modules/.pnpm/node_modules/dgram/package.json","../../../node_modules/.pnpm/node_modules/diagnostics_channel/package.json","../../../node_modules/.pnpm/node_modules/dns/package.json","../../../node_modules/.pnpm/node_modules/dns/promises/package.json","../../../node_modules/.pnpm/node_modules/domain/package.json","../../../node_modules/.pnpm/node_modules/events/package.json","../../../node_modules/.pnpm/node_modules/fs/package.json","../../../node_modules/.pnpm/node_modules/fs/promises/package.json","../../../node_modules/.pnpm/node_modules/http/package.json","../../../node_modules/.pnpm/node_modules/http2/package.json","../../../node_modules/.pnpm/node_modules/https/package.json","../../../node_modules/.pnpm/node_modules/inspector/package.json","../../../node_modules/.pnpm/node_modules/inspector/promises/package.json","../../../node_modules/.pnpm/node_modules/module/package.json","../../../node_modules/.pnpm/node_modules/net/package.json","../../../node_modules/.pnpm/node_modules/os/package.json","../../../node_modules/.pnpm/node_modules/path/package.json","../../../node_modules/.pnpm/node_modules/path/posix/package.json","../../../node_modules/.pnpm/node_modules/path/win32/package.json","../../../node_modules/.pnpm/node_modules/perf_hooks/package.json","../../../node_modules/.pnpm/node_modules/process/package.json","../../../node_modules/.pnpm/node_modules/querystring/package.json","../../../node_modules/.pnpm/node_modules/readline/package.json","../../../node_modules/.pnpm/node_modules/readline/promises/package.json","../../../node_modules/.pnpm/node_modules/repl/package.json","../../../node_modules/.pnpm/node_modules/stream/consumers/package.json","../../../node_modules/.pnpm/node_modules/stream/package.json","../../../node_modules/.pnpm/node_modules/stream/promises/package.json","../../../node_modules/.pnpm/node_modules/stream/web/package.json","../../../node_modules/.pnpm/node_modules/string_decoder/package.json","../../../node_modules/.pnpm/node_modules/timers/package.json","../../../node_modules/.pnpm/node_modules/timers/promises/package.json","../../../node_modules/.pnpm/node_modules/tls/package.json","../../../node_modules/.pnpm/node_modules/trace_events/package.json","../../../node_modules/.pnpm/node_modules/tty/package.json","../../../node_modules/.pnpm/node_modules/url/package.json","../../../node_modules/.pnpm/node_modules/util/package.json","../../../node_modules/.pnpm/node_modules/util/types/package.json","../../../node_modules/.pnpm/node_modules/v8/package.json","../../../node_modules/.pnpm/node_modules/vm/package.json","../../../node_modules/.pnpm/node_modules/wasi/package.json","../../../node_modules/.pnpm/node_modules/worker_threads/package.json","../../../node_modules/.pnpm/node_modules/zlib/package.json","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/types/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/buffer/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/events/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/net/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/stream/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/stream/web/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/tls/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/url/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/worker_threads/package.json","../../../node_modules/assert/package.json","../../../node_modules/assert/strict/package.json","../../../node_modules/async_hooks/package.json","../../../node_modules/buffer/package.json","../../../node_modules/child_process/package.json","../../../node_modules/cluster/package.json","../../../node_modules/console/package.json","../../../node_modules/constants/package.json","../../../node_modules/crypto/package.json","../../../node_modules/dgram/package.json","../../../node_modules/diagnostics_channel/package.json","../../../node_modules/dns/package.json","../../../node_modules/dns/promises/package.json","../../../node_modules/domain/package.json","../../../node_modules/events/package.json","../../../node_modules/fs/package.json","../../../node_modules/fs/promises/package.json","../../../node_modules/http/package.json","../../../node_modules/http2/package.json","../../../node_modules/https/package.json","../../../node_modules/inspector/package.json","../../../node_modules/inspector/promises/package.json","../../../node_modules/module/package.json","../../../node_modules/net/package.json","../../../node_modules/os/package.json","../../../node_modules/path/package.json","../../../node_modules/path/posix/package.json","../../../node_modules/path/win32/package.json","../../../node_modules/perf_hooks/package.json","../../../node_modules/process/package.json","../../../node_modules/punycode/package.json","../../../node_modules/querystring/package.json","../../../node_modules/readline/package.json","../../../node_modules/readline/promises/package.json","../../../node_modules/repl/package.json","../../../node_modules/stream/consumers/package.json","../../../node_modules/stream/package.json","../../../node_modules/stream/promises/package.json","../../../node_modules/stream/web/package.json","../../../node_modules/string_decoder/package.json","../../../node_modules/timers/package.json","../../../node_modules/timers/promises/package.json","../../../node_modules/tls/package.json","../../../node_modules/trace_events/package.json","../../../node_modules/tslib/package.json","../../../node_modules/tty/package.json","../../../node_modules/url/package.json","../../../node_modules/util/package.json","../../../node_modules/util/types/package.json","../../../node_modules/v8/package.json","../../../node_modules/vm/package.json","../../../node_modules/wasi/package.json","../../../node_modules/worker_threads/package.json","../../../node_modules/zlib/package.json","../node_modules/@procedures/client/query/package.json","../node_modules/@types/tslib/package.json","../node_modules/tslib/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.es2023.d.ts","lib.es2024.d.ts","lib.es2025.d.ts","lib.esnext.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts","lib.es2023.collection.d.ts","lib.es2023.intl.d.ts","lib.es2024.arraybuffer.d.ts","lib.es2024.collection.d.ts","lib.es2024.object.d.ts","lib.es2024.promise.d.ts","lib.es2024.regexp.d.ts","lib.es2024.sharedmemory.d.ts","lib.es2024.string.d.ts","lib.es2025.collection.d.ts","lib.es2025.float16.d.ts","lib.es2025.intl.d.ts","lib.es2025.iterator.d.ts","lib.es2025.promise.d.ts","lib.es2025.regexp.d.ts","lib.esnext.array.d.ts","lib.esnext.collection.d.ts","lib.esnext.date.d.ts","lib.esnext.decorators.d.ts","lib.esnext.disposable.d.ts","lib.esnext.error.d.ts","lib.esnext.intl.d.ts","lib.esnext.sharedmemory.d.ts","lib.esnext.temporal.d.ts","lib.esnext.typedarrays.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../src/core/traits.ts","../src/core/effects.ts","../src/core/policies.ts","../src/interfaces/collection.ts","../src/core/middleware.ts","../src/core/events.ts","../src/interfaces/list.ts","../src/interfaces/map.ts","../src/interfaces/set.ts","../../client/dist/procedures/collection/precondition.d.ts","../../client/dist/procedures/collection/query.d.ts","../src/storage/interface.ts","../src/storage/listeners.ts","../src/storage/memory.ts","../src/storage/index.ts","../src/overlay/overlay.ts","../src/overlay/stacks.ts","../src/overlay/index.ts","../src/order/rank.ts","../src/order/index.ts","../src/undo/inverse.ts","../src/undo/undo-log.ts","../src/undo/index.ts","../src/interfaces/queue.ts","../src/utils/defaults.ts","../src/impl/array-list.ts","../src/impl/array-deque.ts","../src/impl/hash-map.ts","../src/impl/linked-hash-map.ts","../src/impl/tree-map.ts","../src/impl/tree-set.ts","../src/impl/linked-list.ts","../src/impl/hash-set.ts","../src/impl/priority-queue.ts","../src/behaviors/bounded.ts","../src/behaviors/readonly.ts","../src/behaviors/safe.ts","../src/behaviors/evented.ts","../src/behaviors/synchronized.ts","../src/behaviors/composite.ts","../src/behaviors/lru.ts","../src/behaviors/ttl.ts","../src/async/async-queue.ts","../src/async/channels.ts","../src/async/settled.ts","../src/fx/iter.ts","../src/fx/collectors.ts","../src/utils/factories.ts","../src/utils/helpers.ts","../src/index.ts","../src/register.ts","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/RandomGenerator-DcXj09Ch.d.ts","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/types/RandomGenerator.d.ts","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/types/JumpableRandomGenerator.d.ts","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/fast-check/lib/fast-check.d.ts","../src/contracts/model.ts","../src/testing/check.ts","../src/testing/storage-contract.ts","../src/testing/index.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/streams.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7","9443a7f109277ffaa79d893ed2549995","793cee405385076e27c24f409659dccd","09f69c6610266eaee1ac9e3e30df2c71","62bad718844246b8e17547f37bad6085",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8cf777fe00349b71ee9c4b6f3fe7fd19","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"74f96bc192530c9723f572bfff3d3078","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1df91c56b25955c56387426f378173c5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"38856f70edcd2115c355d96ec77cc09e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"de8700156c1275465bcd473c28b359aa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d47cfdb6ede40518357bb5a4cd7cd9fb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6e5773860cd9e5b15e683113f642ab47","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"30ff5fe1682f7fcd629880476ca3c2e0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"bf23d7d1b40b9015b694ddc2f011752f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2cc585d42e2c548f9f24a30a1989fd33","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"713906ce9d332d2242b7f05ed9304be3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0219894bfe5042c7e1aa2d22e4a91ed0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6009ffff7e43c93318804d2d28e37fe3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"03be89b227587594fbb50509fc1c2e45","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b30df52dc24740c0bad7c55c3511df7d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ab8d3c9b5ed5c2ab8f383607eef439f0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d950ec671d0a8e07f3c1a31e94abed86","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1abef2ace5eccb02d60dd73cd5a5ee4c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f5f0a3044029d1cc081b5887eb4deb07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d57c697f1446940ec4bfe669c962e2c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"be41035d7b941482a1e1ae6a5c5dcca5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"10f7d9da7564f27f8ddf4a162b6da6d3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1d0520af549e0c3581f15173cc713ca1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d65083f97fd741cff028472563eddb79","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"da7f24f00653ebac660ac1c0821ed33d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7cb5ae9e65516ea2235f0721f6aac43c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9fff073217cd3632329e571471c581ac","signature":"d1c061dd897aea425d5bdc1eef3dcc44","impliedNodeFormat":99},{"version":"9fe5486bc173bad15a28e1502b9201e1","signature":"fd21e68265463206fe1e061e8fbc48bf","impliedNodeFormat":99},{"version":"41297becbb4884fd131c4c61790ccec5","signature":"486dda2895cd29a86eea076bf992348b","impliedNodeFormat":99},{"version":"05b531727bce843a523f00333544ae13","signature":"19beaec34d7acd8447ef7d48b1580ba9","impliedNodeFormat":99},{"version":"5c4f5d73c990b7ea5584beac3b1d05ae","signature":"bb9c5cbe2b5642913f0505cc80f9ba48","impliedNodeFormat":99},{"version":"a19bc82382d994b8cd36de3c6fe3baa9","signature":"b9f2846c3f66f6fd860c4d651f2d9069","impliedNodeFormat":99},{"version":"57c5ad4aefc71dff98a4bf400283af98","signature":"11aec920bd902cddaa9a33dc6579fafa","impliedNodeFormat":99},{"version":"47ecb5acb4efb4a21cf435fc97d25580","signature":"7b56035f337dd89a1ad0a124122dc9f9","impliedNodeFormat":99},{"version":"247cac5e0e9d58f324a39a00f3672da5","signature":"74cd9352c0440ec73e2a106cdc05bb90","impliedNodeFormat":99},{"version":"ce342d00345fa7993a3edcd95b8e63e9","impliedNodeFormat":99},{"version":"1d53c62342e907d4a5fee716b2272992","impliedNodeFormat":99},{"version":"e0f09f74fbc9ed8362aaa0ab7e497faa","signature":"cbbf75d5e99fd497741f54241d9ad11f","impliedNodeFormat":99},{"version":"796e3ad64d76f1e6a3e82d710f2dff21","signature":"e5f851b9cbed55287fc94f3e6946c092","impliedNodeFormat":99},{"version":"c71ff7f93b85a9d6da6010f741b5a5d4","signature":"928b775653d31af8bf9bc587c3e2c59a","impliedNodeFormat":99},{"version":"e8bd98ef2e81126a696216ca005ff889","signature":"8fbe7c0948dd610fd8e0b910f9d9cd8b","impliedNodeFormat":99},{"version":"579ffae9696237288d344c1a2bf64c1d","signature":"32b905ea609f9b52ab86dd36ad8a5fb1","impliedNodeFormat":99},{"version":"1f40af6b10bd5af7358006a9b79b9e43","signature":"1418c59eb1776c61e6468804dcaf680a","impliedNodeFormat":99},{"version":"076b15bdf1b615786b7b6c28bf4aa68d","signature":"7a7d5744efc85fc60b136885a1959d3f","impliedNodeFormat":99},{"version":"281b6dfcf7c6811281afcc510d46a835","signature":"374a3ae74183c8be78fbb7d899705c83","impliedNodeFormat":99},{"version":"d04cd3cdbb3c4fe6c01f0094f359e6e5","impliedNodeFormat":99},{"version":"5de4a1c72f6071870ff7ed4c8983970e","signature":"8e5d77940ce24ac10169f1abce81e352","impliedNodeFormat":99},{"version":"6125a0e87c1fa1e3968f4a2f9fe08932","signature":"4d2a6f7d872afda3e9cce1ff3b3a78fa","impliedNodeFormat":99},{"version":"72dce120c39aff65c19e9ea24026dc79","impliedNodeFormat":99},{"version":"e40a212e777f0b03180a409e04bf520a","signature":"7dfc9161866bea74502f8dcf68b39c99","impliedNodeFormat":99},{"version":"1d163304d5fe21f7c7b7da68dd1b6f42","signature":"c3709a258e762c490189fb92851ebab3","impliedNodeFormat":99},{"version":"ed9c2068e8b78dc0ba327c8f418ff48e","signature":"ba27beee41d69fe166d224d720533b44","impliedNodeFormat":99},{"version":"d15f54c4aebe535679db15337337ee09","signature":"dd271791a2fa52124b91baf09f4b5cde","impliedNodeFormat":99},{"version":"60d6deae082f7cd61e8a3626c03411c6","signature":"744e33e6c8385b997945b62ad9af89c9","impliedNodeFormat":99},{"version":"4e3ec393e1a5d3ddd98e4ec35b6d3c69","signature":"26b1ed2162a5526b199e41668313360c","impliedNodeFormat":99},{"version":"f40b9c8d3847925936791bfa1c1c91e0","signature":"dbab1ea1abc15a7a9b170d836ba952db","impliedNodeFormat":99},{"version":"aa27c8d4dc018f9755fb59eb3b833ef8","signature":"774147df881e4cb4666b06ba1ae6b894","impliedNodeFormat":99},{"version":"c93e24357fef3c49ed67cd1852973a50","signature":"de4fcb9549f1d7ac57cc36409aeb7fcc","impliedNodeFormat":99},{"version":"4d8a3982e30958c0b1a1ed803684b861","signature":"65de0567a97ddc970beae8210c0644f2","impliedNodeFormat":99},{"version":"52d83761d4dc261eae18671ae7082e71","signature":"5109aa1a0bdf4343581efb789eb218ee","impliedNodeFormat":99},{"version":"bf0e042638f33c7c2c0533116852f178","signature":"7154e76247d5e4052d5b081c5997f8d9","impliedNodeFormat":99},{"version":"8f2b92b3a90c0ae9b5607964ecef4b37","signature":"72859b8b63278e21846d6d1080817a38","impliedNodeFormat":99},{"version":"8e62b8ed33b4ff93e2d08b1bfd1a5264","signature":"e0483a26306f5d22f8c558dfb06c23ef","impliedNodeFormat":99},{"version":"2ea238c9223c02f7b4e65ebd242794c0","signature":"57035946e7b7be1aebbcf78ad3e57ef4","impliedNodeFormat":99},{"version":"c631eab509c28002bd3a29b5b23eb1f4","signature":"13e5aa2d10ad1dbc270bc65b3aab04af","impliedNodeFormat":99},{"version":"b099621e7194c9da5cf93e5cd606c45e","signature":"29566c4581a2c8fa3f5f62b358663096","impliedNodeFormat":99},{"version":"b9c6842a97260e0322274fbe557cc219","signature":"e9d68bdb496bbf1a106d15820b8023c8","impliedNodeFormat":99},{"version":"1cd39a741d11d1c7601f92de2cfb4706","signature":"708cac19d94fab00bb20d909465ccf63","impliedNodeFormat":99},{"version":"35b972130f3c69815e99405b1f32770c","signature":"3ca1d87eb1b5f8d4fb9bb93aa4b63486","impliedNodeFormat":99},{"version":"94eab91a3d965c8afb2178da3fdfa6c3","signature":"95e9e50fd78219056ef0491df4735bda","impliedNodeFormat":99},{"version":"9bb95088b695c6d2c5e6b0226ffaab94","signature":"bbb8143f4f0e50a0a6564fc255288be1","impliedNodeFormat":99},{"version":"cf33479bf08898c97a5c43e34fb72c37","signature":"57ebff3558737a54c90b97c8fb6926b0","impliedNodeFormat":99},{"version":"b4c459d210ea787af7b534cdbbe84d90","signature":"963ed1d20b80364fc47e36e6016f8486","impliedNodeFormat":99},{"version":"026778431cbe3200540e4a7c5129b290","signature":"9f0b56d577e2b22cd1aa690488f36f67","impliedNodeFormat":99},{"version":"62d24e07789fcc24965f0e0d271398ae","signature":"28511bb991e4ee6e644ed9ba3117123c","impliedNodeFormat":99},{"version":"cb7659beb3062c0360cd28bf31684383","signature":"e3e8a596569f728a062853a4025438ef","impliedNodeFormat":99},{"version":"a0b6d0f77659b38d418bff808add3297","signature":"0871117f94bf98ba24c1b5297124b4f1","impliedNodeFormat":99},{"version":"238d99f14c44af839ea823106f42f3a9","impliedNodeFormat":99},{"version":"64a335bdd843e4cc8de6767a61d5c634","impliedNodeFormat":99},{"version":"74f9a6f95ba4b075eeccf027659cc7e8","impliedNodeFormat":99},{"version":"3ed1a955d60bd51510ee19f8c2515d3b","impliedNodeFormat":99},{"version":"e899e67d42266e8eaa2592bd498b539b","signature":"21d42108a83bc18747a326976caacca7","impliedNodeFormat":99},{"version":"c1a2a9c3d292a66396d80f00822944f5","signature":"decad5973170006e2bc523e5fe9ee2e4","impliedNodeFormat":99},{"version":"117e5bde6529c658084037a1dc2bc7fe","signature":"48399b3b236612a12f82c6bd935b0cc0","impliedNodeFormat":99},{"version":"6949791a115d10a190a92ebca6ac4b0f","signature":"c7959fe68aa1de50124eab5f95961708","impliedNodeFormat":99},{"version":"5fd84cb7055cb580f7698d4a32062548","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"913b52a39743d1c11984e4e124b1f3a8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3e57a4cd3267159f3772bebd73534451","affectsGlobalScope":true,"impliedNodeFormat":1},"fe51d7a9bcdbcce1e65bbcf39b212298",{"version":"849a1873c4e917b0887368c1be897faa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"69ee0752d1e70c56ca160360425752a9","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ddc6139fafd9dfb16bb112a7b74f610","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9af0a7e3ef1c42cd066b9f8d365cc1ba","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9eca652586205dc5b07f9ba57b1c8500","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec5f75939754ce94652189ec7d0d3058","affectsGlobalScope":true,"impliedNodeFormat":1},"628b774b54637325e286752c79c12432","bb1f9e3091b88e9d0e93b7198c736af3","514fd35e5eb35bb2e5cbb908af0a0aa2","ed57ae88565308729f2327f26d684976","dcd932d6b0038f2e250e30dc10125b22","9508c917bd7e458745e222a82dd24ef0","fabf86f455f96b90538cc26320ab2765","14550b4cd9f433e0addd8b6d67614d23","cf0ac6aebc25cb780674653aaeee688e","35fef7bac8048f583e4ce6eaa0c2a4c0","6752dc653fc7a333027249fd851fdb62","b9ad7e689b46dfba362c1bf174e69018","8b0a2930dfabdf27c69c6bb1eeabcdc8","4513b1ed15523d247040689f37fa9db2","5c0c499eed773a750903d9497beafacd","2377da227d1bac82ff7b3f2081ddf8d3","beef985b474fefeb80d27fb2c8778371","c79fc9d9f09ae598a374ae7c0b5284a4","f2caa3cebb1e6be855519004830a6be0","8ebc9f2a77c900e710801214c5cb994c","ec617a0e0577dd6a3210c3b067ecb325","1db5d06e485bd82d6d5f6e36925a8714","24b864518967840216c779b5e5f00975","8719cd8047700bfb6046798390053823","f2840afb502c94db92dab0fb8d27812f","a7e7d08b372210c203745d3eac61a411","531183cc80535e0e94226d720e5eb038","f627eb958ca52c85e42f04dce4661f86","9a43fc665bce9012a3d5fe1b574ff4dc","13f4b4da6546a34719fd6bde15fb63dd","a589216508844bfc00e62fc2d97fda45","865aea1c3209e31b076cb6fe780e769e","12e64aaf26af0f5c8f1b263dd66e3feb","928971ebbcdf5b093ef37669b33bddf6","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","9aafd1f29b4d8861c1c6c34bf83c0721",{"version":"a127795c4dad633990c87aa0b86831e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d0fd03004a6221614a1eaf764f324f74","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"45df94b3c51b898624bacc2bcd6d9eb2","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7d352f71d1b1bcc12c79dd0e4597537c","affectsGlobalScope":true,"impliedNodeFormat":1},"9a624e1940639eca005bbfa0b0795e0c","bc36d91e82ffa66a49621888701e71dc","f8c976cb12f3420b8cc8d03d579ada06",{"version":"ba7e459f9d165c391370248c1b6d27e6","affectsGlobalScope":true,"impliedNodeFormat":1},"1bd6f05fb97456c25967ff016b829638","10ea0c4d80d7a0333c1e857199853b74",{"version":"9fc8636e70e507ea8d98a7aabd265ee5","affectsGlobalScope":true,"impliedNodeFormat":1},"b2b472cd0bf0f8d5f022e00ca1c401f4",{"version":"2d78fd1079375d411033f64faae0c89b","affectsGlobalScope":true,"impliedNodeFormat":1},"2c854dda7450575791a388d8f0f29e31","61dd307aef9adea6fd307b5364c843da","4eb05de87a87ea4d8a41f4b2229bada4","5c5c7649711b5d982cf39fe9b6744080","958d9865bfe33c94973e3d58ac66b1d0",{"version":"e69aeb78ba4fd8c4493f80e9e81737e5","affectsGlobalScope":true,"impliedNodeFormat":1},"f2c1804a9a9d8f64eb2a67a797f9baef","b857d33151fcd39b213bb7c17cf12969","2e1cff79cd7dfb7d8281322931a687bd","3c217295039c32f3fecd8f7bab2e43e3","9fb3b9387eadc1aa053821d6c96b5769","1690a4da2f50085917cb933f6f2556cb","9d6686cc730682ed548fac9462ac4346",{"version":"f6be7fda5b8729494c54d9983698c290","affectsGlobalScope":true,"impliedNodeFormat":1},"0bb08d83737c91e9ca2c2c3b99ae99a2","a4e9f4bc0d06a3823fff0f55f31eac93","43b4e399ab399cf8ecd47e481abddeeb",{"version":"0769bf84d24c283d5b7d02cba94e7234","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9ffa943f975def71e2b112b28f946caa","affectsGlobalScope":true,"impliedNodeFormat":1},"d1dfd59bf8b7e71f40ee1d3a2f1b5fcf","9292aa21e6668349e0642faa07be7750","8ccb81bc00ea59aa908d31dbe50bb31a","0f80958d77cd6301b43c1d7904e3e4bc","0548d84bf13d6b5d3ef34d9755610be1","65398feea84a451329cd99b26a547514","b7e2bcd9d00432e1792823ed5da41128","739428f35658f9391641b3dfc9433fb2","c8206d568b54e5ea06131963eecd576a","15878f4f50c2e562c0768eb735c2aed5",{"version":"4e6c56c4b055178cfc9edc254d744a5b","affectsGlobalScope":true,"impliedNodeFormat":1},"329e5617fbab8b2de9bffcc41d07bb5d","6b82bee8c1c2c6d1a7f4ae0c8a47a006",{"version":"ea001113f32054398156e39095350f0a","affectsGlobalScope":true,"impliedNodeFormat":1},"7345aabef559e464447357f201cc05f8","0807835722b35673885024d2b10c282a","d63b35c1a5097295f0659f5583c8fb83","3509aa3de97926c2922f378a248ddb48",{"version":"78ce1294fea4c9fccd0600374816a75f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9edcc62fa17b31ebfd8b865c8304a4a3","affectsGlobalScope":true,"impliedNodeFormat":1},"b0cbfb9126a2a747bd567e9b79c65b58","4cfe493c958076cdc2b0609a8f889091","3bb54ead687024118ffeb8d7337370a2",{"version":"90c1b6a898bba7f42c0020815dc93eba","affectsGlobalScope":true,"impliedNodeFormat":1},"aa2008c843fac96764def81cfdf70c58","1852b3a174acea86c49700b15f7d1539"],"fileIdsList":[[152,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[147,148,149,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,193,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[150,151,152,153,154,155,156,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,249,250],[152,193,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,193,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[140,141,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[139,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,169,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,160,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,162,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,160,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,157,158,161,164,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,172,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,157,163,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,186,187,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,161,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,186,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,159,160,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,159,160,161,162,163,164,165,166,167,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,187,188,189,190,191,192,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,180,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,172,173,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,163,165,173,174,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,164,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,157,160,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,169,173,174,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,169,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,163,165,168,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,157,162,165,172,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,160,165,186,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[130,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[90,91,92,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[95,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,92,93,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[92,95,127,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,92,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[89,92,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[92,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,92,95,127,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[142,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[113,115,120,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,111,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,94,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,95,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,96,112,115,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,94,111,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,96,112,117,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,89,90,91,92,93,94,95,96,102,105,107,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,91,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[106,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[103,104,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[103,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[137,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,100,101,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,100,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[144,145,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,144,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[108,109,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,108,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[92,94,95,111,113,114,115,123,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[97,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250]],"options":{"allowUnreachableCode":false,"allowUnusedLabels":false,"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"isolatedDeclarations":true,"importHelpers":true,"module":199,"newLine":2,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noPropertyAccessFromIndexSignature":true,"noUncheckedIndexedAccess":true,"noEmitOnError":true,"noUnusedLocals":true,"noUnusedParameters":true,"noImplicitOverride":true,"noUncheckedSideEffectImports":true,"outDir":"./","removeComments":false,"rootDir":"../src","skipLibCheck":true,"strict":true,"stripInternal":true,"skipDefaultLibCheck":false,"sourceMap":true,"target":99,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true,"allowSyntheticDefaultImports":true,"esModuleInterop":true},"referencedMap":[[198,1],[199,2],[200,3],[152,4],[201,5],[202,6],[203,7],[147,8],[150,9],[148,8],[149,8],[204,10],[205,11],[206,12],[207,13],[208,14],[209,15],[210,16],[211,17],[212,18],[213,19],[214,20],[153,8],[151,8],[215,21],[216,22],[217,23],[251,24],[218,25],[219,26],[220,27],[221,28],[222,29],[223,30],[224,31],[225,32],[226,33],[227,34],[228,35],[229,36],[230,37],[231,38],[232,39],[233,40],[235,41],[234,42],[236,43],[237,44],[238,45],[239,46],[240,47],[241,48],[242,49],[243,50],[244,51],[245,52],[246,53],[247,54],[248,55],[154,8],[155,8],[156,8],[194,56],[195,8],[196,8],[197,8],[249,57],[250,58],[86,8],[87,8],[15,8],[14,8],[2,8],[16,8],[17,8],[18,8],[19,8],[20,8],[21,8],[22,8],[23,8],[3,8],[24,8],[25,8],[4,8],[26,8],[30,8],[27,8],[28,8],[29,8],[31,8],[32,8],[33,8],[5,8],[34,8],[35,8],[36,8],[37,8],[6,8],[41,8],[38,8],[39,8],[40,8],[42,8],[7,8],[43,8],[48,8],[49,8],[44,8],[45,8],[46,8],[47,8],[8,8],[53,8],[50,8],[51,8],[52,8],[54,8],[9,8],[55,8],[56,8],[57,8],[59,8],[58,8],[60,8],[61,8],[10,8],[62,8],[63,8],[64,8],[11,8],[65,8],[66,8],[67,8],[68,8],[69,8],[70,8],[12,8],[71,8],[72,8],[73,8],[74,8],[75,8],[1,8],[76,8],[77,8],[13,8],[78,8],[79,8],[80,8],[81,8],[82,8],[83,8],[84,8],[85,8],[142,59],[139,8],[141,60],[140,60],[172,61],[182,62],[171,61],[192,63],[163,64],[162,8],[191,65],[185,66],[190,64],[165,67],[179,68],[164,69],[188,70],[160,71],[159,65],[189,72],[161,73],[166,62],[167,8],[170,62],[157,8],[193,74],[183,75],[174,76],[175,77],[177,78],[173,79],[176,80],[186,65],[168,81],[169,82],[178,83],[158,8],[181,75],[180,62],[184,8],[187,84],[130,85],[131,86],[132,8],[122,87],[127,88],[125,89],[128,90],[123,91],[124,92],[126,93],[129,94],[143,95],[89,8],[93,8],[92,96],[90,8],[88,8],[134,97],[133,8],[114,98],[113,99],[115,100],[120,101],[116,100],[119,102],[121,98],[117,100],[118,103],[137,104],[91,105],[94,106],[95,106],[111,106],[96,106],[107,107],[106,8],[105,108],[103,109],[104,110],[138,111],[102,112],[99,109],[100,8],[101,113],[144,8],[146,114],[145,115],[110,116],[108,109],[109,117],[112,105],[135,118],[136,105],[97,8],[98,119]],"latestChangedDtsFile":"./testing/index.d.ts"}
|
|
1
|
+
{"version":"7.0.2","root":[[88,96],[99,138],[143,146]],"packageJsons":["../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/fast-check/package.json","../../../node_modules/.pnpm/punycode@2.3.1/node_modules/punycode/package.json","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/package.json","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/package.json","../package.json","../../client/package.json"],"missingPackageJsons":["../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/assert/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/assert/strict/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/async_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/buffer/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/child_process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/cluster/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/console/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/constants/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/crypto/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/dgram/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/diagnostics_channel/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/dns/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/dns/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/domain/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/fs/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/fs/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/http/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/http2/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/https/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/inspector/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/inspector/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/module/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/net/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/assert/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dns/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/fs/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/readline/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/timers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/os/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/path/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/path/posix/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/path/win32/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/perf_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/punycode/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/querystring/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/readline/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/readline/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/repl/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/consumers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/stream/web/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/string_decoder/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/timers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/timers/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/tls/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/trace_events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/tty/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/url/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/util/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/util/types/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/v8/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/vm/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/wasi/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/worker_threads/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/zlib/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/assert/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/assert/strict/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/async_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/buffer/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/child_process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/cluster/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/console/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/constants/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/crypto/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/dgram/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/diagnostics_channel/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/dns/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/dns/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/domain/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/fs/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/fs/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/http/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/http2/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/https/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/inspector/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/inspector/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/module/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/net/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/os/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/path/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/path/posix/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/path/win32/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/perf_hooks/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/process/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/punycode/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/querystring/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/readline/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/readline/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/repl/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/consumers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/stream/web/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/string_decoder/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/timers/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/timers/promises/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/tls/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/trace_events/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/tty/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/url/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/util/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/util/types/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/v8/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/vm/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/wasi/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/worker_threads/package.json","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/zlib/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/fast-check/lib/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/pure-rand/types/JumpableRandomGenerator/package.json","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/pure-rand/types/RandomGenerator/package.json","../../../node_modules/.pnpm/node_modules/@types/assert/package.json","../../../node_modules/.pnpm/node_modules/@types/assert/strict/package.json","../../../node_modules/.pnpm/node_modules/@types/async_hooks/package.json","../../../node_modules/.pnpm/node_modules/@types/buffer/package.json","../../../node_modules/.pnpm/node_modules/@types/child_process/package.json","../../../node_modules/.pnpm/node_modules/@types/cluster/package.json","../../../node_modules/.pnpm/node_modules/@types/console/package.json","../../../node_modules/.pnpm/node_modules/@types/constants/package.json","../../../node_modules/.pnpm/node_modules/@types/crypto/package.json","../../../node_modules/.pnpm/node_modules/@types/dgram/package.json","../../../node_modules/.pnpm/node_modules/@types/diagnostics_channel/package.json","../../../node_modules/.pnpm/node_modules/@types/dns/package.json","../../../node_modules/.pnpm/node_modules/@types/dns/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/domain/package.json","../../../node_modules/.pnpm/node_modules/@types/events/package.json","../../../node_modules/.pnpm/node_modules/@types/fs/package.json","../../../node_modules/.pnpm/node_modules/@types/fs/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/http/package.json","../../../node_modules/.pnpm/node_modules/@types/http2/package.json","../../../node_modules/.pnpm/node_modules/@types/https/package.json","../../../node_modules/.pnpm/node_modules/@types/inspector/package.json","../../../node_modules/.pnpm/node_modules/@types/inspector/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/module/package.json","../../../node_modules/.pnpm/node_modules/@types/net/package.json","../../../node_modules/.pnpm/node_modules/@types/os/package.json","../../../node_modules/.pnpm/node_modules/@types/path/package.json","../../../node_modules/.pnpm/node_modules/@types/path/posix/package.json","../../../node_modules/.pnpm/node_modules/@types/path/win32/package.json","../../../node_modules/.pnpm/node_modules/@types/perf_hooks/package.json","../../../node_modules/.pnpm/node_modules/@types/process/package.json","../../../node_modules/.pnpm/node_modules/@types/punycode/package.json","../../../node_modules/.pnpm/node_modules/@types/querystring/package.json","../../../node_modules/.pnpm/node_modules/@types/readline/package.json","../../../node_modules/.pnpm/node_modules/@types/readline/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/repl/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/consumers/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/stream/web/package.json","../../../node_modules/.pnpm/node_modules/@types/string_decoder/package.json","../../../node_modules/.pnpm/node_modules/@types/timers/package.json","../../../node_modules/.pnpm/node_modules/@types/timers/promises/package.json","../../../node_modules/.pnpm/node_modules/@types/tls/package.json","../../../node_modules/.pnpm/node_modules/@types/trace_events/package.json","../../../node_modules/.pnpm/node_modules/@types/tty/package.json","../../../node_modules/.pnpm/node_modules/@types/url/package.json","../../../node_modules/.pnpm/node_modules/@types/util/package.json","../../../node_modules/.pnpm/node_modules/@types/util/types/package.json","../../../node_modules/.pnpm/node_modules/@types/v8/package.json","../../../node_modules/.pnpm/node_modules/@types/vm/package.json","../../../node_modules/.pnpm/node_modules/@types/wasi/package.json","../../../node_modules/.pnpm/node_modules/@types/worker_threads/package.json","../../../node_modules/.pnpm/node_modules/@types/zlib/package.json","../../../node_modules/.pnpm/node_modules/assert/package.json","../../../node_modules/.pnpm/node_modules/assert/strict/package.json","../../../node_modules/.pnpm/node_modules/async_hooks/package.json","../../../node_modules/.pnpm/node_modules/buffer/package.json","../../../node_modules/.pnpm/node_modules/child_process/package.json","../../../node_modules/.pnpm/node_modules/cluster/package.json","../../../node_modules/.pnpm/node_modules/console/package.json","../../../node_modules/.pnpm/node_modules/constants/package.json","../../../node_modules/.pnpm/node_modules/crypto/package.json","../../../node_modules/.pnpm/node_modules/dgram/package.json","../../../node_modules/.pnpm/node_modules/diagnostics_channel/package.json","../../../node_modules/.pnpm/node_modules/dns/package.json","../../../node_modules/.pnpm/node_modules/dns/promises/package.json","../../../node_modules/.pnpm/node_modules/domain/package.json","../../../node_modules/.pnpm/node_modules/events/package.json","../../../node_modules/.pnpm/node_modules/fs/package.json","../../../node_modules/.pnpm/node_modules/fs/promises/package.json","../../../node_modules/.pnpm/node_modules/http/package.json","../../../node_modules/.pnpm/node_modules/http2/package.json","../../../node_modules/.pnpm/node_modules/https/package.json","../../../node_modules/.pnpm/node_modules/inspector/package.json","../../../node_modules/.pnpm/node_modules/inspector/promises/package.json","../../../node_modules/.pnpm/node_modules/module/package.json","../../../node_modules/.pnpm/node_modules/net/package.json","../../../node_modules/.pnpm/node_modules/os/package.json","../../../node_modules/.pnpm/node_modules/path/package.json","../../../node_modules/.pnpm/node_modules/path/posix/package.json","../../../node_modules/.pnpm/node_modules/path/win32/package.json","../../../node_modules/.pnpm/node_modules/perf_hooks/package.json","../../../node_modules/.pnpm/node_modules/process/package.json","../../../node_modules/.pnpm/node_modules/querystring/package.json","../../../node_modules/.pnpm/node_modules/readline/package.json","../../../node_modules/.pnpm/node_modules/readline/promises/package.json","../../../node_modules/.pnpm/node_modules/repl/package.json","../../../node_modules/.pnpm/node_modules/stream/consumers/package.json","../../../node_modules/.pnpm/node_modules/stream/package.json","../../../node_modules/.pnpm/node_modules/stream/promises/package.json","../../../node_modules/.pnpm/node_modules/stream/web/package.json","../../../node_modules/.pnpm/node_modules/string_decoder/package.json","../../../node_modules/.pnpm/node_modules/timers/package.json","../../../node_modules/.pnpm/node_modules/timers/promises/package.json","../../../node_modules/.pnpm/node_modules/tls/package.json","../../../node_modules/.pnpm/node_modules/trace_events/package.json","../../../node_modules/.pnpm/node_modules/tty/package.json","../../../node_modules/.pnpm/node_modules/url/package.json","../../../node_modules/.pnpm/node_modules/util/package.json","../../../node_modules/.pnpm/node_modules/util/types/package.json","../../../node_modules/.pnpm/node_modules/v8/package.json","../../../node_modules/.pnpm/node_modules/vm/package.json","../../../node_modules/.pnpm/node_modules/wasi/package.json","../../../node_modules/.pnpm/node_modules/worker_threads/package.json","../../../node_modules/.pnpm/node_modules/zlib/package.json","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/types/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/buffer/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/events/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/net/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/stream/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/stream/web/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/tls/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/url/package.json","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/worker_threads/package.json","../../../node_modules/assert/package.json","../../../node_modules/assert/strict/package.json","../../../node_modules/async_hooks/package.json","../../../node_modules/buffer/package.json","../../../node_modules/child_process/package.json","../../../node_modules/cluster/package.json","../../../node_modules/console/package.json","../../../node_modules/constants/package.json","../../../node_modules/crypto/package.json","../../../node_modules/dgram/package.json","../../../node_modules/diagnostics_channel/package.json","../../../node_modules/dns/package.json","../../../node_modules/dns/promises/package.json","../../../node_modules/domain/package.json","../../../node_modules/events/package.json","../../../node_modules/fs/package.json","../../../node_modules/fs/promises/package.json","../../../node_modules/http/package.json","../../../node_modules/http2/package.json","../../../node_modules/https/package.json","../../../node_modules/inspector/package.json","../../../node_modules/inspector/promises/package.json","../../../node_modules/module/package.json","../../../node_modules/net/package.json","../../../node_modules/os/package.json","../../../node_modules/path/package.json","../../../node_modules/path/posix/package.json","../../../node_modules/path/win32/package.json","../../../node_modules/perf_hooks/package.json","../../../node_modules/process/package.json","../../../node_modules/punycode/package.json","../../../node_modules/querystring/package.json","../../../node_modules/readline/package.json","../../../node_modules/readline/promises/package.json","../../../node_modules/repl/package.json","../../../node_modules/stream/consumers/package.json","../../../node_modules/stream/package.json","../../../node_modules/stream/promises/package.json","../../../node_modules/stream/web/package.json","../../../node_modules/string_decoder/package.json","../../../node_modules/timers/package.json","../../../node_modules/timers/promises/package.json","../../../node_modules/tls/package.json","../../../node_modules/trace_events/package.json","../../../node_modules/tslib/package.json","../../../node_modules/tty/package.json","../../../node_modules/url/package.json","../../../node_modules/util/package.json","../../../node_modules/util/types/package.json","../../../node_modules/v8/package.json","../../../node_modules/vm/package.json","../../../node_modules/wasi/package.json","../../../node_modules/worker_threads/package.json","../../../node_modules/zlib/package.json","../node_modules/@procedures/client/query/package.json","../node_modules/@types/tslib/package.json","../node_modules/tslib/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.es2023.d.ts","lib.es2024.d.ts","lib.es2025.d.ts","lib.esnext.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.es2023.array.d.ts","lib.es2023.collection.d.ts","lib.es2023.intl.d.ts","lib.es2024.arraybuffer.d.ts","lib.es2024.collection.d.ts","lib.es2024.object.d.ts","lib.es2024.promise.d.ts","lib.es2024.regexp.d.ts","lib.es2024.sharedmemory.d.ts","lib.es2024.string.d.ts","lib.es2025.collection.d.ts","lib.es2025.float16.d.ts","lib.es2025.intl.d.ts","lib.es2025.iterator.d.ts","lib.es2025.promise.d.ts","lib.es2025.regexp.d.ts","lib.esnext.array.d.ts","lib.esnext.collection.d.ts","lib.esnext.date.d.ts","lib.esnext.decorators.d.ts","lib.esnext.disposable.d.ts","lib.esnext.error.d.ts","lib.esnext.intl.d.ts","lib.esnext.sharedmemory.d.ts","lib.esnext.temporal.d.ts","lib.esnext.typedarrays.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../src/core/traits.ts","../src/core/effects.ts","../src/core/policies.ts","../src/interfaces/collection.ts","../src/core/middleware.ts","../src/core/events.ts","../src/interfaces/list.ts","../src/interfaces/map.ts","../src/interfaces/set.ts","../../client/dist/procedures/collection/precondition.d.ts","../../client/dist/procedures/collection/query.d.ts","../src/storage/interface.ts","../src/storage/listeners.ts","../src/storage/memory.ts","../src/storage/index.ts","../src/overlay/overlay.ts","../src/overlay/stacks.ts","../src/overlay/index.ts","../src/order/rank.ts","../src/order/index.ts","../src/undo/inverse.ts","../src/undo/undo-log.ts","../src/undo/index.ts","../src/interfaces/queue.ts","../src/utils/defaults.ts","../src/impl/array-list.ts","../src/impl/array-deque.ts","../src/impl/hash-map.ts","../src/impl/linked-hash-map.ts","../src/impl/tree-map.ts","../src/impl/tree-set.ts","../src/impl/linked-list.ts","../src/impl/hash-set.ts","../src/impl/priority-queue.ts","../src/behaviors/bounded.ts","../src/behaviors/readonly.ts","../src/behaviors/safe.ts","../src/behaviors/evented.ts","../src/behaviors/synchronized.ts","../src/behaviors/composite.ts","../src/behaviors/lru.ts","../src/behaviors/ttl.ts","../src/async/async-queue.ts","../src/async/channels.ts","../src/async/settled.ts","../src/fx/iter.ts","../src/fx/collectors.ts","../src/utils/factories.ts","../src/utils/helpers.ts","../src/index.ts","../src/register.ts","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/RandomGenerator-DcXj09Ch.d.ts","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/types/RandomGenerator.d.ts","../../../node_modules/.pnpm/pure-rand@8.4.2/node_modules/pure-rand/lib/esm/types/JumpableRandomGenerator.d.ts","../../../node_modules/.pnpm/fast-check@4.10.2/node_modules/fast-check/lib/fast-check.d.ts","../src/contracts/model.ts","../src/testing/check.ts","../src/testing/storage-contract.ts","../src/testing/index.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/globals.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/header.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/readable.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/file.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/fetch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/formdata.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/connector.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-origin.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool-stats.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/handlers.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-client.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-pool.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-errors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-handler.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-agent.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/api.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/interceptors.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/util.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cookies.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/patch.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/websocket.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/eventsource.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/filereader.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/content-type.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cache.d.ts","../../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/index.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/navigator.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/storage.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/web-globals/streams.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/assert.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/assert/strict.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/async_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/buffer.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/child_process.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/cluster.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/console.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/constants.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/crypto.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dgram.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dns.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/dns/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/domain.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/events.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/fs.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/fs/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/http.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/http2.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/https.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/inspector.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/module.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/net.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/os.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/path.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/process.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/punycode.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/querystring.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/readline.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/readline/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/repl.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/sea.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/sqlite.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/stream/web.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/string_decoder.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/test.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/timers.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/timers/promises.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/tls.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/trace_events.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/tty.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/url.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/util.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/v8.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/vm.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/wasi.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/worker_threads.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/zlib.d.ts","../../../node_modules/.pnpm/@types+node@22.20.5/node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7","9443a7f109277ffaa79d893ed2549995","793cee405385076e27c24f409659dccd","09f69c6610266eaee1ac9e3e30df2c71","62bad718844246b8e17547f37bad6085",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8cf777fe00349b71ee9c4b6f3fe7fd19","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"74f96bc192530c9723f572bfff3d3078","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1df91c56b25955c56387426f378173c5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"38856f70edcd2115c355d96ec77cc09e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"de8700156c1275465bcd473c28b359aa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d47cfdb6ede40518357bb5a4cd7cd9fb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6e5773860cd9e5b15e683113f642ab47","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"30ff5fe1682f7fcd629880476ca3c2e0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"bf23d7d1b40b9015b694ddc2f011752f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2cc585d42e2c548f9f24a30a1989fd33","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"713906ce9d332d2242b7f05ed9304be3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0219894bfe5042c7e1aa2d22e4a91ed0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6009ffff7e43c93318804d2d28e37fe3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"03be89b227587594fbb50509fc1c2e45","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b30df52dc24740c0bad7c55c3511df7d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ab8d3c9b5ed5c2ab8f383607eef439f0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d950ec671d0a8e07f3c1a31e94abed86","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1abef2ace5eccb02d60dd73cd5a5ee4c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f5f0a3044029d1cc081b5887eb4deb07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d57c697f1446940ec4bfe669c962e2c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"be41035d7b941482a1e1ae6a5c5dcca5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"10f7d9da7564f27f8ddf4a162b6da6d3","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1d0520af549e0c3581f15173cc713ca1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d65083f97fd741cff028472563eddb79","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"da7f24f00653ebac660ac1c0821ed33d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7cb5ae9e65516ea2235f0721f6aac43c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9fff073217cd3632329e571471c581ac","signature":"d1c061dd897aea425d5bdc1eef3dcc44","impliedNodeFormat":99},{"version":"9fe5486bc173bad15a28e1502b9201e1","signature":"fd21e68265463206fe1e061e8fbc48bf","impliedNodeFormat":99},{"version":"41297becbb4884fd131c4c61790ccec5","signature":"486dda2895cd29a86eea076bf992348b","impliedNodeFormat":99},{"version":"05b531727bce843a523f00333544ae13","signature":"19beaec34d7acd8447ef7d48b1580ba9","impliedNodeFormat":99},{"version":"5c4f5d73c990b7ea5584beac3b1d05ae","signature":"bb9c5cbe2b5642913f0505cc80f9ba48","impliedNodeFormat":99},{"version":"a19bc82382d994b8cd36de3c6fe3baa9","signature":"b9f2846c3f66f6fd860c4d651f2d9069","impliedNodeFormat":99},{"version":"57c5ad4aefc71dff98a4bf400283af98","signature":"11aec920bd902cddaa9a33dc6579fafa","impliedNodeFormat":99},{"version":"47ecb5acb4efb4a21cf435fc97d25580","signature":"7b56035f337dd89a1ad0a124122dc9f9","impliedNodeFormat":99},{"version":"247cac5e0e9d58f324a39a00f3672da5","signature":"74cd9352c0440ec73e2a106cdc05bb90","impliedNodeFormat":99},{"version":"ce342d00345fa7993a3edcd95b8e63e9","impliedNodeFormat":99},{"version":"1d53c62342e907d4a5fee716b2272992","impliedNodeFormat":99},{"version":"e0f09f74fbc9ed8362aaa0ab7e497faa","signature":"cbbf75d5e99fd497741f54241d9ad11f","impliedNodeFormat":99},{"version":"796e3ad64d76f1e6a3e82d710f2dff21","signature":"e5f851b9cbed55287fc94f3e6946c092","impliedNodeFormat":99},{"version":"c71ff7f93b85a9d6da6010f741b5a5d4","signature":"928b775653d31af8bf9bc587c3e2c59a","impliedNodeFormat":99},{"version":"e8bd98ef2e81126a696216ca005ff889","signature":"8fbe7c0948dd610fd8e0b910f9d9cd8b","impliedNodeFormat":99},{"version":"579ffae9696237288d344c1a2bf64c1d","signature":"32b905ea609f9b52ab86dd36ad8a5fb1","impliedNodeFormat":99},{"version":"1f40af6b10bd5af7358006a9b79b9e43","signature":"1418c59eb1776c61e6468804dcaf680a","impliedNodeFormat":99},{"version":"076b15bdf1b615786b7b6c28bf4aa68d","signature":"7a7d5744efc85fc60b136885a1959d3f","impliedNodeFormat":99},{"version":"281b6dfcf7c6811281afcc510d46a835","signature":"374a3ae74183c8be78fbb7d899705c83","impliedNodeFormat":99},{"version":"d04cd3cdbb3c4fe6c01f0094f359e6e5","impliedNodeFormat":99},{"version":"5de4a1c72f6071870ff7ed4c8983970e","signature":"8e5d77940ce24ac10169f1abce81e352","impliedNodeFormat":99},{"version":"6125a0e87c1fa1e3968f4a2f9fe08932","signature":"4d2a6f7d872afda3e9cce1ff3b3a78fa","impliedNodeFormat":99},{"version":"72dce120c39aff65c19e9ea24026dc79","impliedNodeFormat":99},{"version":"e40a212e777f0b03180a409e04bf520a","signature":"7dfc9161866bea74502f8dcf68b39c99","impliedNodeFormat":99},{"version":"1d163304d5fe21f7c7b7da68dd1b6f42","signature":"c3709a258e762c490189fb92851ebab3","impliedNodeFormat":99},{"version":"ed9c2068e8b78dc0ba327c8f418ff48e","signature":"ba27beee41d69fe166d224d720533b44","impliedNodeFormat":99},{"version":"d15f54c4aebe535679db15337337ee09","signature":"dd271791a2fa52124b91baf09f4b5cde","impliedNodeFormat":99},{"version":"60d6deae082f7cd61e8a3626c03411c6","signature":"744e33e6c8385b997945b62ad9af89c9","impliedNodeFormat":99},{"version":"4e3ec393e1a5d3ddd98e4ec35b6d3c69","signature":"26b1ed2162a5526b199e41668313360c","impliedNodeFormat":99},{"version":"f40b9c8d3847925936791bfa1c1c91e0","signature":"dbab1ea1abc15a7a9b170d836ba952db","impliedNodeFormat":99},{"version":"aa27c8d4dc018f9755fb59eb3b833ef8","signature":"774147df881e4cb4666b06ba1ae6b894","impliedNodeFormat":99},{"version":"c93e24357fef3c49ed67cd1852973a50","signature":"de4fcb9549f1d7ac57cc36409aeb7fcc","impliedNodeFormat":99},{"version":"4d8a3982e30958c0b1a1ed803684b861","signature":"65de0567a97ddc970beae8210c0644f2","impliedNodeFormat":99},{"version":"52d83761d4dc261eae18671ae7082e71","signature":"5109aa1a0bdf4343581efb789eb218ee","impliedNodeFormat":99},{"version":"bf0e042638f33c7c2c0533116852f178","signature":"7154e76247d5e4052d5b081c5997f8d9","impliedNodeFormat":99},{"version":"8f2b92b3a90c0ae9b5607964ecef4b37","signature":"72859b8b63278e21846d6d1080817a38","impliedNodeFormat":99},{"version":"8e62b8ed33b4ff93e2d08b1bfd1a5264","signature":"e0483a26306f5d22f8c558dfb06c23ef","impliedNodeFormat":99},{"version":"2ea238c9223c02f7b4e65ebd242794c0","signature":"57035946e7b7be1aebbcf78ad3e57ef4","impliedNodeFormat":99},{"version":"c631eab509c28002bd3a29b5b23eb1f4","signature":"13e5aa2d10ad1dbc270bc65b3aab04af","impliedNodeFormat":99},{"version":"b099621e7194c9da5cf93e5cd606c45e","signature":"29566c4581a2c8fa3f5f62b358663096","impliedNodeFormat":99},{"version":"b9c6842a97260e0322274fbe557cc219","signature":"e9d68bdb496bbf1a106d15820b8023c8","impliedNodeFormat":99},{"version":"1cd39a741d11d1c7601f92de2cfb4706","signature":"708cac19d94fab00bb20d909465ccf63","impliedNodeFormat":99},{"version":"1a2811a9d55d28328d7d88950fe1ea47","signature":"1414558380dfe8befe79cd27663695b4","impliedNodeFormat":99},{"version":"90c6b4843d91f5aeeecc44c92fec8d02","signature":"4bac9d0567d1c7c864ec3a8064ca13db","impliedNodeFormat":99},{"version":"9bb95088b695c6d2c5e6b0226ffaab94","signature":"bbb8143f4f0e50a0a6564fc255288be1","impliedNodeFormat":99},{"version":"cf33479bf08898c97a5c43e34fb72c37","signature":"57ebff3558737a54c90b97c8fb6926b0","impliedNodeFormat":99},{"version":"b4c459d210ea787af7b534cdbbe84d90","signature":"963ed1d20b80364fc47e36e6016f8486","impliedNodeFormat":99},{"version":"026778431cbe3200540e4a7c5129b290","signature":"9f0b56d577e2b22cd1aa690488f36f67","impliedNodeFormat":99},{"version":"62d24e07789fcc24965f0e0d271398ae","signature":"28511bb991e4ee6e644ed9ba3117123c","impliedNodeFormat":99},{"version":"cb7659beb3062c0360cd28bf31684383","signature":"e3e8a596569f728a062853a4025438ef","impliedNodeFormat":99},{"version":"a0b6d0f77659b38d418bff808add3297","signature":"0871117f94bf98ba24c1b5297124b4f1","impliedNodeFormat":99},{"version":"238d99f14c44af839ea823106f42f3a9","impliedNodeFormat":99},{"version":"64a335bdd843e4cc8de6767a61d5c634","impliedNodeFormat":99},{"version":"74f9a6f95ba4b075eeccf027659cc7e8","impliedNodeFormat":99},{"version":"3ed1a955d60bd51510ee19f8c2515d3b","impliedNodeFormat":99},{"version":"e899e67d42266e8eaa2592bd498b539b","signature":"21d42108a83bc18747a326976caacca7","impliedNodeFormat":99},{"version":"c1a2a9c3d292a66396d80f00822944f5","signature":"decad5973170006e2bc523e5fe9ee2e4","impliedNodeFormat":99},{"version":"117e5bde6529c658084037a1dc2bc7fe","signature":"48399b3b236612a12f82c6bd935b0cc0","impliedNodeFormat":99},{"version":"6949791a115d10a190a92ebca6ac4b0f","signature":"c7959fe68aa1de50124eab5f95961708","impliedNodeFormat":99},{"version":"5fd84cb7055cb580f7698d4a32062548","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"913b52a39743d1c11984e4e124b1f3a8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3e57a4cd3267159f3772bebd73534451","affectsGlobalScope":true,"impliedNodeFormat":1},"fe51d7a9bcdbcce1e65bbcf39b212298",{"version":"849a1873c4e917b0887368c1be897faa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"69ee0752d1e70c56ca160360425752a9","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ddc6139fafd9dfb16bb112a7b74f610","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9af0a7e3ef1c42cd066b9f8d365cc1ba","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9eca652586205dc5b07f9ba57b1c8500","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec5f75939754ce94652189ec7d0d3058","affectsGlobalScope":true,"impliedNodeFormat":1},"628b774b54637325e286752c79c12432","bb1f9e3091b88e9d0e93b7198c736af3","514fd35e5eb35bb2e5cbb908af0a0aa2","ed57ae88565308729f2327f26d684976","dcd932d6b0038f2e250e30dc10125b22","9508c917bd7e458745e222a82dd24ef0","fabf86f455f96b90538cc26320ab2765","14550b4cd9f433e0addd8b6d67614d23","cf0ac6aebc25cb780674653aaeee688e","35fef7bac8048f583e4ce6eaa0c2a4c0","6752dc653fc7a333027249fd851fdb62","b9ad7e689b46dfba362c1bf174e69018","8b0a2930dfabdf27c69c6bb1eeabcdc8","4513b1ed15523d247040689f37fa9db2","5c0c499eed773a750903d9497beafacd","2377da227d1bac82ff7b3f2081ddf8d3","beef985b474fefeb80d27fb2c8778371","c79fc9d9f09ae598a374ae7c0b5284a4","f2caa3cebb1e6be855519004830a6be0","8ebc9f2a77c900e710801214c5cb994c","ec617a0e0577dd6a3210c3b067ecb325","1db5d06e485bd82d6d5f6e36925a8714","24b864518967840216c779b5e5f00975","8719cd8047700bfb6046798390053823","f2840afb502c94db92dab0fb8d27812f","a7e7d08b372210c203745d3eac61a411","531183cc80535e0e94226d720e5eb038","f627eb958ca52c85e42f04dce4661f86","9a43fc665bce9012a3d5fe1b574ff4dc","13f4b4da6546a34719fd6bde15fb63dd","a589216508844bfc00e62fc2d97fda45","865aea1c3209e31b076cb6fe780e769e","12e64aaf26af0f5c8f1b263dd66e3feb","928971ebbcdf5b093ef37669b33bddf6","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","9aafd1f29b4d8861c1c6c34bf83c0721",{"version":"a127795c4dad633990c87aa0b86831e5","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d0fd03004a6221614a1eaf764f324f74","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"45df94b3c51b898624bacc2bcd6d9eb2","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7d352f71d1b1bcc12c79dd0e4597537c","affectsGlobalScope":true,"impliedNodeFormat":1},"9a624e1940639eca005bbfa0b0795e0c","bc36d91e82ffa66a49621888701e71dc","f8c976cb12f3420b8cc8d03d579ada06",{"version":"ba7e459f9d165c391370248c1b6d27e6","affectsGlobalScope":true,"impliedNodeFormat":1},"1bd6f05fb97456c25967ff016b829638","10ea0c4d80d7a0333c1e857199853b74",{"version":"9fc8636e70e507ea8d98a7aabd265ee5","affectsGlobalScope":true,"impliedNodeFormat":1},"b2b472cd0bf0f8d5f022e00ca1c401f4",{"version":"2d78fd1079375d411033f64faae0c89b","affectsGlobalScope":true,"impliedNodeFormat":1},"2c854dda7450575791a388d8f0f29e31","61dd307aef9adea6fd307b5364c843da","4eb05de87a87ea4d8a41f4b2229bada4","5c5c7649711b5d982cf39fe9b6744080","958d9865bfe33c94973e3d58ac66b1d0",{"version":"e69aeb78ba4fd8c4493f80e9e81737e5","affectsGlobalScope":true,"impliedNodeFormat":1},"f2c1804a9a9d8f64eb2a67a797f9baef","b857d33151fcd39b213bb7c17cf12969","2e1cff79cd7dfb7d8281322931a687bd","3c217295039c32f3fecd8f7bab2e43e3","9fb3b9387eadc1aa053821d6c96b5769","1690a4da2f50085917cb933f6f2556cb","9d6686cc730682ed548fac9462ac4346",{"version":"f6be7fda5b8729494c54d9983698c290","affectsGlobalScope":true,"impliedNodeFormat":1},"0bb08d83737c91e9ca2c2c3b99ae99a2","a4e9f4bc0d06a3823fff0f55f31eac93","43b4e399ab399cf8ecd47e481abddeeb",{"version":"0769bf84d24c283d5b7d02cba94e7234","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9ffa943f975def71e2b112b28f946caa","affectsGlobalScope":true,"impliedNodeFormat":1},"d1dfd59bf8b7e71f40ee1d3a2f1b5fcf","9292aa21e6668349e0642faa07be7750","8ccb81bc00ea59aa908d31dbe50bb31a","0f80958d77cd6301b43c1d7904e3e4bc","0548d84bf13d6b5d3ef34d9755610be1","65398feea84a451329cd99b26a547514","b7e2bcd9d00432e1792823ed5da41128","739428f35658f9391641b3dfc9433fb2","c8206d568b54e5ea06131963eecd576a","15878f4f50c2e562c0768eb735c2aed5",{"version":"4e6c56c4b055178cfc9edc254d744a5b","affectsGlobalScope":true,"impliedNodeFormat":1},"329e5617fbab8b2de9bffcc41d07bb5d","6b82bee8c1c2c6d1a7f4ae0c8a47a006",{"version":"ea001113f32054398156e39095350f0a","affectsGlobalScope":true,"impliedNodeFormat":1},"7345aabef559e464447357f201cc05f8","0807835722b35673885024d2b10c282a","d63b35c1a5097295f0659f5583c8fb83","3509aa3de97926c2922f378a248ddb48",{"version":"78ce1294fea4c9fccd0600374816a75f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9edcc62fa17b31ebfd8b865c8304a4a3","affectsGlobalScope":true,"impliedNodeFormat":1},"b0cbfb9126a2a747bd567e9b79c65b58","4cfe493c958076cdc2b0609a8f889091","3bb54ead687024118ffeb8d7337370a2",{"version":"90c1b6a898bba7f42c0020815dc93eba","affectsGlobalScope":true,"impliedNodeFormat":1},"aa2008c843fac96764def81cfdf70c58","1852b3a174acea86c49700b15f7d1539"],"fileIdsList":[[152,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[147,148,149,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,193,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[150,151,152,153,154,155,156,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,249,250],[152,193,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,193,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[140,141,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[139,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,169,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,160,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,162,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,160,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,157,158,161,164,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,172,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,157,163,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,186,187,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,161,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,186,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,159,160,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[152,159,160,161,162,163,164,165,166,167,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,187,188,189,190,191,192,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,180,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,172,173,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,163,165,173,174,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,164,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,157,160,165,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,165,169,173,174,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,169,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,163,165,168,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,157,162,165,172,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[152,160,165,186,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251],[111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[130,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[90,91,92,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[95,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,92,93,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[92,95,127,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,92,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[89,92,94,95,111,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[92,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,92,95,127,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[142,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[91,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[113,115,120,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,111,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,94,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,95,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,96,112,115,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,94,111,112,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,96,112,117,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,89,90,91,92,93,94,95,96,102,105,107,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[88,91,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[106,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[103,104,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[103,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[137,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,100,101,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,100,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[144,145,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,144,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[108,109,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[98,99,108,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[92,94,95,111,113,114,115,123,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[97,152,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250]],"options":{"allowUnreachableCode":false,"allowUnusedLabels":false,"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"isolatedDeclarations":true,"importHelpers":true,"module":199,"newLine":2,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"noPropertyAccessFromIndexSignature":true,"noUncheckedIndexedAccess":true,"noEmitOnError":true,"noUnusedLocals":true,"noUnusedParameters":true,"noImplicitOverride":true,"noUncheckedSideEffectImports":true,"outDir":"./","removeComments":false,"rootDir":"../src","skipLibCheck":true,"strict":true,"stripInternal":true,"skipDefaultLibCheck":false,"sourceMap":true,"target":99,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true,"allowSyntheticDefaultImports":true,"esModuleInterop":true},"referencedMap":[[198,1],[199,2],[200,3],[152,4],[201,5],[202,6],[203,7],[147,8],[150,9],[148,8],[149,8],[204,10],[205,11],[206,12],[207,13],[208,14],[209,15],[210,16],[211,17],[212,18],[213,19],[214,20],[153,8],[151,8],[215,21],[216,22],[217,23],[251,24],[218,25],[219,26],[220,27],[221,28],[222,29],[223,30],[224,31],[225,32],[226,33],[227,34],[228,35],[229,36],[230,37],[231,38],[232,39],[233,40],[235,41],[234,42],[236,43],[237,44],[238,45],[239,46],[240,47],[241,48],[242,49],[243,50],[244,51],[245,52],[246,53],[247,54],[248,55],[154,8],[155,8],[156,8],[194,56],[195,8],[196,8],[197,8],[249,57],[250,58],[86,8],[87,8],[15,8],[14,8],[2,8],[16,8],[17,8],[18,8],[19,8],[20,8],[21,8],[22,8],[23,8],[3,8],[24,8],[25,8],[4,8],[26,8],[30,8],[27,8],[28,8],[29,8],[31,8],[32,8],[33,8],[5,8],[34,8],[35,8],[36,8],[37,8],[6,8],[41,8],[38,8],[39,8],[40,8],[42,8],[7,8],[43,8],[48,8],[49,8],[44,8],[45,8],[46,8],[47,8],[8,8],[53,8],[50,8],[51,8],[52,8],[54,8],[9,8],[55,8],[56,8],[57,8],[59,8],[58,8],[60,8],[61,8],[10,8],[62,8],[63,8],[64,8],[11,8],[65,8],[66,8],[67,8],[68,8],[69,8],[70,8],[12,8],[71,8],[72,8],[73,8],[74,8],[75,8],[1,8],[76,8],[77,8],[13,8],[78,8],[79,8],[80,8],[81,8],[82,8],[83,8],[84,8],[85,8],[142,59],[139,8],[141,60],[140,60],[172,61],[182,62],[171,61],[192,63],[163,64],[162,8],[191,65],[185,66],[190,64],[165,67],[179,68],[164,69],[188,70],[160,71],[159,65],[189,72],[161,73],[166,62],[167,8],[170,62],[157,8],[193,74],[183,75],[174,76],[175,77],[177,78],[173,79],[176,80],[186,65],[168,81],[169,82],[178,83],[158,8],[181,75],[180,62],[184,8],[187,84],[130,85],[131,86],[132,8],[122,87],[127,88],[125,89],[128,90],[123,91],[124,92],[126,93],[129,94],[143,95],[89,8],[93,8],[92,96],[90,8],[88,8],[134,97],[133,8],[114,98],[113,99],[115,100],[120,101],[116,100],[119,102],[121,98],[117,100],[118,103],[137,104],[91,105],[94,106],[95,106],[111,106],[96,106],[107,107],[106,8],[105,108],[103,109],[104,110],[138,111],[102,112],[99,109],[100,8],[101,113],[144,8],[146,114],[145,115],[110,116],[108,109],[109,117],[112,105],[135,118],[136,105],[97,8],[98,119]],"latestChangedDtsFile":"./testing/index.d.ts"}
|
|
@@ -81,6 +81,17 @@ export declare class AsyncQueue<T> implements IAsyncQueue<T> {
|
|
|
81
81
|
* @throws Error if timeout expires
|
|
82
82
|
*/
|
|
83
83
|
take(timeout?: number): Promise<T>;
|
|
84
|
+
/**
|
|
85
|
+
* This method waits for the next element, as `take` does, but it gives the element to
|
|
86
|
+
* `onElement` and the closure of the queue to `onClosed`. These calls are synchronous: they
|
|
87
|
+
* occur in the call that adds the element or closes the queue. The method has no timeout.
|
|
88
|
+
*
|
|
89
|
+
* The function that it returns withdraws the wait. A withdrawn wait gets no element, so no
|
|
90
|
+
* element goes to a taker that left. `select` races its cases with this method.
|
|
91
|
+
*
|
|
92
|
+
* @returns A function that withdraws the wait. It returns true when the wait had no element yet.
|
|
93
|
+
*/
|
|
94
|
+
waitTake(onElement: (element: T) => void, onClosed: (error: Error) => void): () => boolean;
|
|
84
95
|
/**
|
|
85
96
|
* Attempts to add an element without waiting.
|
|
86
97
|
* Returns false if queue is full (with a capacity of 0: if no taker waits).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-queue.d.ts","sourceRoot":"","sources":["../../src/async/async-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAgBD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,UAAU,CAAC,CAAC,CAAE,YAAW,WAAW,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAS;IAEzC,YAAY,OAAO,GAAE,iBAAsB,EAK1C;IAMD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAMD;;;;;;;OAOG;IACG,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBrD;IAED;;;;;;OAMG;IACG,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BvC;IAMD;;;OAGG;IACH,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,OAAO,CAK1B;IAED;;;OAGG;IACH,OAAO,IAAI,CAAC,GAAG,SAAS,CAGvB;IAED,0FAA0F;IAC1F,OAAO,CAAC,SAAS;IAejB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAmBf;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAgBvB;IAED;;;OAGG;IACH,OAAO,IAAI,CAAC,GAAG,SAAS,CAEvB;IAMD;;;OAGG;IACH,KAAK,IAAI,IAAI,CAkBZ;IAED;;;OAGG;IACH,KAAK,IAAI,CAAC,EAAE,CAWX;IAMD;;;OAGG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAmBhD;IAMD,qFAAqF;IACrF,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,QAAQ,IAAK;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAWA;IAED,QAAQ,IAAI,MAAM,CAEjB;CACF;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,CAExE"}
|
|
1
|
+
{"version":3,"file":"async-queue.d.ts","sourceRoot":"","sources":["../../src/async/async-queue.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,UAAU,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAgBD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,UAAU,CAAC,CAAC,CAAE,YAAW,WAAW,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAS;IAEzC,YAAY,OAAO,GAAE,iBAAsB,EAK1C;IAMD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,iBAAiB,IAAI,MAAM,CAE9B;IAMD;;;;;;;OAOG;IACG,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBrD;IAED;;;;;;OAMG;IACG,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BvC;IAED;;;;;;;;;OASG;IACH,QAAQ,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,MAAM,OAAO,CAkBzF;IAMD;;;OAGG;IACH,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,OAAO,CAK1B;IAED;;;OAGG;IACH,OAAO,IAAI,CAAC,GAAG,SAAS,CAGvB;IAED,0FAA0F;IAC1F,OAAO,CAAC,SAAS;IAejB;;;;;OAKG;IACH,OAAO,CAAC,OAAO;IAmBf;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAgBvB;IAED;;;OAGG;IACH,OAAO,IAAI,CAAC,GAAG,SAAS,CAEvB;IAMD;;;OAGG;IACH,KAAK,IAAI,IAAI,CAkBZ;IAED;;;OAGG;IACH,KAAK,IAAI,CAAC,EAAE,CAWX;IAMD;;;OAGG;IACI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAmBhD;IAMD,qFAAqF;IACrF,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,YAAY;IAUpB;;OAEG;IACH,QAAQ,IAAK;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAWA;IAED,QAAQ,IAAI,MAAM,CAEjB;CACF;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,CAExE"}
|
|
@@ -133,6 +133,36 @@ export class AsyncQueue {
|
|
|
133
133
|
this.takers.push(taker);
|
|
134
134
|
});
|
|
135
135
|
}
|
|
136
|
+
/**
|
|
137
|
+
* This method waits for the next element, as `take` does, but it gives the element to
|
|
138
|
+
* `onElement` and the closure of the queue to `onClosed`. These calls are synchronous: they
|
|
139
|
+
* occur in the call that adds the element or closes the queue. The method has no timeout.
|
|
140
|
+
*
|
|
141
|
+
* The function that it returns withdraws the wait. A withdrawn wait gets no element, so no
|
|
142
|
+
* element goes to a taker that left. `select` races its cases with this method.
|
|
143
|
+
*
|
|
144
|
+
* @returns A function that withdraws the wait. It returns true when the wait had no element yet.
|
|
145
|
+
*/
|
|
146
|
+
waitTake(onElement, onClosed) {
|
|
147
|
+
const next = this.takeNow();
|
|
148
|
+
if (next.found) {
|
|
149
|
+
onElement(next.element);
|
|
150
|
+
return () => false;
|
|
151
|
+
}
|
|
152
|
+
if (this._isClosed) {
|
|
153
|
+
onClosed(new Error("Queue is closed and empty"));
|
|
154
|
+
return () => false;
|
|
155
|
+
}
|
|
156
|
+
const taker = { resolve: onElement, reject: onClosed };
|
|
157
|
+
this.takers.push(taker);
|
|
158
|
+
return () => {
|
|
159
|
+
const index = this.takers.indexOf(taker);
|
|
160
|
+
if (index === -1)
|
|
161
|
+
return false;
|
|
162
|
+
this.takers.splice(index, 1);
|
|
163
|
+
return true;
|
|
164
|
+
};
|
|
165
|
+
}
|
|
136
166
|
// ========================================================================
|
|
137
167
|
// Non-blocking operations
|
|
138
168
|
// ========================================================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async-queue.js","sourceRoot":"","sources":["../../src/async/async-queue.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"async-queue.js","sourceRoot":"","sources":["../../src/async/async-queue.ts"],"names":[],"mappings":"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"}
|
package/dist/async/channels.d.ts
CHANGED
|
@@ -43,6 +43,16 @@ export declare class Channel<T> {
|
|
|
43
43
|
* @throws Error if channel is closed and empty
|
|
44
44
|
*/
|
|
45
45
|
receive(): Promise<T>;
|
|
46
|
+
/**
|
|
47
|
+
* This method waits for one value, as `receive` does, and gives it to `onValue`. When the
|
|
48
|
+
* channel is closed and empty, it calls `onClosed`. These calls are synchronous: they occur in
|
|
49
|
+
* the call that sends the value or closes the channel.
|
|
50
|
+
*
|
|
51
|
+
* The function that it returns withdraws the wait, so no later value goes to it.
|
|
52
|
+
*
|
|
53
|
+
* @returns A function that withdraws the wait. It returns true when the wait had no value yet.
|
|
54
|
+
*/
|
|
55
|
+
waitReceive(onValue: (value: T) => void, onClosed: (error: Error) => void): () => boolean;
|
|
46
56
|
/**
|
|
47
57
|
* Attempts to send without blocking.
|
|
48
58
|
* Returns false if channel is full.
|
|
@@ -79,6 +89,11 @@ export interface SelectCase<R> {
|
|
|
79
89
|
handler: (value: any) => R;
|
|
80
90
|
tryReceive: () => any;
|
|
81
91
|
receive: () => Promise<any>;
|
|
92
|
+
/**
|
|
93
|
+
* A wait for one value that `select` can withdraw: `Channel.waitReceive`. A case without it
|
|
94
|
+
* uses the `waitReceive` method of its channel.
|
|
95
|
+
*/
|
|
96
|
+
wait?: (onValue: (value: any) => void, onClosed: (error: Error) => void) => () => boolean;
|
|
82
97
|
}
|
|
83
98
|
/**
|
|
84
99
|
* Selects from multiple channels (like Go's select statement).
|
|
@@ -86,6 +101,10 @@ export interface SelectCase<R> {
|
|
|
86
101
|
* Waits for the first channel to have a value available,
|
|
87
102
|
* then calls its handler and returns the result.
|
|
88
103
|
*
|
|
104
|
+
* The first case with a value at once wins. The cases that lose keep no receive: a value that
|
|
105
|
+
* comes later stays in its channel for the next receiver. When the channel of a case is closed
|
|
106
|
+
* and empty, the returned promise rejects.
|
|
107
|
+
*
|
|
89
108
|
* @example
|
|
90
109
|
* const result = await select(
|
|
91
110
|
* ch1.case((v) => `ch1: ${v}`),
|
|
@@ -150,6 +169,10 @@ export declare function fanOut<T>(input: Channel<T>, count: number, bufferSize?:
|
|
|
150
169
|
export declare function fanIn<T>(...inputs: Channel<T>[]): Channel<T>;
|
|
151
170
|
/**
|
|
152
171
|
* Merge: like fanIn but closes output when first input closes.
|
|
172
|
+
*
|
|
173
|
+
* It takes one value at a time, from the inputs in turn, and keeps no receive on an input while
|
|
174
|
+
* it waits for the reader of the output. So each value of each input reaches the output one
|
|
175
|
+
* time, in the order of its input, or stays in its input.
|
|
153
176
|
*/
|
|
154
177
|
export declare function merge<T>(...inputs: Channel<T>[]): Channel<T>;
|
|
155
178
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../src/async/channels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH;;;;;GAKG;AACH,qBAAa,OAAO,CAAC,CAAC;IACpB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,SAAS,CAAS;IAE1B,YAAY,UAAU,GAAE,MAAU,EAIjC;IAED;;;;;OAKG;IACG,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAKlC;IAED;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,CAE1B;IAED;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAGzB;IAED;;;OAGG;IACH,UAAU,IAAI,CAAC,GAAG,SAAS,CAE1B;IAED;;;OAGG;IACH,KAAK,IAAI,IAAI,CAGZ;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;OAGG;IACH,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"channels.d.ts","sourceRoot":"","sources":["../../src/async/channels.ts"],"names":[],"mappings":"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"}
|
package/dist/async/channels.js
CHANGED
|
@@ -55,6 +55,18 @@ export class Channel {
|
|
|
55
55
|
async receive() {
|
|
56
56
|
return await this.queue.take();
|
|
57
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* This method waits for one value, as `receive` does, and gives it to `onValue`. When the
|
|
60
|
+
* channel is closed and empty, it calls `onClosed`. These calls are synchronous: they occur in
|
|
61
|
+
* the call that sends the value or closes the channel.
|
|
62
|
+
*
|
|
63
|
+
* The function that it returns withdraws the wait, so no later value goes to it.
|
|
64
|
+
*
|
|
65
|
+
* @returns A function that withdraws the wait. It returns true when the wait had no value yet.
|
|
66
|
+
*/
|
|
67
|
+
waitReceive(onValue, onClosed) {
|
|
68
|
+
return this.queue.waitTake(onValue, onClosed);
|
|
69
|
+
}
|
|
58
70
|
/**
|
|
59
71
|
* Attempts to send without blocking.
|
|
60
72
|
* Returns false if channel is full.
|
|
@@ -95,6 +107,7 @@ export class Channel {
|
|
|
95
107
|
handler,
|
|
96
108
|
tryReceive: () => this.tryReceive(),
|
|
97
109
|
receive: () => this.receive(),
|
|
110
|
+
wait: (onValue, onClosed) => this.waitReceive(onValue, onClosed),
|
|
98
111
|
};
|
|
99
112
|
}
|
|
100
113
|
/**
|
|
@@ -113,12 +126,55 @@ export class Channel {
|
|
|
113
126
|
}
|
|
114
127
|
}
|
|
115
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* This function gives the first value of the waits, with the index of its wait. It rejects with
|
|
131
|
+
* the error of the first wait whose channel is closed and empty. It withdraws each other wait in
|
|
132
|
+
* the same call, so a later value stays in its channel. (Before, the receives of the cases that
|
|
133
|
+
* lost stayed in their channels and dropped the next value of each: audit O56.)
|
|
134
|
+
*/
|
|
135
|
+
function firstOf(waits) {
|
|
136
|
+
return new Promise((resolve, reject) => {
|
|
137
|
+
const withdraws = [];
|
|
138
|
+
let settled = false;
|
|
139
|
+
const end = () => {
|
|
140
|
+
settled = true;
|
|
141
|
+
for (const withdraw of withdraws)
|
|
142
|
+
withdraw();
|
|
143
|
+
};
|
|
144
|
+
// A wait can call back at once, in its own call, when its channel has a value or is closed
|
|
145
|
+
try {
|
|
146
|
+
for (let index = 0; index < waits.length && !settled; index++) {
|
|
147
|
+
withdraws.push(waits[index]((value) => {
|
|
148
|
+
if (settled)
|
|
149
|
+
return;
|
|
150
|
+
end();
|
|
151
|
+
resolve({ index, value });
|
|
152
|
+
}, (error) => {
|
|
153
|
+
if (settled)
|
|
154
|
+
return;
|
|
155
|
+
end();
|
|
156
|
+
reject(error);
|
|
157
|
+
}));
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
// A wait that throws: the waits before it are withdrawn
|
|
162
|
+
if (!settled)
|
|
163
|
+
end();
|
|
164
|
+
reject(error);
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
}
|
|
116
168
|
/**
|
|
117
169
|
* Selects from multiple channels (like Go's select statement).
|
|
118
170
|
*
|
|
119
171
|
* Waits for the first channel to have a value available,
|
|
120
172
|
* then calls its handler and returns the result.
|
|
121
173
|
*
|
|
174
|
+
* The first case with a value at once wins. The cases that lose keep no receive: a value that
|
|
175
|
+
* comes later stays in its channel for the next receiver. When the channel of a case is closed
|
|
176
|
+
* and empty, the returned promise rejects.
|
|
177
|
+
*
|
|
122
178
|
* @example
|
|
123
179
|
* const result = await select(
|
|
124
180
|
* ch1.case((v) => `ch1: ${v}`),
|
|
@@ -127,16 +183,8 @@ export class Channel {
|
|
|
127
183
|
* )
|
|
128
184
|
*/
|
|
129
185
|
export async function select(...cases) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
const value = c.tryReceive();
|
|
133
|
-
if (value !== undefined) {
|
|
134
|
-
return c.handler(value);
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
// If no immediate value, race all receive operations
|
|
138
|
-
const promises = cases.map((c, index) => c.receive().then((value) => ({ index, value })));
|
|
139
|
-
const { index, value } = await Promise.race(promises);
|
|
186
|
+
const { index, value } = await firstOf(cases.map((c) => c.wait ?? ((onValue, onClosed) => c.channel.waitReceive(onValue, onClosed))));
|
|
187
|
+
// The handler runs after the race, not in the call of the sender
|
|
140
188
|
return cases[index].handler(value);
|
|
141
189
|
}
|
|
142
190
|
/**
|
|
@@ -240,22 +288,37 @@ export function fanIn(...inputs) {
|
|
|
240
288
|
}
|
|
241
289
|
/**
|
|
242
290
|
* Merge: like fanIn but closes output when first input closes.
|
|
291
|
+
*
|
|
292
|
+
* It takes one value at a time, from the inputs in turn, and keeps no receive on an input while
|
|
293
|
+
* it waits for the reader of the output. So each value of each input reaches the output one
|
|
294
|
+
* time, in the order of its input, or stays in its input.
|
|
243
295
|
*/
|
|
244
296
|
export function merge(...inputs) {
|
|
245
297
|
const output = new Channel();
|
|
246
298
|
(async () => {
|
|
247
|
-
|
|
299
|
+
// The input after the input of the last value comes first, so a busy input starves no other
|
|
300
|
+
let start = 0;
|
|
248
301
|
while (true) {
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
302
|
+
const order = inputs.map((_, offset) => (start + offset) % inputs.length);
|
|
303
|
+
let next;
|
|
304
|
+
try {
|
|
305
|
+
next = await firstOf(order.map((index) => (onValue, onClosed) => inputs[index].waitReceive(onValue, onClosed)));
|
|
306
|
+
}
|
|
307
|
+
catch {
|
|
308
|
+
// An input is closed and empty
|
|
309
|
+
break;
|
|
310
|
+
}
|
|
311
|
+
const index = order[next.index];
|
|
312
|
+
start = (index + 1) % inputs.length;
|
|
313
|
+
try {
|
|
314
|
+
await output.send(next.value);
|
|
315
|
+
}
|
|
316
|
+
catch {
|
|
317
|
+
// The reader closed the output
|
|
255
318
|
break;
|
|
256
319
|
}
|
|
257
|
-
await output.send(results.result.value);
|
|
258
320
|
}
|
|
321
|
+
output.close();
|
|
259
322
|
})();
|
|
260
323
|
return output;
|
|
261
324
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../src/async/channels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,UAAU,EAAmB,MAAM,kBAAkB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,OAAO,OAAO;IACV,KAAK,CAAgB;IACrB,SAAS,GAAG,KAAK,CAAC;IAE1B,YAAY,UAAU,GAAW,CAAC;QAChC,yFAAyF;QACzF,uEAAuE;QACvE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,KAAQ;QACjB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,KAAQ;QACd,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,IAAI,CAAI,OAAwB;QAC9B,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO;YACP,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;YACnC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE;
|
|
1
|
+
{"version":3,"file":"channels.js","sourceRoot":"","sources":["../../src/async/channels.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,UAAU,EAAmB,MAAM,kBAAkB,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,OAAO,OAAO;IACV,KAAK,CAAgB;IACrB,SAAS,GAAG,KAAK,CAAC;IAE1B,YAAY,UAAU,GAAW,CAAC;QAChC,yFAAyF;QACzF,uEAAuE;QACvE,IAAI,CAAC,KAAK,GAAG,UAAU,CAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,KAAQ;QACjB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO;QACX,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACH,WAAW,CAAC,OAA2B,EAAE,QAAgC;QACvE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,KAAQ;QACd,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,IAAI,CAAI,OAAwB;QAC9B,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO;YACP,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;YACnC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE;YAC7B,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC;SACjE,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3B,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YAC7B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,iBAAiB;gBACjB,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAoBD;;;;;GAKG;AACH,SAAS,OAAO,CAAC,KAAsB;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,SAAS,GAAyB,EAAE,CAAC;QAC3C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,GAAG,GAAG,GAAS,EAAE;YACrB,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,MAAM,QAAQ,IAAI,SAAS;gBAAE,QAAQ,EAAE,CAAC;QAC/C,CAAC,CAAC;QACF,2FAA2F;QAC3F,IAAI,CAAC;YACH,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC9D,SAAS,CAAC,IAAI,CACZ,KAAK,CAAC,KAAK,CAAE,CACX,CAAC,KAAK,EAAE,EAAE;oBACR,IAAI,OAAO;wBAAE,OAAO;oBACpB,GAAG,EAAE,CAAC;oBACN,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC5B,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;oBACR,IAAI,OAAO;wBAAE,OAAO;oBACpB,GAAG,EAAE,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC,CACF,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,wDAAwD;YACxD,IAAI,CAAC,OAAO;gBAAE,GAAG,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAI,GAAG,KAAsB;IACvD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,OAAO,CACpC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CACpG,CAAC;IACF,iEAAiE;IACjE,OAAO,KAAK,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,OAAO,CAAC,EAAU;IAChC,MAAM,EAAE,GAAG,IAAI,OAAO,EAAQ,CAAC;IAC/B,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,mBAAmB;QACvD,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAC,EAAU;IAC/B,MAAM,EAAE,GAAG,IAAI,OAAO,CAAS,CAAC,CAAC,CAAC;IAClC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;QACvB,IAAI,EAAE,GAAG,EAAE;YACT,aAAa,CAAC,UAAU,CAAC,CAAC;YAC1B,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,QAAQ,CACtB,KAAiB,EACjB,SAAuC,EACvC,UAAU,GAAW,CAAC;IAEtB,MAAM,MAAM,GAAG,IAAI,OAAO,CAAI,UAAU,CAAC,CAAC;IAE1C,CAAC,KAAK,IAAI,EAAE;QACV,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAChC,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;QACD,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,MAAM,CAAI,KAAiB,EAAE,KAAa,EAAE,UAAU,GAAW,CAAC;IAChF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,OAAO,CAAI,UAAU,CAAC,CAAC,CAAC;IAEhF,CAAC,KAAK,IAAI,EAAE;QACV,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAChC,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;IACtC,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,KAAK,CAAI,GAAG,MAAoB;IAC9C,MAAM,MAAM,GAAG,IAAI,OAAO,EAAK,CAAC;IAEhC,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACzC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAEhD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CAAI,GAAG,MAAoB;IAC9C,MAAM,MAAM,GAAG,IAAI,OAAO,EAAK,CAAC;IAEhC,CAAC,KAAK,IAAI,EAAE;QACV,4FAA4F;QAC5F,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1E,IAAI,IAAuC,CAAC;YAC5C,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAE,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzH,CAAC;YAAC,MAAM,CAAC;gBACP,+BAA+B;gBAC/B,MAAM;YACR,CAAC;YACD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAE,CAAC;YACjC,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAU,CAAC,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,+BAA+B;gBAC/B,MAAM;YACR,CAAC;QACH,CAAC;QACD,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAI,QAAgB;IAC1C,OAAO,IAAI,OAAO,CAAI,QAAQ,CAAC,CAAC;AAClC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU;IACxB,OAAO,IAAI,OAAO,CAAI,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CAAI,UAAU,GAAW,CAAC;IAC/C,OAAO,IAAI,OAAO,CAAI,UAAU,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,UAAU,CACxB,IAAgB,EAChB,MAA8B,EAC9B,OAAO,GAA6C,EAAE,OAAO,EAAE,CAAC,EAAE;IAElE,MAAM,OAAO,GAAG,IAAI,OAAO,CAAI,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;IACxD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEzC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,KAAK,IAAI,EAAE;QAC7D,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjC,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEjD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package",
|
|
3
3
|
"name": "@procedures/collections",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.28.0",
|
|
5
5
|
"description": "Collections for TypeScript: ArrayList, LinkedList, ArrayDeque, HashMap, LinkedHashMap, TreeMap (red-black), PriorityQueue, LRU and TTL maps, async queues, channels and collectors, tested with fast-check.",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"collections",
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"provenance": true
|
|
65
65
|
},
|
|
66
66
|
"dependencies": {
|
|
67
|
-
"@procedures/client": "0.
|
|
67
|
+
"@procedures/client": "0.28.0"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
70
|
"typescript": "^7.0.2",
|
package/src/async/async-queue.ts
CHANGED
|
@@ -181,6 +181,36 @@ export class AsyncQueue<T> implements IAsyncQueue<T> {
|
|
|
181
181
|
});
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
/**
|
|
185
|
+
* This method waits for the next element, as `take` does, but it gives the element to
|
|
186
|
+
* `onElement` and the closure of the queue to `onClosed`. These calls are synchronous: they
|
|
187
|
+
* occur in the call that adds the element or closes the queue. The method has no timeout.
|
|
188
|
+
*
|
|
189
|
+
* The function that it returns withdraws the wait. A withdrawn wait gets no element, so no
|
|
190
|
+
* element goes to a taker that left. `select` races its cases with this method.
|
|
191
|
+
*
|
|
192
|
+
* @returns A function that withdraws the wait. It returns true when the wait had no element yet.
|
|
193
|
+
*/
|
|
194
|
+
waitTake(onElement: (element: T) => void, onClosed: (error: Error) => void): () => boolean {
|
|
195
|
+
const next = this.takeNow();
|
|
196
|
+
if (next.found) {
|
|
197
|
+
onElement(next.element);
|
|
198
|
+
return () => false;
|
|
199
|
+
}
|
|
200
|
+
if (this._isClosed) {
|
|
201
|
+
onClosed(new Error("Queue is closed and empty"));
|
|
202
|
+
return () => false;
|
|
203
|
+
}
|
|
204
|
+
const taker: Resolver<T> = { resolve: onElement, reject: onClosed };
|
|
205
|
+
this.takers.push(taker);
|
|
206
|
+
return () => {
|
|
207
|
+
const index = this.takers.indexOf(taker);
|
|
208
|
+
if (index === -1) return false;
|
|
209
|
+
this.takers.splice(index, 1);
|
|
210
|
+
return true;
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
|
|
184
214
|
// ========================================================================
|
|
185
215
|
// Non-blocking operations
|
|
186
216
|
// ========================================================================
|
package/src/async/channels.ts
CHANGED
|
@@ -61,6 +61,19 @@ export class Channel<T> {
|
|
|
61
61
|
return await this.queue.take();
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
+
/**
|
|
65
|
+
* This method waits for one value, as `receive` does, and gives it to `onValue`. When the
|
|
66
|
+
* channel is closed and empty, it calls `onClosed`. These calls are synchronous: they occur in
|
|
67
|
+
* the call that sends the value or closes the channel.
|
|
68
|
+
*
|
|
69
|
+
* The function that it returns withdraws the wait, so no later value goes to it.
|
|
70
|
+
*
|
|
71
|
+
* @returns A function that withdraws the wait. It returns true when the wait had no value yet.
|
|
72
|
+
*/
|
|
73
|
+
waitReceive(onValue: (value: T) => void, onClosed: (error: Error) => void): () => boolean {
|
|
74
|
+
return this.queue.waitTake(onValue, onClosed);
|
|
75
|
+
}
|
|
76
|
+
|
|
64
77
|
/**
|
|
65
78
|
* Attempts to send without blocking.
|
|
66
79
|
* Returns false if channel is full.
|
|
@@ -105,6 +118,7 @@ export class Channel<T> {
|
|
|
105
118
|
handler,
|
|
106
119
|
tryReceive: () => this.tryReceive(),
|
|
107
120
|
receive: () => this.receive(),
|
|
121
|
+
wait: (onValue, onClosed) => this.waitReceive(onValue, onClosed),
|
|
108
122
|
};
|
|
109
123
|
}
|
|
110
124
|
|
|
@@ -132,6 +146,54 @@ export interface SelectCase<R> {
|
|
|
132
146
|
handler: (value: any) => R;
|
|
133
147
|
tryReceive: () => any;
|
|
134
148
|
receive: () => Promise<any>;
|
|
149
|
+
/**
|
|
150
|
+
* A wait for one value that `select` can withdraw: `Channel.waitReceive`. A case without it
|
|
151
|
+
* uses the `waitReceive` method of its channel.
|
|
152
|
+
*/
|
|
153
|
+
wait?: (onValue: (value: any) => void, onClosed: (error: Error) => void) => () => boolean;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
/** A wait for one value that can be withdrawn, as `Channel.waitReceive` gives it. */
|
|
157
|
+
type Wait = (onValue: (value: unknown) => void, onClosed: (error: Error) => void) => () => boolean;
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* This function gives the first value of the waits, with the index of its wait. It rejects with
|
|
161
|
+
* the error of the first wait whose channel is closed and empty. It withdraws each other wait in
|
|
162
|
+
* the same call, so a later value stays in its channel. (Before, the receives of the cases that
|
|
163
|
+
* lost stayed in their channels and dropped the next value of each: audit O56.)
|
|
164
|
+
*/
|
|
165
|
+
function firstOf(waits: readonly Wait[]): Promise<{ index: number; value: unknown }> {
|
|
166
|
+
return new Promise((resolve, reject) => {
|
|
167
|
+
const withdraws: Array<() => boolean> = [];
|
|
168
|
+
let settled = false;
|
|
169
|
+
const end = (): void => {
|
|
170
|
+
settled = true;
|
|
171
|
+
for (const withdraw of withdraws) withdraw();
|
|
172
|
+
};
|
|
173
|
+
// A wait can call back at once, in its own call, when its channel has a value or is closed
|
|
174
|
+
try {
|
|
175
|
+
for (let index = 0; index < waits.length && !settled; index++) {
|
|
176
|
+
withdraws.push(
|
|
177
|
+
waits[index]!(
|
|
178
|
+
(value) => {
|
|
179
|
+
if (settled) return;
|
|
180
|
+
end();
|
|
181
|
+
resolve({ index, value });
|
|
182
|
+
},
|
|
183
|
+
(error) => {
|
|
184
|
+
if (settled) return;
|
|
185
|
+
end();
|
|
186
|
+
reject(error);
|
|
187
|
+
},
|
|
188
|
+
),
|
|
189
|
+
);
|
|
190
|
+
}
|
|
191
|
+
} catch (error) {
|
|
192
|
+
// A wait that throws: the waits before it are withdrawn
|
|
193
|
+
if (!settled) end();
|
|
194
|
+
reject(error);
|
|
195
|
+
}
|
|
196
|
+
});
|
|
135
197
|
}
|
|
136
198
|
|
|
137
199
|
/**
|
|
@@ -140,6 +202,10 @@ export interface SelectCase<R> {
|
|
|
140
202
|
* Waits for the first channel to have a value available,
|
|
141
203
|
* then calls its handler and returns the result.
|
|
142
204
|
*
|
|
205
|
+
* The first case with a value at once wins. The cases that lose keep no receive: a value that
|
|
206
|
+
* comes later stays in its channel for the next receiver. When the channel of a case is closed
|
|
207
|
+
* and empty, the returned promise rejects.
|
|
208
|
+
*
|
|
143
209
|
* @example
|
|
144
210
|
* const result = await select(
|
|
145
211
|
* ch1.case((v) => `ch1: ${v}`),
|
|
@@ -148,20 +214,10 @@ export interface SelectCase<R> {
|
|
|
148
214
|
* )
|
|
149
215
|
*/
|
|
150
216
|
export async function select<R>(...cases: SelectCase<R>[]): Promise<R> {
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
const value = c.tryReceive();
|
|
154
|
-
if (value !== undefined) {
|
|
155
|
-
return c.handler(value);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
// If no immediate value, race all receive operations
|
|
160
|
-
const promises = cases.map((c, index) =>
|
|
161
|
-
c.receive().then((value) => ({ index, value }))
|
|
217
|
+
const { index, value } = await firstOf(
|
|
218
|
+
cases.map((c): Wait => c.wait ?? ((onValue, onClosed) => c.channel.waitReceive(onValue, onClosed))),
|
|
162
219
|
);
|
|
163
|
-
|
|
164
|
-
const { index, value } = await Promise.race(promises);
|
|
220
|
+
// The handler runs after the race, not in the call of the sender
|
|
165
221
|
return cases[index]!.handler(value);
|
|
166
222
|
}
|
|
167
223
|
|
|
@@ -284,28 +340,36 @@ export function fanIn<T>(...inputs: Channel<T>[]): Channel<T> {
|
|
|
284
340
|
|
|
285
341
|
/**
|
|
286
342
|
* Merge: like fanIn but closes output when first input closes.
|
|
343
|
+
*
|
|
344
|
+
* It takes one value at a time, from the inputs in turn, and keeps no receive on an input while
|
|
345
|
+
* it waits for the reader of the output. So each value of each input reaches the output one
|
|
346
|
+
* time, in the order of its input, or stays in its input.
|
|
287
347
|
*/
|
|
288
348
|
export function merge<T>(...inputs: Channel<T>[]): Channel<T> {
|
|
289
349
|
const output = new Channel<T>();
|
|
290
350
|
|
|
291
351
|
(async () => {
|
|
292
|
-
|
|
293
|
-
|
|
352
|
+
// The input after the input of the last value comes first, so a busy input starves no other
|
|
353
|
+
let start = 0;
|
|
294
354
|
while (true) {
|
|
295
|
-
const
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
355
|
+
const order = inputs.map((_, offset) => (start + offset) % inputs.length);
|
|
356
|
+
let next: { index: number; value: unknown };
|
|
357
|
+
try {
|
|
358
|
+
next = await firstOf(order.map((index): Wait => (onValue, onClosed) => inputs[index]!.waitReceive(onValue, onClosed)));
|
|
359
|
+
} catch {
|
|
360
|
+
// An input is closed and empty
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
const index = order[next.index]!;
|
|
364
|
+
start = (index + 1) % inputs.length;
|
|
365
|
+
try {
|
|
366
|
+
await output.send(next.value as T);
|
|
367
|
+
} catch {
|
|
368
|
+
// The reader closed the output
|
|
304
369
|
break;
|
|
305
370
|
}
|
|
306
|
-
|
|
307
|
-
await output.send(results.result.value);
|
|
308
371
|
}
|
|
372
|
+
output.close();
|
|
309
373
|
})();
|
|
310
374
|
|
|
311
375
|
return output;
|