grpc-libp2p-client 0.0.26 → 0.0.28
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/README.md +224 -1
- package/dist/dc-http2/frame.cjs.js +16 -11
- package/dist/dc-http2/frame.cjs.js.map +1 -1
- package/dist/dc-http2/frame.esm.js +16 -11
- package/dist/dc-http2/frame.esm.js.map +1 -1
- package/dist/dc-http2/hpack.cjs.js +16 -11
- package/dist/dc-http2/hpack.cjs.js.map +1 -1
- package/dist/dc-http2/hpack.esm.js +16 -11
- package/dist/dc-http2/hpack.esm.js.map +1 -1
- package/dist/dc-http2/parser.cjs.js +16 -11
- package/dist/dc-http2/parser.cjs.js.map +1 -1
- package/dist/dc-http2/parser.esm.js +16 -11
- package/dist/dc-http2/parser.esm.js.map +1 -1
- package/dist/grpc.js +35 -17
- package/dist/grpc.js.map +1 -1
- package/dist/grpc.min.js +1 -1
- package/dist/grpc.min.js.map +1 -1
- package/dist/index.cjs.js +16 -11
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +16 -11
- package/dist/index.esm.js.map +1 -1
- package/package.json +14 -2
package/README.md
CHANGED
|
@@ -1,2 +1,225 @@
|
|
|
1
|
+
|
|
1
2
|
# grpc-libp2p-client
|
|
2
|
-
|
|
3
|
+
|
|
4
|
+
`grpc-libp2p-client` 是一个在浏览器环境中运行的 gRPC 客户端库,它构建于 [libp2p](https://libp2p.io/) 之上。它使得浏览器可以直接与基于 libp2p 的 gRPC 服务端进行安全、高效的点对点通信。
|
|
5
|
+
|
|
6
|
+
本库完整支持四种 gRPC通信模式:
|
|
7
|
+
* **Unary (一元调用)**
|
|
8
|
+
* **Server Streaming (服务端流)**
|
|
9
|
+
* **Client Streaming (客户端流)**
|
|
10
|
+
* **Bidirectional Streaming (双向流)**
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## 目录
|
|
15
|
+
|
|
16
|
+
- [安装](#安装)
|
|
17
|
+
- [快速上手](#快速上手)
|
|
18
|
+
- [用法示例](#用法示例)
|
|
19
|
+
- [1. Unary (请求-响应)](#1-unary-请求-响应)
|
|
20
|
+
- [2. Server Streaming (服务端流)](#2-server-streaming-服务端流)
|
|
21
|
+
- [3. Client Streaming (客户端流)](#3-client-streaming-客户端流)
|
|
22
|
+
- [4. Bidirectional (双向流)](#4-bidirectional-双向流)
|
|
23
|
+
- [API 参考](#api-参考)
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 安装
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm install grpc-libp2p-client
|
|
31
|
+
# 或者
|
|
32
|
+
yarn add grpc-libp2p-client
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## 快速上手
|
|
36
|
+
|
|
37
|
+
下面是一个快速设置并初始化客户端的示例。
|
|
38
|
+
|
|
39
|
+
```javascript
|
|
40
|
+
import { createLibp2p } from 'libp2p';
|
|
41
|
+
import { webRTC } from '@libp2p/webrtc';
|
|
42
|
+
import { noise } from '@chainsafe/libp2p-noise';
|
|
43
|
+
import { yamux } from '@chainsafe/libp2p-yamux';
|
|
44
|
+
import { Libp2pGrpcClient } from 'grpc-libp2p-client';
|
|
45
|
+
|
|
46
|
+
// 1. 创建并启动一个 libp2p 节点
|
|
47
|
+
// 这是客户端运行的基础,负责网络连接和数据传输
|
|
48
|
+
const node = await createLibp2p({
|
|
49
|
+
transports: [
|
|
50
|
+
webRTC()
|
|
51
|
+
],
|
|
52
|
+
connectionEncryption: [
|
|
53
|
+
noise()
|
|
54
|
+
],
|
|
55
|
+
streamMuxers: [
|
|
56
|
+
yamux()
|
|
57
|
+
]
|
|
58
|
+
});
|
|
59
|
+
await node.start();
|
|
60
|
+
console.log('Libp2p node started with Peer ID:', node.peerId.toString());
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
// 2. 定义服务端信息
|
|
64
|
+
const serverPeerAddr = '/ip4/x.x.x.x/tcp/4006/p2p/12D3KooW...'; // 替换为你的 gRPC 服务端的 PeerAddr
|
|
65
|
+
const serverProtocol = '/my-grpc-service/1.0.0'; // 替换为服务端使用的协议ID
|
|
66
|
+
|
|
67
|
+
// 3. 实例化 gRPC 客户端
|
|
68
|
+
// 将 libp2p 节点实例和服务端信息传入
|
|
69
|
+
const grpcClient = new Libp2pGrpcClient(node, serverPeerAddr, "",serverProtocol);
|
|
70
|
+
|
|
71
|
+
console.log('gRPC client is ready to make calls.');
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## 用法示例
|
|
75
|
+
|
|
76
|
+
在初始化客户端后,你可以根据需要选择不同的模式与服务端通信。
|
|
77
|
+
|
|
78
|
+
**注意**: 所有模式中,请求体(`messageBytes`)都需要预先使用 `protobuf` 进行编码。
|
|
79
|
+
|
|
80
|
+
### 1. Unary (请求-响应)
|
|
81
|
+
|
|
82
|
+
这是最基础的模式,客户端发送一个请求,服务端返回一个响应。
|
|
83
|
+
|
|
84
|
+
```javascript
|
|
85
|
+
// 假设 messageBytes 是已经编码好的请求数据
|
|
86
|
+
// const messageBytes = MyRequest.encode({ field: 'value' }).finish();
|
|
87
|
+
|
|
88
|
+
try {
|
|
89
|
+
const responseData = await grpcClient.unaryCall(
|
|
90
|
+
"/myservice.Service/MyMethod", // gRPC 方法路径
|
|
91
|
+
messageBytes, // Protobuf 编码后的请求字节流
|
|
92
|
+
3000 // 调用超时时间 (ms)
|
|
93
|
+
);
|
|
94
|
+
|
|
95
|
+
// 解码响应数据
|
|
96
|
+
// const response = MyResponse.decode(responseData);
|
|
97
|
+
console.log('Unary call successful, response:', responseData);
|
|
98
|
+
|
|
99
|
+
} catch (error) {
|
|
100
|
+
console.error('Unary call failed:', error);
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### 2. Server Streaming (服务端流)
|
|
105
|
+
|
|
106
|
+
客户端发送一个请求,服务端以流的形式持续返回多个响应。
|
|
107
|
+
|
|
108
|
+
```javascript
|
|
109
|
+
// 定义一个回调函数来处理服务端发来的每一条数据
|
|
110
|
+
const onDataCallback = (payload: Uint8Array) => {
|
|
111
|
+
// const message = MyStreamResponse.decode(payload);
|
|
112
|
+
console.log('Received stream data:', payload);
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
await grpcClient.Call(
|
|
116
|
+
"/myservice.Service/MyServerStreamMethod",
|
|
117
|
+
messageBytes,
|
|
118
|
+
30000,
|
|
119
|
+
"server-streaming",
|
|
120
|
+
onDataCallback,
|
|
121
|
+
);
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### 3. Client Streaming (客户端流)
|
|
125
|
+
|
|
126
|
+
客户端以流的形式发送多个请求,服务端在接收完所有请求后返回一个响应。
|
|
127
|
+
|
|
128
|
+
```javascript
|
|
129
|
+
// 创建一个异步迭代器,用于持续提供要发送的数据
|
|
130
|
+
const dataSourceCallback = async function* (): AsyncIterable<Uint8Array> {
|
|
131
|
+
for (let i = 0; i < 5; i++) {
|
|
132
|
+
// const requestPart = MyStreamRequest.encode({ part: i }).finish();
|
|
133
|
+
const requestPart = new Uint8Array([i]); // 示例数据
|
|
134
|
+
yield requestPart;
|
|
135
|
+
await new Promise(resolve => setTimeout(resolve, 500)); // 模拟异步发送
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
// 定义数据回调,只会在服务端最终响应时触发一次
|
|
140
|
+
const onDataCallback = (payload: Uint8Array) => {
|
|
141
|
+
// const finalResponse = MyFinalResponse.decode(payload);
|
|
142
|
+
console.log('Client stream finished, final response:', payload);
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
await grpcClient.Call(
|
|
146
|
+
"/myservice.Service/MyClientStreamMethod",
|
|
147
|
+
messageBytes, // 初始消息体
|
|
148
|
+
30000,
|
|
149
|
+
"client-streaming",
|
|
150
|
+
onDataCallback,
|
|
151
|
+
dataSourceCallback,
|
|
152
|
+
);
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### 4. Bidirectional (双向流)
|
|
156
|
+
|
|
157
|
+
客户端和服务端可以同时向对方发送数据流,实现全双工通信。
|
|
158
|
+
|
|
159
|
+
```javascript
|
|
160
|
+
// 定义数据回调,处理服务端发来的每一条数据
|
|
161
|
+
const onDataCallback = (payload: Uint8Array) => {
|
|
162
|
+
console.log('Bidi: Received data from server:', payload);
|
|
163
|
+
};
|
|
164
|
+
|
|
165
|
+
// 定义数据源,持续向服务端发送数据
|
|
166
|
+
const dataSourceCallback = async function* (): AsyncIterable<Uint8Array> {
|
|
167
|
+
for (let i = 0; i < 5; i++) {
|
|
168
|
+
const requestPart = new Uint8Array([i]);
|
|
169
|
+
console.log(`Bidi: Sending data to server: ${i}`);
|
|
170
|
+
yield requestPart;
|
|
171
|
+
await new Promise(resolve => setTimeout(resolve, 500));
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
|
|
175
|
+
// 定义结束和错误处理回调
|
|
176
|
+
const onEndCallback = () => console.log('Bidi stream ended.');
|
|
177
|
+
const onErrorCallback = (err: unknown) => console.error('Bidi stream error:', err);
|
|
178
|
+
|
|
179
|
+
await grpcClient.Call(
|
|
180
|
+
"/myservice.Service/MyBidiMethod",
|
|
181
|
+
messageBytes, // 可以发送一个初始消息
|
|
182
|
+
30000,
|
|
183
|
+
"bidirectional",
|
|
184
|
+
onDataCallback,
|
|
185
|
+
dataSourceCallback,
|
|
186
|
+
onEndCallback,
|
|
187
|
+
onErrorCallback
|
|
188
|
+
);
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## API 参考
|
|
194
|
+
|
|
195
|
+
### `new Libp2pGrpcClient(node, serverPeerAddr,token, protocol)`
|
|
196
|
+
|
|
197
|
+
- `node` (`Libp2p`): 一个已创建并启动的 libp2p 节点实例。
|
|
198
|
+
- `serverPeerAddr` (`string`): 目标 gRPC 服务端的p2p地址字符串。
|
|
199
|
+
- `token` (`string`): 目标 gRPC 服务端要求的认证信息,在http2头的authorization字段中提交,可以为空。
|
|
200
|
+
- `protocol` (`string`): 双方协定好的、用于 gRPC 通信的 libp2p 协议 ID。
|
|
201
|
+
|
|
202
|
+
### `grpcClient.unaryCall(path, payload, timeout)`
|
|
203
|
+
|
|
204
|
+
用于发起一次性的请求-响应调用。
|
|
205
|
+
|
|
206
|
+
- 返回: `Promise<Uint8Array>` - 服务端返回的 Protobuf 编码后的字节流。
|
|
207
|
+
|
|
208
|
+
### `grpcClient.Call(path, payload, timeout, mode, onDataCallback,dataSourceCallback?,,onEndCallback?,onErrorCallback?,context?)`
|
|
209
|
+
|
|
210
|
+
用于发起所有类型的流式调用。
|
|
211
|
+
|
|
212
|
+
- `path` (`string`): gRPC 方法的完整路径。
|
|
213
|
+
- `payload` (`Uint8Array` | `null`): 初始请求的字节流。
|
|
214
|
+
- `timeout` (`number`): 调用超时时间 (ms)。
|
|
215
|
+
- `mode` (`string`): 调用模式。
|
|
216
|
+
- `"server-streaming"`
|
|
217
|
+
- `"client-streaming"`
|
|
218
|
+
- `"bidirectional"`
|
|
219
|
+
- `onDataCallback` (`(data: Uint8Array) => void`): 接收数据的回调。
|
|
220
|
+
- `dataSourceCallback?` (`() => AsyncIterable<Uint8Array>`): 提供发送数据的异步迭代器 (用于客户端流和双向流)。
|
|
221
|
+
- `onEndCallback?` (`() => void`): 流正常结束时的回调。
|
|
222
|
+
- `onErrorCallback?` (`(err: unknown) => void`): 发生错误时的回调。
|
|
223
|
+
- `context?` (` { signal?: AbortSignal }`): 中间取消。
|
|
224
|
+
|
|
225
|
+
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
function coerce(o) {
|
|
4
|
-
if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array')
|
|
4
|
+
if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array') {
|
|
5
5
|
return o;
|
|
6
|
-
|
|
6
|
+
}
|
|
7
|
+
if (o instanceof ArrayBuffer) {
|
|
7
8
|
return new Uint8Array(o);
|
|
9
|
+
}
|
|
8
10
|
if (ArrayBuffer.isView(o)) {
|
|
9
11
|
return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);
|
|
10
12
|
}
|
|
@@ -265,7 +267,6 @@ class ComposedDecoder {
|
|
|
265
267
|
}
|
|
266
268
|
}
|
|
267
269
|
function or(left, right) {
|
|
268
|
-
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
|
|
269
270
|
return new ComposedDecoder({
|
|
270
271
|
...(left.decoders ?? { [left.prefix]: left }),
|
|
271
272
|
...(right.decoders ?? { [right.prefix]: right })
|
|
@@ -305,12 +306,7 @@ function baseX({ name, prefix, alphabet }) {
|
|
|
305
306
|
decode: (text) => coerce(decode(text))
|
|
306
307
|
});
|
|
307
308
|
}
|
|
308
|
-
function decode$1(string,
|
|
309
|
-
// Build the character lookup table:
|
|
310
|
-
const codes = {};
|
|
311
|
-
for (let i = 0; i < alphabet.length; ++i) {
|
|
312
|
-
codes[alphabet[i]] = i;
|
|
313
|
-
}
|
|
309
|
+
function decode$1(string, alphabetIdx, bitsPerChar, name) {
|
|
314
310
|
// Count the padding bytes:
|
|
315
311
|
let end = string.length;
|
|
316
312
|
while (string[end - 1] === '=') {
|
|
@@ -324,7 +320,7 @@ function decode$1(string, alphabet, bitsPerChar, name) {
|
|
|
324
320
|
let written = 0; // Next byte to write
|
|
325
321
|
for (let i = 0; i < end; ++i) {
|
|
326
322
|
// Read one character from the string:
|
|
327
|
-
const value =
|
|
323
|
+
const value = alphabetIdx[string[i]];
|
|
328
324
|
if (value === undefined) {
|
|
329
325
|
throw new SyntaxError(`Non-${name} character`);
|
|
330
326
|
}
|
|
@@ -371,10 +367,19 @@ function encode$1(data, alphabet, bitsPerChar) {
|
|
|
371
367
|
}
|
|
372
368
|
return out;
|
|
373
369
|
}
|
|
370
|
+
function createAlphabetIdx(alphabet) {
|
|
371
|
+
// Build the character lookup table:
|
|
372
|
+
const alphabetIdx = {};
|
|
373
|
+
for (let i = 0; i < alphabet.length; ++i) {
|
|
374
|
+
alphabetIdx[alphabet[i]] = i;
|
|
375
|
+
}
|
|
376
|
+
return alphabetIdx;
|
|
377
|
+
}
|
|
374
378
|
/**
|
|
375
379
|
* RFC4648 Factory
|
|
376
380
|
*/
|
|
377
381
|
function rfc4648({ name, prefix, bitsPerChar, alphabet }) {
|
|
382
|
+
const alphabetIdx = createAlphabetIdx(alphabet);
|
|
378
383
|
return from({
|
|
379
384
|
prefix,
|
|
380
385
|
name,
|
|
@@ -382,7 +387,7 @@ function rfc4648({ name, prefix, bitsPerChar, alphabet }) {
|
|
|
382
387
|
return encode$1(input, alphabet, bitsPerChar);
|
|
383
388
|
},
|
|
384
389
|
decode(input) {
|
|
385
|
-
return decode$1(input,
|
|
390
|
+
return decode$1(input, alphabetIdx, bitsPerChar, name);
|
|
386
391
|
}
|
|
387
392
|
});
|
|
388
393
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frame.cjs.js","sources":["../../node_modules/multiformats/dist/src/bytes.js","../../node_modules/multiformats/dist/src/vendor/base-x.js","../../node_modules/multiformats/dist/src/bases/base.js","../../node_modules/multiformats/dist/src/bases/base10.js","../../node_modules/multiformats/dist/src/bases/base16.js","../../node_modules/multiformats/dist/src/bases/base2.js","../../node_modules/multiformats/dist/src/bases/base256emoji.js","../../node_modules/multiformats/dist/src/bases/base32.js","../../node_modules/multiformats/dist/src/bases/base36.js","../../node_modules/multiformats/dist/src/bases/base58.js","../../node_modules/multiformats/dist/src/bases/base64.js","../../node_modules/multiformats/dist/src/bases/base8.js","../../node_modules/multiformats/dist/src/bases/identity.js","../../node_modules/multiformats/dist/src/codecs/json.js","../../node_modules/multiformats/dist/src/basics.js","../../node_modules/uint8arrays/dist/src/alloc.js","../../node_modules/uint8arrays/dist/src/util/bases.js","../../node_modules/uint8arrays/dist/src/to-string.js","../../src/dc-http2/hpack.ts","../../src/dc-http2/encoder.ts","../../src/dc-http2/frame.ts"],"sourcesContent":["export const empty = new Uint8Array(0);\nexport function toHex(d) {\n return d.reduce((hex, byte) => hex + byte.toString(16).padStart(2, '0'), '');\n}\nexport function fromHex(hex) {\n const hexes = hex.match(/../g);\n return hexes != null ? new Uint8Array(hexes.map(b => parseInt(b, 16))) : empty;\n}\nexport function equals(aa, bb) {\n if (aa === bb)\n return true;\n if (aa.byteLength !== bb.byteLength) {\n return false;\n }\n for (let ii = 0; ii < aa.byteLength; ii++) {\n if (aa[ii] !== bb[ii]) {\n return false;\n }\n }\n return true;\n}\nexport function coerce(o) {\n if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array')\n return o;\n if (o instanceof ArrayBuffer)\n return new Uint8Array(o);\n if (ArrayBuffer.isView(o)) {\n return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);\n }\n throw new Error('Unknown type, must be binary type');\n}\nexport function isBinary(o) {\n return o instanceof ArrayBuffer || ArrayBuffer.isView(o);\n}\nexport function fromString(str) {\n return new TextEncoder().encode(str);\n}\nexport function toString(b) {\n return new TextDecoder().decode(b);\n}\n//# sourceMappingURL=bytes.js.map","/* eslint-disable */\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\n/**\n * @param {string} ALPHABET\n * @param {any} name\n */\nfunction base(ALPHABET, name) {\n if (ALPHABET.length >= 255) {\n throw new TypeError('Alphabet too long');\n }\n var BASE_MAP = new Uint8Array(256);\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255;\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i);\n var xc = x.charCodeAt(0);\n if (BASE_MAP[xc] !== 255) {\n throw new TypeError(x + ' is ambiguous');\n }\n BASE_MAP[xc] = i;\n }\n var BASE = ALPHABET.length;\n var LEADER = ALPHABET.charAt(0);\n var FACTOR = Math.log(BASE) / Math.log(256); // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE); // log(256) / log(BASE), rounded up\n /**\n * @param {any[] | Iterable<number>} source\n */\n function encode(source) {\n // @ts-ignore\n if (source instanceof Uint8Array)\n ;\n else if (ArrayBuffer.isView(source)) {\n source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);\n }\n else if (Array.isArray(source)) {\n source = Uint8Array.from(source);\n }\n if (!(source instanceof Uint8Array)) {\n throw new TypeError('Expected Uint8Array');\n }\n if (source.length === 0) {\n return '';\n }\n // Skip & count leading zeroes.\n var zeroes = 0;\n var length = 0;\n var pbegin = 0;\n var pend = source.length;\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++;\n zeroes++;\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0;\n var b58 = new Uint8Array(size);\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin];\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0;\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0;\n b58[it1] = (carry % BASE) >>> 0;\n carry = (carry / BASE) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n pbegin++;\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length;\n while (it2 !== size && b58[it2] === 0) {\n it2++;\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes);\n for (; it2 < size; ++it2) {\n str += ALPHABET.charAt(b58[it2]);\n }\n return str;\n }\n /**\n * @param {string | string[]} source\n */\n function decodeUnsafe(source) {\n if (typeof source !== 'string') {\n throw new TypeError('Expected String');\n }\n if (source.length === 0) {\n return new Uint8Array();\n }\n var psz = 0;\n // Skip leading spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip and count leading '1's.\n var zeroes = 0;\n var length = 0;\n while (source[psz] === LEADER) {\n zeroes++;\n psz++;\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0; // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size);\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)];\n // Invalid character\n if (carry === 255) {\n return;\n }\n var i = 0;\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0;\n b256[it3] = (carry % 256) >>> 0;\n carry = (carry / 256) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n psz++;\n }\n // Skip trailing spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip leading zeroes in b256.\n var it4 = size - length;\n while (it4 !== size && b256[it4] === 0) {\n it4++;\n }\n var vch = new Uint8Array(zeroes + (size - it4));\n var j = zeroes;\n while (it4 !== size) {\n vch[j++] = b256[it4++];\n }\n return vch;\n }\n /**\n * @param {string | string[]} string\n */\n function decode(string) {\n var buffer = decodeUnsafe(string);\n if (buffer) {\n return buffer;\n }\n throw new Error(`Non-${name} character`);\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n };\n}\nvar src = base;\nvar _brrp__multiformats_scope_baseX = src;\nexport default _brrp__multiformats_scope_baseX;\n//# sourceMappingURL=base-x.js.map","import { coerce } from '../bytes.js';\nimport basex from '../vendor/base-x.js';\n/**\n * Class represents both BaseEncoder and MultibaseEncoder meaning it\n * can be used to encode to multibase or base encode without multibase\n * prefix.\n */\nclass Encoder {\n name;\n prefix;\n baseEncode;\n constructor(name, prefix, baseEncode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n }\n encode(bytes) {\n if (bytes instanceof Uint8Array) {\n return `${this.prefix}${this.baseEncode(bytes)}`;\n }\n else {\n throw Error('Unknown type, must be binary type');\n }\n }\n}\n/**\n * Class represents both BaseDecoder and MultibaseDecoder so it could be used\n * to decode multibases (with matching prefix) or just base decode strings\n * with corresponding base encoding.\n */\nclass Decoder {\n name;\n prefix;\n baseDecode;\n prefixCodePoint;\n constructor(name, prefix, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n const prefixCodePoint = prefix.codePointAt(0);\n /* c8 ignore next 3 */\n if (prefixCodePoint === undefined) {\n throw new Error('Invalid prefix character');\n }\n this.prefixCodePoint = prefixCodePoint;\n this.baseDecode = baseDecode;\n }\n decode(text) {\n if (typeof text === 'string') {\n if (text.codePointAt(0) !== this.prefixCodePoint) {\n throw Error(`Unable to decode multibase string ${JSON.stringify(text)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);\n }\n return this.baseDecode(text.slice(this.prefix.length));\n }\n else {\n throw Error('Can only multibase decode strings');\n }\n }\n or(decoder) {\n return or(this, decoder);\n }\n}\nclass ComposedDecoder {\n decoders;\n constructor(decoders) {\n this.decoders = decoders;\n }\n or(decoder) {\n return or(this, decoder);\n }\n decode(input) {\n const prefix = input[0];\n const decoder = this.decoders[prefix];\n if (decoder != null) {\n return decoder.decode(input);\n }\n else {\n throw RangeError(`Unable to decode multibase string ${JSON.stringify(input)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`);\n }\n }\n}\nexport function or(left, right) {\n // eslint-disable-next-line @typescript-eslint/consistent-type-assertions\n return new ComposedDecoder({\n ...(left.decoders ?? { [left.prefix]: left }),\n ...(right.decoders ?? { [right.prefix]: right })\n });\n}\nexport class Codec {\n name;\n prefix;\n baseEncode;\n baseDecode;\n encoder;\n decoder;\n constructor(name, prefix, baseEncode, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n this.baseDecode = baseDecode;\n this.encoder = new Encoder(name, prefix, baseEncode);\n this.decoder = new Decoder(name, prefix, baseDecode);\n }\n encode(input) {\n return this.encoder.encode(input);\n }\n decode(input) {\n return this.decoder.decode(input);\n }\n}\nexport function from({ name, prefix, encode, decode }) {\n return new Codec(name, prefix, encode, decode);\n}\nexport function baseX({ name, prefix, alphabet }) {\n const { encode, decode } = basex(alphabet, name);\n return from({\n prefix,\n name,\n encode,\n decode: (text) => coerce(decode(text))\n });\n}\nfunction decode(string, alphabet, bitsPerChar, name) {\n // Build the character lookup table:\n const codes = {};\n for (let i = 0; i < alphabet.length; ++i) {\n codes[alphabet[i]] = i;\n }\n // Count the padding bytes:\n let end = string.length;\n while (string[end - 1] === '=') {\n --end;\n }\n // Allocate the output:\n const out = new Uint8Array((end * bitsPerChar / 8) | 0);\n // Parse the data:\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n let written = 0; // Next byte to write\n for (let i = 0; i < end; ++i) {\n // Read one character from the string:\n const value = codes[string[i]];\n if (value === undefined) {\n throw new SyntaxError(`Non-${name} character`);\n }\n // Append the bits to the buffer:\n buffer = (buffer << bitsPerChar) | value;\n bits += bitsPerChar;\n // Write out some bits if the buffer has a byte's worth:\n if (bits >= 8) {\n bits -= 8;\n out[written++] = 0xff & (buffer >> bits);\n }\n }\n // Verify that we have received just enough bits:\n if (bits >= bitsPerChar || (0xff & (buffer << (8 - bits))) !== 0) {\n throw new SyntaxError('Unexpected end of data');\n }\n return out;\n}\nfunction encode(data, alphabet, bitsPerChar) {\n const pad = alphabet[alphabet.length - 1] === '=';\n const mask = (1 << bitsPerChar) - 1;\n let out = '';\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n for (let i = 0; i < data.length; ++i) {\n // Slurp data into the buffer:\n buffer = (buffer << 8) | data[i];\n bits += 8;\n // Write out as much as we can:\n while (bits > bitsPerChar) {\n bits -= bitsPerChar;\n out += alphabet[mask & (buffer >> bits)];\n }\n }\n // Partial character:\n if (bits !== 0) {\n out += alphabet[mask & (buffer << (bitsPerChar - bits))];\n }\n // Add padding characters until we hit a byte boundary:\n if (pad) {\n while (((out.length * bitsPerChar) & 7) !== 0) {\n out += '=';\n }\n }\n return out;\n}\n/**\n * RFC4648 Factory\n */\nexport function rfc4648({ name, prefix, bitsPerChar, alphabet }) {\n return from({\n prefix,\n name,\n encode(input) {\n return encode(input, alphabet, bitsPerChar);\n },\n decode(input) {\n return decode(input, alphabet, bitsPerChar, name);\n }\n });\n}\n//# sourceMappingURL=base.js.map","import { baseX } from './base.js';\nexport const base10 = baseX({\n prefix: '9',\n name: 'base10',\n alphabet: '0123456789'\n});\n//# sourceMappingURL=base10.js.map","import { rfc4648 } from './base.js';\nexport const base16 = rfc4648({\n prefix: 'f',\n name: 'base16',\n alphabet: '0123456789abcdef',\n bitsPerChar: 4\n});\nexport const base16upper = rfc4648({\n prefix: 'F',\n name: 'base16upper',\n alphabet: '0123456789ABCDEF',\n bitsPerChar: 4\n});\n//# sourceMappingURL=base16.js.map","import { rfc4648 } from './base.js';\nexport const base2 = rfc4648({\n prefix: '0',\n name: 'base2',\n alphabet: '01',\n bitsPerChar: 1\n});\n//# sourceMappingURL=base2.js.map","import { from } from './base.js';\nconst alphabet = Array.from('🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂');\nconst alphabetBytesToChars = (alphabet.reduce((p, c, i) => { p[i] = c; return p; }, ([])));\nconst alphabetCharsToBytes = (alphabet.reduce((p, c, i) => {\n const codePoint = c.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${c}`);\n }\n p[codePoint] = i;\n return p;\n}, ([])));\nfunction encode(data) {\n return data.reduce((p, c) => {\n p += alphabetBytesToChars[c];\n return p;\n }, '');\n}\nfunction decode(str) {\n const byts = [];\n for (const char of str) {\n const codePoint = char.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${char}`);\n }\n const byt = alphabetCharsToBytes[codePoint];\n if (byt == null) {\n throw new Error(`Non-base256emoji character: ${char}`);\n }\n byts.push(byt);\n }\n return new Uint8Array(byts);\n}\nexport const base256emoji = from({\n prefix: '🚀',\n name: 'base256emoji',\n encode,\n decode\n});\n//# sourceMappingURL=base256emoji.js.map","import { rfc4648 } from './base.js';\nexport const base32 = rfc4648({\n prefix: 'b',\n name: 'base32',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567',\n bitsPerChar: 5\n});\nexport const base32upper = rfc4648({\n prefix: 'B',\n name: 'base32upper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',\n bitsPerChar: 5\n});\nexport const base32pad = rfc4648({\n prefix: 'c',\n name: 'base32pad',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567=',\n bitsPerChar: 5\n});\nexport const base32padupper = rfc4648({\n prefix: 'C',\n name: 'base32padupper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=',\n bitsPerChar: 5\n});\nexport const base32hex = rfc4648({\n prefix: 'v',\n name: 'base32hex',\n alphabet: '0123456789abcdefghijklmnopqrstuv',\n bitsPerChar: 5\n});\nexport const base32hexupper = rfc4648({\n prefix: 'V',\n name: 'base32hexupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV',\n bitsPerChar: 5\n});\nexport const base32hexpad = rfc4648({\n prefix: 't',\n name: 'base32hexpad',\n alphabet: '0123456789abcdefghijklmnopqrstuv=',\n bitsPerChar: 5\n});\nexport const base32hexpadupper = rfc4648({\n prefix: 'T',\n name: 'base32hexpadupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV=',\n bitsPerChar: 5\n});\nexport const base32z = rfc4648({\n prefix: 'h',\n name: 'base32z',\n alphabet: 'ybndrfg8ejkmcpqxot1uwisza345h769',\n bitsPerChar: 5\n});\n//# sourceMappingURL=base32.js.map","import { baseX } from './base.js';\nexport const base36 = baseX({\n prefix: 'k',\n name: 'base36',\n alphabet: '0123456789abcdefghijklmnopqrstuvwxyz'\n});\nexport const base36upper = baseX({\n prefix: 'K',\n name: 'base36upper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base36.js.map","import { baseX } from './base.js';\nexport const base58btc = baseX({\n name: 'base58btc',\n prefix: 'z',\n alphabet: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n});\nexport const base58flickr = baseX({\n name: 'base58flickr',\n prefix: 'Z',\n alphabet: '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base58.js.map","import { rfc4648 } from './base.js';\nexport const base64 = rfc4648({\n prefix: 'm',\n name: 'base64',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n bitsPerChar: 6\n});\nexport const base64pad = rfc4648({\n prefix: 'M',\n name: 'base64pad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\n bitsPerChar: 6\n});\nexport const base64url = rfc4648({\n prefix: 'u',\n name: 'base64url',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',\n bitsPerChar: 6\n});\nexport const base64urlpad = rfc4648({\n prefix: 'U',\n name: 'base64urlpad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=',\n bitsPerChar: 6\n});\n//# sourceMappingURL=base64.js.map","import { rfc4648 } from './base.js';\nexport const base8 = rfc4648({\n prefix: '7',\n name: 'base8',\n alphabet: '01234567',\n bitsPerChar: 3\n});\n//# sourceMappingURL=base8.js.map","import { fromString, toString } from '../bytes.js';\nimport { from } from './base.js';\nexport const identity = from({\n prefix: '\\x00',\n name: 'identity',\n encode: (buf) => toString(buf),\n decode: (str) => fromString(str)\n});\n//# sourceMappingURL=identity.js.map","const textEncoder = new TextEncoder();\nconst textDecoder = new TextDecoder();\nexport const name = 'json';\nexport const code = 0x0200;\nexport function encode(node) {\n return textEncoder.encode(JSON.stringify(node));\n}\nexport function decode(data) {\n return JSON.parse(textDecoder.decode(data));\n}\n//# sourceMappingURL=json.js.map","import * as base10 from './bases/base10.js';\nimport * as base16 from './bases/base16.js';\nimport * as base2 from './bases/base2.js';\nimport * as base256emoji from './bases/base256emoji.js';\nimport * as base32 from './bases/base32.js';\nimport * as base36 from './bases/base36.js';\nimport * as base58 from './bases/base58.js';\nimport * as base64 from './bases/base64.js';\nimport * as base8 from './bases/base8.js';\nimport * as identityBase from './bases/identity.js';\nimport * as json from './codecs/json.js';\nimport * as raw from './codecs/raw.js';\nimport * as identity from './hashes/identity.js';\nimport * as sha2 from './hashes/sha2.js';\nimport { CID, hasher, digest, varint, bytes } from './index.js';\nexport const bases = { ...identityBase, ...base2, ...base8, ...base10, ...base16, ...base32, ...base36, ...base58, ...base64, ...base256emoji };\nexport const hashes = { ...sha2, ...identity };\nexport const codecs = { raw, json };\nexport { CID, hasher, digest, varint, bytes };\n//# sourceMappingURL=basics.js.map","/**\n * Returns a `Uint8Array` of the requested size. Referenced memory will\n * be initialized to 0.\n */\nexport function alloc(size = 0) {\n return new Uint8Array(size);\n}\n/**\n * Where possible returns a Uint8Array of the requested size that references\n * uninitialized memory. Only use if you are certain you will immediately\n * overwrite every value in the returned `Uint8Array`.\n */\nexport function allocUnsafe(size = 0) {\n return new Uint8Array(size);\n}\n//# sourceMappingURL=alloc.js.map","import { bases } from 'multiformats/basics';\nimport { allocUnsafe } from '#alloc';\nfunction createCodec(name, prefix, encode, decode) {\n return {\n name,\n prefix,\n encoder: {\n name,\n prefix,\n encode\n },\n decoder: {\n decode\n }\n };\n}\nconst string = createCodec('utf8', 'u', (buf) => {\n const decoder = new TextDecoder('utf8');\n return 'u' + decoder.decode(buf);\n}, (str) => {\n const encoder = new TextEncoder();\n return encoder.encode(str.substring(1));\n});\nconst ascii = createCodec('ascii', 'a', (buf) => {\n let string = 'a';\n for (let i = 0; i < buf.length; i++) {\n string += String.fromCharCode(buf[i]);\n }\n return string;\n}, (str) => {\n str = str.substring(1);\n const buf = allocUnsafe(str.length);\n for (let i = 0; i < str.length; i++) {\n buf[i] = str.charCodeAt(i);\n }\n return buf;\n});\nconst BASES = {\n utf8: string,\n 'utf-8': string,\n hex: bases.base16,\n latin1: ascii,\n ascii,\n binary: ascii,\n ...bases\n};\nexport default BASES;\n//# sourceMappingURL=bases.js.map","import bases, {} from './util/bases.js';\n/**\n * Turns a `Uint8Array` into a string.\n *\n * Supports `utf8`, `utf-8` and any encoding supported by the multibase module.\n *\n * Also `ascii` which is similar to node's 'binary' encoding.\n */\nexport function toString(array, encoding = 'utf8') {\n const base = bases[encoding];\n if (base == null) {\n throw new Error(`Unsupported encoding \"${encoding}\"`);\n }\n // strip multibase prefix\n return base.encoder.encode(array).substring(1);\n}\n//# sourceMappingURL=to-string.js.map",null,null,null],"names":["toString","basex","decode","encode","base2","base8","base10","base16","base32","base36","base64","base256emoji","bases","uint8ArrayToString"],"mappings":"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AE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACtD,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACjD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAClD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACnD,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAA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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]}
|
|
1
|
+
{"version":3,"file":"frame.cjs.js","sources":["../../node_modules/multiformats/dist/src/bytes.js","../../node_modules/multiformats/dist/src/vendor/base-x.js","../../node_modules/multiformats/dist/src/bases/base.js","../../node_modules/multiformats/dist/src/bases/base10.js","../../node_modules/multiformats/dist/src/bases/base16.js","../../node_modules/multiformats/dist/src/bases/base2.js","../../node_modules/multiformats/dist/src/bases/base256emoji.js","../../node_modules/multiformats/dist/src/bases/base32.js","../../node_modules/multiformats/dist/src/bases/base36.js","../../node_modules/multiformats/dist/src/bases/base58.js","../../node_modules/multiformats/dist/src/bases/base64.js","../../node_modules/multiformats/dist/src/bases/base8.js","../../node_modules/multiformats/dist/src/bases/identity.js","../../node_modules/multiformats/dist/src/codecs/json.js","../../node_modules/multiformats/dist/src/basics.js","../../node_modules/uint8arrays/dist/src/alloc.js","../../node_modules/uint8arrays/dist/src/util/bases.js","../../node_modules/uint8arrays/dist/src/to-string.js","../../src/dc-http2/hpack.ts","../../src/dc-http2/encoder.ts","../../src/dc-http2/frame.ts"],"sourcesContent":["export const empty = new Uint8Array(0);\nexport function toHex(d) {\n return d.reduce((hex, byte) => hex + byte.toString(16).padStart(2, '0'), '');\n}\nexport function fromHex(hex) {\n const hexes = hex.match(/../g);\n return hexes != null ? new Uint8Array(hexes.map(b => parseInt(b, 16))) : empty;\n}\nexport function equals(aa, bb) {\n if (aa === bb) {\n return true;\n }\n if (aa.byteLength !== bb.byteLength) {\n return false;\n }\n for (let ii = 0; ii < aa.byteLength; ii++) {\n if (aa[ii] !== bb[ii]) {\n return false;\n }\n }\n return true;\n}\nexport function coerce(o) {\n if (o instanceof Uint8Array && o.constructor.name === 'Uint8Array') {\n return o;\n }\n if (o instanceof ArrayBuffer) {\n return new Uint8Array(o);\n }\n if (ArrayBuffer.isView(o)) {\n return new Uint8Array(o.buffer, o.byteOffset, o.byteLength);\n }\n throw new Error('Unknown type, must be binary type');\n}\nexport function isBinary(o) {\n return o instanceof ArrayBuffer || ArrayBuffer.isView(o);\n}\nexport function fromString(str) {\n return new TextEncoder().encode(str);\n}\nexport function toString(b) {\n return new TextDecoder().decode(b);\n}\n//# sourceMappingURL=bytes.js.map","/* eslint-disable */\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\n/**\n * @param {string} ALPHABET\n * @param {any} name\n */\nfunction base(ALPHABET, name) {\n if (ALPHABET.length >= 255) {\n throw new TypeError('Alphabet too long');\n }\n var BASE_MAP = new Uint8Array(256);\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255;\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i);\n var xc = x.charCodeAt(0);\n if (BASE_MAP[xc] !== 255) {\n throw new TypeError(x + ' is ambiguous');\n }\n BASE_MAP[xc] = i;\n }\n var BASE = ALPHABET.length;\n var LEADER = ALPHABET.charAt(0);\n var FACTOR = Math.log(BASE) / Math.log(256); // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE); // log(256) / log(BASE), rounded up\n /**\n * @param {any[] | Iterable<number>} source\n */\n function encode(source) {\n // @ts-ignore\n if (source instanceof Uint8Array)\n ;\n else if (ArrayBuffer.isView(source)) {\n source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength);\n }\n else if (Array.isArray(source)) {\n source = Uint8Array.from(source);\n }\n if (!(source instanceof Uint8Array)) {\n throw new TypeError('Expected Uint8Array');\n }\n if (source.length === 0) {\n return '';\n }\n // Skip & count leading zeroes.\n var zeroes = 0;\n var length = 0;\n var pbegin = 0;\n var pend = source.length;\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++;\n zeroes++;\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0;\n var b58 = new Uint8Array(size);\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin];\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0;\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0;\n b58[it1] = (carry % BASE) >>> 0;\n carry = (carry / BASE) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n pbegin++;\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length;\n while (it2 !== size && b58[it2] === 0) {\n it2++;\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes);\n for (; it2 < size; ++it2) {\n str += ALPHABET.charAt(b58[it2]);\n }\n return str;\n }\n /**\n * @param {string | string[]} source\n */\n function decodeUnsafe(source) {\n if (typeof source !== 'string') {\n throw new TypeError('Expected String');\n }\n if (source.length === 0) {\n return new Uint8Array();\n }\n var psz = 0;\n // Skip leading spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip and count leading '1's.\n var zeroes = 0;\n var length = 0;\n while (source[psz] === LEADER) {\n zeroes++;\n psz++;\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0; // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size);\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)];\n // Invalid character\n if (carry === 255) {\n return;\n }\n var i = 0;\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0;\n b256[it3] = (carry % 256) >>> 0;\n carry = (carry / 256) >>> 0;\n }\n if (carry !== 0) {\n throw new Error('Non-zero carry');\n }\n length = i;\n psz++;\n }\n // Skip trailing spaces.\n if (source[psz] === ' ') {\n return;\n }\n // Skip leading zeroes in b256.\n var it4 = size - length;\n while (it4 !== size && b256[it4] === 0) {\n it4++;\n }\n var vch = new Uint8Array(zeroes + (size - it4));\n var j = zeroes;\n while (it4 !== size) {\n vch[j++] = b256[it4++];\n }\n return vch;\n }\n /**\n * @param {string | string[]} string\n */\n function decode(string) {\n var buffer = decodeUnsafe(string);\n if (buffer) {\n return buffer;\n }\n throw new Error(`Non-${name} character`);\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n };\n}\nvar src = base;\nvar _brrp__multiformats_scope_baseX = src;\nexport default _brrp__multiformats_scope_baseX;\n//# sourceMappingURL=base-x.js.map","import { coerce } from '../bytes.js';\nimport basex from '../vendor/base-x.js';\n/**\n * Class represents both BaseEncoder and MultibaseEncoder meaning it\n * can be used to encode to multibase or base encode without multibase\n * prefix.\n */\nclass Encoder {\n name;\n prefix;\n baseEncode;\n constructor(name, prefix, baseEncode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n }\n encode(bytes) {\n if (bytes instanceof Uint8Array) {\n return `${this.prefix}${this.baseEncode(bytes)}`;\n }\n else {\n throw Error('Unknown type, must be binary type');\n }\n }\n}\n/**\n * Class represents both BaseDecoder and MultibaseDecoder so it could be used\n * to decode multibases (with matching prefix) or just base decode strings\n * with corresponding base encoding.\n */\nclass Decoder {\n name;\n prefix;\n baseDecode;\n prefixCodePoint;\n constructor(name, prefix, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n const prefixCodePoint = prefix.codePointAt(0);\n /* c8 ignore next 3 */\n if (prefixCodePoint === undefined) {\n throw new Error('Invalid prefix character');\n }\n this.prefixCodePoint = prefixCodePoint;\n this.baseDecode = baseDecode;\n }\n decode(text) {\n if (typeof text === 'string') {\n if (text.codePointAt(0) !== this.prefixCodePoint) {\n throw Error(`Unable to decode multibase string ${JSON.stringify(text)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);\n }\n return this.baseDecode(text.slice(this.prefix.length));\n }\n else {\n throw Error('Can only multibase decode strings');\n }\n }\n or(decoder) {\n return or(this, decoder);\n }\n}\nclass ComposedDecoder {\n decoders;\n constructor(decoders) {\n this.decoders = decoders;\n }\n or(decoder) {\n return or(this, decoder);\n }\n decode(input) {\n const prefix = input[0];\n const decoder = this.decoders[prefix];\n if (decoder != null) {\n return decoder.decode(input);\n }\n else {\n throw RangeError(`Unable to decode multibase string ${JSON.stringify(input)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`);\n }\n }\n}\nexport function or(left, right) {\n return new ComposedDecoder({\n ...(left.decoders ?? { [left.prefix]: left }),\n ...(right.decoders ?? { [right.prefix]: right })\n });\n}\nexport class Codec {\n name;\n prefix;\n baseEncode;\n baseDecode;\n encoder;\n decoder;\n constructor(name, prefix, baseEncode, baseDecode) {\n this.name = name;\n this.prefix = prefix;\n this.baseEncode = baseEncode;\n this.baseDecode = baseDecode;\n this.encoder = new Encoder(name, prefix, baseEncode);\n this.decoder = new Decoder(name, prefix, baseDecode);\n }\n encode(input) {\n return this.encoder.encode(input);\n }\n decode(input) {\n return this.decoder.decode(input);\n }\n}\nexport function from({ name, prefix, encode, decode }) {\n return new Codec(name, prefix, encode, decode);\n}\nexport function baseX({ name, prefix, alphabet }) {\n const { encode, decode } = basex(alphabet, name);\n return from({\n prefix,\n name,\n encode,\n decode: (text) => coerce(decode(text))\n });\n}\nfunction decode(string, alphabetIdx, bitsPerChar, name) {\n // Count the padding bytes:\n let end = string.length;\n while (string[end - 1] === '=') {\n --end;\n }\n // Allocate the output:\n const out = new Uint8Array((end * bitsPerChar / 8) | 0);\n // Parse the data:\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n let written = 0; // Next byte to write\n for (let i = 0; i < end; ++i) {\n // Read one character from the string:\n const value = alphabetIdx[string[i]];\n if (value === undefined) {\n throw new SyntaxError(`Non-${name} character`);\n }\n // Append the bits to the buffer:\n buffer = (buffer << bitsPerChar) | value;\n bits += bitsPerChar;\n // Write out some bits if the buffer has a byte's worth:\n if (bits >= 8) {\n bits -= 8;\n out[written++] = 0xff & (buffer >> bits);\n }\n }\n // Verify that we have received just enough bits:\n if (bits >= bitsPerChar || (0xff & (buffer << (8 - bits))) !== 0) {\n throw new SyntaxError('Unexpected end of data');\n }\n return out;\n}\nfunction encode(data, alphabet, bitsPerChar) {\n const pad = alphabet[alphabet.length - 1] === '=';\n const mask = (1 << bitsPerChar) - 1;\n let out = '';\n let bits = 0; // Number of bits currently in the buffer\n let buffer = 0; // Bits waiting to be written out, MSB first\n for (let i = 0; i < data.length; ++i) {\n // Slurp data into the buffer:\n buffer = (buffer << 8) | data[i];\n bits += 8;\n // Write out as much as we can:\n while (bits > bitsPerChar) {\n bits -= bitsPerChar;\n out += alphabet[mask & (buffer >> bits)];\n }\n }\n // Partial character:\n if (bits !== 0) {\n out += alphabet[mask & (buffer << (bitsPerChar - bits))];\n }\n // Add padding characters until we hit a byte boundary:\n if (pad) {\n while (((out.length * bitsPerChar) & 7) !== 0) {\n out += '=';\n }\n }\n return out;\n}\nfunction createAlphabetIdx(alphabet) {\n // Build the character lookup table:\n const alphabetIdx = {};\n for (let i = 0; i < alphabet.length; ++i) {\n alphabetIdx[alphabet[i]] = i;\n }\n return alphabetIdx;\n}\n/**\n * RFC4648 Factory\n */\nexport function rfc4648({ name, prefix, bitsPerChar, alphabet }) {\n const alphabetIdx = createAlphabetIdx(alphabet);\n return from({\n prefix,\n name,\n encode(input) {\n return encode(input, alphabet, bitsPerChar);\n },\n decode(input) {\n return decode(input, alphabetIdx, bitsPerChar, name);\n }\n });\n}\n//# sourceMappingURL=base.js.map","import { baseX } from './base.js';\nexport const base10 = baseX({\n prefix: '9',\n name: 'base10',\n alphabet: '0123456789'\n});\n//# sourceMappingURL=base10.js.map","import { rfc4648 } from './base.js';\nexport const base16 = rfc4648({\n prefix: 'f',\n name: 'base16',\n alphabet: '0123456789abcdef',\n bitsPerChar: 4\n});\nexport const base16upper = rfc4648({\n prefix: 'F',\n name: 'base16upper',\n alphabet: '0123456789ABCDEF',\n bitsPerChar: 4\n});\n//# sourceMappingURL=base16.js.map","import { rfc4648 } from './base.js';\nexport const base2 = rfc4648({\n prefix: '0',\n name: 'base2',\n alphabet: '01',\n bitsPerChar: 1\n});\n//# sourceMappingURL=base2.js.map","import { from } from './base.js';\nconst alphabet = Array.from('🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂');\nconst alphabetBytesToChars = (alphabet.reduce((p, c, i) => { p[i] = c; return p; }, ([])));\nconst alphabetCharsToBytes = (alphabet.reduce((p, c, i) => {\n const codePoint = c.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${c}`);\n }\n p[codePoint] = i;\n return p;\n}, ([])));\nfunction encode(data) {\n return data.reduce((p, c) => {\n p += alphabetBytesToChars[c];\n return p;\n }, '');\n}\nfunction decode(str) {\n const byts = [];\n for (const char of str) {\n const codePoint = char.codePointAt(0);\n if (codePoint == null) {\n throw new Error(`Invalid character: ${char}`);\n }\n const byt = alphabetCharsToBytes[codePoint];\n if (byt == null) {\n throw new Error(`Non-base256emoji character: ${char}`);\n }\n byts.push(byt);\n }\n return new Uint8Array(byts);\n}\nexport const base256emoji = from({\n prefix: '🚀',\n name: 'base256emoji',\n encode,\n decode\n});\n//# sourceMappingURL=base256emoji.js.map","import { rfc4648 } from './base.js';\nexport const base32 = rfc4648({\n prefix: 'b',\n name: 'base32',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567',\n bitsPerChar: 5\n});\nexport const base32upper = rfc4648({\n prefix: 'B',\n name: 'base32upper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567',\n bitsPerChar: 5\n});\nexport const base32pad = rfc4648({\n prefix: 'c',\n name: 'base32pad',\n alphabet: 'abcdefghijklmnopqrstuvwxyz234567=',\n bitsPerChar: 5\n});\nexport const base32padupper = rfc4648({\n prefix: 'C',\n name: 'base32padupper',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=',\n bitsPerChar: 5\n});\nexport const base32hex = rfc4648({\n prefix: 'v',\n name: 'base32hex',\n alphabet: '0123456789abcdefghijklmnopqrstuv',\n bitsPerChar: 5\n});\nexport const base32hexupper = rfc4648({\n prefix: 'V',\n name: 'base32hexupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV',\n bitsPerChar: 5\n});\nexport const base32hexpad = rfc4648({\n prefix: 't',\n name: 'base32hexpad',\n alphabet: '0123456789abcdefghijklmnopqrstuv=',\n bitsPerChar: 5\n});\nexport const base32hexpadupper = rfc4648({\n prefix: 'T',\n name: 'base32hexpadupper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUV=',\n bitsPerChar: 5\n});\nexport const base32z = rfc4648({\n prefix: 'h',\n name: 'base32z',\n alphabet: 'ybndrfg8ejkmcpqxot1uwisza345h769',\n bitsPerChar: 5\n});\n//# sourceMappingURL=base32.js.map","import { baseX } from './base.js';\nexport const base36 = baseX({\n prefix: 'k',\n name: 'base36',\n alphabet: '0123456789abcdefghijklmnopqrstuvwxyz'\n});\nexport const base36upper = baseX({\n prefix: 'K',\n name: 'base36upper',\n alphabet: '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base36.js.map","import { baseX } from './base.js';\nexport const base58btc = baseX({\n name: 'base58btc',\n prefix: 'z',\n alphabet: '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n});\nexport const base58flickr = baseX({\n name: 'base58flickr',\n prefix: 'Z',\n alphabet: '123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ'\n});\n//# sourceMappingURL=base58.js.map","import { rfc4648 } from './base.js';\nexport const base64 = rfc4648({\n prefix: 'm',\n name: 'base64',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n bitsPerChar: 6\n});\nexport const base64pad = rfc4648({\n prefix: 'M',\n name: 'base64pad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=',\n bitsPerChar: 6\n});\nexport const base64url = rfc4648({\n prefix: 'u',\n name: 'base64url',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_',\n bitsPerChar: 6\n});\nexport const base64urlpad = rfc4648({\n prefix: 'U',\n name: 'base64urlpad',\n alphabet: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=',\n bitsPerChar: 6\n});\n//# sourceMappingURL=base64.js.map","import { rfc4648 } from './base.js';\nexport const base8 = rfc4648({\n prefix: '7',\n name: 'base8',\n alphabet: '01234567',\n bitsPerChar: 3\n});\n//# sourceMappingURL=base8.js.map","import { fromString, toString } from '../bytes.js';\nimport { from } from './base.js';\nexport const identity = from({\n prefix: '\\x00',\n name: 'identity',\n encode: (buf) => toString(buf),\n decode: (str) => fromString(str)\n});\n//# sourceMappingURL=identity.js.map","const textEncoder = new TextEncoder();\nconst textDecoder = new TextDecoder();\nexport const name = 'json';\nexport const code = 0x0200;\nexport function encode(node) {\n return textEncoder.encode(JSON.stringify(node));\n}\nexport function decode(data) {\n return JSON.parse(textDecoder.decode(data));\n}\n//# sourceMappingURL=json.js.map","import * as base10 from './bases/base10.js';\nimport * as base16 from './bases/base16.js';\nimport * as base2 from './bases/base2.js';\nimport * as base256emoji from './bases/base256emoji.js';\nimport * as base32 from './bases/base32.js';\nimport * as base36 from './bases/base36.js';\nimport * as base58 from './bases/base58.js';\nimport * as base64 from './bases/base64.js';\nimport * as base8 from './bases/base8.js';\nimport * as identityBase from './bases/identity.js';\nimport * as json from './codecs/json.js';\nimport * as raw from './codecs/raw.js';\nimport * as identity from './hashes/identity.js';\nimport * as sha2 from './hashes/sha2.js';\nimport { CID, hasher, digest, varint, bytes } from './index.js';\nexport const bases = { ...identityBase, ...base2, ...base8, ...base10, ...base16, ...base32, ...base36, ...base58, ...base64, ...base256emoji };\nexport const hashes = { ...sha2, ...identity };\nexport const codecs = { raw, json };\nexport { CID, hasher, digest, varint, bytes };\n//# sourceMappingURL=basics.js.map","/**\n * Returns a `Uint8Array` of the requested size. Referenced memory will\n * be initialized to 0.\n */\nexport function alloc(size = 0) {\n return new Uint8Array(size);\n}\n/**\n * Where possible returns a Uint8Array of the requested size that references\n * uninitialized memory. Only use if you are certain you will immediately\n * overwrite every value in the returned `Uint8Array`.\n */\nexport function allocUnsafe(size = 0) {\n return new Uint8Array(size);\n}\n//# sourceMappingURL=alloc.js.map","import { bases } from 'multiformats/basics';\nimport { allocUnsafe } from '#alloc';\nfunction createCodec(name, prefix, encode, decode) {\n return {\n name,\n prefix,\n encoder: {\n name,\n prefix,\n encode\n },\n decoder: {\n decode\n }\n };\n}\nconst string = createCodec('utf8', 'u', (buf) => {\n const decoder = new TextDecoder('utf8');\n return 'u' + decoder.decode(buf);\n}, (str) => {\n const encoder = new TextEncoder();\n return encoder.encode(str.substring(1));\n});\nconst ascii = createCodec('ascii', 'a', (buf) => {\n let string = 'a';\n for (let i = 0; i < buf.length; i++) {\n string += String.fromCharCode(buf[i]);\n }\n return string;\n}, (str) => {\n str = str.substring(1);\n const buf = allocUnsafe(str.length);\n for (let i = 0; i < str.length; i++) {\n buf[i] = str.charCodeAt(i);\n }\n return buf;\n});\nconst BASES = {\n utf8: string,\n 'utf-8': string,\n hex: bases.base16,\n latin1: ascii,\n ascii,\n binary: ascii,\n ...bases\n};\nexport default BASES;\n//# sourceMappingURL=bases.js.map","import bases, {} from './util/bases.js';\n/**\n * Turns a `Uint8Array` into a string.\n *\n * Supports `utf8`, `utf-8` and any encoding supported by the multibase module.\n *\n * Also `ascii` which is similar to node's 'binary' encoding.\n */\nexport function toString(array, encoding = 'utf8') {\n const base = bases[encoding];\n if (base == null) {\n throw new Error(`Unsupported encoding \"${encoding}\"`);\n }\n // strip multibase prefix\n return base.encoder.encode(array).substring(1);\n}\n//# sourceMappingURL=to-string.js.map",null,null,null],"names":["toString","basex","decode","encode","base2","base8","base10","base16","base32","base36","base64","base256emoji","bases","uint8ArrayToString"],"mappings":"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AE,EAAE,EAAE,EAAE;AAC9D,gBAAA,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACtD,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE;AACjD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAClD,gBAAA,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AAC/C,gBAAA,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AACnD,gBAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;AAC9D,gBAAA,E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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]}
|