@agoric/inter-protocol 0.16.2-dev-6e5b422.0 → 0.16.2-dev-bd1190d.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/bundles/bundle-auctioneer-js-meta.json +116 -116
- package/bundles/bundle-econCommitteeCharter-js-meta.json +71 -71
- package/bundles/bundle-feeDistributor-js-meta.json +57 -57
- package/bundles/bundle-fluxAggregatorKit-js-meta.json +111 -111
- package/bundles/bundle-psm-js-meta.json +109 -109
- package/bundles/bundle-reserve-js-meta.json +108 -108
- package/bundles/bundle-scaledPriceAuthority-js-meta.json +84 -84
- package/bundles/bundle-vaultFactory-js-meta.json +133 -133
- package/package.json +19 -17
- package/src/auction/auctionBook.d.ts +80 -0
- package/src/auction/auctionBook.d.ts.map +1 -0
- package/src/auction/auctioneer.d.ts +75 -0
- package/src/auction/auctioneer.d.ts.map +1 -0
- package/src/auction/offerBook.d.ts +72 -0
- package/src/auction/offerBook.d.ts.map +1 -0
- package/src/auction/params.d.ts +142 -0
- package/src/auction/params.d.ts.map +1 -0
- package/src/auction/scheduleMath.d.ts +4 -0
- package/src/auction/scheduleMath.d.ts.map +1 -0
- package/src/auction/scheduler.d.ts +49 -0
- package/src/auction/scheduler.d.ts.map +1 -0
- package/src/auction/sortedOffers.d.ts +8 -0
- package/src/auction/sortedOffers.d.ts.map +1 -0
- package/src/auction/util.d.ts +30 -0
- package/src/auction/util.d.ts.map +1 -0
- package/src/clientSupport.d.ts +129 -0
- package/src/clientSupport.d.ts.map +1 -0
- package/src/collectFees.d.ts +2 -0
- package/src/collectFees.d.ts.map +1 -0
- package/src/contractSupport.d.ts +33 -0
- package/src/contractSupport.d.ts.map +1 -0
- package/src/econCommitteeCharter.d.ts +45 -0
- package/src/econCommitteeCharter.d.ts.map +1 -0
- package/src/feeDistributor.d.ts +234 -0
- package/src/feeDistributor.d.ts.map +1 -0
- package/src/index.d.ts +2 -0
- package/src/index.d.ts.map +1 -0
- package/src/interest-math.d.ts +3 -0
- package/src/interest-math.d.ts.map +1 -0
- package/src/interest.d.ts +28 -0
- package/src/interest.d.ts.map +1 -0
- package/src/price/fluxAggregatorContract.d.ts +110 -0
- package/src/price/fluxAggregatorContract.d.ts.map +1 -0
- package/src/price/fluxAggregatorKit.d.ts +150 -0
- package/src/price/fluxAggregatorKit.d.ts.map +1 -0
- package/src/price/priceOracleKit.d.ts +58 -0
- package/src/price/priceOracleKit.d.ts.map +1 -0
- package/src/price/roundsManager.d.ts +348 -0
- package/src/price/roundsManager.d.ts.map +1 -0
- package/src/proposals/addAssetToVault.d.ts +155 -0
- package/src/proposals/addAssetToVault.d.ts.map +1 -0
- package/src/proposals/committee-proposal.d.ts +121 -0
- package/src/proposals/committee-proposal.d.ts.map +1 -0
- package/src/proposals/core-proposal.d.ts +149 -0
- package/src/proposals/core-proposal.d.ts.map +1 -0
- package/src/proposals/econ-behaviors.d.ts +201 -0
- package/src/proposals/econ-behaviors.d.ts.map +1 -0
- package/src/proposals/price-feed-proposal.d.ts +83 -0
- package/src/proposals/price-feed-proposal.d.ts.map +1 -0
- package/src/proposals/startEconCommittee.d.ts +34 -0
- package/src/proposals/startEconCommittee.d.ts.map +1 -0
- package/src/proposals/startPSM.d.ts +61 -0
- package/src/proposals/startPSM.d.ts.map +1 -0
- package/src/proposals/startPSM.js +8 -7
- package/src/proposals/utils.d.ts +15 -0
- package/src/proposals/utils.d.ts.map +1 -0
- package/src/psm/psm.d.ts +193 -0
- package/src/psm/psm.d.ts.map +1 -0
- package/src/psm/types.d.ts +2 -0
- package/src/psm/types.d.ts.map +1 -0
- package/src/reserve/assetReserve.d.ts +42 -0
- package/src/reserve/assetReserve.d.ts.map +1 -0
- package/src/reserve/assetReserveKit.d.ts +126 -0
- package/src/reserve/assetReserveKit.d.ts.map +1 -0
- package/src/reserve/params.d.ts +10 -0
- package/src/reserve/params.d.ts.map +1 -0
- package/src/tokens.d.ts +36 -0
- package/src/tokens.d.ts.map +1 -0
- package/src/typeGuards.d.ts +5 -0
- package/src/typeGuards.d.ts.map +1 -0
- package/src/vaultFactory/burn.d.ts +2 -0
- package/src/vaultFactory/burn.d.ts.map +1 -0
- package/src/vaultFactory/liquidation.d.ts +24 -0
- package/src/vaultFactory/liquidation.d.ts.map +1 -0
- package/src/vaultFactory/math.d.ts +10 -0
- package/src/vaultFactory/math.d.ts.map +1 -0
- package/src/vaultFactory/orderedVaultStore.d.ts +94 -0
- package/src/vaultFactory/orderedVaultStore.d.ts.map +1 -0
- package/src/vaultFactory/params.d.ts +162 -0
- package/src/vaultFactory/params.d.ts.map +1 -0
- package/src/vaultFactory/prioritizedVaults.d.ts +279 -0
- package/src/vaultFactory/prioritizedVaults.d.ts.map +1 -0
- package/src/vaultFactory/proceeds.d.ts +34 -0
- package/src/vaultFactory/proceeds.d.ts.map +1 -0
- package/src/vaultFactory/storeUtils.d.ts +29 -0
- package/src/vaultFactory/storeUtils.d.ts.map +1 -0
- package/src/vaultFactory/type-imports.d.ts +2 -0
- package/src/vaultFactory/type-imports.d.ts.map +1 -0
- package/src/vaultFactory/types.d.ts +132 -0
- package/src/vaultFactory/types.d.ts.map +1 -0
- package/src/vaultFactory/vault.d.ts +585 -0
- package/src/vaultFactory/vault.d.ts.map +1 -0
- package/src/vaultFactory/vaultDirector.d.ts +582 -0
- package/src/vaultFactory/vaultDirector.d.ts.map +1 -0
- package/src/vaultFactory/vaultFactory.d.ts +159 -0
- package/src/vaultFactory/vaultFactory.d.ts.map +1 -0
- package/src/vaultFactory/vaultHolder.d.ts +205 -0
- package/src/vaultFactory/vaultHolder.d.ts.map +1 -0
- package/src/vaultFactory/vaultKit.d.ts +32 -0
- package/src/vaultFactory/vaultKit.d.ts.map +1 -0
- package/src/vaultFactory/vaultManager.d.ts +552 -0
- package/src/vaultFactory/vaultManager.d.ts.map +1 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export function calculateDistributionPlan({ proceeds, totalDebt, totalCollateral, oraclePriceAtStart, vaultsBalances, penaltyRate, }: {
|
|
2
|
+
proceeds: AmountKeywordRecord;
|
|
3
|
+
totalDebt: Amount<'nat'>;
|
|
4
|
+
totalCollateral: Amount<'nat'>;
|
|
5
|
+
oraclePriceAtStart: PriceDescription;
|
|
6
|
+
vaultsBalances: Array<VaultBalances>;
|
|
7
|
+
penaltyRate: Ratio;
|
|
8
|
+
}): DistributionPlan;
|
|
9
|
+
/**
|
|
10
|
+
* The plan to execute for distributing proceeds of a liquidation.
|
|
11
|
+
*
|
|
12
|
+
* Vaults are referenced by index in the list sent to the calculator.
|
|
13
|
+
*/
|
|
14
|
+
export type DistributionPlan = {
|
|
15
|
+
overage: Amount<'nat'>;
|
|
16
|
+
shortfallToReserve: Amount<'nat'>;
|
|
17
|
+
collateralForReserve: Amount<'nat'>;
|
|
18
|
+
actualCollateralSold: Amount<'nat'>;
|
|
19
|
+
collateralSold: Amount<'nat'>;
|
|
20
|
+
collatRemaining: Amount<'nat'>;
|
|
21
|
+
debtToBurn: Amount<'nat'>;
|
|
22
|
+
mintedForReserve: Amount<'nat'>;
|
|
23
|
+
mintedProceeds: Amount<'nat'>;
|
|
24
|
+
phantomDebt: Amount<'nat'>;
|
|
25
|
+
totalPenalty: Amount<'nat'>;
|
|
26
|
+
transfersToVault: Array<[number, AmountKeywordRecord]>;
|
|
27
|
+
vaultsToReinstate: Array<number>;
|
|
28
|
+
};
|
|
29
|
+
export type VaultBalances = {
|
|
30
|
+
collateral: Amount<'nat'>;
|
|
31
|
+
presaleDebt: Amount<'nat'>;
|
|
32
|
+
currentDebt: Amount<'nat'>;
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=proceeds.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proceeds.d.ts","sourceRoot":"","sources":["proceeds.js"],"names":[],"mappings":"AAoDO;IARgC,QAAQ,EAApC,mBAAmB;IACG,SAAS,EAA/B,OAAO,KAAK,CAAC;IACS,eAAe,EAArC,OAAO,KAAK,CAAC;IACY,kBAAkB,EAA3C,gBAAgB;IACa,cAAc,EAA3C,MAAM,aAAa,CAAC;IACN,WAAW,EAAzB,KAAK;IACH,gBAAgB,CA8N5B;;;;;;+BApQY;IACZ,OAAW,EAAE,OAAO,KAAK,CAAC,CAAC;IAC3B,kBAAsB,EAAE,OAAO,KAAK,CAAC,CAAC;IACtC,oBAAwB,EAAE,OAAO,KAAK,CAAC,CAAC;IACxC,oBAAwB,EAAE,OAAO,KAAK,CAAC,CAAC;IACxC,cAAkB,EAAE,OAAO,KAAK,CAAC,CAAC;IAClC,eAAmB,EAAE,OAAO,KAAK,CAAC,CAAC;IACnC,UAAc,EAAE,OAAO,KAAK,CAAC,CAAC;IAC9B,gBAAoB,EAAE,OAAO,KAAK,CAAC,CAAC;IACpC,cAAkB,EAAE,OAAO,KAAK,CAAC,CAAC;IAClC,WAAe,EAAE,OAAO,KAAK,CAAC,CAAC;IAC/B,YAAgB,EAAE,OAAO,KAAK,CAAC,CAAC;IAChC,gBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC3D,iBAAqB,EAAE,MAAM,MAAM,CAAC,CAAA;CACjC;4BAOU;IAAE,UAAU,EAAE,OAAO,KAAK,CAAC,CAAC;IAAC,WAAW,EAAG,OAAO,KAAK,CAAC,CAAC;IAAC,WAAW,EAAE,OAAO,KAAK,CAAC,CAAA;CAAE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {import('@endo/marshal').PureData} PureData
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* @typedef {[normalizedCollateralization: number, vaultId: VaultId]} CompositeKey
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* @param {PureData} key
|
|
9
|
+
* @returns {string}
|
|
10
|
+
*/
|
|
11
|
+
export const encodeData: (passable: any) => string;
|
|
12
|
+
/**
|
|
13
|
+
* @param {string} encoded
|
|
14
|
+
* @returns {PureData}
|
|
15
|
+
*/
|
|
16
|
+
export const decodeData: (encoded: string) => any;
|
|
17
|
+
export function toVaultKey(normalizedDebt: NormalizedDebt, collateral: Amount<'nat'>, vaultId: VaultId): string;
|
|
18
|
+
export function fromVaultKey(key: string): [normalizedCollateralization: number, vaultId: VaultId];
|
|
19
|
+
export function normalizedCollRatio(quote: PriceQuote, compoundedStabilityFee: Ratio, margin: Ratio): number;
|
|
20
|
+
export function normalizedCollRatioKey(quote: PriceQuote, compoundedStabilityFee: Ratio, margin: Ratio): string;
|
|
21
|
+
export type PureData = import('@endo/marshal').PureData;
|
|
22
|
+
export type CompositeKey = [normalizedCollateralization: number, vaultId: VaultId];
|
|
23
|
+
export type NormalizedDebt = Amount<'nat'> & {
|
|
24
|
+
normalized: true;
|
|
25
|
+
};
|
|
26
|
+
export type ActualDebt = Amount<'nat'> & {
|
|
27
|
+
normalized: false;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=storeUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storeUtils.d.ts","sourceRoot":"","sources":["storeUtils.js"],"names":[],"mappings":"AAqBA;;GAEG;AAEH;;GAEG;AAOH;;;GAGG;AACH,mDAA+C;AAO/C;;;GAGG;AACH,kDAA+C;AAkDxC,2CANI,cAAc,cACd,OAAO,KAAK,CAAC,WACb,OAAO,GACL,MAAM,CAelB;AAOM,kCAHI,MAAM,GACJ,CAAC,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAKnE;AAgBM,2CALI,UAAU,0BACV,KAAK,UACL,KAAK,GACH,MAAM,CAiBlB;AAcM,8CANI,UAAU,0BACV,KAAK,UACL,KAAK,GACH,MAAM,CAUlB;uBAvJY,OAAO,eAAe,EAAE,QAAQ;2BAIhC,CAAC,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;6BA6CtD,OAAO,KAAK,CAAC,GAAG;IAAC,UAAU,EAAE,IAAI,CAAA;CAAC;yBAClC,OAAO,KAAK,CAAC,GAAG;IAAC,UAAU,EAAE,KAAK,CAAA;CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-imports.d.ts","sourceRoot":"","sources":["type-imports.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
type VaultNotification = import('./vault').VaultNotification;
|
|
2
|
+
type Vault = import('./vault').Vault;
|
|
3
|
+
type VaultKit = import('./vaultKit').VaultKit;
|
|
4
|
+
type VaultManager = import('./vaultManager').VaultManager;
|
|
5
|
+
type CollateralManager = import('./vaultManager').CollateralManager;
|
|
6
|
+
type AssetReserveCreatorFacet = import('../reserve/assetReserve.js').AssetReserveLimitedCreatorFacet;
|
|
7
|
+
type AssetReservePublicFacet = import('../reserve/assetReserve.js').AssetReservePublicFacet;
|
|
8
|
+
type AuctioneerPublicFacet = import('../auction/auctioneer.js').AuctioneerPublicFacet;
|
|
9
|
+
type VaultFactoryPublicFacet = import('./vaultFactory.js').VaultFactoryContract['publicFacet'];
|
|
10
|
+
type Timestamp = import('@agoric/time/src/types').Timestamp;
|
|
11
|
+
type RelativeTime = import('@agoric/time/src/types').RelativeTime;
|
|
12
|
+
type AutoswapLocal = {
|
|
13
|
+
getInputPrice: (amount: Amount, brand: Brand) => Amount;
|
|
14
|
+
makeSwapInvitation: () => Invitation;
|
|
15
|
+
};
|
|
16
|
+
type VaultManagerParamValues = {
|
|
17
|
+
/**
|
|
18
|
+
* - margin below which collateral will be
|
|
19
|
+
* liquidated to satisfy the debt.
|
|
20
|
+
*/
|
|
21
|
+
liquidationMargin: Ratio;
|
|
22
|
+
/**
|
|
23
|
+
* - penalty charged upon liquidation as proportion of debt
|
|
24
|
+
*/
|
|
25
|
+
liquidationPenalty: Ratio;
|
|
26
|
+
/**
|
|
27
|
+
* - annual interest rate charged on debt positions
|
|
28
|
+
*/
|
|
29
|
+
stabilityFee: Ratio;
|
|
30
|
+
/**
|
|
31
|
+
* - The fee (in BasisPoints) charged when creating
|
|
32
|
+
* or increasing a debt position.
|
|
33
|
+
*/
|
|
34
|
+
mintFee: Ratio;
|
|
35
|
+
debtLimit: Amount<'nat'>;
|
|
36
|
+
/**
|
|
37
|
+
* - vault must maintain this in order to remove collateral or add debt
|
|
38
|
+
*/
|
|
39
|
+
liquidationPadding?: Ratio | undefined;
|
|
40
|
+
};
|
|
41
|
+
type AddVaultType = (collateralIssuer: Issuer, collateralKeyword: Keyword, params: VaultManagerParamValues) => Promise<VaultManager>;
|
|
42
|
+
type VaultFactoryCreatorFacet = {
|
|
43
|
+
addVaultType: AddVaultType;
|
|
44
|
+
getRewardAllocation: () => Allocation;
|
|
45
|
+
makeCollectFeesInvitation: () => Promise<Invitation<string, never>>;
|
|
46
|
+
makeLiquidationWaker: () => import('@agoric/time/src/types').TimerWaker;
|
|
47
|
+
makePriceLockWaker: () => import('@agoric/time/src/types').TimerWaker;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Mint new debt `toMint` and transfer the `fee` portion to the vaultFactory's reward
|
|
51
|
+
* pool. Then reallocate over all the seat arguments and the rewardPoolSeat. Update
|
|
52
|
+
* the `totalDebt` if the reallocate succeeds.
|
|
53
|
+
*/
|
|
54
|
+
type MintAndTransfer = (mintReceiver: ZCFSeat, toMint: Amount<'nat'>, fee: Amount<'nat'>, transfers: import('@agoric/zoe/src/contractSupport/atomicTransfer.js').TransferPart[]) => void;
|
|
55
|
+
/**
|
|
56
|
+
* Burn debt tokens off a seat and update
|
|
57
|
+
* the `totalDebt` if the reallocate succeeds.
|
|
58
|
+
*/
|
|
59
|
+
type BurnDebt = (toBurn: Amount, fromSeat: ZCFSeat) => void;
|
|
60
|
+
type GetVaultParams = {
|
|
61
|
+
getLiquidationMargin: () => Ratio;
|
|
62
|
+
getMintFee: () => Ratio;
|
|
63
|
+
getCollateralQuote: () => Promise<PriceQuote>;
|
|
64
|
+
/**
|
|
65
|
+
* - The annual interest rate on a debt position
|
|
66
|
+
*/
|
|
67
|
+
getStabilityFee: () => Ratio;
|
|
68
|
+
/**
|
|
69
|
+
* - The period (in seconds) at
|
|
70
|
+
* which interest is charged to the debt position.
|
|
71
|
+
*/
|
|
72
|
+
getChargingPeriod: () => RelativeTime;
|
|
73
|
+
/**
|
|
74
|
+
* - The period (in seconds)
|
|
75
|
+
* at which interest is recorded to the debt position.
|
|
76
|
+
*/
|
|
77
|
+
getRecordingPeriod: () => RelativeTime;
|
|
78
|
+
};
|
|
79
|
+
type VaultId = string;
|
|
80
|
+
type InterestTiming = {
|
|
81
|
+
/**
|
|
82
|
+
* in seconds
|
|
83
|
+
*/
|
|
84
|
+
chargingPeriod: RelativeTime;
|
|
85
|
+
/**
|
|
86
|
+
* in seconds
|
|
87
|
+
*/
|
|
88
|
+
recordingPeriod: RelativeTime;
|
|
89
|
+
};
|
|
90
|
+
type LiquidationStrategy = {
|
|
91
|
+
keywordMapping: () => KeywordKeywordRecord;
|
|
92
|
+
makeProposal: (collateral: Amount, run: Amount) => Proposal;
|
|
93
|
+
makeInvitation: (debt: Amount) => Promise<Invitation>;
|
|
94
|
+
};
|
|
95
|
+
type Liquidator = {
|
|
96
|
+
makeLiquidateInvitation: () => Promise<Invitation<void, {
|
|
97
|
+
debt: Amount<'nat'>;
|
|
98
|
+
penaltyRate: Ratio;
|
|
99
|
+
}>>;
|
|
100
|
+
};
|
|
101
|
+
type DebtStatus = {
|
|
102
|
+
latestStabilityFeeUpdate: Timestamp;
|
|
103
|
+
/**
|
|
104
|
+
* interest accrued since latestStabilityFeeUpdate
|
|
105
|
+
*/
|
|
106
|
+
interest: NatValue;
|
|
107
|
+
/**
|
|
108
|
+
* total including principal and interest
|
|
109
|
+
*/
|
|
110
|
+
newDebt: NatValue;
|
|
111
|
+
};
|
|
112
|
+
type Calculate = (debtStatus: DebtStatus, currentTime: Timestamp) => DebtStatus;
|
|
113
|
+
type CalculatorKit = {
|
|
114
|
+
/**
|
|
115
|
+
* calculate new debt for charging periods up to
|
|
116
|
+
* the present.
|
|
117
|
+
*/
|
|
118
|
+
calculate: Calculate;
|
|
119
|
+
/**
|
|
120
|
+
* calculate new debt for
|
|
121
|
+
* reporting periods up to the present. If some charging periods have elapsed
|
|
122
|
+
* that don't constitute whole reporting periods, the time is not updated past
|
|
123
|
+
* them and interest is not accumulated for them.
|
|
124
|
+
*/
|
|
125
|
+
calculateReportingPeriod: Calculate;
|
|
126
|
+
};
|
|
127
|
+
type VaultFactoryParamPath = {
|
|
128
|
+
key: 'governedParams' | {
|
|
129
|
+
collateralBrand: Brand;
|
|
130
|
+
};
|
|
131
|
+
};
|
|
132
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"yBAGa,OAAO,SAAS,EAAE,iBAAiB;aACnC,OAAO,SAAS,EAAE,KAAK;gBACvB,OAAO,YAAY,EAAE,QAAQ;oBAC7B,OAAO,gBAAgB,EAAE,YAAY;yBACrC,OAAO,gBAAgB,EAAE,iBAAiB;gCAC1C,OAAO,4BAA4B,EAAE,+BAA+B;+BACpE,OAAO,4BAA4B,EAAE,uBAAuB;6BAC5D,OAAO,0BAA0B,EAAE,qBAAqB;+BACxD,OAAO,mBAAmB,EAAE,oBAAoB,CAAC,aAAa,CAAC;iBAE/D,OAAO,wBAAwB,EAAE,SAAS;oBAC1C,OAAO,wBAAwB,EAAE,YAAY;;4BAKnC,MAAM,SAAS,KAAK,KAAK,MAAM;wBACxC,MAAM,UAAU;;;;;;;uBAKhB,KAAK;;;;wBAEL,KAAK;;;;kBACL,KAAK;;;;;aACL,KAAK;eAEL,OAAO,KAAK,CAAC;;;;;;uCAMhB,MAAM,qBACN,OAAO,UACP,uBAAuB,KACrB,QAAQ,YAAY,CAAC;;kBAKpB,YAAY;yBACZ,MAAM,UAAU;+BAChB,MAAM,QAAQ,WAAW,MAAM,EAAE,KAAK,CAAC,CAAC;0BACxC,MAAM,OAAO,wBAAwB,EAAE,UAAU;wBACjD,MAAM,OAAO,wBAAwB,EAAE,UAAU;;;;;;;sCAQpD,OAAO,UACP,OAAO,KAAK,CAAC,OACb,OAAO,KAAK,CAAC,aACb,OAAO,mDAAmD,EAAE,YAAY,EAAE,KACxE,IAAI;;;;;yBASN,MAAM,YACN,OAAO,KACL,IAAI;;0BAKH,MAAM,KAAK;gBACX,MAAM,KAAK;wBACX,MAAM,QAAQ,UAAU,CAAC;;;;qBACzB,MAAM,KAAK;;;;;uBACX,MAAM,YAAY;;;;;wBAElB,MAAM,YAAY;;eAKnB,MAAM;;;;;oBAKL,YAAY;;;;qBACZ,YAAY;;;oBAKZ,MAAM,oBAAoB;+BACb,MAAM,OAAO,MAAM,KAAK,QAAQ;2BACtC,MAAM,KAAK,QAAQ,UAAU,CAAC;;;6BAKrC,MAAM,QAAQ,WAAW,IAAI,EAAE;QAAE,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC;QAAC,WAAW,EAAE,KAAK,CAAC;KAAE,CAAC,CAAC;;;8BAK7E,SAAS;;;;cACT,QAAQ;;;;aACR,QAAQ;;8BAKX,UAAU,eACV,SAAS,KACP,UAAU;;;;;;eAKT,SAAS;;;;;;;8BAET,SAAS;;6BAMT;IAAC,GAAG,EAAE,gBAAgB,GAAG;QAAC,eAAe,EAAE,KAAK,CAAA;KAAC,CAAA;CAAC"}
|