@atproto/repo 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/LICENSE +21 -0
  3. package/README.md +1 -1
  4. package/build.js +0 -8
  5. package/dist/data-diff.d.ts +11 -9
  6. package/dist/index.d.ts +0 -1
  7. package/dist/index.js +1620 -2953
  8. package/dist/index.js.map +4 -4
  9. package/dist/logger.d.ts +2 -1
  10. package/dist/mst/mst.d.ts +10 -6
  11. package/dist/readable-repo.d.ts +1 -1
  12. package/dist/repo.d.ts +1 -4
  13. package/dist/storage/index.d.ts +0 -1
  14. package/dist/storage/memory-blockstore.d.ts +7 -12
  15. package/dist/storage/types.d.ts +28 -0
  16. package/dist/sync/consumer.d.ts +13 -17
  17. package/dist/sync/provider.d.ts +1 -5
  18. package/dist/types.d.ts +228 -39
  19. package/dist/util.d.ts +3 -5
  20. package/package.json +17 -24
  21. package/src/data-diff.ts +46 -44
  22. package/src/index.ts +0 -1
  23. package/src/logger.ts +2 -1
  24. package/src/mst/diff.ts +14 -36
  25. package/src/mst/mst.ts +14 -4
  26. package/src/readable-repo.ts +3 -3
  27. package/src/repo.ts +49 -70
  28. package/src/storage/index.ts +0 -1
  29. package/src/storage/memory-blockstore.ts +18 -77
  30. package/src/storage/types.ts +29 -0
  31. package/src/sync/consumer.ts +170 -116
  32. package/src/sync/provider.ts +2 -40
  33. package/src/types.ts +51 -24
  34. package/src/util.ts +24 -79
  35. package/tests/_util.ts +38 -67
  36. package/tests/mst.test.ts +4 -1
  37. package/tests/{sync/narrow.test.ts → proofs.test.ts} +9 -20
  38. package/tests/repo.test.ts +5 -4
  39. package/tests/sync.test.ts +97 -0
  40. package/tsconfig.build.json +1 -1
  41. package/tsconfig.json +3 -3
  42. package/dist/src/block-map.d.ts +0 -23
  43. package/dist/src/blockstore/index.d.ts +0 -2
  44. package/dist/src/blockstore/ipld-store.d.ts +0 -27
  45. package/dist/src/blockstore/memory-blockstore.d.ts +0 -13
  46. package/dist/src/blockstore/persistent-blockstore.d.ts +0 -12
  47. package/dist/src/cid-set.d.ts +0 -14
  48. package/dist/src/collection.d.ts +0 -22
  49. package/dist/src/data-diff.d.ts +0 -34
  50. package/dist/src/error.d.ts +0 -21
  51. package/dist/src/index.d.ts +0 -7
  52. package/dist/src/logger.d.ts +0 -2
  53. package/dist/src/mst/diff.d.ts +0 -33
  54. package/dist/src/mst/index.d.ts +0 -4
  55. package/dist/src/mst/mst.d.ts +0 -106
  56. package/dist/src/mst/util.d.ts +0 -9
  57. package/dist/src/mst/walker.d.ts +0 -22
  58. package/dist/src/parse.d.ts +0 -11
  59. package/dist/src/readable-repo.d.ts +0 -25
  60. package/dist/src/repo.d.ts +0 -39
  61. package/dist/src/storage/error.d.ts +0 -22
  62. package/dist/src/storage/index.d.ts +0 -1
  63. package/dist/src/storage/memory-blobstore.d.ts +0 -1
  64. package/dist/src/storage/memory-blockstore.d.ts +0 -28
  65. package/dist/src/storage/readable-blockstore.d.ts +0 -21
  66. package/dist/src/storage/repo-storage.d.ts +0 -18
  67. package/dist/src/storage/sync-storage.d.ts +0 -15
  68. package/dist/src/storage/types.d.ts +0 -12
  69. package/dist/src/storage/util.d.ts +0 -17
  70. package/dist/src/structure.d.ts +0 -39
  71. package/dist/src/sync/consumer.d.ts +0 -19
  72. package/dist/src/sync/index.d.ts +0 -2
  73. package/dist/src/sync/producer.d.ts +0 -13
  74. package/dist/src/sync/provider.d.ts +0 -11
  75. package/dist/src/sync.d.ts +0 -9
  76. package/dist/src/types.d.ts +0 -368
  77. package/dist/src/util.d.ts +0 -13
  78. package/dist/src/verify.d.ts +0 -5
  79. package/dist/storage/repo-storage.d.ts +0 -19
  80. package/dist/tsconfig.build.tsbuildinfo +0 -1
  81. package/dist/verify.d.ts +0 -32
  82. package/src/storage/repo-storage.ts +0 -43
  83. package/src/verify.ts +0 -268
  84. package/tests/rebase.test.ts +0 -37
  85. package/tests/sync/checkout.test.ts +0 -75
  86. package/tests/sync/diff.test.ts +0 -92
  87. package/tsconfig.build.tsbuildinfo +0 -1
  88. package/update-pkg.js +0 -14
package/src/verify.ts DELETED
@@ -1,268 +0,0 @@
1
- import { CID } from 'multiformats/cid'
2
- import { MemoryBlockstore, ReadableBlockstore, RepoStorage } from './storage'
3
- import DataDiff from './data-diff'
4
- import SyncStorage from './storage/sync-storage'
5
- import ReadableRepo from './readable-repo'
6
- import Repo from './repo'
7
- import CidSet from './cid-set'
8
- import * as util from './util'
9
- import { RecordClaim, RepoContents, RepoContentsWithCids } from './types'
10
- import { def } from './types'
11
- import { MST } from './mst'
12
- import { cidForCbor } from '@atproto/common'
13
-
14
- export type VerifiedCheckout = {
15
- contents: RepoContents
16
- newCids: CidSet
17
- }
18
-
19
- export type VerifiedCheckoutWithCids = {
20
- commit: CID
21
- contents: RepoContentsWithCids
22
- }
23
-
24
- export const verifyCheckout = async (
25
- storage: ReadableBlockstore,
26
- head: CID,
27
- did: string,
28
- signingKey: string,
29
- ): Promise<VerifiedCheckout> => {
30
- const repo = await verifyRepoRoot(storage, head, did, signingKey)
31
- const diff = await DataDiff.of(repo.data, null)
32
- const newCids = new CidSet([repo.cid]).addSet(diff.newCids)
33
-
34
- const contents: RepoContents = {}
35
- for (const add of diff.addList()) {
36
- const { collection, rkey } = util.parseDataKey(add.key)
37
- if (!contents[collection]) {
38
- contents[collection] = {}
39
- }
40
- const record = await storage.readRecord(add.cid)
41
- contents[collection][rkey] = record
42
- }
43
-
44
- return {
45
- contents,
46
- newCids,
47
- }
48
- }
49
-
50
- export const verifyCheckoutWithCids = async (
51
- storage: ReadableBlockstore,
52
- head: CID,
53
- did: string,
54
- signingKey: string,
55
- ): Promise<VerifiedCheckoutWithCids> => {
56
- const repo = await verifyRepoRoot(storage, head, did, signingKey)
57
- const diff = await DataDiff.of(repo.data, null)
58
-
59
- const contents: RepoContentsWithCids = {}
60
- for (const add of diff.addList()) {
61
- const { collection, rkey } = util.parseDataKey(add.key)
62
- contents[collection] ??= {}
63
- contents[collection][rkey] = {
64
- cid: add.cid,
65
- value: await storage.readRecord(add.cid),
66
- }
67
- }
68
-
69
- return {
70
- commit: repo.cid,
71
- contents,
72
- }
73
- }
74
-
75
- // @NOTE only verifies the root, not the repo contents
76
- const verifyRepoRoot = async (
77
- storage: ReadableBlockstore,
78
- head: CID,
79
- did: string,
80
- signingKey: string,
81
- ): Promise<ReadableRepo> => {
82
- const repo = await ReadableRepo.load(storage, head)
83
- if (repo.did !== did) {
84
- throw new RepoVerificationError(`Invalid repo did: ${repo.did}`)
85
- }
86
- const validSig = await util.verifyCommitSig(repo.commit, signingKey)
87
- if (!validSig) {
88
- throw new RepoVerificationError(
89
- `Invalid signature on commit: ${repo.cid.toString()}`,
90
- )
91
- }
92
- return repo
93
- }
94
-
95
- export type VerifiedUpdate = {
96
- commit: CID
97
- prev: CID | null
98
- diff: DataDiff
99
- newCids: CidSet
100
- }
101
-
102
- export const verifyFullHistory = async (
103
- storage: RepoStorage,
104
- head: CID,
105
- did: string,
106
- signingKey: string,
107
- ): Promise<VerifiedUpdate[]> => {
108
- const commitPath = await storage.getCommitPath(head, null)
109
- if (commitPath === null) {
110
- throw new RepoVerificationError('Could not find shared history')
111
- } else if (commitPath.length < 1) {
112
- throw new RepoVerificationError('Expected at least one commit')
113
- }
114
- const baseRepo = await Repo.load(storage, commitPath[0])
115
- const baseDiff = await DataDiff.of(baseRepo.data, null)
116
- const baseRepoCids = new CidSet([baseRepo.cid]).addSet(baseDiff.newCids)
117
- const init: VerifiedUpdate = {
118
- commit: baseRepo.cid,
119
- prev: null,
120
- diff: baseDiff,
121
- newCids: baseRepoCids,
122
- }
123
- const updates = await verifyCommitPath(
124
- baseRepo,
125
- storage,
126
- commitPath.slice(1),
127
- did,
128
- signingKey,
129
- )
130
- return [init, ...updates]
131
- }
132
-
133
- export const verifyUpdates = async (
134
- repo: ReadableRepo,
135
- updateStorage: RepoStorage,
136
- updateRoot: CID,
137
- did: string,
138
- signingKey: string,
139
- ): Promise<VerifiedUpdate[]> => {
140
- const commitPath = await updateStorage.getCommitPath(updateRoot, repo.cid)
141
- if (commitPath === null) {
142
- throw new RepoVerificationError('Could not find shared history')
143
- }
144
- const syncStorage = new SyncStorage(updateStorage, repo.storage)
145
- return verifyCommitPath(repo, syncStorage, commitPath, did, signingKey)
146
- }
147
-
148
- export const verifyCommitPath = async (
149
- baseRepo: ReadableRepo,
150
- storage: ReadableBlockstore,
151
- commitPath: CID[],
152
- did: string,
153
- signingKey: string,
154
- ): Promise<VerifiedUpdate[]> => {
155
- const updates: VerifiedUpdate[] = []
156
- if (commitPath.length === 0) return updates
157
- let prevRepo = baseRepo
158
- for (const commit of commitPath) {
159
- const nextRepo = await ReadableRepo.load(storage, commit)
160
- const diff = await DataDiff.of(nextRepo.data, prevRepo.data)
161
-
162
- if (nextRepo.did !== did) {
163
- throw new RepoVerificationError(`Invalid repo did: ${nextRepo.did}`)
164
- }
165
- if (!util.metaEqual(nextRepo.commit, prevRepo.commit)) {
166
- throw new RepoVerificationError('Not supported: repo metadata updated')
167
- }
168
-
169
- const validSig = await util.verifyCommitSig(nextRepo.commit, signingKey)
170
- if (!validSig) {
171
- throw new RepoVerificationError(
172
- `Invalid signature on commit: ${nextRepo.cid.toString()}`,
173
- )
174
- }
175
-
176
- const newCids = new CidSet([nextRepo.cid]).addSet(diff.newCids)
177
-
178
- updates.push({
179
- commit: nextRepo.cid,
180
- prev: prevRepo.cid,
181
- diff,
182
- newCids,
183
- })
184
- prevRepo = nextRepo
185
- }
186
- return updates
187
- }
188
-
189
- export const verifyProofs = async (
190
- proofs: Uint8Array,
191
- claims: RecordClaim[],
192
- did: string,
193
- didKey: string,
194
- ): Promise<{ verified: RecordClaim[]; unverified: RecordClaim[] }> => {
195
- const car = await util.readCarWithRoot(proofs)
196
- const blockstore = new MemoryBlockstore(car.blocks)
197
- const commit = await blockstore.readObj(car.root, def.commit)
198
- if (commit.did !== did) {
199
- throw new RepoVerificationError(`Invalid repo did: ${commit.did}`)
200
- }
201
- const validSig = await util.verifyCommitSig(commit, didKey)
202
- if (!validSig) {
203
- throw new RepoVerificationError(
204
- `Invalid signature on commit: ${car.root.toString()}`,
205
- )
206
- }
207
- const mst = MST.load(blockstore, commit.data)
208
- const verified: RecordClaim[] = []
209
- const unverified: RecordClaim[] = []
210
- for (const claim of claims) {
211
- const found = await mst.get(
212
- util.formatDataKey(claim.collection, claim.rkey),
213
- )
214
- const record = found ? await blockstore.readObj(found, def.map) : null
215
- if (claim.record === null) {
216
- if (record === null) {
217
- verified.push(claim)
218
- } else {
219
- unverified.push(claim)
220
- }
221
- } else {
222
- const expected = await cidForCbor(claim.record)
223
- if (expected.equals(found)) {
224
- verified.push(claim)
225
- } else {
226
- unverified.push(claim)
227
- }
228
- }
229
- }
230
- return { verified, unverified }
231
- }
232
-
233
- export const verifyRecords = async (
234
- proofs: Uint8Array,
235
- did: string,
236
- signingKey: string,
237
- ): Promise<RecordClaim[]> => {
238
- const car = await util.readCarWithRoot(proofs)
239
- const blockstore = new MemoryBlockstore(car.blocks)
240
- const commit = await blockstore.readObj(car.root, def.commit)
241
- if (commit.did !== did) {
242
- throw new RepoVerificationError(`Invalid repo did: ${commit.did}`)
243
- }
244
- const validSig = await util.verifyCommitSig(commit, signingKey)
245
- if (!validSig) {
246
- throw new RepoVerificationError(
247
- `Invalid signature on commit: ${car.root.toString()}`,
248
- )
249
- }
250
- const mst = MST.load(blockstore, commit.data)
251
-
252
- const records: RecordClaim[] = []
253
- const leaves = await mst.reachableLeaves()
254
- for (const leaf of leaves) {
255
- const { collection, rkey } = util.parseDataKey(leaf.key)
256
- const record = await blockstore.attemptReadRecord(leaf.value)
257
- if (record) {
258
- records.push({
259
- collection,
260
- rkey,
261
- record,
262
- })
263
- }
264
- }
265
- return records
266
- }
267
-
268
- export class RepoVerificationError extends Error {}
@@ -1,37 +0,0 @@
1
- import * as crypto from '@atproto/crypto'
2
- import { Repo } from '../src/repo'
3
- import { MemoryBlockstore } from '../src/storage'
4
- import * as util from './_util'
5
- import { Secp256k1Keypair } from '@atproto/crypto'
6
-
7
- describe('Rebases', () => {
8
- let storage: MemoryBlockstore
9
- let keypair: crypto.Keypair
10
- let repo: Repo
11
-
12
- it('fills a repo with data', async () => {
13
- storage = new MemoryBlockstore()
14
- keypair = await Secp256k1Keypair.create()
15
- repo = await Repo.create(storage, keypair.did(), keypair)
16
- const filled = await util.fillRepo(repo, keypair, 100)
17
- repo = filled.repo
18
- })
19
-
20
- it('rebases the repo & preserves contents', async () => {
21
- const dataCidBefore = await repo.data.getPointer()
22
- const contents = await repo.getContents()
23
- repo = await repo.rebase(keypair)
24
- const rebasedContents = await repo.getContents()
25
- expect(rebasedContents).toEqual(contents)
26
- const dataCidAfter = await repo.data.getPointer()
27
- expect(dataCidAfter.equals(dataCidBefore)).toBeTruthy()
28
- })
29
-
30
- it('only keeps around relevant cids', async () => {
31
- const allCids = await repo.data.allCids()
32
- allCids.add(repo.cid)
33
- for (const cid of storage.blocks.cids()) {
34
- expect(allCids.has(cid)).toBeTruthy()
35
- }
36
- })
37
- })
@@ -1,75 +0,0 @@
1
- import * as crypto from '@atproto/crypto'
2
- import { CidSet, Repo, RepoContents, RepoVerificationError } from '../../src'
3
- import { MemoryBlockstore } from '../../src/storage'
4
- import * as sync from '../../src/sync'
5
-
6
- import * as util from '../_util'
7
- import { streamToBuffer } from '@atproto/common'
8
- import { CarReader } from '@ipld/car/reader'
9
-
10
- describe('Checkout Sync', () => {
11
- let storage: MemoryBlockstore
12
- let syncStorage: MemoryBlockstore
13
- let repo: Repo
14
- let keypair: crypto.Keypair
15
- let repoData: RepoContents
16
-
17
- const repoDid = 'did:example:test'
18
-
19
- beforeAll(async () => {
20
- storage = new MemoryBlockstore()
21
- keypair = await crypto.Secp256k1Keypair.create()
22
- repo = await Repo.create(storage, repoDid, keypair)
23
- syncStorage = new MemoryBlockstore()
24
- const filled = await util.fillRepo(repo, keypair, 20)
25
- repo = filled.repo
26
- repoData = filled.data
27
- })
28
-
29
- it('sync a non-historical repo checkout', async () => {
30
- const checkoutCar = await streamToBuffer(
31
- sync.getCheckout(storage, repo.cid),
32
- )
33
- const checkout = await sync.loadCheckout(
34
- syncStorage,
35
- checkoutCar,
36
- repoDid,
37
- keypair.did(),
38
- )
39
- const checkoutRepo = await Repo.load(syncStorage, checkout.root)
40
- const contents = await checkoutRepo.getContents()
41
- expect(contents).toEqual(repoData)
42
- expect(checkout.contents).toEqual(repoData)
43
- })
44
-
45
- it('does not sync unneeded blocks during checkout', async () => {
46
- const commitPath = await storage.getCommitPath(repo.cid, null)
47
- if (!commitPath) {
48
- throw new Error('Could not get commitPath')
49
- }
50
- const hasGenesisCommit = await syncStorage.has(commitPath[0])
51
- expect(hasGenesisCommit).toBeFalsy()
52
- })
53
-
54
- it('does not sync duplicate blocks', async () => {
55
- const carBytes = await streamToBuffer(sync.getCheckout(storage, repo.cid))
56
- const car = await CarReader.fromBytes(carBytes)
57
- const cids = new CidSet()
58
- for await (const block of car.blocks()) {
59
- if (cids.has(block.cid)) {
60
- throw new Error(`duplicate block: :${block.cid.toString()}`)
61
- }
62
- cids.add(block.cid)
63
- }
64
- })
65
-
66
- it('throws on a bad signature', async () => {
67
- const badRepo = await util.addBadCommit(repo, keypair)
68
- const checkoutCar = await streamToBuffer(
69
- sync.getCheckout(storage, badRepo.cid),
70
- )
71
- await expect(
72
- sync.loadCheckout(syncStorage, checkoutCar, repoDid, keypair.did()),
73
- ).rejects.toThrow(RepoVerificationError)
74
- })
75
- })
@@ -1,92 +0,0 @@
1
- import * as crypto from '@atproto/crypto'
2
- import { Repo, RepoContents } from '../../src'
3
- import { MemoryBlockstore } from '../../src/storage'
4
- import * as sync from '../../src/sync'
5
-
6
- import * as util from '../_util'
7
- import { streamToBuffer } from '@atproto/common'
8
-
9
- describe('Diff Sync', () => {
10
- let storage: MemoryBlockstore
11
- let syncStorage: MemoryBlockstore
12
- let repo: Repo
13
- let keypair: crypto.Keypair
14
- let repoData: RepoContents
15
-
16
- const repoDid = 'did:example:test'
17
-
18
- beforeAll(async () => {
19
- storage = new MemoryBlockstore()
20
- keypair = await crypto.Secp256k1Keypair.create()
21
- repo = await Repo.create(storage, repoDid, keypair)
22
- syncStorage = new MemoryBlockstore()
23
- })
24
-
25
- let syncRepo: Repo
26
-
27
- it('syncs an empty repo', async () => {
28
- const car = await streamToBuffer(sync.getFullRepo(storage, repo.cid))
29
- const loaded = await sync.loadFullRepo(
30
- syncStorage,
31
- car,
32
- repoDid,
33
- keypair.did(),
34
- )
35
- syncRepo = await Repo.load(syncStorage, loaded.root)
36
- const data = await syncRepo.data.list(10)
37
- expect(data.length).toBe(0)
38
- })
39
-
40
- it('syncs a repo that is starting from scratch', async () => {
41
- const filled = await util.fillRepo(repo, keypair, 100)
42
- repo = filled.repo
43
- repoData = filled.data
44
-
45
- const car = await streamToBuffer(sync.getFullRepo(storage, repo.cid))
46
- const loaded = await sync.loadFullRepo(
47
- syncStorage,
48
- car,
49
- repoDid,
50
- keypair.did(),
51
- )
52
- syncRepo = await Repo.load(syncStorage, loaded.root)
53
- const contents = await syncRepo.getContents()
54
- expect(contents).toEqual(repoData)
55
- await util.verifyRepoDiff(loaded.writeLog, {}, repoData)
56
- })
57
-
58
- it('syncs a repo that is behind', async () => {
59
- // add more to providers's repo & have consumer catch up
60
- const beforeData = structuredClone(repoData)
61
- const edited = await util.editRepo(repo, repoData, keypair, {
62
- adds: 20,
63
- updates: 20,
64
- deletes: 20,
65
- })
66
- repo = edited.repo
67
- repoData = edited.data
68
- const diffCar = await streamToBuffer(
69
- sync.getCommits(storage, repo.cid, syncRepo.cid),
70
- )
71
- const loaded = await sync.loadDiff(
72
- syncRepo,
73
- diffCar,
74
- repoDid,
75
- keypair.did(),
76
- )
77
- syncRepo = await Repo.load(syncStorage, loaded.root)
78
- const contents = await syncRepo.getContents()
79
- expect(contents).toEqual(repoData)
80
- await util.verifyRepoDiff(loaded.writeLog, beforeData, repoData)
81
- })
82
-
83
- it('throws on a bad signature', async () => {
84
- const badRepo = await util.addBadCommit(repo, keypair)
85
- const diffCar = await streamToBuffer(
86
- sync.getCommits(storage, badRepo.cid, syncRepo.cid),
87
- )
88
- await expect(
89
- sync.loadDiff(syncRepo, diffCar, repoDid, keypair.did()),
90
- ).rejects.toThrow('Invalid signature on commit')
91
- })
92
- })
@@ -1 +0,0 @@
1
- {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/typescript/lib/lib.esnext.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.webworker.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../node_modules/zod/lib/helpers/typealiases.d.ts","../../node_modules/zod/lib/helpers/util.d.ts","../../node_modules/zod/lib/zoderror.d.ts","../../node_modules/zod/lib/locales/en.d.ts","../../node_modules/zod/lib/errors.d.ts","../../node_modules/zod/lib/helpers/parseutil.d.ts","../../node_modules/zod/lib/helpers/enumutil.d.ts","../../node_modules/zod/lib/helpers/errorutil.d.ts","../../node_modules/zod/lib/helpers/partialutil.d.ts","../../node_modules/zod/lib/types.d.ts","../../node_modules/zod/lib/external.d.ts","../../node_modules/zod/lib/index.d.ts","../../node_modules/zod/index.d.ts","../nsid/src/index.ts","../common-web/src/check.ts","../common-web/src/util.ts","../common-web/src/async.ts","../common-web/src/tid.ts","../../node_modules/multiformats/types/src/bases/interface.d.ts","../../node_modules/multiformats/types/src/hashes/interface.d.ts","../../node_modules/multiformats/types/src/cid.d.ts","../../node_modules/uint8arrays/types/src/compare.d.ts","../../node_modules/uint8arrays/types/src/concat.d.ts","../../node_modules/uint8arrays/types/src/equals.d.ts","../../node_modules/multiformats/types/src/bases/base.d.ts","../../node_modules/uint8arrays/types/src/util/bases.d.ts","../../node_modules/uint8arrays/types/src/from-string.d.ts","../../node_modules/uint8arrays/types/src/to-string.d.ts","../../node_modules/uint8arrays/types/src/xor.d.ts","../../node_modules/uint8arrays/types/src/index.d.ts","../common-web/src/ipld.ts","../common-web/src/types.ts","../common-web/src/times.ts","../../node_modules/graphemer/lib/graphemeriterator.d.ts","../../node_modules/graphemer/lib/graphemer.d.ts","../../node_modules/graphemer/lib/index.d.ts","../common-web/src/strings.ts","../common-web/src/index.ts","../identifier/src/reserved.ts","../identifier/src/handle.ts","../identifier/src/did.ts","../identifier/src/index.ts","../uri/src/validation.ts","../uri/src/index.ts","../../node_modules/iso-datestring-validator/dist/is-valid-date/is-valid-date.function.d.ts","../../node_modules/iso-datestring-validator/dist/is-valid-iso-datestring/is-valid-iso-datestring.function.d.ts","../../node_modules/iso-datestring-validator/dist/is-valid-time/is-valid-time.function.d.ts","../../node_modules/iso-datestring-validator/dist/is-valid-year-month/is-valid-year-month.function.d.ts","../../node_modules/iso-datestring-validator/dist/index.d.ts","../lexicon/src/validators/formats.ts","../lexicon/src/validators/primitives.ts","../lexicon/src/blob-refs.ts","../lexicon/src/validators/blob.ts","../lexicon/src/validators/complex.ts","../lexicon/src/validators/xrpc.ts","../lexicon/src/validation.ts","../lexicon/src/lexicons.ts","../lexicon/src/util.ts","../lexicon/src/types.ts","../lexicon/src/serialize.ts","../lexicon/src/index.ts","../common/src/fs.ts","../../node_modules/multiformats/types/src/hashes/digest.d.ts","../../node_modules/multiformats/types/src/hashes/hasher.d.ts","../../node_modules/multiformats/types/src/varint.d.ts","../../node_modules/multiformats/types/src/bytes.d.ts","../../node_modules/multiformats/types/src/index.d.ts","../../node_modules/multiformats/types/src/codecs/interface.d.ts","../../node_modules/multiformats/types/src/block.d.ts","../../node_modules/multiformats/types/src/codecs/raw.d.ts","../../node_modules/multiformats/types/src/hashes/sha2.d.ts","../../node_modules/@ipld/dag-cbor/types/index.d.ts","../common/src/ipld.ts","../../node_modules/cbor-x/index.d.ts","../common/src/ipld-multi.ts","../../node_modules/@types/node/ts4.8/assert.d.ts","../../node_modules/@types/node/ts4.8/assert/strict.d.ts","../../node_modules/@types/node/ts4.8/globals.d.ts","../../node_modules/@types/node/ts4.8/async_hooks.d.ts","../../node_modules/@types/node/ts4.8/buffer.d.ts","../../node_modules/@types/node/ts4.8/child_process.d.ts","../../node_modules/@types/node/ts4.8/cluster.d.ts","../../node_modules/@types/node/ts4.8/console.d.ts","../../node_modules/@types/node/ts4.8/constants.d.ts","../../node_modules/@types/node/ts4.8/crypto.d.ts","../../node_modules/@types/node/ts4.8/dgram.d.ts","../../node_modules/@types/node/ts4.8/diagnostics_channel.d.ts","../../node_modules/@types/node/ts4.8/dns.d.ts","../../node_modules/@types/node/ts4.8/dns/promises.d.ts","../../node_modules/@types/node/ts4.8/domain.d.ts","../../node_modules/@types/node/ts4.8/dom-events.d.ts","../../node_modules/@types/node/ts4.8/events.d.ts","../../node_modules/@types/node/ts4.8/fs.d.ts","../../node_modules/@types/node/ts4.8/fs/promises.d.ts","../../node_modules/@types/node/ts4.8/http.d.ts","../../node_modules/@types/node/ts4.8/http2.d.ts","../../node_modules/@types/node/ts4.8/https.d.ts","../../node_modules/@types/node/ts4.8/inspector.d.ts","../../node_modules/@types/node/ts4.8/module.d.ts","../../node_modules/@types/node/ts4.8/net.d.ts","../../node_modules/@types/node/ts4.8/os.d.ts","../../node_modules/@types/node/ts4.8/path.d.ts","../../node_modules/@types/node/ts4.8/perf_hooks.d.ts","../../node_modules/@types/node/ts4.8/process.d.ts","../../node_modules/@types/node/ts4.8/punycode.d.ts","../../node_modules/@types/node/ts4.8/querystring.d.ts","../../node_modules/@types/node/ts4.8/readline.d.ts","../../node_modules/@types/node/ts4.8/readline/promises.d.ts","../../node_modules/@types/node/ts4.8/repl.d.ts","../../node_modules/@types/node/ts4.8/stream.d.ts","../../node_modules/@types/node/ts4.8/stream/promises.d.ts","../../node_modules/@types/node/ts4.8/stream/consumers.d.ts","../../node_modules/@types/node/ts4.8/stream/web.d.ts","../../node_modules/@types/node/ts4.8/string_decoder.d.ts","../../node_modules/@types/node/ts4.8/test.d.ts","../../node_modules/@types/node/ts4.8/timers.d.ts","../../node_modules/@types/node/ts4.8/timers/promises.d.ts","../../node_modules/@types/node/ts4.8/tls.d.ts","../../node_modules/@types/node/ts4.8/trace_events.d.ts","../../node_modules/@types/node/ts4.8/tty.d.ts","../../node_modules/@types/node/ts4.8/url.d.ts","../../node_modules/@types/node/ts4.8/util.d.ts","../../node_modules/@types/node/ts4.8/v8.d.ts","../../node_modules/@types/node/ts4.8/vm.d.ts","../../node_modules/@types/node/ts4.8/wasi.d.ts","../../node_modules/@types/node/ts4.8/worker_threads.d.ts","../../node_modules/@types/node/ts4.8/zlib.d.ts","../../node_modules/@types/node/ts4.8/globals.global.d.ts","../../node_modules/@types/node/ts4.8/index.d.ts","../../node_modules/pino-abstract-transport/index.d.ts","../../node_modules/pino-pretty/index.d.ts","../../node_modules/pino-std-serializers/index.d.ts","../../node_modules/sonic-boom/types/index.d.ts","../../node_modules/pino/pino.d.ts","../common/src/logger.ts","../common/src/streams.ts","../common/src/index.ts","./src/block-map.ts","./src/cid-set.ts","./src/error.ts","../../node_modules/@ipld/car/types/api.d.ts","../../node_modules/@ipld/car/types/lib/coding.d.ts","../../node_modules/@ipld/car/types/lib/reader-browser.d.ts","../../node_modules/@ipld/car/types/lib/reader.d.ts","../../node_modules/@ipld/car/types/lib/writer-browser.d.ts","../../node_modules/@ipld/car/types/lib/writer.d.ts","../crypto/src/const.ts","../../node_modules/@noble/curves/abstract/utils.d.ts","../../node_modules/@noble/curves/abstract/modular.d.ts","../../node_modules/@noble/curves/abstract/curve.d.ts","../../node_modules/@noble/curves/abstract/weierstrass.d.ts","../../node_modules/@noble/curves/abstract/hash-to-curve.d.ts","../../node_modules/@noble/curves/p256.d.ts","../crypto/src/p256/encoding.ts","../../node_modules/@noble/curves/secp256k1.d.ts","../crypto/src/secp256k1/encoding.ts","../../node_modules/@noble/hashes/utils.d.ts","../../node_modules/@noble/hashes/_sha2.d.ts","../../node_modules/@noble/hashes/sha256.d.ts","../crypto/src/p256/operations.ts","../crypto/src/types.ts","../crypto/src/p256/plugin.ts","../crypto/src/secp256k1/operations.ts","../crypto/src/secp256k1/plugin.ts","../crypto/src/plugins.ts","../crypto/src/did.ts","../crypto/src/multibase.ts","../crypto/src/sha.ts","../crypto/src/random.ts","../crypto/src/verify.ts","../crypto/src/p256/keypair.ts","../crypto/src/secp256k1/keypair.ts","../crypto/src/index.ts","./src/types.ts","./src/logger.ts","./src/readable-repo.ts","./src/repo.ts","./src/util.ts","./src/parse.ts","./src/storage/readable-blockstore.ts","./src/storage/repo-storage.ts","./src/storage/memory-blockstore.ts","./src/storage/sync-storage.ts","./src/storage/types.ts","./src/storage/index.ts","./src/mst/util.ts","./src/mst/mst.ts","./src/mst/walker.ts","./src/mst/diff.ts","./src/mst/index.ts","./src/data-diff.ts","./src/verify.ts","./src/sync/consumer.ts","./src/sync/provider.ts","./src/sync/index.ts","./src/index.ts","../../node_modules/@babel/types/lib/index.d.ts","../../node_modules/@types/babel__generator/index.d.ts","../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../node_modules/@types/babel__template/index.d.ts","../../node_modules/@types/babel__traverse/index.d.ts","../../node_modules/@types/babel__core/index.d.ts","../../node_modules/@types/bn.js/index.d.ts","../../node_modules/@types/connect/index.d.ts","../../node_modules/@types/body-parser/index.d.ts","../../node_modules/@types/cors/index.d.ts","../../node_modules/@types/elliptic/index.d.ts","../../node_modules/@types/range-parser/index.d.ts","../../node_modules/@types/qs/index.d.ts","../../node_modules/@types/express-serve-static-core/index.d.ts","../../node_modules/@types/mime/mime.d.ts","../../node_modules/@types/mime/index.d.ts","../../node_modules/@types/serve-static/index.d.ts","../../node_modules/@types/express/index.d.ts","../../node_modules/@types/graceful-fs/index.d.ts","../../node_modules/@types/http-errors/index.d.ts","../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../node_modules/@types/istanbul-lib-report/index.d.ts","../../node_modules/@types/istanbul-reports/index.d.ts","../../node_modules/@jest/expect-utils/build/index.d.ts","../../node_modules/chalk/index.d.ts","../../node_modules/@sinclair/typebox/typebox.d.ts","../../node_modules/@jest/schemas/build/index.d.ts","../../node_modules/pretty-format/build/index.d.ts","../../node_modules/jest-diff/build/index.d.ts","../../node_modules/jest-matcher-utils/build/index.d.ts","../../node_modules/expect/build/index.d.ts","../../node_modules/@types/jest/index.d.ts","../../node_modules/@types/json-schema/index.d.ts","../../node_modules/@types/jsonwebtoken/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/nodemailer/lib/dkim/index.d.ts","../../node_modules/@types/nodemailer/lib/mailer/mail-message.d.ts","../../node_modules/@types/nodemailer/lib/xoauth2/index.d.ts","../../node_modules/@types/nodemailer/lib/mailer/index.d.ts","../../node_modules/@types/nodemailer/lib/mime-node/index.d.ts","../../node_modules/@types/nodemailer/lib/smtp-connection/index.d.ts","../../node_modules/@types/nodemailer/lib/shared/index.d.ts","../../node_modules/@types/nodemailer/lib/json-transport/index.d.ts","../../node_modules/@types/nodemailer/lib/sendmail-transport/index.d.ts","../../node_modules/@types/nodemailer/lib/ses-transport/index.d.ts","../../node_modules/@types/nodemailer/lib/smtp-pool/index.d.ts","../../node_modules/@types/nodemailer/lib/smtp-transport/index.d.ts","../../node_modules/@types/nodemailer/lib/stream-transport/index.d.ts","../../node_modules/@types/nodemailer/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts","../../node_modules/pg-types/index.d.ts","../../node_modules/pg-protocol/dist/messages.d.ts","../../node_modules/pg-protocol/dist/serializer.d.ts","../../node_modules/pg-protocol/dist/parser.d.ts","../../node_modules/pg-protocol/dist/index.d.ts","../../node_modules/@types/pg/index.d.ts","../../node_modules/@types/prettier/index.d.ts","../../node_modules/@types/sharp/index.d.ts","../../node_modules/@types/stack-utils/index.d.ts","../../node_modules/@types/ws/index.d.ts","../../node_modules/@types/yargs-parser/index.d.ts","../../node_modules/@types/yargs/index.d.ts"],"fileInfos":[{"version":"f20c05dbfe50a208301d2a1da37b9931bce0466eb5a1f4fe240971b4ecc82b67","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","d11a03592451da2d1065e09e61f4e2a9bf68f780f4f6623c18b57816a9679d17","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"9b087de7268e4efc5f215347a62656663933d63c0b1d7b624913240367b999ea","affectsGlobalScope":true},{"version":"3260e3386d9535b804205bdddb5618a9a27735bd22927f48ad54363abcd23d45","affectsGlobalScope":true},{"version":"adb09ec0a64fc17dbbc4a228b3b18aa5f01db3440a6b0cbb02354df58674d584","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"8cc8c5a3bac513368b0157f3d8b31cfdcfe78b56d3724f30f80ed9715e404af8","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"55f400eec64d17e888e278f4def2f254b41b89515d3b88ad75d5e05f019daddd","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"81cac4cbc92c0c839c70f8ffb94eb61e2d32dc1c3cf6d95844ca099463cf37ea","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"775d9c9fd150d5de79e0450f35bc8b8f94ae64e3eb5da12725ff2a649dccc777","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"34c839eaaa6d78c8674ae2c37af2236dee6831b13db7b4ef4df3ec889a04d4f2","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"ab7d58e6161a550ff92e5aff755dc37fe896245348332cd5f1e1203479fe0ed1","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"a4da0551fd39b90ca7ce5f68fb55d4dc0c1396d589b612e1902f68ee090aaada","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"52d1bb7ab7a3306fd0375c8bff560feed26ed676a5b0457fa8027b563aecb9a4","affectsGlobalScope":true},"5487b97cfa28b26b4a9ef0770f872bdbebd4c46124858de00f242c3eed7519f4","7a01f546ace66019156e4232a1bee2fabc2f8eabeb052473d926ee1693956265","fb53b1c6a6c799b7e3cc2de3fb5c9a1c04a1c60d4380a37792d84c5f8b33933b","8485b6da53ec35637d072e516631d25dae53984500de70a6989058f24354666f","ebe80346928736532e4a822154eb77f57ef3389dbe2b3ba4e571366a15448ef2","c2cb3c8ff388781258ea9ddbcd8a947f751bddd6886e1d3b3ea09ddaa895df80","f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","98a9cc18f661d28e6bd31c436e1984f3980f35e0f0aa9cf795c54f8ccb667ffe","c76b0c5727302341d0bdfa2cc2cee4b19ff185b554edb6e8543f0661d8487116","19903057d0249e45c579bef2b771c37609e4853a8b88adbb0b6b63f9e1d1f372","f5ef066942e4f0bd98200aa6a6694b831e73200c9b3ade77ad0aa2409e8fe1b1","b9e99cd94f4166a245f5158f7286c05406e2a4c694619bceb7a4f3519d1d768e","5568d7c32e5cf5f35e092649f4e5e168c3114c800b1d7545b7ae5e0415704802","d4e48a50f33cfdf5e5480849afd0462e43e2860b5dcf758f9a58487651d48a57","2eac0c94868a313867d229d227285d116b05dda41fe5540057fef78effe2ad5a","164cc5d22b4a28b195d3102f440b8446116ef0657fa1d5cf0343c4daf586bb73","0158f65dd661b1917cabf88db0753f9e054b4d0e242893ef1273cafd59bd6a5e","2ebb0df55a1828c9b4954ccc27ffb2d48a8b343f31e68d74265c2afad331c8de","930446bf32192f698b78f8ea4b309d8c2cfe02ab5ad78e4db907417405ebf5e7","5d3e07dbeabff37885262d9b4bd21c3185d95a09a268ab795f81135046a32bf4","7d309fbde13b5e30eff77c07a28b66451b0b50b83564d0cfa6a2a52c8b69aae6","90cf3b12cd05d01c42193be1cd25af2c8dbef608ae143e5eaacf73cdb99840d2","4e37a214f2cd5a350affba5580d1d7c01ca83da6393ef2c13a66d74fc7b95eac","3157fa89ebde7e5d5499da49d8ae13e523c1de12d5c1285251c17b7672887b1e","729b819a6779d842c3a6908ba4ed93d9fe50e2533d989f05f55a4811b3dd9910","e47d9ea931ddade1deee3946884e8dc7aafbf4af74f9ecb85ef77c895100bd39","0841c3aed9354ad025302d5c7cde53916825047646e559d918b62a31500aebe7","7c515715da56f17e695e2c3611cf073d2cebfd417497652b35f9042b7235d5b2","a4942fc385f0368be5a50d7e7280c5c6ad47b082a9eaa0284042c89ce2df9e08","91072b0ddd41ce84a3c85f36cf927f2e7b1724f7ce71accf16715d99bafc113a","68927171b834eaccf92e5d7cfcd70f837b2f23415e95a0a474b4ed39acd3b190","041fc48f8e494a20975cb09760b3329dd20a9bf9b30a005bea5388035d58cb86","cef9f120bb3c8fa482010add8056cd37b279a1588f583c36ff48bf898af3305e","12d843cd781a162fe691c4ec7fecb615e7314833d857300f0221cf7738373835","6916623e037f249c736693584bc79009c70b92debb4997cedbf9c82475bf6f57","6e4f34b9b8e1870373f35117b7a45f7438712bcd473ba30a01748999ccf104e9","095e4a36318cdc81369b6b7a311123f1aa654a6d450acb4b33e94877f0c218b1","cf4eca11030b5f9ec3937e21b77dbc074a777930daab31e81c9497b4032af2b9","3427489aee752759c7683018993ca681c8635e8b2b6fc6a4219f0e80c5b43583","e2c6ed5a413803bb1bb69682da20f790df16c161bb8ba8a14d5c093318e9b232","3b517cf900c258d29107284d5a63e41f6c0cb053bc3d80903b40299cb2124f7d","86f581a7081d39ce5ca401cebc27cf521ac6814d4751ab2431628b508bbd42bf","38c30bde16d1745f093865f4a31b2a50946c672fca3b5e0bad80c91e0342ba98","c25cbf6880557c1dc347b2180fee88703b2afcd6427788a446a7b8d41f885ecf","d0a24e00653be2a93b83449af73d3dfdecd6d80e67ea2d600d81e2ba40f43558","d0cfa8040af641c79e548c12c1ad91ef0cb5bd09146b6f630959931594f43d3b","3f1647fae43442e77958d732c6680060fe420bfd38f8b8c9273bc7c57e0b29ef","9073a0de3bb3da4da39a57c03369283866c50bb7476c1dc238ef4c3e267fb9b5","d56436ff9eaaf3ad8755d6605b25d0a632bb0c72102f2fac80342a42323384e8","b91670b2f11ea83de3af5ff2ff0799ae90f535eca1c7c897a4130c586b908763","46271b051d5295b55550f57a6b88756a3fd62464eeff5f14967484a6d7e5925a","a952889d3f903a3b81c461553ee7cba0aef5cd6c07ee7c19555921b060c3e278","284c08a0472ec3e784dd5425c8e5ad492538eab344d0181bdc11de0039d00a62","408d5512547a2ea96ba9ad94794292eb4ca2df61adb642588fd2b3f9081c573f","09108e84d17bf3d9c27d8425d02d7fc792d745ea56819d9ef1824b1466ef7899","3379180ffc10e9e4266552e85f0d9d5c3f91f83ebeba74cbf20e455aff5a6a4e","b36786a6a9a46aeb178fe212379be5c7d395328d8648f0c3cddc75c7f8b98ff8","d9208a2f5b99acb5ab5f4d65c9dd3e48877ca5c7bf830d47b68925f26e521614","1f41c6a2208de55bc7f4b9c75dc003e6b5d2a592b411e69387879c34cbb9e60c","f9504071cbaadb1ffbf236a1a4740f4d7711ee0b19acce20c2e1ab05b09e767f","18bb8183f7b99634111b309a592c828b42fe79f1015a19864042cbed2c4a7907","414bbfcb7cbe0e523d6a782cc433e6e84c02285efc8cccfd8c8a543182a448de","853c5447ea8851049c1d008e130d23030d9fe3b5a8405a0ae7e55b00e173692d","ba0b552579e1bbafd93208f9bc84a61838148bd17f22a8ea55c46eea9c895e7a","87b44430497cae7542bbd5ac2fb6663df6a465dea7a46be58a49cd9416530439","32b67d761db3999f1e482d0add405b695d3ec5607e07ae4c963a96334c331814","1428847d803b8342711c0b22208df4f83590cce15ef2c8f36ba53cea24f4616d","6bea75e2b9873f7c123ffef3edf16e7c49ff7cefd2756543d51786fb354c3211","ebb7adfc90de5d2001075bfc4b8e2530c7649d1cd219d75589b45cba22d06782","7b684ae75736b26fddc21144deda04c3ae391f95f8eb241ceb23b27096f76963","2f686fbec43c87bc9b9c3d0e237f780e0e822d2c3a9a25fc99a16030a294b764","2cb05bc199aa0aedcedced658aa99b423c2f7e56f11bd301adb6415e8c464696","86d9d09e43ca251e14a43cec731bca0458adf1775b00129d095c58a4a9972dad","5700bec2d07017bf20dd1790f6cf75afedac77f72ae3f30734d183199bec5b21","9e36f4def5f57b523d9fa08e2d7d061fb9c35aecb792951b5cb1a4cafd171ad6","7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"02873d070f9cb79f50833fbf4a9a27ac578a2edf8ddb8421eba1b37faba83bfb","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"c0db280fa6b09d7b8d6720a19a47f485956a41ee0e6914f1b704033eb69c6058","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","afcc1c426b76db7ec80e563d4fb0ba9e6bcc6e63c2d7e9342e649dc56d26347f","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","489532ff54b714f0e0939947a1c560e516d3ae93d51d639ab02e907a0e950114","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true},"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","b01a80007e448d035a16c74b5c95a5405b2e81b12fabcf18b75aa9eb9ef28990","04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","dbe5aa5a5dd8bd1c6a8d11b1310c3f0cdabaacc78a37b394a8c7b14faeb5fb84","2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"d4ac44f01d42f541631c5fc88d0ed8efac29a3a3ad9a745d9fd58f8b61ed132e","7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30",{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","3163f47436da41706c6e2b3c1511f3b7cce9f9f3905b2f3e01246c48b4ba7d14","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","213fc4f2b172d8beb74b77d7c1b41488d67348066d185e4263470cbb010cd6e8",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true},{"version":"f7db71191aa7aac5d6bc927ed6e7075c2763d22c7238227ec0c63c8cf5cb6a8b","affectsGlobalScope":true},"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa",{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true},"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"652ee9c5103e89102d87bc20d167a02a0e3e5e53665674466c8cfea8a9e418c7","0d47fc0aed3e69968b3e168c4f2afba7f02fe81b7d40f34c5fbe4c8ed14222ac","955081e7442259cc2cbf0f7f122bc2fa10387c3c5298a8bd4cd402dbcefce4cf","043e933c8127f2215f940035bfac94354b82a49f419bb77af0045f0c57e6a05e","9d9f4da63084ac107eddda8b4ea92d7ee443e0c86601e8c844943b82fd3ef6f8","bde15a4b72e85c0816548fe37f82ae6fe9a6238e5b60ebe9a9449f9293e2d456","dacf98eb56a73c300285659e07ecc8ca9289c99a506e94ad9685d4728cc1561a","9a7013ab5645b17c715281600606b7107e3139b89e2f861b79565a0632ddcb9d","e677c6eb2bc3f6453afcf0f198e319448e42508ceae8d5a120e4320e9695bf91",{"version":"85c3c3100a025a18fa0d96d41d2ece17d03b3d24e5d6654ec56adcb1648c9ec5","signature":"fb161978bd818122b6cd023f0f1fa8a93ee1601f798516a11991dae9accbbb7f"},{"version":"584c4be65261db0ea0c1f48d01fc8a9b33ff27a81280b2b37755106fa631fdb1","signature":"2f1b2df4cfc93709cfb32ff94a3b1ba48c20b0cde6458342be96062473a4fae5"},{"version":"d1a17975e0b0b664d94895198f84ee20cd06e3ad33402b389f79e709732a6ae4","signature":"bd744ce332ffd02be7445dac59ff2e2bb13d7da12a4c40aeeb75c42f10982d42"},"30d9b4052cd71f8f90cc5d3205950539d27f49803676ec13d4e5b1dd58733c2f","a6006cdf560a2b722ca2943c7ba5429eb2b61389dc89889315d77c5980b1b3a1","5ad9fe68a14e80eb7c761ee5c22a1aaedf37e1109cff3e49eee2da4f75e38a50","3e434e0f832573b4e40417408a7f82a3aca2a651912626986828bcfcb3f4aab5","e000fe1ac81a9dd7ed058ee62fc4b8d523b71122cb144045d05630bf751c75ee","75aa316561ed73fbc9679e62f4e3cfc3285e1dd04637016ce3990e5fe13957f3","b86a270598e5424a18bffef7ceadb47d90cba86f0c38e9dfe830cee5b3bc86ec","1253b8e9b5c56f9d301ebb1370d2bb427f66132a51e8b6716af6f665dc200c07","21920ee9ec85cc0591d16e4f45bffdcfc64b6bd62e59896036730f330e267db3","d0b3609e8e7afed0fd0570152255458407e67249b94f6603afdfd68599423f21","51f039379b8f5c5c68137e8387682982aefd8c3e4bc6d7ddfdb2c4fdd949a87a","0f4154a3ba7d3fc454ca43c94c286ef178eb21cf7e74056fd263811253ba1f6a","0abe52fb9f112becef29400328d7b18267acb82f3189ac79a514a790fc42513c","5364d9a8ca9001bd547e6ebdbf8f4669d77fcaa915853c0f18d53b4230bb4890","7b4d6ac7d8eeb705af896d6a0262e928a9da37853964d6200e582d9c91400dc3","f848e2bb3ac9cd397d65b90c6d4f079bea33e9adc5eaef56941f35d83af63305","3c3ca314a2b01902ef19b499be6e052925a849f14e2d9185afb323df3d3a72b6","1e7146a407bf85762b80681cd4aa3b544000e30c9b24d04685dfa69f82a48fd9","a3c42863fed9b49c35144d60aa0b2865b5fede65ea0050a28f45381af6dae035","638435a8fcd108eac7a717fb79ff5a955c9db334a04b518f5722985bcbf5282e","8748195866b57fd35a9fc67f04a5086ee19e0d46f6ee197d87e77a7d475a85af","ec824e6f76dce81ea30941d11a6143a32fdce3d8a82cbf8f889c34c4874a0d0e","9f37eb594c8db551dbf57fa50166b0fd4f50dbfd876ee1d60193a238f52eac3e","d1bdab0aff5ee23ac869abce94c7389f2010f18118e979e2f8e76a38f629faa9","dba391c789c85b1d249eb24656e6524d1a0b9a203dca53848365db60a7fcc1fa","c3195a40ae5577d8e1b1ab01691cb5e10ca50b45e04318457ab818a187a92b0d","023c4d29a969c3d938c1f27b0787ce987a248180642353992730e36af657b555","682f2b8fa18ca664a458af7420142e47330bee4d5ccd8f0b1397a78a64bb42ea","786b90eb033e8fa3f1b0d80aa6e260c37a765507f2062eae5fece27d0871b0aa","122603f97b5fdb8e65bc04e368702c742b32366ec01a989e66de2ecf7cec7ef4","3e346ae0a52a10eaef90a659f4af82aad13368d3a0e0c2e87711f12211ec31de","b9bb7165e222d121e47e79ad83308238b8ddee28fc67039e531453ba3a3e0cd9","410dfc003d78ffa9ed87d208f1d3974e55c9260b3dd7b7e602dceca1c13cc3d2",{"version":"8652d726671873595381d463b094f378ce02b3f5512d5780f95f9b76c2395015","signature":"aee608370cc8dd4050f2ad9cbf3c57889546761b926a299fdef440f06295b7a8"},{"version":"046e4a93ed85a529216936f87c551bfce05c2d87e32cf6dd786def95f9fc83e4","signature":"25d0df9893c6c7f0421353081826302fdd9d0fe32880e50cdbf20c868b8ade89"},{"version":"f93dc3ef302f287b19cb3fcfcc8df6c4368af514102cb6e3b847e148d74d9e59","signature":"232f095c1ebd67908f5259f284d5ab56bf8171deda2f7441a5f4a5cb08e69dd9"},{"version":"a40a4141d19e651a81375ee1e6276e1349a20d25126317012f9c699bfbdb0091","signature":"539c11f1142909c37b49731cd74a6f5b4c6719bcbc04da9bcf43da3a38e7282f"},{"version":"2ac7a6ef7c529be2dbfec5f284d1f6358f1976f33901b75c79da7904fed0f2b2","signature":"3a0556cca9d9c37ce9d7960a21b2817161a859354d53bee43915f4498f7a7a1d"},{"version":"268c12ad884211d5fb70389e6a1b99d6890d9da276eb88136502955ef18b77bd","signature":"7ef50a3ac4bccdbb6cd7967f3aab92c2f13d0366deb4f48ccef11116d92d7e02"},{"version":"32215582a3ff844f6bfd33687d5a1b6e4b9af2850212a5fab53f2b445a9b0bda","signature":"e2d6efa4d26b26a48f87e40bd5035cb527d31243e55294b50c47c18073301089"},{"version":"caaa7312cd7250823823a6e802a581354c2718303a03452886c0c3e00e910320","signature":"fb24b2d6e3a3da5763362295410d4c3a47e6933fa6055996b90b9597183c9764"},{"version":"8ef6119e7a1c031c988e4b54a0a0296479d173f50418f44f243075b2365d47cb","signature":"9527afacc5979e335404f1b062c57ce1baaa232761c5c6fe5f202885830d8ae8"},{"version":"7540365b67437c6a7d3be2ddbcc92a32fe5b6f86fcf80e5851e918b9d4634488","signature":"ceb99f589f77bd7e38e9a3150edcc3bab2a382c178b6abfe6421cd1aa40b7eb0"},{"version":"dde127551216403f257d032a5b8a3fcccc6700c13d6cee5c4d5a88c5cc008981","signature":"e35bca4921a9e5e4611e9ce4e514e147aafcb9d2095f12996bcc977e6203abea"},{"version":"8df59da6bf1d96d47fa5494f7f24aec9670a0896f1a36f3c3b46749cbfe7c650","signature":"ab763776c8830c2d8b97efa551809820592f81054278645c48b54e26b8f34d0c"},{"version":"eab7156808b48d5deb92f9f9adf541a6222719f933f0e2ff2207bcad87ddaeb0","signature":"5cd556a8f15651feec06265f5eb12450d97c1448b9092f7cf33d97fe0d1e207c"},{"version":"e340e799ddd687fa0af235ddecafbdf2ab928efb3041ba80f6f61516345b5ba6","signature":"81bc4e001b4ccb887b564c3986fc760f47832428f3172d6c10446b3d625577d4"},{"version":"b6056a5b387d97fde02c6082d0404fc75a0703df32402138d641148e38f61819","signature":"3e436c6eabd877ce317a1d70a4c5f89608a8442a21be9063081e11b35f2e308b"},{"version":"e84c420c90d3943263ca61abcf546d13351773d281b3c4d13da9f6640d004b67","signature":"a5a605bf95832d399770755224462d48e36fafc441dd623b27602d930591cbb5"},{"version":"bd419cdb3ee43aa8858080f0730d05c91745a440d6b80eb802b31ac04ef7a624","signature":"daf02811f0fe444cdfc78618b80d280d1ab43dcb21dd2d2f081eeaea5a0c7870"},{"version":"3993f22d195871fbea70ba78d7aba7122ff7ed3fcd5905cb4a4e1df968f00ae5","signature":"a5a8a3818fb3890f3457a76bd2ff2a5d855d3f5ee1d90ea5965a97fdb1c41994"},{"version":"75f070a82726bda86f77699e9b72d44e90f428880e74ef5a44316ebaade61512","signature":"e84d0074d063e034bc87fb022f33d324de14f12871ebf863fb056f56116f064c"},{"version":"3db70245314e874e40d32523b4ef3d883732ef7de4272996c5585b7de4829f6e","signature":"8b59ef1e1e28fed0a671c677db2ee792b5f28bc4b06bacaf0164172ab3699ea7"},{"version":"b10fdf0fcac43271078ab67b6d5839989f8d27b41735aed705c0d63e247aec2a","signature":"848fd2b53ad72b1da1a12644411a50532256bb2d9c5f5befab1cc371e166f576"},{"version":"f39d2de319422679b851d2e8ed98f9c86aed4738f35fd4d67ac1cabaff6324fa","signature":"851504cb609dcd266086a06ab8896f1191b634a551287773bcfd87465c2c245e"},{"version":"063d7464353a06490b5c42b1fcf32e2507256197b6543d043ad16f2077154f99","signature":"d79e433bb2ba02d33b98a65f5e1c3892e6419d0c3a427ac3675c9ab56f6baf2d"},"c561efdf5ba0b62619745d4761fe2d9756f23db972e039367d15922fed67fd2f","cc957354aa3c94c9961ebf46282cfde1e81d107fc5785a61f62c67f1dd3ac2eb","7ec238b220ea991b6643e24191b1f552a65956d5f6de4c6144e700b9985265d8","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","dae3d1adc67ac3dbd1cd471889301339ec439837b5df565982345be20c8fca9a","5426e62886b7be7806312d31a00e8f7dccd6fe63ba9bbefe99ee2eab29cc48a3","01f7828047b5c6703d3c601473618b448f5506a88fcac852638b0715c3abf4eb","6d829824ead8999f87b6df21200df3c6150391b894b4e80662caa462bd48d073","afc559c1b93df37c25aef6b3dfa2d64325b0e112e887ee18bf7e6f4ec383fc90","6fbd58e4015b9ae31ea977d4d549eb24a1102cc798b57ec5d70868b542c06612","b8a427b9fe88504a6fb092e21adfe272d144394a2ced7f9e4adc3de7efa6e216","16d51f964ec125ad2024cf03f0af444b3bc3ec3614d9345cc54d09bab45c9a4c","ba601641fac98c229ccd4a303f747de376d761babb33229bb7153bed9356c9cc",{"version":"ae3fe461989bbd951344efc1f1fe932360ce7392e6126bdb225a82a1bbaf15ee","affectsGlobalScope":true},"5b9ecf7da4d71cf3832dbb8336150fa924631811f488ad4690c2dfec2b4fb1d7","951c85f75aac041dddbedfedf565886a7b494e29ec1532e2a9b4a6180560b50e","f47887b61c6cf2f48746980390d6cb5b8013518951d912cfb37fe748071942be","15c88bfd1b8dc7231ff828ae8df5d955bae5ebca4cf2bcb417af5821e52299ae","3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","f463d61cf39c3a6a5f96cdf7adfdb72a0b1d663f7b5d5b6dd042adba835430c2","8b06ac3faeacb8484d84ddb44571d8f410697f98d7bfa86c0fda60373a9f5215","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","f5638f7c2f12a9a1a57b5c41b3c1ea7db3876c003bab68e6a57afd6bcc169af0","763e521cf114b80e0dd0e21ca49b9f8ae62e8999555a5e7bade8ce36b33001c2","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","3e6bbb0883148627ca0854a9f62d820aaf1a0f1842f5568176721fef156b8f23","ffcc5500e77223169833fc6eb59b3a507944a1f89574e0a1276b0ea7fc22c4a4","22f13de9e2fe5f0f4724797abd3d34a1cdd6e47ef81fc4933fea3b8bf4ad524b","e3ba509d3dce019b3190ceb2f3fc88e2610ab717122dabd91a9efaa37804040d","cda0cb09b995489b7f4c57f168cd31b83dcbaa7aad49612734fb3c9c73f6e4f2","f72f8428f3c1caa22e9c247d046603b85b442c0dae7b77a7a0bc092c18867cb7",{"version":"195f63105abc03e72b6a176e3e34dfb5ac932b55db378fdc7874b1617e24b465","affectsGlobalScope":true},"f3e604694b624fa3f83f6684185452992088f5efb2cf136b62474aa106d6f1b6","bb4ed283cfb3db7ec1d4bb79c37f5e96d39b340f1f4de995c4b0b836c8d5fa05","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","bb654d426b82e0846cd4bd7de91d637039ecdfd63c94447373490178f80846fe","db90f54098b237753ac9c846e39cd49aa538dcad07a2e1c68a138f3c0f8e621d","92ad68795c32309fb43576cacb38bd2677deeed38f5730dcd4a8c5e65463ae15","4b16417aab5a4b276fd4a7db95120a8c7b4d49a6d68ddfe075e9f46dcbf22f00","eecb2ea10a1500dcc6bdeff14be1fb43806f63a9b8562e16e1b4fc8baa8dfa8d","221a6ab66d611349faaf80af49c7a34d95623787610fd153fed4da0811abdcae","f3d84d6f83cf131e4db335dc8100898adbeb01dd4cf4e2fe695ab220eac98be4","6521aaade4e1d23cbc4b665083b004aeaca23f3347ba2422f88d1828968a0056","e79130cf2ba010f2b79747bf43b086252ad041b130768331a1144c0a86185877","e9709ed827c40789c669736fc78e2ab603605e8e81325d1e6d7a5eb451810dd0","dafce7a7b279977940b6b4b50017625e4f922f73094433d2875994bdc0b27e87","6fc76efbb61d3336833ef44ff3f37552667f26c2a73b368f3b4b259f19f2c234","479496e5bb48f2f5e981ef646665bc09fd9ab080e86e9ea882ca4369411604af","6c559dee3c6251c261b67df08e01d4cbc89cbd7a63300150c636705733cebfff","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","f60e3e3060207ac982da13363181fd7ee4beecc19a7c569f0d6bb034331066c2","17230b34bb564a3a2e36f9d3985372ccab4ad1722df2c43f7c5c2b553f68e5db","87ed0f84f0691d5c724b23159db96342e6b04ac69201b02c65936f4281ce1fbe","13868c5792808236b17dfe2803eafce911ea4d09d3b2fda95391891a494f988f","0dfe35191a04e8f9dc7caeb9f52f2ee07402736563d12cbccd15fb5f31ac877f","eee8abb8503852554eec94e4f77339dbe8927f5f7dfecac41d9479d64bbfc475","93c4fc5b5237c09bc9ed65cb8f0dc1d89034406ab40500b89701341994897142","9adb78bae51a473d33f40da9bdb50c0e491d1cc7a5db776665853effa0cd3374","b0d10e46cfe3f6c476b69af02eaa38e4ccc7430221ce3109ae84bb9fb8282298","77c5c7f8578d139c74102a29384f5f4f0792a12d819ddcdcaf8307185ff2d45d","70e9a18da08294f75bf23e46c7d69e67634c0765d355887b9b41f0d959e1426e","28288f5e5f8b7b895ed2abe6359c1da3e0d14a64b5aef985071285671f347c01"],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"emitDeclarationOnly":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":1,"module":1,"noImplicitAny":false,"outDir":"./dist","removeComments":true,"rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"strictPropertyInitialization":false,"target":7},"fileIdsList":[[178,253],[178],[77,178],[77,178,197],[123,178,197,198],[149,178,185,197,199],[77,178,197,198],[77,149,178,185,197,201],[124,178],[178,278],[178,205],[178,204,205,206],[178,204,205,207,208],[178,213],[178,213,214],[178,253,254,255,256,257],[178,253,255],[178,185],[151,178,185,260],[151,178,185],[151,178],[178,259],[148,151,178,185,264,265],[178,261,265,266,269],[149,178,185],[178,273],[178,274],[178,280,283],[178,267],[178,268],[132,178],[135,178],[136,141,169,178],[137,148,149,156,166,177,178],[137,138,148,156,178],[139,178],[140,141,149,157,178],[141,166,174,178],[142,144,148,156,178],[143,178],[144,145,178],[148,178],[146,148,178],[148,149,150,166,177,178],[148,149,150,163,166,169,178],[178,182],[151,156,166,177,178],[148,149,151,152,156,166,174,177,178],[151,153,166,174,177,178],[132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184],[148,154,178],[155,177,178],[144,148,156,166,178],[157,178],[158,178],[135,159,178],[160,176,178,182],[161,178],[162,178],[148,163,164,178],[163,165,178,180],[136,148,166,167,168,169,178],[136,166,168,178],[166,167,178],[169,178],[170,178],[148,172,173,178],[172,173,178],[141,156,166,174,178],[175,178],[156,176,178],[136,151,162,177,178],[141,178],[166,178,179],[178,180],[178,181],[136,141,148,150,159,166,177,178,180,182],[166,178,183],[178,185,290,292,296,297,298,299,300,301],[166,178,185],[148,178,185,290,292,293,295,302],[148,156,166,177,178,185,289,290,291,293,294,295,302],[166,178,185,292,293],[166,178,185,292,294],[178,185,290,292,293,295,302],[166,178,185,294],[148,156,166,174,178,185,291,293,295],[148,178,185,290,292,293,294,295,302],[148,166,178,185,290,291,292,293,294,295,302],[148,166,178,185,290,292,293,295,302],[151,166,178,185,295],[148,166,174,178,185,305,306,309,310],[151,178,185,268],[148,151,153,166,174,177,178,183,185],[178,315],[166,178],[178,276,282],[90,178],[91,178],[101,102,103,104,178],[178,280],[178,277,281],[75,178],[76,123,124,178],[75,76,178],[76,178],[76,119,178],[120,178],[77,119,120,121,122,178],[178,185,306,307,308],[166,178,185,306],[166,178,185,186,190],[148,178,182,187,188,189],[178,279],[148,178,185],[82,178],[78,79,80,83,84,85,178],[75,81,178],[68,178],[59,60,178],[57,58,59,61,62,66,178],[58,59,178],[67,178],[59,178],[57,58,59,62,63,64,65,178],[57,58,68,178],[72,178],[69,178],[71,72,73,74,87,88,89,93,178],[77,86,178],[86,92,178],[69,71,77,178],[94,150,178],[94,118,129,131,178,191,192],[77,130,178],[77,94,123,125,126,127,128,141,166,178],[178,190],[86,178,203,210,212,221],[178,203,217,218,220,222,223,224,225,226,227,228],[84,86,178],[178,209],[82,86,178,203,209,215,217,222],[178,203,209,215,222],[178,203,216,217],[178,218,220],[84,86,178,213,224],[178,211],[82,86,178,203,211,215,217,222],[178,203,211,215,222],[178,203,217,219],[86,178,215],[86,178,221,222],[95,178],[95,96,97,178],[69,77,94,178],[108,113,115,116,178],[69,110,112,114,115,178],[77,94,108,178],[69,70,114,178],[69,110,113,115,178],[110,111,113,114,115,178],[108,113,115,178],[107,109,113,114,115,178],[70,77,94,98,100,105,115,178],[77,94,106,113,115,178],[107,110,113,115,178],[77,86,117,178,193],[123,178],[123,178,195,246],[178,194,195,230,233,234,241,246,247,248,251],[178,193],[178,243,244,247],[178,242,243,244,245],[69,123,178,193,194,195,196,197,235,241,242],[86,123,178,193,229,241,243],[178,243],[77,117,178,193,194,196,234],[77,178,196,230,231,234,235,241,246],[77,178,194,229,230,231,232,234,241,246,247],[178,236,237,238,239,240],[77,178,194,195,196,230,237,246,247],[77,117,178,193,194,196,234,235],[77,178,194,230,236],[77,178,194,236],[77,166,178],[77,178,195,196,230,233,234,241,248],[178,249,250],[77,178,195,196,202,230,234,241,246],[69,117,123,178,193,194],[77,117,128,166,178,193,194,196,197,200,202,229,230,233,235,241,246,247],[77,178,193,195,230,232,233,234,239,241,246,247],[99,178],[70,98,178],[77,117],[123],[123,195,246],[77],[194,195,230,233,234,241,246,247,248,251],[190],[243,247],[242,243,244,245],[69,123,194,195,197,241],[123,241,243],[243],[77,117,193,194],[77,230,241,246],[77,229,230,232,241,246],[236,237,238,239,240],[77,194,230,237],[77,194,230,236],[77,194,236],[77,166],[77,230,233,241,248],[249,250],[77,202,230,241],[69,71,117,123,194],[77,117,166,194,197,202,229,230,241,247],[77,195,230,232,241,247]],"referencedMap":[[255,1],[253,2],[197,3],[198,4],[199,5],[200,6],[201,7],[202,8],[128,9],[276,2],[279,10],[206,11],[208,12],[205,2],[204,2],[207,12],[209,13],[211,13],[214,14],[215,15],[213,2],[278,2],[258,16],[254,1],[256,17],[257,1],[259,18],[261,19],[260,20],[262,21],[263,22],[266,23],[270,24],[271,25],[272,2],[273,2],[274,26],[275,27],[284,28],[285,2],[286,18],[268,29],[267,30],[287,2],[288,2],[132,31],[133,31],[135,32],[136,33],[137,34],[138,35],[139,36],[140,37],[141,38],[142,39],[143,40],[144,41],[145,41],[147,42],[146,43],[148,42],[149,44],[150,45],[134,46],[184,2],[151,47],[152,48],[153,49],[185,50],[154,51],[155,52],[156,53],[157,54],[158,55],[159,56],[160,57],[161,58],[162,59],[163,60],[164,60],[165,61],[166,62],[168,63],[167,64],[169,65],[170,66],[171,2],[172,67],[173,68],[174,69],[175,70],[176,71],[177,72],[178,73],[179,74],[180,75],[181,76],[182,77],[183,78],[302,79],[289,80],[296,81],[292,82],[290,83],[293,84],[297,85],[298,81],[295,86],[294,87],[299,88],[300,89],[301,90],[291,91],[303,2],[304,2],[310,92],[311,2],[265,2],[264,2],[269,93],[312,80],[313,2],[314,94],[315,2],[316,95],[130,96],[277,2],[283,97],[91,98],[90,2],[92,99],[105,100],[101,2],[102,2],[103,2],[104,2],[281,101],[282,102],[81,103],[75,2],[125,104],[122,2],[77,105],[124,2],[126,9],[119,106],[120,107],[76,2],[127,108],[123,109],[121,2],[309,110],[306,18],[308,111],[307,18],[305,2],[186,80],[187,112],[188,20],[190,113],[280,114],[189,115],[11,2],[12,2],[15,2],[14,2],[2,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[3,2],[4,2],[27,2],[24,2],[25,2],[26,2],[28,2],[29,2],[30,2],[5,2],[31,2],[32,2],[33,2],[34,2],[6,2],[35,2],[36,2],[37,2],[38,2],[7,2],[39,2],[44,2],[45,2],[40,2],[41,2],[42,2],[43,2],[8,2],[49,2],[46,2],[47,2],[48,2],[50,2],[9,2],[51,2],[52,2],[53,2],[54,2],[55,2],[1,2],[10,2],[56,2],[13,2],[78,2],[79,2],[80,2],[83,116],[86,117],[84,116],[82,118],[85,2],[69,119],[61,120],[67,121],[63,2],[64,2],[62,122],[65,119],[57,2],[58,2],[68,123],[60,124],[66,125],[59,126],[73,127],[71,128],[94,129],[87,130],[93,131],[74,127],[89,2],[88,132],[72,2],[118,133],[193,134],[131,135],[129,136],[191,137],[192,96],[203,2],[222,138],[229,139],[223,140],[210,141],[227,142],[216,143],[218,144],[221,145],[225,146],[212,147],[228,148],[219,149],[220,150],[224,151],[217,2],[226,152],[97,2],[96,153],[98,154],[95,2],[108,155],[117,156],[113,157],[116,158],[115,159],[114,160],[112,161],[109,162],[110,163],[106,164],[107,165],[111,166],[70,2],[194,167],[195,168],[247,169],[196,3],[252,170],[231,171],[245,172],[246,173],[243,174],[242,175],[244,176],[235,177],[232,178],[233,179],[241,180],[238,181],[236,182],[237,183],[239,184],[240,185],[249,186],[251,187],[250,188],[230,189],[234,190],[248,191],[100,192],[99,193]],"exportedModulesMap":[[255,1],[253,2],[197,3],[198,4],[199,5],[200,6],[201,7],[202,8],[128,9],[276,2],[279,10],[206,11],[208,12],[205,2],[204,2],[207,12],[209,13],[211,13],[214,14],[215,15],[213,2],[278,2],[258,16],[254,1],[256,17],[257,1],[259,18],[261,19],[260,20],[262,21],[263,22],[266,23],[270,24],[271,25],[272,2],[273,2],[274,26],[275,27],[284,28],[285,2],[286,18],[268,29],[267,30],[287,2],[288,2],[132,31],[133,31],[135,32],[136,33],[137,34],[138,35],[139,36],[140,37],[141,38],[142,39],[143,40],[144,41],[145,41],[147,42],[146,43],[148,42],[149,44],[150,45],[134,46],[184,2],[151,47],[152,48],[153,49],[185,50],[154,51],[155,52],[156,53],[157,54],[158,55],[159,56],[160,57],[161,58],[162,59],[163,60],[164,60],[165,61],[166,62],[168,63],[167,64],[169,65],[170,66],[171,2],[172,67],[173,68],[174,69],[175,70],[176,71],[177,72],[178,73],[179,74],[180,75],[181,76],[182,77],[183,78],[302,79],[289,80],[296,81],[292,82],[290,83],[293,84],[297,85],[298,81],[295,86],[294,87],[299,88],[300,89],[301,90],[291,91],[303,2],[304,2],[310,92],[311,2],[265,2],[264,2],[269,93],[312,80],[313,2],[314,94],[315,2],[316,95],[130,96],[277,2],[283,97],[91,98],[90,2],[92,99],[105,100],[101,2],[102,2],[103,2],[104,2],[281,101],[282,102],[81,103],[75,2],[125,104],[122,2],[77,105],[124,2],[126,9],[119,106],[120,107],[76,2],[127,108],[123,109],[121,2],[309,110],[306,18],[308,111],[307,18],[305,2],[186,80],[187,112],[188,20],[190,113],[280,114],[189,115],[11,2],[12,2],[15,2],[14,2],[2,2],[16,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[3,2],[4,2],[27,2],[24,2],[25,2],[26,2],[28,2],[29,2],[30,2],[5,2],[31,2],[32,2],[33,2],[34,2],[6,2],[35,2],[36,2],[37,2],[38,2],[7,2],[39,2],[44,2],[45,2],[40,2],[41,2],[42,2],[43,2],[8,2],[49,2],[46,2],[47,2],[48,2],[50,2],[9,2],[51,2],[52,2],[53,2],[54,2],[55,2],[1,2],[10,2],[56,2],[13,2],[78,2],[79,2],[80,2],[83,116],[86,117],[84,116],[82,118],[85,2],[69,119],[61,120],[67,121],[63,2],[64,2],[62,122],[65,119],[57,2],[58,2],[68,123],[60,124],[66,125],[59,126],[73,127],[71,128],[94,129],[87,130],[93,131],[74,127],[89,2],[88,132],[72,2],[118,133],[193,134],[131,135],[129,136],[191,137],[192,96],[203,2],[222,138],[229,139],[223,140],[210,141],[227,142],[216,143],[218,144],[221,145],[225,146],[212,147],[228,148],[219,149],[220,150],[224,151],[217,2],[226,152],[97,2],[96,153],[98,154],[95,2],[108,155],[117,156],[113,157],[116,158],[115,159],[114,160],[112,161],[109,162],[110,163],[106,164],[107,165],[111,166],[70,2],[194,194],[195,195],[247,196],[196,197],[252,198],[231,199],[245,200],[246,201],[243,202],[242,203],[244,204],[235,205],[232,206],[233,207],[241,208],[238,209],[236,205],[237,210],[239,211],[240,212],[249,213],[251,214],[250,215],[230,216],[234,217],[248,218],[100,192],[99,193]],"semanticDiagnosticsPerFile":[255,253,197,198,199,200,201,202,128,276,279,206,208,205,204,207,209,211,214,215,213,278,258,254,256,257,259,261,260,262,263,266,270,271,272,273,274,275,284,285,286,268,267,287,288,132,133,135,136,137,138,139,140,141,142,143,144,145,147,146,148,149,150,134,184,151,152,153,185,154,155,156,157,158,159,160,161,162,163,164,165,166,168,167,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,302,289,296,292,290,293,297,298,295,294,299,300,301,291,303,304,310,311,265,264,269,312,313,314,315,316,130,277,283,91,90,92,105,101,102,103,104,281,282,81,75,125,122,77,124,126,119,120,76,127,123,121,309,306,308,307,305,186,187,188,190,280,189,11,12,15,14,2,16,17,18,19,20,21,22,23,3,4,27,24,25,26,28,29,30,5,31,32,33,34,6,35,36,37,38,7,39,44,45,40,41,42,43,8,49,46,47,48,50,9,51,52,53,54,55,1,10,56,13,78,79,80,83,86,84,82,85,69,61,67,63,64,62,65,57,58,68,60,66,59,73,71,94,87,93,74,89,88,72,118,193,131,129,191,192,203,222,229,223,210,227,216,218,221,225,212,228,219,220,224,217,226,97,96,98,95,108,117,113,116,115,114,112,109,110,106,107,111,70,194,195,247,196,252,231,245,246,243,242,244,235,232,233,241,238,236,237,239,240,249,251,250,230,234,248,100,99],"latestChangedDtsFile":"./dist/util.d.ts"},"version":"4.8.4"}
package/update-pkg.js DELETED
@@ -1,14 +0,0 @@
1
- const pkgJson = require('@npmcli/package-json')
2
-
3
- if (process.argv.includes('--update-main-to-dist')) {
4
- return pkgJson
5
- .load(__dirname)
6
- .then((pkg) => pkg.update({ main: 'dist/index.js' }))
7
- .then((pkg) => pkg.save())
8
- }
9
- if (process.argv.includes('--update-main-to-src')) {
10
- return pkgJson
11
- .load(__dirname)
12
- .then((pkg) => pkg.update({ main: 'src/index.ts' }))
13
- .then((pkg) => pkg.save())
14
- }