@centrifuge/sdk 1.17.0 → 1.19.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.
- package/dist/Centrifuge.d.ts +28 -1
- package/dist/Centrifuge.d.ts.map +1 -1
- package/dist/Centrifuge.js +123 -3
- package/dist/Centrifuge.js.map +1 -1
- package/dist/abi/Multicall.abi.d.ts +3 -0
- package/dist/abi/Multicall.abi.d.ts.map +1 -0
- package/dist/abi/Multicall.abi.js +6 -0
- package/dist/abi/Multicall.abi.js.map +1 -0
- package/dist/abi/index.d.ts +10 -0
- package/dist/abi/index.d.ts.map +1 -1
- package/dist/abi/index.js +2 -0
- package/dist/abi/index.js.map +1 -1
- package/dist/buildOnly.test.d.ts +2 -0
- package/dist/buildOnly.test.d.ts.map +1 -0
- package/dist/buildOnly.test.js +265 -0
- package/dist/buildOnly.test.js.map +1 -0
- package/dist/entities/Pool.d.ts.map +1 -1
- package/dist/entities/Pool.js +1 -0
- package/dist/entities/Pool.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/tests/mocks/mockPoolMetadataV2.d.ts.map +1 -1
- package/dist/tests/mocks/mockPoolMetadataV2.js +59 -1
- package/dist/tests/mocks/mockPoolMetadataV2.js.map +1 -1
- package/dist/types/poolInput.d.ts +3 -1
- package/dist/types/poolInput.d.ts.map +1 -1
- package/dist/types/poolMetadata.d.ts +84 -9
- package/dist/types/poolMetadata.d.ts.map +1 -1
- package/dist/types/poolMetadata.js.map +1 -1
- package/dist/types/transaction.d.ts +45 -0
- package/dist/types/transaction.d.ts.map +1 -1
- package/dist/types/transaction.js.map +1 -1
- package/dist/utils/poolMetadataMigration.d.ts +11 -1
- package/dist/utils/poolMetadataMigration.d.ts.map +1 -1
- package/dist/utils/poolMetadataMigration.js +217 -31
- package/dist/utils/poolMetadataMigration.js.map +1 -1
- package/dist/utils/poolMetadataMigration.test.js +190 -13
- package/dist/utils/poolMetadataMigration.test.js.map +1 -1
- package/dist/utils/transaction.d.ts +11 -0
- package/dist/utils/transaction.d.ts.map +1 -1
- package/dist/utils/transaction.js +34 -14
- package/dist/utils/transaction.js.map +1 -1
- package/dist/utils/transaction.test.d.ts +2 -0
- package/dist/utils/transaction.test.d.ts.map +1 -0
- package/dist/utils/transaction.test.js +101 -0
- package/dist/utils/transaction.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -2,7 +2,7 @@ import { expect } from 'chai';
|
|
|
2
2
|
import { mockPoolMetadata } from '../tests/mocks/mockPoolMetadata.js';
|
|
3
3
|
import { mockPoolMetadataV2 } from '../tests/mocks/mockPoolMetadataV2.js';
|
|
4
4
|
import { isPoolMetadataV2 } from '../types/poolMetadata.js';
|
|
5
|
-
import { migratePoolMetadataToV2, parsePoolMetadataV2 } from './poolMetadataMigration.js';
|
|
5
|
+
import { migratePoolMetadataToV2, parsePoolMetadataV2, resolveLinkTarget } from './poolMetadataMigration.js';
|
|
6
6
|
const clone = (value) => JSON.parse(JSON.stringify(value));
|
|
7
7
|
/** A legacy fixture with the display fields that drive the factsheet projection. */
|
|
8
8
|
function legacyFixture() {
|
|
@@ -110,6 +110,15 @@ describe('migratePoolMetadataToV2', () => {
|
|
|
110
110
|
],
|
|
111
111
|
});
|
|
112
112
|
});
|
|
113
|
+
it('carries pool.links.documents through migration', () => {
|
|
114
|
+
const legacy = legacyFixture();
|
|
115
|
+
legacy.pool.links = {
|
|
116
|
+
executiveSummary: null,
|
|
117
|
+
documents: [{ key: 'tos', label: 'Terms', href: 'https://x.io/tos' }],
|
|
118
|
+
};
|
|
119
|
+
const v2 = migratePoolMetadataToV2(legacy);
|
|
120
|
+
expect(v2.pool.links.documents).to.deep.equal([{ key: 'tos', label: 'Terms', href: 'https://x.io/tos' }]);
|
|
121
|
+
});
|
|
113
122
|
it('drops a stray pool.report (singular) non-schema field', () => {
|
|
114
123
|
const legacy = legacyFixture();
|
|
115
124
|
legacy.pool.report = { author: { name: '', title: '', avatar: null }, url: '' };
|
|
@@ -208,41 +217,77 @@ describe('migratePoolMetadataToV2', () => {
|
|
|
208
217
|
{ label: 'Fund Administrator', value: { kind: 'text', text: 'Trident Trust' } },
|
|
209
218
|
]);
|
|
210
219
|
});
|
|
211
|
-
it('projects description
|
|
220
|
+
it('projects description and details into body blocks (no Documents block in body)', () => {
|
|
212
221
|
const { body } = migratePoolMetadataToV2(legacyFixture()).pool.factsheet;
|
|
213
222
|
expect(body).to.deep.equal([
|
|
214
223
|
{ type: 'text', id: 'overview', title: 'Overview', body: 'A long issuer description.' },
|
|
215
224
|
{ type: 'text', id: 'detail-0', title: 'Strategy', body: 'We do things.' },
|
|
216
225
|
{ type: 'text', id: 'detail-1', title: 'Risks', body: 'Things can go wrong.' },
|
|
217
|
-
{ type: 'text', id: 'documents', title: 'Documents', body: '- [Moodys rating report](ipfs://Qm1)' },
|
|
218
226
|
{ type: 'section', id: 'performance', ref: 'onchainMetrics' },
|
|
219
227
|
]);
|
|
220
228
|
});
|
|
221
|
-
it('
|
|
229
|
+
it('builds the Overview card with logo and a Factsheet linkRef when those source fields exist', () => {
|
|
230
|
+
const legacy = legacyFixture();
|
|
231
|
+
legacy.pool.issuer.logo = { uri: 'ipfs://QmLogo', mime: 'image/png' };
|
|
232
|
+
legacy.pool.links = { executiveSummary: { uri: 'ipfs://QmFactsheet', mime: 'application/pdf' } };
|
|
233
|
+
const overview = migratePoolMetadataToV2(legacy).pool.factsheet.body.find((b) => b.id === 'overview');
|
|
234
|
+
expect(overview).to.deep.equal({
|
|
235
|
+
type: 'text',
|
|
236
|
+
id: 'overview',
|
|
237
|
+
title: 'Overview',
|
|
238
|
+
body: 'A long issuer description.',
|
|
239
|
+
logo: { uri: 'ipfs://QmLogo', mime: 'image/png' },
|
|
240
|
+
links: [{ label: 'Factsheet', target: { kind: 'linkRef', linkRef: 'executiveSummary' } }],
|
|
241
|
+
});
|
|
242
|
+
});
|
|
243
|
+
it('omits the Overview logo and Factsheet link when their source fields are absent/empty', () => {
|
|
244
|
+
const legacy = legacyFixture();
|
|
245
|
+
legacy.pool.issuer.logo = { uri: '', mime: 'image/png' }; // empty uri => treated as absent
|
|
246
|
+
legacy.pool.links = { executiveSummary: null };
|
|
247
|
+
const overview = migratePoolMetadataToV2(legacy).pool.factsheet.body.find((b) => b.id === 'overview');
|
|
248
|
+
expect(overview).to.deep.equal({
|
|
249
|
+
type: 'text',
|
|
250
|
+
id: 'overview',
|
|
251
|
+
title: 'Overview',
|
|
252
|
+
body: 'A long issuer description.',
|
|
253
|
+
});
|
|
254
|
+
});
|
|
255
|
+
it('builds a Documents tile section (full-width) from rating reports, dropping unsafe URIs', () => {
|
|
222
256
|
const legacy = legacyFixture();
|
|
223
257
|
legacy.pool.poolRatings = [
|
|
224
|
-
{ agency: 'Evil
|
|
258
|
+
{ agency: 'Evil', reportFile: { uri: 'javascript:alert(1)', mime: 'text/html' } },
|
|
225
259
|
{ agency: 'Fitch', reportFile: { uri: 'https://x.io/r2', mime: 'application/pdf' } },
|
|
226
260
|
];
|
|
227
|
-
const
|
|
261
|
+
const { body, sections } = migratePoolMetadataToV2(legacy).pool.factsheet;
|
|
262
|
+
expect(body.some((b) => b.id === 'documents')).to.equal(false); // not in the header region
|
|
263
|
+
const documents = sections.find((s) => s.id === 'documents');
|
|
228
264
|
expect(documents).to.deep.equal({
|
|
229
|
-
type: '
|
|
265
|
+
type: 'documents',
|
|
230
266
|
id: 'documents',
|
|
231
267
|
title: 'Documents',
|
|
232
|
-
|
|
268
|
+
items: [
|
|
269
|
+
{
|
|
270
|
+
title: 'Fitch rating report',
|
|
271
|
+
target: { kind: 'file', file: { uri: 'https://x.io/r2', mime: 'application/pdf' } },
|
|
272
|
+
},
|
|
273
|
+
],
|
|
233
274
|
});
|
|
234
275
|
});
|
|
235
|
-
it('omits the Documents block entirely when no rating has a safe URI', () => {
|
|
276
|
+
it('omits the Documents block entirely when no rating has a safe report URI', () => {
|
|
236
277
|
const legacy = legacyFixture();
|
|
237
278
|
legacy.pool.poolRatings = [{ agency: 'X', reportFile: { uri: 'javascript:alert(1)', mime: 'text/html' } }];
|
|
238
|
-
const
|
|
239
|
-
expect(documents).to.equal(
|
|
279
|
+
const { body, sections } = migratePoolMetadataToV2(legacy).pool.factsheet;
|
|
280
|
+
expect(body.some((b) => b.id === 'documents')).to.equal(false);
|
|
281
|
+
expect((sections ?? []).some((s) => s.id === 'documents')).to.equal(false);
|
|
240
282
|
});
|
|
241
|
-
it('omits sections (app renders defaults) when there is no holdings blob', () => {
|
|
242
|
-
|
|
283
|
+
it('omits sections (app renders defaults) when there is no documents block or holdings blob', () => {
|
|
284
|
+
const legacy = legacyFixture();
|
|
285
|
+
legacy.pool.poolRatings = []; // no rating reports => no Documents section
|
|
286
|
+
expect(migratePoolMetadataToV2(legacy).pool.factsheet.sections).to.equal(undefined);
|
|
243
287
|
});
|
|
244
288
|
it('folds the legacy holdings blob into a table section, faithfully, dropping no column', () => {
|
|
245
289
|
const legacy = legacyFixture();
|
|
290
|
+
legacy.pool.poolRatings = []; // isolate the holdings section
|
|
246
291
|
legacy.holdings = {
|
|
247
292
|
headers: ['Asset', 'ISIN', 'Amount'],
|
|
248
293
|
data: [
|
|
@@ -268,9 +313,11 @@ describe('migratePoolMetadataToV2', () => {
|
|
|
268
313
|
});
|
|
269
314
|
it('skips the holdings table when headers are empty or data is missing', () => {
|
|
270
315
|
const emptyHeaders = legacyFixture();
|
|
316
|
+
emptyHeaders.pool.poolRatings = [];
|
|
271
317
|
emptyHeaders.holdings = { headers: [], data: [{ x: 1 }] };
|
|
272
318
|
expect(migratePoolMetadataToV2(emptyHeaders).pool.factsheet.sections).to.equal(undefined);
|
|
273
319
|
const missingData = legacyFixture();
|
|
320
|
+
missingData.pool.poolRatings = [];
|
|
274
321
|
missingData.holdings = { headers: ['A'] };
|
|
275
322
|
expect(migratePoolMetadataToV2(missingData).pool.factsheet.sections).to.equal(undefined);
|
|
276
323
|
});
|
|
@@ -480,5 +527,135 @@ describe('parsePoolMetadataV2', () => {
|
|
|
480
527
|
delete bad.pool.factsheet.keyFacts[0].items;
|
|
481
528
|
expect(() => parsePoolMetadataV2(bad)).to.throw(/keyFacts\[0\].items must be an array/);
|
|
482
529
|
});
|
|
530
|
+
// --- #482: geo-restrictions, documents/accordion blocks, link targets, combined visibility ---
|
|
531
|
+
it('accepts geo-restricted visibility (single + combined) and a valid geoRestrictions list', () => {
|
|
532
|
+
expect(() => parsePoolMetadataV2(mockPoolMetadataV2)).to.not.throw();
|
|
533
|
+
});
|
|
534
|
+
it('accepts geo-restricted elements even when pool.geoRestrictions is absent (nothing restricted)', () => {
|
|
535
|
+
const doc = clone(mockPoolMetadataV2);
|
|
536
|
+
delete doc.pool.geoRestrictions;
|
|
537
|
+
expect(() => parsePoolMetadataV2(doc)).to.not.throw();
|
|
538
|
+
});
|
|
539
|
+
it('rejects geoRestrictions regions that are not ISO 3166-1 alpha-2', () => {
|
|
540
|
+
const bad = clone(mockPoolMetadataV2);
|
|
541
|
+
bad.pool.geoRestrictions = { regions: ['US', 'USA'] };
|
|
542
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/geoRestrictions.regions\[1\] must be an ISO 3166-1 alpha-2 code/);
|
|
543
|
+
});
|
|
544
|
+
it('rejects an invalid visibility scalar', () => {
|
|
545
|
+
const bad = clone(mockPoolMetadataV2);
|
|
546
|
+
bad.pool.factsheet.keyFacts[0].visibility = 'continent-blocked';
|
|
547
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/visibility/);
|
|
548
|
+
});
|
|
549
|
+
it('rejects a visibility array containing a non-gate (public/hidden or unknown)', () => {
|
|
550
|
+
const bad = clone(mockPoolMetadataV2);
|
|
551
|
+
bad.pool.factsheet.keyFacts[0].visibility = ['whitelisted', 'public'];
|
|
552
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/invalid visibility gate/);
|
|
553
|
+
});
|
|
554
|
+
it('rejects a visibility array with duplicate gates', () => {
|
|
555
|
+
const bad = clone(mockPoolMetadataV2);
|
|
556
|
+
bad.pool.factsheet.keyFacts[0].visibility = ['whitelisted', 'whitelisted'];
|
|
557
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/duplicate visibility gate/);
|
|
558
|
+
});
|
|
559
|
+
it('rejects an empty visibility array', () => {
|
|
560
|
+
const bad = clone(mockPoolMetadataV2);
|
|
561
|
+
bad.pool.factsheet.keyFacts[0].visibility = [];
|
|
562
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/visibility array must not be empty/);
|
|
563
|
+
});
|
|
564
|
+
it('rejects a link target with an unknown kind', () => {
|
|
565
|
+
const bad = clone(mockPoolMetadataV2);
|
|
566
|
+
const docs = bad.pool.factsheet.body.find((b) => b.id === 'docs');
|
|
567
|
+
docs.items[0].target = { kind: 'mailto', mailto: 'x@y.z' };
|
|
568
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/target has an invalid kind/);
|
|
569
|
+
});
|
|
570
|
+
it('rejects a documents item missing its target', () => {
|
|
571
|
+
const bad = clone(mockPoolMetadataV2);
|
|
572
|
+
const docs = bad.pool.factsheet.body.find((b) => b.id === 'docs');
|
|
573
|
+
delete docs.items[0].target;
|
|
574
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/items\[0\].target must be an object/);
|
|
575
|
+
});
|
|
576
|
+
it('rejects an accordion item whose inner block is not a leaf type', () => {
|
|
577
|
+
const bad = clone(mockPoolMetadataV2);
|
|
578
|
+
const accordion = bad.pool.factsheet.body.find((b) => b.id === 'details-accordion');
|
|
579
|
+
accordion.items[0].block = { type: 'documents', id: 'nope', items: [] };
|
|
580
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/block has an invalid type/);
|
|
581
|
+
});
|
|
582
|
+
it('rejects an accordion item with a non-boolean defaultOpen', () => {
|
|
583
|
+
const bad = clone(mockPoolMetadataV2);
|
|
584
|
+
const accordion = bad.pool.factsheet.body.find((b) => b.id === 'details-accordion');
|
|
585
|
+
accordion.items[0].defaultOpen = 'yes';
|
|
586
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/defaultOpen must be a boolean/);
|
|
587
|
+
});
|
|
588
|
+
it('rejects an overview text-block link with a malformed target', () => {
|
|
589
|
+
const bad = clone(mockPoolMetadataV2);
|
|
590
|
+
const overview = bad.pool.factsheet.body.find((b) => b.id === 'overview');
|
|
591
|
+
overview.links[0].target = { kind: 'linkRef' }; // missing linkRef string
|
|
592
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/linkRef must be a string/);
|
|
593
|
+
});
|
|
594
|
+
// --- pool.links.documents (reusable named documents) ---
|
|
595
|
+
it('accepts pool.links.documents (file and href docs)', () => {
|
|
596
|
+
expect(() => parsePoolMetadataV2(mockPoolMetadataV2)).to.not.throw();
|
|
597
|
+
});
|
|
598
|
+
it('rejects a link document setting both file and href', () => {
|
|
599
|
+
const bad = clone(mockPoolMetadataV2);
|
|
600
|
+
bad.pool.links.documents = [
|
|
601
|
+
{ key: 'x', label: 'X', file: { uri: 'ipfs://Q', mime: 'application/pdf' }, href: 'https://x.io' },
|
|
602
|
+
];
|
|
603
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/exactly one of `file` or `href`/);
|
|
604
|
+
});
|
|
605
|
+
it('rejects a link document setting neither file nor href', () => {
|
|
606
|
+
const bad = clone(mockPoolMetadataV2);
|
|
607
|
+
bad.pool.links.documents = [{ key: 'x', label: 'X' }];
|
|
608
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/exactly one of `file` or `href`/);
|
|
609
|
+
});
|
|
610
|
+
it('rejects duplicate link-document keys', () => {
|
|
611
|
+
const bad = clone(mockPoolMetadataV2);
|
|
612
|
+
bad.pool.links.documents = [
|
|
613
|
+
{ key: 'dup', label: 'A', href: 'https://a.io' },
|
|
614
|
+
{ key: 'dup', label: 'B', href: 'https://b.io' },
|
|
615
|
+
];
|
|
616
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/is duplicated/);
|
|
617
|
+
});
|
|
618
|
+
it('rejects a link-document key colliding with a built-in', () => {
|
|
619
|
+
const bad = clone(mockPoolMetadataV2);
|
|
620
|
+
bad.pool.links.documents = [{ key: 'website', label: 'W', href: 'https://w.io' }];
|
|
621
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/collides with a built-in/);
|
|
622
|
+
});
|
|
623
|
+
it('rejects a link document with an empty key', () => {
|
|
624
|
+
const bad = clone(mockPoolMetadataV2);
|
|
625
|
+
bad.pool.links.documents = [{ key: '', label: 'X', href: 'https://x.io' }];
|
|
626
|
+
expect(() => parsePoolMetadataV2(bad)).to.throw(/key must be a non-empty string/);
|
|
627
|
+
});
|
|
628
|
+
});
|
|
629
|
+
describe('resolveLinkTarget', () => {
|
|
630
|
+
const links = mockPoolMetadataV2.pool.links;
|
|
631
|
+
it('resolves inline file and href targets', () => {
|
|
632
|
+
expect(resolveLinkTarget(links, { kind: 'file', file: { uri: 'ipfs://Q', mime: 'application/pdf' } })).to.deep.equal({
|
|
633
|
+
file: { uri: 'ipfs://Q', mime: 'application/pdf' },
|
|
634
|
+
});
|
|
635
|
+
expect(resolveLinkTarget(links, { kind: 'href', href: 'https://x.io' })).to.deep.equal({ href: 'https://x.io' });
|
|
636
|
+
});
|
|
637
|
+
it('resolves built-in linkRefs (executiveSummary -> file, website/forum -> url)', () => {
|
|
638
|
+
expect(resolveLinkTarget(links, { kind: 'linkRef', linkRef: 'executiveSummary' })).to.deep.equal({
|
|
639
|
+
file: links.executiveSummary,
|
|
640
|
+
});
|
|
641
|
+
expect(resolveLinkTarget(links, { kind: 'linkRef', linkRef: 'website' })).to.deep.equal({
|
|
642
|
+
href: 'https://newsilver.com',
|
|
643
|
+
});
|
|
644
|
+
expect(resolveLinkTarget(links, { kind: 'linkRef', linkRef: 'forum' })).to.deep.equal({
|
|
645
|
+
href: 'https://gov.centrifuge.io/tag/newsilver',
|
|
646
|
+
});
|
|
647
|
+
});
|
|
648
|
+
it('resolves named documents by key (file or href)', () => {
|
|
649
|
+
expect(resolveLinkTarget(links, { kind: 'linkRef', linkRef: 'prospectus' })).to.deep.equal({
|
|
650
|
+
file: { uri: 'ipfs://QmProspectusDoc', mime: 'application/pdf' },
|
|
651
|
+
});
|
|
652
|
+
expect(resolveLinkTarget(links, { kind: 'linkRef', linkRef: 'termsOfService' })).to.deep.equal({
|
|
653
|
+
href: 'https://example.com/tos',
|
|
654
|
+
});
|
|
655
|
+
});
|
|
656
|
+
it('returns null for an unknown linkRef or missing links', () => {
|
|
657
|
+
expect(resolveLinkTarget(links, { kind: 'linkRef', linkRef: 'nope' })).to.equal(null);
|
|
658
|
+
expect(resolveLinkTarget(undefined, { kind: 'linkRef', linkRef: 'website' })).to.equal(null);
|
|
659
|
+
});
|
|
483
660
|
});
|
|
484
661
|
//# sourceMappingURL=poolMetadataMigration.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"poolMetadataMigration.test.js","sourceRoot":"","sources":["../../src/utils/poolMetadataMigration.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAEzF,MAAM,KAAK,GAAG,CAAI,KAAQ,EAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAM,CAAA;AAExE,oFAAoF;AACpF,SAAS,aAAa;IACpB,OAAO;QACL,OAAO,EAAE,CAAC;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE;YACtD,YAAY,EAAE,eAAe;YAC7B,aAAa,EAAE,WAAW;YAC1B,YAAY,EAAE,MAAM;YACpB,oBAAoB,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,MAAM,EAAE;gBACN,OAAO,EAAE,UAAU;gBACnB,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,4BAA4B;gBACzC,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,IAAI;gBACV,gBAAgB,EAAE,MAAM;gBACxB,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,8BAA8B,EAAE,EAAE,+BAA+B;oBACtG,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,2BAA2B,EAAE,EAAE,4BAA4B;oBACpG,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,oCAAoC,EAAE,EAAE,uBAAuB;oBACpG,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,4DAA4D;iBACxG;aACF;YACD,KAAK,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;YACjC,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE;gBAC5C,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE;aACjD;YACD,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,gBAAgB,EAAE,CAAC;YACrF,WAAW,EAAE;gBACX;oBACE,MAAM,EAAE,QAAQ;oBAChB,KAAK,EAAE,KAAK;oBACZ,SAAS,EAAE,iBAAiB;oBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE;iBAC3D;gBACD,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;aAChC;SACF;QACD,YAAY,EAAE;YACZ,oCAAoC,EAAE;gBACpC,oBAAoB,EAAE,IAAI;gBAC1B,GAAG,EAAE,QAAQ;gBACb,uBAAuB,EAAE,EAAE;aAC5B;YACD,oCAAoC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;SACvD;QACD,UAAU,EAAE;YACV,sBAAsB,EAAE,CAAC,IAAI,CAAC;YAC9B,sBAAsB,EAAE,CAAC,IAAI,CAAC;YAC9B,qBAAqB,EAAE,oBAAoB;YAC3C,YAAY,EAAE,EAAE;YAChB,eAAe,EAAE,IAAI;SACtB;QACD,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;QACvD,aAAa,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;QACtC,gBAAgB,EAAE,EAAE;QACpB,gBAAgB,EAAE;YAChB,oCAAoC,EAAE;gBACpC,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;aAC3E;SACF;KACF,CAAA;AACH,CAAC;AAED,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACvC,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC1B,MAAM,CAAC,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACtE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC/C,MAAM,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAuC,CAAA;QACzF,MAAM,IAAI,GAAG,EAAE,CAAC,IAA+B,CAAA;QAC/C,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAA;QACzD,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC5C,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC5C,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAiC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;QACvD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QAClD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;QACjD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IACzF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,sBAAsB,EAAE,CAAC,IAAI,CAAC,EAAE,sBAAsB,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACzG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAC/B,MAAM,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,oCAAoC,CAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QACpF,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,oCAAoC,CAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACvF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAA;QAC/D,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC7C,MAAM,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACxC,oCAAoC,EAAE;gBACpC,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;aAC3E;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,aAAa,EAAE,CAC7B;QAAC,MAAM,CAAC,IAAgC,CAAC,MAAM,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAA;QAC7G,MAAM,EAAE,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,0DAA0D;QAC1D,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,IAAI,CAC7F,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,mBAAmB,CACpC,CAAA;QACD,MAAM,OAAO,GAAG,gBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAE,CAAA;QAC3E,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAA;QACnD,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACxC;gBACE,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,KAAK;gBACZ,SAAS,EAAE,iBAAiB;gBAC5B,UAAU,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,iBAAiB,EAAE;aAC3D;YACD,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;SAChC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4GAA4G,EAAE,GAAG,EAAE;QACpH,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;QAC7E,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAC7B;gBACE,IAAI,EAAE,cAAc;gBACpB,EAAE,EAAE,WAAW;gBACf,KAAK,EAAE,WAAW;gBAClB,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE;oBACjE,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yBAAyB,EAAE,EAAE;oBACjF,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;oBACpD,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;oBACvE,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;oBAC7E,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;oBAClE,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;oBACpE,8FAA8F;oBAC9F,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;oBACxG,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,EAAE;oBACjF,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;iBAC7D;aACF;YACD;gBACE,IAAI,EAAE,cAAc;gBACpB,EAAE,EAAE,mBAAmB;gBACvB,KAAK,EAAE,mBAAmB;gBAC1B,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2BAA2B,EAAE,EAAE;oBAC1F,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oCAAoC,EAAE,EAAE;oBACpG,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE;iBAClE;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sFAAsF,EAAE,GAAG,EAAE;QAC9F,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;QAC7E,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QACjD,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACtE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAC/G,KAAK,CACN,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qFAAqF,EAAE,GAAG,EAAE;QAC7F,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,EAAE,CAAA;QAClC,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAA;QAC5B,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;QACpE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA,CAAC,6BAA6B;QAChE,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAA;QAClD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;QAC/C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,OAAQ,MAAM,CAAC,IAAI,CAAC,MAAkC,CAAC,UAAU,CAAA;QACjE,MAAM,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;QAC5D,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;QACpE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA,CAAC,6CAA6C;IAClF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+FAA+F,EAAE,GAAG,EAAE;QACvG,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAClF,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;QACpE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAClC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;QAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,yBAAyB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2EAA2E,EAAE,GAAG,EAAE;QACnF,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAA;QACxF,MAAM,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAA;QACvE,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,mBAAmB,CAAC,CAAA;QACzE,MAAM,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5C,EAAE,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE;SAChF,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,EAAE,IAAI,EAAE,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;QACzE,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,4BAA4B,EAAE;YACvF,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE;YAC1E,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE;YAC9E,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,sCAAsC,EAAE;YACnG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,gBAAgB,EAAE;SAC9D,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG;YACxB,EAAE,MAAM,EAAE,+BAA+B,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;YAC1G,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE;SACrF,CAAA;QACD,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAA;QACxG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAC9B,IAAI,EAAE,MAAM;YACZ,EAAE,EAAE,WAAW;YACf,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,0CAA0C;SACjD,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;QAC1G,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,CAAA;QACxG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,MAAM,CAAC,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC/F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qFAAqF,EAAE,GAAG,EAAE;QAC7F,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;QAC9B,MAAM,CAAC,QAAQ,GAAG;YAChB,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;YACpC,IAAI,EAAE;gBACJ,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE;gBAChE,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE;aACxD;SACF,CAAA;QACD,MAAM,EAAE,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YAChD;gBACE,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,UAAU;gBACd,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;gBACpC,IAAI,EAAE;oBACJ,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,wBAAwB;oBACnE,CAAC,aAAa,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,4CAA4C;iBAC7E;aACF;SACF,CAAC,CAAA;QACF,8DAA8D;QAC9D,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,YAAY,GAAG,aAAa,EAAE,CAAA;QACpC,YAAY,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QACzD,MAAM,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAE1F,MAAM,WAAW,GAAG,aAAa,EAAE,CAAA;QACnC,WAAW,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAA2C,CAAA;QAClF,MAAM,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,IAAI,GAAG,uBAAuB,CAAC,aAAa,EAAE,CAAC,CAAA;QACrD,MAAM,KAAK,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAA;QAC3C,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAClF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,EAAE,GAAG,uBAAuB,CAAC,gBAAgB,CAAC,CAAA;QACpD,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC3C,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,wDAAwD,EAAE,GAAG,EAAE;QACtE,gGAAgG;QAChG,MAAM,KAAK,GAAG,GAAG,EAAE,CACjB,CAAC;YACC,OAAO,EAAE,CAAC;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE;oBACT,QAAQ,EAAE;wBACR,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE;wBAClC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE;qBAClC;oBACD,IAAI,EAAE;wBACJ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;wBAC/F,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE;wBAC3E;4BACE,IAAI,EAAE,UAAU;4BAChB,EAAE,EAAE,IAAI;4BACR,IAAI,EAAE;gCACJ;oCACE,KAAK,EAAE,GAAG;oCACV,KAAK,EAAE;wCACL,IAAI,EAAE,OAAO;wCACb,EAAE,EAAE,IAAI;wCACR,SAAS,EAAE,KAAK;wCAChB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;qCAC1D;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;YACD,YAAY,EAAE,EAAE;YAChB,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;SACjD,CAA8B,CAAA;QAEjC,EAAE,CAAC,gFAAgF,EAAE,GAAG,EAAE;YACxF,MAAM,EAAE,QAAQ,EAAE,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAA;YACrE,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC7B;oBACE,IAAI,EAAE,cAAc;oBACpB,EAAE,EAAE,WAAW;oBACf,KAAK,EAAE,WAAW;oBAClB,KAAK,EAAE;wBACL,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;wBAC1D,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;qBACrD;iBACF;aACF,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iFAAiF,EAAE,GAAG,EAAE;YACzF,MAAM,IAAI,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAA;YAClE,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAA4B,CAAA;YACrE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YAClG,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACzC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAA4B,CAAA;YACrE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAA;YAC1E,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAmD,CAAA;YAC5F,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC3C,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;aAC1D,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gGAAgG,EAAE,GAAG,EAAE;YACxG,MAAM,EAAE,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3C,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;YAC3C,MAAM,QAAQ,GAAG,EAAE,CAAC,IAAI,CAAC,SAAU,CAAC,QAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAA;YAC9E,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC7B,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,UAAU;gBACd,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,CAAC,GAAG,CAAC;gBACd,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;aACd,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;YACvF,MAAM,QAAQ,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAA;YACjD,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;YAC1D,gEAAgE;YAChE,MAAM,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IACtE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACrG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IACnF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAA4B,CAAA;QACtG,KAAK,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;QAC7B,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;IAC7E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAA4B,CAAA;QACtG,OAAO,KAAK,CAAC,IAAI,CAAA;QACjB,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,aAAa,CAA4B,CAAA;QACvG,OAAO,CAAC,GAAG,GAAG,mBAAmB,CAAA;QACjC,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAA4B,CAAA;QAC9F,KAAK,CAAC,gBAAgB,GAAG,CAAC,QAAQ,CAAC,CAAA;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAA;IACrE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,UAAU,GAAG,QAAiB,CAAA;QAC/D,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,OAAQ,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,CAAC,CAA6B,CAAC,EAAE,CAAA;QAClE,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CACpC;QAAC,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,CAAC,CAA6B,CAAC,IAAI,GAAG,OAAO,CAAA;QACxE,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAA4B,CAAA;QACpG,KAAK,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAA;QAC1D,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAA2C,CAAA;QAC/G,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,MAAM,GAAG,kBAAkB,CAAA;QAC5C,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAmB;YAC9B,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,EAAE,GAAG,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE;YAC1D,YAAY,EAAE,EAAE;SACjB,CAAA;QACD,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IAC3D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,GAAG,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAU,CAAA;QACjG,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,MAAM,EAAW,CAAA;QAC5E,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,eAAe,EAAW,CAAA;QACjG,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;IACzE,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,EAAE,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACpC,EAAE,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,CAAA;QAC3F,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAW,CAAA;QAC1G,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACrF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,EAAE,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACpC,EAAE,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,GAAG;YAChD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE;gBACrD,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE;aAC1E;SACF,CAAA;QACD,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAA;IACtD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,GAAG,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,OAAQ,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,CAAC,CAAC,CAA6B,CAAC,KAAK,CAAA;QACzE,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;IACzF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"poolMetadataMigration.test.js","sourceRoot":"","sources":["../../src/utils/poolMetadataMigration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,17 @@ export type BatchTransactionData = {
|
|
|
14
14
|
value?: bigint;
|
|
15
15
|
messages?: Record<number, MessageTypeWithSubType[]>;
|
|
16
16
|
};
|
|
17
|
+
/**
|
|
18
|
+
* Encode the outer calldata for a set of inner calls exactly as the signing
|
|
19
|
+
* path sends it: a single inner call is sent verbatim (no multicall wrapper),
|
|
20
|
+
* while two or more are wrapped in `multicall(bytes[])`. Centralizing this keeps
|
|
21
|
+
* `wrapTransaction` (broadcast) and `buildOnly` (build) byte-for-byte identical.
|
|
22
|
+
*
|
|
23
|
+
* Uses the registered `ABI.Multicall` fragment — the `multicall(bytes[])`
|
|
24
|
+
* selector is identical across every protocol contract that supports batching,
|
|
25
|
+
* so the encoded bytes don't depend on which contract is targeted.
|
|
26
|
+
*/
|
|
27
|
+
export declare function encodeBatchCalldata(data: HexString[]): HexString;
|
|
17
28
|
export declare function wrapTransaction(title: string, ctx: TransactionContext, { contract, data: data_, value: value_, messages, }: {
|
|
18
29
|
contract: HexString;
|
|
19
30
|
data: HexString | HexString[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,YAAY,EACZ,GAAG,EACH,MAAM,EAGN,KAAK,GAAG,EAET,MAAM,MAAM,CAAA;AAIb,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EAEf,MAAM,EACN,kBAAkB,EACnB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AASzC,qBAAa,kBAAmB,SAAQ,KAAK;IAGlC,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,MAAM;IAHd,IAAI,SAAuB;gBAE3B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM;CAOxB;AAgBD,MAAM,MAAM,oBAAoB,GAAG;IACjC,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,EAAE,SAAS,EAAE,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAA;CACpD,CAAA;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,SAAS,CAQhE;AAED,wBAAuB,eAAe,CACpC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,kBAAkB,EACvB,EACE,QAAQ,EACR,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,MAAM,EACb,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IAId,QAAQ,CAAC,EAAE,MAAM,CAAC,YAAY,EAAE,sBAAsB,EAAE,CAAC,CAAA;CAC1D,EACD,OAAO,GAAE;IACP,QAAQ,EAAE,OAAO,CAAA;CACI,GACtB,cAAc,CAAC,eAAe,GAAG,oBAAoB,CAAC,CAuFxD;AAED,wBAAuB,aAAa,CAClC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,kBAAkB,EACvB,mBAAmB,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,GAC5C,cAAc,CAAC,eAAe,CAAC,CAmBjC;AAoCD,wBAAuB,aAAa,CAAC,CAAC,GAAG,GAAG,EAC1C,KAAK,EAAE,MAAM,EACb,mBAAmB,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACpC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAMpC;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,IAAI,YAAY,CAErE;AAuBD,wBAAgB,cAAc,CAAC,UAAU,EAAE;IACzC,IAAI,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,EAAE,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAC7B,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAA;CAClC,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CA8B7D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { decodeEventLog,
|
|
1
|
+
import { decodeEventLog, encodeFunctionData, toEventSelector, withRetry, } from 'viem';
|
|
2
2
|
import { arbitrum, arbitrumSepolia, avalanche, base, baseSepolia, mainnet, sepolia } from 'viem/chains';
|
|
3
3
|
import { ABI } from '../abi/index.js';
|
|
4
4
|
import { SAFE_PROXY_BYTECODE } from '../constants.js';
|
|
@@ -35,6 +35,27 @@ async function assertWalletChainMatches(ctx) {
|
|
|
35
35
|
throw new ChainMismatchError(expected, actual);
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Encode the outer calldata for a set of inner calls exactly as the signing
|
|
40
|
+
* path sends it: a single inner call is sent verbatim (no multicall wrapper),
|
|
41
|
+
* while two or more are wrapped in `multicall(bytes[])`. Centralizing this keeps
|
|
42
|
+
* `wrapTransaction` (broadcast) and `buildOnly` (build) byte-for-byte identical.
|
|
43
|
+
*
|
|
44
|
+
* Uses the registered `ABI.Multicall` fragment — the `multicall(bytes[])`
|
|
45
|
+
* selector is identical across every protocol contract that supports batching,
|
|
46
|
+
* so the encoded bytes don't depend on which contract is targeted.
|
|
47
|
+
*/
|
|
48
|
+
export function encodeBatchCalldata(data) {
|
|
49
|
+
if (data.length === 0)
|
|
50
|
+
throw new Error('No calldata to encode');
|
|
51
|
+
if (data.length === 1)
|
|
52
|
+
return data[0];
|
|
53
|
+
return encodeFunctionData({
|
|
54
|
+
abi: ABI.Multicall,
|
|
55
|
+
functionName: 'multicall',
|
|
56
|
+
args: [data],
|
|
57
|
+
});
|
|
58
|
+
}
|
|
38
59
|
export async function* wrapTransaction(title, ctx, { contract, data: data_, value: value_, messages, }, options = { simulate: false }) {
|
|
39
60
|
const data = Array.isArray(data_) ? data_ : [data_];
|
|
40
61
|
if (ctx.isBatching) {
|
|
@@ -57,18 +78,17 @@ export async function* wrapTransaction(title, ctx, { contract, data: data_, valu
|
|
|
57
78
|
if (!options.simulate) {
|
|
58
79
|
const result = yield* doTransaction(title, ctx, async () => {
|
|
59
80
|
await assertWalletChainMatches(ctx);
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
args: [data],
|
|
81
|
+
// Both the single-call and multicall cases broadcast via `sendTransaction`
|
|
82
|
+
// with calldata from `encodeBatchCalldata` (the same encoder `buildOnly`
|
|
83
|
+
// uses), instead of `writeContract` for the multicall case. The bytes are
|
|
84
|
+
// identical — `writeContract` just calls `encodeFunctionData` + `sendTransaction`
|
|
85
|
+
// internally — so the on-chain effect and gas are unchanged; this only
|
|
86
|
+
// moves ABI encoding to one shared helper so the build and signing paths
|
|
87
|
+
// can never diverge. (Pre-flight ABI validation is unaffected: the calldata
|
|
88
|
+
// is encoded from the same ABI either way.)
|
|
89
|
+
return ctx.walletClient.sendTransaction({
|
|
90
|
+
to: contract,
|
|
91
|
+
data: encodeBatchCalldata(data),
|
|
72
92
|
value,
|
|
73
93
|
});
|
|
74
94
|
});
|
|
@@ -95,7 +115,7 @@ export async function* wrapTransaction(title, ctx, { contract, data: data_, valu
|
|
|
95
115
|
calls: [
|
|
96
116
|
{
|
|
97
117
|
to: contract,
|
|
98
|
-
abi:
|
|
118
|
+
abi: ABI.Multicall,
|
|
99
119
|
functionName: 'multicall',
|
|
100
120
|
args: [data],
|
|
101
121
|
value,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,
|
|
1
|
+
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.test.d.ts","sourceRoot":"","sources":["../../src/utils/transaction.test.ts"],"names":[],"mappings":""}
|