@bitgo-beta/sdk-coin-vet 1.0.1-beta.55 → 1.0.1-beta.551
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -1
- package/dist/src/lib/constants.d.ts +26 -0
- package/dist/src/lib/constants.d.ts.map +1 -1
- package/dist/src/lib/constants.js +28 -2
- package/dist/src/lib/iface.d.ts +27 -2
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +1 -1
- package/dist/src/lib/index.d.ts +19 -0
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +40 -2
- package/dist/src/lib/transaction/addressInitializationTransaction.d.ts +31 -0
- package/dist/src/lib/transaction/addressInitializationTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/addressInitializationTransaction.js +170 -0
- package/dist/src/lib/transaction/burnNftTransaction.d.ts +29 -0
- package/dist/src/lib/transaction/burnNftTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/burnNftTransaction.js +138 -0
- package/dist/src/lib/transaction/claimRewards.d.ts +31 -0
- package/dist/src/lib/transaction/claimRewards.d.ts.map +1 -0
- package/dist/src/lib/transaction/claimRewards.js +151 -0
- package/dist/src/lib/transaction/delegateClauseTransaction.d.ts +27 -0
- package/dist/src/lib/transaction/delegateClauseTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/delegateClauseTransaction.js +158 -0
- package/dist/src/lib/transaction/exitDelegation.d.ts +29 -0
- package/dist/src/lib/transaction/exitDelegation.d.ts.map +1 -0
- package/dist/src/lib/transaction/exitDelegation.js +143 -0
- package/dist/src/lib/transaction/flushTokenTransaction.d.ts +20 -0
- package/dist/src/lib/transaction/flushTokenTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/flushTokenTransaction.js +98 -0
- package/dist/src/lib/transaction/nftTransaction.d.ts +17 -0
- package/dist/src/lib/transaction/nftTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/nftTransaction.js +108 -0
- package/dist/src/lib/transaction/stakeClauseTransaction.d.ts +27 -0
- package/dist/src/lib/transaction/stakeClauseTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/stakeClauseTransaction.js +158 -0
- package/dist/src/lib/transaction/stakingTransaction.d.ts +31 -0
- package/dist/src/lib/transaction/stakingTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/stakingTransaction.js +169 -0
- package/dist/src/lib/transaction/tokenTransaction.d.ts +14 -0
- package/dist/src/lib/transaction/tokenTransaction.d.ts.map +1 -0
- package/dist/src/lib/transaction/tokenTransaction.js +95 -0
- package/dist/src/lib/transaction/transaction.d.ts +18 -28
- package/dist/src/lib/transaction/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction/transaction.js +98 -58
- package/dist/src/lib/transactionBuilder/addressInitializationBuilder.d.ts +78 -0
- package/dist/src/lib/transactionBuilder/addressInitializationBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/addressInitializationBuilder.js +158 -0
- package/dist/src/lib/transactionBuilder/burnNftBuilder.d.ts +59 -0
- package/dist/src/lib/transactionBuilder/burnNftBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/burnNftBuilder.js +118 -0
- package/dist/src/lib/transactionBuilder/claimRewardsBuilder.d.ts +59 -0
- package/dist/src/lib/transactionBuilder/claimRewardsBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/claimRewardsBuilder.js +117 -0
- package/dist/src/lib/transactionBuilder/delegateTxnBuilder.d.ts +72 -0
- package/dist/src/lib/transactionBuilder/delegateTxnBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/delegateTxnBuilder.js +133 -0
- package/dist/src/lib/transactionBuilder/exitDelegationBuilder.d.ts +59 -0
- package/dist/src/lib/transactionBuilder/exitDelegationBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/exitDelegationBuilder.js +118 -0
- package/dist/src/lib/transactionBuilder/flushTokenTransactionBuilder.d.ts +66 -0
- package/dist/src/lib/transactionBuilder/flushTokenTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/flushTokenTransactionBuilder.js +129 -0
- package/dist/src/lib/transactionBuilder/nftTransactionBuilder.d.ts +23 -0
- package/dist/src/lib/transactionBuilder/nftTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/nftTransactionBuilder.js +93 -0
- package/dist/src/lib/transactionBuilder/stakeClauseTxnBuilder.d.ts +73 -0
- package/dist/src/lib/transactionBuilder/stakeClauseTxnBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/stakeClauseTxnBuilder.js +146 -0
- package/dist/src/lib/transactionBuilder/stakingBuilder.d.ts +73 -0
- package/dist/src/lib/transactionBuilder/stakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/stakingBuilder.js +147 -0
- package/dist/src/lib/transactionBuilder/tokenTransactionBuilder.d.ts +21 -0
- package/dist/src/lib/transactionBuilder/tokenTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/transactionBuilder/tokenTransactionBuilder.js +70 -0
- package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts +10 -9
- package/dist/src/lib/transactionBuilder/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder/transactionBuilder.js +25 -19
- package/dist/src/lib/transactionBuilderFactory.d.ts +52 -0
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +115 -1
- package/dist/src/lib/types.d.ts +21 -0
- package/dist/src/lib/types.d.ts.map +1 -1
- package/dist/src/lib/types.js +1 -1
- package/dist/src/lib/utils.d.ts +98 -1
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +262 -8
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/src/vet.d.ts +80 -2
- package/dist/src/vet.d.ts.map +1 -1
- package/dist/src/vet.js +478 -8
- package/dist/src/vetNFTCollection.d.ts +18 -0
- package/dist/src/vetNFTCollection.d.ts.map +1 -0
- package/dist/src/vetNFTCollection.js +52 -0
- package/dist/src/vetToken.d.ts +1 -1
- package/dist/src/vetToken.d.ts.map +1 -1
- package/dist/src/vetToken.js +2 -2
- package/dist/test/resources/vet.d.ts +73 -0
- package/dist/test/resources/vet.d.ts.map +1 -0
- package/dist/test/resources/vet.js +128 -0
- package/dist/test/transactionBuilder/addressInitializationBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/addressInitializationBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/addressInitializationBuilder.js +141 -0
- package/dist/test/transactionBuilder/burnNftBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/burnNftBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/burnNftBuilder.js +150 -0
- package/dist/test/transactionBuilder/claimRewardsBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/claimRewardsBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/claimRewardsBuilder.js +175 -0
- package/dist/test/transactionBuilder/delegateClauseTxnBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/delegateClauseTxnBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/delegateClauseTxnBuilder.js +184 -0
- package/dist/test/transactionBuilder/exitDelegationBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/exitDelegationBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/exitDelegationBuilder.js +150 -0
- package/dist/test/transactionBuilder/flushTokenTransactionBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/flushTokenTransactionBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/flushTokenTransactionBuilder.js +132 -0
- package/dist/test/transactionBuilder/nftTransactionBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/nftTransactionBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/nftTransactionBuilder.js +242 -0
- package/dist/test/transactionBuilder/stakeClauseTransactionBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/stakeClauseTransactionBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/stakeClauseTransactionBuilder.js +247 -0
- package/dist/test/transactionBuilder/stakingTransaction.d.ts +2 -0
- package/dist/test/transactionBuilder/stakingTransaction.d.ts.map +1 -0
- package/dist/test/transactionBuilder/stakingTransaction.js +250 -0
- package/dist/test/transactionBuilder/tokenTransactionBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/tokenTransactionBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/tokenTransactionBuilder.js +249 -0
- package/dist/test/transactionBuilder/transferBuilder.d.ts +2 -0
- package/dist/test/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/test/transactionBuilder/transferBuilder.js +244 -0
- package/dist/test/unit/keyPair.d.ts +2 -0
- package/dist/test/unit/keyPair.d.ts.map +1 -0
- package/dist/test/unit/keyPair.js +181 -0
- package/dist/test/unit/stakingFlowE2E.d.ts +2 -0
- package/dist/test/unit/stakingFlowE2E.d.ts.map +1 -0
- package/dist/test/unit/stakingFlowE2E.js +222 -0
- package/dist/test/unit/utils.d.ts +2 -0
- package/dist/test/unit/utils.d.ts.map +1 -0
- package/dist/test/unit/utils.js +106 -0
- package/dist/test/unit/vet.d.ts +2 -0
- package/dist/test/unit/vet.d.ts.map +1 -0
- package/dist/test/unit/vet.js +251 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +16 -10
- package/.eslintignore +0 -5
- package/.mocharc.yml +0 -8
- package/CHANGELOG.md +0 -34
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Vet } from './vet';
|
|
2
|
+
import { VetNFTCollectionConfig } from '@bitgo-beta/statics';
|
|
3
|
+
import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo-beta/sdk-core';
|
|
4
|
+
export declare class VetNFTCollection extends Vet {
|
|
5
|
+
readonly nftCollectionConfig: VetNFTCollectionConfig;
|
|
6
|
+
constructor(bitgo: BitGoBase, nftCollectionConfig: VetNFTCollectionConfig);
|
|
7
|
+
static createNFTCollectionConstructor(config: VetNFTCollectionConfig): CoinConstructor;
|
|
8
|
+
static createNFTCollectionConstructors(nftCollectionConfigs?: VetNFTCollectionConfig[]): NamedCoinConstructor[];
|
|
9
|
+
get name(): string;
|
|
10
|
+
get coin(): string;
|
|
11
|
+
get network(): string;
|
|
12
|
+
get nftCollectionId(): string;
|
|
13
|
+
getChain(): string;
|
|
14
|
+
getBaseChain(): string;
|
|
15
|
+
getFullName(): string;
|
|
16
|
+
getBaseFactor(): number;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=vetNFTCollection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vetNFTCollection.d.ts","sourceRoot":"","sources":["../../src/vetNFTCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAiB,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAExF,qBAAa,gBAAiB,SAAQ,GAAG;IACvC,SAAgB,mBAAmB,EAAE,sBAAsB,CAAC;gBAEhD,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,sBAAsB;IAMzE,MAAM,CAAC,8BAA8B,CAAC,MAAM,EAAE,sBAAsB,GAAG,eAAe;IAGtF,MAAM,CAAC,+BAA+B,CACpC,oBAAoB,GAAE,sBAAsB,EAG3C,GACA,oBAAoB,EAAE;IASzB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;CAGxB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.VetNFTCollection = void 0;
|
|
4
|
+
const vet_1 = require("./vet");
|
|
5
|
+
const statics_1 = require("@bitgo-beta/statics");
|
|
6
|
+
class VetNFTCollection extends vet_1.Vet {
|
|
7
|
+
constructor(bitgo, nftCollectionConfig) {
|
|
8
|
+
const staticsCoin = nftCollectionConfig.network === 'Mainnet' ? statics_1.coins.get('vet') : statics_1.coins.get('tvet');
|
|
9
|
+
super(bitgo, staticsCoin);
|
|
10
|
+
this.nftCollectionConfig = nftCollectionConfig;
|
|
11
|
+
}
|
|
12
|
+
static createNFTCollectionConstructor(config) {
|
|
13
|
+
return (bitgo) => new VetNFTCollection(bitgo, config);
|
|
14
|
+
}
|
|
15
|
+
static createNFTCollectionConstructors(nftCollectionConfigs = [
|
|
16
|
+
...statics_1.tokens.bitcoin.vet.nftCollections,
|
|
17
|
+
...statics_1.tokens.testnet.vet.nftCollections,
|
|
18
|
+
]) {
|
|
19
|
+
const nftCollectionCtors = [];
|
|
20
|
+
for (const config of nftCollectionConfigs) {
|
|
21
|
+
const nftCollectionConstructor = VetNFTCollection.createNFTCollectionConstructor(config);
|
|
22
|
+
nftCollectionCtors.push({ name: config.type, coinConstructor: nftCollectionConstructor });
|
|
23
|
+
}
|
|
24
|
+
return nftCollectionCtors;
|
|
25
|
+
}
|
|
26
|
+
get name() {
|
|
27
|
+
return this.nftCollectionConfig.name;
|
|
28
|
+
}
|
|
29
|
+
get coin() {
|
|
30
|
+
return this.nftCollectionConfig.coin;
|
|
31
|
+
}
|
|
32
|
+
get network() {
|
|
33
|
+
return this.nftCollectionConfig.network;
|
|
34
|
+
}
|
|
35
|
+
get nftCollectionId() {
|
|
36
|
+
return this.nftCollectionConfig.nftCollectionId;
|
|
37
|
+
}
|
|
38
|
+
getChain() {
|
|
39
|
+
return this.nftCollectionConfig.type;
|
|
40
|
+
}
|
|
41
|
+
getBaseChain() {
|
|
42
|
+
return this.coin;
|
|
43
|
+
}
|
|
44
|
+
getFullName() {
|
|
45
|
+
return 'Vet NFT Collection';
|
|
46
|
+
}
|
|
47
|
+
getBaseFactor() {
|
|
48
|
+
return Math.pow(10, this.nftCollectionConfig.decimalPlaces);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.VetNFTCollection = VetNFTCollection;
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmV0TkZUQ29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXRORlRDb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUE0QjtBQUM1QixpREFBNEU7QUFHNUUsTUFBYSxnQkFBaUIsU0FBUSxTQUFHO0lBR3ZDLFlBQVksS0FBZ0IsRUFBRSxtQkFBMkM7UUFDdkUsTUFBTSxXQUFXLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRyxLQUFLLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxtQkFBbUIsQ0FBQztJQUNqRCxDQUFDO0lBRUQsTUFBTSxDQUFDLDhCQUE4QixDQUFDLE1BQThCO1FBQ2xFLE9BQU8sQ0FBQyxLQUFnQixFQUFFLEVBQUUsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBQ0QsTUFBTSxDQUFDLCtCQUErQixDQUNwQyx1QkFBaUQ7UUFDL0MsR0FBRyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYztRQUNwQyxHQUFHLGdCQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjO0tBQ3JDO1FBRUQsTUFBTSxrQkFBa0IsR0FBMkIsRUFBRSxDQUFDO1FBQ3RELEtBQUssTUFBTSxNQUFNLElBQUksb0JBQW9CLEVBQUUsQ0FBQztZQUMxQyxNQUFNLHdCQUF3QixHQUFHLGdCQUFnQixDQUFDLDhCQUE4QixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pGLGtCQUFrQixDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRSx3QkFBd0IsRUFBRSxDQUFDLENBQUM7UUFDNUYsQ0FBQztRQUNELE9BQU8sa0JBQWtCLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDVCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUM7SUFDbEQsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUM7SUFDdkMsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLG9CQUFvQixDQUFDO0lBQzlCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDOUQsQ0FBQztDQUNGO0FBekRELDRDQXlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZldCB9IGZyb20gJy4vdmV0JztcbmltcG9ydCB7IGNvaW5zLCB0b2tlbnMsIFZldE5GVENvbGxlY3Rpb25Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJpdEdvQmFzZSwgQ29pbkNvbnN0cnVjdG9yLCBOYW1lZENvaW5Db25zdHJ1Y3RvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuZXhwb3J0IGNsYXNzIFZldE5GVENvbGxlY3Rpb24gZXh0ZW5kcyBWZXQge1xuICBwdWJsaWMgcmVhZG9ubHkgbmZ0Q29sbGVjdGlvbkNvbmZpZzogVmV0TkZUQ29sbGVjdGlvbkNvbmZpZztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBuZnRDb2xsZWN0aW9uQ29uZmlnOiBWZXRORlRDb2xsZWN0aW9uQ29uZmlnKSB7XG4gICAgY29uc3Qgc3RhdGljc0NvaW4gPSBuZnRDb2xsZWN0aW9uQ29uZmlnLm5ldHdvcmsgPT09ICdNYWlubmV0JyA/IGNvaW5zLmdldCgndmV0JykgOiBjb2lucy5nZXQoJ3R2ZXQnKTtcbiAgICBzdXBlcihiaXRnbywgc3RhdGljc0NvaW4pO1xuICAgIHRoaXMubmZ0Q29sbGVjdGlvbkNvbmZpZyA9IG5mdENvbGxlY3Rpb25Db25maWc7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlTkZUQ29sbGVjdGlvbkNvbnN0cnVjdG9yKGNvbmZpZzogVmV0TkZUQ29sbGVjdGlvbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgVmV0TkZUQ29sbGVjdGlvbihiaXRnbywgY29uZmlnKTtcbiAgfVxuICBzdGF0aWMgY3JlYXRlTkZUQ29sbGVjdGlvbkNvbnN0cnVjdG9ycyhcbiAgICBuZnRDb2xsZWN0aW9uQ29uZmlnczogVmV0TkZUQ29sbGVjdGlvbkNvbmZpZ1tdID0gW1xuICAgICAgLi4udG9rZW5zLmJpdGNvaW4udmV0Lm5mdENvbGxlY3Rpb25zLFxuICAgICAgLi4udG9rZW5zLnRlc3RuZXQudmV0Lm5mdENvbGxlY3Rpb25zLFxuICAgIF1cbiAgKTogTmFtZWRDb2luQ29uc3RydWN0b3JbXSB7XG4gICAgY29uc3QgbmZ0Q29sbGVjdGlvbkN0b3JzOiBOYW1lZENvaW5Db25zdHJ1Y3RvcltdID0gW107XG4gICAgZm9yIChjb25zdCBjb25maWcgb2YgbmZ0Q29sbGVjdGlvbkNvbmZpZ3MpIHtcbiAgICAgIGNvbnN0IG5mdENvbGxlY3Rpb25Db25zdHJ1Y3RvciA9IFZldE5GVENvbGxlY3Rpb24uY3JlYXRlTkZUQ29sbGVjdGlvbkNvbnN0cnVjdG9yKGNvbmZpZyk7XG4gICAgICBuZnRDb2xsZWN0aW9uQ3RvcnMucHVzaCh7IG5hbWU6IGNvbmZpZy50eXBlLCBjb2luQ29uc3RydWN0b3I6IG5mdENvbGxlY3Rpb25Db25zdHJ1Y3RvciB9KTtcbiAgICB9XG4gICAgcmV0dXJuIG5mdENvbGxlY3Rpb25DdG9ycztcbiAgfVxuXG4gIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmZ0Q29sbGVjdGlvbkNvbmZpZy5uYW1lO1xuICB9XG5cbiAgZ2V0IGNvaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uZnRDb2xsZWN0aW9uQ29uZmlnLmNvaW47XG4gIH1cblxuICBnZXQgbmV0d29yaygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5mdENvbGxlY3Rpb25Db25maWcubmV0d29yaztcbiAgfVxuXG4gIGdldCBuZnRDb2xsZWN0aW9uSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5uZnRDb2xsZWN0aW9uQ29uZmlnLm5mdENvbGxlY3Rpb25JZDtcbiAgfVxuXG4gIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmZ0Q29sbGVjdGlvbkNvbmZpZy50eXBlO1xuICB9XG5cbiAgZ2V0QmFzZUNoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29pbjtcbiAgfVxuXG4gIGdldEZ1bGxOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdWZXQgTkZUIENvbGxlY3Rpb24nO1xuICB9XG5cbiAgZ2V0QmFzZUZhY3RvcigpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLnBvdygxMCwgdGhpcy5uZnRDb2xsZWN0aW9uQ29uZmlnLmRlY2ltYWxQbGFjZXMpO1xuICB9XG59XG4iXX0=
|
package/dist/src/vetToken.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Vet } from './vet';
|
|
2
1
|
import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo-beta/sdk-core';
|
|
3
2
|
import { VetTokenConfig } from '@bitgo-beta/statics';
|
|
3
|
+
import { Vet } from './vet';
|
|
4
4
|
export declare class VetToken extends Vet {
|
|
5
5
|
readonly tokenConfig: VetTokenConfig;
|
|
6
6
|
constructor(bitgo: BitGoBase, tokenConfig: VetTokenConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vetToken.d.ts","sourceRoot":"","sources":["../../src/vetToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vetToken.d.ts","sourceRoot":"","sources":["../../src/vetToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,cAAc,EAAiB,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,qBAAa,QAAS,SAAQ,GAAG;IAC/B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc;IAMzD,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe;IAItE,MAAM,CAAC,uBAAuB,IAAI,oBAAoB,EAAE;IASxD,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;CAGxB"}
|
package/dist/src/vetToken.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.VetToken = void 0;
|
|
4
|
-
const vet_1 = require("./vet");
|
|
5
4
|
const statics_1 = require("@bitgo-beta/statics");
|
|
5
|
+
const vet_1 = require("./vet");
|
|
6
6
|
class VetToken extends vet_1.Vet {
|
|
7
7
|
constructor(bitgo, tokenConfig) {
|
|
8
8
|
const staticsCoin = tokenConfig.network === 'Mainnet' ? statics_1.coins.get('vet') : statics_1.coins.get('tvet');
|
|
@@ -49,4 +49,4 @@ class VetToken extends vet_1.Vet {
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
exports.VetToken = VetToken;
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmV0VG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdmV0VG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsaURBQW9FO0FBQ3BFLCtCQUE0QjtBQUU1QixNQUFhLFFBQVMsU0FBUSxTQUFHO0lBRy9CLFlBQVksS0FBZ0IsRUFBRSxXQUEyQjtRQUN2RCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RixLQUFLLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBc0I7UUFDbEQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsTUFBTSxDQUFDLHVCQUF1QjtRQUM1QixNQUFNLFdBQVcsR0FBMkIsRUFBRSxDQUFDO1FBQy9DLEtBQUssTUFBTSxLQUFLLElBQUksQ0FBQyxHQUFHLGdCQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxnQkFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNqRixNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoRSxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUM1RSxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUM7SUFDbEMsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQXpERCw0QkF5REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCaXRHb0Jhc2UsIENvaW5Db25zdHJ1Y3RvciwgTmFtZWRDb2luQ29uc3RydWN0b3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBWZXRUb2tlbkNvbmZpZywgY29pbnMsIHRva2VucyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgVmV0IH0gZnJvbSAnLi92ZXQnO1xuXG5leHBvcnQgY2xhc3MgVmV0VG9rZW4gZXh0ZW5kcyBWZXQge1xuICBwdWJsaWMgcmVhZG9ubHkgdG9rZW5Db25maWc6IFZldFRva2VuQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHRva2VuQ29uZmlnOiBWZXRUb2tlbkNvbmZpZykge1xuICAgIGNvbnN0IHN0YXRpY3NDb2luID0gdG9rZW5Db25maWcubmV0d29yayA9PT0gJ01haW5uZXQnID8gY29pbnMuZ2V0KCd2ZXQnKSA6IGNvaW5zLmdldCgndHZldCcpO1xuICAgIHN1cGVyKGJpdGdvLCBzdGF0aWNzQ29pbik7XG4gICAgdGhpcy50b2tlbkNvbmZpZyA9IHRva2VuQ29uZmlnO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZVRva2VuQ29uc3RydWN0b3IoY29uZmlnOiBWZXRUb2tlbkNvbmZpZyk6IENvaW5Db25zdHJ1Y3RvciB7XG4gICAgcmV0dXJuIChiaXRnbzogQml0R29CYXNlKSA9PiBuZXcgVmV0VG9rZW4oYml0Z28sIGNvbmZpZyk7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3RvcnMoKTogTmFtZWRDb2luQ29uc3RydWN0b3JbXSB7XG4gICAgY29uc3QgdG9rZW5zQ3RvcnM6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRva2VuIG9mIFsuLi50b2tlbnMuYml0Y29pbi52ZXQudG9rZW5zLCAuLi50b2tlbnMudGVzdG5ldC52ZXQudG9rZW5zXSkge1xuICAgICAgY29uc3QgdG9rZW5Db25zdHJ1Y3RvciA9IFZldFRva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3IodG9rZW4pO1xuICAgICAgdG9rZW5zQ3RvcnMucHVzaCh7IG5hbWU6IHRva2VuLnR5cGUsIGNvaW5Db25zdHJ1Y3RvcjogdG9rZW5Db25zdHJ1Y3RvciB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRva2Vuc0N0b3JzO1xuICB9XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uYW1lO1xuICB9XG5cbiAgZ2V0IGNvaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IG5ldHdvcmsoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uZXR3b3JrO1xuICB9XG5cbiAgZ2V0IGNvbnRyYWN0QWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmNvbnRyYWN0QWRkcmVzcztcbiAgfVxuXG4gIGdldCBkZWNpbWFsUGxhY2VzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcztcbiAgfVxuXG4gIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldEJhc2VDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvaW47XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnVmV0IFRva2VuJztcbiAgfVxuXG4gIGdldEJhc2VGYWN0b3IoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5wb3coMTAsIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { Recipient } from '@bitgo-beta/sdk-core';
|
|
2
|
+
export declare const AMOUNT = 100000000000000000;
|
|
3
|
+
export declare const SPONSORED_TRANSACTION = "0xf8bc2788014e9cad44bade0940e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a0000808180825208808302d6b5c101b882ee76129c1259eb0c8a2b3b3e5f2b089cd11068da1c0db32a9e22228db83dd4be5c721858bc813514141fbd5cf641d0972ce47ceb9be61133fa2ebf0ea37c1f290011fdce201f56d639d827035a5ed8bcef42a42f6eb562bc76a6d95c7736cf8cf340122d1e2fb034668dc491d47b7d3bb10724ba2338a6e79df87bce9617fdce9c00";
|
|
4
|
+
export declare const SPONSORED_TOKEN_TRANSACTION = "0xf8fb278801543ac0a0b3aaf940f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a0000818082c93e808307e669c101b8825dc39997717119cec9e65bfc927d1ad6ef31956e4747f95cea49f76f9e66164a737a155a6694f86287bcec043a83c7f9a3169fd3bb57ce617ab3fd4c59da437701277f6455fc041e672082bff003e75520c3167ad61edd98fba7e0ed87eb5323fc47feb3f51bfe2faa31c2174a2f7bb548e9727d7628f15137b4007a26651413fd00";
|
|
5
|
+
export declare const SPONSORED_NFT_TRANSACTION = "0xf9011a2788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101b882212d212effea03773f4228cd049efe42c3efe54f18378def52f0ad349637248d67d0eec6fd9bc7ddc5ab4d98f22c4fc8de485e2403f90a68b2613e214245c0a401758c9d00ada40ebc36890bbf8cf1c84070e0950dcbb6cad94a4c9a4c0ffe16c7486c5b674207c4d916f7ed7cb501c73daaafc49cfe7685cf1e0f8054a7fa460300";
|
|
6
|
+
export declare const STAKING_TRANSACTION = "0xf901032788015d55fcf2457e7c40f866f864941856c533ac2d94340aaa8544d35a5c1d4a21dee7880de0b6b3a7640000b844d8da3bbf0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000181808265848083094c53c101b882efcb9ea88e908d1a142db96c1b44dd056ea194f1ad45670c100a8c52348cc7b20387741260ebe7fe9b7594f96693c88662fa60edba5992332728222b0bdd8a30008535368bd901319eb4513d16bebc428dc8454d32a19eeb76372849a6134ebbba79f1eeceea1f6546574b945c05489222cb451f5b0e2901b0c687b750e833aeb800";
|
|
7
|
+
export declare const STAKE_CLAUSE_TRANSACTION = "0xf8e5278801638298c53767ac40f847f845941e02b2953adefec225cf0ec49805b1146a4429c18a021e19e0c9bab2400000a4604f2177000000000000000000000000000000000000000000000000000000000000000881808306338a80830f340bc101b882b4970b0c160552162de719b9ed1fa6268bbfe9b36fd4e4a5c13e956cf539e60478f69179e8db4a3106fdbe775e3d923510b16f48da56c66076d1f66ffd822abf01ebc040c795b1e17cb0ca5ba747e3a181b4eefea7db5378f64f82361bdb7745da45aba2ace3db9822b675474552f13849052987c431cd4867813c2cf635302b1101";
|
|
8
|
+
export declare const DELEGATION_TRANSACTION = "0xf8fc278801640639091a26ce40f85ef85c941e02b2953adefec225cf0ec49805b1146a4429c180b84408bbb8240000000000000000000000000000000000000000000000000000000000003d2e00000000000000000000000000563ec3cafbbe7e60b04b3190e6eca66579706d8180830464b080830d8b05c101b8821a3cca8e8339456c6055ef796e5d716dda00de45f4cd9431bedf2119ae5de01b1f0a7268690784ba8f5c22b3043d0530ece5303a813ffdd9c0a5ae0ae85deee400b04543d6874f30eca88b3efb927c44934e9eb64a6f2327cce44a0a94faaca13615d153e804ba3fdd02bf5f8e1b6bc8e0f6149a1c7694803ed4fbb549bb79066101";
|
|
9
|
+
export declare const EXIT_DELEGATION_TRANSACTION = "0xf8db278801640bf461bc7e1840f83df83b941e02b2953adefec225cf0ec49805b1146a4429c180a469e79b7d0000000000000000000000000000000000000000000000000000000000003d2d81808303525f808305f65ac101b8820cb393317793011b0a205973c77761f5c5c8652c21fe0115f527d2e2f2c1b5fc72a048107b263764312e9323f2ace9f30ce0beed873d7ef7f5432943330d2d5000a4a5f6439503f235ac6a5e17b47ac26c9e0c9e3be9dbd4cec3266fea324eb9bf5f806cedca59ff4144deb0ca18c41d9d6d600a86bf3d4e7b930bcec9b04c2e7301";
|
|
10
|
+
export declare const BURN_NFT_TRANSACTION = "0xf8db278801640bfe6c1ee3e640f83df83b941e02b2953adefec225cf0ec49805b1146a4429c180a42e17de780000000000000000000000000000000000000000000000000000000000003d2d81808305548c808304fe38c101b882044933b92e0fc5517d58205b46211a5ad2403103c8c217ce9682ebe2457e374f655fc6be307c7dfd59f0f4eda2aab7e3a1ac9219923086cde52e6405c34de2d801d692df740f95dd4ac6dbae7eb6e91a712a1e456e1a80e3a2f501ea1e6ed12c4308e65a8a98b0142190812d4484f54121bbc95b6048ae09de5946304affbfba1400";
|
|
11
|
+
export declare const CLAIM_REWARDS_TRANSACTION = "0xf8db278801641640d3222ab440f83df83b941e02b2953adefec225cf0ec49805b1146a4429c180a40962ef790000000000000000000000000000000000000000000000000000000000003d2e818083024d5e80830ed95ec101b882bfa94a4f13af900edaae0bf3000f3b2aa35b3f5f6404d61f84921ef5184d0b0175bf4ab3567c80c6479b58bf028dcca9c8ecc76525633fa4efa490486e85ee950120cbcd1b63200604f1369eb5f1394db45cc40302e790ff704893ca7f4861c3062b8c4771a2a583a9e0c7eed2bbd5fddfe7800101b94dec9fb855b7534104735b01";
|
|
12
|
+
export declare const STAKING_LEVEL_ID = 8;
|
|
13
|
+
export declare const STAKING_AUTORENEW = true;
|
|
14
|
+
export declare const STAKING_CONTRACT_ADDRESS = "0x1e02b2953adefec225cf0ec49805b1146a4429c1";
|
|
15
|
+
export declare const VALID_TOKEN_SIGNABLE_PAYLOAD = "f8762788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101";
|
|
16
|
+
export declare const VALID_NFT_SIGNABLE_PAYLOAD = "f8962788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101";
|
|
17
|
+
export declare const UNSIGNED_TRANSACTION = "0xf4278801536ce9e9fb063840dddc94c52584d1c56e7bddcb6f65d50ff00f71e0ef897a85e8d4a510008081808252088083061c70c0";
|
|
18
|
+
export declare const UNSIGNED_TRANSACTION_2 = "0xf72788014ead140e77bbc140e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a00008081808252088082faf8c101";
|
|
19
|
+
export declare const UNSIGNED_TRANSACTION_3 = "0xf8762788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101";
|
|
20
|
+
export declare const UNSIGNED_TRANSACTION_4 = "0xf8962788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd0000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101";
|
|
21
|
+
export declare const ADDRESS_INITIALIZATION_TRANSACTION = "0xf8952788014ead140e77bbc140f87ef87c9465343e18c376d2fc8c3cf10cd146d63e2e0dc9ef80b86413b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e000000000000000000000000000000000000000000000000000000000000000181808252088082faf8c0";
|
|
22
|
+
export declare const ADDRESS_INITIALIZATION_DATA = "0x13b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e0000000000000000000000000000000000000000000000000000000000000001";
|
|
23
|
+
export declare const ADDRESS_INITIALIZATION_SIGNABLE_PAYLOAD = "f8952788014ead140e77bbc140f87ef87c9465343e18c376d2fc8c3cf10cd146d63e2e0dc9ef80b86413b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e000000000000000000000000000000000000000000000000000000000000000181808252088082faf8c0";
|
|
24
|
+
export declare const FORWARDER_ADDRESS = "0x043fde2fa0ece77c2461a9571f3b1b1c6faca120";
|
|
25
|
+
export declare const FORWARDER_ADDRESS_NEW = "0x604a42898388080d56bc85f815965d1f64beb1a6";
|
|
26
|
+
export declare const FLUSH_TOKEN_TRANSACTION = "0xf8542788014ead140e77bbc140f83df83b94043fde2fa0ece77c2461a9571f3b1b1c6faca12080a43ef133670000000000000000000000000000000000000000000000000000456e6572677981808252088082faf8c0";
|
|
27
|
+
export declare const FLUSH_TOKEN_DATA = "0x3ef133670000000000000000000000000000000000000000000000000000456e65726779";
|
|
28
|
+
export declare const FLUSH_TOKEN_SIGNABLE_PAYLOAD = "f8542788014ead140e77bbc140f83df83b94043fde2fa0ece77c2461a9571f3b1b1c6faca12080a43ef133670000000000000000000000000000000000000000000000000000456e6572677981808252088082faf8c0";
|
|
29
|
+
export declare const INVALID_TRANSACTION = "0xf8bc2788014ea060b5b5997e40e0df94e5f4eec44adf19c4cbeec88016345785d8a000080818082520880830bf84fc101b882418e212a40b29da685a7312829e8d1d3708b654f4ddb4388a7a80f5af3e5423b455451901d9b837fe18501e6ea5ec7d3d2711f00073d553aabe40e0260ec8a6f00da557d0a1af66b82b457324bc6fc86c7f0362e76c15b64432e66b6fa62fca38c7d208a604d1a7ec5356c95fec7bc6f332d16718a91a53e0e99e3a81ae3205ab400";
|
|
30
|
+
export declare const TRANSFER_CLAUSE: {
|
|
31
|
+
to: string;
|
|
32
|
+
value: number;
|
|
33
|
+
data: string;
|
|
34
|
+
}[];
|
|
35
|
+
export declare const addresses: {
|
|
36
|
+
validAddresses: string[];
|
|
37
|
+
invalidAddresses: string[];
|
|
38
|
+
};
|
|
39
|
+
export declare const senderSig = "062080cc77db9d5ce5db84f1cfb57c9906c9bfdce78e4d53757bbd3d536c731e1e5e406a4e783a4f63446aa28d21dc27796aae90fac79151c3d0b3ba68cde36801";
|
|
40
|
+
export declare const feePayerSig = "47ae79e23effd233206180ece3ab3d6d496310c03c55bd0566a54bb7d42095c97a90ca9ff4cfb94ec579a7ec7f79de4814dfc816d0a130189c07b746945482fb00";
|
|
41
|
+
export declare const senderSig2 = "9d05e90a00c538afd68652f63a4e21481d1d082fdbd4a300b04b561dc76185ad292bb48d70846bd0fb8b526782b9d2f940dbcee3bc554bfb7b53e362bbcb39d701";
|
|
42
|
+
export declare const feePayerSig2 = "45d8aec4d2ed5f74b788695ceb76d18dd3597503bc0466d667493b2aff2c2b095d352788a345b2e3b49e9ad19bc28b0bdee45d0cce986962e61b0febe60a259301";
|
|
43
|
+
export declare const senderSig3 = "212d212effea03773f4228cd049efe42c3efe54f18378def52f0ad349637248d67d0eec6fd9bc7ddc5ab4d98f22c4fc8de485e2403f90a68b2613e214245c0a401";
|
|
44
|
+
export declare const feePayerSig3 = "758c9d00ada40ebc36890bbf8cf1c84070e0950dcbb6cad94a4c9a4c0ffe16c7486c5b674207c4d916f7ed7cb501c73daaafc49cfe7685cf1e0f8054a7fa460300";
|
|
45
|
+
export declare const senderSignedSerializedTxHex = "0xf72788014ead140e77bbc140e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a00008081808252088082faf8c101";
|
|
46
|
+
export declare const senderSignedSerializedTxHex2 = "0xf8762788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101";
|
|
47
|
+
export declare const completeSignedSerializedHex = "0xf8bb2788014ead140e77bbc140e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a00008081808252088082faf8c101b882062080cc77db9d5ce5db84f1cfb57c9906c9bfdce78e4d53757bbd3d536c731e1e5e406a4e783a4f63446aa28d21dc27796aae90fac79151c3d0b3ba68cde3680147ae79e23effd233206180ece3ab3d6d496310c03c55bd0566a54bb7d42095c97a90ca9ff4cfb94ec579a7ec7f79de4814dfc816d0a130189c07b746945482fb00";
|
|
48
|
+
export declare const completeSignedSerializedHex2 = "0xf8fa2788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101b8829d05e90a00c538afd68652f63a4e21481d1d082fdbd4a300b04b561dc76185ad292bb48d70846bd0fb8b526782b9d2f940dbcee3bc554bfb7b53e362bbcb39d70145d8aec4d2ed5f74b788695ceb76d18dd3597503bc0466d667493b2aff2c2b095d352788a345b2e3b49e9ad19bc28b0bdee45d0cce986962e61b0febe60a259301";
|
|
49
|
+
export declare const senderSignedSerializedHex3 = "0xf8962788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101";
|
|
50
|
+
export declare const completeSignedSerializedHex3 = "0xf9011a2788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101b882212d212effea03773f4228cd049efe42c3efe54f18378def52f0ad349637248d67d0eec6fd9bc7ddc5ab4d98f22c4fc8de485e2403f90a68b2613e214245c0a401758c9d00ada40ebc36890bbf8cf1c84070e0950dcbb6cad94a4c9a4c0ffe16c7486c5b674207c4d916f7ed7cb501c73daaafc49cfe7685cf1e0f8054a7fa460300";
|
|
51
|
+
export declare const blockIds: {
|
|
52
|
+
validBlockIds: string[];
|
|
53
|
+
invalidBlockIds: string[];
|
|
54
|
+
};
|
|
55
|
+
export declare const invalidRecipients: Recipient[];
|
|
56
|
+
export declare const recipients: Recipient[];
|
|
57
|
+
export declare const nftRecipients: Recipient[];
|
|
58
|
+
export declare const nftRecipients2: Recipient[];
|
|
59
|
+
export declare const feePayer: {
|
|
60
|
+
address: string;
|
|
61
|
+
};
|
|
62
|
+
export declare const FORWARDER_FACTORY_ADDRESS = "0x65343e18c376d2fc8c3cf10cd146d63e2e0dc9ef";
|
|
63
|
+
export declare const FORWARDER_IMPLEMENTATION_ADDRESS = "0x62de34c87f847d385af07f6c25dbd97b1fffefc0";
|
|
64
|
+
export declare const CREATE_FORWARDER_METHOD = "0x13b2f75c";
|
|
65
|
+
export declare const BASE_ADDRESS = "0x55b00b5c807d5696197b48d4affa40bb876df240";
|
|
66
|
+
export declare const FEE_ADDRESS = "0x7c87b9ffc6fd6c167c0e4fa9418720f3d659358e";
|
|
67
|
+
export declare const TOKEN_ADDRESS = "0x0000000000000000000000000000456e65726779";
|
|
68
|
+
export declare const NFT_CONTRACT_ADDRESS = "0x1ec1d168574603ec35b9d229843b7c2b44bcb770";
|
|
69
|
+
export declare const SALT = "0x1";
|
|
70
|
+
export declare const SERIALIZED_SIGNED_ADDRESS_INIT_TX = "0xf8d927880152c906531784bd40f87ef87c9465343e18c376d2fc8c3cf10cd146d63e2e0dc9ef80b86413b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e00000000000000000000000000000000000000000000000000000000000000048180830249f08082faf8c0b84196577046ecbba640d8f5914a7b4cb99f9ab479359bcda5368cc9afdfb55994a0469af071cdeb4cac92caaf0be7fedf492d2215f83baa00d4abac31cf48eeddd900";
|
|
71
|
+
export declare const SERIALIZED_SIGNED_FLUSH_TOKEN_TX = "0xf89827880152cf455536ebc740f83df83b94604a42898388080d56bc85f815965d1f64beb1a680a43ef133670000000000000000000000000000000000000000000000000000456e657267798180830249f08082faf9c0b841b5225a0d5c63fd4ceee2fefe94759d20e37c29ebcd15fc03eb699d4af5bb210c258583f9e8e26e872751e255c2f0fe9d44d52ce65b6b76040476e285074a4b5901";
|
|
72
|
+
export declare const VALID_NFT_CONTRACT_DATA = "0x23b872dd0000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec00000000000000000000000000000000000000000000000000000000000004d2";
|
|
73
|
+
//# sourceMappingURL=vet.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vet.d.ts","sourceRoot":"","sources":["../../../test/resources/vet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FORWARDER_IMPLEMENTATION_ADDRESS = exports.FORWARDER_FACTORY_ADDRESS = exports.feePayer = exports.nftRecipients2 = exports.nftRecipients = exports.recipients = exports.invalidRecipients = exports.blockIds = exports.completeSignedSerializedHex3 = exports.senderSignedSerializedHex3 = exports.completeSignedSerializedHex2 = exports.completeSignedSerializedHex = exports.senderSignedSerializedTxHex2 = exports.senderSignedSerializedTxHex = exports.feePayerSig3 = exports.senderSig3 = exports.feePayerSig2 = exports.senderSig2 = exports.feePayerSig = exports.senderSig = exports.addresses = exports.TRANSFER_CLAUSE = exports.INVALID_TRANSACTION = exports.FLUSH_TOKEN_SIGNABLE_PAYLOAD = exports.FLUSH_TOKEN_DATA = exports.FLUSH_TOKEN_TRANSACTION = exports.FORWARDER_ADDRESS_NEW = exports.FORWARDER_ADDRESS = exports.ADDRESS_INITIALIZATION_SIGNABLE_PAYLOAD = exports.ADDRESS_INITIALIZATION_DATA = exports.ADDRESS_INITIALIZATION_TRANSACTION = exports.UNSIGNED_TRANSACTION_4 = exports.UNSIGNED_TRANSACTION_3 = exports.UNSIGNED_TRANSACTION_2 = exports.UNSIGNED_TRANSACTION = exports.VALID_NFT_SIGNABLE_PAYLOAD = exports.VALID_TOKEN_SIGNABLE_PAYLOAD = exports.STAKING_CONTRACT_ADDRESS = exports.STAKING_AUTORENEW = exports.STAKING_LEVEL_ID = exports.CLAIM_REWARDS_TRANSACTION = exports.BURN_NFT_TRANSACTION = exports.EXIT_DELEGATION_TRANSACTION = exports.DELEGATION_TRANSACTION = exports.STAKE_CLAUSE_TRANSACTION = exports.STAKING_TRANSACTION = exports.SPONSORED_NFT_TRANSACTION = exports.SPONSORED_TOKEN_TRANSACTION = exports.SPONSORED_TRANSACTION = exports.AMOUNT = void 0;
|
|
4
|
+
exports.VALID_NFT_CONTRACT_DATA = exports.SERIALIZED_SIGNED_FLUSH_TOKEN_TX = exports.SERIALIZED_SIGNED_ADDRESS_INIT_TX = exports.SALT = exports.NFT_CONTRACT_ADDRESS = exports.TOKEN_ADDRESS = exports.FEE_ADDRESS = exports.BASE_ADDRESS = exports.CREATE_FORWARDER_METHOD = void 0;
|
|
5
|
+
exports.AMOUNT = 100000000000000000; // 0.1 VET in base units
|
|
6
|
+
exports.SPONSORED_TRANSACTION = '0xf8bc2788014e9cad44bade0940e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a0000808180825208808302d6b5c101b882ee76129c1259eb0c8a2b3b3e5f2b089cd11068da1c0db32a9e22228db83dd4be5c721858bc813514141fbd5cf641d0972ce47ceb9be61133fa2ebf0ea37c1f290011fdce201f56d639d827035a5ed8bcef42a42f6eb562bc76a6d95c7736cf8cf340122d1e2fb034668dc491d47b7d3bb10724ba2338a6e79df87bce9617fdce9c00';
|
|
7
|
+
exports.SPONSORED_TOKEN_TRANSACTION = '0xf8fb278801543ac0a0b3aaf940f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a0000818082c93e808307e669c101b8825dc39997717119cec9e65bfc927d1ad6ef31956e4747f95cea49f76f9e66164a737a155a6694f86287bcec043a83c7f9a3169fd3bb57ce617ab3fd4c59da437701277f6455fc041e672082bff003e75520c3167ad61edd98fba7e0ed87eb5323fc47feb3f51bfe2faa31c2174a2f7bb548e9727d7628f15137b4007a26651413fd00';
|
|
8
|
+
exports.SPONSORED_NFT_TRANSACTION = '0xf9011a2788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101b882212d212effea03773f4228cd049efe42c3efe54f18378def52f0ad349637248d67d0eec6fd9bc7ddc5ab4d98f22c4fc8de485e2403f90a68b2613e214245c0a401758c9d00ada40ebc36890bbf8cf1c84070e0950dcbb6cad94a4c9a4c0ffe16c7486c5b674207c4d916f7ed7cb501c73daaafc49cfe7685cf1e0f8054a7fa460300';
|
|
9
|
+
exports.STAKING_TRANSACTION = '0xf901032788015d55fcf2457e7c40f866f864941856c533ac2d94340aaa8544d35a5c1d4a21dee7880de0b6b3a7640000b844d8da3bbf0000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000181808265848083094c53c101b882efcb9ea88e908d1a142db96c1b44dd056ea194f1ad45670c100a8c52348cc7b20387741260ebe7fe9b7594f96693c88662fa60edba5992332728222b0bdd8a30008535368bd901319eb4513d16bebc428dc8454d32a19eeb76372849a6134ebbba79f1eeceea1f6546574b945c05489222cb451f5b0e2901b0c687b750e833aeb800';
|
|
10
|
+
exports.STAKE_CLAUSE_TRANSACTION = '0xf8e5278801638298c53767ac40f847f845941e02b2953adefec225cf0ec49805b1146a4429c18a021e19e0c9bab2400000a4604f2177000000000000000000000000000000000000000000000000000000000000000881808306338a80830f340bc101b882b4970b0c160552162de719b9ed1fa6268bbfe9b36fd4e4a5c13e956cf539e60478f69179e8db4a3106fdbe775e3d923510b16f48da56c66076d1f66ffd822abf01ebc040c795b1e17cb0ca5ba747e3a181b4eefea7db5378f64f82361bdb7745da45aba2ace3db9822b675474552f13849052987c431cd4867813c2cf635302b1101';
|
|
11
|
+
exports.DELEGATION_TRANSACTION = '0xf8fc278801640639091a26ce40f85ef85c941e02b2953adefec225cf0ec49805b1146a4429c180b84408bbb8240000000000000000000000000000000000000000000000000000000000003d2e00000000000000000000000000563ec3cafbbe7e60b04b3190e6eca66579706d8180830464b080830d8b05c101b8821a3cca8e8339456c6055ef796e5d716dda00de45f4cd9431bedf2119ae5de01b1f0a7268690784ba8f5c22b3043d0530ece5303a813ffdd9c0a5ae0ae85deee400b04543d6874f30eca88b3efb927c44934e9eb64a6f2327cce44a0a94faaca13615d153e804ba3fdd02bf5f8e1b6bc8e0f6149a1c7694803ed4fbb549bb79066101';
|
|
12
|
+
exports.EXIT_DELEGATION_TRANSACTION = '0xf8db278801640bf461bc7e1840f83df83b941e02b2953adefec225cf0ec49805b1146a4429c180a469e79b7d0000000000000000000000000000000000000000000000000000000000003d2d81808303525f808305f65ac101b8820cb393317793011b0a205973c77761f5c5c8652c21fe0115f527d2e2f2c1b5fc72a048107b263764312e9323f2ace9f30ce0beed873d7ef7f5432943330d2d5000a4a5f6439503f235ac6a5e17b47ac26c9e0c9e3be9dbd4cec3266fea324eb9bf5f806cedca59ff4144deb0ca18c41d9d6d600a86bf3d4e7b930bcec9b04c2e7301';
|
|
13
|
+
exports.BURN_NFT_TRANSACTION = '0xf8db278801640bfe6c1ee3e640f83df83b941e02b2953adefec225cf0ec49805b1146a4429c180a42e17de780000000000000000000000000000000000000000000000000000000000003d2d81808305548c808304fe38c101b882044933b92e0fc5517d58205b46211a5ad2403103c8c217ce9682ebe2457e374f655fc6be307c7dfd59f0f4eda2aab7e3a1ac9219923086cde52e6405c34de2d801d692df740f95dd4ac6dbae7eb6e91a712a1e456e1a80e3a2f501ea1e6ed12c4308e65a8a98b0142190812d4484f54121bbc95b6048ae09de5946304affbfba1400';
|
|
14
|
+
exports.CLAIM_REWARDS_TRANSACTION = '0xf8db278801641640d3222ab440f83df83b941e02b2953adefec225cf0ec49805b1146a4429c180a40962ef790000000000000000000000000000000000000000000000000000000000003d2e818083024d5e80830ed95ec101b882bfa94a4f13af900edaae0bf3000f3b2aa35b3f5f6404d61f84921ef5184d0b0175bf4ab3567c80c6479b58bf028dcca9c8ecc76525633fa4efa490486e85ee950120cbcd1b63200604f1369eb5f1394db45cc40302e790ff704893ca7f4861c3062b8c4771a2a583a9e0c7eed2bbd5fddfe7800101b94dec9fb855b7534104735b01';
|
|
15
|
+
exports.STAKING_LEVEL_ID = 8;
|
|
16
|
+
exports.STAKING_AUTORENEW = true;
|
|
17
|
+
exports.STAKING_CONTRACT_ADDRESS = '0x1e02b2953adefec225cf0ec49805b1146a4429c1';
|
|
18
|
+
exports.VALID_TOKEN_SIGNABLE_PAYLOAD = 'f8762788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101';
|
|
19
|
+
exports.VALID_NFT_SIGNABLE_PAYLOAD = 'f8962788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101';
|
|
20
|
+
exports.UNSIGNED_TRANSACTION = '0xf4278801536ce9e9fb063840dddc94c52584d1c56e7bddcb6f65d50ff00f71e0ef897a85e8d4a510008081808252088083061c70c0';
|
|
21
|
+
exports.UNSIGNED_TRANSACTION_2 = '0xf72788014ead140e77bbc140e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a00008081808252088082faf8c101';
|
|
22
|
+
exports.UNSIGNED_TRANSACTION_3 = '0xf8762788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101';
|
|
23
|
+
//unsigned nft transaction
|
|
24
|
+
exports.UNSIGNED_TRANSACTION_4 = '0xf8962788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd0000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101';
|
|
25
|
+
exports.ADDRESS_INITIALIZATION_TRANSACTION = '0xf8952788014ead140e77bbc140f87ef87c9465343e18c376d2fc8c3cf10cd146d63e2e0dc9ef80b86413b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e000000000000000000000000000000000000000000000000000000000000000181808252088082faf8c0';
|
|
26
|
+
exports.ADDRESS_INITIALIZATION_DATA = '0x13b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e0000000000000000000000000000000000000000000000000000000000000001';
|
|
27
|
+
exports.ADDRESS_INITIALIZATION_SIGNABLE_PAYLOAD = 'f8952788014ead140e77bbc140f87ef87c9465343e18c376d2fc8c3cf10cd146d63e2e0dc9ef80b86413b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e000000000000000000000000000000000000000000000000000000000000000181808252088082faf8c0';
|
|
28
|
+
exports.FORWARDER_ADDRESS = '0x043fde2fa0ece77c2461a9571f3b1b1c6faca120';
|
|
29
|
+
exports.FORWARDER_ADDRESS_NEW = '0x604a42898388080d56bc85f815965d1f64beb1a6';
|
|
30
|
+
exports.FLUSH_TOKEN_TRANSACTION = '0xf8542788014ead140e77bbc140f83df83b94043fde2fa0ece77c2461a9571f3b1b1c6faca12080a43ef133670000000000000000000000000000000000000000000000000000456e6572677981808252088082faf8c0';
|
|
31
|
+
exports.FLUSH_TOKEN_DATA = '0x3ef133670000000000000000000000000000000000000000000000000000456e65726779';
|
|
32
|
+
exports.FLUSH_TOKEN_SIGNABLE_PAYLOAD = 'f8542788014ead140e77bbc140f83df83b94043fde2fa0ece77c2461a9571f3b1b1c6faca12080a43ef133670000000000000000000000000000000000000000000000000000456e6572677981808252088082faf8c0';
|
|
33
|
+
exports.INVALID_TRANSACTION = '0xf8bc2788014ea060b5b5997e40e0df94e5f4eec44adf19c4cbeec88016345785d8a000080818082520880830bf84fc101b882418e212a40b29da685a7312829e8d1d3708b654f4ddb4388a7a80f5af3e5423b455451901d9b837fe18501e6ea5ec7d3d2711f00073d553aabe40e0260ec8a6f00da557d0a1af66b82b457324bc6fc86c7f0362e76c15b64432e66b6fa62fca38c7d208a604d1a7ec5356c95fec7bc6f332d16718a91a53e0e99e3a81ae3205ab400';
|
|
34
|
+
exports.TRANSFER_CLAUSE = [
|
|
35
|
+
{
|
|
36
|
+
to: '0xe59f1cea4e0fef511e3d0f4eec44adf19c4cbeec',
|
|
37
|
+
value: 1000000000000,
|
|
38
|
+
data: '0x',
|
|
39
|
+
},
|
|
40
|
+
];
|
|
41
|
+
exports.addresses = {
|
|
42
|
+
validAddresses: [
|
|
43
|
+
'0x7ca00e3bc8a836026c2917c6c7c6d049e52099dd',
|
|
44
|
+
'0xe59F1cea4e0FEf511e3d0f4EEc44ADf19C4cbeEC',
|
|
45
|
+
'0x7c87b9ffc6fd6c167c0e4fa9418720f3d659358e',
|
|
46
|
+
'0xc0716f386a0a78361962d1f64ce2256a2c871bb5',
|
|
47
|
+
],
|
|
48
|
+
invalidAddresses: [
|
|
49
|
+
'randomString',
|
|
50
|
+
'0xc4173a804406a365e69dfb297ddfgsdcvf',
|
|
51
|
+
'5ne7phA48Jrvpn39AtupB8ZkCCAy8gLTfpGihZPuDqen',
|
|
52
|
+
],
|
|
53
|
+
};
|
|
54
|
+
exports.senderSig = '062080cc77db9d5ce5db84f1cfb57c9906c9bfdce78e4d53757bbd3d536c731e1e5e406a4e783a4f63446aa28d21dc27796aae90fac79151c3d0b3ba68cde36801';
|
|
55
|
+
exports.feePayerSig = '47ae79e23effd233206180ece3ab3d6d496310c03c55bd0566a54bb7d42095c97a90ca9ff4cfb94ec579a7ec7f79de4814dfc816d0a130189c07b746945482fb00';
|
|
56
|
+
exports.senderSig2 = '9d05e90a00c538afd68652f63a4e21481d1d082fdbd4a300b04b561dc76185ad292bb48d70846bd0fb8b526782b9d2f940dbcee3bc554bfb7b53e362bbcb39d701';
|
|
57
|
+
exports.feePayerSig2 = '45d8aec4d2ed5f74b788695ceb76d18dd3597503bc0466d667493b2aff2c2b095d352788a345b2e3b49e9ad19bc28b0bdee45d0cce986962e61b0febe60a259301';
|
|
58
|
+
exports.senderSig3 = '212d212effea03773f4228cd049efe42c3efe54f18378def52f0ad349637248d67d0eec6fd9bc7ddc5ab4d98f22c4fc8de485e2403f90a68b2613e214245c0a401';
|
|
59
|
+
exports.feePayerSig3 = '758c9d00ada40ebc36890bbf8cf1c84070e0950dcbb6cad94a4c9a4c0ffe16c7486c5b674207c4d916f7ed7cb501c73daaafc49cfe7685cf1e0f8054a7fa460300';
|
|
60
|
+
exports.senderSignedSerializedTxHex = '0xf72788014ead140e77bbc140e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a00008081808252088082faf8c101';
|
|
61
|
+
exports.senderSignedSerializedTxHex2 = '0xf8762788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101';
|
|
62
|
+
exports.completeSignedSerializedHex = '0xf8bb2788014ead140e77bbc140e0df94e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec88016345785d8a00008081808252088082faf8c101b882062080cc77db9d5ce5db84f1cfb57c9906c9bfdce78e4d53757bbd3d536c731e1e5e406a4e783a4f63446aa28d21dc27796aae90fac79151c3d0b3ba68cde3680147ae79e23effd233206180ece3ab3d6d496310c03c55bd0566a54bb7d42095c97a90ca9ff4cfb94ec579a7ec7f79de4814dfc816d0a130189c07b746945482fb00';
|
|
63
|
+
exports.completeSignedSerializedHex2 = '0xf8fa2788014ead140e77bbc140f85ef85c940000000000000000000000000000456e6572677980b844a9059cbb000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec000000000000000000000000000000000000000000000000016345785d8a000081808252088082faf8c101b8829d05e90a00c538afd68652f63a4e21481d1d082fdbd4a300b04b561dc76185ad292bb48d70846bd0fb8b526782b9d2f940dbcee3bc554bfb7b53e362bbcb39d70145d8aec4d2ed5f74b788695ceb76d18dd3597503bc0466d667493b2aff2c2b095d352788a345b2e3b49e9ad19bc28b0bdee45d0cce986962e61b0febe60a259301';
|
|
64
|
+
exports.senderSignedSerializedHex3 = '0xf8962788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101';
|
|
65
|
+
exports.completeSignedSerializedHex3 = '0xf9011a2788014ead140e77bbc140f87ef87c941ec1d168574603ec35b9d229843b7c2b44bcb77080b86423b872dd000000000000000000000000c0716f386a0a78361962d1f64ce2256a2c871bb50000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000000000000000000000000000000000000001872381808252088082faf8c101b882212d212effea03773f4228cd049efe42c3efe54f18378def52f0ad349637248d67d0eec6fd9bc7ddc5ab4d98f22c4fc8de485e2403f90a68b2613e214245c0a401758c9d00ada40ebc36890bbf8cf1c84070e0950dcbb6cad94a4c9a4c0ffe16c7486c5b674207c4d916f7ed7cb501c73daaafc49cfe7685cf1e0f8054a7fa460300';
|
|
66
|
+
exports.blockIds = {
|
|
67
|
+
validBlockIds: [
|
|
68
|
+
'0x014f12ed94c4b4770f7f9a73e2aa41a9dfbac02a49f36ec05acfdba8c7244ff0',
|
|
69
|
+
'0x014f130d00a2fe06d471a35e7f2cd18d25bdefe5370c07a2ad68c0ae3852ad86',
|
|
70
|
+
],
|
|
71
|
+
invalidBlockIds: [
|
|
72
|
+
'randomString',
|
|
73
|
+
'0xc4173a804406a365e69dfb297ddfgsdcvf',
|
|
74
|
+
'5ne7phA48Jrvpn39AtupB8ZkCCAy8gLTfpGihZPuDqen',
|
|
75
|
+
],
|
|
76
|
+
};
|
|
77
|
+
exports.invalidRecipients = [
|
|
78
|
+
{
|
|
79
|
+
address: exports.addresses.invalidAddresses[0],
|
|
80
|
+
amount: exports.AMOUNT.toString(),
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
address: exports.addresses.validAddresses[0],
|
|
84
|
+
amount: '-919191',
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
address: exports.addresses.validAddresses[0],
|
|
88
|
+
amount: 'invalidAmount',
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
address: exports.addresses.validAddresses[0],
|
|
92
|
+
amount: exports.AMOUNT.toString(),
|
|
93
|
+
},
|
|
94
|
+
];
|
|
95
|
+
exports.recipients = [
|
|
96
|
+
{
|
|
97
|
+
address: exports.addresses.validAddresses[1].toLowerCase(),
|
|
98
|
+
amount: exports.AMOUNT.toString(),
|
|
99
|
+
},
|
|
100
|
+
];
|
|
101
|
+
exports.nftRecipients = [
|
|
102
|
+
{
|
|
103
|
+
address: exports.addresses.validAddresses[1].toLowerCase(),
|
|
104
|
+
amount: '1',
|
|
105
|
+
},
|
|
106
|
+
];
|
|
107
|
+
exports.nftRecipients2 = [
|
|
108
|
+
{
|
|
109
|
+
address: exports.addresses.validAddresses[0].toLowerCase(),
|
|
110
|
+
amount: '1',
|
|
111
|
+
},
|
|
112
|
+
];
|
|
113
|
+
exports.feePayer = {
|
|
114
|
+
address: '0xdc9fef0b84a0ccf3f1bd4b84e41743e3e051a083',
|
|
115
|
+
};
|
|
116
|
+
// Use the hardcoded values from the VetTestnet class in networks.ts
|
|
117
|
+
exports.FORWARDER_FACTORY_ADDRESS = '0x65343e18c376d2fc8c3cf10cd146d63e2e0dc9ef';
|
|
118
|
+
exports.FORWARDER_IMPLEMENTATION_ADDRESS = '0x62de34c87f847d385af07f6c25dbd97b1fffefc0';
|
|
119
|
+
exports.CREATE_FORWARDER_METHOD = '0x13b2f75c';
|
|
120
|
+
exports.BASE_ADDRESS = '0x55b00b5c807d5696197b48d4affa40bb876df240';
|
|
121
|
+
exports.FEE_ADDRESS = '0x7c87b9ffc6fd6c167c0e4fa9418720f3d659358e';
|
|
122
|
+
exports.TOKEN_ADDRESS = '0x0000000000000000000000000000456e65726779';
|
|
123
|
+
exports.NFT_CONTRACT_ADDRESS = '0x1ec1d168574603ec35b9d229843b7c2b44bcb770';
|
|
124
|
+
exports.SALT = '0x1';
|
|
125
|
+
exports.SERIALIZED_SIGNED_ADDRESS_INIT_TX = '0xf8d927880152c906531784bd40f87ef87c9465343e18c376d2fc8c3cf10cd146d63e2e0dc9ef80b86413b2f75c00000000000000000000000055b00b5c807d5696197b48d4affa40bb876df2400000000000000000000000007c87b9ffc6fd6c167c0e4fa9418720f3d659358e00000000000000000000000000000000000000000000000000000000000000048180830249f08082faf8c0b84196577046ecbba640d8f5914a7b4cb99f9ab479359bcda5368cc9afdfb55994a0469af071cdeb4cac92caaf0be7fedf492d2215f83baa00d4abac31cf48eeddd900';
|
|
126
|
+
exports.SERIALIZED_SIGNED_FLUSH_TOKEN_TX = '0xf89827880152cf455536ebc740f83df83b94604a42898388080d56bc85f815965d1f64beb1a680a43ef133670000000000000000000000000000000000000000000000000000456e657267798180830249f08082faf9c0b841b5225a0d5c63fd4ceee2fefe94759d20e37c29ebcd15fc03eb699d4af5bb210c258583f9e8e26e872751e255c2f0fe9d44d52ce65b6b76040476e285074a4b5901';
|
|
127
|
+
exports.VALID_NFT_CONTRACT_DATA = '0x23b872dd0000000000000000000000007ca00e3bc8a836026c2917c6c7c6d049e52099dd000000000000000000000000e59f1cea4e0fef511e3d0f4eec44adf19c4cbeec00000000000000000000000000000000000000000000000000000000000004d2';
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdGVzdC9yZXNvdXJjZXMvdmV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFYSxRQUFBLE1BQU0sR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLHdCQUF3QjtBQUVyRCxRQUFBLHFCQUFxQixHQUNoQyxnWUFBZ1ksQ0FBQztBQUV0WCxRQUFBLDJCQUEyQixHQUN0Qyw4ZkFBOGYsQ0FBQztBQUVwZixRQUFBLHlCQUF5QixHQUNwQyw4akJBQThqQixDQUFDO0FBRXBqQixRQUFBLG1CQUFtQixHQUM5QixnaEJBQWdoQixDQUFDO0FBRXRnQixRQUFBLHdCQUF3QixHQUNuQyxrZEFBa2QsQ0FBQztBQUV4YyxRQUFBLHNCQUFzQixHQUNqQyxnZ0JBQWdnQixDQUFDO0FBRXRmLFFBQUEsMkJBQTJCLEdBQ3RDLDhiQUE4YixDQUFDO0FBRXBiLFFBQUEsb0JBQW9CLEdBQy9CLDhiQUE4YixDQUFDO0FBRXBiLFFBQUEseUJBQXlCLEdBQ3BDLDhiQUE4YixDQUFDO0FBRXBiLFFBQUEsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0FBQ3JCLFFBQUEsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0FBQ3pCLFFBQUEsd0JBQXdCLEdBQUcsNENBQTRDLENBQUM7QUFFeEUsUUFBQSw0QkFBNEIsR0FDdkMsa1BBQWtQLENBQUM7QUFFeE8sUUFBQSwwQkFBMEIsR0FDckMsa1RBQWtULENBQUM7QUFFeFMsUUFBQSxvQkFBb0IsR0FDL0IsOEdBQThHLENBQUM7QUFFcEcsUUFBQSxzQkFBc0IsR0FDakMsb0hBQW9ILENBQUM7QUFFMUcsUUFBQSxzQkFBc0IsR0FDakMsb1BBQW9QLENBQUM7QUFFdlAsMEJBQTBCO0FBQ2IsUUFBQSxzQkFBc0IsR0FDakMsb1RBQW9ULENBQUM7QUFFMVMsUUFBQSxrQ0FBa0MsR0FDN0Msa1RBQWtULENBQUM7QUFFeFMsUUFBQSwyQkFBMkIsR0FDdEMsNE1BQTRNLENBQUM7QUFFbE0s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Q2xELE1BQU0sRUFBRSxHQUFHO0tBQ1o7Q0FDRixDQUFDO0FBRVcsUUFBQSxRQUFRLEdBQUc7SUFDdEIsT0FBTyxFQUFFLDRDQUE0QztDQUN0RCxDQUFDO0FBRUYsb0VBQW9FO0FBQ3ZELFFBQUEseUJBQXlCLEdBQUcsNENBQTRDLENBQUM7QUFFekUsUUFBQSxnQ0FBZ0MsR0FBRyw0Q0FBNEMsQ0FBQztBQUVoRixRQUFBLHVCQUF1QixHQUFHLFlBQVksQ0FBQztBQUV2QyxRQUFBLFlBQVksR0FBRyw0Q0FBNEMsQ0FBQztBQUU1RCxRQUFBLFdBQVcsR0FBRyw0Q0FBNEMsQ0FBQztBQUUzRCxRQUFBLGFBQWEsR0FBRyw0Q0FBNEMsQ0FBQztBQUU3RCxRQUFBLG9CQUFvQixHQUFHLDRDQUE0QyxDQUFDO0FBRXBFLFFBQUEsSUFBSSxHQUFHLEtBQUssQ0FBQztBQUViLFFBQUEsaUNBQWlDLEdBQzVDLDBiQUEwYixDQUFDO0FBRWhiLFFBQUEsZ0NBQWdDLEdBQzNDLHdUQUF3VCxDQUFDO0FBRTlTLFFBQUEsdUJBQXVCLEdBQ2xDLDRNQUE0TSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVjaXBpZW50IH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5leHBvcnQgY29uc3QgQU1PVU5UID0gMTAwMDAwMDAwMDAwMDAwMDAwOyAvLyAwLjEgVkVUIGluIGJhc2UgdW5pdHNcblxuZXhwb3J0IGNvbnN0IFNQT05TT1JFRF9UUkFOU0FDVElPTiA9XG4gICcweGY4YmMyNzg4MDE0ZTljYWQ0NGJhZGUwOTQwZTBkZjk0ZTU5ZjFjZWE0ZTBmZWY1MTFlM2QwZjRlZWM0NGFkZjE5YzRjYmVlYzg4MDE2MzQ1Nzg1ZDhhMDAwMDgwODE4MDgyNTIwODgwODMwMmQ2YjVjMTAxYjg4MmVlNzYxMjljMTI1OWViMGM4YTJiM2IzZTVmMmIwODljZDExMDY4ZGExYzBkYjMyYTllMjIyMjhkYjgzZGQ0YmU1YzcyMTg1OGJjODEzNTE0MTQxZmJkNWNmNjQxZDA5NzJjZTQ3Y2ViOWJlNjExMzNmYTJlYmYwZWEzN2MxZjI5MDAxMWZkY2UyMDFmNTZkNjM5ZDgyNzAzNWE1ZWQ4YmNlZjQyYTQyZjZlYjU2MmJjNzZhNmQ5NWM3NzM2Y2Y4Y2YzNDAxMjJkMWUyZmIwMzQ2NjhkYzQ5MWQ0N2I3ZDNiYjEwNzI0YmEyMzM4YTZlNzlkZjg3YmNlOTYxN2ZkY2U5YzAwJztcblxuZXhwb3J0IGNvbnN0IFNQT05TT1JFRF9UT0tFTl9UUkFOU0FDVElPTiA9XG4gICcweGY4ZmIyNzg4MDE1NDNhYzBhMGIzYWFmOTQwZjg1ZWY4NWM5NDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NTZlNjU3MjY3Nzk4MGI4NDRhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGU1OWYxY2VhNGUwZmVmNTExZTNkMGY0ZWVjNDRhZGYxOWM0Y2JlZWMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTYzNDU3ODVkOGEwMDAwODE4MDgyYzkzZTgwODMwN2U2NjljMTAxYjg4MjVkYzM5OTk3NzE3MTE5Y2VjOWU2NWJmYzkyN2QxYWQ2ZWYzMTk1NmU0NzQ3Zjk1Y2VhNDlmNzZmOWU2NjE2NGE3MzdhMTU1YTY2OTRmODYyODdiY2VjMDQzYTgzYzdmOWEzMTY5ZmQzYmI1N2NlNjE3YWIzZmQ0YzU5ZGE0Mzc3MDEyNzdmNjQ1NWZjMDQxZTY3MjA4MmJmZjAwM2U3NTUyMGMzMTY3YWQ2MWVkZDk4ZmJhN2UwZWQ4N2ViNTMyM2ZjNDdmZWIzZjUxYmZlMmZhYTMxYzIxNzRhMmY3YmI1NDhlOTcyN2Q3NjI4ZjE1MTM3YjQwMDdhMjY2NTE0MTNmZDAwJztcblxuZXhwb3J0IGNvbnN0IFNQT05TT1JFRF9ORlRfVFJBTlNBQ1RJT04gPVxuICAnMHhmOTAxMWEyNzg4MDE0ZWFkMTQwZTc3YmJjMTQwZjg3ZWY4N2M5NDFlYzFkMTY4NTc0NjAzZWMzNWI5ZDIyOTg0M2I3YzJiNDRiY2I3NzA4MGI4NjQyM2I4NzJkZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGMwNzE2ZjM4NmEwYTc4MzYxOTYyZDFmNjRjZTIyNTZhMmM4NzFiYjUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3Y2EwMGUzYmM4YTgzNjAyNmMyOTE3YzZjN2M2ZDA0OWU1MjA5OWRkMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxODcyMzgxODA4MjUyMDg4MDgyZmFmOGMxMDFiODgyMjEyZDIxMmVmZmVhMDM3NzNmNDIyOGNkMDQ5ZWZlNDJjM2VmZTU0ZjE4Mzc4ZGVmNTJmMGFkMzQ5NjM3MjQ4ZDY3ZDBlZWM2ZmQ5YmM3ZGRjNWFiNGQ5OGYyMmM0ZmM4ZGU0ODVlMjQwM2Y5MGE2OGIyNjEzZTIxNDI0NWMwYTQwMTc1OGM5ZDAwYWRhNDBlYmMzNjg5MGJiZjhjZjFjODQwNzBlMDk1MGRjYmI2Y2FkOTRhNGM5YTRjMGZmZTE2Yzc0ODZjNWI2NzQyMDdjNGQ5MTZmN2VkN2NiNTAxYzczZGFhYWZjNDljZmU3Njg1Y2YxZTBmODA1NGE3ZmE0NjAzMDAnO1xuXG5leHBvcnQgY29uc3QgU1RBS0lOR19UUkFOU0FDVElPTiA9XG4gICcweGY5MDEwMzI3ODgwMTVkNTVmY2YyNDU3ZTdjNDBmODY2Zjg2NDk0MTg1NmM1MzNhYzJkOTQzNDBhYWE4NTQ0ZDM1YTVjMWQ0YTIxZGVlNzg4MGRlMGI2YjNhNzY0MDAwMGI4NDRkOGRhM2JiZjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxODE4MDgyNjU4NDgwODMwOTRjNTNjMTAxYjg4MmVmY2I5ZWE4OGU5MDhkMWExNDJkYjk2YzFiNDRkZDA1NmVhMTk0ZjFhZDQ1NjcwYzEwMGE4YzUyMzQ4Y2M3YjIwMzg3NzQxMjYwZWJlN2ZlOWI3NTk0Zjk2NjkzYzg4NjYyZmE2MGVkYmE1OTkyMzMyNzI4MjIyYjBiZGQ4YTMwMDA4NTM1MzY4YmQ5MDEzMTllYjQ1MTNkMTZiZWJjNDI4ZGM4NDU0ZDMyYTE5ZWViNzYzNzI4NDlhNjEzNGViYmJhNzlmMWVlY2VlYTFmNjU0NjU3NGI5NDVjMDU0ODkyMjJjYjQ1MWY1YjBlMjkwMWIwYzY4N2I3NTBlODMzYWViODAwJztcblxuZXhwb3J0IGNvbnN0IFNUQUtFX0NMQVVTRV9UUkFOU0FDVElPTiA9XG4gICcweGY4ZTUyNzg4MDE2MzgyOThjNTM3NjdhYzQwZjg0N2Y4NDU5NDFlMDJiMjk1M2FkZWZlYzIyNWNmMGVjNDk4MDViMTE0NmE0NDI5YzE4YTAyMWUxOWUwYzliYWIyNDAwMDAwYTQ2MDRmMjE3NzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDg4MTgwODMwNjMzOGE4MDgzMGYzNDBiYzEwMWI4ODJiNDk3MGIwYzE2MDU1MjE2MmRlNzE5YjllZDFmYTYyNjhiYmZlOWIzNmZkNGU0YTVjMTNlOTU2Y2Y1MzllNjA0NzhmNjkxNzllOGRiNGEzMTA2ZmRiZTc3NWUzZDkyMzUxMGIxNmY0OGRhNTZjNjYwNzZkMWY2NmZmZDgyMmFiZjAxZWJjMDQwYzc5NWIxZTE3Y2IwY2E1YmE3NDdlM2ExODFiNGVlZmVhN2RiNTM3OGY2NGY4MjM2MWJkYjc3NDVkYTQ1YWJhMmFjZTNkYjk4MjJiNjc1NDc0NTUyZjEzODQ5MDUyOTg3YzQzMWNkNDg2NzgxM2MyY2Y2MzUzMDJiMTEwMSc7XG5cbmV4cG9ydCBjb25zdCBERUxFR0FUSU9OX1RSQU5TQUNUSU9OID1cbiAgJzB4ZjhmYzI3ODgwMTY0MDYzOTA5MWEyNmNlNDBmODVlZjg1Yzk0MWUwMmIyOTUzYWRlZmVjMjI1Y2YwZWM0OTgwNWIxMTQ2YTQ0MjljMTgwYjg0NDA4YmJiODI0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM2QyZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNTYzZWMzY2FmYmJlN2U2MGIwNGIzMTkwZTZlY2E2NjU3OTcwNmQ4MTgwODMwNDY0YjA4MDgzMGQ4YjA1YzEwMWI4ODIxYTNjY2E4ZTgzMzk0NTZjNjA1NWVmNzk2ZTVkNzE2ZGRhMDBkZTQ1ZjRjZDk0MzFiZWRmMjExOWFlNWRlMDFiMWYwYTcyNjg2OTA3ODRiYThmNWMyMmIzMDQzZDA1MzBlY2U1MzAzYTgxM2ZmZGQ5YzBhNWFlMGFlODVkZWVlNDAwYjA0NTQzZDY4NzRmMzBlY2E4OGIzZWZiOTI3YzQ0OTM0ZTllYjY0YTZmMjMyN2NjZTQ0YTBhOTRmYWFjYTEzNjE1ZDE1M2U4MDRiYTNmZGQwMmJmNWY4ZTFiNmJjOGUwZjYxNDlhMWM3Njk0ODAzZWQ0ZmJiNTQ5YmI3OTA2NjEwMSc7XG5cbmV4cG9ydCBjb25zdCBFWElUX0RFTEVHQVRJT05fVFJBTlNBQ1RJT04gPVxuICAnMHhmOGRiMjc4ODAxNjQwYmY0NjFiYzdlMTg0MGY4M2RmODNiOTQxZTAyYjI5NTNhZGVmZWMyMjVjZjBlYzQ5ODA1YjExNDZhNDQyOWMxODBhNDY5ZTc5YjdkMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM2QyZDgxODA4MzAzNTI1ZjgwODMwNWY2NWFjMTAxYjg4MjBjYjM5MzMxNzc5MzAxMWIwYTIwNTk3M2M3Nzc2MWY1YzVjODY1MmMyMWZlMDExNWY1MjdkMmUyZjJjMWI1ZmM3MmEwNDgxMDdiMjYzNzY0MzEyZTkzMjNmMmFjZTlmMzBjZTBiZWVkODczZDdlZjdmNTQzMjk0MzMzMGQyZDUwMDBhNGE1ZjY0Mzk1MDNmMjM1YWM2YTVlMTdiNDdhYzI2YzllMGM5ZTNiZTlkYmQ0Y2VjMzI2NmZlYTMyNGViOWJmNWY4MDZjZWRjYTU5ZmY0MTQ0ZGViMGNhMThjNDFkOWQ2ZDYwMGE4NmJmM2Q0ZTdiOTMwYmNlYzliMDRjMmU3MzAxJztcblxuZXhwb3J0IGNvbnN0IEJVUk5fTkZUX1RSQU5TQUNUSU9OID1cbiAgJzB4ZjhkYjI3ODgwMTY0MGJmZTZjMWVlM2U2NDBmODNkZjgzYjk0MWUwMmIyOTUzYWRlZmVjMjI1Y2YwZWM0OTgwNWIxMTQ2YTQ0MjljMTgwYTQyZTE3ZGU3ODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNkMmQ4MTgwODMwNTU0OGM4MDgzMDRmZTM4YzEwMWI4ODIwNDQ5MzNiOTJlMGZjNTUxN2Q1ODIwNWI0NjIxMWE1YWQyNDAzMTAzYzhjMjE3Y2U5NjgyZWJlMjQ1N2UzNzRmNjU1ZmM2YmUzMDdjN2RmZDU5ZjBmNGVkYTJhYWI3ZTNhMWFjOTIxOTkyMzA4NmNkZTUyZTY0MDVjMzRkZTJkODAxZDY5MmRmNzQwZjk1ZGQ0YWM2ZGJhZTdlYjZlOTFhNzEyYTFlNDU2ZTFhODBlM2EyZjUwMWVhMWU2ZWQxMmM0MzA4ZTY1YThhOThiMDE0MjE5MDgxMmQ0NDg0ZjU0MTIxYmJjOTViNjA0OGFlMDlkZTU5NDYzMDRhZmZiZmJhMTQwMCc7XG5cbmV4cG9ydCBjb25zdCBDTEFJTV9SRVdBUkRTX1RSQU5TQUNUSU9OID1cbiAgJzB4ZjhkYjI3ODgwMTY0MTY0MGQzMjIyYWI0NDBmODNkZjgzYjk0MWUwMmIyOTUzYWRlZmVjMjI1Y2YwZWM0OTgwNWIxMTQ2YTQ0MjljMTgwYTQwOTYyZWY3OTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNkMmU4MTgwODMwMjRkNWU4MDgzMGVkOTVlYzEwMWI4ODJiZmE5NGE0ZjEzYWY5MDBlZGFhZTBiZjMwMDBmM2IyYWEzNWIzZjVmNjQwNGQ2MWY4NDkyMWVmNTE4NGQwYjAxNzViZjRhYjM1NjdjODBjNjQ3OWI1OGJmMDI4ZGNjYTljOGVjYzc2NTI1NjMzZmE0ZWZhNDkwNDg2ZTg1ZWU5NTAxMjBjYmNkMWI2MzIwMDYwNGYxMzY5ZWI1ZjEzOTRkYjQ1Y2M0MDMwMmU3OTBmZjcwNDg5M2NhN2Y0ODYxYzMwNjJiOGM0NzcxYTJhNTgzYTllMGM3ZWVkMmJiZDVmZGRmZTc4MDAxMDFiOTRkZWM5ZmI4NTViNzUzNDEwNDczNWIwMSc7XG5cbmV4cG9ydCBjb25zdCBTVEFLSU5HX0xFVkVMX0lEID0gODtcbmV4cG9ydCBjb25zdCBTVEFLSU5HX0FVVE9SRU5FVyA9IHRydWU7XG5leHBvcnQgY29uc3QgU1RBS0lOR19DT05UUkFDVF9BRERSRVNTID0gJzB4MWUwMmIyOTUzYWRlZmVjMjI1Y2YwZWM0OTgwNWIxMTQ2YTQ0MjljMSc7XG5cbmV4cG9ydCBjb25zdCBWQUxJRF9UT0tFTl9TSUdOQUJMRV9QQVlMT0FEID1cbiAgJ2Y4NzYyNzg4MDE0ZWFkMTQwZTc3YmJjMTQwZjg1ZWY4NWM5NDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NTZlNjU3MjY3Nzk4MGI4NDRhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGU1OWYxY2VhNGUwZmVmNTExZTNkMGY0ZWVjNDRhZGYxOWM0Y2JlZWMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTYzNDU3ODVkOGEwMDAwODE4MDgyNTIwODgwODJmYWY4YzEwMSc7XG5cbmV4cG9ydCBjb25zdCBWQUxJRF9ORlRfU0lHTkFCTEVfUEFZTE9BRCA9XG4gICdmODk2Mjc4ODAxNGVhZDE0MGU3N2JiYzE0MGY4N2VmODdjOTQxZWMxZDE2ODU3NDYwM2VjMzViOWQyMjk4NDNiN2MyYjQ0YmNiNzcwODBiODY0MjNiODcyZGQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBjMDcxNmYzODZhMGE3ODM2MTk2MmQxZjY0Y2UyMjU2YTJjODcxYmI1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2NhMDBlM2JjOGE4MzYwMjZjMjkxN2M2YzdjNmQwNDllNTIwOTlkZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTg3MjM4MTgwODI1MjA4ODA4MmZhZjhjMTAxJztcblxuZXhwb3J0IGNvbnN0IFVOU0lHTkVEX1RSQU5TQUNUSU9OID1cbiAgJzB4ZjQyNzg4MDE1MzZjZTllOWZiMDYzODQwZGRkYzk0YzUyNTg0ZDFjNTZlN2JkZGNiNmY2NWQ1MGZmMDBmNzFlMGVmODk3YTg1ZThkNGE1MTAwMDgwODE4MDgyNTIwODgwODMwNjFjNzBjMCc7XG5cbmV4cG9ydCBjb25zdCBVTlNJR05FRF9UUkFOU0FDVElPTl8yID1cbiAgJzB4ZjcyNzg4MDE0ZWFkMTQwZTc3YmJjMTQwZTBkZjk0ZTU5ZjFjZWE0ZTBmZWY1MTFlM2QwZjRlZWM0NGFkZjE5YzRjYmVlYzg4MDE2MzQ1Nzg1ZDhhMDAwMDgwODE4MDgyNTIwODgwODJmYWY4YzEwMSc7XG5cbmV4cG9ydCBjb25zdCBVTlNJR05FRF9UUkFOU0FDVElPTl8zID1cbiAgJzB4Zjg3NjI3ODgwMTRlYWQxNDBlNzdiYmMxNDBmODVlZjg1Yzk0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ1NmU2NTcyNjc3OTgwYjg0NGE5MDU5Y2JiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZTU5ZjFjZWE0ZTBmZWY1MTFlM2QwZjRlZWM0NGFkZjE5YzRjYmVlYzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNjM0NTc4NWQ4YTAwMDA4MTgwODI1MjA4ODA4MmZhZjhjMTAxJztcblxuLy91bnNpZ25lZCBuZnQgdHJhbnNhY3Rpb25cbmV4cG9ydCBjb25zdCBVTlNJR05FRF9UUkFOU0FDVElPTl80ID1cbiAgJzB4Zjg5NjI3ODgwMTRlYWQxNDBlNzdiYmMxNDBmODdlZjg3Yzk0MWVjMWQxNjg1NzQ2MDNlYzM1YjlkMjI5ODQzYjdjMmI0NGJjYjc3MDgwYjg2NDIzYjg3MmRkMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2NhMDBlM2JjOGE4MzYwMjZjMjkxN2M2YzdjNmQwNDllNTIwOTlkZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGU1OWYxY2VhNGUwZmVmNTExZTNkMGY0ZWVjNDRhZGYxOWM0Y2JlZWMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE4NzIzODE4MDgyNTIwODgwODJmYWY4YzEwMSc7XG5cbmV4cG9ydCBjb25zdCBBRERSRVNTX0lOSVRJQUxJWkFUSU9OX1RSQU5TQUNUSU9OID1cbiAgJzB4Zjg5NTI3ODgwMTRlYWQxNDBlNzdiYmMxNDBmODdlZjg3Yzk0NjUzNDNlMThjMzc2ZDJmYzhjM2NmMTBjZDE0NmQ2M2UyZTBkYzllZjgwYjg2NDEzYjJmNzVjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNTViMDBiNWM4MDdkNTY5NjE5N2I0OGQ0YWZmYTQwYmI4NzZkZjI0MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDdjODdiOWZmYzZmZDZjMTY3YzBlNGZhOTQxODcyMGYzZDY1OTM1OGUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxODE4MDgyNTIwODgwODJmYWY4YzAnO1xuXG5leHBvcnQgY29uc3QgQUREUkVTU19JTklUSUFMSVpBVElPTl9EQVRBID1cbiAgJzB4MTNiMmY3NWMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1NWIwMGI1YzgwN2Q1Njk2MTk3YjQ4ZDRhZmZhNDBiYjg3NmRmMjQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2M4N2I5ZmZjNmZkNmMxNjdjMGU0ZmE5NDE4NzIwZjNkNjU5MzU4ZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDEnO1xuXG5leHBvcnQgY29uc3QgQUREUkVTU19JTklUSUFMSVpBVElPTl9TSUdOQUJMRV9QQVlMT0FEID1cbiAgJ2Y4OTUyNzg4MDE0ZWFkMTQwZTc3YmJjMTQwZjg3ZWY4N2M5NDY1MzQzZTE4YzM3NmQyZmM4YzNjZjEwY2QxNDZkNjNlMmUwZGM5ZWY4MGI4NjQxM2IyZjc1YzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDU1YjAwYjVjODA3ZDU2OTYxOTdiNDhkNGFmZmE0MGJiODc2ZGYyNDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3Yzg3YjlmZmM2ZmQ2YzE2N2MwZTRmYTk0MTg3MjBmM2Q2NTkzNThlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTgxODA4MjUyMDg4MDgyZmFmOGMwJztcblxuZXhwb3J0IGNvbnN0IEZPUldBUkRFUl9BRERSRVNTID0gJzB4MDQzZmRlMmZhMGVjZTc3YzI0NjFhOTU3MWYzYjFiMWM2ZmFjYTEyMCc7XG5cbmV4cG9ydCBjb25zdCBGT1JXQVJERVJfQUREUkVTU19ORVcgPSAnMHg2MDRhNDI4OTgzODgwODBkNTZiYzg1ZjgxNTk2NWQxZjY0YmViMWE2JztcblxuZXhwb3J0IGNvbnN0IEZMVVNIX1RPS0VOX1RSQU5TQUNUSU9OID1cbiAgJzB4Zjg1NDI3ODgwMTRlYWQxNDBlNzdiYmMxNDBmODNkZjgzYjk0MDQzZmRlMmZhMGVjZTc3YzI0NjFhOTU3MWYzYjFiMWM2ZmFjYTEyMDgwYTQzZWYxMzM2NzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NTZlNjU3MjY3Nzk4MTgwODI1MjA4ODA4MmZhZjhjMCc7XG5cbmV4cG9ydCBjb25zdCBGTFVTSF9UT0tFTl9EQVRBID0gJzB4M2VmMTMzNjcwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDU2ZTY1NzI2Nzc5JztcblxuZXhwb3J0IGNvbnN0IEZMVVNIX1RPS0VOX1NJR05BQkxFX1BBWUxPQUQgPVxuICAnZjg1NDI3ODgwMTRlYWQxNDBlNzdiYmMxNDBmODNkZjgzYjk0MDQzZmRlMmZhMGVjZTc3YzI0NjFhOTU3MWYzYjFiMWM2ZmFjYTEyMDgwYTQzZWYxMzM2NzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NTZlNjU3MjY3Nzk4MTgwODI1MjA4ODA4MmZhZjhjMCc7XG5cbmV4cG9ydCBjb25zdCBJTlZBTElEX1RSQU5TQUNUSU9OID1cbiAgJzB4ZjhiYzI3ODgwMTRlYTA2MGI1YjU5OTdlNDBlMGRmOTRlNWY0ZWVjNDRhZGYxOWM0Y2JlZWM4ODAxNjM0NTc4NWQ4YTAwMDA4MDgxODA4MjUyMDg4MDgzMGJmODRmYzEwMWI4ODI0MThlMjEyYTQwYjI5ZGE2ODVhNzMxMjgyOWU4ZDFkMzcwOGI2NTRmNGRkYjQzODhhN2E4MGY1YWYzZTU0MjNiNDU1NDUxOTAxZDliODM3ZmUxODUwMWU2ZWE1ZWM3ZDNkMjcxMWYwMDA3M2Q1NTNhYWJlNDBlMDI2MGVjOGE2ZjAwZGE1NTdkMGExYWY2NmI4MmI0NTczMjRiYzZmYzg2YzdmMDM2MmU3NmMxNWI2NDQzMmU2NmI2ZmE2MmZjYTM4YzdkMjA4YTYwNGQxYTdlYzUzNTZjOTVmZWM3YmM2ZjMzMmQxNjcxOGE5MWE1M2UwZTk5ZTNhODFhZTMyMDVhYjQwMCc7XG5cbmV4cG9ydCBjb25zdCBUUkFOU0ZFUl9DTEFVU0UgPSBbXG4gIHtcbiAgICB0bzogJzB4ZTU5ZjFjZWE0ZTBmZWY1MTFlM2QwZjRlZWM0NGFkZjE5YzRjYmVlYycsXG4gICAgdmFsdWU6IDEwMDAwMDAwMDAwMDAsXG4gICAgZGF0YTogJzB4JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBhZGRyZXNzZXMgPSB7XG4gIHZhbGlkQWRkcmVzc2VzOiBbXG4gICAgJzB4N2NhMDBlM2JjOGE4MzYwMjZjMjkxN2M2YzdjNmQwNDllNTIwOTlkZCcsXG4gICAgJzB4ZTU5RjFjZWE0ZTBGRWY1MTFlM2QwZjRFRWM0NEFEZjE5QzRjYmVFQycsXG4gICAgJzB4N2M4N2I5ZmZjNmZkNmMxNjdjMGU0ZmE5NDE4NzIwZjNkNjU5MzU4ZScsXG4gICAgJzB4YzA3MTZmMzg2YTBhNzgzNjE5NjJkMWY2NGNlMjI1NmEyYzg3MWJiNScsXG4gIF0sXG4gIGludmFsaWRBZGRyZXNzZXM6IFtcbiAgICAncmFuZG9tU3RyaW5nJyxcbiAgICAnMHhjNDE3M2E4MDQ0MDZhMzY1ZTY5ZGZiMjk3ZGRmZ3NkY3ZmJyxcbiAgICAnNW5lN3BoQTQ4SnJ2cG4zOUF0dXBCOFprQ0NBeThnTFRmcEdpaFpQdURxZW4nLFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IHNlbmRlclNpZyA9XG4gICcwNjIwODBjYzc3ZGI5ZDVjZTVkYjg0ZjFjZmI1N2M5OTA2YzliZmRjZTc4ZTRkNTM3NTdiYmQzZDUzNmM3MzFlMWU1ZTQwNmE0ZTc4M2E0ZjYzNDQ2YWEyOGQyMWRjMjc3OTZhYWU5MGZhYzc5MTUxYzNkMGIzYmE2OGNkZTM2ODAxJztcblxuZXhwb3J0IGNvbnN0IGZlZVBheWVyU2lnID1cbiAgJzQ3YWU3OWUyM2VmZmQyMzMyMDYxODBlY2UzYWIzZDZkNDk2MzEwYzAzYzU1YmQwNTY2YTU0YmI3ZDQyMDk1Yzk3YTkwY2E5ZmY0Y2ZiOTRlYzU3OWE3ZWM3Zjc5ZGU0ODE0ZGZjODE2ZDBhMTMwMTg5YzA3Yjc0Njk0NTQ4MmZiMDAnO1xuXG5leHBvcnQgY29uc3Qgc2VuZGVyU2lnMiA9XG4gICc5ZDA1ZTkwYTAwYzUzOGFmZDY4NjUyZjYzYTRlMjE0ODFkMWQwODJmZGJkNGEzMDBiMDRiNTYxZGM3NjE4NWFkMjkyYmI0OGQ3MDg0NmJkMGZiOGI1MjY3ODJiOWQyZjk0MGRiY2VlM2JjNTU0YmZiN2I1M2UzNjJiYmNiMzlkNzAxJztcblxuZXhwb3J0IGNvbnN0IGZlZVBheWVyU2lnMiA9XG4gICc0NWQ4YWVjNGQyZWQ1Zjc0Yjc4ODY5NWNlYjc2ZDE4ZGQzNTk3NTAzYmMwNDY2ZDY2NzQ5M2IyYWZmMmMyYjA5NWQzNTI3ODhhMzQ1YjJlM2I0OWU5YWQxOWJjMjhiMGJkZWU0NWQwY2NlOTg2OTYyZTYxYjBmZWJlNjBhMjU5MzAxJztcblxuZXhwb3J0IGNvbnN0IHNlbmRlclNpZzMgPVxuICAnMjEyZDIxMmVmZmVhMDM3NzNmNDIyOGNkMDQ5ZWZlNDJjM2VmZTU0ZjE4Mzc4ZGVmNTJmMGFkMzQ5NjM3MjQ4ZDY3ZDBlZWM2ZmQ5YmM3ZGRjNWFiNGQ5OGYyMmM0ZmM4ZGU0ODVlMjQwM2Y5MGE2OGIyNjEzZTIxNDI0NWMwYTQwMSc7XG5cbmV4cG9ydCBjb25zdCBmZWVQYXllclNpZzMgPVxuICAnNzU4YzlkMDBhZGE0MGViYzM2ODkwYmJmOGNmMWM4NDA3MGUwOTUwZGNiYjZjYWQ5NGE0YzlhNGMwZmZlMTZjNzQ4NmM1YjY3NDIwN2M0ZDkxNmY3ZWQ3Y2I1MDFjNzNkYWFhZmM0OWNmZTc2ODVjZjFlMGY4MDU0YTdmYTQ2MDMwMCc7XG5cbmV4cG9ydCBjb25zdCBzZW5kZXJTaWduZWRTZXJpYWxpemVkVHhIZXggPVxuICAnMHhmNzI3ODgwMTRlYWQxNDBlNzdiYmMxNDBlMGRmOTRlNTlmMWNlYTRlMGZlZjUxMWUzZDBmNGVlYzQ0YWRmMTljNGNiZWVjODgwMTYzNDU3ODVkOGEwMDAwODA4MTgwODI1MjA4ODA4MmZhZjhjMTAxJztcblxuZXhwb3J0IGNvbnN0IHNlbmRlclNpZ25lZFNlcmlhbGl6ZWRUeEhleDIgPVxuICAnMHhmODc2Mjc4ODAxNGVhZDE0MGU3N2JiYzE0MGY4NWVmODVjOTQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDU2ZTY1NzI2Nzc5ODBiODQ0YTkwNTljYmIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBlNTlmMWNlYTRlMGZlZjUxMWUzZDBmNGVlYzQ0YWRmMTljNGNiZWVjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE2MzQ1Nzg1ZDhhMDAwMDgxODA4MjUyMDg4MDgyZmFmOGMxMDEnO1xuXG5leHBvcnQgY29uc3QgY29tcGxldGVTaWduZWRTZXJpYWxpemVkSGV4ID1cbiAgJzB4ZjhiYjI3ODgwMTRlYWQxNDBlNzdiYmMxNDBlMGRmOTRlNTlmMWNlYTRlMGZlZjUxMWUzZDBmNGVlYzQ0YWRmMTljNGNiZWVjODgwMTYzNDU3ODVkOGEwMDAwODA4MTgwODI1MjA4ODA4MmZhZjhjMTAxYjg4MjA2MjA4MGNjNzdkYjlkNWNlNWRiODRmMWNmYjU3Yzk5MDZjOWJmZGNlNzhlNGQ1Mzc1N2JiZDNkNTM2YzczMWUxZTVlNDA2YTRlNzgzYTRmNjM0NDZhYTI4ZDIxZGMyNzc5NmFhZTkwZmFjNzkxNTFjM2QwYjNiYTY4Y2RlMzY4MDE0N2FlNzllMjNlZmZkMjMzMjA2MTgwZWNlM2FiM2Q2ZDQ5NjMxMGMwM2M1NWJkMDU2NmE1NGJiN2Q0MjA5NWM5N2E5MGNhOWZmNGNmYjk0ZWM1NzlhN2VjN2Y3OWRlNDgxNGRmYzgxNmQwYTEzMDE4OWMwN2I3NDY5NDU0ODJmYjAwJztcblxuZXhwb3J0IGNvbnN0IGNvbXBsZXRlU2lnbmVkU2VyaWFsaXplZEhleDIgPVxuICAnMHhmOGZhMjc4ODAxNGVhZDE0MGU3N2JiYzE0MGY4NWVmODVjOTQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDU2ZTY1NzI2Nzc5ODBiODQ0YTkwNTljYmIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBlNTlmMWNlYTRlMGZlZjUxMWUzZDBmNGVlYzQ0YWRmMTljNGNiZWVjMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDE2MzQ1Nzg1ZDhhMDAwMDgxODA4MjUyMDg4MDgyZmFmOGMxMDFiODgyOWQwNWU5MGEwMGM1MzhhZmQ2ODY1MmY2M2E0ZTIxNDgxZDFkMDgyZmRiZDRhMzAwYjA0YjU2MWRjNzYxODVhZDI5MmJiNDhkNzA4NDZiZDBmYjhiNTI2NzgyYjlkMmY5NDBkYmNlZTNiYzU1NGJmYjdiNTNlMzYyYmJjYjM5ZDcwMTQ1ZDhhZWM0ZDJlZDVmNzRiNzg4Njk1Y2ViNzZkMThkZDM1OTc1MDNiYzA0NjZkNjY3NDkzYjJhZmYyYzJiMDk1ZDM1Mjc4OGEzNDViMmUzYjQ5ZTlhZDE5YmMyOGIwYmRlZTQ1ZDBjY2U5ODY5NjJlNjFiMGZlYmU2MGEyNTkzMDEnO1xuXG5leHBvcnQgY29uc3Qgc2VuZGVyU2lnbmVkU2VyaWFsaXplZEhleDMgPVxuICAnMHhmODk2Mjc4ODAxNGVhZDE0MGU3N2JiYzE0MGY4N2VmODdjOTQxZWMxZDE2ODU3NDYwM2VjMzViOWQyMjk4NDNiN2MyYjQ0YmNiNzcwODBiODY0MjNiODcyZGQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBjMDcxNmYzODZhMGE3ODM2MTk2MmQxZjY0Y2UyMjU2YTJjODcxYmI1MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2NhMDBlM2JjOGE4MzYwMjZjMjkxN2M2YzdjNmQwNDllNTIwOTlkZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMTg3MjM4MTgwODI1MjA4ODA4MmZhZjhjMTAxJztcblxuZXhwb3J0IGNvbnN0IGNvbXBsZXRlU2lnbmVkU2VyaWFsaXplZEhleDMgPVxuICAnMHhmOTAxMWEyNzg4MDE0ZWFkMTQwZTc3YmJjMTQwZjg3ZWY4N2M5NDFlYzFkMTY4NTc0NjAzZWMzNWI5ZDIyOTg0M2I3YzJiNDRiY2I3NzA4MGI4NjQyM2I4NzJkZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGMwNzE2ZjM4NmEwYTc4MzYxOTYyZDFmNjRjZTIyNTZhMmM4NzFiYjUwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA3Y2EwMGUzYmM4YTgzNjAyNmMyOTE3YzZjN2M2ZDA0OWU1MjA5OWRkMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxODcyMzgxODA4MjUyMDg4MDgyZmFmOGMxMDFiODgyMjEyZDIxMmVmZmVhMDM3NzNmNDIyOGNkMDQ5ZWZlNDJjM2VmZTU0ZjE4Mzc4ZGVmNTJmMGFkMzQ5NjM3MjQ4ZDY3ZDBlZWM2ZmQ5YmM3ZGRjNWFiNGQ5OGYyMmM0ZmM4ZGU0ODVlMjQwM2Y5MGE2OGIyNjEzZTIxNDI0NWMwYTQwMTc1OGM5ZDAwYWRhNDBlYmMzNjg5MGJiZjhjZjFjODQwNzBlMDk1MGRjYmI2Y2FkOTRhNGM5YTRjMGZmZTE2Yzc0ODZjNWI2NzQyMDdjNGQ5MTZmN2VkN2NiNTAxYzczZGFhYWZjNDljZmU3Njg1Y2YxZTBmODA1NGE3ZmE0NjAzMDAnO1xuXG5leHBvcnQgY29uc3QgYmxvY2tJZHM6IHsgdmFsaWRCbG9ja0lkczogc3RyaW5nW107IGludmFsaWRCbG9ja0lkczogc3RyaW5nW10gfSA9IHtcbiAgdmFsaWRCbG9ja0lkczogW1xuICAgICcweDAxNGYxMmVkOTRjNGI0NzcwZjdmOWE3M2UyYWE0MWE5ZGZiYWMwMmE0OWYzNmVjMDVhY2ZkYmE4YzcyNDRmZjAnLFxuICAgICcweDAxNGYxMzBkMDBhMmZlMDZkNDcxYTM1ZTdmMmNkMThkMjViZGVmZTUzNzBjMDdhMmFkNjhjMGFlMzg1MmFkODYnLFxuICBdLFxuICBpbnZhbGlkQmxvY2tJZHM6IFtcbiAgICAncmFuZG9tU3RyaW5nJyxcbiAgICAnMHhjNDE3M2E4MDQ0MDZhMzY1ZTY5ZGZiMjk3ZGRmZ3NkY3ZmJyxcbiAgICAnNW5lN3BoQTQ4SnJ2cG4zOUF0dXBCOFprQ0NBeThnTFRmcEdpaFpQdURxZW4nLFxuICBdLFxufTtcblxuZXhwb3J0IGNvbnN0IGludmFsaWRSZWNpcGllbnRzOiBSZWNpcGllbnRbXSA9IFtcbiAge1xuICAgIGFkZHJlc3M6IGFkZHJlc3Nlcy5pbnZhbGlkQWRkcmVzc2VzWzBdLFxuICAgIGFtb3VudDogQU1PVU5ULnRvU3RyaW5nKCksXG4gIH0sXG4gIHtcbiAgICBhZGRyZXNzOiBhZGRyZXNzZXMudmFsaWRBZGRyZXNzZXNbMF0sXG4gICAgYW1vdW50OiAnLTkxOTE5MScsXG4gIH0sXG4gIHtcbiAgICBhZGRyZXNzOiBhZGRyZXNzZXMudmFsaWRBZGRyZXNzZXNbMF0sXG4gICAgYW1vdW50OiAnaW52YWxpZEFtb3VudCcsXG4gIH0sXG4gIHtcbiAgICBhZGRyZXNzOiBhZGRyZXNzZXMudmFsaWRBZGRyZXNzZXNbMF0sXG4gICAgYW1vdW50OiBBTU9VTlQudG9TdHJpbmcoKSxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCByZWNpcGllbnRzOiBSZWNpcGllbnRbXSA9IFtcbiAge1xuICAgIGFkZHJlc3M6IGFkZHJlc3Nlcy52YWxpZEFkZHJlc3Nlc1sxXS50b0xvd2VyQ2FzZSgpLFxuICAgIGFtb3VudDogQU1PVU5ULnRvU3RyaW5nKCksXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgbmZ0UmVjaXBpZW50czogUmVjaXBpZW50W10gPSBbXG4gIHtcbiAgICBhZGRyZXNzOiBhZGRyZXNzZXMudmFsaWRBZGRyZXNzZXNbMV0udG9Mb3dlckNhc2UoKSxcbiAgICBhbW91bnQ6ICcxJyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBuZnRSZWNpcGllbnRzMjogUmVjaXBpZW50W10gPSBbXG4gIHtcbiAgICBhZGRyZXNzOiBhZGRyZXNzZXMudmFsaWRBZGRyZXNzZXNbMF0udG9Mb3dlckNhc2UoKSxcbiAgICBhbW91bnQ6ICcxJyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBmZWVQYXllciA9IHtcbiAgYWRkcmVzczogJzB4ZGM5ZmVmMGI4NGEwY2NmM2YxYmQ0Yjg0ZTQxNzQzZTNlMDUxYTA4MycsXG59O1xuXG4vLyBVc2UgdGhlIGhhcmRjb2RlZCB2YWx1ZXMgZnJvbSB0aGUgVmV0VGVzdG5ldCBjbGFzcyBpbiBuZXR3b3Jrcy50c1xuZXhwb3J0IGNvbnN0IEZPUldBUkRFUl9GQUNUT1JZX0FERFJFU1MgPSAnMHg2NTM0M2UxOGMzNzZkMmZjOGMzY2YxMGNkMTQ2ZDYzZTJlMGRjOWVmJztcblxuZXhwb3J0IGNvbnN0IEZPUldBUkRFUl9JTVBMRU1FTlRBVElPTl9BRERSRVNTID0gJzB4NjJkZTM0Yzg3Zjg0N2QzODVhZjA3ZjZjMjVkYmQ5N2IxZmZmZWZjMCc7XG5cbmV4cG9ydCBjb25zdCBDUkVBVEVfRk9SV0FSREVSX01FVEhPRCA9ICcweDEzYjJmNzVjJztcblxuZXhwb3J0IGNvbnN0IEJBU0VfQUREUkVTUyA9ICcweDU1YjAwYjVjODA3ZDU2OTYxOTdiNDhkNGFmZmE0MGJiODc2ZGYyNDAnO1xuXG5leHBvcnQgY29uc3QgRkVFX0FERFJFU1MgPSAnMHg3Yzg3YjlmZmM2ZmQ2YzE2N2MwZTRmYTk0MTg3MjBmM2Q2NTkzNThlJztcblxuZXhwb3J0IGNvbnN0IFRPS0VOX0FERFJFU1MgPSAnMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDU2ZTY1NzI2Nzc5JztcblxuZXhwb3J0IGNvbnN0IE5GVF9DT05UUkFDVF9BRERSRVNTID0gJzB4MWVjMWQxNjg1NzQ2MDNlYzM1YjlkMjI5ODQzYjdjMmI0NGJjYjc3MCc7XG5cbmV4cG9ydCBjb25zdCBTQUxUID0gJzB4MSc7XG5cbmV4cG9ydCBjb25zdCBTRVJJQUxJWkVEX1NJR05FRF9BRERSRVNTX0lOSVRfVFggPVxuICAnMHhmOGQ5Mjc4ODAxNTJjOTA2NTMxNzg0YmQ0MGY4N2VmODdjOTQ2NTM0M2UxOGMzNzZkMmZjOGMzY2YxMGNkMTQ2ZDYzZTJlMGRjOWVmODBiODY0MTNiMmY3NWMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1NWIwMGI1YzgwN2Q1Njk2MTk3YjQ4ZDRhZmZhNDBiYjg3NmRmMjQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2M4N2I5ZmZjNmZkNmMxNjdjMGU0ZmE5NDE4NzIwZjNkNjU5MzU4ZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ4MTgwODMwMjQ5ZjA4MDgyZmFmOGMwYjg0MTk2NTc3MDQ2ZWNiYmE2NDBkOGY1OTE0YTdiNGNiOTlmOWFiNDc5MzU5YmNkYTUzNjhjYzlhZmRmYjU1OTk0YTA0NjlhZjA3MWNkZWI0Y2FjOTJjYWFmMGJlN2ZlZGY0OTJkMjIxNWY4M2JhYTAwZDRhYmFjMzFjZjQ4ZWVkZGQ5MDAnO1xuXG5leHBvcnQgY29uc3QgU0VSSUFMSVpFRF9TSUdORURfRkxVU0hfVE9LRU5fVFggPVxuICAnMHhmODk4Mjc4ODAxNTJjZjQ1NTUzNmViYzc0MGY4M2RmODNiOTQ2MDRhNDI4OTgzODgwODBkNTZiYzg1ZjgxNTk2NWQxZjY0YmViMWE2ODBhNDNlZjEzMzY3MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ1NmU2NTcyNjc3OTgxODA4MzAyNDlmMDgwODJmYWY5YzBiODQxYjUyMjVhMGQ1YzYzZmQ0Y2VlZTJmZWZlOTQ3NTlkMjBlMzdjMjllYmNkMTVmYzAzZWI2OTlkNGFmNWJiMjEwYzI1ODU4M2Y5ZThlMjZlODcyNzUxZTI1NWMyZjBmZTlkNDRkNTJjZTY1YjZiNzYwNDA0NzZlMjg1MDc0YTRiNTkwMSc7XG5cbmV4cG9ydCBjb25zdCBWQUxJRF9ORlRfQ09OVFJBQ1RfREFUQSA9XG4gICcweDIzYjg3MmRkMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN2NhMDBlM2JjOGE4MzYwMjZjMjkxN2M2YzdjNmQwNDllNTIwOTlkZDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGU1OWYxY2VhNGUwZmVmNTExZTNkMGY0ZWVjNDRhZGYxOWM0Y2JlZWMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNGQyJztcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addressInitializationBuilder.d.ts","sourceRoot":"","sources":["../../../test/transactionBuilder/addressInitializationBuilder.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const should_1 = __importDefault(require("should"));
|
|
40
|
+
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
41
|
+
const statics_1 = require("@bitgo-beta/statics");
|
|
42
|
+
const testData = __importStar(require("../resources/vet"));
|
|
43
|
+
const src_1 = require("../../src");
|
|
44
|
+
describe('Address Initialisation Transaction', () => {
|
|
45
|
+
const factory = new src_1.TransactionBuilderFactory(statics_1.coins.get('tvet'));
|
|
46
|
+
describe('Succeed', () => {
|
|
47
|
+
it('should build an address initialisation transaction', async function () {
|
|
48
|
+
const transaction = new src_1.AddressInitializationTransaction(statics_1.coins.get('tvet'));
|
|
49
|
+
const txBuilder = factory.getAddressInitializationBuilder(transaction);
|
|
50
|
+
txBuilder.gas(21000);
|
|
51
|
+
txBuilder.nonce('64248');
|
|
52
|
+
txBuilder.blockRef('0x014ead140e77bbc1');
|
|
53
|
+
txBuilder.expiration(64);
|
|
54
|
+
txBuilder.gasPriceCoef(128);
|
|
55
|
+
txBuilder.contract(testData.FORWARDER_FACTORY_ADDRESS);
|
|
56
|
+
txBuilder.baseAddress(testData.BASE_ADDRESS);
|
|
57
|
+
txBuilder.feeAddress(testData.FEE_ADDRESS);
|
|
58
|
+
txBuilder.initCode(testData.FORWARDER_IMPLEMENTATION_ADDRESS);
|
|
59
|
+
txBuilder.salt(testData.SALT);
|
|
60
|
+
const tx = (await txBuilder.build());
|
|
61
|
+
should_1.default.equal(tx.gas, 21000);
|
|
62
|
+
should_1.default.equal(tx.nonce, '64248');
|
|
63
|
+
should_1.default.equal(tx.expiration, 64);
|
|
64
|
+
should_1.default.equal(tx.type, sdk_core_1.TransactionType.AddressInitialization);
|
|
65
|
+
should_1.default.equal(tx.blockRef, '0x014ead140e77bbc1');
|
|
66
|
+
should_1.default.equal(tx.clauses.length, 1);
|
|
67
|
+
should_1.default.equal(tx.clauses[0].to, testData.FORWARDER_FACTORY_ADDRESS);
|
|
68
|
+
should_1.default.equal(tx.clauses[0].data, testData.ADDRESS_INITIALIZATION_DATA);
|
|
69
|
+
should_1.default.equal(tx.clauses[0].value, '0x0');
|
|
70
|
+
should_1.default.equal(tx.deployedAddress, testData.FORWARDER_ADDRESS);
|
|
71
|
+
const rawTx = tx.toBroadcastFormat();
|
|
72
|
+
should_1.default.equal(txBuilder.isValidRawTransaction(rawTx), true);
|
|
73
|
+
rawTx.should.equal(testData.ADDRESS_INITIALIZATION_TRANSACTION);
|
|
74
|
+
});
|
|
75
|
+
it('should succeed to validate a valid signablePayload', async function () {
|
|
76
|
+
const transaction = new src_1.AddressInitializationTransaction(statics_1.coins.get('tvet'));
|
|
77
|
+
const txBuilder = factory.getAddressInitializationBuilder(transaction);
|
|
78
|
+
txBuilder.gas(21000);
|
|
79
|
+
txBuilder.nonce('64248');
|
|
80
|
+
txBuilder.blockRef('0x014ead140e77bbc1');
|
|
81
|
+
txBuilder.addFeePayerAddress(testData.feePayer.address);
|
|
82
|
+
txBuilder.expiration(64);
|
|
83
|
+
txBuilder.gasPriceCoef(128);
|
|
84
|
+
txBuilder.contract(testData.FORWARDER_FACTORY_ADDRESS);
|
|
85
|
+
txBuilder.baseAddress(testData.BASE_ADDRESS);
|
|
86
|
+
txBuilder.feeAddress(testData.FEE_ADDRESS);
|
|
87
|
+
txBuilder.initCode(testData.FORWARDER_IMPLEMENTATION_ADDRESS);
|
|
88
|
+
txBuilder.salt(testData.SALT);
|
|
89
|
+
const tx = (await txBuilder.build());
|
|
90
|
+
const signablePayload = tx.signablePayload;
|
|
91
|
+
should_1.default.equal(signablePayload.toString('hex'), testData.ADDRESS_INITIALIZATION_SIGNABLE_PAYLOAD);
|
|
92
|
+
});
|
|
93
|
+
it('should build a unsigned tx and validate its toJson', async function () {
|
|
94
|
+
const transaction = new src_1.AddressInitializationTransaction(statics_1.coins.get('tvet'));
|
|
95
|
+
const txBuilder = factory.getAddressInitializationBuilder(transaction);
|
|
96
|
+
txBuilder.gas(21000);
|
|
97
|
+
txBuilder.nonce('64248');
|
|
98
|
+
txBuilder.blockRef('0x014ead140e77bbc1');
|
|
99
|
+
txBuilder.addFeePayerAddress(testData.feePayer.address);
|
|
100
|
+
txBuilder.expiration(64);
|
|
101
|
+
txBuilder.gasPriceCoef(128);
|
|
102
|
+
txBuilder.contract(testData.FORWARDER_FACTORY_ADDRESS);
|
|
103
|
+
txBuilder.baseAddress(testData.BASE_ADDRESS);
|
|
104
|
+
txBuilder.feeAddress(testData.FEE_ADDRESS);
|
|
105
|
+
txBuilder.initCode(testData.FORWARDER_IMPLEMENTATION_ADDRESS);
|
|
106
|
+
txBuilder.salt(testData.SALT);
|
|
107
|
+
const tx = (await txBuilder.build());
|
|
108
|
+
const toJson = tx.toJson();
|
|
109
|
+
should_1.default.equal(toJson.nonce, '64248');
|
|
110
|
+
should_1.default.equal(toJson.gas, 21000);
|
|
111
|
+
should_1.default.equal(toJson.gasPriceCoef, 128);
|
|
112
|
+
should_1.default.equal(toJson.expiration, 64);
|
|
113
|
+
should_1.default.equal(toJson.data, testData.ADDRESS_INITIALIZATION_DATA);
|
|
114
|
+
should_1.default.equal(toJson.to, testData.FORWARDER_FACTORY_ADDRESS);
|
|
115
|
+
should_1.default.equal(toJson.deployedAddress, testData.FORWARDER_ADDRESS);
|
|
116
|
+
should_1.default.equal(toJson.value, '0');
|
|
117
|
+
});
|
|
118
|
+
it('should build properly from serialized', async () => {
|
|
119
|
+
const txBuilder = factory.from(testData.SERIALIZED_SIGNED_ADDRESS_INIT_TX);
|
|
120
|
+
const signedTx = await txBuilder.build();
|
|
121
|
+
const signedtxJson = signedTx.toJson();
|
|
122
|
+
should_1.default.equal(signedtxJson.gas, 150000);
|
|
123
|
+
txBuilder.gas(180000);
|
|
124
|
+
const tx = await txBuilder.build();
|
|
125
|
+
const txJson = tx.toJson();
|
|
126
|
+
should_1.default.equal(txJson.to, testData.FORWARDER_FACTORY_ADDRESS);
|
|
127
|
+
should_1.default.equal(txJson.gas, 180000);
|
|
128
|
+
console.log('txJson:', txJson);
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
describe('Fail', () => {
|
|
132
|
+
it('should fail if invalid params are used to build a tx', async function () {
|
|
133
|
+
const transaction = new src_1.AddressInitializationTransaction(statics_1.coins.get('tvet'));
|
|
134
|
+
const txBuilder = factory.getAddressInitializationBuilder(transaction);
|
|
135
|
+
(0, should_1.default)(() => txBuilder.baseAddress('randomString')).throwError('Invalid address randomString');
|
|
136
|
+
(0, should_1.default)(() => txBuilder.contract('randomString')).throwError('Invalid address randomString');
|
|
137
|
+
(0, should_1.default)(() => txBuilder.feeAddress('randomString')).throwError('Invalid address randomString');
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Rlc3QvdHJhbnNhY3Rpb25CdWlsZGVyL2FkZHJlc3NJbml0aWFsaXphdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxvREFBNEI7QUFDNUIsbURBQXVEO0FBQ3ZELGlEQUE0QztBQUM1QywyREFBNkM7QUFDN0MsbUNBQXFHO0FBRXJHLFFBQVEsQ0FBQyxvQ0FBb0MsRUFBRSxHQUFHLEVBQUU7SUFDbEQsTUFBTSxPQUFPLEdBQUcsSUFBSSwrQkFBeUIsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDakUsUUFBUSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUU7UUFDdkIsRUFBRSxDQUFDLG9EQUFvRCxFQUFFLEtBQUs7WUFDNUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxzQ0FBZ0MsQ0FBQyxlQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDNUUsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLCtCQUErQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3ZFLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN6QixTQUFTLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLENBQUM7WUFDekMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUN6QixTQUFTLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzVCLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLHlCQUF5QixDQUFDLENBQUM7WUFDdkQsU0FBUyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFD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Q0FBQztZQUM1RixJQUFBLGdCQUFNLEVBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQ2hHLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzaG91bGQgZnJvbSAnc2hvdWxkJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IGNvaW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgKiBhcyB0ZXN0RGF0YSBmcm9tICcuLi9yZXNvdXJjZXMvdmV0JztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksIFRyYW5zYWN0aW9uLCBBZGRyZXNzSW5pdGlhbGl6YXRpb25UcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL3NyYyc7XG5cbmRlc2NyaWJlKCdBZGRyZXNzIEluaXRpYWxpc2F0aW9uIFRyYW5zYWN0aW9uJywgKCkgPT4ge1xuICBjb25zdCBmYWN0b3J5ID0gbmV3IFRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkoY29pbnMuZ2V0KCd0dmV0JykpO1xuICBkZXNjcmliZSgnU3VjY2VlZCcsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIGJ1aWxkIGFuIGFkZHJlc3MgaW5pdGlhbGlzYXRpb24gdHJhbnNhY3Rpb24nLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCB0cmFuc2FjdGlvbiA9IG5ldyBBZGRyZXNzSW5pdGlhbGl6YXRpb25UcmFuc2FjdGlvbihjb2lucy5nZXQoJ3R2ZXQnKSk7XG4gICAgICBjb25zdCB0eEJ1aWxkZXIgPSBmYWN0b3J5LmdldEFkZHJlc3NJbml0aWFsaXphdGlvbkJ1aWxkZXIodHJhbnNhY3Rpb24pO1xuICAgICAgdHhCdWlsZGVyLmdhcygyMTAwMCk7XG4gICAgICB0eEJ1aWxkZXIubm9uY2UoJzY0MjQ4Jyk7XG4gICAgICB0eEJ1aWxkZXIuYmxvY2tSZWYoJzB4MDE0ZWFkMTQwZTc3YmJjMScpO1xuICAgICAgdHhCdWlsZGVyLmV4cGlyYXRpb24oNjQpO1xuICAgICAgdHhCdWlsZGVyLmdhc1ByaWNlQ29lZigxMjgpO1xuICAgICAgdHhCdWlsZGVyLmNvbnRyYWN0KHRlc3REYXRhLkZPUldBUkRFUl9GQUNUT1JZX0FERFJFU1MpO1xuICAgICAgdHhCdWlsZGVyLmJhc2VBZGRyZXNzKHRlc3REYXRhLkJBU0VfQUREUkVTUyk7XG4gICAgICB0eEJ1aWxkZXIuZmVlQWRkcmVzcyh0ZXN0RGF0YS5GRUVfQUREUkVTUyk7XG4gICAgICB0eEJ1aWxkZXIuaW5pdENvZGUodGVzdERhdGEuRk9SV0FSREVSX0lNUExFTUVOVEFUSU9OX0FERFJFU1MpO1xuICAgICAgdHhCdWlsZGVyLnNhbHQodGVzdERhdGEuU0FMVCk7XG4gICAgICBjb25zdCB0eCA9IChhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKSkgYXMgQWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb247XG4gICAgICBzaG91bGQuZXF1YWwodHguZ2FzLCAyMTAwMCk7XG4gICAgICBzaG91bGQuZXF1YWwodHgubm9uY2UsICc2NDI0OCcpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4LmV4cGlyYXRpb24sIDY0KTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eC50eXBlLCBUcmFuc2FjdGlvblR5cGUuQWRkcmVzc0luaXRpYWxpemF0aW9uKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eC5ibG9ja1JlZiwgJzB4MDE0ZWFkMTQwZTc3YmJjMScpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4LmNsYXVzZXMubGVuZ3RoLCAxKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eC5jbGF1c2VzWzBdLnRvLCB0ZXN0RGF0YS5GT1JXQVJERVJfRkFDVE9SWV9BRERSRVNTKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eC5jbGF1c2VzWzBdLmRhdGEsIHRlc3REYXRhLkFERFJFU1NfSU5JVElBTElaQVRJT05fREFUQSk7XG4gICAgICBzaG91bGQuZXF1YWwodHguY2xhdXNlc1swXS52YWx1ZSwgJzB4MCcpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4LmRlcGxveWVkQWRkcmVzcywgdGVzdERhdGEuRk9SV0FSREVSX0FERFJFU1MpO1xuICAgICAgY29uc3QgcmF3VHggPSB0eC50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4QnVpbGRlci5pc1ZhbGlkUmF3VHJhbnNhY3Rpb24ocmF3VHgpLCB0cnVlKTtcbiAgICAgIHJhd1R4LnNob3VsZC5lcXVhbCh0ZXN0RGF0YS5BRERSRVNTX0lOSVRJQUxJWkFUSU9OX1RSQU5TQUNUSU9OKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgc3VjY2VlZCB0byB2YWxpZGF0ZSBhIHZhbGlkIHNpZ25hYmxlUGF5bG9hZCcsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbmV3IEFkZHJlc3NJbml0aWFsaXphdGlvblRyYW5zYWN0aW9uKGNvaW5zLmdldCgndHZldCcpKTtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IGZhY3RvcnkuZ2V0QWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlcih0cmFuc2FjdGlvbik7XG4gICAgICB0eEJ1aWxkZXIuZ2FzKDIxMDAwKTtcbiAgICAgIHR4QnVpbGRlci5ub25jZSgnNjQyNDgnKTtcbiAgICAgIHR4QnVpbGRlci5ibG9ja1JlZignMHgwMTRlYWQxNDBlNzdiYmMxJyk7XG4gICAgICB0eEJ1aWxkZXIuYWRkRmVlUGF5ZXJBZGRyZXNzKHRlc3REYXRhLmZlZVBheWVyLmFkZHJlc3MpO1xuICAgICAgdHhCdWlsZGVyLmV4cGlyYXRpb24oNjQpO1xuICAgICAgdHhCdWlsZGVyLmdhc1ByaWNlQ29lZigxMjgpO1xuICAgICAgdHhCdWlsZGVyLmNvbnRyYWN0KHRlc3REYXRhLkZPUldBUkRFUl9GQUNUT1JZX0FERFJFU1MpO1xuICAgICAgdHhCdWlsZGVyLmJhc2VBZGRyZXNzKHRlc3REYXRhLkJBU0VfQUREUkVTUyk7XG4gICAgICB0eEJ1aWxkZXIuZmVlQWRkcmVzcyh0ZXN0RGF0YS5GRUVfQUREUkVTUyk7XG4gICAgICB0eEJ1aWxkZXIuaW5pdENvZGUodGVzdERhdGEuRk9SV0FSREVSX0lNUExFTUVOVEFUSU9OX0FERFJFU1MpO1xuICAgICAgdHhCdWlsZGVyLnNhbHQodGVzdERhdGEuU0FMVCk7XG4gICAgICBjb25zdCB0eCA9IChhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKSkgYXMgVHJhbnNhY3Rpb247XG4gICAgICBjb25zdCBzaWduYWJsZVBheWxvYWQgPSB0eC5zaWduYWJsZVBheWxvYWQ7XG4gICAgICBzaG91bGQuZXF1YWwoc2lnbmFibGVQYXlsb2FkLnRvU3RyaW5nKCdoZXgnKSwgdGVzdERhdGEuQUREUkVTU19JTklUSUFMSVpBVElPTl9TSUdOQUJMRV9QQVlMT0FEKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgYnVpbGQgYSB1bnNpZ25lZCB0eCBhbmQgdmFsaWRhdGUgaXRzIHRvSnNvbicsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gbmV3IEFkZHJlc3NJbml0aWFsaXphdGlvblRyYW5zYWN0aW9uKGNvaW5zLmdldCgndHZldCcpKTtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IGZhY3RvcnkuZ2V0QWRkcmVzc0luaXRpYWxpemF0aW9uQnVpbGRlcih0cmFuc2FjdGlvbik7XG4gICAgICB0eEJ1aWxkZXIuZ2FzKDIxMDAwKTtcbiAgICAgIHR4QnVpbGRlci5ub25jZSgnNjQyNDgnKTtcbiAgICAgIHR4QnVpbGRlci5ibG9ja1JlZignMHgwMTRlYWQxNDBlNzdiYmMxJyk7XG4gICAgICB0eEJ1aWxkZXIuYWRkRmVlUGF5ZXJBZGRyZXNzKHRlc3REYXRhLmZlZVBheWVyLmFkZHJlc3MpO1xuICAgICAgdHhCdWlsZGVyLmV4cGlyYXRpb24oNjQpO1xuICAgICAgdHhCdWlsZGVyLmdhc1ByaWNlQ29lZigxMjgpO1xuICAgICAgdHhCdWlsZGVyLmNvbnRyYWN0KHRlc3REYXRhLkZPUldBUkRFUl9GQUNUT1JZX0FERFJFU1MpO1xuICAgICAgdHhCdWlsZGVyLmJhc2VBZGRyZXNzKHRlc3REYXRhLkJBU0VfQUREUkVTUyk7XG4gICAgICB0eEJ1aWxkZXIuZmVlQWRkcmVzcyh0ZXN0RGF0YS5GRUVfQUREUkVTUyk7XG4gICAgICB0eEJ1aWxkZXIuaW5pdENvZGUodGVzdERhdGEuRk9SV0FSREVSX0lNUExFTUVOVEFUSU9OX0FERFJFU1MpO1xuICAgICAgdHhCdWlsZGVyLnNhbHQodGVzdERhdGEuU0FMVCk7XG5cbiAgICAgIGNvbnN0IHR4ID0gKGF3YWl0IHR4QnVpbGRlci5idWlsZCgpKSBhcyBUcmFuc2FjdGlvbjtcbiAgICAgIGNvbnN0IHRvSnNvbiA9IHR4LnRvSnNvbigpO1xuICAgICAgc2hvdWxkLmVxdWFsKHRvSnNvbi5ub25jZSwgJzY0MjQ4Jyk7XG4gICAgICBzaG91bGQuZXF1YWwodG9Kc29uLmdhcywgMjEwMDApO1xuICAgICAgc2hvdWxkLmVxdWFsKHRvSnNvbi5nYXNQcmljZUNvZWYsIDEyOCk7XG4gICAgICBzaG91bGQuZXF1YWwodG9Kc29uLmV4cGlyYXRpb24sIDY0KTtcbiAgICAgIHNob3VsZC5lcXVhbCh0b0pzb24uZGF0YSwgdGVzdERhdGEuQUREUkVTU19JTklUSUFMSVpBVElPTl9EQVRBKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0b0pzb24udG8sIHRlc3REYXRhLkZPUldBUkRFUl9GQUNUT1JZX0FERFJFU1MpO1xuICAgICAgc2hvdWxkLmVxdWFsKHRvSnNvbi5kZXBsb3llZEFkZHJlc3MsIHRlc3REYXRhLkZPUldBUkRFUl9BRERSRVNTKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0b0pzb24udmFsdWUsICcwJyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIGJ1aWxkIHByb3Blcmx5IGZyb20gc2VyaWFsaXplZCcsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IHR4QnVpbGRlciA9IGZhY3RvcnkuZnJvbSh0ZXN0RGF0YS5TRVJJQUxJWkVEX1NJR05FRF9BRERSRVNTX0lOSVRfVFgpO1xuICAgICAgY29uc3Qgc2lnbmVkVHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcbiAgICAgIGNvbnN0IHNpZ25lZHR4SnNvbiA9IHNpZ25lZFR4LnRvSnNvbigpO1xuICAgICAgc2hvdWxkLmVxdWFsKHNpZ25lZHR4SnNvbi5nYXMsIDE1MDAwMCk7XG5cbiAgICAgIHR4QnVpbGRlci5nYXMoMTgwMDAwKTtcbiAgICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG4gICAgICBjb25zdCB0eEpzb24gPSB0eC50b0pzb24oKTtcbiAgICAgIHNob3VsZC5lcXVhbCh0eEpzb24udG8sIHRlc3REYXRhLkZPUldBUkRFUl9GQUNUT1JZX0FERFJFU1MpO1xuICAgICAgc2hvdWxkLmVxdWFsKHR4SnNvbi5nYXMsIDE4MDAwMCk7XG4gICAgICBjb25zb2xlLmxvZygndHhKc29uOicsIHR4SnNvbik7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdGYWlsJywgKCkgPT4ge1xuICAgIGl0KCdzaG91bGQgZmFpbCBpZiBpbnZhbGlkIHBhcmFtcyBhcmUgdXNlZCB0byBidWlsZCBhIHR4JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgdHJhbnNhY3Rpb24gPSBuZXcgQWRkcmVzc0luaXRpYWxpemF0aW9uVHJhbnNhY3Rpb24oY29pbnMuZ2V0KCd0dmV0JykpO1xuICAgICAgY29uc3QgdHhCdWlsZGVyID0gZmFjdG9yeS5nZXRBZGRyZXNzSW5pdGlhbGl6YXRpb25CdWlsZGVyKHRyYW5zYWN0aW9uKTtcblxuICAgICAgc2hvdWxkKCgpID0+IHR4QnVpbGRlci5iYXNlQWRkcmVzcygncmFuZG9tU3RyaW5nJykpLnRocm93RXJyb3IoJ0ludmFsaWQgYWRkcmVzcyByYW5kb21TdHJpbmcnKTtcbiAgICAgIHNob3VsZCgoKSA9PiB0eEJ1aWxkZXIuY29udHJhY3QoJ3JhbmRvbVN0cmluZycpKS50aHJvd0Vycm9yKCdJbnZhbGlkIGFkZHJlc3MgcmFuZG9tU3RyaW5nJyk7XG4gICAgICBzaG91bGQoKCkgPT4gdHhCdWlsZGVyLmZlZUFkZHJlc3MoJ3JhbmRvbVN0cmluZycpKS50aHJvd0Vycm9yKCdJbnZhbGlkIGFkZHJlc3MgcmFuZG9tU3RyaW5nJyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
|