@ardrive/turbo-sdk 1.44.0-alpha.1 → 1.44.0-alpha.2
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/lib/cjs/common/upload.js +113 -18
- package/lib/esm/common/upload.js +113 -18
- package/lib/types/common/upload.d.ts +28 -0
- package/lib/types/common/upload.d.ts.map +1 -1
- package/lib/types/types.d.ts +9 -3
- package/lib/types/types.d.ts.map +1 -1
- package/package.json +1 -1
package/lib/cjs/common/upload.js
CHANGED
|
@@ -299,10 +299,12 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
299
299
|
*/
|
|
300
300
|
if (fundingMode instanceof types_js_1.X402Funding &&
|
|
301
301
|
params.chunkingMode === 'disabled' &&
|
|
302
|
-
fileSizeFactory()
|
|
302
|
+
fileSizeFactory() + x402SignedItemOverheadByteCount >
|
|
303
|
+
maxX402SingleRequestByteCount) {
|
|
303
304
|
throw new Error(`An x402 upload of ${fileSizeFactory()} bytes must be chunked: the ` +
|
|
304
|
-
`single-request path buffers the item in memory and is
|
|
305
|
-
|
|
305
|
+
`single-request path buffers the SIGNED item in memory and is ` +
|
|
306
|
+
`limited to ${maxX402SingleRequestByteCount} bytes, of which ` +
|
|
307
|
+
`signing claims about ${x402SignedItemOverheadByteCount}. Remove ` +
|
|
306
308
|
`chunkingMode: 'disabled' to upload this item.`);
|
|
307
309
|
}
|
|
308
310
|
this.logger.debug('Starting file upload', { params });
|
|
@@ -334,9 +336,8 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
334
336
|
});
|
|
335
337
|
if (fundingMode instanceof types_js_1.OnDemandFunding &&
|
|
336
338
|
cryptoFundResult === undefined) {
|
|
337
|
-
const totalByteCount = dataItemSizeFactory();
|
|
338
339
|
cryptoFundResult = await this.onDemand({
|
|
339
|
-
|
|
340
|
+
itemByteCounts: [dataItemSizeFactory()],
|
|
340
341
|
onDemandFunding: fundingMode,
|
|
341
342
|
});
|
|
342
343
|
}
|
|
@@ -438,6 +439,28 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
438
439
|
}
|
|
439
440
|
throw new errors_js_2.FailedRequestError(msg, lastStatusCode);
|
|
440
441
|
}
|
|
442
|
+
/**
|
|
443
|
+
* Returns an upper bound on the bytes in a folder's manifest, if every file
|
|
444
|
+
* lands. Data item ids are always 43 characters, so placeholder ids give the
|
|
445
|
+
* real length, except for the index path: without an index file, the
|
|
446
|
+
* manifest indexes whichever file finished first, so the estimate allows for
|
|
447
|
+
* the longest path there.
|
|
448
|
+
*/
|
|
449
|
+
async plannedManifestByteCount({ relativePaths, indexFile, fallbackFile, }) {
|
|
450
|
+
const placeholder = { id: 'x'.repeat(43) };
|
|
451
|
+
const paths = {};
|
|
452
|
+
let longestPathByteCount = 0;
|
|
453
|
+
for (const path of relativePaths) {
|
|
454
|
+
paths[path] = placeholder;
|
|
455
|
+
longestPathByteCount = Math.max(longestPathByteCount, Buffer.byteLength(JSON.stringify(path)));
|
|
456
|
+
}
|
|
457
|
+
const manifest = await this.generateManifest({
|
|
458
|
+
paths,
|
|
459
|
+
indexFile,
|
|
460
|
+
fallbackFile,
|
|
461
|
+
});
|
|
462
|
+
return Buffer.byteLength(JSON.stringify(manifest)) + longestPathByteCount;
|
|
463
|
+
}
|
|
441
464
|
async generateManifest({ paths, indexFile, fallbackFile, }) {
|
|
442
465
|
const indexPath =
|
|
443
466
|
// Use the user provided index file if it exists,
|
|
@@ -842,11 +865,20 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
842
865
|
};
|
|
843
866
|
let cryptoFundResult;
|
|
844
867
|
if (fundingMode instanceof types_js_1.OnDemandFunding) {
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
868
|
+
// allow extra per item for ANS-104 headers
|
|
869
|
+
const headerByteCount = 1200;
|
|
870
|
+
const itemByteCounts = filesToUpload.map((file) => this.getFileSize(file) + headerByteCount);
|
|
871
|
+
// The manifest spends the same balance. Left out of the estimate, it
|
|
872
|
+
// needed a second top-up of its own.
|
|
873
|
+
if (!disableManifest && files.length > 0) {
|
|
874
|
+
itemByteCounts.push((await this.plannedManifestByteCount({
|
|
875
|
+
relativePaths: files.map((file) => this.getRelativePath(file, params)),
|
|
876
|
+
indexFile,
|
|
877
|
+
fallbackFile,
|
|
878
|
+
})) + headerByteCount);
|
|
879
|
+
}
|
|
848
880
|
cryptoFundResult = await this.onDemand({
|
|
849
|
-
|
|
881
|
+
itemByteCounts,
|
|
850
882
|
onDemandFunding: fundingMode,
|
|
851
883
|
});
|
|
852
884
|
}
|
|
@@ -978,6 +1010,54 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
978
1010
|
}
|
|
979
1011
|
return revokedApprovals;
|
|
980
1012
|
}
|
|
1013
|
+
/**
|
|
1014
|
+
* The winc the service will charge for the given items. Never less.
|
|
1015
|
+
*
|
|
1016
|
+
* The service prices an item as a per-byte rate plus a fixed per-item
|
|
1017
|
+
* charge, rounded up per item: a zero-byte item costs about 8M winc. Scaling
|
|
1018
|
+
* the 1 GiB price down to the item size dropped that fixed part, so a small
|
|
1019
|
+
* upload was under funded by up to ~38%, a folder by roughly the fixed charge
|
|
1020
|
+
* per file, and `topUpBufferMultiplier: 1` could never succeed.
|
|
1021
|
+
*
|
|
1022
|
+
* Items from 1 byte to 1 GiB are priced from two quotes, at 1 byte and 1 GiB.
|
|
1023
|
+
* The line through those two (already rounded up) prices never falls below
|
|
1024
|
+
* the service's unrounded price anywhere between them, so rounding each item
|
|
1025
|
+
* up keeps every estimate, and their sum, at or above what the service
|
|
1026
|
+
* charges. Rounding only the total could not promise that. Anything the line
|
|
1027
|
+
* would have to extrapolate to, and a lone item, is quoted exactly.
|
|
1028
|
+
*
|
|
1029
|
+
* The two quotes are made once per estimate. Each file of a folder still
|
|
1030
|
+
* checks its own price when it uploads.
|
|
1031
|
+
*/
|
|
1032
|
+
async estimateUploadWinc(itemByteCounts) {
|
|
1033
|
+
const oneGiB = 2 ** 30;
|
|
1034
|
+
const inModelRange = (bytes) => bytes >= 1 && bytes <= oneGiB;
|
|
1035
|
+
const useModel = itemByteCounts.filter(inModelRange).length > 1;
|
|
1036
|
+
const modelled = useModel ? itemByteCounts.filter(inModelRange) : [];
|
|
1037
|
+
const quoted = useModel
|
|
1038
|
+
? itemByteCounts.filter((bytes) => !inModelRange(bytes))
|
|
1039
|
+
: itemByteCounts;
|
|
1040
|
+
const bytes = useModel ? [1, oneGiB, ...quoted] : quoted;
|
|
1041
|
+
if (bytes.length === 0) {
|
|
1042
|
+
return '0';
|
|
1043
|
+
}
|
|
1044
|
+
const quotes = await this.paymentService.getUploadCosts({ bytes });
|
|
1045
|
+
let total = (useModel ? quotes.slice(2) : quotes).reduce((sum, { winc }) => sum.plus(winc), new bignumber_js_1.BigNumber(0));
|
|
1046
|
+
if (useModel) {
|
|
1047
|
+
const [oneByte, gibibyte] = quotes;
|
|
1048
|
+
const perByte = new bignumber_js_1.BigNumber(gibibyte.winc)
|
|
1049
|
+
.minus(oneByte.winc)
|
|
1050
|
+
.dividedBy(oneGiB - 1);
|
|
1051
|
+
const perItem = new bignumber_js_1.BigNumber(oneByte.winc).minus(perByte);
|
|
1052
|
+
for (const itemBytes of modelled) {
|
|
1053
|
+
total = total.plus(perByte
|
|
1054
|
+
.multipliedBy(itemBytes)
|
|
1055
|
+
.plus(perItem)
|
|
1056
|
+
.integerValue(bignumber_js_1.BigNumber.ROUND_UP));
|
|
1057
|
+
}
|
|
1058
|
+
}
|
|
1059
|
+
return total.toFixed(0);
|
|
1060
|
+
}
|
|
981
1061
|
/**
|
|
982
1062
|
* Triggers an upload that will top-up the wallet with Credits for the amount before uploading.
|
|
983
1063
|
* First, it calculates the expected cost of the upload. Next, it checks the wallet for existing
|
|
@@ -985,16 +1065,10 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
985
1065
|
* and await for the balance to be credited.
|
|
986
1066
|
* Note: Only `ario`, `solana`, and `base-eth` tokens are currently supported for on-demand uploads.
|
|
987
1067
|
*/
|
|
988
|
-
async onDemand({
|
|
1068
|
+
async onDemand({ itemByteCounts, onDemandFunding, }) {
|
|
989
1069
|
const { maxTokenAmount, topUpBufferMultiplier } = onDemandFunding;
|
|
990
1070
|
const currentBalance = await this.paymentService.getBalance();
|
|
991
|
-
const
|
|
992
|
-
bytes: [2 ** 30],
|
|
993
|
-
}))[0].winc;
|
|
994
|
-
const expectedWincPrice = new bignumber_js_1.BigNumber(wincPriceForOneGiB)
|
|
995
|
-
.multipliedBy(totalByteCount)
|
|
996
|
-
.dividedBy(2 ** 30)
|
|
997
|
-
.toFixed(0, bignumber_js_1.BigNumber.ROUND_UP);
|
|
1071
|
+
const expectedWincPrice = await this.estimateUploadWinc(itemByteCounts);
|
|
998
1072
|
if ((0, bignumber_js_1.BigNumber)(currentBalance.effectiveBalance).isGreaterThanOrEqualTo(expectedWincPrice)) {
|
|
999
1073
|
this.logger.debug('Sufficient balance for on demand upload', {
|
|
1000
1074
|
currentBalance,
|
|
@@ -1022,7 +1096,15 @@ class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUploadServ
|
|
|
1022
1096
|
.toFixed(0, bignumber_js_1.BigNumber.ROUND_UP);
|
|
1023
1097
|
if (maxTokenAmount !== undefined) {
|
|
1024
1098
|
if (new bignumber_js_1.BigNumber(topUpTokenAmount).isGreaterThan(maxTokenAmount)) {
|
|
1025
|
-
|
|
1099
|
+
// Both amounts are in base units. Report them in whole tokens: the
|
|
1100
|
+
// exponent is the number of decimals, so divide by 10 to that power.
|
|
1101
|
+
const baseUnitsPerToken = new bignumber_js_1.BigNumber(10).pow(index_js_1.exponentMap[this.token]);
|
|
1102
|
+
throw new Error(`Top up token amount ${new bignumber_js_1.BigNumber(topUpTokenAmount)
|
|
1103
|
+
.div(baseUnitsPerToken)
|
|
1104
|
+
.toFixed()} ${this.token} is greater than the maximum allowed ` +
|
|
1105
|
+
`amount of ${new bignumber_js_1.BigNumber(maxTokenAmount)
|
|
1106
|
+
.div(baseUnitsPerToken)
|
|
1107
|
+
.toFixed()} ${this.token}`);
|
|
1026
1108
|
}
|
|
1027
1109
|
}
|
|
1028
1110
|
this.logger.debug(`Topping up wallet with ${topUpTokenAmount} ${this.token} for ${topUpWincAmount} winc`);
|
|
@@ -1084,6 +1166,19 @@ exports.TurboAuthenticatedBaseUploadService = TurboAuthenticatedBaseUploadServic
|
|
|
1084
1166
|
* by exhausting memory.
|
|
1085
1167
|
*/
|
|
1086
1168
|
const maxX402SingleRequestByteCount = 100 * 1024 * 1024;
|
|
1169
|
+
/**
|
|
1170
|
+
* Headroom for what signing ADDS, so the guard measures the thing that is
|
|
1171
|
+
* actually buffered.
|
|
1172
|
+
*
|
|
1173
|
+
* The limit applies to the signed data item, not the file: ANS-104 headers,
|
|
1174
|
+
* the signature and the caller's tags all ride along. Checking the raw size
|
|
1175
|
+
* let a file in the top of the range through, to be signed, buffered, and then
|
|
1176
|
+
* refused by the service — wasting precisely the expensive step the guard
|
|
1177
|
+
* exists to skip.
|
|
1178
|
+
*
|
|
1179
|
+
* Same allowance folder uploads already use for the same overhead.
|
|
1180
|
+
*/
|
|
1181
|
+
const x402SignedItemOverheadByteCount = 1200;
|
|
1087
1182
|
/**
|
|
1088
1183
|
* Drain a data-item stream into a Buffer, resuming it once the reader is
|
|
1089
1184
|
* attached so upload-progress events still fire.
|
package/lib/esm/common/upload.js
CHANGED
|
@@ -295,10 +295,12 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
295
295
|
*/
|
|
296
296
|
if (fundingMode instanceof X402Funding &&
|
|
297
297
|
params.chunkingMode === 'disabled' &&
|
|
298
|
-
fileSizeFactory()
|
|
298
|
+
fileSizeFactory() + x402SignedItemOverheadByteCount >
|
|
299
|
+
maxX402SingleRequestByteCount) {
|
|
299
300
|
throw new Error(`An x402 upload of ${fileSizeFactory()} bytes must be chunked: the ` +
|
|
300
|
-
`single-request path buffers the item in memory and is
|
|
301
|
-
|
|
301
|
+
`single-request path buffers the SIGNED item in memory and is ` +
|
|
302
|
+
`limited to ${maxX402SingleRequestByteCount} bytes, of which ` +
|
|
303
|
+
`signing claims about ${x402SignedItemOverheadByteCount}. Remove ` +
|
|
302
304
|
`chunkingMode: 'disabled' to upload this item.`);
|
|
303
305
|
}
|
|
304
306
|
this.logger.debug('Starting file upload', { params });
|
|
@@ -330,9 +332,8 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
330
332
|
});
|
|
331
333
|
if (fundingMode instanceof OnDemandFunding &&
|
|
332
334
|
cryptoFundResult === undefined) {
|
|
333
|
-
const totalByteCount = dataItemSizeFactory();
|
|
334
335
|
cryptoFundResult = await this.onDemand({
|
|
335
|
-
|
|
336
|
+
itemByteCounts: [dataItemSizeFactory()],
|
|
336
337
|
onDemandFunding: fundingMode,
|
|
337
338
|
});
|
|
338
339
|
}
|
|
@@ -434,6 +435,28 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
434
435
|
}
|
|
435
436
|
throw new FailedRequestError(msg, lastStatusCode);
|
|
436
437
|
}
|
|
438
|
+
/**
|
|
439
|
+
* Returns an upper bound on the bytes in a folder's manifest, if every file
|
|
440
|
+
* lands. Data item ids are always 43 characters, so placeholder ids give the
|
|
441
|
+
* real length, except for the index path: without an index file, the
|
|
442
|
+
* manifest indexes whichever file finished first, so the estimate allows for
|
|
443
|
+
* the longest path there.
|
|
444
|
+
*/
|
|
445
|
+
async plannedManifestByteCount({ relativePaths, indexFile, fallbackFile, }) {
|
|
446
|
+
const placeholder = { id: 'x'.repeat(43) };
|
|
447
|
+
const paths = {};
|
|
448
|
+
let longestPathByteCount = 0;
|
|
449
|
+
for (const path of relativePaths) {
|
|
450
|
+
paths[path] = placeholder;
|
|
451
|
+
longestPathByteCount = Math.max(longestPathByteCount, Buffer.byteLength(JSON.stringify(path)));
|
|
452
|
+
}
|
|
453
|
+
const manifest = await this.generateManifest({
|
|
454
|
+
paths,
|
|
455
|
+
indexFile,
|
|
456
|
+
fallbackFile,
|
|
457
|
+
});
|
|
458
|
+
return Buffer.byteLength(JSON.stringify(manifest)) + longestPathByteCount;
|
|
459
|
+
}
|
|
437
460
|
async generateManifest({ paths, indexFile, fallbackFile, }) {
|
|
438
461
|
const indexPath =
|
|
439
462
|
// Use the user provided index file if it exists,
|
|
@@ -838,11 +861,20 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
838
861
|
};
|
|
839
862
|
let cryptoFundResult;
|
|
840
863
|
if (fundingMode instanceof OnDemandFunding) {
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
864
|
+
// allow extra per item for ANS-104 headers
|
|
865
|
+
const headerByteCount = 1200;
|
|
866
|
+
const itemByteCounts = filesToUpload.map((file) => this.getFileSize(file) + headerByteCount);
|
|
867
|
+
// The manifest spends the same balance. Left out of the estimate, it
|
|
868
|
+
// needed a second top-up of its own.
|
|
869
|
+
if (!disableManifest && files.length > 0) {
|
|
870
|
+
itemByteCounts.push((await this.plannedManifestByteCount({
|
|
871
|
+
relativePaths: files.map((file) => this.getRelativePath(file, params)),
|
|
872
|
+
indexFile,
|
|
873
|
+
fallbackFile,
|
|
874
|
+
})) + headerByteCount);
|
|
875
|
+
}
|
|
844
876
|
cryptoFundResult = await this.onDemand({
|
|
845
|
-
|
|
877
|
+
itemByteCounts,
|
|
846
878
|
onDemandFunding: fundingMode,
|
|
847
879
|
});
|
|
848
880
|
}
|
|
@@ -974,6 +1006,54 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
974
1006
|
}
|
|
975
1007
|
return revokedApprovals;
|
|
976
1008
|
}
|
|
1009
|
+
/**
|
|
1010
|
+
* The winc the service will charge for the given items. Never less.
|
|
1011
|
+
*
|
|
1012
|
+
* The service prices an item as a per-byte rate plus a fixed per-item
|
|
1013
|
+
* charge, rounded up per item: a zero-byte item costs about 8M winc. Scaling
|
|
1014
|
+
* the 1 GiB price down to the item size dropped that fixed part, so a small
|
|
1015
|
+
* upload was under funded by up to ~38%, a folder by roughly the fixed charge
|
|
1016
|
+
* per file, and `topUpBufferMultiplier: 1` could never succeed.
|
|
1017
|
+
*
|
|
1018
|
+
* Items from 1 byte to 1 GiB are priced from two quotes, at 1 byte and 1 GiB.
|
|
1019
|
+
* The line through those two (already rounded up) prices never falls below
|
|
1020
|
+
* the service's unrounded price anywhere between them, so rounding each item
|
|
1021
|
+
* up keeps every estimate, and their sum, at or above what the service
|
|
1022
|
+
* charges. Rounding only the total could not promise that. Anything the line
|
|
1023
|
+
* would have to extrapolate to, and a lone item, is quoted exactly.
|
|
1024
|
+
*
|
|
1025
|
+
* The two quotes are made once per estimate. Each file of a folder still
|
|
1026
|
+
* checks its own price when it uploads.
|
|
1027
|
+
*/
|
|
1028
|
+
async estimateUploadWinc(itemByteCounts) {
|
|
1029
|
+
const oneGiB = 2 ** 30;
|
|
1030
|
+
const inModelRange = (bytes) => bytes >= 1 && bytes <= oneGiB;
|
|
1031
|
+
const useModel = itemByteCounts.filter(inModelRange).length > 1;
|
|
1032
|
+
const modelled = useModel ? itemByteCounts.filter(inModelRange) : [];
|
|
1033
|
+
const quoted = useModel
|
|
1034
|
+
? itemByteCounts.filter((bytes) => !inModelRange(bytes))
|
|
1035
|
+
: itemByteCounts;
|
|
1036
|
+
const bytes = useModel ? [1, oneGiB, ...quoted] : quoted;
|
|
1037
|
+
if (bytes.length === 0) {
|
|
1038
|
+
return '0';
|
|
1039
|
+
}
|
|
1040
|
+
const quotes = await this.paymentService.getUploadCosts({ bytes });
|
|
1041
|
+
let total = (useModel ? quotes.slice(2) : quotes).reduce((sum, { winc }) => sum.plus(winc), new BigNumber(0));
|
|
1042
|
+
if (useModel) {
|
|
1043
|
+
const [oneByte, gibibyte] = quotes;
|
|
1044
|
+
const perByte = new BigNumber(gibibyte.winc)
|
|
1045
|
+
.minus(oneByte.winc)
|
|
1046
|
+
.dividedBy(oneGiB - 1);
|
|
1047
|
+
const perItem = new BigNumber(oneByte.winc).minus(perByte);
|
|
1048
|
+
for (const itemBytes of modelled) {
|
|
1049
|
+
total = total.plus(perByte
|
|
1050
|
+
.multipliedBy(itemBytes)
|
|
1051
|
+
.plus(perItem)
|
|
1052
|
+
.integerValue(BigNumber.ROUND_UP));
|
|
1053
|
+
}
|
|
1054
|
+
}
|
|
1055
|
+
return total.toFixed(0);
|
|
1056
|
+
}
|
|
977
1057
|
/**
|
|
978
1058
|
* Triggers an upload that will top-up the wallet with Credits for the amount before uploading.
|
|
979
1059
|
* First, it calculates the expected cost of the upload. Next, it checks the wallet for existing
|
|
@@ -981,16 +1061,10 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
981
1061
|
* and await for the balance to be credited.
|
|
982
1062
|
* Note: Only `ario`, `solana`, and `base-eth` tokens are currently supported for on-demand uploads.
|
|
983
1063
|
*/
|
|
984
|
-
async onDemand({
|
|
1064
|
+
async onDemand({ itemByteCounts, onDemandFunding, }) {
|
|
985
1065
|
const { maxTokenAmount, topUpBufferMultiplier } = onDemandFunding;
|
|
986
1066
|
const currentBalance = await this.paymentService.getBalance();
|
|
987
|
-
const
|
|
988
|
-
bytes: [2 ** 30],
|
|
989
|
-
}))[0].winc;
|
|
990
|
-
const expectedWincPrice = new BigNumber(wincPriceForOneGiB)
|
|
991
|
-
.multipliedBy(totalByteCount)
|
|
992
|
-
.dividedBy(2 ** 30)
|
|
993
|
-
.toFixed(0, BigNumber.ROUND_UP);
|
|
1067
|
+
const expectedWincPrice = await this.estimateUploadWinc(itemByteCounts);
|
|
994
1068
|
if (BigNumber(currentBalance.effectiveBalance).isGreaterThanOrEqualTo(expectedWincPrice)) {
|
|
995
1069
|
this.logger.debug('Sufficient balance for on demand upload', {
|
|
996
1070
|
currentBalance,
|
|
@@ -1018,7 +1092,15 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
1018
1092
|
.toFixed(0, BigNumber.ROUND_UP);
|
|
1019
1093
|
if (maxTokenAmount !== undefined) {
|
|
1020
1094
|
if (new BigNumber(topUpTokenAmount).isGreaterThan(maxTokenAmount)) {
|
|
1021
|
-
|
|
1095
|
+
// Both amounts are in base units. Report them in whole tokens: the
|
|
1096
|
+
// exponent is the number of decimals, so divide by 10 to that power.
|
|
1097
|
+
const baseUnitsPerToken = new BigNumber(10).pow(exponentMap[this.token]);
|
|
1098
|
+
throw new Error(`Top up token amount ${new BigNumber(topUpTokenAmount)
|
|
1099
|
+
.div(baseUnitsPerToken)
|
|
1100
|
+
.toFixed()} ${this.token} is greater than the maximum allowed ` +
|
|
1101
|
+
`amount of ${new BigNumber(maxTokenAmount)
|
|
1102
|
+
.div(baseUnitsPerToken)
|
|
1103
|
+
.toFixed()} ${this.token}`);
|
|
1022
1104
|
}
|
|
1023
1105
|
}
|
|
1024
1106
|
this.logger.debug(`Topping up wallet with ${topUpTokenAmount} ${this.token} for ${topUpWincAmount} winc`);
|
|
@@ -1079,6 +1161,19 @@ export class TurboAuthenticatedBaseUploadService extends TurboUnauthenticatedUpl
|
|
|
1079
1161
|
* by exhausting memory.
|
|
1080
1162
|
*/
|
|
1081
1163
|
const maxX402SingleRequestByteCount = 100 * 1024 * 1024;
|
|
1164
|
+
/**
|
|
1165
|
+
* Headroom for what signing ADDS, so the guard measures the thing that is
|
|
1166
|
+
* actually buffered.
|
|
1167
|
+
*
|
|
1168
|
+
* The limit applies to the signed data item, not the file: ANS-104 headers,
|
|
1169
|
+
* the signature and the caller's tags all ride along. Checking the raw size
|
|
1170
|
+
* let a file in the top of the range through, to be signed, buffered, and then
|
|
1171
|
+
* refused by the service — wasting precisely the expensive step the guard
|
|
1172
|
+
* exists to skip.
|
|
1173
|
+
*
|
|
1174
|
+
* Same allowance folder uploads already use for the same overhead.
|
|
1175
|
+
*/
|
|
1176
|
+
const x402SignedItemOverheadByteCount = 1200;
|
|
1082
1177
|
/**
|
|
1083
1178
|
* Drain a data-item stream into a Buffer, resuming it once the reader is
|
|
1084
1179
|
* attached so upload-progress events still fire.
|
|
@@ -85,6 +85,14 @@ export declare abstract class TurboAuthenticatedBaseUploadService extends TurboU
|
|
|
85
85
|
upload({ data, dataItemOpts, signal, events, chunkByteCount, chunkingMode, maxChunkConcurrency, fundingMode, maxFinalizeMs, }: UploadDataInput & TurboAbortSignal & TurboUploadAndSigningEmitterEvents & TurboChunkingParams & FundingOptions): Promise<TurboUploadDataItemResponse>;
|
|
86
86
|
private resolveUploadFileConfig;
|
|
87
87
|
uploadFile(params: TurboUploadFileParams): Promise<TurboUploadDataItemResponse>;
|
|
88
|
+
/**
|
|
89
|
+
* Returns an upper bound on the bytes in a folder's manifest, if every file
|
|
90
|
+
* lands. Data item ids are always 43 characters, so placeholder ids give the
|
|
91
|
+
* real length, except for the index path: without an index file, the
|
|
92
|
+
* manifest indexes whichever file finished first, so the estimate allows for
|
|
93
|
+
* the longest path there.
|
|
94
|
+
*/
|
|
95
|
+
private plannedManifestByteCount;
|
|
88
96
|
protected generateManifest({ paths, indexFile, fallbackFile, }: {
|
|
89
97
|
paths: Record<string, {
|
|
90
98
|
id: string;
|
|
@@ -145,6 +153,26 @@ export declare abstract class TurboAuthenticatedBaseUploadService extends TurboU
|
|
|
145
153
|
shareCredits({ approvedAddress, approvedWincAmount, expiresBySeconds, }: TurboCreateCreditShareApprovalParams): Promise<CreditShareApproval>;
|
|
146
154
|
revokeCredits({ revokedAddress, }: TurboRevokeCreditsParams): Promise<CreditShareApproval[]>;
|
|
147
155
|
private enabledOnDemandTokens;
|
|
156
|
+
/**
|
|
157
|
+
* The winc the service will charge for the given items. Never less.
|
|
158
|
+
*
|
|
159
|
+
* The service prices an item as a per-byte rate plus a fixed per-item
|
|
160
|
+
* charge, rounded up per item: a zero-byte item costs about 8M winc. Scaling
|
|
161
|
+
* the 1 GiB price down to the item size dropped that fixed part, so a small
|
|
162
|
+
* upload was under funded by up to ~38%, a folder by roughly the fixed charge
|
|
163
|
+
* per file, and `topUpBufferMultiplier: 1` could never succeed.
|
|
164
|
+
*
|
|
165
|
+
* Items from 1 byte to 1 GiB are priced from two quotes, at 1 byte and 1 GiB.
|
|
166
|
+
* The line through those two (already rounded up) prices never falls below
|
|
167
|
+
* the service's unrounded price anywhere between them, so rounding each item
|
|
168
|
+
* up keeps every estimate, and their sum, at or above what the service
|
|
169
|
+
* charges. Rounding only the total could not promise that. Anything the line
|
|
170
|
+
* would have to extrapolate to, and a lone item, is quoted exactly.
|
|
171
|
+
*
|
|
172
|
+
* The two quotes are made once per estimate. Each file of a folder still
|
|
173
|
+
* checks its own price when it uploads.
|
|
174
|
+
*/
|
|
175
|
+
private estimateUploadWinc;
|
|
148
176
|
/**
|
|
149
177
|
* Triggers an upload that will top-up the wallet with Credits for the amount before uploading.
|
|
150
178
|
* First, it calculates the expected cost of the upload. Next, it checks the wallet for existing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/common/upload.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../src/common/upload.ts"],"names":[],"mappings":"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"}
|
package/lib/types/types.d.ts
CHANGED
|
@@ -1426,14 +1426,18 @@ type TurboX402PriceBase = {
|
|
|
1426
1426
|
token: string;
|
|
1427
1427
|
currency: string;
|
|
1428
1428
|
network: string;
|
|
1429
|
-
/** Storage cost in winston, for comparison with the credit price. */
|
|
1430
|
-
winstonCost: string;
|
|
1431
1429
|
/** Amount to pay, in USDC's smallest unit (6 decimals). */
|
|
1432
1430
|
usdcAmount: string;
|
|
1433
1431
|
x402Version: number;
|
|
1434
1432
|
payment: X402PaymentRequirements;
|
|
1435
1433
|
};
|
|
1436
|
-
/**
|
|
1434
|
+
/**
|
|
1435
|
+
* Price for a data item the caller has already signed.
|
|
1436
|
+
*
|
|
1437
|
+
* Carries no `winstonCost`. The service stopped sending it on this route
|
|
1438
|
+
* because it was an extrapolation about 1.2% off the real per-byte price, and
|
|
1439
|
+
* the charge never used it. Use `usdcAmount`, which is the amount charged.
|
|
1440
|
+
*/
|
|
1437
1441
|
export type TurboX402DataItemPriceResponse = TurboX402PriceBase & {
|
|
1438
1442
|
byteCount: number;
|
|
1439
1443
|
};
|
|
@@ -1444,6 +1448,8 @@ export type TurboX402DataItemPriceResponse = TurboX402PriceBase & {
|
|
|
1444
1448
|
* is larger than its payload by its header, signature and tags.
|
|
1445
1449
|
*/
|
|
1446
1450
|
export type TurboX402RawDataPriceResponse = TurboX402PriceBase & {
|
|
1451
|
+
/** Storage cost in winston, for comparison with the credit price. */
|
|
1452
|
+
winstonCost: string;
|
|
1447
1453
|
rawDataSize: number;
|
|
1448
1454
|
userTagCount: number;
|
|
1449
1455
|
systemTagCount: number;
|
package/lib/types/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EACvB,eAAe,EACf,sBAAsB,EACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,YAAY,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAClC,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,YAAY,CAAC;AACzC,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,oBAAoB,CAAC;AAExD,eAAO,MAAM,iBAAiB,iFAWpB,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC1D,wBAAgB,UAAU,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,IAAI,QAAQ,CAElE;AAED,MAAM,MAAM,OAAO,GAAG,eAAe,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAEpE,eAAO,MAAM,UAAU,6HAYb,CAAC;AACX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD,eAAO,MAAM,wBAAwB,aAQnC,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,UAAU,GAAG,KAAK,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uBAAuB,EAAE,MAAM,EAAE,CAAC;IAClC,mBAAmB,EAAE,OAAO,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,kBAAkB,GAAG;IAC1D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,IAAI,CACxC,kBAAkB,EAClB,aAAa,CACd,GAAG;IACF,mBAAmB,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC1C,kBAAkB,EAClB,aAAa,CACd,GAAG;IACF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB,EAAE,MAAM,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,SAAS,CAAC,KAAK,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,sBAAsB,GAAG;IAC9D,KAAK,EAAE,oBAAoB,CAAC;CAC7B,CAAC;AAGF,MAAM,MAAM,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC3C,MAAM,MAAM,0BAA0B,GAAG,wBAAwB,GAC/D,CAAC,gCAAgC,GAAG,kCAAkC,CAAC,CAAC;AAE1E,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,sBAAsB,EAAE,MAAM,CAAC;QAC/B,aAAa,EAAE,MAAM,CAAC;QACtB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,mBAAmB,EAAE,MAAM,CAAC;QAC5B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,YAAY,EAAE,QAAQ,CAAC;QACvB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,UAAU,EAAE,CAAC;KAC3B,CAAC;IACF,cAAc,EAAE;QACd,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;QACX,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,CAAC;IACF,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,wBAAwB,GAAG;IAClE,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,wBAAwB,GAAG;IACpE,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,kBAAkB,EAAE,aAAa,CAAC;IAClC,eAAe,EAAE,WAAW,CAAC;IAC7B,aAAa,EAAE,WAAW,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC;AAED,MAAM,WAAW,+BAA+B;IAC9C,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;CAC1C;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,gBAAgB,EAAE,MAAM,CAAC;IAEzB,iBAAiB,EAAE,mBAAmB,EAAE,CAAC;IACzC,cAAc,EAAE,mBAAmB,EAAE,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;;;;;OAOG;IACH,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,4DAA4D;AAC5D,MAAM,MAAM,6BAA6B,GAAG;IAC1C,IAAI,EAAE,QAAQ,CAAC;IACf,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,aAAa,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,+EAA+E;AAC/E,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B,6BAA6B,GAC7B,2BAA2B,CAAC;AAEhC,MAAM,MAAM,2BAA2B,GAAG;IACxC,0DAA0D;IAC1D,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,8EAA8E;IAC9E,OAAO,EAAE,OAAO,CAAC;IACjB,mEAAmE;IACnE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,MAAM,EACF,UAAU,GACV,YAAY,GACZ,cAAc,GACd,cAAc,GACd,0BAA0B,GAC1B,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,QAAQ,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GACjD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;AAC3C,MAAM,MAAM,sBAAsB,GAAG,OAAO,EAAE,CAAC;AAC/C,MAAM,MAAM,uBAAuB,GAAG;IACpC,mBAAmB,EAAE,QAAQ,EAAE,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;CACzC,CAAC;AACF,MAAM,MAAM,2BAA2B,GAAG;IACxC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,EAAE,EAAE,aAAa,CAAC;IAClB,KAAK,EAAE,oBAAoB,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IAGb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,WAAW,CAAC,EAAE,WAAW,GAAG,eAAe,GAAG,sBAAsB,CAAC;CACtE,CAAC;AAEF,qBAAa,sBAAsB;CAAG;AACtC,qBAAa,eAAe;IACnB,cAAc,EAAE,SAAS,GAAG,SAAS,CAAC;IACtC,qBAAqB,EAAE,MAAM,CAAC;gBAEzB,EACV,cAAc,EACd,qBAA2B,GAC5B,EAAE;QACD,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,cAAc,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;KAClC;CAeF;AAED,qBAAa,WAAW;IACf,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;IAC/B,cAAc,EAAE,SAAS,GAAG,SAAS,CAAC;gBAEjC,EACV,MAAM,EACN,cAAc,GACf,EAAE;QACD;;;WAGG;QACH,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,cAAc,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;KAClC;CAKF;AAED,eAAO,MAAM,sBAAsB,qDAIzB,CAAC;AACX,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7E,eAAO,MAAM,qBAAqB,yEAKxB,CAAC;AACX,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3E,eAAO,MAAM,wBAAwB,wBAAyB,CAAC;AAC/D,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5C,MAAM,MAAM,4BAA4B,GACpC;IAAE,MAAM,EAAE,sBAAsB,CAAA;CAAE,GAClC;IAAE,MAAM,EAAE,qBAAqB,CAAA;CAAE,GACjC,uBAAuB,CAAC;AAC5B,KAAK,uBAAuB,GAAG;IAC7B,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,2BAA2B,CAAC;CACtC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;IACnE,8CAA8C;IAC9C,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACnD;;;;;OAKG;IACH,OAAO,CAAC,CACN,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GACjC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACnC;;;;;;;;OAQG;IACH,kBAAkB,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC;IAC3E,iEAAiE;IACjE,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtE,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,2BAA2B,GACnC,UAAU,GACV;IAAE,SAAS,EAAE,UAAU,GAAG,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,SAAS,CAAA;CAAE,GACvD;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;AAE/C,MAAM,MAAM,4BAA4B,GAAG;IACzC;;;;;OAKG;IACH,KAAK,EAAE,2BAA2B,CAAC;IACnC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,2EAA2E;IAC3E,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,6EAA6E;IAC7E,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAC;IAErC;;;;;;;OAOG;IACH,oBAAoB,CAAC,EAAE,eAAe,CAAC;IAEvC,eAAe,CAAC,EAAE;QAChB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,GAAG,gBAAgB,GAClB,mBAAmB,GACnB,cAAc,GACd,8BAA8B,CAAC;AAEjC,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,kBAAkB,CAAC;AACvB,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,IAAI,EAAE,CAAC;CACf,GAAG,kBAAkB,CAAC;AACvB,MAAM,MAAM,uBAAuB,GAC/B,sBAAsB,GACtB,qBAAqB,CAAC;AAC1B,eAAO,MAAM,wBAAwB,MAChC,uBAAuB,KACzB,CAAC,IAAI,sBACgD,CAAC;AACzD,eAAO,MAAM,uBAAuB,MAC/B,uBAAuB,KACzB,CAAC,IAAI,qBAC0C,CAAC;AAEnD,MAAM,MAAM,oCAAoC,GAAG;IACjD,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,SAAS,CAAC,KAAK,CAAC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;;OAIG;IACH,aAAa,EAAE,2BAA2B,EAAE,CAAC;IAC7C,gBAAgB,CAAC,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,oDAAoD;IACpD,kBAAkB,CAAC,EAAE,6BAA6B,CAAC;CACpD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,yBAAyB,GAAG;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,WAAW,CAAC;IAChC,sBAAsB,EAAE,MAAM,CAAC;IAC/B,wBAAwB,CAAC,EAAE,WAAW,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,yBAAyB,GAAG;IACjE,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,yBAAyB,GAAG;IACnE,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAChC;IACE,kBAAkB,EAAE,yBAAyB,GAAG;QAC9C,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;KAC5B,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB,GACD;IACE,mBAAmB,EAAE,0BAA0B,GAAG;QAChD,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;KAC5B,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB,GACD;IACE,iBAAiB,EAAE,wBAAwB,GAAG;QAC5C,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;KAC5B,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEN,MAAM,MAAM,UAAU,GAAG,YAAY,CAAC;AAEtC,KAAK,YAAY,GAAG,MAAM,CAAC;AAC3B,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC;AAExC,KAAK,iBAAiB,GAAG,MAAM,CAAC;AAChC,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAC9C,MAAM,MAAM,cAAc,GAAG,iBAAiB,CAAC;AAE/C,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,GAClB,MAAM,IAAI,cAAc,CAK1B;AACD,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,IAAI,aAAa,CAI5E;AAED,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,CAAC;AAEpE,eAAO,MAAM,KAAK,WAAY,WAAW,KAAG,MAAM,IAAI,UACZ,CAAC;AAE3C,MAAM,MAAM,yBAAyB,GAAG;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IAOtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAC;AAEF,KAAK,sBAAsB,GAAG;IAC5B,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,KAAK,yBAAyB,GAAG;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,iBAAiB,EAAE;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,cAAc,EAAE,KAAK,CAAC;IACtB,gBAAgB,EAAE,KAAK,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,kBAAkB,EAAE;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,eAAe,EAAE,KAAK,CAAC;IACvB,iBAAiB,EAAE,KAAK,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,kBAAkB,EAAE;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;KAC5B,CAAC;IACF,eAAe,EAAE,KAAK,CAAC;IACvB,iBAAiB,EAAE,KAAK,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,gBAAgB,CAAC,EAAE,CACjB,KAAK,EAAE,4BAA4B,CAAC,iBAAiB,CAAC,KACnD,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,4BAA4B,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC;IAC9E,eAAe,CAAC,EAAE,CAChB,KAAK,EAAE,4BAA4B,CAAC,gBAAgB,CAAC,KAClD,IAAI,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,iBAAiB,CAAC,EAAE,CAClB,KAAK,EAAE,6BAA6B,CAAC,kBAAkB,CAAC,KACrD,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CACf,KAAK,EAAE,6BAA6B,CAAC,eAAe,CAAC,KAClD,IAAI,CAAC;IACV,gBAAgB,CAAC,EAAE,CACjB,KAAK,EAAE,6BAA6B,CAAC,iBAAiB,CAAC,KACpD,IAAI,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC;IAC9E,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IACxE,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;CAC7E,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,CAAC,EAAE,0BAA0B,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,CAAC,EAAE,2BAA2B,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,CAAC,EAAE,4BAA4B,CAAC;CACvC,CAAC;AACF,MAAM,MAAM,kCAAkC,GAAG,wBAAwB,GACvE,yBAAyB,GACzB,uBAAuB,CAAC;AAE1B,MAAM,MAAM,kCAAkC,GAAG;IAC/C,mBAAmB,EAAE;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,sBAAsB,EAAE;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,cAAc,EAAE,MAAM,CAAC;QACvB,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;KAC5B,CAAC;IACF,sBAAsB,EAAE;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IACF,mBAAmB,EAAE;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,KAAK,CAAC;KACd,CAAC;IACF,iBAAiB,EAAE;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,cAAc,EAAE,MAAM,CAAC;QACvB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,OAAO,GAAG,UAAU,CAAC;KACpC,CAAC;IACF,cAAc,EAAE,KAAK,CAAC;IACtB,gBAAgB,EAAE,KAAK,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,WAAW,CAAC,EAAE,CACZ,KAAK,EAAE,kCAAkC,CAAC,mBAAmB,CAAC,KAC3D,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CACf,KAAK,EAAE,kCAAkC,CAAC,sBAAsB,CAAC,KAC9D,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CACf,KAAK,EAAE,kCAAkC,CAAC,sBAAsB,CAAC,KAC9D,IAAI,CAAC;IACV,WAAW,CAAC,EAAE,CACZ,KAAK,EAAE,kCAAkC,CAAC,mBAAmB,CAAC,KAC3D,IAAI,CAAC;IACV,gBAAgB,CAAC,EAAE,CACjB,KAAK,EAAE,kCAAkC,CAAC,iBAAiB,CAAC,KACzD,IAAI,CAAC;IACV,aAAa,CAAC,EAAE,CACd,KAAK,EAAE,kCAAkC,CAAC,cAAc,CAAC,KACtD,IAAI,CAAC;IACV,eAAe,CAAC,EAAE,CAChB,KAAK,EAAE,kCAAkC,CAAC,gBAAgB,CAAC,KACxD,IAAI,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,MAAM,CAAC,EAAE,iCAAiC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,8CAA8C,GACxD,yBAAyB,CAAC;AAC5B,MAAM,MAAM,4CAA4C,GACtD,8CAA8C,GAAG,sBAAsB,CAAC;AAE1E,MAAM,MAAM,+CAA+C,GACzD,yBAAyB,CAAC;AAC5B,MAAM,MAAM,6CAA6C,GACvD,+CAA+C,GAC7C,sBAAsB,GAAG;IACvB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEN,MAAM,MAAM,iCAAiC,GAAG;IAC9C,oBAAoB,CAAC,EAAE,+CAA+C,CAAC;IACvE,mBAAmB,CAAC,EAAE,8CAA8C,CAAC;IACrE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;AAElC,MAAM,MAAM,eAAe,GAAG,qBAAqB,GAAG;IACpD,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;CACtC,CAAC;AAGF,MAAM,MAAM,WAAW,GACnB,eAAe,GACf,aAAa,GACb,cAAc,GACd,sBAAsB,GACtB,eAAe,GACf,uBAAuB,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAAG;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,+BAA+B,GACzC,iCAAiC,GAAG;IAClC,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,aAAa,CAAC,EAAE,mBAAmB,GAAG,qBAAqB,CAAC;IAC5D,+OAA+O;IAC/O,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,CAAC;AAEJ,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE;QACT,QAAQ,EAAE,MAAM,MAAM,CAAC;QACvB,uGAAuG;QACvG,QAAQ,CAAC,EAAE,MAAM,MAAM,CAAC;KACzB,CAAC;IACF,WAAW,EAAE,CACX,OAAO,EAAE,UAAU,KAChB,OAAO,CAAC,UAAU,GAAG;QAAE,SAAS,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IAGrD,eAAe,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,qBAAqB,CAAC;AAExE,MAAM,MAAM,oBAAoB,GAAG,IAAI,CACrC,aAAa,EACb,aAAa,GAAG,iBAAiB,GAAG,UAAU,CAC/C,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,MAAM,oBAAoB,CAAC;CACvC,CAAC;AAEF,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,mBAAmB,GAAG,qBAAqB,GACzD,aAAa,IAAI,mBAAmB,CAEtC;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;IACxC,kBAAkB,EAAE,WAAW,GAAG,SAAS,CAAC;IAC5C,qBAAqB,EAAE,aAAa,GAAG,SAAS,CAAC;IACjD,KAAK,EAAE,SAAS,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,aAAa,EAAE,mBAAmB,GAAG,qBAAqB,GACzD,aAAa,IAAI,qBAAqB,CAExC;AAED,MAAM,MAAM,uCAAuC,GAAG;IACpD,cAAc,EAAE,2CAA2C,CAAC;IAC5D,aAAa,EAAE,0CAA0C,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,cAAc,EAAE,yCAAyC,CAAC;IAC1D,aAAa,EAAE,wCAAwC,CAAC;IACxD,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;AAC/E,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,cAAc,CAAC;IACrB,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,kBAAkB,wCAAyC,CAAC;AACzE,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpE,MAAM,MAAM,mBAAmB,GAAG;IAChC,2FAA2F;IAC3F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,+GAA+G;IAC/G,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,sCAAsC,GAAG,gBAAgB,GACnE,gBAAgB,GAChB,kCAAkC,CAAC;AACrC,MAAM,MAAM,mCAAmC,GAAG;IAChD,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,eAAe,CAAC;CAChC,GAAG,gBAAgB,GAClB,kCAAkC,GAClC,mBAAmB,CAAC;AAEtB,MAAM,MAAM,qBAAqB,GAC7B,sCAAsC,GACtC,mCAAmC,CAAC;AAExC,MAAM,MAAM,iBAAiB,GAAG,oBAAoB,GAAG,qBAAqB,CAAC;AAE7E,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,cAAc,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,CAAC;AAEtE,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC;AAC7C,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,iBAAiB,IAAI;IACpD,iBAAiB,EAAE,CAAC,CAAC;IACrB,eAAe,EAAE,iBAAiB,CAAC;IACnC,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAG7B,GAAG,mBAAmB,GACrB,cAAc,CAAC;AAEjB,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;AAEzE,MAAM,MAAM,0BAA0B,GAAG;IACvC,qBAAqB,EAAE,uBAAuB,CAAC;IAC/C,mBAAmB,EAAE,iBAAiB,CAAC;IACvC,YAAY,CAAC,EAAE,eAAe,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,GAAG,CAAC,CAAC,EAAE,EACL,QAAQ,EACR,MAAM,EACN,OAAO,EACP,eAAe,GAChB,EAAE;QACD,QAAQ,EAAE,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;KAC5B,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACf,IAAI,CAAC,CAAC,EAAE,EACN,QAAQ,EACR,MAAM,EACN,OAAO,EACP,eAAe,EACf,IAAI,EACJ,KAAK,GACN,EAAE;QACD,QAAQ,EAAE,IAAI,MAAM,EAAE,CAAC;QACvB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,MAAM,CAAC;QAKzC,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAChB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,WAAW,EAAE,SAAS,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B,CAAC,EAAE,WAAW,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EACX,iBAAiB,EACjB,eAAe,EACf,YAAY,EACZ,OAAO,GACR,EAAE,gBAAgB,GAAG;QACpB,OAAO,CAAC,EAAE,iBAAiB,CAAC;KAC7B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACxC,4BAA4B,CAC1B,KAAK,CAAC,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACtC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtD,eAAe,CAAC,CAAC,EAAE,sBAAsB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,EAAE,WAAW,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAID,eAAO,MAAM,mBAAmB,mFAKtB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACtE,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,UAAU,CAAC;AAIhD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,iBAAiB,GACzB,sBAAsB,GACtB,yBAAyB,CAAC;AAC9B,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AACF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,0BAA0B,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AACF,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,cAAc,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,qBAAqB,GACrB,gCAAgC,GAChC,qBAAqB,CAAC;AAE1B,0EAA0E;AAC1E,MAAM,MAAM,gBAAgB,GAAG;IAAE,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAA;CAAE,CAAC;AAExE,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;;;;;OAOG;IACH,IAAI,EAAE,MAAM,CAAC;IACb,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+EAA+E;IAC/E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAIF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,WAAW,yOAed,CAAC;AACX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;CACxB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,eAAe,CAAC;IACvB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B,CAAC;AAEF,wEAAwE;AACxE,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,mFAAmF;AACnF,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,oBAAoB,CAAC;IAC7B;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GACxB,mBAAmB,GACnB,2BAA2B,CAAC;AAEhC;;;;;;;GAOG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,UAAU,CAAC;IACnB,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,UAAU,IAAI,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC;;;OAGG;IACH,eAAe,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5D,uEAAuE;IACvE,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACvD;AAED,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAEpE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,KAAK,IAAI,CAAC,SAAS,OAAO,GACtE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GACV,KAAK,CAAC;AAEV,+EAA+E;AAC/E,MAAM,MAAM,eAAe,GAAG,gBAAgB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GACzE,gBAAgB,CAAC;AAEnB,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,kBAAkB,CAAC;IAC3B,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,WAAW,CAAC;IACnB,sEAAsE;IACtE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,eAAe,EAAE,mBAAmB,CAAC;IACrC,eAAe,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,yFAAyF;IACzF,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,mBAAmB,GAAG;IAC7D,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAIF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,iDAG1B,CAAC;AACX,MAAM,MAAM,sBAAsB,GAC9B,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,GACxC,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAEpC;;;;;;;;;;GAUG;AACH,MAAM,MAAM,2BAA2B,GAAG,eAAe,GAAG;IAC1D,kCAAkC;IAClC,QAAQ,EAAE,QAAQ,CAAC;IACnB,gEAAgE;IAChE,OAAO,EAAE,WAAW,CAAC;IACrB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,GAAG,CAAC,gCAAgC,GAAG,kCAAkC,CAAC,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,wCAAwC,GAAG,gBAAgB,CACrE,2BAA2B,EAC3B,SAAS,CACV,GAAG;IAAE,OAAO,CAAC,EAAE,WAAW,CAAA;CAAE,CAAC;AAE9B;;;;;;;GAOG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,kBAAkB,CAAC;IAC3B,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,iFAAiF;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,kEAAkE;IAClE,aAAa,EAAE,MAAM,CAAC;IACtB,kEAAkE;IAClE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,QAAQ,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,aAAa,EAAE,qBAAqB,CAAC;IACrC,cAAc,EAAE,sBAAsB,CAAC;IACvC,6DAA6D;IAC7D,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,4CAA4C;IAC5C,IAAI,EAAE,UAAU,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,WAAW,2CAA2C;IAC1D,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC/D,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACrE,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACzE;;;;;OAKG;IACH,kBAAkB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACzE,qBAAqB,CAAC,CAAC,EAAE;QACvB,KAAK,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACxC;;;;;;OAMG;IACH,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnE,8EAA8E;IAC9E,wBAAwB,CACtB,MAAM,EAAE,2BAA2B,GAClC,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC1C,sBAAsB,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAC3D,qBAAqB,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACzD,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,WAAW,CAAC,EACV,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,QAAQ,CAAC;KACpB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACnC,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,cAAc,CACZ,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACrC,eAAe,CACb,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACtC,uBAAuB,CAAC,EACtB,SAAS,EACT,QAAQ,GACT,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,QAAQ,CAAC;KACpB,GAAG,OAAO,CAAC,iCAAiC,CAAC,CAAC;IAC/C,qBAAqB,CAAC,EACpB,SAAS,GACV,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC7C,cAAc,CAAC,EAAE,KAAK,EAAE,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAC9E,qBAAqB,CACnB,MAAM,EAAE,0BAA0B,GACjC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACzC,mBAAmB,CACjB,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACvC,qBAAqB,CAAC,CAAC,EAAE;QACvB,IAAI,EAAE,MAAM,CAAC;KACd,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACvC,uBAAuB,CAAC,CAAC,EAAE;QACzB,WAAW,EAAE,WAAW,CAAC;KAC1B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;CAC9C;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,2FAA2F;IAC3F,WAAW,EAAE,SAAS,CAAC,KAAK,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,6BAA6B,CAAC,EAAE,WAAW,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,yCACf,SAAQ,2CAA2C;IACnD,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACzE,yDAAyD;IACzD,wBAAwB,CACtB,MAAM,EAAE,wCAAwC,GAC/C,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAC1C,aAAa,EAAE,CACb,WAAW,CAAC,EAAE,WAAW,KACtB,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEtC;;;OAGG;IACH,iBAAiB,CACf,MAAM,CAAC,EAAE,yBAAyB,GACjC,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAExC,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAE7E,uBAAuB,CAAC,CAAC,EAAE;QACzB,WAAW,CAAC,EAAE,WAAW,CAAC;KAC3B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAE7C,eAAe,CACb,CAAC,EAAE,yBAAyB,GAC3B,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAMpC,0DAA0D;IAC1D,gBAAgB,CACd,MAAM,EAAE,UAAU,EAClB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,UAAU,CAAC,EAAE;QAAE,KAAK,EAAE,eAAe,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GACvD,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC7B,wEAAwE;IACxE,cAAc,CACZ,KAAK,EAAE,MAAM,EACb,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAChC,kDAAkD;IAClD,mBAAmB,CACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEvD,WAAW,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC3E,eAAe,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;QACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,eAAe,CAAC,MAAM,EAAE;QACtB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;QACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,0BAA0B,CAAC,MAAM,EAAE;QACjC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAC;QACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,aAAa,CAAC,MAAM,EAAE;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,gBAAgB,CAAC,MAAM,EAAE;QACvB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,iBAAiB,CAAC,MAAM,EAAE;QACxB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,oBAAoB,CAAC,MAAM,EAAE;QAC3B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,eAAe,CAAC,MAAM,EAAE;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,qBAAqB,CAAC,MAAM,EAAE;QAC5B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,wBAAwB,CAAC,MAAM,EAAE;QAC/B,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjC,kBAAkB,CAAC,MAAM,EAAE;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,eAAe,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACnD,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAClC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC,iFAAiF;AACjF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,uBAAuB,CAAC;CAClC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,8BAA8B,GAAG,kBAAkB,GAAG;IAChE,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,6BAA6B,GAAG,kBAAkB,GAAG;IAC/D,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,kEAAkE;IAClE,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,0CAA0C;IACzD,oBAAoB,CAAC,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,MAAM,EACN,MAAM,GACP,EAAE,0BAA0B,GAC3B,gBAAgB,GAChB,wBAAwB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAElE,iBAAiB,CAAC,EAChB,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,cAAc,GACf,EAAE;QACD,IAAI,EAAE,cAAc,CAAC;QACrB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,IAAI,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC;QACzC,cAAc,CAAC,EAAE,SAAS,CAAC;KAC5B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAEzC,uBAAuB,CACrB,CAAC,EAAE,4BAA4B,GAC9B,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAE3C,sBAAsB,CACpB,CAAC,EAAE,2BAA2B,GAC7B,OAAO,CAAC,6BAA6B,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,wCACf,SAAQ,0CAA0C;IAClD,MAAM,CAAC,EACL,IAAI,EACJ,MAAM,GACP,EAAE,eAAe,GAChB,gBAAgB,GAChB,wBAAwB,GACxB,mBAAmB,GACnB,cAAc,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACxD,UAAU,CACR,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAExC,YAAY,CAAC,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAE7E,YAAY,CACV,CAAC,EAAE,oCAAoC,GACtC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEhC,aAAa,CAAC,CAAC,EAAE,wBAAwB,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,mCACf,SAAQ,2CAA2C,EACjD,0CAA0C;CAAG;AACjD,MAAM,WAAW,iCACf,SAAQ,yCAAyC,EAC/C,wCAAwC;CAAG;AAE/C,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,SAAS,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,6BAA6B,CAAC,EAAE,WAAW,CAAC;CAC7C,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,iBAAiB,EAAE,CAAC,CAAC,EAAE,mBAAmB,KAAK,OAAO,CAAC;QACrD,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAEH,kBAAkB,EAAE,CAAC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5D;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,8PAA8P;AAC9P,MAAM,MAAM,QAAQ,GAAG;IAAE,OAAO,EAAE,UAAU,CAAA;CAAE,CAAC;AAE/C,MAAM,MAAM,YAAY,GAAG,MAAM,CAC/B,MAAM,EACN,CAAC,MAAM,EAAE,WAAW,GAAG,eAAe,KAAK,UAAU,CACtD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,UAAU,CAAC;IACnB,cAAc,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,0BAA0B,GACjE,gBAAgB,GAChB,wBAAwB,GAAG;IACzB,WAAW,CAAC,EAAE,sBAAsB,CAAC;CACtC,CAAC"}
|