@animalabs/context-manager 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -73,6 +73,18 @@ export declare class AutobiographicalStrategy implements ResettableStrategy {
73
73
  pendingMerges: number;
74
74
  };
75
75
  protected selectLegacy(store: MessageStoreView, _log: ContextLogView, budget: TokenBudget): ContextEntry[];
76
+ /**
77
+ * Emit recent-window messages, evicting OLDEST-first when the budget is tight.
78
+ *
79
+ * The previous loop iterated `recentStart → messages.length` forward and broke
80
+ * on `totalTokens + tokens > maxTokens`. When the head/summary section eats most
81
+ * of the budget, the loop emits the oldest messages of the window and aborts
82
+ * before reaching the newest — exactly the messages an agent needs to act on.
83
+ * This helper picks newest-first within the budget, then emits the kept set in
84
+ * chronological order, dropping a leading orphan tool_result if its tool_use
85
+ * fell into the evicted older portion.
86
+ */
87
+ protected emitRecentNewestFirst(entries: ContextEntry[], store: MessageStoreView, messages: StoredMessage[], recentStart: number, msgCap: number, maxTokens: number, totalTokensBefore: number): void;
76
88
  protected compressChunkLegacy(chunk: Chunk, ctx: StrategyContext): Promise<void>;
77
89
  protected buildPriorContextLegacy(chunk: Chunk, ctx: StrategyContext): Array<{
78
90
  participant: string;
@@ -1 +1 @@
1
- {"version":3,"file":"autobiographical.d.ts","sourceRoot":"","sources":["../../../src/strategies/autobiographical.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA+B,YAAY,EAAmB,MAAM,qBAAqB,CAAC;AACtG,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAEV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACb,MAAM,mBAAmB,CAAC;AAgB3B;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd;qFACiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB;qFACiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,UAAU,EAAE,OAAO,CAAC;IACpB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,qBAAa,wBAAyB,YAAW,kBAAkB;IACjE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAsB;IAE3C,IAAI,gBAAgB,IAAI,MAAM,CAAyC;IAEvE,SAAS,CAAC,MAAM,EAAE,sBAAsB,CAAC;IACzC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAM;IAC/B,SAAS,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAC1C,SAAS,CAAC,iBAAiB,SAAK;IAGhC,SAAS,CAAC,SAAS,EAAE,YAAY,EAAE,CAAM;IACzC,SAAS,CAAC,gBAAgB,SAAK;IAC/B,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,YAAY,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAM;IAC/E,SAAS,CAAC,eAAe,kBAAyB;IAElD,iFAAiF;IACjF,SAAS,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAClD,+EAA+E;IAC/E,OAAO,CAAC,qBAAqB,CAAwE;gBAEzF,MAAM,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAalD,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAYrD,cAAc,IAAI,cAAc;IA2B1B,YAAY,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAazE,IAAI,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC/C,MAAM,CACJ,KAAK,EAAE,gBAAgB,EACvB,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,WAAW,GAClB,YAAY,EAAE;IAQjB;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QACxE,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;KAC3D;IAgBD,SAAS,CAAC,YAAY,CACpB,KAAK,EAAE,gBAAgB,EACvB,IAAI,EAAE,cAAc,EACpB,MAAM,EAAE,WAAW,GAClB,YAAY,EAAE;cAgID,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAgDtF,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,eAAe,GAAG,KAAK,CAAC;QAC3E,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,YAAY,EAAE,CAAC;KACzB,CAAC;IA+CF;;;;;OAKG;IACH,SAAS,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG;QACpE,OAAO,EAAE,YAAY,EAAE,CAAC;QACxB,OAAO,EAAE,YAAY,EAAE,CAAC;QACxB,OAAO,EAAE,YAAY,EAAE,CAAC;KACzB;IA2BD;;;OAGG;cACa,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAiF5F;;;OAGG;IACH,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAwBrC;;;OAGG;cACa,YAAY,CAC1B,WAAW,EAAE,YAAY,EACzB,SAAS,EAAE,MAAM,EAAE,EACnB,GAAG,EAAE,eAAe,GACnB,OAAO,CAAC,IAAI,CAAC;IAuGhB;;;OAGG;IACH,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,GAAG,YAAY,EAAE;IAqI1F;;;OAGG;IACH,SAAS,CAAC,yBAAyB,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAI/E;;;OAGG;IACH,SAAS,CAAC,mBAAmB,CAC3B,WAAW,EAAE,YAAY,EACzB,OAAO,EAAE,YAAY,EAAE,EACvB,YAAY,EAAE,MAAM,GACnB,MAAM;IAIT;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CACzB,OAAO,EAAE,YAAY,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB;QAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;IAgBnD;;;OAGG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKhD;;;OAGG;IACG,yBAAyB,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IA4DtE;;OAEG;IACH,SAAS,CAAC,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO;IAOnE;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM;IAWtD;;;OAGG;IACH,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,EAAE;IAS3E;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI;IA0EtD,SAAS,CAAC,WAAW,CACnB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,aAAa,EAAE,EACzB,MAAM,EAAE,MAAM,EACd,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,GACrC,KAAK;IAgCR,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAIxC,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM;IAoB/D;;;;OAIG;IACH,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM;IAelE;;;OAGG;IACH,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM;IAuB3D,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO;IAIrD,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO;IAIxD;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAa3B,SAAS,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAIjD,SAAS,CAAC,yBAAyB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAuBzD;;;OAGG;IACH,SAAS,CAAC,2BAA2B,CACnC,QAAQ,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC,GAChE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC;IAqB1D,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM;IAkB5D,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM;IAUzD;;OAEG;IACH,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE;CAuDtF"}
1
+ {"version":3,"file":"autobiographical.d.ts","sourceRoot":"","sources":["../../../src/strategies/autobiographical.ts"],"names":[],"mappings":"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"}
@@ -197,10 +197,13 @@ export class AutobiographicalStrategy {
197
197
  content: [{ type: 'text', text: contextLabel }],
198
198
  sourceRelation: 'derived',
199
199
  };
200
+ // Synthesised summary turns must respect maxMessageTokens just like raw
201
+ // copies do — otherwise a runaway diary can starve recent messages.
202
+ const answerContent = [{ type: 'text', text: chunk.diary }];
200
203
  const answerEntry = {
201
204
  index: entries.length + 1,
202
205
  participant: summaryParticipant,
203
- content: [{ type: 'text', text: chunk.diary }],
206
+ content: msgCap > 0 ? this.truncateContent(answerContent, msgCap) : answerContent,
204
207
  sourceRelation: 'derived',
205
208
  };
206
209
  const pairTokens = this.estimateTokens(questionEntry.content) +
@@ -253,12 +256,46 @@ export class AutobiographicalStrategy {
253
256
  }
254
257
  // 3. Recent uncompressed messages (skip those already in head window)
255
258
  const recentStart = Math.max(this.getRecentWindowStart(store), headEnd);
256
- for (let i = recentStart; i < messages.length; i++) {
259
+ this.emitRecentNewestFirst(entries, store, messages, recentStart, msgCap, maxTokens, totalTokens);
260
+ this.trimOrphanedToolUse(entries);
261
+ return entries;
262
+ }
263
+ /**
264
+ * Emit recent-window messages, evicting OLDEST-first when the budget is tight.
265
+ *
266
+ * The previous loop iterated `recentStart → messages.length` forward and broke
267
+ * on `totalTokens + tokens > maxTokens`. When the head/summary section eats most
268
+ * of the budget, the loop emits the oldest messages of the window and aborts
269
+ * before reaching the newest — exactly the messages an agent needs to act on.
270
+ * This helper picks newest-first within the budget, then emits the kept set in
271
+ * chronological order, dropping a leading orphan tool_result if its tool_use
272
+ * fell into the evicted older portion.
273
+ */
274
+ emitRecentNewestFirst(entries, store, messages, recentStart, msgCap, maxTokens, totalTokensBefore) {
275
+ if (recentStart >= messages.length)
276
+ return;
277
+ const accepted = [];
278
+ let acceptedTokens = 0;
279
+ for (let i = messages.length - 1; i >= recentStart; i--) {
257
280
  const msg = messages[i];
258
- const content = msgCap > 0 ? this.truncateContent(msg.content, msgCap) : msg.content;
259
- const tokens = msgCap > 0 ? Math.min(store.estimateTokens(msg), msgCap + 50) : store.estimateTokens(msg);
260
- if (totalTokens + tokens > maxTokens)
281
+ const tokens = msgCap > 0
282
+ ? Math.min(store.estimateTokens(msg), msgCap + 50)
283
+ : store.estimateTokens(msg);
284
+ if (totalTokensBefore + acceptedTokens + tokens > maxTokens)
261
285
  break;
286
+ accepted.push(i);
287
+ acceptedTokens += tokens;
288
+ }
289
+ accepted.reverse();
290
+ // Drop leading orphan tool_result(s): their matching tool_use was evicted.
291
+ while (accepted.length > 0 &&
292
+ this.hasToolResult(messages[accepted[0]]) &&
293
+ !this.hasToolUse(messages[accepted[0]])) {
294
+ accepted.shift();
295
+ }
296
+ for (const i of accepted) {
297
+ const msg = messages[i];
298
+ const content = msgCap > 0 ? this.truncateContent(msg.content, msgCap) : msg.content;
262
299
  entries.push({
263
300
  index: entries.length,
264
301
  sourceMessageId: msg.id,
@@ -266,10 +303,7 @@ export class AutobiographicalStrategy {
266
303
  participant: msg.participant,
267
304
  content,
268
305
  });
269
- totalTokens += tokens;
270
306
  }
271
- this.trimOrphanedToolUse(entries);
272
- return entries;
273
307
  }
274
308
  async compressChunkLegacy(chunk, ctx) {
275
309
  if (!ctx.membrane) {
@@ -656,10 +690,15 @@ export class AutobiographicalStrategy {
656
690
  content: [{ type: 'text', text: contextLabel }],
657
691
  sourceRelation: 'derived',
658
692
  };
693
+ // Synthesised summary turns must respect maxMessageTokens. With L1+L2+L3
694
+ // budgets defaulting to 30k each, an unconstrained concatenation can push
695
+ // a single assistant turn past 90k tokens, eating the inference budget
696
+ // and starving recent messages (postmortem 2026-05-04, bug B).
697
+ const answerContent = [{ type: 'text', text: combinedText }];
659
698
  const answerEntry = {
660
699
  index: entries.length + 1,
661
700
  participant: this.config.summaryParticipant ?? 'Claude',
662
- content: [{ type: 'text', text: combinedText }],
701
+ content: msgCap > 0 ? this.truncateContent(answerContent, msgCap) : answerContent,
663
702
  sourceRelation: 'derived',
664
703
  };
665
704
  const pairTokens = this.estimateTokens(questionEntry.content) +
@@ -668,23 +707,12 @@ export class AutobiographicalStrategy {
668
707
  entries.push(answerEntry);
669
708
  totalTokens += pairTokens;
670
709
  }
671
- // Phase 4: Recent uncompressed messages (skip head window overlap)
710
+ // Phase 4: Recent uncompressed messages (skip head window overlap).
711
+ // Newest-first eviction so that when summaries/head consume most of the
712
+ // budget, the latest messages (the ones the agent actually needs to act
713
+ // on) are preserved and the oldest recent-window messages are dropped.
672
714
  const effectiveRecentStart = Math.max(recentStart, headEnd);
673
- for (let i = effectiveRecentStart; i < messages.length; i++) {
674
- const msg = messages[i];
675
- const content = msgCap > 0 ? this.truncateContent(msg.content, msgCap) : msg.content;
676
- const tokens = msgCap > 0 ? Math.min(store.estimateTokens(msg), msgCap + 50) : store.estimateTokens(msg);
677
- if (totalTokens + tokens > maxTokens)
678
- break;
679
- entries.push({
680
- index: entries.length,
681
- sourceMessageId: msg.id,
682
- sourceRelation: 'copy',
683
- participant: msg.participant,
684
- content,
685
- });
686
- totalTokens += tokens;
687
- }
715
+ this.emitRecentNewestFirst(entries, store, messages, effectiveRecentStart, msgCap, maxTokens, totalTokens);
688
716
  this.trimOrphanedToolUse(entries);
689
717
  return entries;
690
718
  }
@@ -1 +1 @@
1
- {"version":3,"file":"autobiographical.js","sourceRoot":"","sources":["../../../src/strategies/autobiographical.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autobiographical.js","sourceRoot":"","sources":["../../../src/strategies/autobiographical.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Regression tests for the postmortem 2026-05-04 (Triumvirate Conhost Silence)
3
+ * findings about AutobiographicalStrategy:
4
+ *
5
+ * (A) Phase-4 recent-window emission iterated forward and broke on budget,
6
+ * dropping the newest messages instead of the oldest. After a bloated
7
+ * compaction ate most of the budget, May-4 messages addressed to the
8
+ * clerk never reached the inference context, and the agent went silent.
9
+ *
10
+ * (B) Synthesised summary turns bypassed `maxMessageTokens`. With L1+L2+L3
11
+ * summary budgets defaulting to 30k each, a single assistant Q&A pair
12
+ * could grow past 90k tokens, eating the inference budget and starving
13
+ * recent messages.
14
+ *
15
+ * These tests construct minimal scenarios that fail under the pre-fix code
16
+ * and pass after the fixes in src/strategies/autobiographical.ts.
17
+ */
18
+ export {};
19
+ //# sourceMappingURL=recent-window-eviction.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recent-window-eviction.test.d.ts","sourceRoot":"","sources":["../../test/recent-window-eviction.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
@@ -0,0 +1,206 @@
1
+ /**
2
+ * Regression tests for the postmortem 2026-05-04 (Triumvirate Conhost Silence)
3
+ * findings about AutobiographicalStrategy:
4
+ *
5
+ * (A) Phase-4 recent-window emission iterated forward and broke on budget,
6
+ * dropping the newest messages instead of the oldest. After a bloated
7
+ * compaction ate most of the budget, May-4 messages addressed to the
8
+ * clerk never reached the inference context, and the agent went silent.
9
+ *
10
+ * (B) Synthesised summary turns bypassed `maxMessageTokens`. With L1+L2+L3
11
+ * summary budgets defaulting to 30k each, a single assistant Q&A pair
12
+ * could grow past 90k tokens, eating the inference budget and starving
13
+ * recent messages.
14
+ *
15
+ * These tests construct minimal scenarios that fail under the pre-fix code
16
+ * and pass after the fixes in src/strategies/autobiographical.ts.
17
+ */
18
+ import { describe, it, before, after } from 'node:test';
19
+ import assert from 'node:assert';
20
+ import { rmSync, existsSync } from 'node:fs';
21
+ import { ContextManager, AutobiographicalStrategy, } from '../src/index.js';
22
+ const TEST_STORE_PATH = './test-recent-window-eviction';
23
+ function cleanup() {
24
+ if (existsSync(TEST_STORE_PATH)) {
25
+ rmSync(TEST_STORE_PATH, { recursive: true, force: true });
26
+ }
27
+ }
28
+ function textBlock(text) {
29
+ return [{ type: 'text', text }];
30
+ }
31
+ /** Test subclass that lets the test seed L1 summaries directly without a real LLM. */
32
+ class SeedableStrategy extends AutobiographicalStrategy {
33
+ seedL1Summary(content, sourceIds) {
34
+ const entry = {
35
+ id: `L1-test-${this.summaries.length}`,
36
+ level: 1,
37
+ content,
38
+ tokens: Math.ceil(content.length / 4),
39
+ sourceLevel: 0,
40
+ sourceIds,
41
+ sourceRange: {
42
+ first: sourceIds[0] ?? '',
43
+ last: sourceIds[sourceIds.length - 1] ?? '',
44
+ },
45
+ created: Date.now(),
46
+ };
47
+ this.summaries.push(entry);
48
+ }
49
+ }
50
+ describe('Recent window newest-first eviction (postmortem bug A)', () => {
51
+ before(() => cleanup());
52
+ after(() => cleanup());
53
+ it('preserves the LATEST recent-window messages when budget is tight', async () => {
54
+ cleanup();
55
+ const strategy = new AutobiographicalStrategy({
56
+ headWindowTokens: 0,
57
+ recentWindowTokens: 100_000, // big — keep all messages in the recent zone
58
+ maxMessageTokens: 0,
59
+ hierarchical: true,
60
+ });
61
+ const manager = await ContextManager.open({
62
+ path: TEST_STORE_PATH,
63
+ strategy,
64
+ });
65
+ // 10 recent messages each padded to ~25 tokens (~100 chars) so that a
66
+ // tight budget forces eviction of some of them.
67
+ for (let i = 1; i <= 10; i++) {
68
+ const tag = String(i).padStart(2, '0');
69
+ manager.addMessage('user', textBlock(`msg-${tag} ${'.'.repeat(80)} body`));
70
+ }
71
+ // Tight budget: only ~3-4 messages worth of room out of 10.
72
+ const compiled = await manager.compile({ maxTokens: 80, reserveForResponse: 0 });
73
+ // The pre-fix loop iterated forward and emitted msg-01, msg-02, ... breaking
74
+ // when budget ran out. Post-fix should keep the NEWEST messages.
75
+ const lastEntry = compiled.messages[compiled.messages.length - 1];
76
+ assert.ok(lastEntry, 'should have at least one compiled entry');
77
+ const lastText = lastEntry.content
78
+ .filter((b) => b.type === 'text')
79
+ .map(b => b.text)
80
+ .join(' ');
81
+ assert.match(lastText, /msg-10/, `Latest compiled entry must contain msg-10, got: "${lastText}"`);
82
+ // And the compiled tail must be a strict tail: contain msg-10 but not the
83
+ // oldest entries that wouldn't fit.
84
+ const allText = compiled.messages
85
+ .flatMap(m => m.content)
86
+ .filter((b) => b.type === 'text')
87
+ .map(b => b.text)
88
+ .join(' ');
89
+ assert.ok(allText.includes('msg-10'), 'msg-10 (newest) must survive eviction');
90
+ // Expect SOME oldest message to have been evicted.
91
+ assert.ok(!allText.includes('msg-01'), 'msg-01 (oldest) should have been evicted');
92
+ manager.close();
93
+ });
94
+ it('emits surviving messages in chronological order (not reversed)', async () => {
95
+ cleanup();
96
+ const strategy = new AutobiographicalStrategy({
97
+ headWindowTokens: 0,
98
+ recentWindowTokens: 100_000,
99
+ maxMessageTokens: 0,
100
+ hierarchical: true,
101
+ });
102
+ const manager = await ContextManager.open({
103
+ path: TEST_STORE_PATH,
104
+ strategy,
105
+ });
106
+ for (let i = 1; i <= 5; i++) {
107
+ const tag = String(i).padStart(2, '0');
108
+ manager.addMessage('user', textBlock(`msg-${tag} body content`));
109
+ }
110
+ // Budget large enough to keep all 5.
111
+ const compiled = await manager.compile({ maxTokens: 1000, reserveForResponse: 0 });
112
+ const tags = compiled.messages
113
+ .map(m => m.content
114
+ .filter((b) => b.type === 'text')
115
+ .map(b => b.text)
116
+ .join(' '))
117
+ .map(t => {
118
+ const m = t.match(/msg-(\d+)/);
119
+ return m ? m[1] : null;
120
+ })
121
+ .filter((x) => x !== null);
122
+ assert.deepStrictEqual(tags, ['01', '02', '03', '04', '05'], 'compiled order must be chronological');
123
+ manager.close();
124
+ });
125
+ });
126
+ describe('Synthesised summary turn respects maxMessageTokens (postmortem bug B)', () => {
127
+ before(() => cleanup());
128
+ after(() => cleanup());
129
+ it('truncates a bloated combined-summaries answer entry to the configured cap', async () => {
130
+ cleanup();
131
+ const MSG_CAP = 200; // tokens
132
+ const strategy = new SeedableStrategy({
133
+ headWindowTokens: 0,
134
+ recentWindowTokens: 1000,
135
+ maxMessageTokens: MSG_CAP,
136
+ hierarchical: true,
137
+ // Generous summary budgets so the strategy WANTS to emit lots of summary text.
138
+ l1BudgetTokens: 30_000,
139
+ l2BudgetTokens: 30_000,
140
+ l3BudgetTokens: 30_000,
141
+ });
142
+ const manager = await ContextManager.open({
143
+ path: TEST_STORE_PATH,
144
+ strategy,
145
+ });
146
+ // A few recent messages so the compile is non-trivial.
147
+ manager.addMessage('user', textBlock('hello'));
148
+ manager.addMessage('assistant', textBlock('hi back'));
149
+ // Seed an oversized summary that would otherwise blow past msgCap.
150
+ // sourceIds are synthetic so they don't intersect head/recent message IDs
151
+ // and trigger the anti-redundancy filter.
152
+ const bigContent = 'X'.repeat(20_000); // ≈ 5000 tokens of text
153
+ strategy.seedL1Summary(bigContent, ['synthetic-old-1', 'synthetic-old-2']);
154
+ const compiled = await manager.compile({
155
+ maxTokens: 200_000,
156
+ reserveForResponse: 4000,
157
+ });
158
+ // Find the synthesised summary answer turn. It is a Q&A pair: the question
159
+ // is participant 'Context Manager', the answer is the summary participant
160
+ // (default 'Claude').
161
+ const answerEntry = compiled.messages.find(m => m.participant === 'Claude' &&
162
+ m.content.some(b => b.type === 'text' && b.text.includes('XXXX')));
163
+ assert.ok(answerEntry, 'should find synthesised summary answer entry');
164
+ const answerText = answerEntry.content
165
+ .filter((b) => b.type === 'text')
166
+ .map(b => b.text)
167
+ .join('');
168
+ // truncateContent caps at maxTokens * 4 chars and appends a marker.
169
+ // Allow some slack for the marker text.
170
+ const expectedMaxChars = MSG_CAP * 4 + 200;
171
+ assert.ok(answerText.length <= expectedMaxChars, `answer entry must be truncated to ≈${MSG_CAP} tokens, got ${answerText.length} chars`);
172
+ assert.match(answerText, /\[truncated/, 'truncated answer should carry the truncation marker');
173
+ manager.close();
174
+ });
175
+ it('leaves the answer entry intact when content is within the cap', async () => {
176
+ cleanup();
177
+ const strategy = new SeedableStrategy({
178
+ headWindowTokens: 0,
179
+ recentWindowTokens: 1000,
180
+ maxMessageTokens: 5000,
181
+ hierarchical: true,
182
+ });
183
+ const manager = await ContextManager.open({
184
+ path: TEST_STORE_PATH,
185
+ strategy,
186
+ });
187
+ manager.addMessage('user', textBlock('hello'));
188
+ const small = 'a small honest summary of earlier conversation';
189
+ strategy.seedL1Summary(small, ['synthetic-old-1']);
190
+ const compiled = await manager.compile({
191
+ maxTokens: 200_000,
192
+ reserveForResponse: 4000,
193
+ });
194
+ const answerEntry = compiled.messages.find(m => m.participant === 'Claude' &&
195
+ m.content.some(b => b.type === 'text' && b.text.includes('honest summary')));
196
+ assert.ok(answerEntry, 'should find synthesised summary answer entry');
197
+ const answerText = answerEntry.content
198
+ .filter((b) => b.type === 'text')
199
+ .map(b => b.text)
200
+ .join('');
201
+ assert.doesNotMatch(answerText, /\[truncated/, 'small summaries must not be truncated');
202
+ assert.ok(answerText.includes(small), 'small summary content must round-trip verbatim');
203
+ manager.close();
204
+ });
205
+ });
206
+ //# sourceMappingURL=recent-window-eviction.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recent-window-eviction.test.js","sourceRoot":"","sources":["../../test/recent-window-eviction.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EACL,cAAc,EACd,wBAAwB,GACzB,MAAM,iBAAiB,CAAC;AAIzB,MAAM,eAAe,GAAG,+BAA+B,CAAC;AAExD,SAAS,OAAO;IACd,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAClC,CAAC;AAED,sFAAsF;AACtF,MAAM,gBAAiB,SAAQ,wBAAwB;IACrD,aAAa,CAAC,OAAe,EAAE,SAAmB;QAChD,MAAM,KAAK,GAAiB;YAC1B,EAAE,EAAE,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YACtC,KAAK,EAAE,CAAC;YACR,OAAO;YACP,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACrC,WAAW,EAAE,CAAC;YACd,SAAS;YACT,WAAW,EAAE;gBACX,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE;gBACzB,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE;aAC5C;YACD,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;SACpB,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;CACF;AAED,QAAQ,CAAC,wDAAwD,EAAE,GAAG,EAAE;IACtE,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACxB,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvB,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAChF,OAAO,EAAE,CAAC;QAEV,MAAM,QAAQ,GAAG,IAAI,wBAAwB,CAAC;YAC5C,gBAAgB,EAAE,CAAC;YACnB,kBAAkB,EAAE,OAAO,EAAE,6CAA6C;YAC1E,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC;YACxC,IAAI,EAAE,eAAe;YACrB,QAAQ;SACT,CAAC,CAAC;QAEH,sEAAsE;QACtE,gDAAgD;QAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO,CAAC,UAAU,CAChB,MAAM,EACN,SAAS,CAAC,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,CAC/C,CAAC;QACJ,CAAC;QAED,4DAA4D;QAC5D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC;QAEjF,6EAA6E;QAC7E,iEAAiE;QACjE,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,yCAAyC,CAAC,CAAC;QAChE,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO;aAC/B,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,MAAM,CAAC,KAAK,CACV,QAAQ,EACR,QAAQ,EACR,oDAAoD,QAAQ,GAAG,CAChE,CAAC;QAEF,0EAA0E;QAC1E,oCAAoC;QACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ;aAC9B,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aACvB,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,uCAAuC,CAAC,CAAC;QAC/E,mDAAmD;QACnD,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,0CAA0C,CAAC,CAAC;QAEnF,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAC9E,OAAO,EAAE,CAAC;QAEV,MAAM,QAAQ,GAAG,IAAI,wBAAwB,CAAC;YAC5C,gBAAgB,EAAE,CAAC;YACnB,kBAAkB,EAAE,OAAO;YAC3B,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC;YACxC,IAAI,EAAE,eAAe;YACrB,QAAQ;SACT,CAAC,CAAC;QAEH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,qCAAqC;QACrC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC;QAEnF,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;aAChB,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,GAAG,CAAC,CAAC;aACZ,GAAG,CAAC,CAAC,CAAC,EAAE;YACP,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC/B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzB,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAE1C,MAAM,CAAC,eAAe,CACpB,IAAI,EACJ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAC9B,sCAAsC,CACvC,CAAC;QAEF,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACrF,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACxB,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvB,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;QACzF,OAAO,EAAE,CAAC;QAEV,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,SAAS;QAC9B,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;YACpC,gBAAgB,EAAE,CAAC;YACnB,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,OAAO;YACzB,YAAY,EAAE,IAAI;YAClB,+EAA+E;YAC/E,cAAc,EAAE,MAAM;YACtB,cAAc,EAAE,MAAM;YACtB,cAAc,EAAE,MAAM;SACvB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC;YACxC,IAAI,EAAE,eAAe;YACrB,QAAQ;SACT,CAAC,CAAC;QAEH,uDAAuD;QACvD,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QAEtD,mEAAmE;QACnE,0EAA0E;QAC1E,0CAA0C;QAC1C,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB;QAC/D,QAAQ,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAE3E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;YACrC,SAAS,EAAE,OAAO;YAClB,kBAAkB,EAAE,IAAI;SACzB,CAAC,CAAC;QAEH,2EAA2E;QAC3E,0EAA0E;QAC1E,sBAAsB;QACtB,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC7C,CAAC,CAAC,WAAW,KAAK,QAAQ;YAC1B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAK,CAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CACxF,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,8CAA8C,CAAC,CAAC;QAEvE,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO;aACnC,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,EAAE,CAAC,CAAC;QAEZ,oEAAoE;QACpE,wCAAwC;QACxC,MAAM,gBAAgB,GAAG,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;QAC3C,MAAM,CAAC,EAAE,CACP,UAAU,CAAC,MAAM,IAAI,gBAAgB,EACrC,sCAAsC,OAAO,gBAAgB,UAAU,CAAC,MAAM,QAAQ,CACvF,CAAC;QACF,MAAM,CAAC,KAAK,CACV,UAAU,EACV,aAAa,EACb,qDAAqD,CACtD,CAAC;QAEF,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC7E,OAAO,EAAE,CAAC;QAEV,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CAAC;YACpC,gBAAgB,EAAE,CAAC;YACnB,kBAAkB,EAAE,IAAI;YACxB,gBAAgB,EAAE,IAAI;YACtB,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC;YACxC,IAAI,EAAE,eAAe;YACrB,QAAQ;SACT,CAAC,CAAC;QAEH,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,gDAAgD,CAAC;QAC/D,QAAQ,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAEnD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;YACrC,SAAS,EAAE,OAAO;YAClB,kBAAkB,EAAE,IAAI;SACzB,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC7C,CAAC,CAAC,WAAW,KAAK,QAAQ;YAC1B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,IAAK,CAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAClG,CAAC;QACF,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,8CAA8C,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO;aACnC,MAAM,CAAC,CAAC,CAAC,EAAuC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;aACrE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,aAAa,EAAE,uCAAuC,CAAC,CAAC;QACxF,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,gDAAgD,CAAC,CAAC;QAExF,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@animalabs/chronicle/index.d.ts","../node_modules/@animalabs/membrane/dist/types/content.d.ts","../node_modules/@animalabs/membrane/dist/types/message.d.ts","../node_modules/@animalabs/membrane/dist/types/tools.d.ts","../node_modules/@animalabs/membrane/dist/types/request.d.ts","../node_modules/@animalabs/membrane/dist/types/response.d.ts","../node_modules/@animalabs/membrane/dist/types/provider.d.ts","../node_modules/@animalabs/membrane/dist/utils/stream-parser.d.ts","../node_modules/@animalabs/membrane/dist/formatters/types.d.ts","../node_modules/@animalabs/membrane/dist/types/streaming.d.ts","../node_modules/@animalabs/membrane/dist/types/yielding-stream.d.ts","../node_modules/@animalabs/membrane/dist/types/errors.d.ts","../node_modules/@animalabs/membrane/dist/types/config.d.ts","../node_modules/@animalabs/membrane/dist/types/index.d.ts","../node_modules/@animalabs/membrane/dist/membrane.d.ts","../node_modules/@animalabs/membrane/dist/transforms/chat.d.ts","../node_modules/@animalabs/membrane/dist/transforms/index.d.ts","../node_modules/@anthropic-ai/sdk/internal/builtin-types.d.mts","../node_modules/@anthropic-ai/sdk/internal/types.d.mts","../node_modules/@anthropic-ai/sdk/internal/headers.d.mts","../node_modules/@anthropic-ai/sdk/internal/shim-types.d.mts","../node_modules/@anthropic-ai/sdk/core/streaming.d.mts","../node_modules/@anthropic-ai/sdk/internal/request-options.d.mts","../node_modules/@anthropic-ai/sdk/internal/utils/log.d.mts","../node_modules/@anthropic-ai/sdk/core/error.d.mts","../node_modules/@anthropic-ai/sdk/internal/parse.d.mts","../node_modules/@anthropic-ai/sdk/core/api-promise.d.mts","../node_modules/@anthropic-ai/sdk/core/pagination.d.mts","../node_modules/@anthropic-ai/sdk/internal/uploads.d.mts","../node_modules/@anthropic-ai/sdk/internal/to-file.d.mts","../node_modules/@anthropic-ai/sdk/core/uploads.d.mts","../node_modules/@anthropic-ai/sdk/resources/shared.d.mts","../node_modules/@anthropic-ai/sdk/core/resource.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/files.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/models.d.mts","../node_modules/@anthropic-ai/sdk/error.d.mts","../node_modules/@anthropic-ai/sdk/internal/decoders/line.d.mts","../node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages/batches.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages/index.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages.d.mts","../node_modules/@anthropic-ai/sdk/lib/MessageStream.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages/messages.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.d.mts","../node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/beta.d.mts","../node_modules/@anthropic-ai/sdk/resources/completions.d.mts","../node_modules/@anthropic-ai/sdk/resources/models.d.mts","../node_modules/@anthropic-ai/sdk/resources/index.d.mts","../node_modules/@anthropic-ai/sdk/client.d.mts","../node_modules/@anthropic-ai/sdk/index.d.mts","../node_modules/@animalabs/membrane/dist/providers/anthropic.d.ts","../node_modules/@animalabs/membrane/dist/providers/openrouter.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai-compatible.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai-completions.d.ts","../node_modules/@animalabs/membrane/dist/providers/mock.d.ts","../node_modules/@animalabs/membrane/dist/providers/bedrock.d.ts","../node_modules/@animalabs/membrane/dist/providers/gemini.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai-responses.d.ts","../node_modules/@animalabs/membrane/dist/providers/index.d.ts","../node_modules/@animalabs/membrane/dist/utils/tool-parser.d.ts","../node_modules/@animalabs/membrane/dist/utils/index.d.ts","../node_modules/@animalabs/membrane/dist/formatters/anthropic-xml.d.ts","../node_modules/@animalabs/membrane/dist/formatters/native.d.ts","../node_modules/@animalabs/membrane/dist/formatters/completions.d.ts","../node_modules/@animalabs/membrane/dist/formatters/index.d.ts","../node_modules/@animalabs/membrane/dist/context/types.d.ts","../node_modules/@animalabs/membrane/dist/context/process.d.ts","../node_modules/@animalabs/membrane/dist/context/index.d.ts","../node_modules/@animalabs/membrane/dist/index.d.ts","../src/types/message.ts","../src/types/context.ts","../src/types/strategy.ts","../src/types/index.ts","../src/blob-manager.ts","../src/context-log.ts","../src/message-store.ts","../src/strategies/passthrough.ts","../src/context-manager.ts","../src/strategies/autobiographical.ts","../src/strategies/knowledge.ts","../src/index.ts","../src/strategies/index.ts","../test/autobiographical.test.ts","../test/head-window-reset.test.ts","../test/integration.test.ts","../test/knowledge.test.ts","../node_modules/@types/node/compatibility/disposable.d.ts","../node_modules/@types/node/compatibility/indexable.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/compatibility/index.d.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/domexception.d.ts","../node_modules/@types/node/web-globals/events.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.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.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/agent.d.ts","../node_modules/undici-types/mock-interceptor.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/mock-errors.d.ts","../node_modules/undici-types/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/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/filereader.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/navigator.d.ts","../node_modules/@types/node/web-globals/storage.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/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/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.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/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/promises.d.ts","../node_modules/@types/node/stream/consumers.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/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/v8.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/index.d.ts"],"fileIdsList":[[152,200,217,218],[126,127,152,200,217,218],[71,72,126,152,200,217,218],[61,63,71,152,200,217,218],[66,71,152,200,217,218],[66,122,123,124,152,200,217,218],[65,67,71,152,200,217,218],[71,72,74,119,121,125,128,152,200,217,218],[68,71,152,200,217,218],[71,109,152,200,217,218],[71,152,200,217,218],[110,111,112,113,114,115,116,117,118,152,200,217,218],[64,152,200,217,218],[73,152,200,217,218],[62,63,64,66,69,152,200,217,218],[59,60,61,62,63,64,67,68,69,70,152,200,217,218],[59,152,200,217,218],[60,61,152,200,217,218],[59,61,152,200,217,218],[59,61,63,66,152,200,217,218],[59,61,63,67,152,200,217,218],[120,152,200,217,218],[67,152,200,217,218],[75,76,77,80,81,82,84,85,88,100,104,105,106,107,152,200,217,218],[76,83,108,152,200,217,218],[80,83,84,108,152,200,217,218],[108,152,200,217,218],[78,152,200,217,218],[86,87,152,200,217,218],[82,152,200,217,218],[82,84,85,88,108,152,200,217,218],[94,152,200,217,218],[80,85,108,152,200,217,218],[75,76,77,79,152,200,217,218],[75,152,200,217,218],[75,80,108,152,200,217,218],[80,108,152,200,217,218],[78,80,93,103,152,200,217,218],[78,80,93,98,152,200,217,218],[90,91,92,103,152,200,217,218],[80,84,85,88,90,104,152,200,217,218],[80,84,85,90,95,103,104,152,200,217,218],[79,80,84,90,100,101,102,103,104,152,200,217,218],[80,84,85,90,104,152,200,217,218],[79,80,84,90,100,104,105,152,200,217,218],[89,100,104,105,106,152,200,217,218],[97,152,200,217,218],[80,84,85,89,90,95,100,152,200,217,218],[96,100,152,200,217,218],[79,80,84,90,96,99,100,152,200,217,218],[152,197,198,200,217,218],[152,199,200,217,218],[200,217,218],[152,200,205,217,218,235],[152,200,201,206,211,217,218,220,232,243],[152,200,201,202,211,217,218,220],[147,148,149,152,200,217,218],[152,200,203,217,218,244],[152,200,204,205,212,217,218,221],[152,200,205,217,218,232,240],[152,200,206,208,211,217,218,220],[152,199,200,207,217,218],[152,200,208,209,217,218],[152,200,210,211,217,218],[152,199,200,211,217,218],[152,200,211,212,213,217,218,232,243],[152,200,211,212,213,217,218,227,232,235],[152,193,200,208,211,214,217,218,220,232,243],[152,200,211,212,214,215,217,218,220,232,240,243],[152,200,214,216,217,218,232,240,243],[150,151,152,153,154,155,156,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[152,200,211,217,218],[152,200,217,218,219,243],[152,200,208,211,217,218,220,232],[152,200,217,218,221],[152,200,217,218,222],[152,199,200,217,218,223],[152,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[152,200,217,218,225],[152,200,217,218,226],[152,200,211,217,218,227,228],[152,200,217,218,227,229,244,246],[152,200,212,217,218],[152,200,211,217,218,232,233,235],[152,200,217,218,234,235],[152,200,217,218,232,233],[152,200,217,218,235],[152,200,217,218,236],[152,197,200,217,218,232,237,243],[152,200,211,217,218,238,239],[152,200,217,218,238,239],[152,200,205,217,218,220,232,240],[152,200,217,218,241],[152,200,217,218,220,242],[152,200,214,217,218,226,243],[152,200,205,217,218,244],[152,200,217,218,232,245],[152,200,217,218,219,246],[152,200,217,218,247],[152,193,200,217,218],[152,193,200,211,213,217,218,223,232,235,243,245,246,248],[152,200,217,218,232,249],[152,165,169,200,217,218,243],[152,165,200,217,218,232,243],[152,160,200,217,218],[152,162,165,200,217,218,240,243],[152,200,217,218,220,240],[152,200,217,218,250],[152,160,200,217,218,250],[152,162,165,200,217,218,220,243],[152,157,158,161,164,200,211,217,218,232,243],[152,165,172,200,217,218],[152,157,163,200,217,218],[152,165,186,187,200,217,218],[152,161,165,200,217,218,235,243,250],[152,186,200,217,218,250],[152,159,160,200,217,218,250],[152,165,200,217,218],[152,159,160,161,162,163,164,165,166,167,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,187,188,189,190,191,192,200,217,218],[152,165,180,200,217,218],[152,165,172,173,200,217,218],[152,163,165,173,174,200,217,218],[152,164,200,217,218],[152,157,160,165,200,217,218],[152,165,169,173,174,200,217,218],[152,169,200,217,218],[152,163,165,168,200,217,218,243],[152,157,162,165,172,200,217,218],[152,200,217,218,232],[152,160,165,186,200,217,218,248,250],[58,129,133,152,200,217,218],[58,129,133,134,152,200,217,218],[58,129,133,135,136,137,152,200,217,218],[133,134,135,136,137,138,139,140,152,200,217,218],[129,133,152,200,217,218],[137,139,152,200,217,218],[133,139,152,200,217,218],[133,152,200,217,218],[129,130,152,200,217,218],[130,131,132,152,200,217,218],[129,152,200,217,218],[129,130,131,152,200,217,218],[129,141,152,197,200,212,217,218,237],[58,129,133,141,152,197,200,212,217,218,237],[129,133,141,152,197,200,212,217,218,237]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"6aa3ca1e17bab75a3b6bfd668b96c9abebb6417f7212576756b0ea9c5cc5c0a5","impliedFormat":1},{"version":"df9c2f994fe32633a874bfb5b069ae13a2f1ab42bde8d4ac8387449720ab3c6f","impliedFormat":99},{"version":"6e1413ff47748cb94a063101279f072ec1b139d8c4aa6ea48ca8efb288003321","impliedFormat":99},{"version":"19484418f946af7ff20c1e20b7419c09a9ec4961688c89b73cd2b6032295d8ea","impliedFormat":99},{"version":"a84adbdf45c250374b660c12e3a435d8cb40d4b5feb3bef63cff0ab91876657b","impliedFormat":99},{"version":"b9b1ab11c7731a316fa67d284bd75228da5ca7cf33ea8cecbbe05900dd70c973","impliedFormat":99},{"version":"f9bad94b8bfa9b851c1ddfcaaf842b55f0e3a2953a1b06ee956de1fcb4165b24","impliedFormat":99},{"version":"e0be23db0ac98c5fccd7dfc363750f93d6b43deaf57f0c48990ea1447d88c655","impliedFormat":99},{"version":"49b49eb74c0b2fd0044a56ba3db976b6bd79122551bf8e53c78218629bebb32b","impliedFormat":99},{"version":"7a0d978384a81013516659f67358ae694e7ce7562cfe10c47e832e17ff34ebf2","impliedFormat":99},{"version":"c587b27eef79b009a0ed1c9e48d8ca4862f0035847d4e0cca97fda874c785bff","impliedFormat":99},{"version":"0012e18f677d0f31f64a70144673f8c2b7cf7bbc878e998eaacde4f5883b9b6b","impliedFormat":99},{"version":"0bc8a98fca1fa4c59bf82d8010a9936907b17581db542255b23adbd1fcb61462","impliedFormat":99},{"version":"57501bb5daf49c461d9afbadb22f2f998b8b0f61a6fe032d73aaf162ff2a8fa9","impliedFormat":99},{"version":"1464e053350727cddf1699737ecfb1f1ea4dbd0351719a7e6378bb195ddf000c","impliedFormat":99},{"version":"27a1206aa23b485ad381e0d258c9a8149d666401f580c9f0a7b033b8af005196","impliedFormat":99},{"version":"55374766329e1b5384d59aea0ee2e3befb9e0da174ad543fd701732b9c8b361d","impliedFormat":99},{"version":"86d4ff8ba66b5ea1df375fe6092d2b167682ccd5dd0d9b003a7d30d95a0cda32","impliedFormat":99},{"version":"f13b3a1249b976d047b9506a95e8f70c016670ddae256583b7a097e14ec1f041","impliedFormat":99},{"version":"014ba72e2add59d6d2d2e82166647982c824639e2902ccd7b3103cf720a0cb65","impliedFormat":99},{"version":"0932ab32b43893342fe9ab0989e1edf55bb7d5d391eacea1e7098bdf7aa60539","impliedFormat":99},{"version":"499b85df8e9141de47a8d76961fba4fbd96c17af0883a3ee5b9cba7eb0f26a5f","impliedFormat":99},{"version":"81bd63569f196167950a25641b9f6cbb461cdd2d84a511c922dc7c1046aa1dab","impliedFormat":99},{"version":"671ccab2e6a253d2516c0e4699b3077fc30cdb70b4436d8c79d76c91266a1a94","impliedFormat":99},{"version":"9b40cdceea5bb43a6e998cc6f8d47480741de5f336d9147653a5d9004175f6c1","impliedFormat":99},{"version":"e760f7860d08e9d42b6ecd7dd341602fbc0c13d60eb30beaf1153f1c7c44d66d","impliedFormat":99},{"version":"fb04e1ca667399e7302c033656cc285e6c1cff9c29f264cf229dd25e3962a762","impliedFormat":99},{"version":"e075c7b9fcd1b3ccbdb40d8421077adeea0e94f331c233c0947586b0bc98f8de","impliedFormat":99},{"version":"410e798cfb0d71e54d49284d16c7672db89720d017440abae05d547e9351e1cd","impliedFormat":99},{"version":"5ad576e13f58a0a2b5d4818dd13c16ec75b43025a14a89a7f09db3fe56c03d30","impliedFormat":99},{"version":"5668033966c8247576fc316629df131d6175d24ccf22940324c19c159671e1c1","impliedFormat":99},{"version":"c2f4c022fd9ba0d424d9a25e34748aab8417b71a655ab65e528a3b00ed90ce6d","impliedFormat":99},{"version":"de542f29565d1fbbf56a8569659f2ed61327027f1b78eb83e89d588f692b75f9","impliedFormat":99},{"version":"13902404b0a9593a2c2f9c78ac7464820129fe7e5a660ef53a5cc8f3701f8350","impliedFormat":99},{"version":"2484f21803a2f6d8e34230c1c4354288da5d842182d7102a49a004c819c4b8b3","impliedFormat":99},{"version":"50cf14b8f0fc2722c11794ca2a06565b1f29e266491da75c745894960ebbce06","impliedFormat":99},{"version":"cd8a4297d0ab56dc571dadd2845e558c9d979fe1e120a0dec537935bc8a36dd2","impliedFormat":99},{"version":"079a12cb0e0c42655d77da5185e882b4cc94bd5c6c2131171a9289fc1f4287fc","impliedFormat":99},{"version":"5dae1fbefdf74fea1e94193c2974aac846b23bf0e8ff68fed72f6bdf6ebe3200","impliedFormat":99},{"version":"40f42c27f6cf91185a68be52a9ff238a99945ed3f68b334bedd5c678ac4a1104","impliedFormat":99},{"version":"167edfac7664bec77aa2efb2ce9d515c41b5cc4269091a946b3fa6ec4e7e8738","impliedFormat":99},{"version":"7d793f091907f3ffcfc2b119e1124a46bd573d2a405262fbc5831c71a65f7459","impliedFormat":99},{"version":"48938c0c000d8f59021b8819c4673fbd87ea0cff31e5352d1211b78cbc23f9df","impliedFormat":99},{"version":"e1e837899820897455837d4161c7d8c09c23cbf49a5d0be2259b49c5df254618","impliedFormat":99},{"version":"192e2ef821d7b163719d5ecb01acb82b871ad1fa4bf7ee72dbccbca1535dc7ae","impliedFormat":99},{"version":"a08aa52e889823d542f595056eb000f58f540be89eb4e26d2e08496f4c1dba65","impliedFormat":99},{"version":"ff6c7e2ef78eeaaae2c87a45688a7297017189f8ab6b87a29556348164cb7a1f","impliedFormat":99},{"version":"7b1615fcfa2397fe944d40c0b64521ebe1afadefa39b3aea6a5552b093c4a461","impliedFormat":99},{"version":"647e1d0a723a7caa54487d50dbfd952f184a110899ce3f331f3c451f6fbd083f","impliedFormat":99},{"version":"effe24c379e404a2122c91ebed98935900169578c80a9751783331aac9d366ba","impliedFormat":99},{"version":"f3e1b25f084747563c447a37d984e73d4966563850d064472f855aa18d6949e9","impliedFormat":99},{"version":"562640a0449842e1fc2663d2d731740114629a156366a46d26c561811d879600","impliedFormat":99},{"version":"7304f667a37810123132fed738b4942f3af9bc33750f401fc72efe46fd21d872","impliedFormat":99},{"version":"4b8dd935b264b464080bf885b8de84a9c49032b1413833ca76b6dc52dbbbd65e","impliedFormat":99},{"version":"35acb6f6654e58d7e3c79b0c2e363208c87d5a19291b44b635ab179a2dea6b24","impliedFormat":99},{"version":"29df2f731facbab092c3b01d7d124150d6a814a7aecc84f5b525b4c1619659ba","impliedFormat":99},{"version":"7587a93e7812cb35c827e3b7dbd8a7d0325419bc01eb73aca0b9c50d01c4e0d9","impliedFormat":99},{"version":"89eefabd4175e7ec21328fa358fcb028eaeb58c28f98ed472fb5638f021b9cad","impliedFormat":99},{"version":"82708a8c3f3e7a6dcaea1fcb2491f828cb76ba8c148f3677104bdc49174d2be3","impliedFormat":99},{"version":"09c97de6d17bf379d1672e88ca6951c1bfbcb56620e2e53a752305211450dedd","impliedFormat":99},{"version":"c192d9c2f36ce1f7ff5b81bfc123182c1921ae77a2464ba85bf56c9ea19cad53","impliedFormat":99},{"version":"4c76c51a86d6f8d479adafe4f2d0e5c9bf835c8f3d46686365219d900378f819","impliedFormat":99},{"version":"6d60adfb9dca7c7ebb63b8e67d89fb8f2d1de9d374ac2ba36946f73c1f477962","impliedFormat":99},{"version":"c6add9fd452f7e870e9e116637dc69a33639154dad88101df4b44f92df853e68","impliedFormat":99},{"version":"be0c13be18e1d91eea94c651816291f0e36a350a26c9f3271aef963cd8c93f22","impliedFormat":99},{"version":"0b79b8de836a8cd8a51037c1228f2455cb9932dd96eb609a2b816a2f6967a06d","impliedFormat":99},{"version":"b959ed3cb822e3addf423926584b52bdf2f9eaa11e939243424706f598d94caa","impliedFormat":99},{"version":"f30ac9c2f7d1006ad92a9860bb40d2afefacaccdbb1c405487a7f516b4a0d91c","impliedFormat":99},{"version":"b26a895a01a54f5db2b6565f7440299ac558ed33f4d85bbc7e74e29c7c2ab626","impliedFormat":99},{"version":"0395ba532d02a07fd56c517e1a0523a00d121a421bbf1219e662deaa23c33219","impliedFormat":99},{"version":"1a0b6909b7232564485e37022a8bdcedf4d11662135d1e8cbd6982f8c68ff31b","impliedFormat":99},{"version":"77764f0f53cff69f83fa62db9c0c47ffdffb6aee8a47b29858c4ed85ec7677c6","impliedFormat":99},{"version":"ceccacd9445d43a453be2dfa352a3c9745fcdb7b04ee5350c9931741630da89a","signature":"b7eef6af0d23148173e3895af33c1caba56496195e70d5c2e3446579c54e39eb","impliedFormat":99},{"version":"20e62c222f7bed8293f770eb3e21e73d3bec6d207175bfe0f2584112a6383ee9","signature":"f6a872458c0b575a4e2b8a21816b5c9d640e900dbe73595adc1427424ec71f1f","impliedFormat":99},{"version":"50c25f99d84b9fe0713a7be52a32ac4ea0820e913d48b2bd42514867a0e8825b","signature":"db3b91ed23add3109fbf21dddbde79bdcaa4dde7483df4b18887fadf046adbcf","impliedFormat":99},{"version":"9468a6fa71b64e389f2ea1d843253cd5fb39a9dd75c549bc679d51f09b07ca01","signature":"5da5494184d3b052258dc432fbb2f154331f2fce953a1b935f198af11a4dba75","impliedFormat":99},{"version":"93b603774496f7b3edce4f2559a3c6d4204357dea027934ea0326cd3da97a396","signature":"90034cc03d6a99114c9220441bbfa1bac7c0ec795b7b3147e5802f084c0588a3","impliedFormat":99},{"version":"e309cbfb57462db1c098fa5522ed67b9d88b425249f03ddda992acf7755cd682","signature":"651b9d1750cc07badfb5d488a1c24cd1926b9e000ea77eb5fc3f819fb026e016","impliedFormat":99},{"version":"fc60daf110017404d63d51e751ba3afdbef7ce9081c00d7e89d3d1b98165071d","signature":"e9514c25c14870c9ac8660d82a9a8c66f15f2bc4d6995b7654a42cd72424fe5e","impliedFormat":99},{"version":"9cb4223724aa8e6fb7e1d089070861c106fc3cb924ef051d9438d8e5f60d853a","signature":"4e4bc8c75e1f80dff7156c26b5f7a8066a70a309d367b4809c4fcfeeebc7406c","impliedFormat":99},{"version":"e9d0e87fbbb75e6dac2bc88e2c1a05479bc0ab4e9b32a99ba9050bdb3cea7126","signature":"fdd6893660efef79b7b4458601fcde6e100196673e0c5078f30ee5f5363d1a89","impliedFormat":99},{"version":"d9afce70a64a89e66629cecce643d5e4c722e2436f6b5205e16926e2a1a85486","signature":"c2b0d966895e73888d6d1b701da9c707d2c11f66826118671590aefcaad1e382","impliedFormat":99},{"version":"4ce9a6af2531a8a29543a684494d0cf59408ee8e8bc38a7701d9aeb9e5f1eeb2","signature":"a17fd852973764f3dc44c5238df959aa8b3ca18b6345746fd762cf6db1a14f82","impliedFormat":99},{"version":"647258702d4d06d96eb373ae73bdb86dc6e0a38083cb980c0572f2003e5f52bf","signature":"13aea31967ac00d3f32efbe604511cb0f2d300826e6388a3b3998e9f3cd2a995","impliedFormat":99},{"version":"fa4782758fcc0f454b2abc3429a633f1bbb83d7d73f6bb6bfccb6822e3a79235","impliedFormat":99},{"version":"a2e513ed359913c7b24ad9a896b8d0e5225616b914bd1529d2eb19b2cbc0f66e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"cb260911de01fe99cbbfe629721cfe1706ecbb0aeaf9c917b6e328603129eb8c","signature":"8ecbd5b7ec9a6dff4da7aff86cd17fbe36a3862c459bc8a6660ee4ae92eca4f0","impliedFormat":99},{"version":"9d4582c7e6ad0035174fb8b7753a05b00486843db372863e2c4071ba400ead37","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"792dc765b2a549976feee2ac21aa00b9fad20f0b2193c40a410441f556282274","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"58647d85d0f722a1ce9de50955df60a7489f0593bf1a7015521efe901c06d770","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"83e63d6ccf8ec004a3bb6d58b9bb0104f60e002754b1e968024b320730cc5311","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"bceb58df66ab8fb00170df20cd813978c5ab84be1d285710c4eb005d8e9d8efb","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b039f55681caaf111d5eb84d292b9bee9e0131d0db1ad0871eef0964f533c73","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c8d3e5a18ba35629954e48c4cc8f11dc88224650067a172685c736b27a34a4dc","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"2b55d426ff2b9087485e52ac4bc7cfafe1dc420fc76dad926cd46526567c501a","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"358765d5ea8afd285d4fd1532e78b88273f18cb3f87403a9b16fef61ac9fdcfe","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1}],"root":[[130,146]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":199,"outDir":"./","rootDir":"..","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9},"referencedMap":[[58,1],[128,2],[127,3],[126,4],[122,5],[124,5],[125,6],[123,5],[66,7],[129,8],[72,9],[110,10],[116,11],[117,11],[119,12],[115,13],[113,11],[114,11],[118,11],[112,11],[111,11],[73,11],[74,14],[70,15],[59,1],[69,1],[71,16],[60,17],[64,1],[62,18],[63,19],[67,20],[61,1],[68,21],[121,22],[65,23],[120,11],[108,24],[84,25],[82,1],[85,26],[90,27],[79,28],[88,29],[93,30],[109,31],[75,1],[95,32],[94,1],[77,1],[83,33],[80,34],[78,1],[87,35],[76,1],[86,36],[81,37],[102,38],[99,39],[104,40],[91,41],[101,42],[103,43],[92,44],[105,45],[107,46],[98,47],[96,48],[97,49],[100,50],[106,44],[89,1],[197,51],[198,51],[199,52],[152,53],[200,54],[201,55],[202,56],[147,1],[150,57],[148,1],[149,1],[203,58],[204,59],[205,60],[206,61],[207,62],[208,63],[209,63],[210,64],[211,65],[212,66],[213,67],[153,1],[151,1],[214,68],[215,69],[216,70],[250,71],[217,72],[218,1],[219,73],[220,74],[221,75],[222,76],[223,77],[224,78],[225,79],[226,80],[227,81],[228,81],[229,82],[230,1],[231,83],[232,84],[234,85],[233,86],[235,87],[236,88],[237,89],[238,90],[239,91],[240,92],[241,93],[242,94],[243,95],[244,96],[245,97],[246,98],[247,99],[154,1],[155,1],[156,1],[194,100],[195,1],[196,1],[248,101],[249,102],[56,1],[57,1],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[20,1],[21,1],[4,1],[22,1],[26,1],[23,1],[24,1],[25,1],[27,1],[28,1],[29,1],[5,1],[30,1],[31,1],[32,1],[33,1],[6,1],[37,1],[34,1],[35,1],[36,1],[38,1],[7,1],[39,1],[44,1],[45,1],[40,1],[41,1],[42,1],[43,1],[8,1],[49,1],[46,1],[47,1],[48,1],[50,1],[9,1],[51,1],[52,1],[53,1],[55,1],[54,1],[1,1],[172,103],[182,104],[171,103],[192,105],[163,106],[162,107],[191,108],[185,109],[190,110],[165,111],[179,112],[164,113],[188,114],[160,115],[159,108],[189,116],[161,117],[166,118],[167,1],[170,118],[157,1],[193,119],[183,120],[174,121],[175,122],[177,123],[173,124],[176,125],[186,108],[168,126],[169,127],[178,128],[158,129],[181,120],[180,118],[184,1],[187,130],[134,131],[135,132],[138,133],[141,134],[136,132],[139,135],[142,136],[140,137],[137,138],[131,139],[133,140],[130,141],[132,142],[143,143],[144,143],[145,144],[146,145]],"latestChangedDtsFile":"./test/knowledge.test.d.ts","version":"5.9.3"}
1
+ {"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@animalabs/chronicle/index.d.ts","../node_modules/@animalabs/membrane/dist/types/content.d.ts","../node_modules/@animalabs/membrane/dist/types/message.d.ts","../node_modules/@animalabs/membrane/dist/types/tools.d.ts","../node_modules/@animalabs/membrane/dist/types/request.d.ts","../node_modules/@animalabs/membrane/dist/types/response.d.ts","../node_modules/@animalabs/membrane/dist/types/provider.d.ts","../node_modules/@animalabs/membrane/dist/utils/stream-parser.d.ts","../node_modules/@animalabs/membrane/dist/formatters/types.d.ts","../node_modules/@animalabs/membrane/dist/types/streaming.d.ts","../node_modules/@animalabs/membrane/dist/types/yielding-stream.d.ts","../node_modules/@animalabs/membrane/dist/types/errors.d.ts","../node_modules/@animalabs/membrane/dist/types/config.d.ts","../node_modules/@animalabs/membrane/dist/types/index.d.ts","../node_modules/@animalabs/membrane/dist/membrane.d.ts","../node_modules/@animalabs/membrane/dist/transforms/chat.d.ts","../node_modules/@animalabs/membrane/dist/transforms/index.d.ts","../node_modules/@anthropic-ai/sdk/internal/builtin-types.d.mts","../node_modules/@anthropic-ai/sdk/internal/types.d.mts","../node_modules/@anthropic-ai/sdk/internal/headers.d.mts","../node_modules/@anthropic-ai/sdk/internal/shim-types.d.mts","../node_modules/@anthropic-ai/sdk/core/streaming.d.mts","../node_modules/@anthropic-ai/sdk/internal/request-options.d.mts","../node_modules/@anthropic-ai/sdk/internal/utils/log.d.mts","../node_modules/@anthropic-ai/sdk/core/error.d.mts","../node_modules/@anthropic-ai/sdk/internal/parse.d.mts","../node_modules/@anthropic-ai/sdk/core/api-promise.d.mts","../node_modules/@anthropic-ai/sdk/core/pagination.d.mts","../node_modules/@anthropic-ai/sdk/internal/uploads.d.mts","../node_modules/@anthropic-ai/sdk/internal/to-file.d.mts","../node_modules/@anthropic-ai/sdk/core/uploads.d.mts","../node_modules/@anthropic-ai/sdk/resources/shared.d.mts","../node_modules/@anthropic-ai/sdk/core/resource.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/files.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/models.d.mts","../node_modules/@anthropic-ai/sdk/error.d.mts","../node_modules/@anthropic-ai/sdk/internal/decoders/line.d.mts","../node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages/batches.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages/index.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages.d.mts","../node_modules/@anthropic-ai/sdk/lib/MessageStream.d.mts","../node_modules/@anthropic-ai/sdk/resources/messages/messages.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.d.mts","../node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.mts","../node_modules/@anthropic-ai/sdk/resources/beta/beta.d.mts","../node_modules/@anthropic-ai/sdk/resources/completions.d.mts","../node_modules/@anthropic-ai/sdk/resources/models.d.mts","../node_modules/@anthropic-ai/sdk/resources/index.d.mts","../node_modules/@anthropic-ai/sdk/client.d.mts","../node_modules/@anthropic-ai/sdk/index.d.mts","../node_modules/@animalabs/membrane/dist/providers/anthropic.d.ts","../node_modules/@animalabs/membrane/dist/providers/openrouter.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai-compatible.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai-completions.d.ts","../node_modules/@animalabs/membrane/dist/providers/mock.d.ts","../node_modules/@animalabs/membrane/dist/providers/bedrock.d.ts","../node_modules/@animalabs/membrane/dist/providers/gemini.d.ts","../node_modules/@animalabs/membrane/dist/providers/openai-responses.d.ts","../node_modules/@animalabs/membrane/dist/providers/index.d.ts","../node_modules/@animalabs/membrane/dist/utils/tool-parser.d.ts","../node_modules/@animalabs/membrane/dist/utils/index.d.ts","../node_modules/@animalabs/membrane/dist/formatters/anthropic-xml.d.ts","../node_modules/@animalabs/membrane/dist/formatters/native.d.ts","../node_modules/@animalabs/membrane/dist/formatters/completions.d.ts","../node_modules/@animalabs/membrane/dist/formatters/index.d.ts","../node_modules/@animalabs/membrane/dist/context/types.d.ts","../node_modules/@animalabs/membrane/dist/context/process.d.ts","../node_modules/@animalabs/membrane/dist/context/index.d.ts","../node_modules/@animalabs/membrane/dist/index.d.ts","../src/types/message.ts","../src/types/context.ts","../src/types/strategy.ts","../src/types/index.ts","../src/blob-manager.ts","../src/context-log.ts","../src/message-store.ts","../src/strategies/passthrough.ts","../src/context-manager.ts","../src/strategies/autobiographical.ts","../src/strategies/knowledge.ts","../src/index.ts","../src/strategies/index.ts","../test/autobiographical.test.ts","../test/head-window-reset.test.ts","../test/integration.test.ts","../test/knowledge.test.ts","../test/recent-window-eviction.test.ts","../node_modules/@types/node/compatibility/disposable.d.ts","../node_modules/@types/node/compatibility/indexable.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/compatibility/index.d.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/domexception.d.ts","../node_modules/@types/node/web-globals/events.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.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.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/agent.d.ts","../node_modules/undici-types/mock-interceptor.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/mock-errors.d.ts","../node_modules/undici-types/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/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/filereader.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/navigator.d.ts","../node_modules/@types/node/web-globals/storage.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/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/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.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/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/promises.d.ts","../node_modules/@types/node/stream/consumers.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/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/v8.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/index.d.ts"],"fileIdsList":[[153,201,218,219],[126,127,153,201,218,219],[71,72,126,153,201,218,219],[61,63,71,153,201,218,219],[66,71,153,201,218,219],[66,122,123,124,153,201,218,219],[65,67,71,153,201,218,219],[71,72,74,119,121,125,128,153,201,218,219],[68,71,153,201,218,219],[71,109,153,201,218,219],[71,153,201,218,219],[110,111,112,113,114,115,116,117,118,153,201,218,219],[64,153,201,218,219],[73,153,201,218,219],[62,63,64,66,69,153,201,218,219],[59,60,61,62,63,64,67,68,69,70,153,201,218,219],[59,153,201,218,219],[60,61,153,201,218,219],[59,61,153,201,218,219],[59,61,63,66,153,201,218,219],[59,61,63,67,153,201,218,219],[120,153,201,218,219],[67,153,201,218,219],[75,76,77,80,81,82,84,85,88,100,104,105,106,107,153,201,218,219],[76,83,108,153,201,218,219],[80,83,84,108,153,201,218,219],[108,153,201,218,219],[78,153,201,218,219],[86,87,153,201,218,219],[82,153,201,218,219],[82,84,85,88,108,153,201,218,219],[94,153,201,218,219],[80,85,108,153,201,218,219],[75,76,77,79,153,201,218,219],[75,153,201,218,219],[75,80,108,153,201,218,219],[80,108,153,201,218,219],[78,80,93,103,153,201,218,219],[78,80,93,98,153,201,218,219],[90,91,92,103,153,201,218,219],[80,84,85,88,90,104,153,201,218,219],[80,84,85,90,95,103,104,153,201,218,219],[79,80,84,90,100,101,102,103,104,153,201,218,219],[80,84,85,90,104,153,201,218,219],[79,80,84,90,100,104,105,153,201,218,219],[89,100,104,105,106,153,201,218,219],[97,153,201,218,219],[80,84,85,89,90,95,100,153,201,218,219],[96,100,153,201,218,219],[79,80,84,90,96,99,100,153,201,218,219],[153,198,199,201,218,219],[153,200,201,218,219],[201,218,219],[153,201,206,218,219,236],[153,201,202,207,212,218,219,221,233,244],[153,201,202,203,212,218,219,221],[148,149,150,153,201,218,219],[153,201,204,218,219,245],[153,201,205,206,213,218,219,222],[153,201,206,218,219,233,241],[153,201,207,209,212,218,219,221],[153,200,201,208,218,219],[153,201,209,210,218,219],[153,201,211,212,218,219],[153,200,201,212,218,219],[153,201,212,213,214,218,219,233,244],[153,201,212,213,214,218,219,228,233,236],[153,194,201,209,212,215,218,219,221,233,244],[153,201,212,213,215,216,218,219,221,233,241,244],[153,201,215,217,218,219,233,241,244],[151,152,153,154,155,156,157,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[153,201,212,218,219],[153,201,218,219,220,244],[153,201,209,212,218,219,221,233],[153,201,218,219,222],[153,201,218,219,223],[153,200,201,218,219,224],[153,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[153,201,218,219,226],[153,201,218,219,227],[153,201,212,218,219,228,229],[153,201,218,219,228,230,245,247],[153,201,213,218,219],[153,201,212,218,219,233,234,236],[153,201,218,219,235,236],[153,201,218,219,233,234],[153,201,218,219,236],[153,201,218,219,237],[153,198,201,218,219,233,238,244],[153,201,212,218,219,239,240],[153,201,218,219,239,240],[153,201,206,218,219,221,233,241],[153,201,218,219,242],[153,201,218,219,221,243],[153,201,215,218,219,227,244],[153,201,206,218,219,245],[153,201,218,219,233,246],[153,201,218,219,220,247],[153,201,218,219,248],[153,194,201,218,219],[153,194,201,212,214,218,219,224,233,236,244,246,247,249],[153,201,218,219,233,250],[153,166,170,201,218,219,244],[153,166,201,218,219,233,244],[153,161,201,218,219],[153,163,166,201,218,219,241,244],[153,201,218,219,221,241],[153,201,218,219,251],[153,161,201,218,219,251],[153,163,166,201,218,219,221,244],[153,158,159,162,165,201,212,218,219,233,244],[153,166,173,201,218,219],[153,158,164,201,218,219],[153,166,187,188,201,218,219],[153,162,166,201,218,219,236,244,251],[153,187,201,218,219,251],[153,160,161,201,218,219,251],[153,166,201,218,219],[153,160,161,162,163,164,165,166,167,168,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,188,189,190,191,192,193,201,218,219],[153,166,181,201,218,219],[153,166,173,174,201,218,219],[153,164,166,174,175,201,218,219],[153,165,201,218,219],[153,158,161,166,201,218,219],[153,166,170,174,175,201,218,219],[153,170,201,218,219],[153,164,166,169,201,218,219,244],[153,158,163,166,173,201,218,219],[153,201,218,219,233],[153,161,166,187,201,218,219,249,251],[58,129,133,153,201,218,219],[58,129,133,134,153,201,218,219],[58,129,133,135,136,137,153,201,218,219],[133,134,135,136,137,138,139,140,153,201,218,219],[129,133,153,201,218,219],[137,139,153,201,218,219],[133,139,153,201,218,219],[133,153,201,218,219],[129,130,153,201,218,219],[130,131,132,153,201,218,219],[129,153,201,218,219],[129,130,131,153,201,218,219],[129,141,153,198,201,213,218,219,238],[58,129,133,141,153,198,201,213,218,219,238],[129,133,141,153,198,201,213,218,219,238]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"6aa3ca1e17bab75a3b6bfd668b96c9abebb6417f7212576756b0ea9c5cc5c0a5","impliedFormat":1},{"version":"df9c2f994fe32633a874bfb5b069ae13a2f1ab42bde8d4ac8387449720ab3c6f","impliedFormat":99},{"version":"6e1413ff47748cb94a063101279f072ec1b139d8c4aa6ea48ca8efb288003321","impliedFormat":99},{"version":"19484418f946af7ff20c1e20b7419c09a9ec4961688c89b73cd2b6032295d8ea","impliedFormat":99},{"version":"a84adbdf45c250374b660c12e3a435d8cb40d4b5feb3bef63cff0ab91876657b","impliedFormat":99},{"version":"b9b1ab11c7731a316fa67d284bd75228da5ca7cf33ea8cecbbe05900dd70c973","impliedFormat":99},{"version":"f9bad94b8bfa9b851c1ddfcaaf842b55f0e3a2953a1b06ee956de1fcb4165b24","impliedFormat":99},{"version":"e0be23db0ac98c5fccd7dfc363750f93d6b43deaf57f0c48990ea1447d88c655","impliedFormat":99},{"version":"49b49eb74c0b2fd0044a56ba3db976b6bd79122551bf8e53c78218629bebb32b","impliedFormat":99},{"version":"7a0d978384a81013516659f67358ae694e7ce7562cfe10c47e832e17ff34ebf2","impliedFormat":99},{"version":"c587b27eef79b009a0ed1c9e48d8ca4862f0035847d4e0cca97fda874c785bff","impliedFormat":99},{"version":"0012e18f677d0f31f64a70144673f8c2b7cf7bbc878e998eaacde4f5883b9b6b","impliedFormat":99},{"version":"0bc8a98fca1fa4c59bf82d8010a9936907b17581db542255b23adbd1fcb61462","impliedFormat":99},{"version":"57501bb5daf49c461d9afbadb22f2f998b8b0f61a6fe032d73aaf162ff2a8fa9","impliedFormat":99},{"version":"1464e053350727cddf1699737ecfb1f1ea4dbd0351719a7e6378bb195ddf000c","impliedFormat":99},{"version":"27a1206aa23b485ad381e0d258c9a8149d666401f580c9f0a7b033b8af005196","impliedFormat":99},{"version":"55374766329e1b5384d59aea0ee2e3befb9e0da174ad543fd701732b9c8b361d","impliedFormat":99},{"version":"86d4ff8ba66b5ea1df375fe6092d2b167682ccd5dd0d9b003a7d30d95a0cda32","impliedFormat":99},{"version":"f13b3a1249b976d047b9506a95e8f70c016670ddae256583b7a097e14ec1f041","impliedFormat":99},{"version":"014ba72e2add59d6d2d2e82166647982c824639e2902ccd7b3103cf720a0cb65","impliedFormat":99},{"version":"0932ab32b43893342fe9ab0989e1edf55bb7d5d391eacea1e7098bdf7aa60539","impliedFormat":99},{"version":"499b85df8e9141de47a8d76961fba4fbd96c17af0883a3ee5b9cba7eb0f26a5f","impliedFormat":99},{"version":"81bd63569f196167950a25641b9f6cbb461cdd2d84a511c922dc7c1046aa1dab","impliedFormat":99},{"version":"671ccab2e6a253d2516c0e4699b3077fc30cdb70b4436d8c79d76c91266a1a94","impliedFormat":99},{"version":"9b40cdceea5bb43a6e998cc6f8d47480741de5f336d9147653a5d9004175f6c1","impliedFormat":99},{"version":"e760f7860d08e9d42b6ecd7dd341602fbc0c13d60eb30beaf1153f1c7c44d66d","impliedFormat":99},{"version":"fb04e1ca667399e7302c033656cc285e6c1cff9c29f264cf229dd25e3962a762","impliedFormat":99},{"version":"e075c7b9fcd1b3ccbdb40d8421077adeea0e94f331c233c0947586b0bc98f8de","impliedFormat":99},{"version":"410e798cfb0d71e54d49284d16c7672db89720d017440abae05d547e9351e1cd","impliedFormat":99},{"version":"5ad576e13f58a0a2b5d4818dd13c16ec75b43025a14a89a7f09db3fe56c03d30","impliedFormat":99},{"version":"5668033966c8247576fc316629df131d6175d24ccf22940324c19c159671e1c1","impliedFormat":99},{"version":"c2f4c022fd9ba0d424d9a25e34748aab8417b71a655ab65e528a3b00ed90ce6d","impliedFormat":99},{"version":"de542f29565d1fbbf56a8569659f2ed61327027f1b78eb83e89d588f692b75f9","impliedFormat":99},{"version":"13902404b0a9593a2c2f9c78ac7464820129fe7e5a660ef53a5cc8f3701f8350","impliedFormat":99},{"version":"2484f21803a2f6d8e34230c1c4354288da5d842182d7102a49a004c819c4b8b3","impliedFormat":99},{"version":"50cf14b8f0fc2722c11794ca2a06565b1f29e266491da75c745894960ebbce06","impliedFormat":99},{"version":"cd8a4297d0ab56dc571dadd2845e558c9d979fe1e120a0dec537935bc8a36dd2","impliedFormat":99},{"version":"079a12cb0e0c42655d77da5185e882b4cc94bd5c6c2131171a9289fc1f4287fc","impliedFormat":99},{"version":"5dae1fbefdf74fea1e94193c2974aac846b23bf0e8ff68fed72f6bdf6ebe3200","impliedFormat":99},{"version":"40f42c27f6cf91185a68be52a9ff238a99945ed3f68b334bedd5c678ac4a1104","impliedFormat":99},{"version":"167edfac7664bec77aa2efb2ce9d515c41b5cc4269091a946b3fa6ec4e7e8738","impliedFormat":99},{"version":"7d793f091907f3ffcfc2b119e1124a46bd573d2a405262fbc5831c71a65f7459","impliedFormat":99},{"version":"48938c0c000d8f59021b8819c4673fbd87ea0cff31e5352d1211b78cbc23f9df","impliedFormat":99},{"version":"e1e837899820897455837d4161c7d8c09c23cbf49a5d0be2259b49c5df254618","impliedFormat":99},{"version":"192e2ef821d7b163719d5ecb01acb82b871ad1fa4bf7ee72dbccbca1535dc7ae","impliedFormat":99},{"version":"a08aa52e889823d542f595056eb000f58f540be89eb4e26d2e08496f4c1dba65","impliedFormat":99},{"version":"ff6c7e2ef78eeaaae2c87a45688a7297017189f8ab6b87a29556348164cb7a1f","impliedFormat":99},{"version":"7b1615fcfa2397fe944d40c0b64521ebe1afadefa39b3aea6a5552b093c4a461","impliedFormat":99},{"version":"647e1d0a723a7caa54487d50dbfd952f184a110899ce3f331f3c451f6fbd083f","impliedFormat":99},{"version":"effe24c379e404a2122c91ebed98935900169578c80a9751783331aac9d366ba","impliedFormat":99},{"version":"f3e1b25f084747563c447a37d984e73d4966563850d064472f855aa18d6949e9","impliedFormat":99},{"version":"562640a0449842e1fc2663d2d731740114629a156366a46d26c561811d879600","impliedFormat":99},{"version":"7304f667a37810123132fed738b4942f3af9bc33750f401fc72efe46fd21d872","impliedFormat":99},{"version":"4b8dd935b264b464080bf885b8de84a9c49032b1413833ca76b6dc52dbbbd65e","impliedFormat":99},{"version":"35acb6f6654e58d7e3c79b0c2e363208c87d5a19291b44b635ab179a2dea6b24","impliedFormat":99},{"version":"29df2f731facbab092c3b01d7d124150d6a814a7aecc84f5b525b4c1619659ba","impliedFormat":99},{"version":"7587a93e7812cb35c827e3b7dbd8a7d0325419bc01eb73aca0b9c50d01c4e0d9","impliedFormat":99},{"version":"89eefabd4175e7ec21328fa358fcb028eaeb58c28f98ed472fb5638f021b9cad","impliedFormat":99},{"version":"82708a8c3f3e7a6dcaea1fcb2491f828cb76ba8c148f3677104bdc49174d2be3","impliedFormat":99},{"version":"09c97de6d17bf379d1672e88ca6951c1bfbcb56620e2e53a752305211450dedd","impliedFormat":99},{"version":"c192d9c2f36ce1f7ff5b81bfc123182c1921ae77a2464ba85bf56c9ea19cad53","impliedFormat":99},{"version":"4c76c51a86d6f8d479adafe4f2d0e5c9bf835c8f3d46686365219d900378f819","impliedFormat":99},{"version":"6d60adfb9dca7c7ebb63b8e67d89fb8f2d1de9d374ac2ba36946f73c1f477962","impliedFormat":99},{"version":"c6add9fd452f7e870e9e116637dc69a33639154dad88101df4b44f92df853e68","impliedFormat":99},{"version":"be0c13be18e1d91eea94c651816291f0e36a350a26c9f3271aef963cd8c93f22","impliedFormat":99},{"version":"0b79b8de836a8cd8a51037c1228f2455cb9932dd96eb609a2b816a2f6967a06d","impliedFormat":99},{"version":"b959ed3cb822e3addf423926584b52bdf2f9eaa11e939243424706f598d94caa","impliedFormat":99},{"version":"f30ac9c2f7d1006ad92a9860bb40d2afefacaccdbb1c405487a7f516b4a0d91c","impliedFormat":99},{"version":"b26a895a01a54f5db2b6565f7440299ac558ed33f4d85bbc7e74e29c7c2ab626","impliedFormat":99},{"version":"0395ba532d02a07fd56c517e1a0523a00d121a421bbf1219e662deaa23c33219","impliedFormat":99},{"version":"1a0b6909b7232564485e37022a8bdcedf4d11662135d1e8cbd6982f8c68ff31b","impliedFormat":99},{"version":"77764f0f53cff69f83fa62db9c0c47ffdffb6aee8a47b29858c4ed85ec7677c6","impliedFormat":99},{"version":"ceccacd9445d43a453be2dfa352a3c9745fcdb7b04ee5350c9931741630da89a","signature":"b7eef6af0d23148173e3895af33c1caba56496195e70d5c2e3446579c54e39eb","impliedFormat":99},{"version":"20e62c222f7bed8293f770eb3e21e73d3bec6d207175bfe0f2584112a6383ee9","signature":"f6a872458c0b575a4e2b8a21816b5c9d640e900dbe73595adc1427424ec71f1f","impliedFormat":99},{"version":"50c25f99d84b9fe0713a7be52a32ac4ea0820e913d48b2bd42514867a0e8825b","signature":"db3b91ed23add3109fbf21dddbde79bdcaa4dde7483df4b18887fadf046adbcf","impliedFormat":99},{"version":"9468a6fa71b64e389f2ea1d843253cd5fb39a9dd75c549bc679d51f09b07ca01","signature":"5da5494184d3b052258dc432fbb2f154331f2fce953a1b935f198af11a4dba75","impliedFormat":99},{"version":"93b603774496f7b3edce4f2559a3c6d4204357dea027934ea0326cd3da97a396","signature":"90034cc03d6a99114c9220441bbfa1bac7c0ec795b7b3147e5802f084c0588a3","impliedFormat":99},{"version":"e309cbfb57462db1c098fa5522ed67b9d88b425249f03ddda992acf7755cd682","signature":"651b9d1750cc07badfb5d488a1c24cd1926b9e000ea77eb5fc3f819fb026e016","impliedFormat":99},{"version":"fc60daf110017404d63d51e751ba3afdbef7ce9081c00d7e89d3d1b98165071d","signature":"e9514c25c14870c9ac8660d82a9a8c66f15f2bc4d6995b7654a42cd72424fe5e","impliedFormat":99},{"version":"9cb4223724aa8e6fb7e1d089070861c106fc3cb924ef051d9438d8e5f60d853a","signature":"4e4bc8c75e1f80dff7156c26b5f7a8066a70a309d367b4809c4fcfeeebc7406c","impliedFormat":99},{"version":"e9d0e87fbbb75e6dac2bc88e2c1a05479bc0ab4e9b32a99ba9050bdb3cea7126","signature":"fdd6893660efef79b7b4458601fcde6e100196673e0c5078f30ee5f5363d1a89","impliedFormat":99},{"version":"045a71b8147263e0d7abbfb7a0cfec7d1a9f6d1d3b6d2e7269560007b6d156ff","signature":"1a3743301d56ed09ee4101395b833792394d375e8010a297159e62da63ef8a3b","impliedFormat":99},{"version":"4ce9a6af2531a8a29543a684494d0cf59408ee8e8bc38a7701d9aeb9e5f1eeb2","signature":"a17fd852973764f3dc44c5238df959aa8b3ca18b6345746fd762cf6db1a14f82","impliedFormat":99},{"version":"647258702d4d06d96eb373ae73bdb86dc6e0a38083cb980c0572f2003e5f52bf","signature":"13aea31967ac00d3f32efbe604511cb0f2d300826e6388a3b3998e9f3cd2a995","impliedFormat":99},{"version":"fa4782758fcc0f454b2abc3429a633f1bbb83d7d73f6bb6bfccb6822e3a79235","impliedFormat":99},{"version":"a2e513ed359913c7b24ad9a896b8d0e5225616b914bd1529d2eb19b2cbc0f66e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"cb260911de01fe99cbbfe629721cfe1706ecbb0aeaf9c917b6e328603129eb8c","signature":"8ecbd5b7ec9a6dff4da7aff86cd17fbe36a3862c459bc8a6660ee4ae92eca4f0","impliedFormat":99},{"version":"9d4582c7e6ad0035174fb8b7753a05b00486843db372863e2c4071ba400ead37","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"792dc765b2a549976feee2ac21aa00b9fad20f0b2193c40a410441f556282274","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"223dba03c8f3847014832a74000888943ce4c16fc6906e525339c501ec25d223","signature":"86082fd2a81b6a9ee15a3f71732fa666a5be39b4cc7faa09ae72bef65f901776","impliedFormat":99},{"version":"6c7176368037af28cb72f2392010fa1cef295d6d6744bca8cfb54985f3a18c3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"437e20f2ba32abaeb7985e0afe0002de1917bc74e949ba585e49feba65da6ca1","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"98cffbf06d6bab333473c70a893770dbe990783904002c4f1a960447b4b53dca","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"808069bba06b6768b62fd22429b53362e7af342da4a236ed2d2e1c89fcca3b4a","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"b52476feb4a0cbcb25e5931b930fc73cb6643fb1a5060bf8a3dda0eeae5b4b68","affectsGlobalScope":true,"impliedFormat":1},{"version":"f9501cc13ce624c72b61f12b3963e84fad210fbdf0ffbc4590e08460a3f04eba","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fa06ada475b910e2106c98c68b10483dc8811d0c14a8a8dd36efb2672485b29","impliedFormat":1},{"version":"33e5e9aba62c3193d10d1d33ae1fa75c46a1171cf76fef750777377d53b0303f","impliedFormat":1},{"version":"2b06b93fd01bcd49d1a6bd1f9b65ddcae6480b9a86e9061634d6f8e354c1468f","impliedFormat":1},{"version":"6a0cd27e5dc2cfbe039e731cf879d12b0e2dded06d1b1dedad07f7712de0d7f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"13f5c844119c43e51ce777c509267f14d6aaf31eafb2c2b002ca35584cd13b29","impliedFormat":1},{"version":"e60477649d6ad21542bd2dc7e3d9ff6853d0797ba9f689ba2f6653818999c264","impliedFormat":1},{"version":"c2510f124c0293ab80b1777c44d80f812b75612f297b9857406468c0f4dafe29","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4c829ab315f57c5442c6667b53769975acbf92003a66aef19bce151987675bd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"b2ade7657e2db96d18315694789eff2ddd3d8aea7215b181f8a0b303277cc579","impliedFormat":1},{"version":"9855e02d837744303391e5623a531734443a5f8e6e8755e018c41d63ad797db2","impliedFormat":1},{"version":"4d631b81fa2f07a0e63a9a143d6a82c25c5f051298651a9b69176ba28930756d","impliedFormat":1},{"version":"836a356aae992ff3c28a0212e3eabcb76dd4b0cc06bcb9607aeef560661b860d","impliedFormat":1},{"version":"1e0d1f8b0adfa0b0330e028c7941b5a98c08b600efe7f14d2d2a00854fb2f393","impliedFormat":1},{"version":"41670ee38943d9cbb4924e436f56fc19ee94232bc96108562de1a734af20dc2c","affectsGlobalScope":true,"impliedFormat":1},{"version":"c906fb15bd2aabc9ed1e3f44eb6a8661199d6c320b3aa196b826121552cb3695","impliedFormat":1},{"version":"22295e8103f1d6d8ea4b5d6211e43421fe4564e34d0dd8e09e520e452d89e659","impliedFormat":1},{"version":"58647d85d0f722a1ce9de50955df60a7489f0593bf1a7015521efe901c06d770","impliedFormat":1},{"version":"6b4e081d55ac24fc8a4631d5dd77fe249fa25900abd7d046abb87d90e3b45645","impliedFormat":1},{"version":"a10f0e1854f3316d7ee437b79649e5a6ae3ae14ffe6322b02d4987071a95362e","impliedFormat":1},{"version":"e208f73ef6a980104304b0d2ca5f6bf1b85de6009d2c7e404028b875020fa8f2","impliedFormat":1},{"version":"d163b6bc2372b4f07260747cbc6c0a6405ab3fbcea3852305e98ac43ca59f5bc","impliedFormat":1},{"version":"e6fa9ad47c5f71ff733744a029d1dc472c618de53804eae08ffc243b936f87ff","affectsGlobalScope":true,"impliedFormat":1},{"version":"83e63d6ccf8ec004a3bb6d58b9bb0104f60e002754b1e968024b320730cc5311","impliedFormat":1},{"version":"24826ed94a78d5c64bd857570fdbd96229ad41b5cb654c08d75a9845e3ab7dde","impliedFormat":1},{"version":"8b479a130ccb62e98f11f136d3ac80f2984fdc07616516d29881f3061f2dd472","impliedFormat":1},{"version":"928af3d90454bf656a52a48679f199f64c1435247d6189d1caf4c68f2eaf921f","affectsGlobalScope":true,"impliedFormat":1},{"version":"bceb58df66ab8fb00170df20cd813978c5ab84be1d285710c4eb005d8e9d8efb","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f16a7e4deafa527ed9995a772bb380eb7d3c2c0fd4ae178c5263ed18394db2c","impliedFormat":1},{"version":"933921f0bb0ec12ef45d1062a1fc0f27635318f4d294e4d99de9a5493e618ca2","impliedFormat":1},{"version":"71a0f3ad612c123b57239a7749770017ecfe6b66411488000aba83e4546fde25","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"4f9d8ca0c417b67b69eeb54c7ca1bedd7b56034bb9bfd27c5d4f3bc4692daca7","impliedFormat":1},{"version":"814118df420c4e38fe5ae1b9a3bafb6e9c2aa40838e528cde908381867be6466","impliedFormat":1},{"version":"a3fc63c0d7b031693f665f5494412ba4b551fe644ededccc0ab5922401079c95","impliedFormat":1},{"version":"f27524f4bef4b6519c604bdb23bf4465bddcccbf3f003abb901acbd0d7404d99","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b039f55681caaf111d5eb84d292b9bee9e0131d0db1ad0871eef0964f533c73","affectsGlobalScope":true,"impliedFormat":1},{"version":"18fd40412d102c5564136f29735e5d1c3b455b8a37f920da79561f1fde068208","impliedFormat":1},{"version":"c8d3e5a18ba35629954e48c4cc8f11dc88224650067a172685c736b27a34a4dc","impliedFormat":1},{"version":"f0be1b8078cd549d91f37c30c222c2a187ac1cf981d994fb476a1adc61387b14","affectsGlobalScope":true,"impliedFormat":1},{"version":"0aaed1d72199b01234152f7a60046bc947f1f37d78d182e9ae09c4289e06a592","impliedFormat":1},{"version":"2b55d426ff2b9087485e52ac4bc7cfafe1dc420fc76dad926cd46526567c501a","impliedFormat":1},{"version":"66ba1b2c3e3a3644a1011cd530fb444a96b1b2dfe2f5e837a002d41a1a799e60","impliedFormat":1},{"version":"7e514f5b852fdbc166b539fdd1f4e9114f29911592a5eb10a94bb3a13ccac3c4","impliedFormat":1},{"version":"5b7aa3c4c1a5d81b411e8cb302b45507fea9358d3569196b27eb1a27ae3a90ef","affectsGlobalScope":true,"impliedFormat":1},{"version":"5987a903da92c7462e0b35704ce7da94d7fdc4b89a984871c0e2b87a8aae9e69","affectsGlobalScope":true,"impliedFormat":1},{"version":"ea08a0345023ade2b47fbff5a76d0d0ed8bff10bc9d22b83f40858a8e941501c","impliedFormat":1},{"version":"47613031a5a31510831304405af561b0ffaedb734437c595256bb61a90f9311b","impliedFormat":1},{"version":"ae062ce7d9510060c5d7e7952ae379224fb3f8f2dd74e88959878af2057c143b","impliedFormat":1},{"version":"8a1a0d0a4a06a8d278947fcb66bf684f117bf147f89b06e50662d79a53be3e9f","affectsGlobalScope":true,"impliedFormat":1},{"version":"358765d5ea8afd285d4fd1532e78b88273f18cb3f87403a9b16fef61ac9fdcfe","impliedFormat":1},{"version":"9f55299850d4f0921e79b6bf344b47c420ce0f507b9dcf593e532b09ea7eeea1","impliedFormat":1}],"root":[[130,147]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":199,"outDir":"./","rootDir":"..","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9},"referencedMap":[[58,1],[128,2],[127,3],[126,4],[122,5],[124,5],[125,6],[123,5],[66,7],[129,8],[72,9],[110,10],[116,11],[117,11],[119,12],[115,13],[113,11],[114,11],[118,11],[112,11],[111,11],[73,11],[74,14],[70,15],[59,1],[69,1],[71,16],[60,17],[64,1],[62,18],[63,19],[67,20],[61,1],[68,21],[121,22],[65,23],[120,11],[108,24],[84,25],[82,1],[85,26],[90,27],[79,28],[88,29],[93,30],[109,31],[75,1],[95,32],[94,1],[77,1],[83,33],[80,34],[78,1],[87,35],[76,1],[86,36],[81,37],[102,38],[99,39],[104,40],[91,41],[101,42],[103,43],[92,44],[105,45],[107,46],[98,47],[96,48],[97,49],[100,50],[106,44],[89,1],[198,51],[199,51],[200,52],[153,53],[201,54],[202,55],[203,56],[148,1],[151,57],[149,1],[150,1],[204,58],[205,59],[206,60],[207,61],[208,62],[209,63],[210,63],[211,64],[212,65],[213,66],[214,67],[154,1],[152,1],[215,68],[216,69],[217,70],[251,71],[218,72],[219,1],[220,73],[221,74],[222,75],[223,76],[224,77],[225,78],[226,79],[227,80],[228,81],[229,81],[230,82],[231,1],[232,83],[233,84],[235,85],[234,86],[236,87],[237,88],[238,89],[239,90],[240,91],[241,92],[242,93],[243,94],[244,95],[245,96],[246,97],[247,98],[248,99],[155,1],[156,1],[157,1],[195,100],[196,1],[197,1],[249,101],[250,102],[56,1],[57,1],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[20,1],[21,1],[4,1],[22,1],[26,1],[23,1],[24,1],[25,1],[27,1],[28,1],[29,1],[5,1],[30,1],[31,1],[32,1],[33,1],[6,1],[37,1],[34,1],[35,1],[36,1],[38,1],[7,1],[39,1],[44,1],[45,1],[40,1],[41,1],[42,1],[43,1],[8,1],[49,1],[46,1],[47,1],[48,1],[50,1],[9,1],[51,1],[52,1],[53,1],[55,1],[54,1],[1,1],[173,103],[183,104],[172,103],[193,105],[164,106],[163,107],[192,108],[186,109],[191,110],[166,111],[180,112],[165,113],[189,114],[161,115],[160,108],[190,116],[162,117],[167,118],[168,1],[171,118],[158,1],[194,119],[184,120],[175,121],[176,122],[178,123],[174,124],[177,125],[187,108],[169,126],[170,127],[179,128],[159,129],[182,120],[181,118],[185,1],[188,130],[134,131],[135,132],[138,133],[141,134],[136,132],[139,135],[142,136],[140,137],[137,138],[131,139],[133,140],[130,141],[132,142],[143,143],[144,143],[145,144],[146,145],[147,145]],"latestChangedDtsFile":"./test/recent-window-eviction.test.d.ts","version":"5.9.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@animalabs/context-manager",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Context management layer for LLM-based agents using Chronicle and Membrane",
5
5
  "type": "module",
6
6
  "main": "dist/src/index.js",
@@ -278,10 +278,13 @@ export class AutobiographicalStrategy implements ResettableStrategy {
278
278
  sourceRelation: 'derived',
279
279
  };
280
280
 
281
+ // Synthesised summary turns must respect maxMessageTokens just like raw
282
+ // copies do — otherwise a runaway diary can starve recent messages.
283
+ const answerContent: ContentBlock[] = [{ type: 'text', text: chunk.diary }];
281
284
  const answerEntry: ContextEntry = {
282
285
  index: entries.length + 1,
283
286
  participant: summaryParticipant,
284
- content: [{ type: 'text', text: chunk.diary }],
287
+ content: msgCap > 0 ? this.truncateContent(answerContent, msgCap) : answerContent,
285
288
  sourceRelation: 'derived',
286
289
  };
287
290
 
@@ -335,14 +338,59 @@ export class AutobiographicalStrategy implements ResettableStrategy {
335
338
 
336
339
  // 3. Recent uncompressed messages (skip those already in head window)
337
340
  const recentStart = Math.max(this.getRecentWindowStart(store), headEnd);
341
+ this.emitRecentNewestFirst(entries, store, messages, recentStart, msgCap, maxTokens, totalTokens);
338
342
 
339
- for (let i = recentStart; i < messages.length; i++) {
340
- const msg = messages[i];
341
- const content = msgCap > 0 ? this.truncateContent(msg.content, msgCap) : msg.content;
342
- const tokens = msgCap > 0 ? Math.min(store.estimateTokens(msg), msgCap + 50) : store.estimateTokens(msg);
343
+ this.trimOrphanedToolUse(entries);
344
+ return entries;
345
+ }
343
346
 
344
- if (totalTokens + tokens > maxTokens) break;
347
+ /**
348
+ * Emit recent-window messages, evicting OLDEST-first when the budget is tight.
349
+ *
350
+ * The previous loop iterated `recentStart → messages.length` forward and broke
351
+ * on `totalTokens + tokens > maxTokens`. When the head/summary section eats most
352
+ * of the budget, the loop emits the oldest messages of the window and aborts
353
+ * before reaching the newest — exactly the messages an agent needs to act on.
354
+ * This helper picks newest-first within the budget, then emits the kept set in
355
+ * chronological order, dropping a leading orphan tool_result if its tool_use
356
+ * fell into the evicted older portion.
357
+ */
358
+ protected emitRecentNewestFirst(
359
+ entries: ContextEntry[],
360
+ store: MessageStoreView,
361
+ messages: StoredMessage[],
362
+ recentStart: number,
363
+ msgCap: number,
364
+ maxTokens: number,
365
+ totalTokensBefore: number,
366
+ ): void {
367
+ if (recentStart >= messages.length) return;
368
+
369
+ const accepted: number[] = [];
370
+ let acceptedTokens = 0;
371
+ for (let i = messages.length - 1; i >= recentStart; i--) {
372
+ const msg = messages[i];
373
+ const tokens = msgCap > 0
374
+ ? Math.min(store.estimateTokens(msg), msgCap + 50)
375
+ : store.estimateTokens(msg);
376
+ if (totalTokensBefore + acceptedTokens + tokens > maxTokens) break;
377
+ accepted.push(i);
378
+ acceptedTokens += tokens;
379
+ }
380
+ accepted.reverse();
381
+
382
+ // Drop leading orphan tool_result(s): their matching tool_use was evicted.
383
+ while (
384
+ accepted.length > 0 &&
385
+ this.hasToolResult(messages[accepted[0]]) &&
386
+ !this.hasToolUse(messages[accepted[0]])
387
+ ) {
388
+ accepted.shift();
389
+ }
345
390
 
391
+ for (const i of accepted) {
392
+ const msg = messages[i];
393
+ const content = msgCap > 0 ? this.truncateContent(msg.content, msgCap) : msg.content;
346
394
  entries.push({
347
395
  index: entries.length,
348
396
  sourceMessageId: msg.id,
@@ -350,11 +398,7 @@ export class AutobiographicalStrategy implements ResettableStrategy {
350
398
  participant: msg.participant,
351
399
  content,
352
400
  });
353
- totalTokens += tokens;
354
401
  }
355
-
356
- this.trimOrphanedToolUse(entries);
357
- return entries;
358
402
  }
359
403
 
360
404
  protected async compressChunkLegacy(chunk: Chunk, ctx: StrategyContext): Promise<void> {
@@ -811,10 +855,15 @@ export class AutobiographicalStrategy implements ResettableStrategy {
811
855
  content: [{ type: 'text', text: contextLabel }],
812
856
  sourceRelation: 'derived',
813
857
  };
858
+ // Synthesised summary turns must respect maxMessageTokens. With L1+L2+L3
859
+ // budgets defaulting to 30k each, an unconstrained concatenation can push
860
+ // a single assistant turn past 90k tokens, eating the inference budget
861
+ // and starving recent messages (postmortem 2026-05-04, bug B).
862
+ const answerContent: ContentBlock[] = [{ type: 'text', text: combinedText }];
814
863
  const answerEntry: ContextEntry = {
815
864
  index: entries.length + 1,
816
865
  participant: this.config.summaryParticipant ?? 'Claude',
817
- content: [{ type: 'text', text: combinedText }],
866
+ content: msgCap > 0 ? this.truncateContent(answerContent, msgCap) : answerContent,
818
867
  sourceRelation: 'derived',
819
868
  };
820
869
 
@@ -826,24 +875,12 @@ export class AutobiographicalStrategy implements ResettableStrategy {
826
875
  totalTokens += pairTokens;
827
876
  }
828
877
 
829
- // Phase 4: Recent uncompressed messages (skip head window overlap)
878
+ // Phase 4: Recent uncompressed messages (skip head window overlap).
879
+ // Newest-first eviction so that when summaries/head consume most of the
880
+ // budget, the latest messages (the ones the agent actually needs to act
881
+ // on) are preserved and the oldest recent-window messages are dropped.
830
882
  const effectiveRecentStart = Math.max(recentStart, headEnd);
831
- for (let i = effectiveRecentStart; i < messages.length; i++) {
832
- const msg = messages[i];
833
- const content = msgCap > 0 ? this.truncateContent(msg.content, msgCap) : msg.content;
834
- const tokens = msgCap > 0 ? Math.min(store.estimateTokens(msg), msgCap + 50) : store.estimateTokens(msg);
835
-
836
- if (totalTokens + tokens > maxTokens) break;
837
-
838
- entries.push({
839
- index: entries.length,
840
- sourceMessageId: msg.id,
841
- sourceRelation: 'copy',
842
- participant: msg.participant,
843
- content,
844
- });
845
- totalTokens += tokens;
846
- }
883
+ this.emitRecentNewestFirst(entries, store, messages, effectiveRecentStart, msgCap, maxTokens, totalTokens);
847
884
 
848
885
  this.trimOrphanedToolUse(entries);
849
886
  return entries;