@rosen-bridge/rosen-extractor 3.3.0 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/getRosenData/abstract/AbstractRosenDataExtractor.d.ts +13 -9
- package/dist/lib/getRosenData/abstract/types.d.ts +13 -13
- package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts +22 -20
- package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.d.ts.map +1 -1
- package/dist/lib/getRosenData/bitcoin/BitcoinEsploraRosenExtractor.js +4 -42
- package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts +28 -0
- package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/bitcoin/BitcoinRosenExtractor.js +94 -0
- package/dist/lib/getRosenData/bitcoin/types.d.ts +48 -34
- package/dist/lib/getRosenData/bitcoin/types.d.ts.map +1 -1
- package/dist/lib/getRosenData/bitcoin/types.js +1 -1
- package/dist/lib/getRosenData/bitcoin/utils.d.ts +7 -0
- package/dist/lib/getRosenData/bitcoin/utils.d.ts.map +1 -0
- package/dist/lib/getRosenData/bitcoin/utils.js +41 -0
- package/dist/lib/getRosenData/cardano/CardanoBlockFrostRosenExtractor.d.ts +15 -12
- package/dist/lib/getRosenData/cardano/CardanoGraphQLRosenExtractor.d.ts +15 -12
- package/dist/lib/getRosenData/cardano/CardanoKoiosRosenExtractor.d.ts +15 -12
- package/dist/lib/getRosenData/cardano/CardanoOgmiosRosenExtractor.d.ts +15 -12
- package/dist/lib/getRosenData/cardano/CardanoRosenExtractor.d.ts +15 -12
- package/dist/lib/getRosenData/cardano/types.d.ts +110 -90
- package/dist/lib/getRosenData/const.d.ts +2 -0
- package/dist/lib/getRosenData/const.d.ts.map +1 -1
- package/dist/lib/getRosenData/const.js +9 -2
- package/dist/lib/getRosenData/ergo/ErgoNodeRosenExtractor.d.ts +21 -14
- package/dist/lib/getRosenData/ergo/ErgoRosenExtractor.d.ts +12 -8
- package/dist/lib/getRosenData/ergo/types.d.ts +24 -24
- package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts +26 -0
- package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.d.ts.map +1 -0
- package/dist/lib/getRosenData/evm/EvmRpcRosenExtractor.js +118 -0
- package/dist/lib/getRosenData/evm/utils.d.ts +13 -0
- package/dist/lib/getRosenData/evm/utils.d.ts.map +1 -0
- package/dist/lib/getRosenData/evm/utils.js +31 -0
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +3 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import AbstractRosenDataExtractor from '../abstract/AbstractRosenDataExtractor';
|
|
2
|
+
import { parseRosenData } from './utils';
|
|
3
|
+
export class EvmRpcRosenExtractor extends AbstractRosenDataExtractor {
|
|
4
|
+
chain;
|
|
5
|
+
nativeToken;
|
|
6
|
+
constructor(lockAddress, tokens, chain, nativeToken, logger) {
|
|
7
|
+
super(lockAddress, tokens, logger);
|
|
8
|
+
this.chain = chain;
|
|
9
|
+
this.nativeToken = nativeToken;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* extracts RosenData from given lock transaction in RPC format
|
|
13
|
+
* cheks:
|
|
14
|
+
* Native token transfer:
|
|
15
|
+
* 1. `to` must be the lock address
|
|
16
|
+
* 2. the entire calldata must represent a valid CallDataRosenData
|
|
17
|
+
* ERC20 transfer:
|
|
18
|
+
* 1. `to` address is one of the supported assets
|
|
19
|
+
* 2. first four bytes of the call data indicate `transfer` function call: a9059cbb
|
|
20
|
+
* 3. bytes from 5 to 37 must be the lock address
|
|
21
|
+
* 4. bytes from 37 to 69 show the amount
|
|
22
|
+
* 5. bytes after 69 must represnt a valid CallDataRosenData
|
|
23
|
+
* @param transaction the lock transaction in RPC format
|
|
24
|
+
*/
|
|
25
|
+
get = (transaction) => {
|
|
26
|
+
const baseError = `No rosen data found for tx [${transaction.hash}]`;
|
|
27
|
+
try {
|
|
28
|
+
if (transaction.to == null) {
|
|
29
|
+
this.logger.debug(baseError + `: 'to' address is empty.`);
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
let rosenData;
|
|
33
|
+
const callData = transaction.data.substring(2);
|
|
34
|
+
let token;
|
|
35
|
+
let rosenDataRaw;
|
|
36
|
+
let tokenAddress;
|
|
37
|
+
let amount;
|
|
38
|
+
let sourceTokenId, targetTokenId;
|
|
39
|
+
if (transaction.to == this.lockAddress) {
|
|
40
|
+
// transaction must be a native token transfer
|
|
41
|
+
rosenDataRaw = callData;
|
|
42
|
+
tokenAddress = this.nativeToken;
|
|
43
|
+
amount = transaction.value.toString();
|
|
44
|
+
const tokens = this.tokens.search(this.chain, {
|
|
45
|
+
[this.tokens.getIdKey(this.chain)]: this.nativeToken,
|
|
46
|
+
});
|
|
47
|
+
if (tokens.length == 1) {
|
|
48
|
+
sourceTokenId = this.nativeToken;
|
|
49
|
+
token = tokens[0];
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
this.logger.debug(baseError +
|
|
53
|
+
`: native token [${this.nativeToken}] is not available in source chian's tokens map.`);
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
// transaction must be an ERC-20 token transfer
|
|
59
|
+
if (callData.substring(0, 8) != 'a9059cbb') {
|
|
60
|
+
this.logger.debug(baseError + `: Not a valid ERC20 transfer transaction.`);
|
|
61
|
+
return undefined;
|
|
62
|
+
}
|
|
63
|
+
if (BigInt('0x' + callData.substring(8, 72)).toString(16) !=
|
|
64
|
+
this.lockAddress.substring(2)) {
|
|
65
|
+
this.logger.debug(baseError + `: 'to' address is not the lock address.`);
|
|
66
|
+
return undefined;
|
|
67
|
+
}
|
|
68
|
+
amount = BigInt('0x' + callData.slice(72, 72 + 64)).toString();
|
|
69
|
+
rosenDataRaw = callData.substring(72 + 64);
|
|
70
|
+
tokenAddress = transaction.to;
|
|
71
|
+
const tokens = this.tokens.search(this.chain, {
|
|
72
|
+
[this.tokens.getIdKey(this.chain)]: tokenAddress,
|
|
73
|
+
});
|
|
74
|
+
if (tokens.length != 1) {
|
|
75
|
+
this.logger.debug(baseError +
|
|
76
|
+
`: token [${tokenAddress}] is not supported on chain: [${this.chain}].`);
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
token = tokens[0];
|
|
80
|
+
sourceTokenId = tokenAddress;
|
|
81
|
+
}
|
|
82
|
+
try {
|
|
83
|
+
rosenData = parseRosenData(rosenDataRaw);
|
|
84
|
+
}
|
|
85
|
+
catch (e) {
|
|
86
|
+
this.logger.debug(baseError + `: Failed to extract data from call data: ${e}`);
|
|
87
|
+
return undefined;
|
|
88
|
+
}
|
|
89
|
+
try {
|
|
90
|
+
targetTokenId = this.tokens.getID(token, rosenData.toChain);
|
|
91
|
+
}
|
|
92
|
+
catch (e) {
|
|
93
|
+
this.logger.debug(baseError +
|
|
94
|
+
`: token [${tokenAddress}] is not supported on chain: [${rosenData.toChain}].`);
|
|
95
|
+
return undefined;
|
|
96
|
+
}
|
|
97
|
+
return {
|
|
98
|
+
toChain: rosenData.toChain,
|
|
99
|
+
toAddress: rosenData.toAddress,
|
|
100
|
+
bridgeFee: rosenData.bridgeFee,
|
|
101
|
+
networkFee: rosenData.networkFee,
|
|
102
|
+
fromAddress: transaction.from,
|
|
103
|
+
sourceChainTokenId: sourceTokenId,
|
|
104
|
+
amount: amount,
|
|
105
|
+
targetChainTokenId: targetTokenId,
|
|
106
|
+
sourceTxId: transaction.hash,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
catch (e) {
|
|
110
|
+
this.logger.debug(`An error occurred while getting EVM rosen data from RPC: ${e}`);
|
|
111
|
+
if (e instanceof Error && e.stack) {
|
|
112
|
+
this.logger.debug(e.stack);
|
|
113
|
+
}
|
|
114
|
+
return undefined;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXZtUnBjUm9zZW5FeHRyYWN0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS9Fdm1ScGNSb3NlbkV4dHJhY3Rvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLDBCQUEwQixNQUFNLHdDQUF3QyxDQUFDO0FBSWhGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFekMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLDBCQUErQztJQUM3RSxLQUFLLENBQVM7SUFDZCxXQUFXLENBQVM7SUFFOUIsWUFDRSxXQUFtQixFQUNuQixNQUFtQixFQUNuQixLQUFhLEVBQ2IsV0FBbUIsRUFDbkIsTUFBdUI7UUFFdkIsS0FBSyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7O09BYUc7SUFDSCxHQUFHLEdBQUcsQ0FBQyxXQUFnQyxFQUF5QixFQUFFO1FBQ2hFLE1BQU0sU0FBUyxHQUFHLCtCQUErQixXQUFXLENBQUMsSUFBSSxHQUFHLENBQUM7UUFDckUsSUFBSTtZQUNGLElBQUksV0FBVyxDQUFDLEVBQUUsSUFBSSxJQUFJLEVBQUU7Z0JBQzFCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFNBQVMsR0FBRywwQkFBMEIsQ0FBQyxDQUFDO2dCQUMxRCxPQUFPLFNBQVMsQ0FBQzthQUNsQjtZQUNELElBQUksU0FBUyxDQUFDO1lBQ2QsTUFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0MsSUFBSSxLQUFzQyxDQUFDO1lBQzNDLElBQUksWUFBWSxDQUFDO1lBQ2pCLElBQUksWUFBWSxDQUFDO1lB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YnN0cmFjdC90eXBlcyc7XG5pbXBvcnQgQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3IgZnJvbSAnLi4vYWJzdHJhY3QvQWJzdHJhY3RSb3NlbkRhdGFFeHRyYWN0b3InO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25SZXNwb25zZSB9IGZyb20gJ2V0aGVycyc7XG5pbXBvcnQgeyBSb3NlblRva2VucywgUm9zZW5DaGFpblRva2VuIH0gZnJvbSAnQHJvc2VuLWJyaWRnZS90b2tlbnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RMb2dnZXIgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2Fic3RyYWN0LWxvZ2dlcic7XG5pbXBvcnQgeyBwYXJzZVJvc2VuRGF0YSB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgRXZtUnBjUm9zZW5FeHRyYWN0b3IgZXh0ZW5kcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvcjxUcmFuc2FjdGlvblJlc3BvbnNlPiB7XG4gIHByb3RlY3RlZCBjaGFpbjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgbmF0aXZlVG9rZW46IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBsb2NrQWRkcmVzczogc3RyaW5nLFxuICAgIHRva2VuczogUm9zZW5Ub2tlbnMsXG4gICAgY2hhaW46IHN0cmluZyxcbiAgICBuYXRpdmVUb2tlbjogc3RyaW5nLFxuICAgIGxvZ2dlcj86IEFic3RyYWN0TG9nZ2VyXG4gICkge1xuICAgIHN1cGVyKGxvY2tBZGRyZXNzLCB0b2tlbnMsIGxvZ2dlcik7XG4gICAgdGhpcy5jaGFpbiA9IGNoYWluO1xuICAgIHRoaXMubmF0aXZlVG9rZW4gPSBuYXRpdmVUb2tlbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBleHRyYWN0cyBSb3NlbkRhdGEgZnJvbSBnaXZlbiBsb2NrIHRyYW5zYWN0aW9uIGluIFJQQyBmb3JtYXRcbiAgICogY2hla3M6XG4gICAqICAgICBOYXRpdmUgdG9rZW4gdHJhbnNmZXI6XG4gICAqICAgICAgICAgMS4gYHRvYCBtdXN0IGJlIHRoZSBsb2NrIGFkZHJlc3NcbiAgICogICAgICAgICAyLiB0aGUgZW50aXJlIGNhbGxkYXRhIG11c3QgcmVwcmVzZW50IGEgdmFsaWQgQ2FsbERhdGFSb3NlbkRhdGFcbiAgICogICAgIEVSQzIwIHRyYW5zZmVyOlxuICAgKiAgICAgICAgIDEuIGB0b2AgYWRkcmVzcyBpcyBvbmUgb2YgdGhlIHN1cHBvcnRlZCBhc3NldHNcbiAgICogICAgICAgICAyLiBmaXJzdCBmb3VyIGJ5dGVzIG9mIHRoZSBjYWxsIGRhdGEgaW5kaWNhdGUgYHRyYW5zZmVyYCBmdW5jdGlvbiBjYWxsOiBhOTA1OWNiYlxuICAgKiAgICAgICAgIDMuIGJ5dGVzIGZyb20gNSB0byAzNyBtdXN0IGJlIHRoZSBsb2NrIGFkZHJlc3NcbiAgICogICAgICAgICA0LiBieXRlcyBmcm9tIDM3IHRvIDY5IHNob3cgdGhlIGFtb3VudFxuICAgKiAgICAgICAgIDUuIGJ5dGVzIGFmdGVyIDY5IG11c3QgcmVwcmVzbnQgYSB2YWxpZCBDYWxsRGF0YVJvc2VuRGF0YVxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gdGhlIGxvY2sgdHJhbnNhY3Rpb24gaW4gUlBDIGZvcm1hdFxuICAgKi9cbiAgZ2V0ID0gKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvblJlc3BvbnNlKTogUm9zZW5EYXRhIHwgdW5kZWZpbmVkID0+IHtcbiAgICBjb25zdCBiYXNlRXJyb3IgPSBgTm8gcm9zZW4gZGF0YSBmb3VuZCBmb3IgdHggWyR7dHJhbnNhY3Rpb24uaGFzaH1dYDtcbiAgICB0cnkge1xuICAgICAgaWYgKHRyYW5zYWN0aW9uLnRvID09IG51bGwpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoYmFzZUVycm9yICsgYDogJ3RvJyBhZGRyZXNzIGlzIGVtcHR5LmApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgbGV0IHJvc2VuRGF0YTtcbiAgICAgIGNvbnN0IGNhbGxEYXRhID0gdHJhbnNhY3Rpb24uZGF0YS5zdWJzdHJpbmcoMik7XG4gICAgICBsZXQgdG9rZW46IFJlY29yZDxzdHJpbmcsIFJvc2VuQ2hhaW5Ub2tlbj47XG4gICAgICBsZXQgcm9zZW5EYXRhUmF3O1xuICAgICAgbGV0IHRva2VuQWRkcmVzcztcbiAgICAgIGxldCBhbW91bnQ7XG4gICAgICBsZXQgc291cmNlVG9rZW5JZCwgdGFyZ2V0VG9rZW5JZDtcblxuICAgICAgaWYgKHRyYW5zYWN0aW9uLnRvID09IHRoaXMubG9ja0FkZHJlc3MpIHtcbiAgICAgICAgLy8gdHJhbnNhY3Rpb24gbXVzdCBiZSBhIG5hdGl2ZSB0b2tlbiB0cmFuc2ZlclxuICAgICAgICByb3NlbkRhdGFSYXcgPSBjYWxsRGF0YTtcbiAgICAgICAgdG9rZW5BZGRyZXNzID0gdGhpcy5uYXRpdmVUb2tlbjtcbiAgICAgICAgYW1vdW50ID0gdHJhbnNhY3Rpb24udmFsdWUudG9TdHJpbmcoKTtcbiAgICAgICAgY29uc3QgdG9rZW5zID0gdGhpcy50b2tlbnMuc2VhcmNoKHRoaXMuY2hhaW4sIHtcbiAgICAgICAgICBbdGhpcy50b2tlbnMuZ2V0SWRLZXkodGhpcy5jaGFpbildOiB0aGlzLm5hdGl2ZVRva2VuLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRva2Vucy5sZW5ndGggPT0gMSkge1xuICAgICAgICAgIHNvdXJjZVRva2VuSWQgPSB0aGlzLm5hdGl2ZVRva2VuO1xuICAgICAgICAgIHRva2VuID0gdG9rZW5zWzBdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgYmFzZUVycm9yICtcbiAgICAgICAgICAgICAgYDogbmF0aXZlIHRva2VuIFske3RoaXMubmF0aXZlVG9rZW59XSBpcyBub3QgYXZhaWxhYmxlIGluIHNvdXJjZSBjaGlhbidzIHRva2VucyBtYXAuYFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gdHJhbnNhY3Rpb24gbXVzdCBiZSBhbiBFUkMtMjAgdG9rZW4gdHJhbnNmZXJcbiAgICAgICAgaWYgKGNhbGxEYXRhLnN1YnN0cmluZygwLCA4KSAhPSAnYTkwNTljYmInKSB7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgICBiYXNlRXJyb3IgKyBgOiBOb3QgYSB2YWxpZCBFUkMyMCB0cmFuc2ZlciB0cmFuc2FjdGlvbi5gXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9XG4gICAgICAgIGlmIChcbiAgICAgICAgICBCaWdJbnQoJzB4JyArIGNhbGxEYXRhLnN1YnN0cmluZyg4LCA3MikpLnRvU3RyaW5nKDE2KSAhPVxuICAgICAgICAgIHRoaXMubG9ja0FkZHJlc3Muc3Vic3RyaW5nKDIpXG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgYmFzZUVycm9yICsgYDogJ3RvJyBhZGRyZXNzIGlzIG5vdCB0aGUgbG9jayBhZGRyZXNzLmBcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgYW1vdW50ID0gQmlnSW50KCcweCcgKyBjYWxsRGF0YS5zbGljZSg3MiwgNzIgKyA2NCkpLnRvU3RyaW5nKCk7XG4gICAgICAgIHJvc2VuRGF0YVJhdyA9IGNhbGxEYXRhLnN1YnN0cmluZyg3MiArIDY0KTtcbiAgICAgICAgdG9rZW5BZGRyZXNzID0gdHJhbnNhY3Rpb24udG87XG4gICAgICAgIGNvbnN0IHRva2VucyA9IHRoaXMudG9rZW5zLnNlYXJjaCh0aGlzLmNoYWluLCB7XG4gICAgICAgICAgW3RoaXMudG9rZW5zLmdldElkS2V5KHRoaXMuY2hhaW4pXTogdG9rZW5BZGRyZXNzLFxuICAgICAgICB9KTtcbiAgICAgICAgaWYgKHRva2Vucy5sZW5ndGggIT0gMSkge1xuICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICAgYmFzZUVycm9yICtcbiAgICAgICAgICAgICAgYDogdG9rZW4gWyR7dG9rZW5BZGRyZXNzfV0gaXMgbm90IHN1cHBvcnRlZCBvbiBjaGFpbjogWyR7dGhpcy5jaGFpbn1dLmBcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICAgICAgdG9rZW4gPSB0b2tlbnNbMF07XG4gICAgICAgIHNvdXJjZVRva2VuSWQgPSB0b2tlbkFkZHJlc3M7XG4gICAgICB9XG4gICAgICB0cnkge1xuICAgICAgICByb3NlbkRhdGEgPSBwYXJzZVJvc2VuRGF0YShyb3NlbkRhdGFSYXcpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgICBiYXNlRXJyb3IgKyBgOiBGYWlsZWQgdG8gZXh0cmFjdCBkYXRhIGZyb20gY2FsbCBkYXRhOiAke2V9YFxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICB0YXJnZXRUb2tlbklkID0gdGhpcy50b2tlbnMuZ2V0SUQodG9rZW4sIHJvc2VuRGF0YS50b0NoYWluKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgICAgYmFzZUVycm9yICtcbiAgICAgICAgICAgIGA6IHRva2VuIFske3Rva2VuQWRkcmVzc31dIGlzIG5vdCBzdXBwb3J0ZWQgb24gY2hhaW46IFske3Jvc2VuRGF0YS50b0NoYWlufV0uYFxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdG9DaGFpbjogcm9zZW5EYXRhLnRvQ2hhaW4sXG4gICAgICAgIHRvQWRkcmVzczogcm9zZW5EYXRhLnRvQWRkcmVzcyxcbiAgICAgICAgYnJpZGdlRmVlOiByb3NlbkRhdGEuYnJpZGdlRmVlLFxuICAgICAgICBuZXR3b3JrRmVlOiByb3NlbkRhdGEubmV0d29ya0ZlZSxcbiAgICAgICAgZnJvbUFkZHJlc3M6IHRyYW5zYWN0aW9uLmZyb20sXG4gICAgICAgIHNvdXJjZUNoYWluVG9rZW5JZDogc291cmNlVG9rZW5JZCxcbiAgICAgICAgYW1vdW50OiBhbW91bnQsXG4gICAgICAgIHRhcmdldENoYWluVG9rZW5JZDogdGFyZ2V0VG9rZW5JZCxcbiAgICAgICAgc291cmNlVHhJZDogdHJhbnNhY3Rpb24uaGFzaCxcbiAgICAgIH07XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcoXG4gICAgICAgIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBnZXR0aW5nIEVWTSByb3NlbiBkYXRhIGZyb20gUlBDOiAke2V9YFxuICAgICAgKTtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IgJiYgZS5zdGFjaykge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhlLnN0YWNrKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
interface CallDataRosenData {
|
|
2
|
+
toChain: string;
|
|
3
|
+
toAddress: string;
|
|
4
|
+
bridgeFee: string;
|
|
5
|
+
networkFee: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* extracts rosen data from transaction's remaining call data
|
|
9
|
+
* @param scriptPubKeyHex
|
|
10
|
+
*/
|
|
11
|
+
export declare const parseRosenData: (callData: string) => CallDataRosenData;
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../lib/getRosenData/evm/utils.ts"],"names":[],"mappings":"AAGA,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,aAAc,MAAM,KAAG,iBA+BjD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { SUPPORTED_CHAINS } from './../const';
|
|
2
|
+
import { decodeAddress } from '@rosen-bridge/address-codec';
|
|
3
|
+
/**
|
|
4
|
+
* extracts rosen data from transaction's remaining call data
|
|
5
|
+
* @param scriptPubKeyHex
|
|
6
|
+
*/
|
|
7
|
+
export const parseRosenData = (callData) => {
|
|
8
|
+
const toChainHex = callData.slice(0, 2);
|
|
9
|
+
const toChainCode = parseInt(toChainHex, 16);
|
|
10
|
+
if (toChainCode >= SUPPORTED_CHAINS.length) {
|
|
11
|
+
throw Error(`invalid toChain code, found [${toChainCode}] but only [${SUPPORTED_CHAINS.length}] chains are supported`);
|
|
12
|
+
}
|
|
13
|
+
const toChain = SUPPORTED_CHAINS[toChainCode];
|
|
14
|
+
// parse bridgeFee
|
|
15
|
+
const bridgeFeeHex = callData.slice(2, 18);
|
|
16
|
+
const bridgeFee = BigInt('0x' + bridgeFeeHex).toString();
|
|
17
|
+
// parse networkFee
|
|
18
|
+
const networkFeeHex = callData.slice(18, 34);
|
|
19
|
+
const networkFee = BigInt('0x' + networkFeeHex).toString();
|
|
20
|
+
// parse toAddress
|
|
21
|
+
const addressLengthCode = callData.slice(34, 36);
|
|
22
|
+
const addressHex = callData.slice(36, 36 + parseInt(addressLengthCode, 16) * 2);
|
|
23
|
+
const toAddress = decodeAddress(toChain, addressHex);
|
|
24
|
+
return {
|
|
25
|
+
toChain,
|
|
26
|
+
toAddress,
|
|
27
|
+
bridgeFee,
|
|
28
|
+
networkFee,
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvZ2V0Um9zZW5EYXRhL2V2bS91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBUzVEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLFFBQWdCLEVBQXFCLEVBQUU7SUFDcEUsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEMsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUM3QyxJQUFJLFdBQVcsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUU7UUFDMUMsTUFBTSxLQUFLLENBQ1QsZ0NBQWdDLFdBQVcsZUFBZSxnQkFBZ0IsQ0FBQyxNQUFNLHdCQUF3QixDQUMxRyxDQUFDO0tBQ0g7SUFDRCxNQUFNLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM5QyxrQkFBa0I7SUFDbEIsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDM0MsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxZQUFZLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUV6RCxtQkFBbUI7SUFDbkIsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0MsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxhQUFhLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUUzRCxrQkFBa0I7SUFDbEIsTUFBTSxpQkFBaUIsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqRCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUMvQixFQUFFLEVBQ0YsRUFBRSxHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQ3pDLENBQUM7SUFDRixNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBRXJELE9BQU87UUFDTCxPQUFPO1FBQ1AsU0FBUztRQUNULFNBQVM7UUFDVCxVQUFVO0tBQ1gsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNVUFBPUlRFRF9DSEFJTlMgfSBmcm9tICcuLy4uL2NvbnN0JztcbmltcG9ydCB7IGRlY29kZUFkZHJlc3MgfSBmcm9tICdAcm9zZW4tYnJpZGdlL2FkZHJlc3MtY29kZWMnO1xuXG5pbnRlcmZhY2UgQ2FsbERhdGFSb3NlbkRhdGEge1xuICB0b0NoYWluOiBzdHJpbmc7XG4gIHRvQWRkcmVzczogc3RyaW5nO1xuICBicmlkZ2VGZWU6IHN0cmluZztcbiAgbmV0d29ya0ZlZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIGV4dHJhY3RzIHJvc2VuIGRhdGEgZnJvbSB0cmFuc2FjdGlvbidzIHJlbWFpbmluZyBjYWxsIGRhdGFcbiAqIEBwYXJhbSBzY3JpcHRQdWJLZXlIZXhcbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlUm9zZW5EYXRhID0gKGNhbGxEYXRhOiBzdHJpbmcpOiBDYWxsRGF0YVJvc2VuRGF0YSA9PiB7XG4gIGNvbnN0IHRvQ2hhaW5IZXggPSBjYWxsRGF0YS5zbGljZSgwLCAyKTtcbiAgY29uc3QgdG9DaGFpbkNvZGUgPSBwYXJzZUludCh0b0NoYWluSGV4LCAxNik7XG4gIGlmICh0b0NoYWluQ29kZSA+PSBTVVBQT1JURURfQ0hBSU5TLmxlbmd0aCkge1xuICAgIHRocm93IEVycm9yKFxuICAgICAgYGludmFsaWQgdG9DaGFpbiBjb2RlLCBmb3VuZCBbJHt0b0NoYWluQ29kZX1dIGJ1dCBvbmx5IFske1NVUFBPUlRFRF9DSEFJTlMubGVuZ3RofV0gY2hhaW5zIGFyZSBzdXBwb3J0ZWRgXG4gICAgKTtcbiAgfVxuICBjb25zdCB0b0NoYWluID0gU1VQUE9SVEVEX0NIQUlOU1t0b0NoYWluQ29kZV07XG4gIC8vIHBhcnNlIGJyaWRnZUZlZVxuICBjb25zdCBicmlkZ2VGZWVIZXggPSBjYWxsRGF0YS5zbGljZSgyLCAxOCk7XG4gIGNvbnN0IGJyaWRnZUZlZSA9IEJpZ0ludCgnMHgnICsgYnJpZGdlRmVlSGV4KS50b1N0cmluZygpO1xuXG4gIC8vIHBhcnNlIG5ldHdvcmtGZWVcbiAgY29uc3QgbmV0d29ya0ZlZUhleCA9IGNhbGxEYXRhLnNsaWNlKDE4LCAzNCk7XG4gIGNvbnN0IG5ldHdvcmtGZWUgPSBCaWdJbnQoJzB4JyArIG5ldHdvcmtGZWVIZXgpLnRvU3RyaW5nKCk7XG5cbiAgLy8gcGFyc2UgdG9BZGRyZXNzXG4gIGNvbnN0IGFkZHJlc3NMZW5ndGhDb2RlID0gY2FsbERhdGEuc2xpY2UoMzQsIDM2KTtcbiAgY29uc3QgYWRkcmVzc0hleCA9IGNhbGxEYXRhLnNsaWNlKFxuICAgIDM2LFxuICAgIDM2ICsgcGFyc2VJbnQoYWRkcmVzc0xlbmd0aENvZGUsIDE2KSAqIDJcbiAgKTtcbiAgY29uc3QgdG9BZGRyZXNzID0gZGVjb2RlQWRkcmVzcyh0b0NoYWluLCBhZGRyZXNzSGV4KTtcblxuICByZXR1cm4ge1xuICAgIHRvQ2hhaW4sXG4gICAgdG9BZGRyZXNzLFxuICAgIGJyaWRnZUZlZSxcbiAgICBuZXR3b3JrRmVlLFxuICB9O1xufTtcbiJdfQ==
|
package/dist/lib/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { default as AbstractRosenDataExtractor } from './getRosenData/abstract/AbstractRosenDataExtractor';
|
|
2
2
|
export { BitcoinEsploraRosenExtractor } from './getRosenData/bitcoin/BitcoinEsploraRosenExtractor';
|
|
3
|
+
export { EvmRpcRosenExtractor } from './getRosenData/evm/EvmRpcRosenExtractor';
|
|
4
|
+
export { BitcoinRosenExtractor } from './getRosenData/bitcoin/BitcoinRosenExtractor';
|
|
3
5
|
export { CardanoKoiosRosenExtractor } from './getRosenData/cardano/CardanoKoiosRosenExtractor';
|
|
4
6
|
export { CardanoOgmiosRosenExtractor } from './getRosenData/cardano/CardanoOgmiosRosenExtractor';
|
|
5
7
|
export { CardanoRosenExtractor } from './getRosenData/cardano/CardanoRosenExtractor';
|
package/dist/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oDAAoD,CAAC;AAC3G,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,oDAAoD,CAAC;AAC3G,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,mDAAmD,CAAC;AAC/F,OAAO,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,+BAA+B,EAAE,MAAM,wDAAwD,CAAC;AACzG,OAAO,EAAE,4BAA4B,EAAE,MAAM,qDAAqD,CAAC;AACnG,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC"}
|
package/dist/lib/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { default as AbstractRosenDataExtractor } from './getRosenData/abstract/AbstractRosenDataExtractor';
|
|
2
2
|
export { BitcoinEsploraRosenExtractor } from './getRosenData/bitcoin/BitcoinEsploraRosenExtractor';
|
|
3
|
+
export { EvmRpcRosenExtractor } from './getRosenData/evm/EvmRpcRosenExtractor';
|
|
4
|
+
export { BitcoinRosenExtractor } from './getRosenData/bitcoin/BitcoinRosenExtractor';
|
|
3
5
|
export { CardanoKoiosRosenExtractor } from './getRosenData/cardano/CardanoKoiosRosenExtractor';
|
|
4
6
|
export { CardanoOgmiosRosenExtractor } from './getRosenData/cardano/CardanoOgmiosRosenExtractor';
|
|
5
7
|
export { CardanoRosenExtractor } from './getRosenData/cardano/CardanoRosenExtractor';
|
|
@@ -7,4 +9,4 @@ export { CardanoBlockFrostRosenExtractor } from './getRosenData/cardano/CardanoB
|
|
|
7
9
|
export { CardanoGraphQLRosenExtractor } from './getRosenData/cardano/CardanoGraphQLRosenExtractor';
|
|
8
10
|
export { ErgoRosenExtractor } from './getRosenData/ergo/ErgoRosenExtractor';
|
|
9
11
|
export { ErgoNodeRosenExtractor } from './getRosenData/ergo/ErgoNodeRosenExtractor';
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sSUFBSSwwQkFBMEIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQy9GLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3pHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgZGVmYXVsdCBhcyBBYnN0cmFjdFJvc2VuRGF0YUV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2Fic3RyYWN0L0Fic3RyYWN0Um9zZW5EYXRhRXh0cmFjdG9yJztcbmV4cG9ydCB7IEJpdGNvaW5Fc3Bsb3JhUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9iaXRjb2luL0JpdGNvaW5Fc3Bsb3JhUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgRXZtUnBjUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9ldm0vRXZtUnBjUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQml0Y29pblJvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvYml0Y29pbi9CaXRjb2luUm9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub0tvaW9zUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9jYXJkYW5vL0NhcmRhbm9Lb2lvc1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IENhcmRhbm9PZ21pb3NSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub09nbWlvc1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IENhcmRhbm9Sb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub1Jvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IENhcmRhbm9CbG9ja0Zyb3N0Um9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9jYXJkYW5vL0NhcmRhbm9CbG9ja0Zyb3N0Um9zZW5FeHRyYWN0b3InO1xuZXhwb3J0IHsgQ2FyZGFub0dyYXBoUUxSb3NlbkV4dHJhY3RvciB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2NhcmRhbm8vQ2FyZGFub0dyYXBoUUxSb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFcmdvUm9zZW5FeHRyYWN0b3IgfSBmcm9tICcuL2dldFJvc2VuRGF0YS9lcmdvL0VyZ29Sb3NlbkV4dHJhY3Rvcic7XG5leHBvcnQgeyBFcmdvTm9kZVJvc2VuRXh0cmFjdG9yIH0gZnJvbSAnLi9nZXRSb3NlbkRhdGEvZXJnby9FcmdvTm9kZVJvc2VuRXh0cmFjdG9yJztcbmV4cG9ydCB7IFJvc2VuRGF0YSB9IGZyb20gJy4vZ2V0Um9zZW5EYXRhL2Fic3RyYWN0L3R5cGVzJztcbiJdfQ==
|