@toa.io/extensions.fetch 1.0.0-alpha.292 → 1.0.0-alpha.299
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/package.json +11 -4
- package/CHANGELOG.md +0 -39
- package/source/Aspect.test.ts +0 -342
- package/source/Aspect.ts +0 -269
- package/source/Factory.ts +0 -9
- package/source/index.ts +0 -2
- package/transpiled/Aspect.test.d.ts +0 -1
- package/transpiled/Aspect.test.js +0 -218
- package/transpiled/Aspect.test.js.map +0 -1
- package/tsconfig.json +0 -10
- package/tsconfig.tsbuildinfo +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@toa.io/extensions.fetch",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.299",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Toa Fetch extension",
|
|
6
6
|
"author": "temich <tema.gurtovoy@gmail.com>",
|
|
@@ -17,12 +17,19 @@
|
|
|
17
17
|
"publishConfig": {
|
|
18
18
|
"access": "public"
|
|
19
19
|
},
|
|
20
|
+
"files": [
|
|
21
|
+
"transpiled",
|
|
22
|
+
"readme.md",
|
|
23
|
+
"!**/tsconfig.tsbuildinfo",
|
|
24
|
+
"!**/*.test.*",
|
|
25
|
+
"!**/.env*"
|
|
26
|
+
],
|
|
20
27
|
"scripts": {
|
|
21
28
|
"transpile": "tsc"
|
|
22
29
|
},
|
|
23
30
|
"dependencies": {
|
|
24
|
-
"@toa.io/core": "1.0.0-alpha.
|
|
25
|
-
"openspan": "1.0.0-alpha.
|
|
31
|
+
"@toa.io/core": "1.0.0-alpha.299",
|
|
32
|
+
"openspan": "1.0.0-alpha.293"
|
|
26
33
|
},
|
|
27
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "2ba95b16f2cf06f82d6ff8d436761e843e5e4b43"
|
|
28
35
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
# [1.0.0-alpha.292](https://github.com/toa-io/toa/compare/v1.0.0-alpha.291...v1.0.0-alpha.292) (2026-09-07)
|
|
7
|
-
|
|
8
|
-
### Features
|
|
9
|
-
|
|
10
|
-
* **definitions:** what a package declares is read from one package ([7052341](https://github.com/toa-io/toa/commit/70523411b5d9e2b204c999aa02365173f3bb518d))
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
# [1.0.0-alpha.291](https://github.com/toa-io/toa/compare/v1.0.0-alpha.290...v1.0.0-alpha.291) (2026-09-07)
|
|
14
|
-
|
|
15
|
-
**Note:** Version bump only for package @toa.io/extensions.fetch
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
# [1.0.0-alpha.289](https://github.com/toa-io/toa/compare/v1.0.0-alpha.288...v1.0.0-alpha.289) (2026-09-07)
|
|
22
|
-
|
|
23
|
-
**Note:** Version bump only for package @toa.io/extensions.fetch
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
# [1.0.0-alpha.288](https://github.com/toa-io/toa/compare/v1.0.0-alpha.287...v1.0.0-alpha.288) (2026-09-06)
|
|
30
|
-
|
|
31
|
-
**Note:** Version bump only for package @toa.io/extensions.fetch
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
# [1.0.0-alpha.287](https://github.com/toa-io/toa/compare/v1.0.0-alpha.286...v1.0.0-alpha.287) (2026-09-06)
|
|
38
|
-
|
|
39
|
-
**Note:** Version bump only for package @toa.io/extensions.fetch
|
package/source/Aspect.test.ts
DELETED
|
@@ -1,342 +0,0 @@
|
|
|
1
|
-
import { it, beforeEach, afterEach, mock } from 'node:test'
|
|
2
|
-
import type { Mock } from 'node:test'
|
|
3
|
-
import assert from 'node:assert/strict'
|
|
4
|
-
|
|
5
|
-
import { Locator } from '@toa.io/core'
|
|
6
|
-
import { consoleExporter, exporting } from 'openspan'
|
|
7
|
-
import { Aspect } from './Aspect.js'
|
|
8
|
-
import type { Span } from 'openspan'
|
|
9
|
-
|
|
10
|
-
const nativeFetch = globalThis.fetch
|
|
11
|
-
|
|
12
|
-
let aspect: Aspect
|
|
13
|
-
let fetchMock: Mock<typeof fetch>
|
|
14
|
-
let spans: Span[]
|
|
15
|
-
|
|
16
|
-
beforeEach(() => {
|
|
17
|
-
aspect = new Aspect(new Locator('users', 'identity'))
|
|
18
|
-
fetchMock = mock.fn()
|
|
19
|
-
globalThis.fetch = fetchMock
|
|
20
|
-
spans = []
|
|
21
|
-
exporting([{ export: (span) => spans.push(span) }])
|
|
22
|
-
})
|
|
23
|
-
|
|
24
|
-
afterEach(() => {
|
|
25
|
-
globalThis.fetch = nativeFetch
|
|
26
|
-
exporting([consoleExporter])
|
|
27
|
-
})
|
|
28
|
-
|
|
29
|
-
it('delegates to native fetch and returns its Response', async () => {
|
|
30
|
-
const response = new Response('ok', { status: 201, headers: { 'x-test': 'yes' } })
|
|
31
|
-
|
|
32
|
-
fetchMock.mock.mockImplementation(async () => response)
|
|
33
|
-
|
|
34
|
-
const result = await aspect.invoke('create', 'https://example.com/items?secret=yes', {
|
|
35
|
-
method: 'POST',
|
|
36
|
-
headers: { 'content-type': 'application/json' },
|
|
37
|
-
body: '{}'
|
|
38
|
-
})
|
|
39
|
-
|
|
40
|
-
assert.strictEqual(result, response)
|
|
41
|
-
assert.strictEqual(fetchMock.mock.callCount(), 1)
|
|
42
|
-
|
|
43
|
-
const request = fetchMock.mock.calls[0].arguments[0] as Request
|
|
44
|
-
|
|
45
|
-
assert.ok(request instanceof Request)
|
|
46
|
-
assert.strictEqual(request.method, 'POST')
|
|
47
|
-
assert.strictEqual(request.url, 'https://example.com/items?secret=yes')
|
|
48
|
-
await assert.strictEqual(await request.text(), '{}')
|
|
49
|
-
})
|
|
50
|
-
|
|
51
|
-
it('does not retry by default', async () => {
|
|
52
|
-
fetchMock.mock.mockImplementation(async () => new Response(null, { status: 503 }))
|
|
53
|
-
|
|
54
|
-
const response = await aspect.invoke('get', 'https://example.com')
|
|
55
|
-
|
|
56
|
-
assert.strictEqual(response.status, 503)
|
|
57
|
-
assert.strictEqual(fetchMock.mock.callCount(), 1)
|
|
58
|
-
})
|
|
59
|
-
|
|
60
|
-
it('retries unexpected responses and returns an expected response', async () => {
|
|
61
|
-
fetchMock.mock.mockImplementationOnce(
|
|
62
|
-
async () => new Response(null, { status: 503 }),
|
|
63
|
-
fetchMock.mock.callCount()
|
|
64
|
-
)
|
|
65
|
-
fetchMock.mock.mockImplementationOnce(
|
|
66
|
-
async () => new Response(null, { status: 201 }),
|
|
67
|
-
fetchMock.mock.callCount() + 1
|
|
68
|
-
)
|
|
69
|
-
|
|
70
|
-
const response = await aspect.invoke('create', 'https://example.com', {
|
|
71
|
-
retry: { attempts: 3, expected: [201], delay: 0 }
|
|
72
|
-
})
|
|
73
|
-
|
|
74
|
-
assert.strictEqual(response.status, 201)
|
|
75
|
-
assert.strictEqual(fetchMock.mock.callCount(), 2)
|
|
76
|
-
})
|
|
77
|
-
|
|
78
|
-
it('cancels an unexpected response body before retrying', async () => {
|
|
79
|
-
const cancel = mock.fn()
|
|
80
|
-
const body = new ReadableStream({ cancel })
|
|
81
|
-
|
|
82
|
-
fetchMock.mock.mockImplementationOnce(
|
|
83
|
-
async () => new Response(body, { status: 503 }),
|
|
84
|
-
fetchMock.mock.callCount()
|
|
85
|
-
)
|
|
86
|
-
fetchMock.mock.mockImplementationOnce(
|
|
87
|
-
async () => new Response(null, { status: 200 }),
|
|
88
|
-
fetchMock.mock.callCount() + 1
|
|
89
|
-
)
|
|
90
|
-
|
|
91
|
-
await aspect.invoke('get', 'https://example.com', {
|
|
92
|
-
retry: { attempts: 2, delay: 0 }
|
|
93
|
-
})
|
|
94
|
-
|
|
95
|
-
assert.strictEqual(cancel.mock.callCount(), 1)
|
|
96
|
-
})
|
|
97
|
-
|
|
98
|
-
it('continues retrying when response body cancellation fails', async () => {
|
|
99
|
-
const body = new ReadableStream({
|
|
100
|
-
cancel: () => {
|
|
101
|
-
throw new Error('cancel failed')
|
|
102
|
-
}
|
|
103
|
-
})
|
|
104
|
-
|
|
105
|
-
fetchMock.mock.mockImplementationOnce(
|
|
106
|
-
async () => new Response(body, { status: 503 }),
|
|
107
|
-
fetchMock.mock.callCount()
|
|
108
|
-
)
|
|
109
|
-
fetchMock.mock.mockImplementationOnce(
|
|
110
|
-
async () => new Response(null, { status: 200 }),
|
|
111
|
-
fetchMock.mock.callCount() + 1
|
|
112
|
-
)
|
|
113
|
-
|
|
114
|
-
const response = await aspect.invoke('get', 'https://example.com', {
|
|
115
|
-
retry: { attempts: 2, delay: 0 }
|
|
116
|
-
})
|
|
117
|
-
|
|
118
|
-
assert.strictEqual(response.status, 200)
|
|
119
|
-
})
|
|
120
|
-
|
|
121
|
-
it('replays a regular request body', async () => {
|
|
122
|
-
fetchMock.mock.mockImplementationOnce(
|
|
123
|
-
async () => new Response(null, { status: 503 }),
|
|
124
|
-
fetchMock.mock.callCount()
|
|
125
|
-
)
|
|
126
|
-
fetchMock.mock.mockImplementationOnce(
|
|
127
|
-
async () => new Response(null, { status: 200 }),
|
|
128
|
-
fetchMock.mock.callCount() + 1
|
|
129
|
-
)
|
|
130
|
-
|
|
131
|
-
await aspect.invoke('create', 'https://example.com', {
|
|
132
|
-
method: 'POST',
|
|
133
|
-
body: 'hello',
|
|
134
|
-
retry: { attempts: 2, delay: 0 }
|
|
135
|
-
})
|
|
136
|
-
|
|
137
|
-
const first = fetchMock.mock.calls[0].arguments[0] as Request
|
|
138
|
-
const second = fetchMock.mock.calls[1].arguments[0] as Request
|
|
139
|
-
|
|
140
|
-
await assert.strictEqual(await first.text(), 'hello')
|
|
141
|
-
await assert.strictEqual(await second.text(), 'hello')
|
|
142
|
-
})
|
|
143
|
-
|
|
144
|
-
it('honors Retry-After instead of the configured delay', async () => {
|
|
145
|
-
fetchMock.mock.mockImplementationOnce(
|
|
146
|
-
async () =>
|
|
147
|
-
new Response(null, {
|
|
148
|
-
status: 503,
|
|
149
|
-
headers: { 'retry-after': '0' }
|
|
150
|
-
}),
|
|
151
|
-
fetchMock.mock.callCount()
|
|
152
|
-
)
|
|
153
|
-
fetchMock.mock.mockImplementationOnce(
|
|
154
|
-
async () => new Response(null, { status: 200 }),
|
|
155
|
-
fetchMock.mock.callCount() + 1
|
|
156
|
-
)
|
|
157
|
-
|
|
158
|
-
const response = await aspect.invoke('get', 'https://example.com', {
|
|
159
|
-
retry: { attempts: 2, delay: 60_000 }
|
|
160
|
-
})
|
|
161
|
-
|
|
162
|
-
assert.strictEqual(response.status, 200)
|
|
163
|
-
assert.strictEqual(fetchMock.mock.callCount(), 2)
|
|
164
|
-
})
|
|
165
|
-
|
|
166
|
-
it('returns the last unexpected response', async () => {
|
|
167
|
-
fetchMock.mock.mockImplementationOnce(
|
|
168
|
-
async () => new Response(null, { status: 500 }),
|
|
169
|
-
fetchMock.mock.callCount()
|
|
170
|
-
)
|
|
171
|
-
fetchMock.mock.mockImplementationOnce(
|
|
172
|
-
async () => new Response(null, { status: 502 }),
|
|
173
|
-
fetchMock.mock.callCount() + 1
|
|
174
|
-
)
|
|
175
|
-
|
|
176
|
-
const response = await aspect.invoke('get', 'https://example.com', {
|
|
177
|
-
retry: { attempts: 2, delay: 0 }
|
|
178
|
-
})
|
|
179
|
-
|
|
180
|
-
assert.strictEqual(response.status, 502)
|
|
181
|
-
})
|
|
182
|
-
|
|
183
|
-
it('retries network errors and throws the final error', async () => {
|
|
184
|
-
const first = new Error('first')
|
|
185
|
-
const last = new Error('last')
|
|
186
|
-
|
|
187
|
-
fetchMock.mock.mockImplementationOnce(async () => {
|
|
188
|
-
throw first
|
|
189
|
-
}, fetchMock.mock.callCount())
|
|
190
|
-
fetchMock.mock.mockImplementationOnce(async () => {
|
|
191
|
-
throw last
|
|
192
|
-
}, fetchMock.mock.callCount() + 1)
|
|
193
|
-
|
|
194
|
-
await assert.rejects(
|
|
195
|
-
aspect.invoke('get', 'https://example.com', {
|
|
196
|
-
retry: { attempts: 2, delay: 0 }
|
|
197
|
-
}),
|
|
198
|
-
(error: any) => {
|
|
199
|
-
assert.strictEqual(error, last)
|
|
200
|
-
return true
|
|
201
|
-
}
|
|
202
|
-
)
|
|
203
|
-
|
|
204
|
-
assert.strictEqual(fetchMock.mock.callCount(), 2)
|
|
205
|
-
})
|
|
206
|
-
|
|
207
|
-
it('aborts while waiting for another attempt', async () => {
|
|
208
|
-
const controller = new AbortController()
|
|
209
|
-
|
|
210
|
-
fetchMock.mock.mockImplementation(async () => new Response(null, { status: 503 }))
|
|
211
|
-
|
|
212
|
-
const promise = aspect.invoke('get', 'https://example.com', {
|
|
213
|
-
signal: controller.signal,
|
|
214
|
-
retry: { attempts: 2, delay: 60_000 }
|
|
215
|
-
})
|
|
216
|
-
|
|
217
|
-
await new Promise((resolve) => setImmediate(resolve))
|
|
218
|
-
controller.abort(new Error('cancelled'))
|
|
219
|
-
|
|
220
|
-
await assert.rejects(promise, (error: any) => /cancelled/.test(error.message))
|
|
221
|
-
assert.strictEqual(fetchMock.mock.callCount(), 1)
|
|
222
|
-
})
|
|
223
|
-
|
|
224
|
-
it('rejects invalid retry options', async () => {
|
|
225
|
-
await assert.rejects(
|
|
226
|
-
aspect.invoke('get', 'https://example.com', {
|
|
227
|
-
retry: { attempts: 0 }
|
|
228
|
-
}),
|
|
229
|
-
(error: any) => /retry\.attempts/.test(error.message)
|
|
230
|
-
)
|
|
231
|
-
|
|
232
|
-
await assert.rejects(
|
|
233
|
-
aspect.invoke('get', 'https://example.com', {
|
|
234
|
-
retry: { attempts: 2, expected: [] }
|
|
235
|
-
}),
|
|
236
|
-
(error: any) => /retry\.expected/.test(error.message)
|
|
237
|
-
)
|
|
238
|
-
})
|
|
239
|
-
|
|
240
|
-
it('rejects an explicit streaming body before sending it', async () => {
|
|
241
|
-
const body = new ReadableStream()
|
|
242
|
-
|
|
243
|
-
await assert.rejects(
|
|
244
|
-
aspect.invoke('create', 'https://example.com', {
|
|
245
|
-
method: 'POST',
|
|
246
|
-
body,
|
|
247
|
-
// Required by Node.js for a streaming request body.
|
|
248
|
-
// @ts-expect-error -- duplex is implemented by Node but absent from lib.dom RequestInit.
|
|
249
|
-
duplex: 'half',
|
|
250
|
-
retry: { attempts: 2 }
|
|
251
|
-
}),
|
|
252
|
-
(error: any) => /non-replayable/.test(error.message)
|
|
253
|
-
)
|
|
254
|
-
|
|
255
|
-
assert.strictEqual(fetchMock.mock.callCount(), 0)
|
|
256
|
-
})
|
|
257
|
-
|
|
258
|
-
it('rejects a Request input with a body before retrying', async () => {
|
|
259
|
-
const request = new Request('https://example.com', { method: 'POST', body: 'hello' })
|
|
260
|
-
|
|
261
|
-
await assert.rejects(
|
|
262
|
-
aspect.invoke('create', request, {
|
|
263
|
-
retry: { attempts: 2 }
|
|
264
|
-
}),
|
|
265
|
-
(error: any) => /non-replayable/.test(error.message)
|
|
266
|
-
)
|
|
267
|
-
|
|
268
|
-
assert.strictEqual(fetchMock.mock.callCount(), 0)
|
|
269
|
-
})
|
|
270
|
-
|
|
271
|
-
it('creates a scoped parent span with a client span for each attempt', async () => {
|
|
272
|
-
fetchMock.mock.mockImplementationOnce(
|
|
273
|
-
async () => new Response(null, { status: 503 }),
|
|
274
|
-
fetchMock.mock.callCount()
|
|
275
|
-
)
|
|
276
|
-
fetchMock.mock.mockImplementationOnce(
|
|
277
|
-
async () => new Response(null, { status: 204 }),
|
|
278
|
-
fetchMock.mock.callCount() + 1
|
|
279
|
-
)
|
|
280
|
-
|
|
281
|
-
await aspect.invoke('update', 'https://example.com/items?token=secret', {
|
|
282
|
-
method: 'PUT',
|
|
283
|
-
retry: { attempts: 2, delay: 0 }
|
|
284
|
-
})
|
|
285
|
-
|
|
286
|
-
assert.strictEqual(spans.length, 3)
|
|
287
|
-
|
|
288
|
-
const parent = spans.find((span) => span.name === 'PUT https://example.com')!
|
|
289
|
-
const attempts = spans.filter((span) => span.parentId === parent.spanId)
|
|
290
|
-
|
|
291
|
-
assert.partialDeepStrictEqual(parent, {
|
|
292
|
-
name: 'PUT https://example.com',
|
|
293
|
-
kind: 'internal',
|
|
294
|
-
scope: {
|
|
295
|
-
namespace: 'identity',
|
|
296
|
-
component: 'users',
|
|
297
|
-
operation: 'update'
|
|
298
|
-
},
|
|
299
|
-
attributes: {
|
|
300
|
-
'http.request.method': 'PUT',
|
|
301
|
-
'http.response.status_code': 204,
|
|
302
|
-
'url.scheme': 'https',
|
|
303
|
-
'server.address': 'example.com',
|
|
304
|
-
'retry.attempts': 2
|
|
305
|
-
}
|
|
306
|
-
})
|
|
307
|
-
assert.partialDeepStrictEqual(attempts, [
|
|
308
|
-
{
|
|
309
|
-
name: 'attempt 1',
|
|
310
|
-
kind: 'client',
|
|
311
|
-
attributes: {
|
|
312
|
-
'retry.attempt': 1,
|
|
313
|
-
'http.response.status_code': 503
|
|
314
|
-
}
|
|
315
|
-
},
|
|
316
|
-
{
|
|
317
|
-
name: 'attempt 2',
|
|
318
|
-
kind: 'client',
|
|
319
|
-
attributes: {
|
|
320
|
-
'retry.attempt': 2,
|
|
321
|
-
'http.response.status_code': 204
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
])
|
|
325
|
-
assert.ok(!JSON.stringify(spans).includes('token=secret'))
|
|
326
|
-
})
|
|
327
|
-
|
|
328
|
-
it('marks the span as failed after a final network error', async () => {
|
|
329
|
-
fetchMock.mock.mockImplementation(async () => {
|
|
330
|
-
throw new Error('unavailable')
|
|
331
|
-
})
|
|
332
|
-
|
|
333
|
-
await assert.rejects(aspect.invoke('get', 'https://example.com'), (error: any) =>
|
|
334
|
-
/unavailable/.test(error.message)
|
|
335
|
-
)
|
|
336
|
-
|
|
337
|
-
assert.strictEqual(spans.length, 2)
|
|
338
|
-
assert.strictEqual(
|
|
339
|
-
spans.every((span) => span.status === 'error'),
|
|
340
|
-
true
|
|
341
|
-
)
|
|
342
|
-
})
|
package/source/Aspect.ts
DELETED
|
@@ -1,269 +0,0 @@
|
|
|
1
|
-
import { Connector } from '@toa.io/core'
|
|
2
|
-
import { console, type Console, type SpanOptions } from 'openspan'
|
|
3
|
-
import type { Locator } from '@toa.io/core'
|
|
4
|
-
import type { extensions } from '@toa.io/core/types'
|
|
5
|
-
|
|
6
|
-
export class Aspect extends Connector implements extensions.Aspect {
|
|
7
|
-
public readonly name = 'fetch'
|
|
8
|
-
private readonly locator: Locator
|
|
9
|
-
private readonly consoles: Record<string, Console> = {}
|
|
10
|
-
|
|
11
|
-
public constructor(locator: Locator) {
|
|
12
|
-
super()
|
|
13
|
-
|
|
14
|
-
this.locator = locator
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
public async invoke(
|
|
18
|
-
operation: string,
|
|
19
|
-
input: RequestInfo | URL,
|
|
20
|
-
init?: FetchInit
|
|
21
|
-
): Promise<Response> {
|
|
22
|
-
const { retry, ...nativeInit } = init ?? {}
|
|
23
|
-
const body = nativeInit.body ?? (input instanceof Request ? input.body : null)
|
|
24
|
-
|
|
25
|
-
if (retry !== undefined && retry.attempts > 1 && body instanceof ReadableStream)
|
|
26
|
-
throw new TypeError('Cannot retry a request with a non-replayable body')
|
|
27
|
-
|
|
28
|
-
const request = new Request(input, nativeInit)
|
|
29
|
-
|
|
30
|
-
const attributes: Record<string, unknown> = {
|
|
31
|
-
'http.request.method': request.method,
|
|
32
|
-
'url.scheme': requestURL(request).protocol.slice(0, -1),
|
|
33
|
-
'server.address': requestURL(request).hostname
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
const url = requestURL(request)
|
|
37
|
-
|
|
38
|
-
if (url.port !== '') attributes['server.port'] = Number(url.port)
|
|
39
|
-
|
|
40
|
-
const options: SpanOptions = {
|
|
41
|
-
name: `${request.method} ${url.origin}`,
|
|
42
|
-
kind: 'internal',
|
|
43
|
-
attributes
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
const output = this.output(operation)
|
|
47
|
-
|
|
48
|
-
return await output.span(options, async () => {
|
|
49
|
-
const response = await invoke(request, retry, {
|
|
50
|
-
output,
|
|
51
|
-
parentAttributes: attributes
|
|
52
|
-
})
|
|
53
|
-
|
|
54
|
-
attributes['http.response.status_code'] = response.status
|
|
55
|
-
|
|
56
|
-
return response
|
|
57
|
-
})
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
private output(operation: string): Console {
|
|
61
|
-
this.consoles[operation] ??= console.fork({
|
|
62
|
-
namespace: this.locator.namespace,
|
|
63
|
-
component: this.locator.name,
|
|
64
|
-
operation
|
|
65
|
-
})
|
|
66
|
-
|
|
67
|
-
return this.consoles[operation]
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
async function invoke(
|
|
72
|
-
request: Request,
|
|
73
|
-
options: RetryOptions | undefined,
|
|
74
|
-
telemetry: InvocationTelemetry
|
|
75
|
-
): Promise<Response> {
|
|
76
|
-
const retry = normalize(options)
|
|
77
|
-
|
|
78
|
-
let response: Response | undefined
|
|
79
|
-
|
|
80
|
-
for (let attempt = 1; attempt <= retry.attempts; attempt++) {
|
|
81
|
-
telemetry.parentAttributes['retry.attempts'] = attempt
|
|
82
|
-
|
|
83
|
-
try {
|
|
84
|
-
response = await send(request, attempt, telemetry)
|
|
85
|
-
} catch (error) {
|
|
86
|
-
await retryError(error, { attempt, options: retry, request })
|
|
87
|
-
continue
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
if (expected(response.status, retry.expected) || attempt === retry.attempts)
|
|
91
|
-
return response
|
|
92
|
-
|
|
93
|
-
const interval =
|
|
94
|
-
retryAfter(response.headers.get('retry-after')) ?? delay(retry, attempt)
|
|
95
|
-
|
|
96
|
-
await discard(response)
|
|
97
|
-
await wait(interval, request.signal)
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
return response!
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
async function send(
|
|
104
|
-
request: Request,
|
|
105
|
-
attempt: number,
|
|
106
|
-
telemetry: InvocationTelemetry
|
|
107
|
-
): Promise<Response> {
|
|
108
|
-
const attributes: Record<string, unknown> = {
|
|
109
|
-
...telemetry.parentAttributes,
|
|
110
|
-
'retry.attempt': attempt
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
delete attributes['retry.attempts']
|
|
114
|
-
|
|
115
|
-
return await telemetry.output.span(
|
|
116
|
-
{
|
|
117
|
-
name: `attempt ${attempt}`,
|
|
118
|
-
kind: 'client',
|
|
119
|
-
attributes
|
|
120
|
-
},
|
|
121
|
-
async () => {
|
|
122
|
-
const response = await globalThis.fetch(request.clone())
|
|
123
|
-
|
|
124
|
-
attributes['http.response.status_code'] = response.status
|
|
125
|
-
|
|
126
|
-
return response
|
|
127
|
-
}
|
|
128
|
-
)
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
async function retryError(
|
|
132
|
-
error: unknown,
|
|
133
|
-
parameters: RetryErrorParameters
|
|
134
|
-
): Promise<void> {
|
|
135
|
-
const { attempt, options, request } = parameters
|
|
136
|
-
|
|
137
|
-
if (attempt === options.attempts || request.signal.aborted) throw error
|
|
138
|
-
|
|
139
|
-
await wait(delay(options, attempt), request.signal)
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
async function discard(response: Response): Promise<void> {
|
|
143
|
-
try {
|
|
144
|
-
await response.body?.cancel()
|
|
145
|
-
} catch {
|
|
146
|
-
// The response is discarded regardless of whether its stream closes cleanly.
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
function normalize(options?: RetryOptions): NormalizedRetryOptions {
|
|
151
|
-
if (options === undefined)
|
|
152
|
-
return {
|
|
153
|
-
attempts: 1,
|
|
154
|
-
expected: undefined,
|
|
155
|
-
delay: DEFAULT_DELAY,
|
|
156
|
-
factor: DEFAULT_FACTOR
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
if (!Number.isInteger(options.attempts) || options.attempts < 1)
|
|
160
|
-
throw new TypeError('retry.attempts must be an integer greater than or equal to 1')
|
|
161
|
-
|
|
162
|
-
if (
|
|
163
|
-
options.expected !== undefined &&
|
|
164
|
-
(options.expected.length === 0 ||
|
|
165
|
-
options.expected.some(
|
|
166
|
-
(status) => !Number.isInteger(status) || status < 100 || status > 599
|
|
167
|
-
))
|
|
168
|
-
)
|
|
169
|
-
throw new TypeError('retry.expected must contain HTTP status codes')
|
|
170
|
-
|
|
171
|
-
if (
|
|
172
|
-
options.delay !== undefined &&
|
|
173
|
-
(!Number.isFinite(options.delay) || options.delay < 0)
|
|
174
|
-
)
|
|
175
|
-
throw new TypeError('retry.delay must be a non-negative number')
|
|
176
|
-
|
|
177
|
-
if (
|
|
178
|
-
options.factor !== undefined &&
|
|
179
|
-
(!Number.isFinite(options.factor) || options.factor < 0)
|
|
180
|
-
)
|
|
181
|
-
throw new TypeError('retry.factor must be a non-negative number')
|
|
182
|
-
|
|
183
|
-
return {
|
|
184
|
-
attempts: options.attempts,
|
|
185
|
-
expected: options.expected,
|
|
186
|
-
delay: options.delay ?? DEFAULT_DELAY,
|
|
187
|
-
factor: options.factor ?? DEFAULT_FACTOR
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
function expected(status: number, statuses?: number[]): boolean {
|
|
192
|
-
return statuses === undefined
|
|
193
|
-
? status >= 200 && status < 300
|
|
194
|
-
: statuses.includes(status)
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
function delay(options: NormalizedRetryOptions, attempt: number): number {
|
|
198
|
-
return options.delay * Math.pow(options.factor, attempt - 1)
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
function retryAfter(value: string | null): number | undefined {
|
|
202
|
-
if (value === null) return undefined
|
|
203
|
-
|
|
204
|
-
const seconds = Number(value)
|
|
205
|
-
|
|
206
|
-
if (Number.isFinite(seconds) && seconds >= 0) return seconds * 1000
|
|
207
|
-
|
|
208
|
-
const date = Date.parse(value)
|
|
209
|
-
|
|
210
|
-
if (Number.isNaN(date)) return undefined
|
|
211
|
-
|
|
212
|
-
return Math.max(0, date - Date.now())
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
async function wait(milliseconds: number, signal: AbortSignal): Promise<void> {
|
|
216
|
-
if (signal.aborted) throw signal.reason
|
|
217
|
-
|
|
218
|
-
await new Promise<void>((resolve, reject) => {
|
|
219
|
-
const timeout = setTimeout(done, milliseconds)
|
|
220
|
-
|
|
221
|
-
signal.addEventListener('abort', aborted, { once: true })
|
|
222
|
-
|
|
223
|
-
function done(): void {
|
|
224
|
-
signal.removeEventListener('abort', aborted)
|
|
225
|
-
resolve()
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
function aborted(): void {
|
|
229
|
-
clearTimeout(timeout)
|
|
230
|
-
reject(signal.reason)
|
|
231
|
-
}
|
|
232
|
-
})
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
function requestURL(request: Request): URL {
|
|
236
|
-
return new URL(request.url)
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
export interface FetchInit extends RequestInit {
|
|
240
|
-
retry?: RetryOptions
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
export interface RetryOptions {
|
|
244
|
-
attempts: number
|
|
245
|
-
expected?: number[]
|
|
246
|
-
delay?: number
|
|
247
|
-
factor?: number
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
interface NormalizedRetryOptions {
|
|
251
|
-
attempts: number
|
|
252
|
-
expected?: number[]
|
|
253
|
-
delay: number
|
|
254
|
-
factor: number
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
interface RetryErrorParameters {
|
|
258
|
-
attempt: number
|
|
259
|
-
options: NormalizedRetryOptions
|
|
260
|
-
request: Request
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
interface InvocationTelemetry {
|
|
264
|
-
output: Console
|
|
265
|
-
parentAttributes: Record<string, unknown>
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
const DEFAULT_DELAY = 100
|
|
269
|
-
const DEFAULT_FACTOR = 2
|
package/source/Factory.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Aspect } from './Aspect.js'
|
|
2
|
-
import type { Locator } from '@toa.io/core'
|
|
3
|
-
import type { extensions } from '@toa.io/core/types'
|
|
4
|
-
|
|
5
|
-
export class Factory implements extensions.Factory {
|
|
6
|
-
public aspect(locator: Locator): extensions.Aspect {
|
|
7
|
-
return new Aspect(locator)
|
|
8
|
-
}
|
|
9
|
-
}
|
package/source/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
import { it, beforeEach, afterEach, mock } from 'node:test';
|
|
2
|
-
import assert from 'node:assert/strict';
|
|
3
|
-
import { Locator } from '@toa.io/core';
|
|
4
|
-
import { consoleExporter, exporting } from 'openspan';
|
|
5
|
-
import { Aspect } from './Aspect.js';
|
|
6
|
-
const nativeFetch = globalThis.fetch;
|
|
7
|
-
let aspect;
|
|
8
|
-
let fetchMock;
|
|
9
|
-
let spans;
|
|
10
|
-
beforeEach(() => {
|
|
11
|
-
aspect = new Aspect(new Locator('users', 'identity'));
|
|
12
|
-
fetchMock = mock.fn();
|
|
13
|
-
globalThis.fetch = fetchMock;
|
|
14
|
-
spans = [];
|
|
15
|
-
exporting([{ export: (span) => spans.push(span) }]);
|
|
16
|
-
});
|
|
17
|
-
afterEach(() => {
|
|
18
|
-
globalThis.fetch = nativeFetch;
|
|
19
|
-
exporting([consoleExporter]);
|
|
20
|
-
});
|
|
21
|
-
it('delegates to native fetch and returns its Response', async () => {
|
|
22
|
-
const response = new Response('ok', { status: 201, headers: { 'x-test': 'yes' } });
|
|
23
|
-
fetchMock.mock.mockImplementation(async () => response);
|
|
24
|
-
const result = await aspect.invoke('create', 'https://example.com/items?secret=yes', {
|
|
25
|
-
method: 'POST',
|
|
26
|
-
headers: { 'content-type': 'application/json' },
|
|
27
|
-
body: '{}'
|
|
28
|
-
});
|
|
29
|
-
assert.strictEqual(result, response);
|
|
30
|
-
assert.strictEqual(fetchMock.mock.callCount(), 1);
|
|
31
|
-
const request = fetchMock.mock.calls[0].arguments[0];
|
|
32
|
-
assert.ok(request instanceof Request);
|
|
33
|
-
assert.strictEqual(request.method, 'POST');
|
|
34
|
-
assert.strictEqual(request.url, 'https://example.com/items?secret=yes');
|
|
35
|
-
await assert.strictEqual(await request.text(), '{}');
|
|
36
|
-
});
|
|
37
|
-
it('does not retry by default', async () => {
|
|
38
|
-
fetchMock.mock.mockImplementation(async () => new Response(null, { status: 503 }));
|
|
39
|
-
const response = await aspect.invoke('get', 'https://example.com');
|
|
40
|
-
assert.strictEqual(response.status, 503);
|
|
41
|
-
assert.strictEqual(fetchMock.mock.callCount(), 1);
|
|
42
|
-
});
|
|
43
|
-
it('retries unexpected responses and returns an expected response', async () => {
|
|
44
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 503 }), fetchMock.mock.callCount());
|
|
45
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 201 }), fetchMock.mock.callCount() + 1);
|
|
46
|
-
const response = await aspect.invoke('create', 'https://example.com', {
|
|
47
|
-
retry: { attempts: 3, expected: [201], delay: 0 }
|
|
48
|
-
});
|
|
49
|
-
assert.strictEqual(response.status, 201);
|
|
50
|
-
assert.strictEqual(fetchMock.mock.callCount(), 2);
|
|
51
|
-
});
|
|
52
|
-
it('cancels an unexpected response body before retrying', async () => {
|
|
53
|
-
const cancel = mock.fn();
|
|
54
|
-
const body = new ReadableStream({ cancel });
|
|
55
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(body, { status: 503 }), fetchMock.mock.callCount());
|
|
56
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 200 }), fetchMock.mock.callCount() + 1);
|
|
57
|
-
await aspect.invoke('get', 'https://example.com', {
|
|
58
|
-
retry: { attempts: 2, delay: 0 }
|
|
59
|
-
});
|
|
60
|
-
assert.strictEqual(cancel.mock.callCount(), 1);
|
|
61
|
-
});
|
|
62
|
-
it('continues retrying when response body cancellation fails', async () => {
|
|
63
|
-
const body = new ReadableStream({
|
|
64
|
-
cancel: () => {
|
|
65
|
-
throw new Error('cancel failed');
|
|
66
|
-
}
|
|
67
|
-
});
|
|
68
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(body, { status: 503 }), fetchMock.mock.callCount());
|
|
69
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 200 }), fetchMock.mock.callCount() + 1);
|
|
70
|
-
const response = await aspect.invoke('get', 'https://example.com', {
|
|
71
|
-
retry: { attempts: 2, delay: 0 }
|
|
72
|
-
});
|
|
73
|
-
assert.strictEqual(response.status, 200);
|
|
74
|
-
});
|
|
75
|
-
it('replays a regular request body', async () => {
|
|
76
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 503 }), fetchMock.mock.callCount());
|
|
77
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 200 }), fetchMock.mock.callCount() + 1);
|
|
78
|
-
await aspect.invoke('create', 'https://example.com', {
|
|
79
|
-
method: 'POST',
|
|
80
|
-
body: 'hello',
|
|
81
|
-
retry: { attempts: 2, delay: 0 }
|
|
82
|
-
});
|
|
83
|
-
const first = fetchMock.mock.calls[0].arguments[0];
|
|
84
|
-
const second = fetchMock.mock.calls[1].arguments[0];
|
|
85
|
-
await assert.strictEqual(await first.text(), 'hello');
|
|
86
|
-
await assert.strictEqual(await second.text(), 'hello');
|
|
87
|
-
});
|
|
88
|
-
it('honors Retry-After instead of the configured delay', async () => {
|
|
89
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, {
|
|
90
|
-
status: 503,
|
|
91
|
-
headers: { 'retry-after': '0' }
|
|
92
|
-
}), fetchMock.mock.callCount());
|
|
93
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 200 }), fetchMock.mock.callCount() + 1);
|
|
94
|
-
const response = await aspect.invoke('get', 'https://example.com', {
|
|
95
|
-
retry: { attempts: 2, delay: 60_000 }
|
|
96
|
-
});
|
|
97
|
-
assert.strictEqual(response.status, 200);
|
|
98
|
-
assert.strictEqual(fetchMock.mock.callCount(), 2);
|
|
99
|
-
});
|
|
100
|
-
it('returns the last unexpected response', async () => {
|
|
101
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 500 }), fetchMock.mock.callCount());
|
|
102
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 502 }), fetchMock.mock.callCount() + 1);
|
|
103
|
-
const response = await aspect.invoke('get', 'https://example.com', {
|
|
104
|
-
retry: { attempts: 2, delay: 0 }
|
|
105
|
-
});
|
|
106
|
-
assert.strictEqual(response.status, 502);
|
|
107
|
-
});
|
|
108
|
-
it('retries network errors and throws the final error', async () => {
|
|
109
|
-
const first = new Error('first');
|
|
110
|
-
const last = new Error('last');
|
|
111
|
-
fetchMock.mock.mockImplementationOnce(async () => {
|
|
112
|
-
throw first;
|
|
113
|
-
}, fetchMock.mock.callCount());
|
|
114
|
-
fetchMock.mock.mockImplementationOnce(async () => {
|
|
115
|
-
throw last;
|
|
116
|
-
}, fetchMock.mock.callCount() + 1);
|
|
117
|
-
await assert.rejects(aspect.invoke('get', 'https://example.com', {
|
|
118
|
-
retry: { attempts: 2, delay: 0 }
|
|
119
|
-
}), (error) => {
|
|
120
|
-
assert.strictEqual(error, last);
|
|
121
|
-
return true;
|
|
122
|
-
});
|
|
123
|
-
assert.strictEqual(fetchMock.mock.callCount(), 2);
|
|
124
|
-
});
|
|
125
|
-
it('aborts while waiting for another attempt', async () => {
|
|
126
|
-
const controller = new AbortController();
|
|
127
|
-
fetchMock.mock.mockImplementation(async () => new Response(null, { status: 503 }));
|
|
128
|
-
const promise = aspect.invoke('get', 'https://example.com', {
|
|
129
|
-
signal: controller.signal,
|
|
130
|
-
retry: { attempts: 2, delay: 60_000 }
|
|
131
|
-
});
|
|
132
|
-
await new Promise((resolve) => setImmediate(resolve));
|
|
133
|
-
controller.abort(new Error('cancelled'));
|
|
134
|
-
await assert.rejects(promise, (error) => /cancelled/.test(error.message));
|
|
135
|
-
assert.strictEqual(fetchMock.mock.callCount(), 1);
|
|
136
|
-
});
|
|
137
|
-
it('rejects invalid retry options', async () => {
|
|
138
|
-
await assert.rejects(aspect.invoke('get', 'https://example.com', {
|
|
139
|
-
retry: { attempts: 0 }
|
|
140
|
-
}), (error) => /retry\.attempts/.test(error.message));
|
|
141
|
-
await assert.rejects(aspect.invoke('get', 'https://example.com', {
|
|
142
|
-
retry: { attempts: 2, expected: [] }
|
|
143
|
-
}), (error) => /retry\.expected/.test(error.message));
|
|
144
|
-
});
|
|
145
|
-
it('rejects an explicit streaming body before sending it', async () => {
|
|
146
|
-
const body = new ReadableStream();
|
|
147
|
-
await assert.rejects(aspect.invoke('create', 'https://example.com', {
|
|
148
|
-
method: 'POST',
|
|
149
|
-
body,
|
|
150
|
-
// Required by Node.js for a streaming request body.
|
|
151
|
-
// @ts-expect-error -- duplex is implemented by Node but absent from lib.dom RequestInit.
|
|
152
|
-
duplex: 'half',
|
|
153
|
-
retry: { attempts: 2 }
|
|
154
|
-
}), (error) => /non-replayable/.test(error.message));
|
|
155
|
-
assert.strictEqual(fetchMock.mock.callCount(), 0);
|
|
156
|
-
});
|
|
157
|
-
it('rejects a Request input with a body before retrying', async () => {
|
|
158
|
-
const request = new Request('https://example.com', { method: 'POST', body: 'hello' });
|
|
159
|
-
await assert.rejects(aspect.invoke('create', request, {
|
|
160
|
-
retry: { attempts: 2 }
|
|
161
|
-
}), (error) => /non-replayable/.test(error.message));
|
|
162
|
-
assert.strictEqual(fetchMock.mock.callCount(), 0);
|
|
163
|
-
});
|
|
164
|
-
it('creates a scoped parent span with a client span for each attempt', async () => {
|
|
165
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 503 }), fetchMock.mock.callCount());
|
|
166
|
-
fetchMock.mock.mockImplementationOnce(async () => new Response(null, { status: 204 }), fetchMock.mock.callCount() + 1);
|
|
167
|
-
await aspect.invoke('update', 'https://example.com/items?token=secret', {
|
|
168
|
-
method: 'PUT',
|
|
169
|
-
retry: { attempts: 2, delay: 0 }
|
|
170
|
-
});
|
|
171
|
-
assert.strictEqual(spans.length, 3);
|
|
172
|
-
const parent = spans.find((span) => span.name === 'PUT https://example.com');
|
|
173
|
-
const attempts = spans.filter((span) => span.parentId === parent.spanId);
|
|
174
|
-
assert.partialDeepStrictEqual(parent, {
|
|
175
|
-
name: 'PUT https://example.com',
|
|
176
|
-
kind: 'internal',
|
|
177
|
-
scope: {
|
|
178
|
-
namespace: 'identity',
|
|
179
|
-
component: 'users',
|
|
180
|
-
operation: 'update'
|
|
181
|
-
},
|
|
182
|
-
attributes: {
|
|
183
|
-
'http.request.method': 'PUT',
|
|
184
|
-
'http.response.status_code': 204,
|
|
185
|
-
'url.scheme': 'https',
|
|
186
|
-
'server.address': 'example.com',
|
|
187
|
-
'retry.attempts': 2
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
assert.partialDeepStrictEqual(attempts, [
|
|
191
|
-
{
|
|
192
|
-
name: 'attempt 1',
|
|
193
|
-
kind: 'client',
|
|
194
|
-
attributes: {
|
|
195
|
-
'retry.attempt': 1,
|
|
196
|
-
'http.response.status_code': 503
|
|
197
|
-
}
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
name: 'attempt 2',
|
|
201
|
-
kind: 'client',
|
|
202
|
-
attributes: {
|
|
203
|
-
'retry.attempt': 2,
|
|
204
|
-
'http.response.status_code': 204
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
]);
|
|
208
|
-
assert.ok(!JSON.stringify(spans).includes('token=secret'));
|
|
209
|
-
});
|
|
210
|
-
it('marks the span as failed after a final network error', async () => {
|
|
211
|
-
fetchMock.mock.mockImplementation(async () => {
|
|
212
|
-
throw new Error('unavailable');
|
|
213
|
-
});
|
|
214
|
-
await assert.rejects(aspect.invoke('get', 'https://example.com'), (error) => /unavailable/.test(error.message));
|
|
215
|
-
assert.strictEqual(spans.length, 2);
|
|
216
|
-
assert.strictEqual(spans.every((span) => span.status === 'error'), true);
|
|
217
|
-
});
|
|
218
|
-
//# sourceMappingURL=Aspect.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Aspect.test.js","sourceRoot":"","sources":["../source/Aspect.test.ts"],"names":[],"mappings":"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"}
|
package/tsconfig.json
DELETED
package/tsconfig.tsbuildinfo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":"7.0.2","root":[[199,202]],"packageJsons":["./package.json","../../libraries/openspan/package.json","../../libraries/schemas/package.json","../../node_modules/@types/node/package.json","../../node_modules/ajv/package.json","../../node_modules/buffer/package.json","../../node_modules/events/package.json","../../node_modules/fast-uri/package.json","../../node_modules/process/package.json","../../node_modules/punycode/package.json","../../node_modules/string_decoder/package.json","../../node_modules/undici-types/package.json","../../runtime/core/package.json"],"missingPackageJsons":["../../node_modules/@toa.io/core/types/package.json","../../node_modules/@types/assert/package.json","../../node_modules/@types/assert/strict/package.json","../../node_modules/@types/async_hooks/package.json","../../node_modules/@types/child_process/package.json","../../node_modules/@types/cluster/package.json","../../node_modules/@types/console/package.json","../../node_modules/@types/constants/package.json","../../node_modules/@types/crypto/package.json","../../node_modules/@types/dgram/package.json","../../node_modules/@types/diagnostics_channel/package.json","../../node_modules/@types/dns/package.json","../../node_modules/@types/dns/promises/package.json","../../node_modules/@types/domain/package.json","../../node_modules/@types/events/package.json","../../node_modules/@types/fs/package.json","../../node_modules/@types/fs/promises/package.json","../../node_modules/@types/http/package.json","../../node_modules/@types/http2/package.json","../../node_modules/@types/https/package.json","../../node_modules/@types/inspector/package.json","../../node_modules/@types/inspector/promises/package.json","../../node_modules/@types/module/package.json","../../node_modules/@types/net/package.json","../../node_modules/@types/node/assert/package.json","../../node_modules/@types/node/dns/package.json","../../node_modules/@types/node/fs/package.json","../../node_modules/@types/node/inspector/package.json","../../node_modules/@types/node/path/package.json","../../node_modules/@types/node/readline/package.json","../../node_modules/@types/node/stream/package.json","../../node_modules/@types/node/test/package.json","../../node_modules/@types/node/timers/package.json","../../node_modules/@types/node/util/package.json","../../node_modules/@types/node/web-globals/package.json","../../node_modules/@types/node/zlib/package.json","../../node_modules/@types/os/package.json","../../node_modules/@types/path/package.json","../../node_modules/@types/path/posix/package.json","../../node_modules/@types/path/win32/package.json","../../node_modules/@types/perf_hooks/package.json","../../node_modules/@types/process/package.json","../../node_modules/@types/punycode/package.json","../../node_modules/@types/querystring/package.json","../../node_modules/@types/readline/package.json","../../node_modules/@types/readline/promises/package.json","../../node_modules/@types/repl/package.json","../../node_modules/@types/stream/consumers/package.json","../../node_modules/@types/stream/iter/package.json","../../node_modules/@types/stream/package.json","../../node_modules/@types/stream/promises/package.json","../../node_modules/@types/stream/web/package.json","../../node_modules/@types/string_decoder/package.json","../../node_modules/@types/timers/package.json","../../node_modules/@types/timers/promises/package.json","../../node_modules/@types/tls/package.json","../../node_modules/@types/trace_events/package.json","../../node_modules/@types/tty/package.json","../../node_modules/@types/url/package.json","../../node_modules/@types/util/package.json","../../node_modules/@types/util/types/package.json","../../node_modules/@types/v8/package.json","../../node_modules/@types/vm/package.json","../../node_modules/@types/wasi/package.json","../../node_modules/@types/worker_threads/package.json","../../node_modules/@types/zlib/package.json","../../node_modules/ajv/dist/compile/codegen/package.json","../../node_modules/ajv/dist/compile/package.json","../../node_modules/ajv/dist/compile/validate/package.json","../../node_modules/ajv/dist/package.json","../../node_modules/ajv/dist/runtime/package.json","../../node_modules/ajv/dist/types/package.json","../../node_modules/ajv/dist/vocabularies/applicator/package.json","../../node_modules/ajv/dist/vocabularies/discriminator/package.json","../../node_modules/ajv/dist/vocabularies/format/package.json","../../node_modules/ajv/dist/vocabularies/package.json","../../node_modules/ajv/dist/vocabularies/unevaluated/package.json","../../node_modules/ajv/dist/vocabularies/validation/package.json","../../node_modules/assert/package.json","../../node_modules/assert/strict/package.json","../../node_modules/async_hooks/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/fast-uri/types/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/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/iter/package.json","../../node_modules/stream/package.json","../../node_modules/stream/promises/package.json","../../node_modules/stream/web/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/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"],"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.dom.d.ts","lib.dom.iterable.d.ts","lib.dom.asynciterable.d.ts","lib.webworker.importscripts.d.ts","lib.scripthost.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","lib.esnext.full.d.ts","../../runtime/core/transpiled/connector.d.ts","../../runtime/core/transpiled/locator.d.ts","../../libraries/schemas/types/schema.d.ts","../../libraries/schemas/types/namespace.d.ts","../../node_modules/fast-uri/types/index.d.ts","../../node_modules/ajv/dist/compile/codegen/code.d.ts","../../node_modules/ajv/dist/compile/codegen/scope.d.ts","../../node_modules/ajv/dist/compile/codegen/index.d.ts","../../node_modules/ajv/dist/compile/rules.d.ts","../../node_modules/ajv/dist/compile/util.d.ts","../../node_modules/ajv/dist/compile/validate/subschema.d.ts","../../node_modules/ajv/dist/compile/errors.d.ts","../../node_modules/ajv/dist/compile/validate/index.d.ts","../../node_modules/ajv/dist/compile/validate/dataType.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../../node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../../node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts","../../node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts","../../node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../../node_modules/ajv/dist/vocabularies/validation/required.d.ts","../../node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts","../../node_modules/ajv/dist/vocabularies/validation/const.d.ts","../../node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../../node_modules/ajv/dist/vocabularies/validation/index.d.ts","../../node_modules/ajv/dist/vocabularies/format/format.d.ts","../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts","../../node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts","../../node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts","../../node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../../node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../../node_modules/ajv/dist/vocabularies/errors.d.ts","../../node_modules/ajv/dist/types/json-schema.d.ts","../../node_modules/ajv/dist/types/jtd-schema.d.ts","../../node_modules/ajv/dist/runtime/validation_error.d.ts","../../node_modules/ajv/dist/compile/ref_error.d.ts","../../node_modules/ajv/dist/core.d.ts","../../node_modules/ajv/dist/compile/resolve.d.ts","../../node_modules/ajv/dist/compile/index.d.ts","../../node_modules/ajv/dist/types/index.d.ts","../../node_modules/ajv/dist/ajv.d.ts","../../libraries/schemas/types/index.d.ts","../../runtime/core/transpiled/exceptions.d.ts","../../runtime/core/transpiled/types/request.d.ts","../../runtime/core/transpiled/component.d.ts","../../runtime/core/transpiled/remote.d.ts","../../runtime/core/transpiled/types/message.d.ts","../../runtime/core/transpiled/types/receiver.d.ts","../../runtime/core/transpiled/types/state.d.ts","../../runtime/core/transpiled/types/outbox.d.ts","../../runtime/core/transpiled/types/storages.d.ts","../../runtime/core/transpiled/types/bindings.d.ts","../../runtime/core/transpiled/types/atomicity.d.ts","../../runtime/core/transpiled/types/extensions.d.ts","../../runtime/core/transpiled/context.d.ts","../../runtime/core/transpiled/types/bridges.d.ts","../../runtime/core/transpiled/cascade.d.ts","../../runtime/core/transpiled/guard.d.ts","../../runtime/core/transpiled/entities/entity.d.ts","../../runtime/core/transpiled/entities/set.d.ts","../../runtime/core/transpiled/entities/changeset.d.ts","../../runtime/core/transpiled/entities/factory.d.ts","../../runtime/core/transpiled/event.d.ts","../../runtime/core/transpiled/emission.d.ts","../../runtime/core/transpiled/outbox/outbox.d.ts","../../runtime/core/transpiled/state.d.ts","../../runtime/core/transpiled/query/criteria.d.ts","../../runtime/core/transpiled/query.d.ts","../../runtime/core/transpiled/contract/contract.d.ts","../../runtime/core/transpiled/types/operations.d.ts","../../runtime/core/transpiled/operation.d.ts","../../runtime/core/transpiled/assignment.d.ts","../../runtime/core/transpiled/transmission.d.ts","../../runtime/core/transpiled/contract/schemas.d.ts","../../runtime/core/transpiled/contract/request.d.ts","../../runtime/core/transpiled/call.d.ts","../../runtime/core/transpiled/composition.d.ts","../../runtime/core/transpiled/discovery.d.ts","../../runtime/core/transpiled/observation.d.ts","../../runtime/core/transpiled/effect.d.ts","../../runtime/core/transpiled/exposition.d.ts","../../runtime/core/transpiled/outbox/index.d.ts","../../runtime/core/transpiled/receiver.d.ts","../../runtime/core/transpiled/reflection.d.ts","../../runtime/core/transpiled/transition.d.ts","../../runtime/core/transpiled/unmanaged.d.ts","../../runtime/core/transpiled/entities/index.d.ts","../../runtime/core/transpiled/contract/reply.d.ts","../../runtime/core/transpiled/contract/index.d.ts","../../runtime/core/transpiled/index.d.ts","../../libraries/openspan/transpiled/exporters.d.ts","../../libraries/openspan/transpiled/Console.d.ts","../../libraries/openspan/transpiled/tracing.d.ts","../../libraries/openspan/transpiled/Otlp.d.ts","../../libraries/openspan/transpiled/traces.d.ts","../../libraries/openspan/transpiled/index.d.ts","../../runtime/core/transpiled/types/index.d.ts","./source/Aspect.ts","./source/Aspect.test.ts","./source/Factory.ts","./source/index.ts","../../node_modules/@types/node/globals.typedarray.d.ts","../../node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../node_modules/@types/node/web-globals/blob.d.ts","../../node_modules/@types/node/web-globals/console.d.ts","../../node_modules/@types/node/web-globals/crypto.d.ts","../../node_modules/@types/node/web-globals/domexception.d.ts","../../node_modules/@types/node/web-globals/encoding.d.ts","../../node_modules/@types/node/web-globals/events.d.ts","../../node_modules/undici-types/utility.d.ts","../../node_modules/undici-types/header.d.ts","../../node_modules/undici-types/readable.d.ts","../../node_modules/undici-types/fetch.d.ts","../../node_modules/undici-types/formdata.d.ts","../../node_modules/undici-types/connector.d.ts","../../node_modules/undici-types/client-stats.d.ts","../../node_modules/undici-types/client.d.ts","../../node_modules/undici-types/errors.d.ts","../../node_modules/undici-types/dispatcher.d.ts","../../node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/undici-types/global-origin.d.ts","../../node_modules/undici-types/pool-stats.d.ts","../../node_modules/undici-types/pool.d.ts","../../node_modules/undici-types/handlers.d.ts","../../node_modules/undici-types/balanced-pool.d.ts","../../node_modules/undici-types/round-robin-pool.d.ts","../../node_modules/undici-types/h2c-client.d.ts","../../node_modules/undici-types/agent.d.ts","../../node_modules/undici-types/dispatcher1-wrapper.d.ts","../../node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/undici-types/mock-call-history.d.ts","../../node_modules/undici-types/mock-agent.d.ts","../../node_modules/undici-types/mock-client.d.ts","../../node_modules/undici-types/mock-pool.d.ts","../../node_modules/undici-types/snapshot-agent.d.ts","../../node_modules/undici-types/mock-errors.d.ts","../../node_modules/undici-types/proxy-agent.d.ts","../../node_modules/undici-types/socks5-proxy-agent.d.ts","../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/undici-types/retry-handler.d.ts","../../node_modules/undici-types/retry-agent.d.ts","../../node_modules/undici-types/api.d.ts","../../node_modules/undici-types/cache-interceptor.d.ts","../../node_modules/undici-types/interceptors.d.ts","../../node_modules/undici-types/util.d.ts","../../node_modules/undici-types/cookies.d.ts","../../node_modules/undici-types/patch.d.ts","../../node_modules/undici-types/websocket.d.ts","../../node_modules/undici-types/eventsource.d.ts","../../node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/undici-types/content-type.d.ts","../../node_modules/undici-types/cache.d.ts","../../node_modules/undici-types/index.d.ts","../../node_modules/@types/node/web-globals/fetch.d.ts","../../node_modules/@types/node/web-globals/importmeta.d.ts","../../node_modules/@types/node/web-globals/messaging.d.ts","../../node_modules/@types/node/web-globals/navigator.d.ts","../../node_modules/@types/node/web-globals/performance.d.ts","../../node_modules/@types/node/web-globals/storage.d.ts","../../node_modules/@types/node/web-globals/streams.d.ts","../../node_modules/@types/node/web-globals/timers.d.ts","../../node_modules/@types/node/web-globals/url.d.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/ffi.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/inspector.generated.d.ts","../../node_modules/@types/node/inspector/promises.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/buffer/index.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/path/posix.d.ts","../../node_modules/@types/node/path/win32.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/quic.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/readline/promises.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/sea.d.ts","../../node_modules/@types/node/sqlite.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/iter.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/test.d.ts","../../node_modules/@types/node/test/reporters.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/util/types.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vfs.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/zlib/iter.d.ts","../../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":"aae8996e8b5684814785a42cbbefcd79","affectsGlobalScope":true,"impliedNodeFormat":1},"abad6dd56cc8caf095c165df8124d237","abad6dd56cc8caf095c165df8124d237",{"version":"2a9941db0809c9ad0e8837ed629b1dcc","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d051b93324f36bcc68d152a5ca0988cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"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},"2bccd8eaa1dc27e6e29feb6b1baad635",{"version":"977941447028bf308ef13c152575986b","impliedNodeFormat":99},{"version":"3acdae37d6c66db4a03164f8f88e80e5","impliedNodeFormat":99},{"version":"b14af32ddc0996a2d3698878bc6a119e","impliedNodeFormat":99},{"version":"54a1fd1cc8dd71316a8232191ed6eedb","impliedNodeFormat":99},"802724a296026817d9601955082294ac","94ed1759c19caac245597ba44150c658","ceb0ac5d10e07f6c9f770a73505470bc","9c265b3bec273e7bdaa7d09a38788ef8","b54f6e078b3d15ed155eea3206754ec7","8a4ebaaae4e66aa9ccbbde4fa63759de","21c901a8ecd84fa64f96dd1639053c8d","08b574ad929aff7f7a74b2d4f6f4ed33","321d8283d1b599a74caf4e5f2bab2fab","032b6a1ae32202a2e5a228b7612ca643","1d1218557add7c9acf8c696573235622","fb6a4ee77894ae5d00cff3e7d3a051b6","20dff29c5ac44402c1b9686000567226","427e5db3cf2d6fc5d109e72de9b052cc","0f0157bbf6c41fd6136a0cdd09348339","a6ee5064efa6165c13528cdd04bd92ef","bc5bb5f8c1644539e645da50acc0759c","9ff8d249714f36d82664987d83bdbd0b","fbe6e4fbcdea083dbe813916cfeae704","bd4f72f29aa4ae821021e816d760677c","cd15a2b1777e2f95e1c862c1bd8c909d","dfcf4aef9e9ea4f8d1447b282d22d744","2f05e99b7764f62cf7e8cf455db11727","9bf38e8590e8275780cdb08344571da9","afee1ab69e899b8040f94a4fdd21f9ab","d0fb5e95a51f36ca409ee8319b2eaba1","5e615dbe870c5617008676256e9329e1","de6b2dc8a9eca2802140393ff9f1142f","4a746b67c435ca508e9d78fb883e4f4b","f91fca647af2eb5711d236dd94207de5","8dc4118c4acc6911f0b4b8f7f10ad276","dc0392425b132ff17a4fd6d35c03e769","c6782ea8eca63fdf0aaed12060addd49","be6d02b1d1024069a1cbb0d795c0338c","5a84a4689cc1af8e52880e905c38a74a","5f7de59a4c5ad6283e4134640e1226f0","9751e8a0f6668630866eeb9411cc1e29","316b7e4d37a2d481b7d0ba94e56590a4","03903a33b535f7f81c54f777faf1e1e1","704ef5e30581df970cff079c8ed3b9f9","9dbe77ddd371afaaa86a8035665a9bbe","4520dc26585e28b731de4714bbc56c2f","4feb7843c06951605209f22dccd2aeff","867b2bdfc0cb72213a0661de94e56270","ba2bd3724e9bb7e143ef200a08118a11",{"version":"34219d8b6fbf2c64b387d32f34ad4831","impliedNodeFormat":99},{"version":"bf77ab5af18dfb7b1e82e5b30c9fc12f","impliedNodeFormat":99},{"version":"368583c1231fcba764cae5132767bcce","impliedNodeFormat":99},{"version":"4eb0a8d2fdcd0433ddfabf63012819a6","impliedNodeFormat":99},{"version":"3a0c9da39300aa1abdf90d415c3fc906","impliedNodeFormat":99},{"version":"821ebd6dbdc9089cb121c3c8b3e137e0","impliedNodeFormat":99},{"version":"e3b2b344cc47343c3dfb09f0b7ae9c56","impliedNodeFormat":99},{"version":"9069d21dee513028c980142db4a2bb6d","impliedNodeFormat":99},{"version":"aa17f0a5d7d650bd0ea905ba5cade2f4","impliedNodeFormat":99},{"version":"d7c5f6df867af4d9223516320bcb45ee","impliedNodeFormat":99},{"version":"1368ffd6bafd1b814d1271d97f18d1f0","impliedNodeFormat":99},{"version":"936d9e4e0d2fd3ed095e162fa00c66a3","impliedNodeFormat":99},{"version":"5ac1c2dc6e00199e23bb056bc2baab5b","impliedNodeFormat":99},{"version":"ac2bd30bab29f31cacac1a0f362b4638","impliedNodeFormat":99},{"version":"ddcfad390da8bd0fb0d4c6411884f564","impliedNodeFormat":99},{"version":"e42f64cc0f0b1759952b808a96e74e0d","impliedNodeFormat":99},{"version":"1faf06f6cf87abcde8817f2edb9781c2","impliedNodeFormat":99},{"version":"6e957a38a59394adc45813669dca5179","impliedNodeFormat":99},{"version":"597db77b992a653c50609c5b77fcc2e8","impliedNodeFormat":99},{"version":"98e83df7649d1846bd70db8959489942","impliedNodeFormat":99},{"version":"8ebd7245425e89eb5b533a2abef05aaf","impliedNodeFormat":99},{"version":"c7c5fcc1ad066d0718300b65f37e7954","impliedNodeFormat":99},{"version":"69978194eaa3ebc8c7d18e56bbeefe01","impliedNodeFormat":99},{"version":"62bb5e2a873e5e409e8483772f22b449","impliedNodeFormat":99},{"version":"bf6ce89b5e81c70e9bc341f36457fab1","impliedNodeFormat":99},{"version":"d3544a22751504284e8ee83bccdd48ec","impliedNodeFormat":99},{"version":"b9510fad668dbcbdecd5eaff84a5aedc","impliedNodeFormat":99},{"version":"11fa407645a25b2e39eb066ab3fb86c0","impliedNodeFormat":99},{"version":"191bb6b96b72c0106e1cb7fe700ccd54","impliedNodeFormat":99},{"version":"230311015dc85ae619d5e4b5052108cc","impliedNodeFormat":99},{"version":"76844eb6a278e0540ca57047a0d87f20","impliedNodeFormat":99},{"version":"3f005e383072974d6f39a528ce07ff68","impliedNodeFormat":99},{"version":"d8faa3aacf0fe0fdab4a90970fa7cd82","impliedNodeFormat":99},{"version":"316a88e26e7a9d2271dafee316382aa8","impliedNodeFormat":99},{"version":"5d11a83eacf697e1242bb4b58363a199","impliedNodeFormat":99},{"version":"485d46f9aa9ea94db23ae013a2b2a214","impliedNodeFormat":99},{"version":"44ba1a124384f987b3d7841ac9e81082","impliedNodeFormat":99},{"version":"bb4f0e5cbd91f62b61356dae4946f064","impliedNodeFormat":99},{"version":"daf96554157275e4f457a30775b9c54f","impliedNodeFormat":99},{"version":"cd694b41b46026ae2c8e9c538dafa156","impliedNodeFormat":99},{"version":"adfde188658d7d47b82989d82d40b655","impliedNodeFormat":99},{"version":"5d3dc528d7c83971631126c7445b417c","impliedNodeFormat":99},{"version":"e7d359bf300a949f7e1f410f3a5c41e5","impliedNodeFormat":99},{"version":"0fb6c1bf1d595e96a4a969cd60f7f49d","impliedNodeFormat":99},{"version":"542b72cea72f0994195678708ce1b506","impliedNodeFormat":99},{"version":"db589df5bda2fedbdc6a4d5afb60c22c","impliedNodeFormat":99},{"version":"15b1edd1943e908842a87abc56e3ffa4","impliedNodeFormat":99},{"version":"23d6ead97052f57d81ea08bfdd759e71","impliedNodeFormat":99},{"version":"5be7213e49709360205ccb1d85274823","impliedNodeFormat":99},{"version":"3f73a1dea17740db8253d7e5514f2612","impliedNodeFormat":99},{"version":"ed7dbb8de1495333fd28a7092bc8a22d","impliedNodeFormat":99},{"version":"14c6e5ed858f3aaad5515895729d9edd","impliedNodeFormat":99},{"version":"2447b67c85852d1550e81e5efd04b690","impliedNodeFormat":99},{"version":"3670769a18e09b93827d22fd12b98f1f","impliedNodeFormat":99},{"version":"36019e2db6a9b9def8a8c4ee343dc97a","impliedNodeFormat":99},{"version":"8d9fb4b7c6ff10ec665c1dca0e857edd","impliedNodeFormat":99},{"version":"305206dd4540b0cfe3635ef5129c9fd7","signature":"8207e4802ce90d03941e4638862bf423","impliedNodeFormat":99},{"version":"bdc0fddf038f396b9c8e8e5e3a28526b","signature":"abe7d9981d6018efb6b2b794f40a1607","impliedNodeFormat":99},{"version":"dcd7e02e0032c0445ba5d85ff9113806","signature":"6bc5b44d9c13f9121dd46b7a7a3e393f","impliedNodeFormat":99},{"version":"8becd33a552d7f055de0e098b726ad41","signature":"b075be3517fa85666a7031671845c745","impliedNodeFormat":99},{"version":"014eb4d3e0618e548a7001fb52d9f78b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8ab4edc191017b1a2ad5b3cb8b46cdb8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c5eb15737c858d986e0d5a542103b1df","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec83150a952000d42a7e6ccedac2d892","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"494755686d9e421e630117d917760e4f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c3f3d4053311f68af31e07f6e167faf6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"86013697f2045d357ef20d7a952cdc12","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"fbef359f7184dcd12e5b3b95b171cca0","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1ca5302f6fe11154128eef397b5a285b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"13835e9ba9b025ad7cab01fe7bad1fe3","affectsGlobalScope":true,"impliedNodeFormat":1},"49133c0dfbc32ab95668c3443dea49e5","d0b24ed45e91de84ca0fbafde3797006","9f970a4ba4bb3ed6326d46b3ddab3f63","7326b52c300bf65ac2f7e089fa536421","75de66fc4824402123c0d694ccc0a085","ff1283d1b4e6fa719203127857079e2e","fcd1a513c1e5802916fa602e8b8e64bc","78963d55a7500f2a08ecf81c3e2f2351","c1ace754853b3b972549a44a2316ca86","cf4561df3889c71b6b70fda4afe61f62","705645fe223430c696f47b708d592ca8","28d57c837c94adb42add03d499793cab","8c01a9bbae8449be21b3e018d59a74ac","b4a1cb50a619bde79c20d19aeb560633","21dc8b1a2dfd71b39278fd1db4055489","74d351e4ed233e82c6d74c444c1a6b86","35b9b5981aa2c74f808ba3334548e89b","81870445ff689f1a6c65a6d62e034298","d7131a7789ae06e6ba79d7cd1841fde7","dd373f44a8c44dd9286f3b43e07fc873","d7e5f7a0f1f883f28458f684106e7643","c2364011a80b6a9e3cc0e77895bad577","38da5c670190f4a35cbc204ca6c616bf","d95cc0eb29beed58f5ce72db21398f53","ecd53256b1ec7379c73316eaf392a69c","9871d4fb594b51eb13a3f6db71e01844","69c7bb9c3befe9ae37eed0e6a6310fee","c9351e1ed4d066672ad38be5c44f60b9","71e556084722c2a3f00f47d999db1e35","094ecadae30f65a82b77343dde77a666","f75df12d75dd783b03a0329b95abdb25","b438b08b2f0ed94a95a75c8990d9021b","f2becd2589591db92ab14e803eb8bdd5","230b29c24dac9c9800ba909debbaf7c4","518eaa3ff1153eacd0343a6bab2ce870","0468c0ccd0ec7770b76481b165564d62","188234d616a4f50ed9b14c8f84a39f33","4c116bcf0a47ea8fbf4072f380925fa7","213fda99209bff9d0330b6d9f5c9c7f3","add85ec26ba695fc99c698dbec065f8c","5bfde23f96fc502b5413d772c35e1abf","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","531a291f1cbe853ce3a138313c7448e9",{"version":"3b4fc11e9a5d20c846f1ba38889cbc8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"53b0e86dfe96eb781a056e2662bf1e3b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d0bac56ae60094675c08a325b81d3b1a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"292c9398a407b33b1d9c9812b673387a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"83bc735c360e42b09f2b102d7b831ede","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"45df94b3c51b898624bacc2bcd6d9eb2","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b1a6b0b0f8828c286f9ae2ba01c4a5c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8617a23553d74c31be6da303c668bd18","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3f2d808ba5f1ae3681bf7df616488dcd","affectsGlobalScope":true,"impliedNodeFormat":1},"4e58ba439fc661a1e2337fd17ae89d94","604aab8dd7c02abe3fcf1218fa951439","eb8c0e64b0e0e76f43e7c552937a365f",{"version":"d9f08c6ae1f16ca22e5a7ee7c02e8f55","affectsGlobalScope":true,"impliedNodeFormat":1},"e894ca92e848c9059a67e916bf4a5ccd","2c43726da10a0a524992e6fd4a561aba","75c6ee2c7a0e7d54f06ae1941553f44f","9af5958f27aacf7d18939d710f5b0da4","de7cf5e4aaf0fcdb2812d862f7dfd647","f30f64747df91267926bcf85bb6baa63","dca9e0bed5a66eaef8e9d2533b733526","4fbcefaa3aa9d4af9d76d946c7c445cc","949ce92cb920c39fb4ff87098ebe56af","2d8ebe6eb639d14875e12acf069d9c65",{"version":"2d30f3e526b72134674afeee7eb5f870","affectsGlobalScope":true,"impliedNodeFormat":1},"181dcb34d7e826bd78ede0b7f8794432","516b9a8f5be6176b42a139206d8a4b0f","c01d3dfae670c432efbc2a173594b5a1","884c159995901fb84a4c350db7da9e48","85951d6d06f2bafece2fcf8917693167","8383fa58c2f75291c454f84915f12190","4516059403323bf291a537284f4f0d21","fc81ee7b08868ee0973983110e2ef386","f7be6b8b253b7d07c8476f23bbdc98c1",{"version":"48b2540ad661c32ab2cf99d5d0300f98","affectsGlobalScope":true,"impliedNodeFormat":1},"ad1e51d53dafa1c54c669fb126b8baf5","27ac8812a712750df047dfd949bc28f3","beb256af4099983453b3f33660699c9a","860f49c8d6ad48b19bf7ed0bc5d2824e","235cc33b85ac998f0f2df0807648acb8","c0c62035e8f8a0b6da47b6277fd6dbb2","1b176e9abc725e3ab4838bc569ed6e3a",{"version":"a46453aee5afbfec3678c420313e0d47","affectsGlobalScope":true,"impliedNodeFormat":1},"196cd3003168b4ee2df015d15cfed000","66b5b9b84ab95e019a6e1f5edb8bd250","2e3deefa9b9c888c081706361a645cfe","2e2ed32d5133fb4c60f95543217e669e","2580385b74019e646d76a9f68fdbf31b","aa0f7a546acda88ef0a5df40ff0e5122","b3bdce048b1c601e1a19a4c3ee32053b","948b8517c9f39acc6e1c356773f8a660",{"version":"c18928bec3bc65892c54962be1683163","affectsGlobalScope":true,"impliedNodeFormat":1},"f9c43b0225ab4f6dc8aff6e619d322a8","e3a37368763f25483bba2c5ddedeeff3","6e1de2df81bd936ffb5509f921f1fc8c","c7576162a5c832fc7681771ad7a50357","9959a7e96eedcbc697460cf0d31bda74","cb842435634eb3f9f1b2bf85bf7fdb3b","0b355907ec29bf7f68cedaff3b6b71f5",{"version":"b73a052b5fd08948bd559dcca4424ede","affectsGlobalScope":true,"impliedNodeFormat":1},"e6ad9a1d5cc3099621a4a7bba328d248","817586087035c6ea2a0c015caba8fb59","b4dbe09999921e219d6ff56b29720eae","5d46377ba24278d5476dc24dcb760b20","93f25f3a36ba4dd4c8efff0cc442f118","513ff65469f15b8059ed4edd7033614a","b0466c3034f5921a2c78e7da534f2b19","4c638ae62e5dbcc434c231576773dd6c","59880794a53cfb4c1d90ae79136b04dc","03f9be20ff7c3e5e8b98f11d0641aa47","3b1ae8bab308b1e5ac7e7a26d27167ad","a41a5f7019678ba4b53936492dc465d1","35c1d312d8ffabf1e4546bfeaeb4142e","6728fae9ef4170f6403bf6db25cc60c6","8989c3c06069b305178e23d87eae41e7"],"fileIdsList":[[191,197,199,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[191,197,198,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[191,198,199,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[199,201,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[192,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[193,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[192,193,194,195,196,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[194,195,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[96,97,142,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[96,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,256,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[203,204,205,206,207,208,209,210,211,212,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,327,328,329],[204,256,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,256,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328],[101,102,106,133,134,136,137,138,140,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[99,100,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[99,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[101,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[101,102,138,139,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[98,141,142,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[101,102,140,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[101,102,104,105,140,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[101,102,103,140,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[101,102,106,133,134,135,136,137,140,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[98,101,102,106,138,140,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[106,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[108,109,110,111,112,113,114,115,116,117,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[131,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[107,118,126,127,128,129,130,132,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[111,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[119,120,121,122,123,124,125,141,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,219,222,225,226,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,226,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,216,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,220,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,218,219,222,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[204,216,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[204,218,222,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,213,214,215,217,221,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,231,240,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,214,220,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,250,251,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,214,217,222,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[204,213,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,216,217,218,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,251,252,253,254,255,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,243,246,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,231,233,234,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,220,222,233,235,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,221,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,214,216,222,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,226,233,235,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,226,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,220,222,225,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,214,218,222,231,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,222,243,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,235,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,214,218,222,226,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[204,216,222,250,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[172,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,145,174,176,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,157,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,145,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,145,146,147,155,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[143,144,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[176,189,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[170,175,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[143,170,175,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[172,180,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,150,164,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[143,152,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[143,150,152,159,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[143,152,159,160,161,162,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[160,161,162,163,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[150,152,160,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,150,153,157,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[143,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[157,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,144,146,147,156,158,159,164,165,167,169,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,190,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,145,158,160,161,162,167,169,170,171,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[166,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,150,151,152,154,165,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[145,152,168,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[152,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,145,146,148,157,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[146,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[152,160,161,162,163,166,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[158,167,169,172,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,145,153,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,145,146,148,149,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,145,150,156,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,145,146,147,149,152,153,154,156,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[145,148,149,150,151,152,153,154,155,157,171,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[145,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[150,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,148,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[144,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[94,95,151,204,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329]],"options":{"allowJs":true,"declaration":true,"experimentalDecorators":true,"module":199,"noImplicitOverride":true,"outDir":"./transpiled","rootDir":"./source","skipLibCheck":true,"strict":true,"sourceMap":true,"target":99,"esModuleInterop":true},"referencedMap":[[200,1],[199,2],[201,3],[202,4],[193,5],[195,5],[192,6],[197,7],[196,8],[194,9],[143,10],[97,11],[96,9],[266,12],[267,13],[268,14],[204,15],[269,16],[270,17],[271,18],[272,19],[273,20],[274,21],[275,22],[276,23],[277,24],[278,25],[279,26],[280,27],[281,28],[282,29],[283,30],[205,9],[203,9],[284,31],[285,32],[286,33],[330,34],[287,35],[288,36],[289,37],[290,38],[291,39],[293,40],[294,41],[295,42],[296,43],[297,44],[298,45],[299,46],[300,47],[301,48],[302,49],[303,50],[304,51],[305,52],[306,53],[307,54],[308,55],[309,56],[310,57],[311,58],[312,59],[313,60],[314,61],[315,62],[316,63],[317,64],[318,65],[319,66],[320,67],[321,68],[322,69],[323,70],[324,71],[325,72],[326,73],[206,9],[207,9],[208,9],[209,9],[210,9],[211,9],[212,9],[257,74],[258,9],[259,9],[260,9],[261,9],[262,9],[263,9],[264,9],[265,9],[327,75],[328,76],[329,77],[91,9],[92,9],[16,9],[14,9],[15,9],[20,9],[19,9],[2,9],[21,9],[22,9],[23,9],[24,9],[25,9],[26,9],[27,9],[28,9],[3,9],[29,9],[30,9],[4,9],[31,9],[35,9],[32,9],[33,9],[34,9],[36,9],[37,9],[38,9],[5,9],[39,9],[40,9],[41,9],[42,9],[6,9],[46,9],[43,9],[44,9],[45,9],[47,9],[7,9],[48,9],[53,9],[54,9],[49,9],[50,9],[51,9],[52,9],[8,9],[58,9],[55,9],[56,9],[57,9],[59,9],[9,9],[60,9],[61,9],[62,9],[64,9],[63,9],[65,9],[66,9],[10,9],[67,9],[68,9],[69,9],[11,9],[70,9],[71,9],[72,9],[73,9],[74,9],[75,9],[12,9],[76,9],[77,9],[78,9],[79,9],[80,9],[1,9],[81,9],[82,9],[13,9],[83,9],[84,9],[85,9],[86,9],[93,9],[87,9],[88,9],[89,9],[90,9],[18,9],[17,9],[142,78],[99,9],[101,79],[100,80],[105,81],[140,82],[137,83],[139,84],[102,83],[103,85],[107,85],[106,86],[104,87],[138,88],[136,83],[141,89],[134,9],[135,9],[108,90],[113,83],[115,83],[110,83],[111,90],[117,83],[118,91],[109,83],[114,83],[116,83],[112,83],[132,92],[131,83],[133,93],[127,83],[129,83],[128,83],[124,83],[130,94],[125,83],[126,95],[119,83],[120,83],[121,83],[122,83],[123,83],[292,9],[98,9],[231,96],[245,97],[228,98],[246,9],[255,99],[219,100],[220,101],[218,9],[254,102],[249,103],[253,104],[222,105],[232,97],[242,106],[221,107],[252,108],[216,109],[217,103],[223,97],[224,9],[230,104],[227,97],[214,110],[256,111],[247,112],[235,113],[234,97],[236,114],[239,115],[233,116],[237,117],[250,102],[225,118],[226,119],[240,120],[215,9],[244,121],[243,97],[229,119],[238,122],[241,123],[248,9],[213,9],[251,124],[173,125],[177,126],[158,127],[146,128],[178,129],[94,9],[156,130],[170,131],[190,132],[189,133],[176,134],[175,9],[179,135],[181,136],[165,137],[162,138],[160,139],[163,140],[188,141],[161,142],[164,143],[144,144],[182,135],[159,145],[191,146],[95,9],[180,125],[172,147],[183,148],[166,149],[169,150],[168,151],[184,152],[185,129],[147,153],[167,154],[186,155],[174,156],[154,129],[153,157],[157,158],[155,159],[198,160],[148,9],[171,161],[151,162],[149,163],[145,164],[150,9],[152,165],[187,125]]}
|