@bsv/wallet-toolbox 2.0.0-beta.0 → 2.0.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.
Files changed (97) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/docs/README.md +1 -0
  3. package/docs/client.md +409 -267
  4. package/docs/services.md +15 -3
  5. package/docs/storage.md +48 -88
  6. package/docs/wab-shamir.md +311 -0
  7. package/docs/wallet.md +409 -267
  8. package/out/src/ShamirWalletManager.d.ts +213 -0
  9. package/out/src/ShamirWalletManager.d.ts.map +1 -0
  10. package/out/src/ShamirWalletManager.js +363 -0
  11. package/out/src/ShamirWalletManager.js.map +1 -0
  12. package/out/src/Wallet.d.ts +1 -1
  13. package/out/src/Wallet.d.ts.map +1 -1
  14. package/out/src/Wallet.js +23 -7
  15. package/out/src/Wallet.js.map +1 -1
  16. package/out/src/WalletPermissionsManager.d.ts +84 -1
  17. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  18. package/out/src/WalletPermissionsManager.js +1045 -214
  19. package/out/src/WalletPermissionsManager.js.map +1 -1
  20. package/out/src/__tests/ShamirWalletManager.test.d.ts +2 -0
  21. package/out/src/__tests/ShamirWalletManager.test.d.ts.map +1 -0
  22. package/out/src/__tests/ShamirWalletManager.test.js +298 -0
  23. package/out/src/__tests/ShamirWalletManager.test.js.map +1 -0
  24. package/out/src/__tests/WalletPermissionsManager.callbacks.test.js +134 -0
  25. package/out/src/__tests/WalletPermissionsManager.callbacks.test.js.map +1 -1
  26. package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts.map +1 -1
  27. package/out/src/__tests/WalletPermissionsManager.fixtures.js +9 -0
  28. package/out/src/__tests/WalletPermissionsManager.fixtures.js.map +1 -1
  29. package/out/src/__tests/WalletPermissionsManager.flows.test.js +121 -0
  30. package/out/src/__tests/WalletPermissionsManager.flows.test.js.map +1 -1
  31. package/out/src/__tests/WalletPermissionsManager.pmodules.test.js +111 -0
  32. package/out/src/__tests/WalletPermissionsManager.pmodules.test.js.map +1 -1
  33. package/out/src/entropy/EntropyCollector.d.ts +89 -0
  34. package/out/src/entropy/EntropyCollector.d.ts.map +1 -0
  35. package/out/src/entropy/EntropyCollector.js +176 -0
  36. package/out/src/entropy/EntropyCollector.js.map +1 -0
  37. package/out/src/entropy/__tests/EntropyCollector.test.d.ts +2 -0
  38. package/out/src/entropy/__tests/EntropyCollector.test.d.ts.map +1 -0
  39. package/out/src/entropy/__tests/EntropyCollector.test.js +137 -0
  40. package/out/src/entropy/__tests/EntropyCollector.test.js.map +1 -0
  41. package/out/src/index.all.d.ts +2 -0
  42. package/out/src/index.all.d.ts.map +1 -1
  43. package/out/src/index.all.js +2 -0
  44. package/out/src/index.all.js.map +1 -1
  45. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  46. package/out/src/sdk/WalletStorage.interfaces.d.ts +3 -3
  47. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  48. package/out/src/services/__tests/getRawTx.test.js +3 -0
  49. package/out/src/services/__tests/getRawTx.test.js.map +1 -1
  50. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +1 -1
  51. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  52. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +4 -1
  53. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  54. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +3 -1
  55. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -1
  56. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  57. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +1 -2
  58. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  59. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  60. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +12 -0
  61. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  62. package/out/src/storage/StorageProvider.d.ts +16 -2
  63. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  64. package/out/src/storage/StorageProvider.js +33 -4
  65. package/out/src/storage/StorageProvider.js.map +1 -1
  66. package/out/src/storage/methods/ListOutputsSpecOp.d.ts +15 -1
  67. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  68. package/out/src/storage/methods/ListOutputsSpecOp.js +52 -2
  69. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  70. package/out/src/storage/methods/__test/offsetKey.test.js +266 -100
  71. package/out/src/storage/methods/__test/offsetKey.test.js.map +1 -1
  72. package/out/src/storage/methods/getBeefForTransaction.js +1 -1
  73. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  74. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  75. package/out/src/storage/methods/internalizeAction.js +2 -2
  76. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  77. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  78. package/out/src/storage/methods/listOutputsIdb.js +10 -17
  79. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  80. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  81. package/out/src/storage/methods/listOutputsKnex.js +44 -26
  82. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  83. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js +4 -0
  84. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js.map +1 -1
  85. package/out/src/wab-client/WABClient.d.ts +65 -0
  86. package/out/src/wab-client/WABClient.d.ts.map +1 -1
  87. package/out/src/wab-client/WABClient.js +107 -0
  88. package/out/src/wab-client/WABClient.js.map +1 -1
  89. package/package.json +8 -4
  90. package/out/src/sdk/validationHelpers.d.ts +0 -303
  91. package/out/src/sdk/validationHelpers.d.ts.map +0 -1
  92. package/out/src/sdk/validationHelpers.js +0 -632
  93. package/out/src/sdk/validationHelpers.js.map +0 -1
  94. package/out/src/utility/ReaderUint8Array.d.ts +0 -28
  95. package/out/src/utility/ReaderUint8Array.d.ts.map +0 -1
  96. package/out/src/utility/ReaderUint8Array.js +0 -166
  97. package/out/src/utility/ReaderUint8Array.js.map +0 -1
@@ -30,6 +30,127 @@ describe('WalletPermissionsManager - Permission Request Flow & Active Requests',
30
30
  * UNIT TESTS
31
31
  */
32
32
  describe('Unit Tests: requestPermissionFlow & activeRequests map', () => {
33
+ it('should coalesce level-2 protocol requests for the same counterparty into a single grouped permission prompt based on manifest.json', async () => {
34
+ mockNoTokensFound(manager);
35
+ globals_1.jest.spyOn(manager, 'fetchManifestGroupPermissions').mockResolvedValue({
36
+ protocolPermissions: [
37
+ {
38
+ protocolID: [2, 'l2-proto-A'],
39
+ counterparty: '',
40
+ description: 'A'
41
+ },
42
+ {
43
+ protocolID: [2, 'l2-proto-B'],
44
+ counterparty: 'peer-123',
45
+ description: 'B'
46
+ },
47
+ {
48
+ protocolID: [2, 'l2-proto-C'],
49
+ counterparty: 'peer-999',
50
+ description: 'C'
51
+ },
52
+ {
53
+ protocolID: [1, 'l1-proto-D'],
54
+ counterparty: 'peer-123',
55
+ description: 'D'
56
+ }
57
+ ]
58
+ });
59
+ const groupRequestCallback = globals_1.jest.fn(() => { });
60
+ manager.bindCallback('onGroupedPermissionRequested', groupRequestCallback);
61
+ const callA = manager.ensureProtocolPermission({
62
+ originator: 'example.com',
63
+ privileged: false,
64
+ protocolID: [2, 'l2-proto-A'],
65
+ counterparty: 'peer-123',
66
+ reason: 'UnitTest - L2 A',
67
+ seekPermission: true,
68
+ usageType: 'signing'
69
+ });
70
+ const callB = manager.ensureProtocolPermission({
71
+ originator: 'example.com',
72
+ privileged: false,
73
+ protocolID: [2, 'l2-proto-B'],
74
+ counterparty: 'peer-123',
75
+ reason: 'UnitTest - L2 B',
76
+ seekPermission: true,
77
+ usageType: 'signing'
78
+ });
79
+ await new Promise(res => setTimeout(res, 5));
80
+ expect(groupRequestCallback).toHaveBeenCalledTimes(1);
81
+ const callbackArg = groupRequestCallback.mock.calls[0][0];
82
+ const requestID = callbackArg.requestID;
83
+ expect(typeof requestID).toBe('string');
84
+ expect(requestID).toMatch(/^group-peer:/);
85
+ const activeRequests = manager.activeRequests;
86
+ const queued = activeRequests.get(requestID);
87
+ expect(queued.request.permissions.protocolPermissions.length).toBe(2);
88
+ expect(queued.request.permissions.protocolPermissions).toEqual(expect.arrayContaining([
89
+ expect.objectContaining({ protocolID: [2, 'l2-proto-A'], counterparty: 'peer-123' }),
90
+ expect.objectContaining({ protocolID: [2, 'l2-proto-B'], counterparty: 'peer-123' })
91
+ ]));
92
+ await manager.denyGroupedPermission(requestID);
93
+ await expect(callA).rejects.toThrow(/denied/i);
94
+ await expect(callB).rejects.toThrow(/denied/i);
95
+ expect(activeRequests.size).toBe(0);
96
+ });
97
+ it('should create separate grouped permission requests for different peers (no cross-peer grouping)', async () => {
98
+ mockNoTokensFound(manager);
99
+ globals_1.jest.spyOn(manager, 'fetchManifestGroupPermissions').mockResolvedValue({
100
+ protocolPermissions: [
101
+ {
102
+ protocolID: [2, 'l2-proto-B'],
103
+ counterparty: 'peer-123',
104
+ description: 'B'
105
+ },
106
+ {
107
+ protocolID: [2, 'l2-proto-C'],
108
+ counterparty: 'peer-999',
109
+ description: 'C'
110
+ }
111
+ ]
112
+ });
113
+ const groupRequestCallback = globals_1.jest.fn(() => { });
114
+ manager.bindCallback('onGroupedPermissionRequested', groupRequestCallback);
115
+ const callB = manager.ensureProtocolPermission({
116
+ originator: 'example.com',
117
+ privileged: false,
118
+ protocolID: [2, 'l2-proto-B'],
119
+ counterparty: 'peer-123',
120
+ reason: 'UnitTest - L2 B peer-123',
121
+ seekPermission: true,
122
+ usageType: 'signing'
123
+ });
124
+ const callC = manager.ensureProtocolPermission({
125
+ originator: 'example.com',
126
+ privileged: false,
127
+ protocolID: [2, 'l2-proto-C'],
128
+ counterparty: 'peer-999',
129
+ reason: 'UnitTest - L2 C peer-999',
130
+ seekPermission: true,
131
+ usageType: 'signing'
132
+ });
133
+ await new Promise(res => setTimeout(res, 5));
134
+ expect(groupRequestCallback).toHaveBeenCalledTimes(2);
135
+ const requestID1 = groupRequestCallback.mock.calls[0][0].requestID;
136
+ const requestID2 = groupRequestCallback.mock.calls[1][0].requestID;
137
+ expect(requestID1).not.toBe(requestID2);
138
+ expect(requestID1).toMatch(/^group-peer:/);
139
+ expect(requestID2).toMatch(/^group-peer:/);
140
+ const activeRequests = manager.activeRequests;
141
+ expect(activeRequests.size).toBe(2);
142
+ const queued1 = activeRequests.get(requestID1);
143
+ const queued2 = activeRequests.get(requestID2);
144
+ expect(queued1.request.permissions.protocolPermissions).toEqual(expect.arrayContaining([expect.objectContaining({ protocolID: [2, 'l2-proto-B'], counterparty: 'peer-123' })]));
145
+ expect(queued1.request.permissions.protocolPermissions).not.toEqual(expect.arrayContaining([expect.objectContaining({ protocolID: [2, 'l2-proto-C'], counterparty: 'peer-999' })]));
146
+ expect(queued2.request.permissions.protocolPermissions).toEqual(expect.arrayContaining([expect.objectContaining({ protocolID: [2, 'l2-proto-C'], counterparty: 'peer-999' })]));
147
+ expect(queued2.request.permissions.protocolPermissions).not.toEqual(expect.arrayContaining([expect.objectContaining({ protocolID: [2, 'l2-proto-B'], counterparty: 'peer-123' })]));
148
+ await manager.denyGroupedPermission(requestID1);
149
+ await manager.denyGroupedPermission(requestID2);
150
+ await expect(callB).rejects.toThrow(/denied/i);
151
+ await expect(callC).rejects.toThrow(/denied/i);
152
+ expect(activeRequests.size).toBe(0);
153
+ });
33
154
  it('should coalesce parallel requests for the same resource into a single user prompt', async () => {
34
155
  // We want to test the underlying private method "requestPermissionFlow" indirectly
35
156
  // or we can test it via a public method that calls it. We'll do so via ensureProtocolPermission.
@@ -1 +1 @@
1
- {"version":3,"file":"WalletPermissionsManager.flows.test.js","sourceRoot":"","sources":["../../../src/__tests/WalletPermissionsManager.flows.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WalletPermissionsManager.flows.test.js","sourceRoot":"","sources":["../../../src/__tests/WalletPermissionsManager.flows.test.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,105 @@ describe('WalletPermissionsManager - Permission Module Support', () => {
12
12
  beforeEach(() => {
13
13
  underlying = (0, WalletPermissionsManager_fixtures_1.mockUnderlyingWallet)();
14
14
  });
15
+ describe('P-Label Delegation', () => {
16
+ it('should delegate listActions through P-label modules in order and return responses in reverse order', async () => {
17
+ const callOrder = [];
18
+ const module1 = {
19
+ onRequest: jest.fn(async (req) => {
20
+ callOrder.push('req1');
21
+ expect(req.args.req1Processed).toBeUndefined();
22
+ return { ...req, args: { ...req.args, req1Processed: true } };
23
+ }),
24
+ onResponse: jest.fn(async (res) => {
25
+ callOrder.push('res1');
26
+ expect(res.processedBy).toBe('module2');
27
+ return { ...res, finalProcessedBy: 'module1' };
28
+ })
29
+ };
30
+ const module2 = {
31
+ onRequest: jest.fn(async (req) => {
32
+ callOrder.push('req2');
33
+ expect(req.args.req1Processed).toBe(true);
34
+ return { ...req, args: { ...req.args, req2Processed: true } };
35
+ }),
36
+ onResponse: jest.fn(async (res) => {
37
+ callOrder.push('res2');
38
+ expect(res.processedBy).toBeUndefined();
39
+ return { ...res, processedBy: 'module2' };
40
+ })
41
+ };
42
+ const config = {
43
+ permissionModules: {
44
+ scheme1: module1,
45
+ scheme2: module2
46
+ },
47
+ seekPermissionWhenListingActionsByLabel: false
48
+ };
49
+ const manager = new WalletPermissionsManager_1.WalletPermissionsManager(underlying, 'customToken.domain.com', config);
50
+ underlying.listActions.mockResolvedValue({ totalActions: 0, actions: [] });
51
+ const result = await manager.listActions({
52
+ labels: ['p scheme1 alpha', 'p scheme2 beta', 'regular-label']
53
+ }, 'app.com');
54
+ expect(module1.onRequest).toHaveBeenCalledTimes(1);
55
+ expect(module2.onRequest).toHaveBeenCalledTimes(1);
56
+ expect(module1.onResponse).toHaveBeenCalledTimes(1);
57
+ expect(module2.onResponse).toHaveBeenCalledTimes(1);
58
+ expect(callOrder).toEqual(['req1', 'req2', 'res2', 'res1']);
59
+ expect(result.finalProcessedBy).toBe('module1');
60
+ });
61
+ it('should delegate createAction when a P-label is present', async () => {
62
+ const testModule = {
63
+ onRequest: jest.fn(async (req) => req),
64
+ onResponse: jest.fn(async (res) => res)
65
+ };
66
+ const config = {
67
+ permissionModules: {
68
+ labels: testModule
69
+ },
70
+ seekSpendingPermissions: false,
71
+ seekBasketInsertionPermissions: false,
72
+ seekPermissionWhenApplyingActionLabels: false
73
+ };
74
+ const manager = new WalletPermissionsManager_1.WalletPermissionsManager(underlying, 'customToken.domain.com', config);
75
+ underlying.createAction.mockResolvedValue({ txid: 'abc123', tx: [] });
76
+ await manager.createAction({
77
+ description: 'Label-based createAction',
78
+ labels: ['p labels token', 'regular-label'],
79
+ outputs: [
80
+ {
81
+ lockingScript: 'abcd',
82
+ satoshis: 1000,
83
+ basket: 'regular-basket',
84
+ outputDescription: 'Test output'
85
+ }
86
+ ]
87
+ }, 'app.com');
88
+ expect(testModule.onRequest).toHaveBeenCalledTimes(1);
89
+ expect(testModule.onResponse).toHaveBeenCalledTimes(1);
90
+ });
91
+ it('should delegate internalizeAction when a P-label is present', async () => {
92
+ const testModule = {
93
+ onRequest: jest.fn(async (req) => req),
94
+ onResponse: jest.fn(async (res) => res)
95
+ };
96
+ const config = {
97
+ permissionModules: {
98
+ labels: testModule
99
+ },
100
+ seekPermissionWhenApplyingActionLabels: false
101
+ };
102
+ const manager = new WalletPermissionsManager_1.WalletPermissionsManager(underlying, 'customToken.domain.com', config);
103
+ underlying.internalizeAction.mockResolvedValue({ accepted: true });
104
+ await manager.internalizeAction({
105
+ tx: [],
106
+ description: 'Internalize with label',
107
+ labels: ['p labels internal', 'regular-label'],
108
+ outputs: []
109
+ }, 'app.com');
110
+ expect(testModule.onRequest).toHaveBeenCalledTimes(1);
111
+ expect(testModule.onResponse).toHaveBeenCalledTimes(1);
112
+ });
113
+ });
15
114
  afterEach(() => {
16
115
  jest.clearAllMocks();
17
116
  });
@@ -517,6 +616,18 @@ describe('WalletPermissionsManager - Permission Module Support', () => {
517
616
  });
518
617
  });
519
618
  describe('P-Module Error Handling', () => {
619
+ it('should reject invalid P-label formats', async () => {
620
+ const manager = new WalletPermissionsManager_1.WalletPermissionsManager(underlying, 'customToken.domain.com', {});
621
+ await expect(manager.listActions({ labels: ['p schemeOnly'] }, 'app.com')).rejects.toThrow('Invalid P-label format');
622
+ await expect(manager.listActions({ labels: ['p missingScheme'] }, 'app.com')).rejects.toThrow('Invalid P-label format');
623
+ await expect(manager.listActions({ labels: ['p scheme '] }, 'app.com')).rejects.toThrow('Invalid P-label format');
624
+ expect(underlying.listActions).not.toHaveBeenCalled();
625
+ });
626
+ it('should throw if P-label scheme is unsupported', async () => {
627
+ const manager = new WalletPermissionsManager_1.WalletPermissionsManager(underlying, 'customToken.domain.com', {});
628
+ await expect(manager.listActions({ labels: ['p unknown scheme', 'regular-label'] }, 'app.com')).rejects.toThrow('Unsupported P-label scheme: p unknown');
629
+ expect(underlying.listActions).not.toHaveBeenCalled();
630
+ });
520
631
  it('should throw if P-module onRequest throws', async () => {
521
632
  const testModule = {
522
633
  onRequest: jest.fn(async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"WalletPermissionsManager.pmodules.test.js","sourceRoot":"","sources":["../../../src/__tests/WalletPermissionsManager.pmodules.test.ts"],"names":[],"mappings":";;AAAA,2FAAyF;AACzF,0EAAmH;AAEnH,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,iDAAa,CAAC,CAAA;AAE1C;;;GAGG;AACH,QAAQ,CAAC,sDAAsD,EAAE,GAAG,EAAE;IACpE,IAAI,UAA4B,CAAA;IAEhC,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,IAAA,wDAAoB,GAAE,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC9C,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;;YACnD,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,aAAa,EAAE,UAAU;iBAC1B;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,oCAAoC;YACpC,MAAM,YAAY,GAAI,OAAe,CAAC,MAAkC,CAAA;YACxE,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAA;YACpD,MAAM,CAAC,MAAA,YAAY,CAAC,iBAAiB,0CAAG,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC1E,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;;YAC1E,MAAM,OAAO,GAAsB;gBACjC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,OAAO,GAAsB;gBACjC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,OAAO;iBACjB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAC1F,MAAM,YAAY,GAAI,OAAe,CAAC,MAAkC,CAAA;YAExE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACxE,MAAM,CAAC,MAAA,YAAY,CAAC,iBAAiB,0CAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACjE,MAAM,CAAC,MAAA,YAAY,CAAC,iBAAiB,0CAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACnE,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACjD,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,+CAA+C;oBAC/C,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;oBACtC,MAAM,CAAE,GAAG,CAAC,IAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;oBAC7D,uCAAuC;oBACvC,OAAO;wBACL,GAAG,GAAG;wBACN,IAAI,EAAE,EAAE,GAAI,GAAG,CAAC,IAAY,EAAE,MAAM,EAAE,oBAAoB,EAAE;qBAC7D,CAAA;gBACH,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,oCAAoC;oBACpC,OAAO,EAAE,GAAG,GAAG,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAA;gBAC9C,CAAC,CAAC;aACH,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,2BAA2B;YAC3B,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;YAEzD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,EAAE,SAAS,CAAC,CAAA;YAEvF,uCAAuC;YACvC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,iEAAiE;YACjE,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC;gBAChD,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE;gBACxC,UAAU,EAAE,SAAS;aACtB,CAAC,CAAA;YAEF,uDAAuD;YACvD,2DAA2D;YAC3D,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,SAAS,CAAC,CAAA;YAEhG,wCAAwC;YACxC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEtD,kCAAkC;YAClC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAA;QAC5D,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,CAAC,CAAA;YAElF,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,4BAA4B,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACpG,oDAAoD,CACrD,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;gBACD,4BAA4B,EAAE,KAAK;aACpC,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;YAEzD,MAAM,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,SAAS,CAAC,CAAA;YAEjE,iDAAiD;YACjD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;YACnD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;YAEpD,mDAAmD;YACnD,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,SAAS,CAAC,CAAA;QAC7F,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;gBACD,qBAAqB,EAAE,IAAI;aAC5B,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,kBAAkB;YAClB,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAc,EAAE,4BAA4B,CAAC,CAAA;YAChF,eAAe,CAAC,kBAAkB,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YAE5D,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC;gBACvC,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;aACjD,CAAC,CAAA;YAEF,MAAM,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,SAAS,CAAC,CAAA;YAEnE,wCAAwC;YACxC,MAAM,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;QACtD,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;oBAC3C,MAAM,CAAE,GAAG,CAAC,IAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;oBAClE,OAAO;wBACL,GAAG,GAAG;wBACN,IAAI,EAAE,EAAE,GAAI,GAAG,CAAC,IAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE;qBAC5D,CAAA;gBACH,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,KAAK,EAAE,UAAU;iBAClB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;YAExD,MAAM,OAAO,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,2BAA2B,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,CAAA;YAEpG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,kEAAkE;YAClE,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CACtD,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,EACjD,SAAS,CACV,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAClD,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,yCAAyC;oBACzC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;oBACvC,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,4CAA4C;oBAC5C,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;aACH,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;gBACD,uBAAuB,EAAE,KAAK;gBAC9B,8BAA8B,EAAE,KAAK;aACtC,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC;gBACxC,IAAI,EAAE,QAAQ;gBACd,EAAE,EAAE,EAAE;aACP,CAAC,CAAA;YAEF,MAAM,OAAO,CAAC,YAAY,CACxB;gBACE,WAAW,EAAE,aAAa;gBAC1B,OAAO,EAAE;oBACP;wBACE,aAAa,EAAE,MAAM;wBACrB,QAAQ,EAAE,IAAI;wBACd,MAAM,EAAE,qBAAqB;wBAC7B,iBAAiB,EAAE,aAAa;qBACjC;iBACF;aACF,EACD,SAAS,CACV,CAAA;YAED,8BAA8B;YAC9B,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,CAAA;YAC/C,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAA;QAClD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;YACxG,MAAM,SAAS,GAAa,EAAE,CAAA;YAE9B,MAAM,OAAO,GAAsB;gBACjC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,qEAAqE;oBACrE,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,aAAa,EAAE,CAAA;oBAC9D,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,aAAa,EAAE,CAAA;oBAC9D,kEAAkE;oBAClE,OAAO;wBACL,GAAG,GAAG;wBACN,IAAI,EAAE,EAAE,GAAI,GAAG,CAAC,IAAY,EAAE,aAAa,EAAE,IAAI,EAAE;qBACpD,CAAA;gBACH,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,8EAA8E;oBAC9E,MAAM,CAAE,GAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAChD,OAAO,EAAE,GAAG,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAA;gBAChD,CAAC,CAAC;aACH,CAAA;YAED,MAAM,OAAO,GAAsB;gBACjC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,qDAAqD;oBACrD,gEAAgE;oBAChE,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACzD,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,aAAa,EAAE,CAAA;oBAC9D,OAAO;wBACL,GAAG,GAAG;wBACN,IAAI,EAAE,EAAE,GAAI,GAAG,CAAC,IAAY,EAAE,aAAa,EAAE,IAAI,EAAE;qBACpD,CAAA;gBACH,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,uEAAuE;oBACvE,MAAM,CAAE,GAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAChD,OAAO,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,CAAA;gBAC3C,CAAC,CAAC;aACH,CAAA;YAED,MAAM,OAAO,GAAsB;gBACjC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,gFAAgF;oBAChF,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACzD,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACzD,MAAM,CAAE,GAAG,CAAC,IAAmB,CAAC,aAAa,CAAC,CAAC,aAAa,EAAE,CAAA;oBAC9D,OAAO;wBACL,GAAG,GAAG;wBACN,IAAI,EAAE,EAAE,GAAI,GAAG,CAAC,IAAY,EAAE,aAAa,EAAE,IAAI,EAAE;qBACpD,CAAA;gBACH,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;oBACtB,8EAA8E;oBAC9E,MAAM,CAAE,GAAW,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAA;oBAChD,OAAO,EAAE,GAAG,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,CAAA;gBAC3C,CAAC,CAAC;aACH,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,OAAO;iBACjB;gBACD,uBAAuB,EAAE,KAAK;gBAC9B,8BAA8B,EAAE,KAAK;aACtC,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;YAElE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CACvC;gBACE,WAAW,EAAE,yBAAyB;gBACtC,OAAO,EAAE;oBACP,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE;oBAClG,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE;oBAClG,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE;iBACnG;aACF,EACD,SAAS,CACV,CAAA;YAED,iCAAiC;YACjC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAClD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAClD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAClD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACnD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACnD,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YAEnD,uEAAuE;YACvE,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;YAE3E,gEAAgE;YAChE,MAAM,CAAE,MAAc,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAC1D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACvD,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;YAC7F,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;oBAC5C,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;gBACD,qBAAqB,EAAE,KAAK;aAC7B,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;YAEzD,MAAM,OAAO,CAAC,iBAAiB,CAC7B;gBACE,EAAE,EAAE,EAAE;gBACN,WAAW,EAAE,yBAAyB;gBACtC,OAAO,EAAE;oBACP;wBACE,WAAW,EAAE,CAAC;wBACd,QAAQ,EAAE,kBAAkB;wBAC5B,iBAAiB,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE;wBACxF,mBAAmB,EAAE;4BACnB,MAAM,EAAE,iBAAiB;4BACzB,kBAAkB,EAAE,EAAE;yBACvB;qBACK;iBACT,CAAC,qDAAqD;aACxD,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;oBACvC,MAAM,CAAE,GAAG,CAAC,IAAY,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAA;oBAClE,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,4CAA4C;oBAC5C,OAAO,EAAE,GAAG,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAA;gBAC3C,CAAC,CAAC;aACH,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;gBACD,qCAAqC,EAAE,KAAK;aAC7C,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;YAEpE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,CACvC;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,eAAe,CAAC;gBAChC,KAAK,EAAE,GAAG;gBACV,YAAY,EAAE,MAAM;aACrB,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACtD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;QACzD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;oBAC1C,MAAM,CAAE,GAAG,CAAC,IAAY,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAA;oBAClE,wDAAwD;oBACxD,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,KAAK,EAAE,UAAU;iBAClB;gBACD,iCAAiC,EAAE,KAAK;aACzC,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAA;YAErE,MAAM,OAAO,CAAC,eAAe,CAC3B;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,eAAe,CAAC;gBAChC,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;aACnB,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;oBAC1C,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;YAElD,MAAM,OAAO,CAAC,eAAe,CAC3B;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,iBAAiB,CAAC;gBAClC,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,CAAC,IAAI,CAAC;gBACZ,SAAS,EAAE,CAAC,IAAI,CAAC;aAClB,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAClC,MAAM,CAAE,GAAG,CAAC,IAAY,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAA;oBACrE,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;gBACD,oCAAoC,EAAE,KAAK;aAC5C,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YAElE,MAAM,OAAO,CAAC,OAAO,CACnB;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC;gBACnC,KAAK,EAAE,GAAG;gBACV,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;aAC1C,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAClC,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC9B,wCAAwC;oBACxC,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;aACH,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,MAAM,EAAE,UAAU;iBACnB;gBACD,oCAAoC,EAAE,KAAK;aAC5C,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YAEjE,MAAM,OAAO,CAAC,OAAO,CACnB;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,kBAAkB,CAAC;gBACnC,KAAK,EAAE,GAAG;gBACV,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;aACzB,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;oBACrC,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,IAAI,EAAE,UAAU;iBACjB;gBACD,8BAA8B,EAAE,KAAK;aACtC,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEzD,MAAM,OAAO,CAAC,UAAU,CACtB;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC;gBAC9B,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,CAAC,IAAI,CAAC;aACb,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;oBACrC,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,IAAI,EAAE,UAAU;iBACjB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;YAE7C,MAAM,OAAO,CAAC,UAAU,CACtB;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,eAAe,CAAC;gBAChC,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,CAAC,IAAI,CAAC;aACb,EACD,SAAS,CACV,CAAA;YAED,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;oBAC5B,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;gBAC7C,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,OAAO,EAAE,UAAU;iBACpB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACxF,0BAA0B,CAC3B,CAAA;YAED,kDAAkD;YAClD,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;oBAC7B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;gBACtD,CAAC,CAAC;aACH,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,OAAO,EAAE,UAAU;iBACpB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;YAEzD,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACxF,mCAAmC,CACpC,CAAA;YAED,wDAAwD;YACxD,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;YACtF,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,qDAAqD;oBACrD,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;gBACD,iCAAiC,EAAE,KAAK,CAAC,2BAA2B;aACrE,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEnE,6CAA6C;YAC7C,MAAM,OAAO,CAAC,eAAe,CAC3B;gBACE,UAAU,EAAE,CAAC,CAAC,EAAE,iBAAiB,CAAC;gBAClC,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,CAAC,IAAI,CAAC;aACb,EACD,SAAS,CACV,CAAA;YAED,iCAAiC;YACjC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,EAAE,CAAA;YAC/C,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,gBAAgB,EAAE,CAAA;QAClD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACnE,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;oBAC7B,yCAAyC;oBACzC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;oBACxC,OAAO,GAAG,CAAA;gBACZ,CAAC,CAAC;gBACF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;aACF,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;YAE7E,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;YAEzD,MAAM,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,WAAW,CAAC,CAAA;YAErE,gDAAgD;YAChD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;YACrD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACvF,MAAM,UAAU,GAAsB;gBACpC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;gBACpC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC;aACtC,CAAA;YAED,MAAM,MAAM,GAA6B;gBACvC,iBAAiB,EAAE;oBACjB,QAAQ,EAAE,UAAU;iBACrB;gBACD,4BAA4B,EAAE,KAAK;aACpC,CAAA;YAED,MAAM,OAAO,GAAG,IAAI,mDAAwB,CAAC,UAAU,EAAE,wBAAwB,EAAE,MAAM,CAAC,CAAA;YAE1F,uDAAuD;YACvD,yDAAyD;YACzD,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;YAE/G,4FAA4F;YAC5F,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAA;QACrD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"WalletPermissionsManager.pmodules.test.js","sourceRoot":"","sources":["../../../src/__tests/WalletPermissionsManager.pmodules.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * EntropyCollector
3
+ *
4
+ * Collects entropy from user interactions (mouse movements) and mixes it with
5
+ * cryptographically secure random numbers to generate high-quality random seeds
6
+ * for key generation.
7
+ *
8
+ * This provides defense-in-depth: even if the system's CSPRNG is compromised,
9
+ * the user-provided entropy adds unpredictability. Conversely, if the user's
10
+ * mouse movements are predictable, the CSPRNG ensures security.
11
+ */
12
+ export interface EntropyCollectorConfig {
13
+ /** Target number of mouse samples to collect (default: 256) */
14
+ targetSamples?: number;
15
+ /** Minimum time between samples in ms (default: 10) */
16
+ minSampleInterval?: number;
17
+ }
18
+ export interface EntropyProgress {
19
+ /** Number of samples collected so far */
20
+ collected: number;
21
+ /** Target number of samples */
22
+ target: number;
23
+ /** Percentage complete (0-100) */
24
+ percent: number;
25
+ }
26
+ /**
27
+ * Callback type for entropy collection progress updates
28
+ */
29
+ export type EntropyProgressCallback = (progress: EntropyProgress) => void;
30
+ export declare class EntropyCollector {
31
+ private config;
32
+ private rawEntropy;
33
+ private lastSampleTime;
34
+ constructor(config?: EntropyCollectorConfig);
35
+ /**
36
+ * Reset collected entropy data
37
+ */
38
+ reset(): void;
39
+ /**
40
+ * Add a mouse movement sample
41
+ * Call this from a mousemove event handler
42
+ *
43
+ * @returns Progress information, or null if sample was rejected (too soon)
44
+ */
45
+ addMouseSample(x: number, y: number): EntropyProgress | null;
46
+ /**
47
+ * Get current collection progress
48
+ */
49
+ getProgress(): EntropyProgress;
50
+ /**
51
+ * Check if enough entropy has been collected
52
+ */
53
+ isComplete(): boolean;
54
+ /**
55
+ * Extract entropy bytes from collected mouse data
56
+ * Uses SHA-256 to compress and whiten the data
57
+ */
58
+ private extractRawEntropy;
59
+ /**
60
+ * Mix user entropy with system CSPRNG for defense-in-depth
61
+ *
62
+ * @returns 32 bytes of high-quality random data suitable for key generation
63
+ */
64
+ mixWithCSPRNG(): Uint8Array;
65
+ /**
66
+ * Generate entropy with automatic CSPRNG fallback
67
+ *
68
+ * If not enough user entropy has been collected, supplements with CSPRNG.
69
+ * Always mixes with CSPRNG regardless.
70
+ *
71
+ * @returns 32 bytes suitable for private key generation
72
+ */
73
+ generateEntropy(): Uint8Array;
74
+ /**
75
+ * Convenience method for browser environments.
76
+ * Creates event listeners and resolves when enough entropy is collected.
77
+ *
78
+ * @param element The HTML element to listen on (default: document)
79
+ * @param onProgress Optional callback for progress updates
80
+ * @returns Promise that resolves with 32 bytes of entropy
81
+ */
82
+ collectFromBrowser(element?: EventTarget, onProgress?: EntropyProgressCallback): Promise<Uint8Array>;
83
+ /**
84
+ * Estimate the quality of collected entropy in bits
85
+ * This is a rough heuristic, not a cryptographic guarantee
86
+ */
87
+ estimateEntropyBits(): number;
88
+ }
89
+ //# sourceMappingURL=EntropyCollector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EntropyCollector.d.ts","sourceRoot":"","sources":["../../../src/entropy/EntropyCollector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,sBAAsB;IACrC,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAA;IACjB,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,QAAQ,EAAE,eAAe,KAAK,IAAI,CAAA;AAUzE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,UAAU,CAGjB;IACD,OAAO,CAAC,cAAc,CAAY;gBAEtB,MAAM,GAAE,sBAA2B;IAO/C;;OAEG;IACH,KAAK,IAAI,IAAI;IAQb;;;;;OAKG;IACH,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAoB5D;;OAEG;IACH,WAAW,IAAI,eAAe;IAS9B;;OAEG;IACH,UAAU,IAAI,OAAO;IAIrB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IA0BzB;;;;OAIG;IACH,aAAa,IAAI,UAAU;IAe3B;;;;;;;OAOG;IACH,eAAe,IAAI,UAAU;IAW7B;;;;;;;OAOG;IACG,kBAAkB,CAAC,OAAO,GAAE,WAAsB,EAAE,UAAU,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAoBpH;;;OAGG;IACH,mBAAmB,IAAI,MAAM;CAY9B"}