@yydb/light-db 0.0.0 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/dist/api/database.d.ts +48 -0
  2. package/dist/api/database.d.ts.map +1 -0
  3. package/dist/api/database.js +120 -0
  4. package/dist/api/database.js.map +1 -0
  5. package/dist/api/index.d.ts +7 -22
  6. package/dist/api/index.d.ts.map +1 -1
  7. package/dist/api/index.js +5 -52
  8. package/dist/api/index.js.map +1 -1
  9. package/dist/api/schema.d.ts +33 -0
  10. package/dist/api/schema.d.ts.map +1 -0
  11. package/dist/api/schema.js +80 -0
  12. package/dist/api/schema.js.map +1 -0
  13. package/dist/api/transaction.d.ts +26 -0
  14. package/dist/api/transaction.d.ts.map +1 -0
  15. package/dist/api/transaction.js +52 -0
  16. package/dist/api/transaction.js.map +1 -0
  17. package/dist/api/types.d.ts +55 -148
  18. package/dist/api/types.d.ts.map +1 -1
  19. package/dist/api/types.js +6 -5
  20. package/dist/api/types.js.map +1 -1
  21. package/dist/codec/binary.d.ts +196 -0
  22. package/dist/codec/binary.d.ts.map +1 -0
  23. package/dist/codec/binary.js +342 -0
  24. package/dist/codec/binary.js.map +1 -0
  25. package/dist/codec/checksum.d.ts +21 -0
  26. package/dist/codec/checksum.d.ts.map +1 -0
  27. package/dist/codec/checksum.js +46 -0
  28. package/dist/codec/checksum.js.map +1 -0
  29. package/dist/codec/index.d.ts +12 -0
  30. package/dist/codec/index.d.ts.map +1 -0
  31. package/dist/codec/index.js +10 -0
  32. package/dist/codec/index.js.map +1 -0
  33. package/dist/codec/page.d.ts +114 -0
  34. package/dist/codec/page.d.ts.map +1 -0
  35. package/dist/codec/page.js +225 -0
  36. package/dist/codec/page.js.map +1 -0
  37. package/dist/codec/record.d.ts +62 -0
  38. package/dist/codec/record.d.ts.map +1 -0
  39. package/dist/codec/record.js +82 -0
  40. package/dist/codec/record.js.map +1 -0
  41. package/dist/core/broadcast.d.ts +39 -0
  42. package/dist/core/broadcast.d.ts.map +1 -0
  43. package/dist/core/broadcast.js +54 -0
  44. package/dist/core/broadcast.js.map +1 -0
  45. package/dist/core/checkpoint.d.ts +23 -0
  46. package/dist/core/checkpoint.d.ts.map +1 -0
  47. package/dist/core/checkpoint.js +49 -0
  48. package/dist/core/checkpoint.js.map +1 -0
  49. package/dist/core/engine.d.ts +142 -0
  50. package/dist/core/engine.d.ts.map +1 -0
  51. package/dist/core/engine.js +304 -0
  52. package/dist/core/engine.js.map +1 -0
  53. package/dist/core/index.d.ts +17 -0
  54. package/dist/core/index.d.ts.map +1 -0
  55. package/dist/core/index.js +13 -0
  56. package/dist/core/index.js.map +1 -0
  57. package/dist/core/lease.d.ts +32 -0
  58. package/dist/core/lease.d.ts.map +1 -0
  59. package/dist/core/lease.js +81 -0
  60. package/dist/core/lease.js.map +1 -0
  61. package/dist/core/records.d.ts +49 -0
  62. package/dist/core/records.d.ts.map +1 -0
  63. package/dist/core/records.js +70 -0
  64. package/dist/core/records.js.map +1 -0
  65. package/dist/core/recovery.d.ts +43 -0
  66. package/dist/core/recovery.d.ts.map +1 -0
  67. package/dist/core/recovery.js +99 -0
  68. package/dist/core/recovery.js.map +1 -0
  69. package/dist/core/wal.d.ts +50 -0
  70. package/dist/core/wal.d.ts.map +1 -0
  71. package/dist/core/wal.js +114 -0
  72. package/dist/core/wal.js.map +1 -0
  73. package/dist/errors/index.d.ts +44 -66
  74. package/dist/errors/index.d.ts.map +1 -1
  75. package/dist/errors/index.js +43 -128
  76. package/dist/errors/index.js.map +1 -1
  77. package/dist/index.d.ts +14 -215
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +14 -724
  80. package/dist/index.js.map +1 -1
  81. package/dist/storage/StorageAdapter.d.ts +97 -0
  82. package/dist/storage/StorageAdapter.d.ts.map +1 -0
  83. package/dist/storage/StorageAdapter.js +9 -0
  84. package/dist/storage/StorageAdapter.js.map +1 -0
  85. package/dist/storage/index.d.ts +9 -8
  86. package/dist/storage/index.d.ts.map +1 -1
  87. package/dist/storage/index.js +8 -151
  88. package/dist/storage/index.js.map +1 -1
  89. package/dist/storage/indexeddb/IndexedDbStorageAdapter.d.ts +140 -0
  90. package/dist/storage/indexeddb/IndexedDbStorageAdapter.d.ts.map +1 -0
  91. package/dist/storage/indexeddb/IndexedDbStorageAdapter.js +403 -0
  92. package/dist/storage/indexeddb/IndexedDbStorageAdapter.js.map +1 -0
  93. package/dist/storage/memory/MemoryStorageAdapter.d.ts +76 -0
  94. package/dist/storage/memory/MemoryStorageAdapter.d.ts.map +1 -0
  95. package/dist/storage/memory/MemoryStorageAdapter.js +212 -0
  96. package/dist/storage/memory/MemoryStorageAdapter.js.map +1 -0
  97. package/dist/storage/opfs/OpfsStorageAdapter.d.ts +141 -0
  98. package/dist/storage/opfs/OpfsStorageAdapter.d.ts.map +1 -0
  99. package/dist/storage/opfs/OpfsStorageAdapter.js +400 -0
  100. package/dist/storage/opfs/OpfsStorageAdapter.js.map +1 -0
  101. package/package.json +48 -36
  102. package/readme.md +80 -94
  103. package/dist/api/LightDB.d.ts +0 -194
  104. package/dist/api/LightDB.d.ts.map +0 -1
  105. package/dist/api/LightDB.js +0 -299
  106. package/dist/api/LightDB.js.map +0 -1
  107. package/dist/api/Transaction.d.ts +0 -100
  108. package/dist/api/Transaction.d.ts.map +0 -1
  109. package/dist/api/Transaction.js +0 -263
  110. package/dist/api/Transaction.js.map +0 -1
  111. package/dist/collection/Collection.d.ts +0 -235
  112. package/dist/collection/Collection.d.ts.map +0 -1
  113. package/dist/collection/Collection.js +0 -671
  114. package/dist/collection/Collection.js.map +0 -1
  115. package/dist/collection/QueryBuilder.d.ts +0 -225
  116. package/dist/collection/QueryBuilder.d.ts.map +0 -1
  117. package/dist/collection/QueryBuilder.js +0 -475
  118. package/dist/collection/QueryBuilder.js.map +0 -1
  119. package/dist/collection/QueryParser.d.ts +0 -117
  120. package/dist/collection/QueryParser.d.ts.map +0 -1
  121. package/dist/collection/QueryParser.js +0 -438
  122. package/dist/collection/QueryParser.js.map +0 -1
  123. package/dist/collection/index.d.ts +0 -42
  124. package/dist/collection/index.d.ts.map +0 -1
  125. package/dist/collection/index.js +0 -41
  126. package/dist/collection/index.js.map +0 -1
  127. package/dist/collection/types.d.ts +0 -365
  128. package/dist/collection/types.d.ts.map +0 -1
  129. package/dist/collection/types.js +0 -7
  130. package/dist/collection/types.js.map +0 -1
  131. package/dist/constants/index.d.ts +0 -51
  132. package/dist/constants/index.d.ts.map +0 -1
  133. package/dist/constants/index.js +0 -68
  134. package/dist/constants/index.js.map +0 -1
  135. package/dist/indexes/BPlusTree.d.ts +0 -181
  136. package/dist/indexes/BPlusTree.d.ts.map +0 -1
  137. package/dist/indexes/BPlusTree.js +0 -528
  138. package/dist/indexes/BPlusTree.js.map +0 -1
  139. package/dist/indexes/IndexManager.d.ts +0 -236
  140. package/dist/indexes/IndexManager.d.ts.map +0 -1
  141. package/dist/indexes/IndexManager.js +0 -502
  142. package/dist/indexes/IndexManager.js.map +0 -1
  143. package/dist/indexes/PrimaryIndex.d.ts +0 -240
  144. package/dist/indexes/PrimaryIndex.d.ts.map +0 -1
  145. package/dist/indexes/PrimaryIndex.js +0 -354
  146. package/dist/indexes/PrimaryIndex.js.map +0 -1
  147. package/dist/indexes/SecondaryIndex.d.ts +0 -204
  148. package/dist/indexes/SecondaryIndex.d.ts.map +0 -1
  149. package/dist/indexes/SecondaryIndex.js +0 -480
  150. package/dist/indexes/SecondaryIndex.js.map +0 -1
  151. package/dist/indexes/errors.d.ts +0 -66
  152. package/dist/indexes/errors.d.ts.map +0 -1
  153. package/dist/indexes/errors.js +0 -117
  154. package/dist/indexes/errors.js.map +0 -1
  155. package/dist/indexes/index.d.ts +0 -52
  156. package/dist/indexes/index.d.ts.map +0 -1
  157. package/dist/indexes/index.js +0 -131
  158. package/dist/indexes/index.js.map +0 -1
  159. package/dist/indexes/types.d.ts +0 -246
  160. package/dist/indexes/types.d.ts.map +0 -1
  161. package/dist/indexes/types.js +0 -30
  162. package/dist/indexes/types.js.map +0 -1
  163. package/dist/performance/BatchWALWriter.d.ts +0 -185
  164. package/dist/performance/BatchWALWriter.d.ts.map +0 -1
  165. package/dist/performance/BatchWALWriter.js +0 -490
  166. package/dist/performance/BatchWALWriter.js.map +0 -1
  167. package/dist/performance/ColumnarStorage.d.ts +0 -138
  168. package/dist/performance/ColumnarStorage.d.ts.map +0 -1
  169. package/dist/performance/ColumnarStorage.js +0 -875
  170. package/dist/performance/ColumnarStorage.js.map +0 -1
  171. package/dist/performance/LazyQuery.d.ts +0 -307
  172. package/dist/performance/LazyQuery.d.ts.map +0 -1
  173. package/dist/performance/LazyQuery.js +0 -588
  174. package/dist/performance/LazyQuery.js.map +0 -1
  175. package/dist/performance/OptimizedBuffer.d.ts +0 -375
  176. package/dist/performance/OptimizedBuffer.d.ts.map +0 -1
  177. package/dist/performance/OptimizedBuffer.js +0 -730
  178. package/dist/performance/OptimizedBuffer.js.map +0 -1
  179. package/dist/performance/RWLock.d.ts +0 -260
  180. package/dist/performance/RWLock.d.ts.map +0 -1
  181. package/dist/performance/RWLock.js +0 -570
  182. package/dist/performance/RWLock.js.map +0 -1
  183. package/dist/performance/index.d.ts +0 -41
  184. package/dist/performance/index.d.ts.map +0 -1
  185. package/dist/performance/index.js +0 -162
  186. package/dist/performance/index.js.map +0 -1
  187. package/dist/performance/types.d.ts +0 -247
  188. package/dist/performance/types.d.ts.map +0 -1
  189. package/dist/performance/types.js +0 -26
  190. package/dist/performance/types.js.map +0 -1
  191. package/dist/storage/Checkpoint.d.ts +0 -128
  192. package/dist/storage/Checkpoint.d.ts.map +0 -1
  193. package/dist/storage/Checkpoint.js +0 -251
  194. package/dist/storage/Checkpoint.js.map +0 -1
  195. package/dist/storage/LightFile.d.ts +0 -227
  196. package/dist/storage/LightFile.d.ts.map +0 -1
  197. package/dist/storage/LightFile.js +0 -526
  198. package/dist/storage/LightFile.js.map +0 -1
  199. package/dist/storage/Recovery.d.ts +0 -172
  200. package/dist/storage/Recovery.d.ts.map +0 -1
  201. package/dist/storage/Recovery.js +0 -399
  202. package/dist/storage/Recovery.js.map +0 -1
  203. package/dist/storage/SHMFile.d.ts +0 -243
  204. package/dist/storage/SHMFile.d.ts.map +0 -1
  205. package/dist/storage/SHMFile.js +0 -436
  206. package/dist/storage/SHMFile.js.map +0 -1
  207. package/dist/storage/StorageEngine.d.ts +0 -146
  208. package/dist/storage/StorageEngine.d.ts.map +0 -1
  209. package/dist/storage/StorageEngine.js +0 -353
  210. package/dist/storage/StorageEngine.js.map +0 -1
  211. package/dist/storage/WALFile.d.ts +0 -248
  212. package/dist/storage/WALFile.d.ts.map +0 -1
  213. package/dist/storage/WALFile.js +0 -597
  214. package/dist/storage/WALFile.js.map +0 -1
  215. package/dist/types/index.d.ts +0 -220
  216. package/dist/types/index.d.ts.map +0 -1
  217. package/dist/types/index.js +0 -7
  218. package/dist/types/index.js.map +0 -1
  219. package/dist/utils/binary.d.ts +0 -271
  220. package/dist/utils/binary.d.ts.map +0 -1
  221. package/dist/utils/binary.js +0 -454
  222. package/dist/utils/binary.js.map +0 -1
  223. package/dist/utils/file.d.ts +0 -166
  224. package/dist/utils/file.d.ts.map +0 -1
  225. package/dist/utils/file.js +0 -346
  226. package/dist/utils/file.js.map +0 -1
  227. package/dist/utils/index.d.ts +0 -6
  228. package/dist/utils/index.d.ts.map +0 -1
  229. package/dist/utils/index.js +0 -39
  230. package/dist/utils/index.js.map +0 -1
@@ -1,375 +0,0 @@
1
- /**
2
- * 优化的二进制序列化工具
3
- * 使用 Buffer.allocUnsafe + 手动 fill,比 Buffer.alloc 快 2 倍以上
4
- */
5
- import { BufferPoolOptions, BufferPoolStats } from "./types";
6
- /**
7
- * Buffer 池
8
- * 预分配 Buffer 块,减少频繁内存分配
9
- */
10
- export declare class BufferPool {
11
- private pool;
12
- private chunkSize;
13
- private maxPoolSize;
14
- private usedCount;
15
- private totalAllocated;
16
- private totalFreed;
17
- /**
18
- * 创建 Buffer 池
19
- * @param options 配置选项
20
- */
21
- constructor(options?: BufferPoolOptions);
22
- /**
23
- * 预分配 Buffer 块
24
- * @param count 分配数量
25
- */
26
- private preallocate;
27
- /**
28
- * 创建新的 Buffer 块
29
- */
30
- private createChunk;
31
- /**
32
- * 从池中获取 Buffer
33
- * @param size 需要的大小
34
- * @returns Buffer 实例
35
- */
36
- allocate(size: number): Buffer;
37
- /**
38
- * 释放 Buffer 回池中
39
- * @param buffer 要释放的 Buffer
40
- */
41
- release(buffer: Buffer): void;
42
- /**
43
- * 获取统计信息
44
- */
45
- getStats(): BufferPoolStats;
46
- /**
47
- * 清空池
48
- */
49
- clear(): void;
50
- /**
51
- * 获取块大小
52
- */
53
- getChunkSize(): number;
54
- /**
55
- * 获取分配总数
56
- */
57
- getTotalAllocated(): number;
58
- /**
59
- * 获取释放总数
60
- */
61
- getTotalFreed(): number;
62
- }
63
- /**
64
- * 获取全局 Buffer 池
65
- */
66
- export declare function getGlobalBufferPool(): BufferPool;
67
- /**
68
- * 优化的 Buffer 写入器
69
- * 使用 allocUnsafe + 手动 fill,性能更优
70
- */
71
- export declare class OptimizedBufferWriter {
72
- private buffer;
73
- private offset;
74
- private static pool;
75
- /**
76
- * 创建优化的 Buffer 写入器
77
- * @param size 初始大小
78
- */
79
- constructor(size?: number);
80
- /**
81
- * 获取当前写入位置
82
- */
83
- get position(): number;
84
- /**
85
- * 获取已写入的数据
86
- */
87
- get data(): Buffer;
88
- /**
89
- * 获取剩余空间
90
- */
91
- get remaining(): number;
92
- /**
93
- * 确保有足够的空间
94
- * @param additional 需要的额外空间
95
- */
96
- private ensureCapacity;
97
- /**
98
- * 写入无符号 8 位整数
99
- */
100
- writeUInt8(value: number): this;
101
- /**
102
- * 写入无符号 16 位整数(Little-Endian)
103
- */
104
- writeUInt16LE(value: number): this;
105
- /**
106
- * 写入无符号 32 位整数(Little-Endian)
107
- */
108
- writeUInt32LE(value: number): this;
109
- /**
110
- * 写入有符号 32 位整数(Little-Endian)
111
- */
112
- writeInt32LE(value: number): this;
113
- /**
114
- * 写入无符号 64 位整数(Little-Endian)
115
- */
116
- writeBigUInt64LE(value: bigint): this;
117
- /**
118
- * 写入有符号 64 位整数(Little-Endian)
119
- */
120
- writeBigInt64LE(value: bigint): this;
121
- /**
122
- * 写入 32 位浮点数(Little-Endian)
123
- */
124
- writeFloatLE(value: number): this;
125
- /**
126
- * 写入 64 位双精度浮点数(Little-Endian)
127
- */
128
- writeDoubleLE(value: number): this;
129
- /**
130
- * 写入字符串(带长度前缀)
131
- */
132
- writeString(value: string): this;
133
- /**
134
- * 写入字符串(不带长度前缀)
135
- */
136
- writeStringRaw(value: string): this;
137
- /**
138
- * 写入 Buffer
139
- */
140
- writeBuffer(value: Buffer): this;
141
- /**
142
- * 写入带长度前缀的 Buffer
143
- */
144
- writeBufferWithLength(value: Buffer): this;
145
- /**
146
- * 写入字节数组
147
- */
148
- writeBytes(values: number[]): this;
149
- /**
150
- * 填充指定字节
151
- */
152
- fill(value: number, count: number): this;
153
- /**
154
- * 跳过指定字节数
155
- */
156
- skip(count: number): this;
157
- /**
158
- * 在指定位置写入值
159
- */
160
- writeAt(offset: number, value: number, size: 1 | 2 | 4 | 8): this;
161
- /**
162
- * 重置写入器
163
- */
164
- reset(): this;
165
- /**
166
- * 释放资源
167
- */
168
- dispose(): void;
169
- }
170
- /**
171
- * 优化的 Buffer 读取器
172
- */
173
- export declare class OptimizedBufferReader {
174
- private buffer;
175
- private offset;
176
- private startOffset;
177
- /**
178
- * 创建优化的 Buffer 读取器
179
- * @param buffer 要读取的 Buffer
180
- * @param startOffset 起始偏移量
181
- */
182
- constructor(buffer: Buffer, startOffset?: number);
183
- /**
184
- * 获取当前读取位置
185
- */
186
- get position(): number;
187
- /**
188
- * 设置读取位置
189
- */
190
- set position(value: number);
191
- /**
192
- * 获取剩余可读字节数
193
- */
194
- get remaining(): number;
195
- /**
196
- * 获取总长度
197
- */
198
- get length(): number;
199
- /**
200
- * 检查是否有足够的可读数据
201
- */
202
- hasRemaining(required: number): boolean;
203
- /**
204
- * 读取无符号 8 位整数
205
- */
206
- readUInt8(): number;
207
- /**
208
- * 读取无符号 16 位整数(Little-Endian)
209
- */
210
- readUInt16LE(): number;
211
- /**
212
- * 读取无符号 32 位整数(Little-Endian)
213
- */
214
- readUInt32LE(): number;
215
- /**
216
- * 读取有符号 32 位整数(Little-Endian)
217
- */
218
- readInt32LE(): number;
219
- /**
220
- * 读取无符号 64 位整数(Little-Endian)
221
- */
222
- readBigUInt64LE(): bigint;
223
- /**
224
- * 读取有符号 64 位整数(Little-Endian)
225
- */
226
- readBigInt64LE(): bigint;
227
- /**
228
- * 读取 32 位浮点数(Little-Endian)
229
- */
230
- readFloatLE(): number;
231
- /**
232
- * 读取 64 位双精度浮点数(Little-Endian)
233
- */
234
- readDoubleLE(): number;
235
- /**
236
- * 读取字符串(带长度前缀)
237
- */
238
- readString(): string;
239
- /**
240
- * 读取指定长度的字符串
241
- */
242
- readStringFixed(length: number): string;
243
- /**
244
- * 读取指定长度的 Buffer
245
- */
246
- readBuffer(length: number): Buffer;
247
- /**
248
- * 读取带长度前缀的 Buffer
249
- */
250
- readBufferWithLength(): Buffer;
251
- /**
252
- * 读取字节数组
253
- */
254
- readBytes(length: number): number[];
255
- /**
256
- * 跳过指定字节数
257
- */
258
- skip(bytes: number): this;
259
- /**
260
- * 回退指定字节数
261
- */
262
- back(bytes: number): this;
263
- /**
264
- * 重置到起始位置
265
- */
266
- reset(): this;
267
- /**
268
- * 查看当前位置的字节(不移动指针)
269
- */
270
- peek(): number;
271
- /**
272
- * 查看指定偏移量的值(不移动指针)
273
- */
274
- peekAt(offset: number, size: 1 | 2 | 4 | 8): number | bigint;
275
- /**
276
- * 获取底层 Buffer
277
- */
278
- getBuffer(): Buffer;
279
- }
280
- /**
281
- * 快速序列化工具
282
- * 提供常用数据结构的快速序列化方法
283
- */
284
- export declare class FastSerializer {
285
- /**
286
- * 序列化键值对
287
- */
288
- static serializeKeyValue(key: string, value: Buffer): Buffer;
289
- /**
290
- * 反序列化键值对
291
- */
292
- static deserializeKeyValue(
293
- buffer: Buffer,
294
- offset?: number,
295
- ): {
296
- key: string;
297
- value: Buffer;
298
- bytesRead: number;
299
- };
300
- /**
301
- * 序列化字符串数组
302
- */
303
- static serializeStringArray(strings: string[]): Buffer;
304
- /**
305
- * 反序列化字符串数组
306
- */
307
- static deserializeStringArray(
308
- buffer: Buffer,
309
- offset?: number,
310
- ): {
311
- strings: string[];
312
- bytesRead: number;
313
- };
314
- /**
315
- * 序列化数字数组
316
- */
317
- static serializeNumberArray(numbers: number[]): Buffer;
318
- /**
319
- * 反序列化数字数组
320
- */
321
- static deserializeNumberArray(
322
- buffer: Buffer,
323
- offset?: number,
324
- ): {
325
- numbers: number[];
326
- bytesRead: number;
327
- };
328
- /**
329
- * 序列化对象(简单 JSON 序列化的优化版本)
330
- */
331
- static serializeObject(obj: Record<string, unknown>): Buffer;
332
- /**
333
- * 反序列化对象
334
- */
335
- static deserializeObject(
336
- buffer: Buffer,
337
- offset?: number,
338
- ): {
339
- obj: Record<string, unknown>;
340
- bytesRead: number;
341
- };
342
- }
343
- /**
344
- * 批量 Buffer 合并工具
345
- */
346
- export declare class BufferConcatenator {
347
- private buffers;
348
- private totalLength;
349
- constructor();
350
- /**
351
- * 添加 Buffer
352
- */
353
- append(buffer: Buffer): this;
354
- /**
355
- * 添加多个 Buffer
356
- */
357
- appendMany(buffers: Buffer[]): this;
358
- /**
359
- * 获取总长度
360
- */
361
- get length(): number;
362
- /**
363
- * 获取 Buffer 数量
364
- */
365
- get count(): number;
366
- /**
367
- * 合并所有 Buffer
368
- */
369
- concat(): Buffer;
370
- /**
371
- * 清空
372
- */
373
- clear(): this;
374
- }
375
- //# sourceMappingURL=OptimizedBuffer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OptimizedBuffer.d.ts","sourceRoot":"","sources":["../../src/performance/OptimizedBuffer.ts"],"names":[],"mappings":"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"}