@indigo-labs/indigo-sdk 0.1.3 → 0.1.4
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/package.json +4 -1
- package/.github/workflows/ci.yml +0 -62
- package/.github/workflows/test.yml +0 -44
- package/.husky/pre-commit +0 -1
- package/.nvmrc +0 -1
- package/.prettierrc +0 -6
- package/eslint.config.mjs +0 -35
- package/src/contracts/cdp.ts +0 -741
- package/src/contracts/collector.ts +0 -98
- package/src/contracts/gov.ts +0 -1
- package/src/contracts/interest-oracle.ts +0 -149
- package/src/contracts/lrp.ts +0 -223
- package/src/contracts/one-shot.ts +0 -67
- package/src/contracts/stability-pool.ts +0 -684
- package/src/contracts/staking.ts +0 -348
- package/src/contracts/treasury.ts +0 -112
- package/src/helpers/asset-helpers.ts +0 -57
- package/src/helpers/helper-txs.ts +0 -30
- package/src/helpers/helpers.ts +0 -38
- package/src/helpers/indigo-helpers.ts +0 -19
- package/src/helpers/interest-oracle.ts +0 -57
- package/src/helpers/lucid-utils.ts +0 -70
- package/src/helpers/price-oracle-helpers.ts +0 -36
- package/src/helpers/stability-pool-helpers.ts +0 -207
- package/src/helpers/staking-helpers.ts +0 -94
- package/src/helpers/time-helpers.ts +0 -4
- package/src/helpers/value-helpers.ts +0 -16
- package/src/index.ts +0 -34
- package/src/scripts/always-fail-validator.ts +0 -7
- package/src/scripts/auth-token-policy.ts +0 -23
- package/src/scripts/cdp-creator-validator.ts +0 -53
- package/src/scripts/cdp-validator.ts +0 -9
- package/src/scripts/collector-validator.ts +0 -8
- package/src/scripts/execute-validator.ts +0 -52
- package/src/scripts/gov-validator.ts +0 -44
- package/src/scripts/iasset-policy.ts +0 -22
- package/src/scripts/interest-oracle-validator.ts +0 -23
- package/src/scripts/lrp-validator.ts +0 -23
- package/src/scripts/one-shot-policy.ts +0 -62
- package/src/scripts/poll-manager-validator.ts +0 -52
- package/src/scripts/poll-shard-validator.ts +0 -47
- package/src/scripts/price-oracle-validator.ts +0 -26
- package/src/scripts/stability-pool-validator.ts +0 -60
- package/src/scripts/staking-validator.ts +0 -8
- package/src/scripts/treasury-validator.ts +0 -8
- package/src/scripts/version-record-policy.ts +0 -26
- package/src/scripts/version-registry.ts +0 -15
- package/src/types/generic.ts +0 -106
- package/src/types/indigo/cdp-creator.ts +0 -46
- package/src/types/indigo/cdp.ts +0 -88
- package/src/types/indigo/execute.ts +0 -21
- package/src/types/indigo/gov.ts +0 -51
- package/src/types/indigo/interest-oracle.ts +0 -55
- package/src/types/indigo/lrp.ts +0 -54
- package/src/types/indigo/poll-manager.ts +0 -21
- package/src/types/indigo/poll-shard.ts +0 -16
- package/src/types/indigo/price-oracle.ts +0 -38
- package/src/types/indigo/stability-pool.ts +0 -233
- package/src/types/indigo/staking.ts +0 -99
- package/src/types/indigo/version-record.ts +0 -17
- package/src/types/on-chain-decimal.ts +0 -23
- package/src/types/one-shot.ts +0 -22
- package/src/types/system-params.ts +0 -246
- package/tests/data/system-params.json +0 -989
- package/tests/datums.test.ts +0 -286
- package/tests/endpoints/initialize.ts +0 -1013
- package/tests/hash-checks.test.ts +0 -73
- package/tests/indigo-test-helpers.ts +0 -115
- package/tests/initialize.test.ts +0 -27
- package/tests/interest-calculations.test.ts +0 -120
- package/tests/interest-oracle.test.ts +0 -90
- package/tests/lrp.test.ts +0 -149
- package/tests/queries/governance-queries.ts +0 -31
- package/tests/queries/iasset-queries.ts +0 -39
- package/tests/queries/interest-oracle-queries.ts +0 -13
- package/tests/queries/lrp-queries.ts +0 -39
- package/tests/queries/price-oracle-queries.ts +0 -27
- package/tests/queries/stability-pool-queries.ts +0 -75
- package/tests/queries/staking-queries.ts +0 -43
- package/tests/stability-pool.test.ts +0 -364
- package/tests/staking.test.ts +0 -105
- package/tests/test-helpers.ts +0 -38
- package/tsconfig.build.json +0 -4
- package/tsconfig.json +0 -16
- package/vitest.config.ts +0 -9
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
addAssets,
|
|
3
|
-
Address,
|
|
4
|
-
Assets,
|
|
5
|
-
Credential,
|
|
6
|
-
credentialToAddress,
|
|
7
|
-
Datum,
|
|
8
|
-
LucidEvolution,
|
|
9
|
-
Network,
|
|
10
|
-
OutRef,
|
|
11
|
-
paymentCredentialOf,
|
|
12
|
-
ScriptHash,
|
|
13
|
-
scriptHashToCredential,
|
|
14
|
-
stakeCredentialOf,
|
|
15
|
-
UTxO,
|
|
16
|
-
} from '@lucid-evolution/lucid';
|
|
17
|
-
import { ScriptReference } from '../types/system-params';
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Returns the inline datum.
|
|
21
|
-
* Throws when the UTXO doesn't have an inline datum
|
|
22
|
-
* (i.e. in case it has hash datum or no datum).
|
|
23
|
-
*/
|
|
24
|
-
export function getInlineDatumOrThrow(utxo: UTxO): Datum {
|
|
25
|
-
if (utxo.datum != null) {
|
|
26
|
-
return utxo.datum;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
throw new Error(
|
|
30
|
-
'Expected an inline datum for OutRef: ' +
|
|
31
|
-
JSON.stringify({
|
|
32
|
-
txHash: utxo.txHash,
|
|
33
|
-
outputIndex: utxo.outputIndex,
|
|
34
|
-
} as OutRef),
|
|
35
|
-
);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export async function addrDetails(
|
|
39
|
-
lucid: LucidEvolution,
|
|
40
|
-
): Promise<[Credential, Credential | undefined]> {
|
|
41
|
-
const addr = await lucid.wallet().address();
|
|
42
|
-
return [paymentCredentialOf(addr), stakeCredentialOf(addr)];
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export function createScriptAddress(
|
|
46
|
-
network: Network,
|
|
47
|
-
scriptHash: ScriptHash,
|
|
48
|
-
stakeCredential?: Credential,
|
|
49
|
-
): Address {
|
|
50
|
-
return credentialToAddress(
|
|
51
|
-
network,
|
|
52
|
-
scriptHashToCredential(scriptHash),
|
|
53
|
-
stakeCredential,
|
|
54
|
-
);
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export async function scriptRef(
|
|
58
|
-
ref: ScriptReference,
|
|
59
|
-
lucid: LucidEvolution,
|
|
60
|
-
): Promise<UTxO> {
|
|
61
|
-
const utxos = await lucid.utxosByOutRef([
|
|
62
|
-
{ txHash: ref.input.transactionId, outputIndex: ref.input.index },
|
|
63
|
-
]);
|
|
64
|
-
if (utxos.length === 0) throw Error('Unable to locate script ref.');
|
|
65
|
-
return utxos[0];
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
export function balance(utxos: UTxO[]): Assets {
|
|
69
|
-
return utxos.reduce((acc, utxo) => addAssets(acc, utxo.assets), {});
|
|
70
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Network,
|
|
3
|
-
slotToUnixTime,
|
|
4
|
-
unixTimeToSlot,
|
|
5
|
-
} from '@lucid-evolution/lucid';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Calculates the validity range based on the oracle expiration,
|
|
9
|
-
* and caps the upper bound when necessary.
|
|
10
|
-
*/
|
|
11
|
-
export function oracleExpirationAwareValidity(
|
|
12
|
-
currentSlot: number,
|
|
13
|
-
biasTime: number,
|
|
14
|
-
oracleExpiration: number,
|
|
15
|
-
network: Network,
|
|
16
|
-
): {
|
|
17
|
-
validFrom: number;
|
|
18
|
-
validTo: number;
|
|
19
|
-
} {
|
|
20
|
-
const validateFrom = slotToUnixTime(network, currentSlot - 1);
|
|
21
|
-
const defaultValidateTo = validateFrom + biasTime;
|
|
22
|
-
/// Take the oracle expiration time - 1 slot which is the last acceptable non-expired valid_to time
|
|
23
|
-
/// for the current oracle.
|
|
24
|
-
const cappedValidateTo = slotToUnixTime(
|
|
25
|
-
network,
|
|
26
|
-
unixTimeToSlot(network, oracleExpiration) - 1,
|
|
27
|
-
);
|
|
28
|
-
const isOracleActuallyExpired = cappedValidateTo <= validateFrom;
|
|
29
|
-
|
|
30
|
-
return {
|
|
31
|
-
validFrom: validateFrom,
|
|
32
|
-
validTo: isOracleActuallyExpired
|
|
33
|
-
? defaultValidateTo
|
|
34
|
-
: Math.min(defaultValidateTo, cappedValidateTo),
|
|
35
|
-
};
|
|
36
|
-
}
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
import { UTxO } from '@lucid-evolution/lucid';
|
|
2
|
-
import {
|
|
3
|
-
EpochToScaleToSum,
|
|
4
|
-
fromSPInteger,
|
|
5
|
-
mkSPInteger,
|
|
6
|
-
parseSnapshotEpochToScaleToSumDatum,
|
|
7
|
-
parseStabilityPoolDatum,
|
|
8
|
-
spAdd,
|
|
9
|
-
spDiv,
|
|
10
|
-
SPInteger,
|
|
11
|
-
spMul,
|
|
12
|
-
spSub,
|
|
13
|
-
StabilityPoolSnapshot,
|
|
14
|
-
} from '../types/indigo/stability-pool';
|
|
15
|
-
|
|
16
|
-
const newScaleMultiplier = 1000000000n;
|
|
17
|
-
|
|
18
|
-
export function getSumFromEpochToScaleToSum(
|
|
19
|
-
e2s2s: EpochToScaleToSum,
|
|
20
|
-
epoch: bigint,
|
|
21
|
-
scale: bigint,
|
|
22
|
-
): SPInteger | undefined {
|
|
23
|
-
for (const [key, value] of e2s2s.entries()) {
|
|
24
|
-
if (key.epoch === epoch && key.scale === scale) {
|
|
25
|
-
return value;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return undefined;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export function setSumInEpochToScaleToSum(
|
|
32
|
-
e2s2s: EpochToScaleToSum,
|
|
33
|
-
epoch: bigint,
|
|
34
|
-
scale: bigint,
|
|
35
|
-
sum: SPInteger,
|
|
36
|
-
): EpochToScaleToSum {
|
|
37
|
-
const map = new Map<{ epoch: bigint; scale: bigint }, SPInteger>();
|
|
38
|
-
for (const [key, value] of e2s2s.entries()) {
|
|
39
|
-
if (!(key.epoch === epoch && key.scale === scale)) {
|
|
40
|
-
map.set(key, value);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
map.set({ epoch, scale }, sum);
|
|
45
|
-
|
|
46
|
-
return map;
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
export function getAccountReward(
|
|
50
|
-
account: StabilityPoolSnapshot,
|
|
51
|
-
e2s2s: EpochToScaleToSum,
|
|
52
|
-
): SPInteger {
|
|
53
|
-
const s1 = getSumFromEpochToScaleToSum(e2s2s, account.epoch, account.scale);
|
|
54
|
-
if (!s1) throw new Error('No scale found for epoch and scale');
|
|
55
|
-
const s2 =
|
|
56
|
-
getSumFromEpochToScaleToSum(e2s2s, account.epoch, account.scale + 1n) ?? s1;
|
|
57
|
-
const a1 = spSub(s1, account.sumVal);
|
|
58
|
-
const a2 = spDiv(spSub(s2, s1), mkSPInteger(newScaleMultiplier));
|
|
59
|
-
|
|
60
|
-
return spDiv(spMul(spAdd(a1, a2), account.depositVal), account.productVal);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
export function getAccountFund(
|
|
64
|
-
pool: StabilityPoolSnapshot,
|
|
65
|
-
account: StabilityPoolSnapshot,
|
|
66
|
-
): SPInteger {
|
|
67
|
-
let fund = spDiv(
|
|
68
|
-
spMul(account.depositVal, pool.productVal),
|
|
69
|
-
account.productVal,
|
|
70
|
-
);
|
|
71
|
-
if (pool.epoch > account.epoch) fund = mkSPInteger(0n);
|
|
72
|
-
if (pool.scale - account.scale > 1n) fund = mkSPInteger(0n);
|
|
73
|
-
if (pool.scale > account.scale)
|
|
74
|
-
fund = spDiv(spMul(account.depositVal, pool.productVal), {
|
|
75
|
-
value: account.productVal.value * newScaleMultiplier,
|
|
76
|
-
});
|
|
77
|
-
|
|
78
|
-
if (fund.value < spDiv(account.depositVal, mkSPInteger(1000000000n)).value)
|
|
79
|
-
return mkSPInteger(0n);
|
|
80
|
-
return fund;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
export function adjust(
|
|
84
|
-
pool: StabilityPoolSnapshot,
|
|
85
|
-
account: StabilityPoolSnapshot,
|
|
86
|
-
e2s2s: EpochToScaleToSum,
|
|
87
|
-
): [StabilityPoolSnapshot, bigint] {
|
|
88
|
-
const newAccountSnapshot: StabilityPoolSnapshot = {
|
|
89
|
-
...pool,
|
|
90
|
-
depositVal: getAccountFund(pool, account),
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
const accountReward = fromSPInteger(getAccountReward(account, e2s2s));
|
|
94
|
-
|
|
95
|
-
return [newAccountSnapshot, accountReward];
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
type SnapshotESSSearchResult = { utxo: UTxO; e2s2s: EpochToScaleToSum };
|
|
99
|
-
|
|
100
|
-
function findEpochToScaleToSum(
|
|
101
|
-
snapshotEpochToScaleToSumTokenRef1: UTxO,
|
|
102
|
-
snapshotEpochToScaleToSumTokenRef2: UTxO | undefined,
|
|
103
|
-
): [SnapshotESSSearchResult, SnapshotESSSearchResult | undefined] {
|
|
104
|
-
let ess1: EpochToScaleToSum;
|
|
105
|
-
try {
|
|
106
|
-
ess1 = parseSnapshotEpochToScaleToSumDatum(
|
|
107
|
-
snapshotEpochToScaleToSumTokenRef1.datum,
|
|
108
|
-
).snapshot;
|
|
109
|
-
} catch (_) {
|
|
110
|
-
ess1 = parseStabilityPoolDatum(
|
|
111
|
-
snapshotEpochToScaleToSumTokenRef1.datum,
|
|
112
|
-
).epochToScaleToSum;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
const ess1Ref: SnapshotESSSearchResult = {
|
|
116
|
-
utxo: snapshotEpochToScaleToSumTokenRef1,
|
|
117
|
-
e2s2s: ess1,
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
if (snapshotEpochToScaleToSumTokenRef2) {
|
|
121
|
-
const ess2 = parseSnapshotEpochToScaleToSumDatum(
|
|
122
|
-
snapshotEpochToScaleToSumTokenRef2.datum,
|
|
123
|
-
);
|
|
124
|
-
const ess2Ref: SnapshotESSSearchResult = {
|
|
125
|
-
utxo: snapshotEpochToScaleToSumTokenRef2,
|
|
126
|
-
e2s2s: ess2.snapshot,
|
|
127
|
-
};
|
|
128
|
-
return [ess1Ref, ess2Ref];
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
return [ess1Ref, undefined];
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
export function adjustmentHelper(
|
|
135
|
-
spESTSTokenRef1: UTxO,
|
|
136
|
-
spESTSTokenRef2: UTxO | undefined,
|
|
137
|
-
pool: StabilityPoolSnapshot,
|
|
138
|
-
e2s2s: EpochToScaleToSum,
|
|
139
|
-
account: StabilityPoolSnapshot,
|
|
140
|
-
): [StabilityPoolSnapshot, bigint, UTxO[]] {
|
|
141
|
-
let accumulatedEpochToScaleToSum: EpochToScaleToSum;
|
|
142
|
-
let refInputs: UTxO[];
|
|
143
|
-
|
|
144
|
-
const value = getSumFromEpochToScaleToSum(
|
|
145
|
-
e2s2s,
|
|
146
|
-
account.epoch,
|
|
147
|
-
account.scale,
|
|
148
|
-
);
|
|
149
|
-
|
|
150
|
-
if (value) {
|
|
151
|
-
accumulatedEpochToScaleToSum = e2s2s;
|
|
152
|
-
refInputs = [];
|
|
153
|
-
} else {
|
|
154
|
-
const [ess1, ess2] = findEpochToScaleToSum(
|
|
155
|
-
spESTSTokenRef1,
|
|
156
|
-
spESTSTokenRef2,
|
|
157
|
-
);
|
|
158
|
-
if (ess2) {
|
|
159
|
-
accumulatedEpochToScaleToSum = new Map<
|
|
160
|
-
{ epoch: bigint; scale: bigint },
|
|
161
|
-
SPInteger
|
|
162
|
-
>([
|
|
163
|
-
...Array.from(ess1.e2s2s.entries()),
|
|
164
|
-
...Array.from(ess2.e2s2s.entries()),
|
|
165
|
-
...Array.from(e2s2s.entries()),
|
|
166
|
-
]);
|
|
167
|
-
refInputs = [ess1.utxo, ess2.utxo];
|
|
168
|
-
} else {
|
|
169
|
-
accumulatedEpochToScaleToSum = new Map<
|
|
170
|
-
{ epoch: bigint; scale: bigint },
|
|
171
|
-
SPInteger
|
|
172
|
-
>([...Array.from(ess1.e2s2s.entries()), ...Array.from(e2s2s.entries())]);
|
|
173
|
-
refInputs = [ess1.utxo];
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
const [newAccountSnapshot, accountReward] = adjust(
|
|
178
|
-
pool,
|
|
179
|
-
account,
|
|
180
|
-
accumulatedEpochToScaleToSum,
|
|
181
|
-
);
|
|
182
|
-
|
|
183
|
-
return [newAccountSnapshot, accountReward, refInputs];
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
export function updatePoolSnapshotWithdrawalFee(
|
|
187
|
-
withdrawalFeeAmount: SPInteger,
|
|
188
|
-
newPoolDepositExcludingFee: SPInteger,
|
|
189
|
-
pool: StabilityPoolSnapshot,
|
|
190
|
-
): [SPInteger, SPInteger] {
|
|
191
|
-
const newPoolDepositVal = spAdd(
|
|
192
|
-
newPoolDepositExcludingFee,
|
|
193
|
-
withdrawalFeeAmount,
|
|
194
|
-
);
|
|
195
|
-
const newPoolProduct =
|
|
196
|
-
withdrawalFeeAmount.value === 0n
|
|
197
|
-
? pool.productVal
|
|
198
|
-
: spMul(
|
|
199
|
-
pool.productVal,
|
|
200
|
-
spAdd(
|
|
201
|
-
mkSPInteger(1n),
|
|
202
|
-
spDiv(withdrawalFeeAmount, newPoolDepositExcludingFee),
|
|
203
|
-
),
|
|
204
|
-
);
|
|
205
|
-
|
|
206
|
-
return [newPoolDepositVal, newPoolProduct];
|
|
207
|
-
}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { fromText, OutRef, UTxO } from '@lucid-evolution/lucid';
|
|
2
|
-
import { LucidEvolution } from '@lucid-evolution/lucid';
|
|
3
|
-
import { StakingContract } from '../contracts/staking';
|
|
4
|
-
import { SystemParams } from '../types/system-params';
|
|
5
|
-
import {
|
|
6
|
-
parseStakingManagerDatum,
|
|
7
|
-
parseStakingPositionDatum,
|
|
8
|
-
StakingManagerContent,
|
|
9
|
-
StakingPositionContent,
|
|
10
|
-
} from '../types/indigo/staking';
|
|
11
|
-
|
|
12
|
-
export type StakingPositionOutput = {
|
|
13
|
-
utxo: UTxO;
|
|
14
|
-
datum: StakingPositionContent;
|
|
15
|
-
};
|
|
16
|
-
export type StakingManagerOutput = { utxo: UTxO; datum: StakingManagerContent };
|
|
17
|
-
|
|
18
|
-
export class StakingHelpers {
|
|
19
|
-
static async findStakingManagerByOutRef(
|
|
20
|
-
stakingManagerRef: OutRef,
|
|
21
|
-
lucid: LucidEvolution,
|
|
22
|
-
): Promise<StakingManagerOutput> {
|
|
23
|
-
return lucid
|
|
24
|
-
.utxosByOutRef([stakingManagerRef])
|
|
25
|
-
.then((utxos) =>
|
|
26
|
-
utxos
|
|
27
|
-
.map((utxo) => {
|
|
28
|
-
if (!utxo.datum) return undefined;
|
|
29
|
-
const datum = parseStakingManagerDatum(utxo.datum);
|
|
30
|
-
return { utxo, datum };
|
|
31
|
-
})
|
|
32
|
-
.find((utxo) => utxo !== undefined),
|
|
33
|
-
)
|
|
34
|
-
.then((result) => {
|
|
35
|
-
if (!result)
|
|
36
|
-
throw new Error(
|
|
37
|
-
'Unable to locate Staking Manager by output reference.',
|
|
38
|
-
);
|
|
39
|
-
return result;
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
static async findStakingManager(
|
|
44
|
-
params: SystemParams,
|
|
45
|
-
lucid: LucidEvolution,
|
|
46
|
-
): Promise<StakingManagerOutput> {
|
|
47
|
-
return lucid
|
|
48
|
-
.utxosAtWithUnit(
|
|
49
|
-
StakingContract.address(params.stakingParams, lucid),
|
|
50
|
-
params.stakingParams.stakingManagerNFT[0].unCurrencySymbol +
|
|
51
|
-
fromText(params.stakingParams.stakingManagerNFT[1].unTokenName),
|
|
52
|
-
)
|
|
53
|
-
.then((utxos) =>
|
|
54
|
-
utxos
|
|
55
|
-
.map((utxo) => {
|
|
56
|
-
if (!utxo.datum) return undefined;
|
|
57
|
-
const datum = parseStakingManagerDatum(utxo.datum);
|
|
58
|
-
return { utxo, datum };
|
|
59
|
-
})
|
|
60
|
-
.find((utxo) => utxo !== undefined),
|
|
61
|
-
)
|
|
62
|
-
.then((result) => {
|
|
63
|
-
if (!result)
|
|
64
|
-
throw new Error(
|
|
65
|
-
'Unable to locate Staking Manager by output reference.',
|
|
66
|
-
);
|
|
67
|
-
return result;
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
static async findStakingPositionByOutRef(
|
|
72
|
-
stakingPositionRef: OutRef,
|
|
73
|
-
lucid: LucidEvolution,
|
|
74
|
-
): Promise<StakingPositionOutput> {
|
|
75
|
-
return lucid
|
|
76
|
-
.utxosByOutRef([stakingPositionRef])
|
|
77
|
-
.then((utxos) =>
|
|
78
|
-
utxos
|
|
79
|
-
.map((utxo) => {
|
|
80
|
-
if (!utxo.datum) return undefined;
|
|
81
|
-
const datum = parseStakingPositionDatum(utxo.datum);
|
|
82
|
-
return { utxo, datum };
|
|
83
|
-
})
|
|
84
|
-
.find((utxo) => utxo !== undefined),
|
|
85
|
-
)
|
|
86
|
-
.then((result) => {
|
|
87
|
-
if (!result)
|
|
88
|
-
throw new Error(
|
|
89
|
-
'Unable to locate Staking Position by output reference.',
|
|
90
|
-
);
|
|
91
|
-
return result;
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Assets, toUnit, Unit } from '@lucid-evolution/lucid';
|
|
2
|
-
import { AssetClass } from '../types/generic';
|
|
3
|
-
|
|
4
|
-
export function mkLovelacesOf(amount: bigint): Assets {
|
|
5
|
-
return { lovelace: amount };
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export function assetClassToUnit(ac: AssetClass): Unit {
|
|
9
|
-
return toUnit(ac.currencySymbol, ac.tokenName);
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
export function mkAssetsOf(assetClass: AssetClass, amount: bigint): Assets {
|
|
13
|
-
return {
|
|
14
|
-
[assetClassToUnit(assetClass)]: amount,
|
|
15
|
-
};
|
|
16
|
-
}
|
package/src/index.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
export * from './contracts/cdp';
|
|
2
|
-
export * from './contracts/collector';
|
|
3
|
-
export * from './contracts/gov';
|
|
4
|
-
export * from './contracts/stability-pool';
|
|
5
|
-
export * from './contracts/staking';
|
|
6
|
-
export * from './contracts/interest-oracle';
|
|
7
|
-
export * from './contracts/treasury';
|
|
8
|
-
export * from './helpers/asset-helpers';
|
|
9
|
-
export * from './helpers/helpers';
|
|
10
|
-
export * from './helpers/lucid-utils';
|
|
11
|
-
export * from './helpers/time-helpers';
|
|
12
|
-
export * from './scripts/cdp-creator-validator';
|
|
13
|
-
export * from './scripts/cdp-validator';
|
|
14
|
-
export * from './scripts/collector-validator';
|
|
15
|
-
export * from './scripts/interest-oracle-validator';
|
|
16
|
-
export * from './scripts/poll-shard-validator';
|
|
17
|
-
export * from './scripts/poll-manager-validator';
|
|
18
|
-
export * from './scripts/treasury-validator';
|
|
19
|
-
export * from './types/indigo/cdp';
|
|
20
|
-
export * from './types/indigo/execute';
|
|
21
|
-
export * from './types/indigo/gov';
|
|
22
|
-
export * from './types/indigo/interest-oracle';
|
|
23
|
-
export * from './types/indigo/price-oracle';
|
|
24
|
-
export * from './types/indigo/stability-pool';
|
|
25
|
-
export * from './types/indigo/lrp';
|
|
26
|
-
export * from './types/indigo/poll-shard';
|
|
27
|
-
export * from './types/indigo/poll-manager';
|
|
28
|
-
export * from './types/generic';
|
|
29
|
-
export * from './types/system-params';
|
|
30
|
-
export * from './contracts/lrp';
|
|
31
|
-
export * from './scripts/lrp-validator';
|
|
32
|
-
export * from './helpers/helper-txs';
|
|
33
|
-
export * from './contracts/one-shot';
|
|
34
|
-
export * from './helpers/helpers';
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { SpendingValidator } from '@lucid-evolution/lucid';
|
|
2
|
-
|
|
3
|
-
export const alwaysFailValidator: SpendingValidator = {
|
|
4
|
-
type: 'PlutusV2',
|
|
5
|
-
script:
|
|
6
|
-
'587f010000323232323232232253330044a029309b2b19299980199b874800000454ccc018c014dd50010a4c2c2a66600666e1d2002001132325333008300a002149858dd7180400098029baa002153330033370e900200089919299980418050010a4c2c6010002600a6ea800858c00cdd5000ab9a5573aaae7955cfaba157441',
|
|
7
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
applyParamsToScript,
|
|
3
|
-
Constr,
|
|
4
|
-
MintingPolicy,
|
|
5
|
-
ScriptType,
|
|
6
|
-
} from '@lucid-evolution/lucid';
|
|
7
|
-
import { AssetClass } from '../types/generic';
|
|
8
|
-
|
|
9
|
-
const authPolicyData = {
|
|
10
|
-
type: 'PlutusV2' as ScriptType,
|
|
11
|
-
cborHex:
|
|
12
|
-
'5904d95904d60100003232323232323232323232323232323232323232323232323232223232223232323253355335533357346042660166018a00200e03026464666ae68cdc419806980728019980b9999aa999ab9a3370e90030008990911118020029aba1302400215333573466e1d20040011321222230020053574260480042a666ae68c08c0044c848888c004014d5d098120010a999ab9a30220011321222230030053574260480040424c40024c4c016900100a80d98120009baa3500201d01813357389213d4d75737420636f6e73756d65204e4654206f7220746f6b656e2070726576696f75736c79206d696e746564207573696e67207468697320706f6c6963790001301415335738920103505435001613253335734604060460022646464646464646464646464646464646464646464642466666666666600202e02a02602201e01a01601200e00a0060046ae84d5d10011aba1001357440046ae84004d5d10011aba1001357440046ae84004d5d10011aba1001357440046ae84004d5d10011aba1001357440046ae84004d5d10011aba1001357440046ae84004d5d118118011aba1302200101f37546a002036a666ae68c078c0840084c8c848cc00400c008d5d09aba2302100335742604000403aa666ae68c074c080dd500180880e1baa00153335734603260380022646601e6ae84004d5d09aba2001301b00101837540044464646603a4466a0029000111a801112999ab9a3375e0040102660464466a0029000111a801112999ab9a3375e00401a20022600c0060022600c0060086a00402a6a0020264666aa6020026660144466aa601c02a46a002446601e00466aa602203046a0024466024004666a0026e012000700466e0000520000013355300e015235001223300f00233350012335530120192350012233013002300e0010012233300a0090020012335530120192350012233013002301000100133300500400200100e232333008200133008200175a6aa666ae68c05cc0680044c8c8c8c8c8c848cccc00401c01400c008d5d09aba2002357420026ae88008d5d08009aba2301a00235742603200202c44440066ea8d400404ccc06488cccd55cf800900891919809a999ab9a3019301c001132321233001003002357426ae88c070008d5d0980d80080c18021aba200337546ae84008054dd61a80091111111111100611199ab9a3375e00400201c010444666aa601602601e66aa601802646a002446601a0046010002666aa6016026446a00444a66a666aa602802e6601c4466601402e004002601002c46a002446601400400a00c200626602600800601c00266aa601802646a002446601a0046603844a66a002260180064426a00444a66a6601800401022444660040140082600c00600800446600244a66a004018200200a4244460060084446602c446666aae7c00480388c8cc040cc02cc01cc064004c018c060004c010d5d10019aba1002012375600242444600200820142014442466002006004601c4422444a66a00220044426600a004666aa600e01e00a008002601a442244a66a00200a44266012600800466aa600c01a00800220022006442446600200800660124422444a66a00226a00600e442666a00a0106008004666aa600e01400a0080024400444002240022a66ae71241035054310016370e90001b874800955cf2ab9d2323001001223300330020020011',
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
export function mkAuthTokenPolicy(ac: AssetClass, tn: string): MintingPolicy {
|
|
16
|
-
return {
|
|
17
|
-
type: authPolicyData.type,
|
|
18
|
-
script: applyParamsToScript(authPolicyData.cborHex, [
|
|
19
|
-
new Constr(0, [ac.currencySymbol, ac.tokenName]),
|
|
20
|
-
tn,
|
|
21
|
-
]),
|
|
22
|
-
};
|
|
23
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
applyParamsToScript,
|
|
3
|
-
ScriptType,
|
|
4
|
-
SpendingValidator,
|
|
5
|
-
} from '@lucid-evolution/lucid';
|
|
6
|
-
import {
|
|
7
|
-
castCDPCreatorParams,
|
|
8
|
-
CDPCreatorParams,
|
|
9
|
-
} from '../types/indigo/cdp-creator';
|
|
10
|
-
import {
|
|
11
|
-
CDPCreatorParamsSP,
|
|
12
|
-
fromSystemParamsAsset,
|
|
13
|
-
} from '../types/system-params';
|
|
14
|
-
|
|
15
|
-
/* Automatically generated by serialise-contract executable in smart-contracts */
|
|
16
|
-
export const cdpCreatorValidator = {
|
|
17
|
-
type: 'PlutusV2' as ScriptType,
|
|
18
|
-
description: '',
|
|
19
|
-
cborHex:
|
|
20
|
-
'591a6c591a6901000032323232323232322232322323225333009323232533300c3006300e37540022646464646464646464646464646464646464a66603c603660406ea80644c8c8c8ccccc8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88888c8c8c8c8c8c94ccc0f8c0ecc100dd50008991919192999821181e18221baa00213232533304433034490115496e636f72726563742074782076616c69646974790032325333046325333047302d00114a22a66608e6082002294452818241baa3301d303930493754004607260926ea80044c94ccc11cc1100045288a99982398208008a5114a060906ea8cc074c0c4c124dd5001181898249baa00114a06034606e66094606e660946036660946ea0cdc08071bad30163048375408897ae03304a3330454a298103d87a80004c0103d87980004bd7019825181b99825180d998251ba83370001c6eb4c058c120dd502225eb80cc128ccc11528a6103d87a80004c0103d87980004bd7025eb80c064c058c11cdd501d0a9998221981a24811754582069736e74207369676e6564206279206f776e657200330283758602a608e6ea80e804054ccc110cc0d124011543445043726561746f724e4654206d697373696e67003302e3756605e608e6ea8c0bcc11cdd5003181b98239baa04315333044330344912043445043726561746f72206f757470757420646f6573206e6f74206d617463680033333014008301a330490054bd70260107d87b9fd87980ff00301330373047375408698103d87a80001533304433034491174d696e7465642076616c756520697320696e76616c6964003375e6e98c0c8dd5981898239baa03a374c66660306026604e608e6ea810cdd7181798239baa043375c606e608e6ea800803c54ccc110cc0d1240115434450206f757470757420697320696e76616c69640033333014008303633049301a33049304a304b304b304b304b304b3047375408697ae04bd7019ba548010cc124c0d8cc124c0d8cc124c0d8cc124dd480825eb80cc124c0dcc11cdd5001198249ba800f33049303633049375001a660926ea0cdc01bad303730473754002a66608866e20dd6981398239baa00100d13370666e0ccdc119b823370201a6eb4c09cc11cdd50009bad303730473754605e608e6ea8005208080a0f6f4acdbe01b48202c227efa8052080897a15330454901254d75737420686f6c643a206e6f77203e206c61737420696e7465726573742075706461746500164bd7025eb812f5c097ae033012301330273047375408601c980103d87980001325332330463303649115556e646572636f6c6c61746572697a65642043445000337126eb4c0e4c124dd51980c9980c981998249baa00430383304b3750600202297ae03039304937540046eb4c0e4c124dd51980c981c198259ba830010104bd70181c198259ba833704906400a410112f497ae01533304633036491164e6f6e706f736974697665206d696e74656420616d7400302e011153330463303649012e4d7573742070726f76696465206d6f7265207468616e206d696e436f6c6c61746572616c496e4c6f76656c61636500337126eb4c060c124dd50228080a9998231981b249174f7261636c652063616e2774206265206578706972656400333046325333047304130493754002266e24dd6981918251baa003375a609a60946ea800454cc121240124496e636f7272656374207472616e73616374696f6e2076616c69646974792072616e67650016303930493754606260926ea8c060c124dd501e2504a226606c9201194d757374207061792064656274206d696e74696e67206665650033322232533304a3032002132533304b3232302c00232533304d304a00115333051305037540042930b0a99982698238008a99982898281baa00214985854ccc134c0cc00454ccc144c140dd50010a4c2c2c609c6ea8004c94ccc130c124c138dd50008982918279baa001153304d49117436f756c64206e6f742066696e642072656465656d6572001632323300100100722533305200114c0103d87a8000132323253330513375e00c60a600626086660ac00297ae0133005005002305300230560023054001302133050303e304e375400297ae013333301b00f302133050303d33050002330504c103d87a80004bd7025eb8130107d87b9fd87980ff00330193756606c609c6ea8c0d8c138dd5000801a60103d879800014a064a66609e0022a66098921284d757374207370656e64203120696e7075742066726f6d20636f6c6c6563746f722073637269707400161533304f305200113051001153304c4901284d757374207370656e64203120696e7075742066726f6d20636f6c6c6563746f722073637269707400163303301123375e607c609c6ea8c0f8c138dd5181b18271baa00100214a2603e6609c6ea40092f5c06eacc130c134c134c134c134c134c134c134c134c134c124dd501e1bae30133049375408a6644a66609066e2400520001480004dd6981d98259baa303a3304d375066e0cc00cdd6981d98259baa3301b303a3304d375000297ae0002375a607660966ea8c0e8cc134dd419b8248320052080897a4bd7025eb80c04cc124dd50021bad303930493754660326070660966ea00452f5c0607260926ea80085280a5014a06e092080897a14a064a66608a6084608e6ea800454cc11924012543616e6e6f74206f70656e206120434450206f6620612064656c69737465642061737365740016132320025333046304330483754002264646464a66609c60a20042649318118018b1bad304f001304f002304d001304937540022c6054605060906ea8c0c0c120dd51929998250008a99823a492145787065637465642065786163746c79206f6e65206f7261636c6520696e70757400161533304a304d0011304c001153304749012145787065637465642065786163746c79206f6e65206f7261636c6520696e707574001633302c00a304b30483754609660906ea8005300103d8798000302f3047375400429405280a5014a0294052819190012999822182098231baa0011323232323232533304e3051002132498c08c00c58dd698278009827801182680098268011bad304b001304737540022c6050604c608c6ea8c0b8c118dd51929998240008a99822a492a45787065637465642065786163746c79206f6e6520696e746572657374206f7261636c6520696e707574001615333048304b0011304a001153304549012a45787065637465642065786163746c79206f6e6520696e746572657374206f7261636c6520696e707574001633302a008302630463754002980103d87980003048304537540042c64a666084607e00226464a6660906096004264932999822182098231baa001132323232323232325333050305300213232498c94ccc138c12c0044c8c8c8c94ccc158c16400852616375a60ae00260ae0046eb4c154004c144dd50018a9998271824000899191919299982b182c8010a4c2c6eb4c15c004c15c008dd6982a80098289baa00316304f3754004604800e2c60a200260a20046eb4c13c004c13c008dd718268009826801182580098239baa00116163049001304537540042a666084607800226464a6660906096004264932999822182098231baa001132323232323232323232323232323232323232323232323232323232533306430670021323232323232323232323232498c10c030c10c03cc108040c104044c100048c0fc04cc0f8050c0f4054c0f0058c0ec05cc0f4060c94ccc184c1780044c8c94ccc19cc1a80084c926303c001163068001306437540342a6660c260b600226464a6660ce60d4004264932999831983018329baa001132325333069306c002132498c10400458c1a8004c198dd50008b0b183400098321baa01a16306237540322c60ca00260ca00464a6660c460c20022a6660bc60b060c0002294454ccc178c16cc1800045280b0b1baa3063001306300230610013061002305f001305f002305d001305d002305b001305b0023059001305900230570013057002305500130550023053001305300230510013051002304f001304f002304d001304d002375c6096002608e6ea80045858c124004c114dd50010b18219baa0013025302330433754605660866ea8c94ccc11400454cc10924012145787065637465642065786163746c79206f6e652069617373657420696e707574001615333045304800113047001153304249012145787065637465642065786163746c79206f6e652069617373657420696e707574001633302700530463047304730473043375407e980103d8798000303230423754605460846ea8004c110c104dd50008b198170020189bac304230430023758608200260820046eb0c0fc004c0ecdd50171181d181d981d981d981d981d981d800911999804001244100488100001233225333034302e4800052f5bded8c0264646600200297adef6c6022533303b00113303c337606ea4014dd3001a5eb7bdb1804c8c8c8c94ccc0ecc068cc0540240084cc100cdd81ba9009374c00e00a2a66607666e3c0240084cc100cdd81ba9009374c00e00626608066ec0dd48011ba6001330060060033756607a0066eb8c0ec008c0fc008c0f4004c8cc0040052f5bded8c044a66607400226607666ec0dd4801a610101004bd6f7b630099191919299981d180c9980a00380109981f99bb0375200e9810101000051533303a3371e00e00426607e66ec0dd4803a6101010000313303f337606ea4008dd4000998030030019bad303c003375c6074004607c00460780026eb8c094c0d4dd50009bae301d303537540024444464660020026603e00ca66606c606660706ea80144c88cdd79815981d9baa302b303b3754002004607860726ea80144c88cdd79815981d9baa001002303c3039375400a44a66607600229404c94ccc0e0c94ccc0e4cdd7980e181e1baa001007132533303e00114a22a66607c60820022646464a66607a60586eb8c10c00c54ccc0f4c0b000454ccc0f4c0e8c0fcdd50048a99981e99b89480000084cdc48012410137dc0429404cdc4a400000429405281bae30423043002375a6082608460840026eb0c1000045281919800800991998008009bab3026303e3754006646600200201244a666082002297adef6c6013233043337606ea4dd718200009ba632330010013756608400444a666088002297adef6c6013233046337606ea4dd718218009ba83370290001bad3044001330030033048002304600133003003304500230430012225333041002100113233300400430450033333301b002375c60800026eacc104004888c94ccc108c0740045300103d87a80001303433047374c00297ae03233300100100300222253330480021001132333004004304c00333333023002375c608e0026eb4c120004888c94ccc124c1180045300103d87a80001303b3304e375000297ae03370000400203e6094004030608600444a66607e002297ae01323332223233001001003225333045001100313233047374e6608e6ea4018cc11cdd49bae30440013304737506eb4c1140052f5c0660060066092004608e0026eb8c0f8004dd5981f80099801801982180118208008a50303e00214a2266006006002607c0024606c606e606e606e606e606e606e606e606e0024606a606c606c606c606c606c606c606c002446042660686ea0cdc199b82375a604460646ea8008dd6981118191baa0014820225e92f5c04444a666060605a002200826666601a0080066464004646600200200444a66606e002293099299981c0008a4c26464a66606c606660706ea8cc040dd7181c181e0021bae30380021330050053303b0020011533037491326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016303c002303a001303a00133035337606ea4008dd4000a5eb7bdb180888c94ccc0d0c03c004530103d87a80001302633039374c00297ae033333011001005004222325333037303400114c103d87a8000130293303c375000297ae03370000200401a0144603c6606264a66605a604e605e6ea80044c94ccc0b8c94ccc0ccc0c800454ccc0bcc0a4c0c40045288a999817981618188008a5016163754603260626ea8c084c0c4dd500189802198199ba80014bd7009802198199ba833700002900125eb80dd6981998181baa0011001301f302f3754603e605e6ea8004cc0c4c94ccc0b4c09cc0bcdd5000899299981719299981998190008a999817981498188008a511533302f302c303100114a02c2c6ea8c064c0c4dd5180c98189baa0031300433033375000297ae01300433033375066e0000520014bd701bad3033303037540022002603e605e6ea8c05cc0bcdd5000a5eb80dd2a40044464a66605860520022a6660586052605c6ea8008530103d87a800014c103d87980001533302c30120011533302c3012302e3754004298103d87a800014c103d87b800013232533302e3028001132533302f33710006002298103d87980001533302f337100020062980103d87b800014c103d87a8000375a606860626ea801054ccc0b8c0ac004530103d87b800014c103d8798000302f37540066eb4c0c8c0bcdd500198169baa002232533302a30270011323253330303033002149858dd7181880098169baa0021533302a30240011533302e302d37540042930b0b18159baa001253330283025302a375400226464a66605c60620042930b1bad302f001302b37540022c44a66605066e40008004530103d8798000153330283371e0040022980103d87a800014c103d87b80002533302a00114a2294094ccc094c088c09cdd5000899191919299981698180010a4c2c6eb8c0b8004c0b8008dd7181600098141baa0011622222323300100100622533302e00113302f337606ea4018dd3002a5eb7bdb1804c8c8c8c94ccc0b8c034cc01c0280084cc0cccdd81ba900a374c01200a2a66605c66e3c0280084c94ccc0bcc0b0c0c4dd500089981a19bb03752016606a60646ea80040104010ccc0200280240044cc0cccdd81ba9002374c0026600c00c0066eacc0c000cdd718170011819001181800091111191980080080311299981680089981719bb0375200c6ea00152f5bded8c0264646464a66605a60186600e01400426606466ec0dd48051ba80090051533302d3371e014004264a66605c605660606ea80044cc0cccdd81ba900b303430313754002008200866601001401200226606466ec0dd48011ba800133006006003375a605e0066eb8c0b4008c0c4008c0bc004dd7a6103d8798000375c604e0066eb4c09c008dd698138009bad302730280013027001302600130213754032266646464446464646464a666050604a60546ea80044c94ccc0a4c08cc0acdd500089919192999818181980109919192999817981618189baa00113301f3300f3303437526e61241084d697373696e6720003303437526e60038cc0d0dd49b984901172075706772616465206d696e74696e6720706f6c696379004bd7024900330133010301d009375c606a60646ea800454cc0c0cc03ccc0d0dd49b98491084d697373696e6720003303437526e60038cc0d0dd49b9849010d20757067726164652070617468004bd70249001632533302f302930313754002298103d87a8000130213303437526eb8c0c8c8cdd8181b000981b181b8009bac30353032375400297ae032330010013756603460646ea800c894ccc0d00045300103d87a80001323253330323371e6eb8c0d00080244c090cc0dcdd39981b981a0011981b981a80125eb812f5c02660080080026070004606c002a66605a6054605e6ea80044c8c8c8c94ccc0d4c0e00084c926323300100100222533303700114984c8cc00c00cc0ec008c8c8dd7181c0011bae30360013039001163756606c002606c0046eb4c0d0004c0c0dd50008b1808980798179baa3017302f37540022c606200266602200a01098103d8798000375c605e60586ea800458c06cc0acdd5180d98159baa3013302b3754605c60566ea800458cc060dd6181680200d9bab302c302d302d302d002375860560026056002604c6ea806488dcc9919199800800802244100222533302a0021001132333004004302e00353330273024371a00426e600044cdc500119b8a00537300026e64dd718160011b98001300100122533302400114bd7009981298111813000998010011813800a490a43445043726561746f7200300b3021375403a46048604a604a00244646600200200644a66604800229404c94ccc084cdc79bae302700200414a2266006006002604e0024a6660386004603c6ea80044c088c07cdd50008a9980ea481134e6f7420616e20696e6c696e6520646174756d0016370e9002111191980300211801180498109baa001533301c3019301e3754002246600e6eacc020c080dd50008018918029998049bab3008302037540026eb8c040c080dd50019bae3008302037540066e21200022323300100100322533301f00114bd7009919299980e980280109981100119802002000899802002000981180118108009118091998020011bae300b301b37540026eb8c00cc06cdd50009180e180e80091119299980c1809180d1baa0011480004dd6980f180d9baa0013253330183012301a37540022980103d87a8000132330010013756603e60386ea8008894ccc078004530103d87a80001323232533301d3371e00e6eb8c07c00c4c03ccc088dd4000a5eb804cc014014008dd6980f80118110011810000991980080080211299980e8008a6103d87a80001323232533301c3371e00e6eb8c07800c4c038cc084dd3000a5eb804cc014014008dd5980f0011810801180f8009180d180d980d980d980d8009191980080080111299980c8008a5eb7bdb1804c8c8c8c94ccc064c020008400c4cc078cdd81ba9002374c0026600c00c0066eacc06c00cdd7180c801180e801180d8009b8f4881002253330123330120014a094454cc04c0084004400488c8cc00400400c894ccc05c0045300103d87a80001323253330153375e601060306ea80080144c01ccc0680092f5c0266008008002603600460320026e952000230140013012300f37540022c60226024004602000260186ea80045261365632533300830050011323232323232323253330143017002149858dd6980a800980a8011bad30130013013002375a602200260220046eb8c03c004c02cdd50018a99980418010008a99980618059baa00314985858c024dd50011b8748008c94ccc014c008c01c00454ccc024c020004526161637540046e1d20005734ae7155ceaab9e5573eae815d0aba21',
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
export const mkCDPCreatorValidator = (
|
|
24
|
-
params: CDPCreatorParams,
|
|
25
|
-
): SpendingValidator => {
|
|
26
|
-
return {
|
|
27
|
-
type: cdpCreatorValidator.type,
|
|
28
|
-
script: applyParamsToScript(cdpCreatorValidator.cborHex, [
|
|
29
|
-
castCDPCreatorParams(params),
|
|
30
|
-
]),
|
|
31
|
-
};
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
export const mkCDPCreatorValidatorFromSP = (
|
|
35
|
-
params: CDPCreatorParamsSP,
|
|
36
|
-
): SpendingValidator => {
|
|
37
|
-
return {
|
|
38
|
-
type: cdpCreatorValidator.type,
|
|
39
|
-
script: applyParamsToScript(cdpCreatorValidator.cborHex, [
|
|
40
|
-
castCDPCreatorParams({
|
|
41
|
-
cdpCreatorNft: fromSystemParamsAsset(params.cdpCreatorNft),
|
|
42
|
-
cdpAssetCs: params.cdpAssetCs.unCurrencySymbol,
|
|
43
|
-
cdpAuthTk: fromSystemParamsAsset(params.cdpAuthTk),
|
|
44
|
-
iAssetAuthTk: fromSystemParamsAsset(params.iAssetAuthTk),
|
|
45
|
-
versionRecordToken: fromSystemParamsAsset(params.versionRecordToken),
|
|
46
|
-
cdpScriptHash: params.cdpScriptHash,
|
|
47
|
-
collectorValHash: params.collectorValHash,
|
|
48
|
-
minCollateralInLovelace: BigInt(params.minCollateralInLovelace),
|
|
49
|
-
biasTime: BigInt(params.biasTime),
|
|
50
|
-
}),
|
|
51
|
-
]),
|
|
52
|
-
};
|
|
53
|
-
};
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ScriptType } from '@lucid-evolution/lucid';
|
|
2
|
-
|
|
3
|
-
/* Automatically generated by serialise-contract executable in smart-contracts */
|
|
4
|
-
export const _cdpValidator = {
|
|
5
|
-
type: 'PlutusV2' as ScriptType,
|
|
6
|
-
description: '',
|
|
7
|
-
cborHex:
|
|
8
|
-
'593a8e593a8b010000323232323232323222323232323232323223232323232322533301332323253330163011301837540022646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464a6464646660b660b008826464646464a6660c000c264646464646464a6660ce60c860d26ea80044c8c94ccc1a4c198c1acdd5000899192999835983418369baa001132323232325333074307700213232533307630790021325333073306e3075375400226464a6660f260f800426464646464646464a6660fa660c492010f4261642074782076616c6964697479003302f305930800137540d26605c66e04084dd6981a1840009baa07c337000426eb4c0d0c20004dd503e0a99983e9983124811942616420696e707574206265696e672076616c6964617465640030253065308001375401c2a6660fa660c492010e4d697865642076657273696f6e73003375e60ca6100026ea8058c194c20004dd518329840009baa305c30800137540182a6660fa660c49211754582069736e74207369676e6564206279206f776e657200330280690141533307d3306249010d4d696e742069732077726f6e67003375e6e98018dd319982e9bae305c30800137540f86eb8c170c20004dd500e80f8a99983e998312481104261642069417373657420696e707574003371e6eb8c194c20004dd50049bae305c308001375403a2a6660fa660c49210e42616420434450206f7574707574003333304a018304c33082010164bd70181219841009832198410098321984100983219841009ba90144bd701984100982e1840009baa01d33082013750002661040260c866104026ea0084cc20804dd419b80375a60ca6100026ea801ccc0ac08401d2f5c097ae04bd7025eb80cc124c16cc194c20004dd503e00126103d87980001533307d330624911357726f6e6720706169642074726561737572790033333047375860a06100026ea81a406cdd598231840009baa069375c608a6100026ea81f0dd6982e1840009baa0031533307d533307d00513232533307f33064490115556e646572636f6c6c61746572697a65642043445000333302f004003006302930820137540162660c89211757726f6e67207061696420746f20636f6c6c6563746f72003333304601a01d375660906104026ea81acdd718229841009baa07e3370066e00008004dd698339841009baa00514a06606c60886102026ea8028dd698331840809baa3303a30653308301375004097ae00053303533026019302930800137540f860aa03c2660c492011b57726f6e67207061696420636f6c6c6563746f7220696e74727374003333304401801b3756608c6100026ea81a4dd718219840009baa07c375a60ca6100026ea800c54ccc1f4cc189241164e6f6e706f736974697665206d696e74656420616d740030480011533307d3306249011a43616e2774206d696e742064656c69737465642069417373657400533307d533307d3078307f375460b86100026ea80245288a5014a2266e2407d20001330624911a636f6c6c61746572616c203c206d696e436f6c6c61746572616c00337126eb4c118c20004dd503e0010a5014a029405280a5014a029405280a5014a02940cdc01bad304f307f375403803c66e04cdc0181f9bab305a307e375460b460fc6ea8030070c0c0004c94ccc1ecc1180044cc0c4dd69831983f1baa3303700230623308001375000297ae000714c0106d8799f0000ff003333303701e00d375a609a60fa6ea80680380114ccc1e40044ccc0a0c160c1f0dd500280a982a983e1baa0651330373058307c375400a02aa6660f0608603429444cdc400ca400060b46eacc084c1e8dd50319981b0091824983c9baa002306d00116307a001307637540022c6066608a60ea6ea8c144c1d4dd50008b183b800999819006182198399baa06f4c0103d879800016307500133303000c3056307137540da98103d8798000375a60e660e80046eb4c1c8004c1b8dd50008b182398369baa00a375c60de60d86ea800458c140c1acdd5004182798351baa3046306a375460da60d46ea800458cc130010140dd6183598360011bac306a001306a002375860d000260c86ea8134c198c18cdd502f0a50375a60ca60cc0046eb4c190004c190008dd69831000982f1baa0501533305b3056044132533305c002132323232323232533306330603065375400226464a6660ca60c460ce6ea80044c8c94ccc19cc190c1a4dd50008991919191929998381839801099192999839183a801099192999838183598391baa0011323253330763079002132325333074330594910f4261642074782076616c696469747900330263050307737540c06604a66e04064dd69815983b9baa073337000326eb4c0acc1dcdd50398a99983a1982ca4811357726f6e672070616964207472656173757279003333303e3758608e60ee6ea8180058dd5981e983b9baa060375c607860ee6ea81ccdd69829983b9baa001153330743305949011942616420696e707574206265696e672076616c69646174656400301c305c307737540122a6660e8660b292010e4d697865642076657273696f6e73003375e02260b860ee6ea8c170c1dcdd51829983b9baa00715333074330594911754582069736e74207369676e6564206279206f776e6572003301f06000f15333074330594901154275726e65642076616c75652069732077726f6e67003375e6e98c15cdd5980f183b9baa060374c666608a609660a460b860ee6ea81ccdd71829983b9baa073375c60a660ee6ea8060c130dd69823983b9baa01813305949011457726f6e67207061696420636f6c6c6563746f72003333303b0130163756607a60ee6ea8180dd7181d183b9baa07333700660586603a028604060ee6ea81cccdc080318148009bad305c3077375400229405280a5014a0294052819299983a181f8008998151bad305c30773754660606606460a660ee6ea800c050c16ccc1e4dd4000a5eb8000c5300106d8799f0000ff003333303001800a375a608c60ec6ea805c02ccc0cc04cc118c1d8dd500118350008b183b80098399baa001163030304230723754609c60e46ea8008c0c8dd5982698389baa304d307137540062c60e600266605c018607e60de6ea81ad30103d879800016307100133302c00c3052306d37540d298103d8798000375a60de60e00046eb4c1b8004c1a8dd50008b182198349baa00a375c60d660d06ea800458c130c19cdd5004182598331baa304b30663754608460cc6ea8c1a4c198dd50008b198240020261bac30673068002375860cc00260cc0046eb0c190004c180dd50249831182f9baa05a14a06eb4c184c178dd502809919299982e9828823099299982f002099911919191919192999833183198341baa0011323253330683065306a375400226464a6660d460ce60d86ea80044c8c8c8c8c94ccc1ccc1d80084c8c94ccc1d4c1e00084c94ccc1c8c1b4c1d0dd500089919299983c183d801099191919191919191919191929998400099832a490f4261642074782076616c69646974790033032305c30830137540d86606266e0408cdd6981b9841809baa07f337000466eb4c0dcc20c04dd503f8a9998400099832a4811942616420696e707574206265696e672076616c696461746564003028306830830137540242a66610002660ca92010e4d697865642076657273696f6e73003375e60d06106026ea8068c1a0c20c04dd518341841809baa305f30830137540202a66610002660ca9211643522068617320746f20626520756e64657220524d5200333080013333030007375a60a66106026ea8084024c174c20c04dd5006a504a22a66610002660ca9211a43522068617320746f206265206174206c656173742031303025003333030007375a60a66106026ea8084024c19ccc21404dd401ca5eb8054ccc20004cc19524010d4d696e742069732077726f6e67003375e6e98028dd31998301bae305f30830137540fe6eb8c17cc20c04dd5010982c0028a9998400099832a4811242616420726564656d7074696f6e20616d7400533308001304b00513371200a00c294054ccc20004cc1952410e42616420434450206f7574707574003333304d01c304f330850101a4bd70181399842809833998428098339984280983399842809ba90184bd701984280982f9841809baa021330850137500066610a0260ce6610a026ea008ccc21404dd419b80375a60d06106026ea802ccc0b808c02d2f5c097ae04bd7025eb80cc130c178c1a0c20c04dd503f800a6103d87980001533308001330654911357726f6e672070616964207472656173757279003333304a375860a66106026ea81b007cdd598249841809baa06c375c60906106026ea81fcdd6982f9841809baa00815333080013306549011457726f6e67207061696420636f6c6c6563746f72003333304701c01f375660926106026ea81b0dd718231841809baa07f3370066e00dd698341841809baa008330383022308301375401a004a6661000200826eb4c088c20c04dd503f8a40002a66610002660ca92011a636f6c6c61746572616c203c206d696e436f6c6c61746572616c00337126eb4c124c20c04dd503f800899832a481164e6f6e706f736974697665206d696e74656420616d7400304b00314a029405280a5014a029405280a5014a0294052819b803370200c0026606e60906104026ea8030004dd698331840809baa3303a30653308301375000697ae0007337026eb4c140c20004dd500f00119b880010023053333040005375c60b460fc6ea81e8dd7182d183f1baa01c33223020330363302130633308101375060a86eb4c190c1fcdd51981b183199840809ba830370034bd70002a5eb80cc0d8cc0e0004c18ccc20404dd4181b80125eb80c18ccc20404dd401aa5eb80c18ccc20404dd419b81375a60c860fe6ea8cc0d8004c18ccc20404dd401aa5eb80dd69832183f9baa4c109d8799f1a000f4240ff004bd701bad304d307d375403660ae60fa6ea801ccdc0981e9bab3058307c375460b060f86ea802cc0b8004c94ccc1e4c1100044cc0bcdd69830983e1baa3303500230603307e375000297ae000614c106d8799f0000ff003333303501b00c375a609660f66ea806403400cccc098c158c1e8dd500200a1829983d1baa06330593756604060f26ea8188cc0d4048c120c1e0dd500118360008b183c800983a9baa00116303230443074375460a060e86ea800458c1d8004ccc0c4030c108c1c8dd5037260103d879800016307400133302f00c3055307037540d898103d8798000375a60e460e60046eb4c1c4004c1b4dd50008b182318361baa00a375c60dc60d66ea800458c13cc1a8dd5004182718349baa30453069375460d860d26ea800458cc12c01013cdd6183518358011bac30690013069002375860ce00260c66ea81308c194c198c198c198c198c198c198c198c198c198c198004c190c184dd502e0a50375a60c660c06ea81484c94ccc178c14411c4c94ccc17c0144cc88c8c8c8c94ccc194c188c19cdd5000899192999833983218349baa00113232323232533307030730021323253330723075002132533306f306a3071375400226464a6660ea60f000426464646464a6660ec660b69210f4261642074782076616c696469747900330283052307937540c46604e66e04060dd69816983c9baa075337000306eb4c0b4c1e4dd503a8a99983b1982da4811942616420696e707574206265696e672076616c69646174656400301e305e307937540162a6660ec660b692010e4d697865642076657273696f6e73003375e02260bc60f26ea8c178c1e4dd5182a983c9baa009153330763305b4911543445020697320616c72656164792066726f7a656e00533307630733078375460bc60f26ea80585288a50153330763305b4901104261642069417373657420696e707574003371e6eb8c178c1e4dd50031bae30553079375402c2a6660ec660b69210a43616e2774206d696e74003375e6e98c164dd59810183c9baa0624c101a000153330763305b4911a434450207374696c6c206f766572636f6c6c61746572697a6564003330763333026002375a609260f26ea8058010c064c1e4dd50032504a22660b692010e42616420434450206f757470757400333330433758609260f26ea8188c114cc1ecc174cc1ec044cc1ed30103d87a80004bd7025eb80c074cc1ecc174cc1ecc174cc1ed300103d87a80003307b30553079375402c660f6609260f26ea8058cc1ecc114cc1ecc154c1e4dd50019983d9ba8337000026eb4c178c1e4dd5001a5eb812f5c097ae04bd701bab30553079375460aa60f26ea802d30103d879800014a029405280a5014a029405281980b198169828983c1baa005375a60ba60f06ea8cc0c4c170cc1e8c120c1e0dd500aa5eb8000ccc0b4c144c1e0dd500280099b813038375660a660ee6ea8c14cc1dcdd500498148009919299983a98200008998159980b0011bad305d307837546606200660b8660f46ea00052f5c000a298106d8799f0000ff003333303101600b375a608e60ee6ea8050030cc0d0044c11cc1dcdd500219299983a19b89375a60b860ee6ea800520001480004c060004cc060c168cc1e0dd41817181b9bab30523076375460a460ec6ea80212f5c06605e60b4660f06ea0c0b8c12cdd69823183b1baa0134bd70000998181828983a9baa00200f3069001163076001307237540022c605e608260e26ea8c134c1c4dd50008b1839800999817004981f98379baa06b4c103d879800016307100133302c0083052306d37540d298103d8798000375a60de60e00046eb4c1b8004c1a8dd50008b182198349baa006304d30683754609a60d06ea8c110c1a0dd5183598341baa001163304a00204e375860d260d40046eb0c1a0004c190dd502691299983099b88001002100110023065306237540ba2940dd6983218309baa053132533305f30510481533305f00513322325333062305f30643754002264646464a6660d460da6eb0c1a00084c8c8c8c8c8c8c94ccc1b4cc14924011a4174206c656173742031206f746865722043445020696e7075740033306d533307100814a22941282511533306d3305249012743445020696e70757473206d75737420757365204d65726765417578696c696172792072646d72003300e008232323375e00466e95200a3307505a4bd70182f8009981e182b18389baa0013756606e60e26ea816854ccc1b4cc14924012943445020696e70757473206d7573742062652066726f7a656e20776974682073616d65206173736574003300e00a232325333070306d3072375400426464a6660e4602860f0004266e3c0040485281bae307730780013073375460ec60e66ea800852818330009817982098389baa304d307137540022a6660da660a4921074e6f206d696e74003375e6e98c140dd5980b98381baa0594c101a00013305249010e42616420434450206f7574707574003333303a3758608060e06ea8164c0f0cc1c8c150cc1c802ccc1c930103d87a80004bd7025eb80c050cc1c8c150cc1c8c150cc1c9300103d87a800033072375201a660e46ea0010cc1c8c0f0cc1c8dd4001198391ba80014bd7025eb812f5c097ae00064c0103d87a800014a029405280a50375a60e460e60046eb4c1c4004c1c4008dd6983780098378011bab306d001323300100100422533306c00114bd70901a00081010000810100008101000009991191919191919192999838983718399baa001132325333077307a0021533307330703075375400226464646464646464a6660fe610402004264a6660f860ee60fc6ea80084c8c8c8c94ccc21004c21c040084cc21404dd31982b00b1bab305f308301375460be6106026ea8060cc21404dd419b800140083308501375066e0004800ccc21404dd419b800110014bd700b1bad308501001308501002375a61060200260fe6ea800858c1d401c58c20004004c20004008dd6983f000983f0011bae307c001307c002307a001307637540022c2c60f000260e86ea800458c0c4c10cc1ccdd5182798399baa008375a60ea60ec0046eb4c1d0004c1d0008dd6983900098390011bab3070001306e00133002002306f00116375860d0002646600200200444a6660d4002297bdb180101800001018000132323232533306a30123052306d3754008266ec0dd3998378020011ba70011337606e9c008dd3998378020009bac306c002375860d40026600600660dc00460d800266604a6eb0c12cc198dd5027982598331baa0624c0103d87a8000304a30653754609460ca6ea8c104c194dd5183418329baa00116330473758609260c86ea813412c88c8cc00400400c894ccc19c0045288992999832180218350010998018018008a50306a001375c60ca60cc60c46ea8c194c188dd502e8a501533305f30500481325333060006132325333062305f30643754002264a6660c6660909212b546865206d61696e206d65726765205554584f206973207573696e67204d65726765434450732072646d720032323375e004980103d87d80003054001330310043756605860cc6ea813c4cc1212401256d65726765205554584f20636f6d65732066726f6d207468652073616d65207363726970740033038003253330643375e00a609860ce6ea80044cdd7982618339baa304c30673754608660ce6ea80040085280a50304a30653754609460ca6ea8c104c194dd5183418329baa001163304700104b375860cc60c66ea8130528183298311baa05413253330603370e90060248a99983000309991191919192999833183198341baa0011323253330683063306a375400226464646464a6660e260e80042646464a6660e860ee004264646464a6660e8660b29211942616420696e707574206265696e672076616c69646174656400301c305c307737540102a6660e8660b292011357726f6e672070616964207472656173757279003333303e3758608e60ee6ea8180044dd5981e983b9baa060375c607860ee6ea81cc02c54ccc1d0cc1652411457726f6e67207061696420636f6c6c6563746f72003333303b0100113756607a60ee6ea8180dd7181d183b9baa07300a153330743305949116434450206e6565647320746f2062652066726f7a656e003016305c307737540262a6660e8660b292010e57726f6e6720535020746f6b656e0033037375660a660ee6ea8c14cc1dcdd50039828983b9baa073153330740021323253330763305b49010e42616420434450206f7574707574003333304301230453307b0104bd70180e9983d982e9983d982e9983d982f183c9baa0153307b30553079375402a660f66ea0cdc01bad30493079375402a00a660f6980106d87a9f0000ff004bd7025eb812f5c066084006609c00498103d8798000153330763305b49113426164205350206f75747075742076616c7565003375e60aa60f26ea801cdd31999823998210008011bae3055307937540ea6eb8c154c1e4dd500a80289982da491b4d757374206275726e20616c6c206941737365747320696e205350003375e6e98018dd318269980b000982e9983d982a983c9baa0753307b30553079375402a97ae014a02940dd5982a183c1baa30543078375401066e0ccdc1181c00098260019bad3047307737540262a6660e8660b2921374d757374206275726e20616c6c206d696e74656420694173736574732026206175746820746f6b656e7320696e2063647020696e707574003375e6e98010dd3199982298259980a000982e183b9baa073375c60a660ee6ea81ccdd71829983b9baa013304c375a608e60ee6ea804c4cc16524113426164205350206f75747075742076616c7565003375e60a660ee6ea8014dd31999822998201bab30533077375460a660ee6ea801cc0e0004dd71829983b9baa073375c60a660ee6ea804cc130dd69823983b9baa01314a029405280a5014a02940cc0fccc0fcdd59829183b1baa30523076375400e6096014609601266e20c128004dd69822983a9baa011333036001375c60a060e86ea81c0dd71828183a1baa01030533756603460e66ea817058c1d4004cc108028c100c0f4cc1ccc154cc1ccc0f4cc1ccc128c1c4dd5036a5eb80cc1cd30103d87a80004bd7025eb80c94ccc1c800454cc1bd2401144f6e6520535020696e70757420616c6c6f776564001615333072307500113074001153306f4901144f6e6520535020696e70757420616c6c6f77656400163303d00a303c330723049307037540d897ae016307200133302d0083053306e37540d4980103d87a8000375a60e060e20046eb4c1bc004c1acdd50008b182218351baa006304e30693754608a60d26ea8c1b0c1a4dd50008b198258010279bac306a306b306b002375860d200260ca6ea813888ccc108dd7182518329baa001375c608260ca6ea8004cc00c008004c198c18cdd502f0a50153330603370e90070248a999830182d98311baa05e132533306133046491125370656e642031207570677261646520746b00305c332232330010010032253330690011480004cdc0198010011836000998031bab304430683754608860d06ea8c1ac00400cdd6182498321baa04d3004306437540c026608c921354d757374206275726e207570677261646520746b2c206f7074696f6e616c6c79206d696e74206941737365742026206974732053500053330613375e6e98004dd3181c181f980218321baa06014a2266ebcdd30009ba63303733037303f303e306437540c0607e606860c86ea8180c0e0c0fcc010c190dd50300a5030433756601460c66ea81305280999919191119191919192999835183398361baa001132533306b3066306d37540022646464a6660e460ea0042646464a6660e260dc60e66ea80044cc158cc03ccc1d8dd49b984901084d697373696e6720003307637526e60038cc1d8dd49b984901172075706772616465206d696e74696e6720706f6c696379004bd70249003301e30103054009375c60ee60e86ea800454cc1c8cc03ccc1d8dd49b98491084d697373696e6720003307637526e60038cc1d8dd49b9849010d20757067726164652070617468004bd702490016325333071306c30733754002298103d87a8000130583307637526eb8c1d0c8cdd8183c000983c183c8009bac30773074375400297ae03233001001375660a060e86ea800c894ccc1d80045300103d87a80001323253330743371e6eb8c1d80080244c16ccc1e4dd39983c983b0011983c983b80125eb812f5c026600800800260f400460f0002a6660de60d860e26ea80044c8c8c8c94ccc1dcc1e80084c926323300100100222533307900114984c8cc00c00cc1f4008c8c8dd7183d0011bae3078001307b00116375660f000260f00046eb4c1d8004c1c8dd50008b1817982098389baa304d307137540022c60e600266605c00a01098103d8798000375c60e260dc6ea800458c148c1b4dd5182918369baa3049306d375460e060da6ea800458cc13cdd618378020299bab306e306f306f306f002375860da00260da00260d06ea814488dcc9919199800800802244100222533306c0021001132333004004307000353330693066371a00426e600044cdc500119b8a00537300026e64dd718370011b98001300100122533306600114bd7009983398321834000998010011834800a490343445000300a306337540be4466604c0046eb8c124c190dd50009bae3040306437540024a6660be60b860c26ea80045280a512306430653065306530653065001232533305e3371060320026eb4c118c184dd5001099b80001480084004cdc19bad304530603754002904044bd111822198311ba8337006eb4c114c180dd50011bad30453060375400297ae03057305c37540b06e952004375e08444600660b86ea8c0e0c170dd51919299982f983100109919001299982e182c982f1baa0011323232323232323232323232533306c306f0021324994ccc1a0c194c1a8dd50048991919191919191919191919191919191919191929998400098418080109924c60ea0162c6eb4c20404004c20404008dd6983f800983f8011bad307d001307d002375a60f600260f60046eb4c1e4004c1e4008c1dc004c1dc008dd6983a800983a8011bad30730013073002375a60e200260e20046eb4c1bc004c1acdd50048b0b1bad306d001306d002375a60d600260d60046eb4c1a4004c1a4008dd698338009833801183280098328011bad3063001305f37540022c6038605c60bc6ea8c0e8c178dd50008b183000099980d801000a60103d87980002305d305e305e305e305e00122330043758600660b46ea80080048c16cc170c170c170c170c170c170c170c17000488c8cc00400400c894ccc16c004528099299982c19b8f375c60bc00400829444cc00c00c004c178004894ccc150cdc41bad302730573754002004266e0ccdc199b823370466e04008dd69813982b9baa001375a607860ae6ea8c0ccc15cdd5000a41010141ede959b7c03690405844fdf500a410112f42a660aa921254d75737420686f6c643a206e6f77203e206c61737420696e7465726573742075706461746500162225333054305130563754006260b460ae6ea800c4c94ccc154c94ccc158c144c160dd5000899b89375a606a60b26ea8008dd6982e182c9baa0011533057490124496e636f7272656374207472616e73616374696f6e2076616c69646974792072616e67650016303d30583754606860b06ea800854cc1592401174f7261636c652063616e2774206265206578706972656400161303d305837540026602600460b460ae6ea800c8888cdc49bad303c3057375466020660200026076660b26ea0c03c00d2f5c00046eb4c0f0c15cdd519808181d9982c9ba8300f0044bd70181d9982c9ba800d4bd7011181c1982b181c1982b18101982b1ba80024bd701982b199828a514c103d87a80004c0103d87980004bd701982b181c1982b18101982b1ba80014bd701982b199828a514c0103d87a80004c0103d87980004bd7025eb8088c8c94ccc148c94ccc14cc11c0045288a99982998270008a5114a060a86ea8cc014c0e8c154dd5001181d182a9baa0011325333053305000114a22a6660a6609c0022944528182a1baa33005303130553754004606260aa6ea8004528180280118020011119299982818268008a999828182698291baa00214c103d87a800014c103d879800015333050304400115333050304430523754004298103d87a800014c103d87b8000132325333052304d001132533305333710006002298103d879800015333053337100020062980103d87b800014c103d87a8000375a60b060aa6ea801054ccc148c13c004530103d87b800014c103d8798000305337540066eb4c158c14cdd500198289baa002230343305232533304e304930503754002264a66609e64a6660a860a60022a6660a0609660a4002294454ccc140c134c1480045280b0b1baa302e30523754606e60a46ea800c4c078cc150dd4000a5eb804c078cc150dd419b80001480092f5c06eb4c150c144dd50008800981a98281baa303530503754002660a464a66609c609260a06ea80044c94ccc13cc94ccc150c14c00454ccc140c12cc1480045288a999828182698290008a5016163754605c60a46ea8c0b8c148dd50018980f1982a1ba80014bd700980f1982a1ba8337000029000a5eb80dd6982a18289baa0011001303530503754605860a06ea80052f5c0466e00dd6981a18279baa001375a6056609e6ea800488c8c0d0cc148dd4000998291ba83370200600297ae0330043003304f3754002004460a060a260a260a260a260a260a260a260a260a260a260a200244a66609466e2400520001480004dd6981918269baa330043300630313304f375000297ae000230313304f375000697ae03002483200488c0bccc134dd419b833003375a606060966ea8008dd6981818259baa0014bd701b824820225e888c0b4cc12cdd419b83337046eb4c0b8c124dd50011bad302e30493754002904044bd25eb80888894ccc120cdc48021bad3030304b37540022a66609066e20dd6980d98259baa00100513370066e0ccdc119b81375a606060966ea800401000d208080a0f6f4acdbe01b3370666e0ccdc119b823370200a6eb4c06cc12cdd50009bad3030304b3754604e60966ea800400d2080b089fbea014820225e854cc1252401254d75737420686f6c643a206e6f77203e206c61737420696e746572657374207570646174650016153330483371000400a266e0ccdc199b823370466e04014008dd6981818259baa3027304b375400200690405844fdf500a410112f42a66092921264d75737420686f6c643a206e6f77203e20696e746572657374206c61737420736574746c6564001622533304430413046375400426094608e6ea80084c0b0c11cdd519801800982518239baa0022232320025333044304130463754002264646464a666098609e0042649318208018b1bad304d001304d002304b001304737540022c6008602c608c6ea8c088c118dd51929998240008a99822a492145787065637465642065786163746c79206f6e65206f7261636c6520696e707574001615333048304b0011304a001153304549012145787065637465642065786163746c79206f6e65206f7261636c6520696e7075740016333005002304930463754002980103d879800022323200253330433040304537540022646464646464a66609a60a00042649318210018b1bad304e001304e002304c001304c002375a6094002608c6ea800458c00cc054c114dd5181098229baa325333047001153304449012a45787065637465642065786163746c79206f6e6520696e746572657374206f7261636c6520696e707574001615333047304a00113049001153304449012a45787065637465642065786163746c79206f6e6520696e746572657374206f7261636c6520696e70757400163330040020014c0103d8798000253330403034304237540022608c60866ea800454cc1052401134e6f7420616e20696e6c696e6520646174756d0016222323301600423002302230463754002a666082607c60866ea800448cc014dd5981098229baa00100312300d33300737566042608a6ea8004dd7181518229baa003375c6042608a6ea800c88c0e8ccc010008dd7181398211baa001375c603c60846ea80048ccc0080052210048810022232533303f303a304137540022900009bad30453042375400264a66607e607460826ea8004530103d87a8000132330010013756608c60866ea8008894ccc114004530103d87a8000132323253330443371e00e6eb8c11800c4c0accc124dd4000a5eb804cc014014008dd698230011824801182380099198008008021129998220008a6103d87a8000132323253330433371e00e6eb8c11400c4c0a8cc120dd3000a5eb804cc014014008dd5982280118240011823000918209821182118211821182118210009111119299981f9805001099299982019191811801192999821181f8008a99982318229baa00214985854ccc108c0f400454ccc118c114dd50010a4c2c2a666084606c0022a66608c608a6ea80085261616304337540026601c605060866ea80040144ccccc03401cc03ccc114c09ccc114008cc115300103d87a80004bd7025eb8130107d87b9fd87980ff003300c3756603e60866ea8c07cc10cdd5000801a60103d879800014a064a6660880022a66082921284d757374207370656e64203120696e7075742066726f6d20636f6c6c6563746f722073637269707400161533304430470011304600115330414901284d757374207370656e64203120696e7075742066726f6d20636f6c6c6563746f722073637269707400163300f00500114a2601a660866ea40092f5c04607e6080608060806080608060806080608060806080608060800024607c607e607e607e607e607e607e607e607e607e0024444464a666078600e004264a66607a646466ebc00930103d87d800032533303f303c00115333043304237540042930b0a99981f981d0008a99982198211baa00214985854ccc0fcc0cc00454ccc10cc108dd50010a4c2c2a66607e60640022a66608660846ea8008526161533303f303100115333043304237540042930b0a99981f98180008a99982198211baa00214985858c100dd500099805981298201baa00100513333300a007302433042302530403754604a60806ea8c070c100dd5000a5eb8130107d87b9fd87980ff00330093756603860806ea8c070c100dd5000801a60103d879800014a064a6660820022a6607c921274d757374207370656e64203120696e7075742066726f6d20747265617375727920736372697074001615333041304400113043001153303e4901274d757374207370656e64203120696e7075742066726f6d2074726561737572792073637269707400163300c00500114a26014660806ea40092f5c06e212000223333007002488100488100001222223300d3300c005300a004253330393375e601860786ea80040104c94ccc0f80045288a99981f18208008991919299981e98109bae30430031533303d30210011533303d303a303f375400c2a66607a66e25200000213371200490404df7010a5013371290000010a5014a06eb8c108c10c008dd69820982118210009bac304000114a06466002002660206eacc064c0f4dd5001180880211299981f8008a5eb804c8ccc888c8cc00400400c894ccc114004400c4c8cc11cdd3998239ba90063304737526eb8c110004cc11cdd41bad30450014bd7019801801982480118238009bae303e0013756607e0026600600660860046082002294088c94ccc0d4c0c8c0dcdd50008981d981c1baa001153303649117436f756c64206e6f742066696e642072656465656d6572001632323300100100322533303b00114c0103d87a80001323232533303a3375e00c6078006260426607e00297ae0133005005002303c002303f002303d0013003330390024bd701ba54800888cc0180088cdd7980d981b1baa301b303637546024606c6ea800400888894ccc0ccc0c000440104ccccc03401000cc8c8008c8cc004004008894ccc0e8004526132533303b00114984c8c94ccc0e4c0d8c0ecdd51980d9bae303b303f004375c607600426600a00a6607c0040022a66074921326b65797320696e206173736f63696174697665206c697374206172656e277420696e20617363656e64696e67206f726465720016303f002303d001303d00133038337606ea4008dd4000a5eb7bdb180888c94ccc0dcc040004530103d87a80001301e3303c374c00297ae03333301100100500422232533303a303700114c103d87a8000130213303f375000297ae03370000200403002a4a66605e605860626ea80044c88cdd7980c981a1baa301930343754002004606a60646ea80044c88cdd7980c981a1baa00100230353032375400246068606a606a00244646600200200644a666068002297ae01323253330323005002133037002330040040011330040040013038002303600122323300100100322533303300114a0264a6660606008606c00429444cc00c00c004c0d800488c8ccc00400400c0088894ccc0cc00840044c8ccc010010c0dc00cccccc028008dd718190009bab3033001222325333034300d00114c0103d87a80001301b33039374c00297ae032333001001003002222533303a0021001132333004004303e00333333012002375c60720026eb4c0e8004888c94ccc0ecc0e00045300103d87a80001302233040375000297ae0337000040020326078004024606a0044646600200200444a666060002297adef6c6013233032337606ea4dd718178009ba632330010013756606200444a666066002297adef6c6013233035337606ea4dd718190009ba83008375a606600266006006606e004606a00266006006606800460640026e0520002533302c00114a2294088888c8cc004004018894ccc0c40044cc0c8cdd81ba9006374c00a97adef6c60132323232533303130123300700a002133036337606ea4028dd30048028a99981899b8f00a0021325333032302f3034375400226606e66ec0dd4805981c181a9baa001004100433300800a009001133036337606ea4008dd3000998030030019bab3033003375c6062004606a004606600244444646600200200c44a66606000226606266ec0dd48031ba80054bd6f7b630099191919299981818089980380500109981a99bb037520146ea002401454ccc0c0cdc78050010992999818981718199baa001133036337606ea402cc0dcc0d0dd5000802080219980400500480089981a99bb037520046ea0004cc01801800cdd698190019bae3030002303400230320012302b302c302c302c302c302c302c302c0012302a302b302b302b0012333003375c6016604c6ea8004dd7180118131baa001480088c0a0c0a40048894ccc08cc08000452f5bded8c0264646600200297adef6c6022533302a00113302b337606ea4018dd3001a5eb7bdb1804c8c8c8c94ccc0a8c02ccc0300280084cc0bccdd81ba900a374c00e00a2a66605466e3c0280084cc0bccdd81ba900a374c00e00626605e66ec0dd48011ba600133006006003375660580066eb8c0a8008c0b8008c0b0004c8cc0040052f5bded8c044a66605200226605466ec0dd48021ba80034bd6f7b630099191919299981498051980580400109981719bb037520106ea001c01454ccc0a4cdc780400109981719bb037520106ea001c00c4cc0b8cdd81ba900237500026600c00c0066eb4c0ac00cdd71814801181680118158009baf4c103d879800022533302033720004002298103d8798000153330203371e0040022980103d87a800014c103d87b80002323300100100222533302400114bd6f7b63009919191929998121804001080189981499bb037520046e98004cc01801800cdd598130019bae302400230280023026001371e9110022533301d33301d0014a094454cc0780084004400488c8cc00400400c894ccc0880045300103d87a80001323253330203375e601060466ea80080144c01ccc0940092f5c0266008008002604c00460480026e9520002301f00130193754018603860326ea800458c06cc070008c068004c058dd50008a4c26cac600200c464a666024601e0022646464646464a666038603e0042930b1bad301d001301d002375a603600260360046eb4c064004c054dd50010a999809180680089919299980c180d8010a4c2c6eb4c064004c054dd50010a999809180300089919299980c180d8010a4c2c6eb4c064004c054dd50010a999809180280089919299980c180d8010a4c2c6eb4c064004c054dd50010a99980918020008a99980b180a9baa00214985854ccc048c00c0044c8c94ccc060c06c0084c9265333014301130163754002264646464a666038603e00426493299980c180a980d1baa00313232533301e3021002149858dd7180f800980d9baa0031616375a603a002603a0046036002602e6ea80045858c064004c054dd50010a99980919b874803000454ccc058c054dd50010a4c2c2a66602466e1d200e00115333016301537540042930b0a99980919b874804000454ccc058c054dd50010a4c2c2c60266ea8004dc3a40146e1d2008370e90031b8748010c0040208c94ccc02cc0200044c8c94ccc044c0500084c926533300d300a300f375400226464646464646464a6660326038004264649319299980b980a000899191919299980f98110010a4c2c6eb4c080004c080008dd6980f000980d1baa003153330173012001132323232533301f3022002149858dd6981000098100011bad301e001301a37540062c60306ea8008c03c01c58c068004c068008dd6980c000980c0011bae301600130160023014001301037540022c2c6024002601c6ea800854ccc02cc0180044c8c94ccc044c0500084c9263005001163012001300e37540042c60186ea800494ccc024c018c02cdd500089919191919191919191919191919191919191919191919191919191929998149816001099191919191919191919191924c6054018605001e604e020604c022604a02460480266046028604402a604202c604002e604403064a66604c604600226464a666058605e0042649318108008b181680098149baa01a15333026302100113232533302c302f0021324994ccc0a0c094c0a8dd5000899192999817181880109924c604c0022c605e00260566ea80045858c0b4004c0a4dd500d0b18139baa01916302a001302a002325333027302600115333023301e302500114a22a6660466040604a00229405858dd51814000981400118130009813001181200098120011811000981100118100009810001180f000980f001180e000980e001180d000980d001180c000980c001180b000980b001180a000980a001180900098090011bae3010001300c37540022c4a666010600a60146ea80044c8c94ccc038c04400852616375a601e00260166ea8004588c94ccc020c0140044c8c94ccc038c04400852616375c601e00260166ea800854ccc020c00c00454ccc030c02cdd50010a4c2c2c60126ea8004dc3a40044a66600a6004600e6ea80044c8c8c8c94ccc034c04000852616375c601c002601c0046eb8c030004c020dd50008b1b87480015cd2b9c5573aaae7955cfaba05742ae89',
|
|
9
|
-
};
|