@bitgo-beta/sdk-core 8.2.1-beta.13 → 8.2.1-beta.130
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/CHANGELOG.md +432 -0
- package/dist/src/account-lib/baseCoin/enum.d.ts +6 -1
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +11 -1
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
- package/dist/src/account-lib/mpc/index.d.ts +4 -4
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/index.js +6 -6
- package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
- package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/shamir.js +6 -130
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +57 -9
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +581 -57
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +97 -55
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +0 -3
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +16 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +15 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +20 -4
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
- package/dist/src/bitgo/bitgoBase.d.ts +2 -1
- package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
- package/dist/src/bitgo/bitgoBase.js +1 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts +13 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +29 -1
- package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprises.js +26 -1
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +4 -1
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
- package/dist/src/bitgo/environments.d.ts +7 -0
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +17 -3
- package/dist/src/bitgo/keychain/iKeychains.d.ts +6 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.js +1 -1
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/keychains.js +30 -24
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +124 -89
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/ovcJsonCodec.js +31 -24
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +2 -0
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.js +13 -1
- package/dist/src/bitgo/recovery/initiate.d.ts +7 -1
- package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
- package/dist/src/bitgo/recovery/initiate.js +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +11 -1
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.js +1 -1
- package/dist/src/bitgo/staking/stakingWallet.d.ts +7 -1
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/stakingWallet.js +9 -1
- package/dist/src/bitgo/tss/common.d.ts +15 -4
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +26 -11
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +11 -8
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +36 -33
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +2 -2
- package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +6 -5
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +20 -9
- package/dist/src/bitgo/tss/types.d.ts +19 -0
- package/dist/src/bitgo/tss/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/types.js +1 -1
- package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
- package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
- package/dist/src/bitgo/utils/codecProps.js +41 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +7 -10
- package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
- package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/src/bitgo/utils/postWithCodec.js +59 -0
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +59 -12
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +71 -9
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +174 -9
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +27 -2
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +47 -7
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +247 -119
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +9 -0
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +18 -5
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +79 -25
- package/dist/src/bitgo/wallet/BuildParams.d.ts +112 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/BuildParams.js +121 -0
- package/dist/src/bitgo/wallet/SendTransactionRequest.d.ts +93 -0
- package/dist/src/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/SendTransactionRequest.js +41 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts +14 -1
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallet.js +1 -1
- package/dist/src/bitgo/wallet/wallet.d.ts +11 -2
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +140 -82
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -2
- package/dist/src/openssl/index.d.ts +4 -1
- package/dist/src/openssl/index.d.ts.map +1 -1
- package/dist/src/openssl/index.js +7 -12
- package/dist/test/node.utils.d.ts +2 -0
- package/dist/test/node.utils.d.ts.map +1 -0
- package/dist/test/node.utils.js +5 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +185 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts +3 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.js +24 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.js +79 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +49 -0
- package/dist/test/unit/openssl.d.ts +2 -0
- package/dist/test/unit/openssl.d.ts.map +1 -0
- package/dist/test/unit/openssl.js +39 -0
- package/dist/test/unit/units.d.ts +2 -0
- package/dist/test/unit/units.d.ts.map +1 -0
- package/dist/test/unit/units.js +98 -0
- package/dist/tsconfig.tsbuildinfo +1 -8279
- package/package.json +14 -13
- package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
- package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/hdTree.js +0 -141
- package/dist/src/account-lib/mpc/types.d.ts +0 -5
- package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/types.js +0 -3
- package/dist/src/openssl/openssl.d.ts +0 -12
- package/dist/src/openssl/openssl.d.ts.map +0 -1
- package/dist/src/openssl/openssl.js +0 -48
- package/dist/src/openssl/opensslbytes.d.ts +0 -4
- package/dist/src/openssl/opensslbytes.d.ts.map +0 -1
- package/dist/src/openssl/opensslbytes.js +0 -20
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EcdsaTypes, HashCommitDecommit, SchnorrProof } from '@bitgo-beta/sdk-lib-mpc';
|
|
2
3
|
/**
|
|
3
4
|
* @deprecated use DeserializedNtildeProof from sdk-lib-mpc instead
|
|
4
5
|
*/
|
|
@@ -31,7 +32,7 @@ export declare type SerializedNtilde = EcdsaTypes.SerializedNtilde;
|
|
|
31
32
|
* @deprecated use SerializedNtildeWithProofs from sdk-lib-mpc instead
|
|
32
33
|
*/
|
|
33
34
|
export declare type SerializedNtildeWithProofs = EcdsaTypes.SerializedNtildeWithProofs;
|
|
34
|
-
export
|
|
35
|
+
export declare type PShare = {
|
|
35
36
|
i: number;
|
|
36
37
|
t?: number;
|
|
37
38
|
c?: number;
|
|
@@ -42,7 +43,7 @@ export interface PShare {
|
|
|
42
43
|
n: string;
|
|
43
44
|
y: string;
|
|
44
45
|
chaincode: string;
|
|
45
|
-
}
|
|
46
|
+
};
|
|
46
47
|
export declare type SignIndex = {
|
|
47
48
|
i: number;
|
|
48
49
|
j: number;
|
|
@@ -58,7 +59,7 @@ export declare type KeyShare = {
|
|
|
58
59
|
pShare: PShare;
|
|
59
60
|
nShares: Record<number, NShare>;
|
|
60
61
|
};
|
|
61
|
-
export
|
|
62
|
+
export declare type XShare = {
|
|
62
63
|
i: number;
|
|
63
64
|
l: string;
|
|
64
65
|
m: string;
|
|
@@ -66,59 +67,53 @@ export interface XShare {
|
|
|
66
67
|
y: string;
|
|
67
68
|
x: string;
|
|
68
69
|
chaincode: string;
|
|
69
|
-
}
|
|
70
|
-
export declare type
|
|
70
|
+
};
|
|
71
|
+
export declare type XShareWithChallenges = XShare & EcdsaTypes.SerializedNtilde & EcdsaTypes.SerializedPaillierChallenge;
|
|
71
72
|
export declare type YShare = SignIndex & {
|
|
72
73
|
n: string;
|
|
73
74
|
};
|
|
74
|
-
export declare type
|
|
75
|
+
export declare type YShareWithChallenges = YShare & EcdsaTypes.SerializedNtilde & EcdsaTypes.SerializedPaillierChallenge;
|
|
75
76
|
export interface KeyCombined {
|
|
76
77
|
xShare: XShare;
|
|
77
78
|
yShares: Record<number, YShare>;
|
|
78
79
|
}
|
|
79
|
-
export
|
|
80
|
-
xShare:
|
|
81
|
-
yShares: Record<number,
|
|
82
|
-
}
|
|
83
|
-
export
|
|
80
|
+
export declare type KeyCombinedWithNtilde = {
|
|
81
|
+
xShare: XShareWithChallenges;
|
|
82
|
+
yShares: Record<number, YShareWithChallenges>;
|
|
83
|
+
};
|
|
84
|
+
export declare type SubkeyShare = {
|
|
84
85
|
xShare: XShare;
|
|
85
86
|
nShares: Record<number, NShare>;
|
|
86
|
-
}
|
|
87
|
-
export
|
|
87
|
+
};
|
|
88
|
+
export declare type WShare = EcdsaTypes.SerializedNtilde & EcdsaTypes.SerializedPaillierChallenge & {
|
|
88
89
|
i: number;
|
|
89
90
|
l: string;
|
|
90
91
|
m: string;
|
|
91
92
|
n: string;
|
|
92
93
|
y: string;
|
|
93
|
-
ntilde: string;
|
|
94
|
-
h1: string;
|
|
95
|
-
h2: string;
|
|
96
94
|
ck: string;
|
|
97
95
|
k: string;
|
|
98
96
|
w: string;
|
|
99
97
|
gamma: string;
|
|
100
|
-
}
|
|
101
|
-
export
|
|
98
|
+
};
|
|
99
|
+
export declare type RangeProofShare = {
|
|
102
100
|
z: string;
|
|
103
101
|
u: string;
|
|
104
102
|
w: string;
|
|
105
103
|
s: string;
|
|
106
104
|
s1: string;
|
|
107
105
|
s2: string;
|
|
108
|
-
}
|
|
109
|
-
export declare type KShare = SignIndex & {
|
|
106
|
+
};
|
|
107
|
+
export declare type KShare = SignIndex & EcdsaTypes.SerializedNtilde & EcdsaTypes.SerializedPaillierChallenge & EcdsaTypes.SerializedPaillierChallengeProofs & {
|
|
110
108
|
n: string;
|
|
111
|
-
ntilde: string;
|
|
112
|
-
h1: string;
|
|
113
|
-
h2: string;
|
|
114
109
|
k: string;
|
|
115
|
-
proof
|
|
110
|
+
proof?: RangeProofShare;
|
|
116
111
|
};
|
|
117
|
-
export
|
|
112
|
+
export declare type SignShareRT = {
|
|
118
113
|
wShare: WShare;
|
|
119
114
|
kShare: KShare;
|
|
120
|
-
}
|
|
121
|
-
export
|
|
115
|
+
};
|
|
116
|
+
export declare type RangeProofWithCheckShare = {
|
|
122
117
|
z: string;
|
|
123
118
|
zprm: string;
|
|
124
119
|
t: string;
|
|
@@ -131,31 +126,27 @@ export interface RangeProofWithCheckShare {
|
|
|
131
126
|
t2: string;
|
|
132
127
|
u: string;
|
|
133
128
|
x: string;
|
|
134
|
-
}
|
|
135
|
-
export declare type AShare = SignIndex & {
|
|
129
|
+
};
|
|
130
|
+
export declare type AShare = SignIndex & EcdsaTypes.SerializedNtilde & EcdsaTypes.SerializedPaillierChallengeProofs & {
|
|
136
131
|
n: string;
|
|
137
|
-
ntilde: string;
|
|
138
|
-
h1: string;
|
|
139
|
-
h2: string;
|
|
140
132
|
k: string;
|
|
141
133
|
alpha: string;
|
|
142
134
|
mu: string;
|
|
143
|
-
proof
|
|
144
|
-
gammaProof
|
|
145
|
-
wProof
|
|
135
|
+
proof?: RangeProofShare;
|
|
136
|
+
gammaProof?: RangeProofWithCheckShare;
|
|
137
|
+
wProof?: RangeProofWithCheckShare;
|
|
146
138
|
};
|
|
147
|
-
export
|
|
148
|
-
gamma: string;
|
|
139
|
+
export declare type BShare = WShare & {
|
|
149
140
|
beta: string;
|
|
150
141
|
nu: string;
|
|
151
|
-
}
|
|
142
|
+
};
|
|
152
143
|
export declare type MUShare = SignIndex & {
|
|
153
144
|
alpha: string;
|
|
154
145
|
mu: string;
|
|
155
146
|
gammaProof: RangeProofWithCheckShare;
|
|
156
147
|
wProof: RangeProofWithCheckShare;
|
|
157
148
|
};
|
|
158
|
-
export
|
|
149
|
+
export declare type GShare = {
|
|
159
150
|
i: number;
|
|
160
151
|
l?: string;
|
|
161
152
|
m?: string;
|
|
@@ -168,52 +159,103 @@ export interface GShare {
|
|
|
168
159
|
mu: string;
|
|
169
160
|
beta: string;
|
|
170
161
|
nu: string;
|
|
171
|
-
}
|
|
172
|
-
export
|
|
173
|
-
xShare?:
|
|
162
|
+
};
|
|
163
|
+
export declare type SignConvert = {
|
|
164
|
+
xShare?: XShareWithChallenges;
|
|
174
165
|
yShare?: YShare;
|
|
175
166
|
kShare?: KShare;
|
|
176
167
|
bShare?: BShare;
|
|
177
168
|
muShare?: MUShare;
|
|
178
169
|
aShare?: AShare;
|
|
179
170
|
wShare?: WShare;
|
|
180
|
-
}
|
|
181
|
-
export
|
|
171
|
+
};
|
|
172
|
+
export declare type SignConvertStep1 = {
|
|
173
|
+
xShare: XShareWithChallenges;
|
|
174
|
+
yShare: YShare;
|
|
175
|
+
kShare: KShare;
|
|
176
|
+
};
|
|
177
|
+
export declare type SignConvertStep1Response = {
|
|
178
|
+
bShare: BShare;
|
|
179
|
+
aShare: AShare;
|
|
180
|
+
};
|
|
181
|
+
export declare type SignConvertStep2 = {
|
|
182
|
+
wShare: WShare;
|
|
183
|
+
aShare: AShare;
|
|
184
|
+
};
|
|
185
|
+
export declare type SignConvertStep2Response = {
|
|
186
|
+
gShare: GShare;
|
|
187
|
+
muShare: MUShare;
|
|
188
|
+
};
|
|
189
|
+
export declare type SignConvertStep3 = {
|
|
190
|
+
bShare: BShare;
|
|
191
|
+
muShare: MUShare;
|
|
192
|
+
};
|
|
193
|
+
export declare type SignConvertStep3Response = {
|
|
194
|
+
gShare: GShare;
|
|
195
|
+
signIndex: SignIndex;
|
|
196
|
+
};
|
|
197
|
+
export declare type SignConvertRT = {
|
|
182
198
|
aShare?: AShare;
|
|
183
199
|
bShare?: BShare;
|
|
184
200
|
muShare?: MUShare;
|
|
185
201
|
gShare?: GShare;
|
|
186
|
-
}
|
|
187
|
-
export
|
|
202
|
+
};
|
|
203
|
+
export declare type OShare = {
|
|
188
204
|
i: number;
|
|
189
205
|
y: string;
|
|
190
206
|
k: string;
|
|
191
207
|
omicron: string;
|
|
192
208
|
delta: string;
|
|
193
209
|
Gamma: string;
|
|
194
|
-
}
|
|
210
|
+
};
|
|
195
211
|
export declare type DShare = SignIndex & {
|
|
196
212
|
delta: string;
|
|
197
213
|
Gamma: string;
|
|
198
214
|
};
|
|
199
|
-
export
|
|
215
|
+
export declare type SShare = {
|
|
200
216
|
i: number;
|
|
201
217
|
R: string;
|
|
202
218
|
s: string;
|
|
203
219
|
y: string;
|
|
204
|
-
}
|
|
205
|
-
export
|
|
220
|
+
};
|
|
221
|
+
export declare type SignCombine = {
|
|
206
222
|
gShare: GShare;
|
|
207
223
|
signIndex: SignIndex;
|
|
208
|
-
}
|
|
209
|
-
export
|
|
224
|
+
};
|
|
225
|
+
export declare type SignCombineRT = {
|
|
210
226
|
oShare: OShare;
|
|
211
227
|
dShare: DShare;
|
|
212
|
-
}
|
|
213
|
-
export
|
|
228
|
+
};
|
|
229
|
+
export declare type Signature = {
|
|
214
230
|
y: string;
|
|
215
231
|
recid: number;
|
|
216
232
|
r: string;
|
|
217
233
|
s: string;
|
|
234
|
+
};
|
|
235
|
+
export interface PublicVAShare {
|
|
236
|
+
V: bigint;
|
|
237
|
+
A: bigint;
|
|
238
|
+
comDecomVA: HashCommitDecommit;
|
|
239
|
+
}
|
|
240
|
+
export interface PublicVAShareWithProofs extends PublicVAShare, VAProofs {
|
|
241
|
+
}
|
|
242
|
+
export interface VAShare extends SShare, PublicVAShare {
|
|
243
|
+
m: Buffer;
|
|
244
|
+
l: bigint;
|
|
245
|
+
rho: bigint;
|
|
246
|
+
}
|
|
247
|
+
export interface VAProofs {
|
|
248
|
+
zkVProofV: EcdsaTypes.ZkVProof;
|
|
249
|
+
schnorrProofA: SchnorrProof;
|
|
250
|
+
}
|
|
251
|
+
export interface VAShareWithProofs extends VAShare, VAProofs {
|
|
252
|
+
proofContext: Buffer;
|
|
253
|
+
}
|
|
254
|
+
export interface PublicUTShare {
|
|
255
|
+
U: bigint;
|
|
256
|
+
T: bigint;
|
|
257
|
+
comDecomUT: HashCommitDecommit;
|
|
258
|
+
}
|
|
259
|
+
export interface UTShare extends SShare, PublicUTShare {
|
|
218
260
|
}
|
|
219
261
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/ecdsa/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/ecdsa/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcy9lY2RzYS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWNkc2FUeXBlcyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1saWItbXBjJztcblxuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgRGVzZXJpYWxpemVkTnRpbGRlUHJvb2YgZnJvbSBzZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIERlc2VyaWFsaXplZE50aWxkZVByb29mID0gRWNkc2FUeXBlcy5EZXNlcmlhbGl6ZWROdGlsZGVQcm9vZjtcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIERlc2VyaWFsaXplZE50aWxkZVByb29mcyBmcm9tIHNkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgRGVzZXJpYWxpemVkTnRpbGRlUHJvb2ZzID0gRWNkc2FUeXBlcy5EZXNlcmlhbGl6ZWROdGlsZGVQcm9vZnM7XG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBEZXNlcmlhbGl6ZWROdGlsZGVQcm9vZnMgZnJvbSBzZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIERlc2VyaWFsaXplZE50aWxkZSA9IEVjZHNhVHlwZXMuRGVzZXJpYWxpemVkTnRpbGRlO1xuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgRGVzZXJpYWxpemVkTnRpbGRlV2l0aFByb29mcyBmcm9tIHNkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgRGVzZXJpYWxpemVkTnRpbGRlV2l0aFByb29mcyA9IEVjZHNhVHlwZXMuRGVzZXJpYWxpemVkTnRpbGRlV2l0aFByb29mcztcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFNlcmlhbGl6ZWROdGlsZGVQcm9vZiBmcm9tIHNkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplZE50aWxkZVByb29mID0gRWNkc2FUeXBlcy5TZXJpYWxpemVkTnRpbGRlUHJvb2Y7XG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBTZXJpYWxpemVkTnRpbGRlUHJvb2ZzIGZyb20gc2RrLWxpYi1tcGMgaW5zdGVhZFxuICovXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkTnRpbGRlUHJvb2ZzID0gRWNkc2FUeXBlcy5TZXJpYWxpemVkTnRpbGRlUHJvb2ZzO1xuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgU2VyaWFsaXplZE50aWxkZSBmcm9tIHNkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplZE50aWxkZSA9IEVjZHNhVHlwZXMuU2VyaWFsaXplZE50aWxkZTtcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFNlcmlhbGl6ZWROdGlsZGVXaXRoUHJvb2ZzIGZyb20gc2RrLWxpYi1tcGMgaW5zdGVhZFxuICovXG5leHBvcnQgdHlwZSBTZXJpYWxpemVkTnRpbGRlV2l0aFByb29mcyA9IEVjZHNhVHlwZXMuU2VyaWFsaXplZE50aWxkZVdpdGhQcm9vZnM7XG5cbi8vIFByaXZhdGUgc2hhcmUgb2YgdGhlIHVzZXIgZ2VuZXJhdGVkIGR1cmluZyBrZXkgZ2VuZXJhdGlvblxuZXhwb3J0IGludGVyZmFjZSBQU2hhcmUge1xuICBpOiBudW1iZXI7IC8vIHBhcnRpY2lwYW50IGluZGV4XG4gIHQ/OiBudW1iZXI7IC8vIHRocmVzaG9sZFxuICBjPzogbnVtYmVyOyAvLyBudW1iZXIgb2Ygc2hhcmVzXG4gIGw6IHN0cmluZzsgLy8gbGFtYmRhIHZhbHVlIGZvciBwYWlsbGllciBzZWNyZXQga2V5XG4gIG06IHN0cmluZzsgLy8gbXUgdmFsdWUgZm9yIHBhaWxsaWVyIHNlY3JldCBrZXlcbiAgdTogc3RyaW5nOyAvLyBzaGFtaXIgc2hhcmUgb2Ygc2VjcmV0XG4gIHV1OiBzdHJpbmc7IC8vIHVuc3BsaXQgc2hhbWlyIHNoYXJlIG9mIHNlY3JldFxuICBuOiBzdHJpbmc7IC8vIG4gPT4gKHAgLiBxKSB3aGVyZSBwIGFuZCBxIGFyZSB0aGUgdHdvIHJhbmRvbSBwcmltZSBudW1iZXJzIGNob3NlbiBmb3IgcGFpbGxpZXIgZW5jcnlwdGlvblxuICB5OiBzdHJpbmc7XG4gIGNoYWluY29kZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBTaWduSW5kZXggPSB7XG4gIGk6IG51bWJlcjsgLy8gcGFydGljaXBhbnQgaW5kZXhcbiAgajogbnVtYmVyOyAvLyB0YXJnZXQgcGFydGljaXBhbnQgaW5kZXhcbn07XG5cbi8vIE5TaGFyZXMgd2hpY2ggaXMgc2hhcmVkIHRvIHRoZSBvdGhlciBwYXJ0aWNpcGFudHMgZHVyaW5nIGtleSBnZW5lcmF0aW9uXG5leHBvcnQgdHlwZSBOU2hhcmUgPSBTaWduSW5kZXggJiB7XG4gIG46IHN0cmluZztcbiAgdTogc3RyaW5nOyAvLyBzaGFtaXIgc2hhcmUgb2Ygc2VjcmV0IGF0IGondGggaW5kZXhcbiAgeTogc3RyaW5nO1xuICB2Pzogc3RyaW5nO1xuICBjaGFpbmNvZGU6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIEtleVNoYXJlID0ge1xuICBwU2hhcmU6IFBTaGFyZTtcbiAgblNoYXJlczogUmVjb3JkPG51bWJlciwgTlNoYXJlPjtcbn07XG5cbi8vIFByaXZhdGUgWFNoYXJlIG9mIHRoZSBjdXJyZW50IHBhcnRpY2lwYW50XG5leHBvcnQgaW50ZXJmYWNlIFhTaGFyZSB7XG4gIGk6IG51bWJlcjtcbiAgbDogc3RyaW5nO1xuICBtOiBzdHJpbmc7XG4gIG46IHN0cmluZztcbiAgeTogc3RyaW5nOyAvLyBjb21iaW5lZCBwdWJsaWMga2V5XG4gIHg6IHN0cmluZzsgLy8gY29tYmluZWQgc2VjcmV0XG4gIGNoYWluY29kZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBYU2hhcmVXaXRoTnRpbGRlID0gWFNoYXJlICYgRWNkc2FUeXBlcy5TZXJpYWxpemVkTnRpbGRlO1xuXG4vLyBZU2hhcmVzIHVzZWQgZHVyaW5nIHNpZ25hdHVyZSBnZW5lcmF0aW9uXG5leHBvcnQgdHlwZSBZU2hhcmUgPSBTaWduSW5kZXggJiB7XG4gIG46IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFlTaGFyZVdpdGhOdGlsZGUgPSBZU2hhcmUgJiBFY2RzYVR5cGVzLlNlcmlhbGl6ZWROdGlsZGU7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Q29tYmluZWQge1xuICB4U2hhcmU6IFhTaGFyZTtcbiAgeVNoYXJlczogUmVjb3JkPG51bWJlciwgWVNoYXJlPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLZXlDb21iaW5lZFdpdGhOdGlsZGUge1xuICB4U2hhcmU6IFhTaGFyZVdpdGhOdGlsZGU7XG4gIHlTaGFyZXM6IFJlY29yZDxudW1iZXIsIFlTaGFyZVdpdGhOdGlsZGU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YmtleVNoYXJlIHtcbiAgeFNoYXJlOiBYU2hhcmU7XG4gIG5TaGFyZXM6IFJlY29yZDxudW1iZXIsIE5TaGFyZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgV1NoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBsOiBzdHJpbmc7XG4gIG06IHN0cmluZztcbiAgbjogc3RyaW5nO1xuICB5OiBzdHJpbmc7IC8vIGNvbWJpbmVkIHB1YmxpYyBrZXlcbiAgbnRpbGRlOiBzdHJpbmc7XG4gIGgxOiBzdHJpbmc7XG4gIGgyOiBzdHJpbmc7XG4gIGNrOiBzdHJpbmc7XG4gIGs6IHN0cmluZztcbiAgdzogc3RyaW5nO1xuICBnYW1tYTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJhbmdlUHJvb2ZTaGFyZSB7XG4gIHo6IHN0cmluZztcbiAgdTogc3RyaW5nO1xuICB3OiBzdHJpbmc7XG4gIHM6IHN0cmluZztcbiAgczE6IHN0cmluZztcbiAgczI6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgS1NoYXJlID0gU2lnbkluZGV4ICYge1xuICBuOiBzdHJpbmc7XG4gIG50aWxkZTogc3RyaW5nO1xuICBoMTogc3RyaW5nO1xuICBoMjogc3RyaW5nO1xuICBrOiBzdHJpbmc7XG4gIHByb29mOiBSYW5nZVByb29mU2hhcmU7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25TaGFyZVJUIHtcbiAgd1NoYXJlOiBXU2hhcmU7XG4gIGtTaGFyZTogS1NoYXJlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJhbmdlUHJvb2ZXaXRoQ2hlY2tTaGFyZSB7XG4gIHo6IHN0cmluZztcbiAgenBybTogc3RyaW5nO1xuICB0OiBzdHJpbmc7XG4gIHY6IHN0cmluZztcbiAgdzogc3RyaW5nO1xuICBzOiBzdHJpbmc7XG4gIHMxOiBzdHJpbmc7XG4gIHMyOiBzdHJpbmc7XG4gIHQxOiBzdHJpbmc7XG4gIHQyOiBzdHJpbmc7XG4gIHU6IHN0cmluZztcbiAgeDogc3RyaW5nO1xufVxuXG4vLyBBbHBoYSBTaGFyZVxuZXhwb3J0IHR5cGUgQVNoYXJlID0gU2lnbkluZGV4ICYge1xuICBuOiBzdHJpbmc7XG4gIG50aWxkZTogc3RyaW5nO1xuICBoMTogc3RyaW5nO1xuICBoMjogc3RyaW5nO1xuICBrOiBzdHJpbmc7XG4gIGFscGhhOiBzdHJpbmc7XG4gIG11OiBzdHJpbmc7XG4gIHByb29mOiBSYW5nZVByb29mU2hhcmU7XG4gIGdhbW1hUHJvb2Y6IFJhbmdlUHJvb2ZXaXRoQ2hlY2tTaGFyZTtcbiAgd1Byb29mOiBSYW5nZVByb29mV2l0aENoZWNrU2hhcmU7XG59O1xuXG4vLyBCZXRhIFNoYXJlXG5leHBvcnQgaW50ZXJmYWNlIEJTaGFyZSBleHRlbmRzIFdTaGFyZSB7XG4gIGdhbW1hOiBzdHJpbmc7XG4gIGJldGE6IHN0cmluZztcbiAgbnU6IHN0cmluZztcbn1cblxuLy8gTXUgU2hhcmVcbmV4cG9ydCB0eXBlIE1VU2hhcmUgPSBTaWduSW5kZXggJiB7XG4gIGFscGhhOiBzdHJpbmc7XG4gIG11OiBzdHJpbmc7XG4gIGdhbW1hUHJvb2Y6IFJhbmdlUHJvb2ZXaXRoQ2hlY2tTaGFyZTtcbiAgd1Byb29mOiBSYW5nZVByb29mV2l0aENoZWNrU2hhcmU7XG59O1xuXG4vLyBHYW1tYSBTaGFyZVxuZXhwb3J0IGludGVyZmFjZSBHU2hhcmUge1xuICBpOiBudW1iZXI7XG4gIGw/OiBzdHJpbmc7XG4gIG0/OiBzdHJpbmc7XG4gIG46IHN0cmluZztcbiAgeTogc3RyaW5nOyAvLyBjb21iaW5lZCBwdWJsaWMga2V5XG4gIGs6IHN0cmluZztcbiAgdzogc3RyaW5nO1xuICBnYW1tYTogc3RyaW5nO1xuICBhbHBoYTogc3RyaW5nO1xuICBtdTogc3RyaW5nO1xuICBiZXRhOiBzdHJpbmc7XG4gIG51OiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIFNpZ25Db252ZXJ0IHtcbiAgeFNoYXJlPzogWFNoYXJlOyAvLyBYU2hhcmUgb2YgdGhlIGN1cnJlbnQgcGFydGljaXBhbnRcbiAgeVNoYXJlPzogWVNoYXJlOyAvLyBZU2hhcmUgY29ycmVzcG9uZGluZyB0byB0aGUgb3RoZXIgcGFydGljaXBhbnRcbiAga1NoYXJlPzogS1NoYXJlOyAvLyBLU2hhcmUgcmVjZWl2ZWQgZnJvbSB0aGUgb3RoZXIgcGFydGljaXBhbnRcbiAgYlNoYXJlPzogQlNoYXJlOyAvLyBQcml2YXRlIEJldGEgc2hhcmUgb2YgdGhlIHBhcnRpY2lwYW50XG4gIG11U2hhcmU/OiBNVVNoYXJlOyAvLyBtdVNoYXJlIHJlY2VpdmVkIGZyb20gdGhlIG90aGVyIHBhcnRpY2lwYW50XG4gIGFTaGFyZT86IEFTaGFyZTtcbiAgd1NoYXJlPzogV1NoYXJlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25Db252ZXJ0UlQge1xuICBhU2hhcmU/OiBBU2hhcmU7XG4gIGJTaGFyZT86IEJTaGFyZTtcbiAgbXVTaGFyZT86IE1VU2hhcmU7XG4gIGdTaGFyZT86IEdTaGFyZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPU2hhcmUge1xuICBpOiBudW1iZXI7XG4gIHk6IHN0cmluZztcbiAgazogc3RyaW5nO1xuICBvbWljcm9uOiBzdHJpbmc7XG4gIGRlbHRhOiBzdHJpbmc7XG4gIEdhbW1hOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIERTaGFyZSA9IFNpZ25JbmRleCAmIHtcbiAgZGVsdGE6IHN0cmluZztcbiAgR2FtbWE6IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU1NoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBSOiBzdHJpbmc7XG4gIHM6IHN0cmluZztcbiAgeTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25Db21iaW5lIHtcbiAgZ1NoYXJlOiBHU2hhcmU7XG4gIHNpZ25JbmRleDogU2lnbkluZGV4O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZ25Db21iaW5lUlQge1xuICBvU2hhcmU6IE9TaGFyZTtcbiAgZFNoYXJlOiBEU2hhcmU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnbmF0dXJlIHtcbiAgeTogc3RyaW5nO1xuICByZWNpZDogbnVtYmVyO1xuICByOiBzdHJpbmc7XG4gIHM6IHN0cmluZztcbn1cbiJdfQ==
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcy9lY2RzYS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWNkc2FUeXBlcywgSGFzaENvbW1pdERlY29tbWl0LCBTY2hub3JyUHJvb2YgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstbGliLW1wYyc7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIERlc2VyaWFsaXplZE50aWxkZVByb29mIGZyb20gc2RrLWxpYi1tcGMgaW5zdGVhZFxuICovXG5leHBvcnQgdHlwZSBEZXNlcmlhbGl6ZWROdGlsZGVQcm9vZiA9IEVjZHNhVHlwZXMuRGVzZXJpYWxpemVkTnRpbGRlUHJvb2Y7XG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBEZXNlcmlhbGl6ZWROdGlsZGVQcm9vZnMgZnJvbSBzZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIERlc2VyaWFsaXplZE50aWxkZVByb29mcyA9IEVjZHNhVHlwZXMuRGVzZXJpYWxpemVkTnRpbGRlUHJvb2ZzO1xuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgRGVzZXJpYWxpemVkTnRpbGRlUHJvb2ZzIGZyb20gc2RrLWxpYi1tcGMgaW5zdGVhZFxuICovXG5leHBvcnQgdHlwZSBEZXNlcmlhbGl6ZWROdGlsZGUgPSBFY2RzYVR5cGVzLkRlc2VyaWFsaXplZE50aWxkZTtcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIERlc2VyaWFsaXplZE50aWxkZVdpdGhQcm9vZnMgZnJvbSBzZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIERlc2VyaWFsaXplZE50aWxkZVdpdGhQcm9vZnMgPSBFY2RzYVR5cGVzLkRlc2VyaWFsaXplZE50aWxkZVdpdGhQcm9vZnM7XG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBTZXJpYWxpemVkTnRpbGRlUHJvb2YgZnJvbSBzZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIFNlcmlhbGl6ZWROdGlsZGVQcm9vZiA9IEVjZHNhVHlwZXMuU2VyaWFsaXplZE50aWxkZVByb29mO1xuLyoqXG4gKiBAZGVwcmVjYXRlZCB1c2UgU2VyaWFsaXplZE50aWxkZVByb29mcyBmcm9tIHNkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplZE50aWxkZVByb29mcyA9IEVjZHNhVHlwZXMuU2VyaWFsaXplZE50aWxkZVByb29mcztcbi8qKlxuICogQGRlcHJlY2F0ZWQgdXNlIFNlcmlhbGl6ZWROdGlsZGUgZnJvbSBzZGstbGliLW1wYyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCB0eXBlIFNlcmlhbGl6ZWROdGlsZGUgPSBFY2RzYVR5cGVzLlNlcmlhbGl6ZWROdGlsZGU7XG4vKipcbiAqIEBkZXByZWNhdGVkIHVzZSBTZXJpYWxpemVkTnRpbGRlV2l0aFByb29mcyBmcm9tIHNkay1saWItbXBjIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgU2VyaWFsaXplZE50aWxkZVdpdGhQcm9vZnMgPSBFY2RzYVR5cGVzLlNlcmlhbGl6ZWROdGlsZGVXaXRoUHJvb2ZzO1xuXG4vLyBQcml2YXRlIHNoYXJlIG9mIHRoZSB1c2VyIGdlbmVyYXRlZCBkdXJpbmcga2V5IGdlbmVyYXRpb25cbmV4cG9ydCB0eXBlIFBTaGFyZSA9IHtcbiAgaTogbnVtYmVyOyAvLyBwYXJ0aWNpcGFudCBpbmRleFxuICB0PzogbnVtYmVyOyAvLyB0aHJlc2hvbGRcbiAgYz86IG51bWJlcjsgLy8gbnVtYmVyIG9mIHNoYXJlc1xuICBsOiBzdHJpbmc7IC8vIGxhbWJkYSB2YWx1ZSBmb3IgcGFpbGxpZXIgc2VjcmV0IGtleVxuICBtOiBzdHJpbmc7IC8vIG11IHZhbHVlIGZvciBwYWlsbGllciBzZWNyZXQga2V5XG4gIHU6IHN0cmluZzsgLy8gc2hhbWlyIHNoYXJlIG9mIHNlY3JldFxuICB1dTogc3RyaW5nOyAvLyB1bnNwbGl0IHNoYW1pciBzaGFyZSBvZiBzZWNyZXRcbiAgbjogc3RyaW5nOyAvLyBuID0+IChwIC4gcSkgd2hlcmUgcCBhbmQgcSBhcmUgdGhlIHR3byByYW5kb20gcHJpbWUgbnVtYmVycyBjaG9zZW4gZm9yIHBhaWxsaWVyIGVuY3J5cHRpb25cbiAgeTogc3RyaW5nO1xuICBjaGFpbmNvZGU6IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFNpZ25JbmRleCA9IHtcbiAgaTogbnVtYmVyOyAvLyBwYXJ0aWNpcGFudCBpbmRleFxuICBqOiBudW1iZXI7IC8vIHRhcmdldCBwYXJ0aWNpcGFudCBpbmRleFxufTtcblxuLy8gTlNoYXJlcyB3aGljaCBpcyBzaGFyZWQgdG8gdGhlIG90aGVyIHBhcnRpY2lwYW50cyBkdXJpbmcga2V5IGdlbmVyYXRpb25cbmV4cG9ydCB0eXBlIE5TaGFyZSA9IFNpZ25JbmRleCAmIHtcbiAgbjogc3RyaW5nO1xuICB1OiBzdHJpbmc7IC8vIHNoYW1pciBzaGFyZSBvZiBzZWNyZXQgYXQgaid0aCBpbmRleFxuICB5OiBzdHJpbmc7XG4gIHY/OiBzdHJpbmc7XG4gIGNoYWluY29kZTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgS2V5U2hhcmUgPSB7XG4gIHBTaGFyZTogUFNoYXJlO1xuICBuU2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBOU2hhcmU+O1xufTtcblxuLy8gUHJpdmF0ZSBYU2hhcmUgb2YgdGhlIGN1cnJlbnQgcGFydGljaXBhbnRcbmV4cG9ydCB0eXBlIFhTaGFyZSA9IHtcbiAgaTogbnVtYmVyO1xuICBsOiBzdHJpbmc7XG4gIG06IHN0cmluZztcbiAgbjogc3RyaW5nO1xuICB5OiBzdHJpbmc7IC8vIGNvbWJpbmVkIHB1YmxpYyBrZXlcbiAgeDogc3RyaW5nOyAvLyBjb21iaW5lZCBzZWNyZXRcbiAgY2hhaW5jb2RlOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBYU2hhcmVXaXRoQ2hhbGxlbmdlcyA9IFhTaGFyZSAmIEVjZHNhVHlwZXMuU2VyaWFsaXplZE50aWxkZSAmIEVjZHNhVHlwZXMuU2VyaWFsaXplZFBhaWxsaWVyQ2hhbGxlbmdlO1xuXG4vLyBZU2hhcmVzIHVzZWQgZHVyaW5nIHNpZ25hdHVyZSBnZW5lcmF0aW9uXG5leHBvcnQgdHlwZSBZU2hhcmUgPSBTaWduSW5kZXggJiB7XG4gIG46IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFlTaGFyZVdpdGhDaGFsbGVuZ2VzID0gWVNoYXJlICYgRWNkc2FUeXBlcy5TZXJpYWxpemVkTnRpbGRlICYgRWNkc2FUeXBlcy5TZXJpYWxpemVkUGFpbGxpZXJDaGFsbGVuZ2U7XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Q29tYmluZWQge1xuICB4U2hhcmU6IFhTaGFyZTtcbiAgeVNoYXJlczogUmVjb3JkPG51bWJlciwgWVNoYXJlPjtcbn1cblxuZXhwb3J0IHR5cGUgS2V5Q29tYmluZWRXaXRoTnRpbGRlID0ge1xuICB4U2hhcmU6IFhTaGFyZVdpdGhDaGFsbGVuZ2VzO1xuICB5U2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBZU2hhcmVXaXRoQ2hhbGxlbmdlcz47XG59O1xuXG5leHBvcnQgdHlwZSBTdWJrZXlTaGFyZSA9IHtcbiAgeFNoYXJlOiBYU2hhcmU7XG4gIG5TaGFyZXM6IFJlY29yZDxudW1iZXIsIE5TaGFyZT47XG59O1xuXG5leHBvcnQgdHlwZSBXU2hhcmUgPSBFY2RzYVR5cGVzLlNlcmlhbGl6ZWROdGlsZGUgJlxuICBFY2RzYVR5cGVzLlNlcmlhbGl6ZWRQYWlsbGllckNoYWxsZW5nZSAmIHtcbiAgICBpOiBudW1iZXI7XG4gICAgbDogc3RyaW5nO1xuICAgIG06IHN0cmluZztcbiAgICBuOiBzdHJpbmc7XG4gICAgeTogc3RyaW5nOyAvLyBjb21iaW5lZCBwdWJsaWMga2V5XG4gICAgY2s6IHN0cmluZztcbiAgICBrOiBzdHJpbmc7XG4gICAgdzogc3RyaW5nO1xuICAgIGdhbW1hOiBzdHJpbmc7XG4gIH07XG5cbmV4cG9ydCB0eXBlIFJhbmdlUHJvb2ZTaGFyZSA9IHtcbiAgejogc3RyaW5nO1xuICB1OiBzdHJpbmc7XG4gIHc6IHN0cmluZztcbiAgczogc3RyaW5nO1xuICBzMTogc3RyaW5nO1xuICBzMjogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgS1NoYXJlID0gU2lnbkluZGV4ICZcbiAgRWNkc2FUeXBlcy5TZXJpYWxpemVkTnRpbGRlICZcbiAgRWNkc2FUeXBlcy5TZXJpYWxpemVkUGFpbGxpZXJDaGFsbGVuZ2UgJlxuICBFY2RzYVR5cGVzLlNlcmlhbGl6ZWRQYWlsbGllckNoYWxsZW5nZVByb29mcyAmIHtcbiAgICBuOiBzdHJpbmc7XG4gICAgazogc3RyaW5nO1xuICAgIC8vIFRPRE8oQkctNzg3MTMpOiB0aGlzIHNob3VsZG4ndCBiZSBvcHRpb25hbFxuICAgIHByb29mPzogUmFuZ2VQcm9vZlNoYXJlO1xuICB9O1xuXG5leHBvcnQgdHlwZSBTaWduU2hhcmVSVCA9IHtcbiAgd1NoYXJlOiBXU2hhcmU7XG4gIGtTaGFyZTogS1NoYXJlO1xufTtcblxuZXhwb3J0IHR5cGUgUmFuZ2VQcm9vZldpdGhDaGVja1NoYXJlID0ge1xuICB6OiBzdHJpbmc7XG4gIHpwcm06IHN0cmluZztcbiAgdDogc3RyaW5nO1xuICB2OiBzdHJpbmc7XG4gIHc6IHN0cmluZztcbiAgczogc3RyaW5nO1xuICBzMTogc3RyaW5nO1xuICBzMjogc3RyaW5nO1xuICB0MTogc3RyaW5nO1xuICB0Mjogc3RyaW5nO1xuICB1OiBzdHJpbmc7XG4gIHg6IHN0cmluZztcbn07XG5cbi8vIEFscGhhIFNoYXJlXG5leHBvcnQgdHlwZSBBU2hhcmUgPSBTaWduSW5kZXggJlxuICBFY2RzYVR5cGVzLlNlcmlhbGl6ZWROdGlsZGUgJlxuICBFY2RzYVR5cGVzLlNlcmlhbGl6ZWRQYWlsbGllckNoYWxsZW5nZVByb29mcyAmIHtcbiAgICBuOiBzdHJpbmc7XG4gICAgazogc3RyaW5nO1xuICAgIGFscGhhOiBzdHJpbmc7XG4gICAgbXU6IHN0cmluZztcbiAgICAvLyBUT0RPKEJHLTc4NzEzKTogdGhlc2Ugc2hvdWxkbid0IGJlIG9wdGlvbmFsXG4gICAgcHJvb2Y/OiBSYW5nZVByb29mU2hhcmU7XG4gICAgZ2FtbWFQcm9vZj86IFJhbmdlUHJvb2ZXaXRoQ2hlY2tTaGFyZTtcbiAgICB3UHJvb2Y/OiBSYW5nZVByb29mV2l0aENoZWNrU2hhcmU7XG4gIH07XG5cbi8vIEJldGEgU2hhcmVcbmV4cG9ydCB0eXBlIEJTaGFyZSA9IFdTaGFyZSAmIHtcbiAgYmV0YTogc3RyaW5nO1xuICBudTogc3RyaW5nO1xufTtcblxuLy8gTXUgU2hhcmVcbmV4cG9ydCB0eXBlIE1VU2hhcmUgPSBTaWduSW5kZXggJiB7XG4gIGFscGhhOiBzdHJpbmc7XG4gIG11OiBzdHJpbmc7XG4gIGdhbW1hUHJvb2Y6IFJhbmdlUHJvb2ZXaXRoQ2hlY2tTaGFyZTtcbiAgd1Byb29mOiBSYW5nZVByb29mV2l0aENoZWNrU2hhcmU7XG59O1xuXG4vLyBHYW1tYSBTaGFyZVxuZXhwb3J0IHR5cGUgR1NoYXJlID0ge1xuICBpOiBudW1iZXI7XG4gIGw/OiBzdHJpbmc7XG4gIG0/OiBzdHJpbmc7XG4gIG46IHN0cmluZztcbiAgeTogc3RyaW5nOyAvLyBjb21iaW5lZCBwdWJsaWMga2V5XG4gIGs6IHN0cmluZztcbiAgdzogc3RyaW5nO1xuICBnYW1tYTogc3RyaW5nO1xuICBhbHBoYTogc3RyaW5nO1xuICBtdTogc3RyaW5nO1xuICBiZXRhOiBzdHJpbmc7XG4gIG51OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBTaWduQ29udmVydCA9IHtcbiAgeFNoYXJlPzogWFNoYXJlV2l0aENoYWxsZW5nZXM7IC8vIFhTaGFyZSBvZiB0aGUgY3VycmVudCBwYXJ0aWNpcGFudFxuICB5U2hhcmU/OiBZU2hhcmU7IC8vIFlTaGFyZSBjb3JyZXNwb25kaW5nIHRvIHRoZSBvdGhlciBwYXJ0aWNpcGFudFxuICBrU2hhcmU/OiBLU2hhcmU7IC8vIEtTaGFyZSByZWNlaXZlZCBmcm9tIHRoZSBvdGhlciBwYXJ0aWNpcGFudFxuICBiU2hhcmU/OiBCU2hhcmU7IC8vIFByaXZhdGUgQmV0YSBzaGFyZSBvZiB0aGUgcGFydGljaXBhbnRcbiAgbXVTaGFyZT86IE1VU2hhcmU7IC8vIG11U2hhcmUgcmVjZWl2ZWQgZnJvbSB0aGUgb3RoZXIgcGFydGljaXBhbnRcbiAgYVNoYXJlPzogQVNoYXJlO1xuICB3U2hhcmU/OiBXU2hhcmU7XG59O1xuXG5leHBvcnQgdHlwZSBTaWduQ29udmVydFN0ZXAxID0ge1xuICB4U2hhcmU6IFhTaGFyZVdpdGhDaGFsbGVuZ2VzOyAvLyBYU2hhcmUgb2YgdGhlIGN1cnJlbnQgcGFydGljaXBhbnQgKGRvZXMgbm90IGdldCBzZW50IHRvIG90aGVyIHBhcnRpY2lwYW50KVxuICB5U2hhcmU6IFlTaGFyZTsgLy8gWVNoYXJlIGNvcnJlc3BvbmRpbmcgdG8gdGhlIG90aGVyIHBhcnRpY2lwYW50IChkb2VzIG5vdCBnZXQgc2VudCB0byBvdGhlciBwYXJ0aWNpcGFudClcbiAga1NoYXJlOiBLU2hhcmU7IC8vIHNoYXJlIHRvIGJlIG1vZGlmaWVkIGFuZCBzZW50IHRvIG90aGVyIHBhcnRpY2lwYW50XG59O1xuXG5leHBvcnQgdHlwZSBTaWduQ29udmVydFN0ZXAxUmVzcG9uc2UgPSB7XG4gIGJTaGFyZTogQlNoYXJlOyAvLyBwcml2YXRlIHBhcnRpY2lwYW50IHNoYXJlIChkb2VzIG5vdCBnZXQgc2VudCB0byBvdGhlciBwYXJ0aWNpcGFudClcbiAgYVNoYXJlOiBBU2hhcmU7IC8vIHNoYXJlIHRvIGJlIHNlbnQgdG8gb3RoZXIgcGFydGljaXBhbnRcbn07XG5cbmV4cG9ydCB0eXBlIFNpZ25Db252ZXJ0U3RlcDIgPSB7XG4gIHdTaGFyZTogV1NoYXJlOyAvLyBwcml2YXRlIHBhcnRpY2lwYW50IHNoYXJlIChkb2VzIG5vdCBnZXQgc2VudCB0byBvdGhlciBwYXJ0aWNpcGFudClcbiAgYVNoYXJlOiBBU2hhcmU7IC8vIHNoYXJlIHRvIGJlIG1vZGlmaWVkIGFuZCBzZW50IHRvIG90aGVyIHBhcnRpY2lwYW50XG59O1xuXG5leHBvcnQgdHlwZSBTaWduQ29udmVydFN0ZXAyUmVzcG9uc2UgPSB7XG4gIGdTaGFyZTogR1NoYXJlOyAvLyBwcml2YXRlIHBhcnRpY2lwYW50IHNoYXJlIChkb2VzIG5vdCBnZXQgc2VudCB0byBvdGhlciBwYXJ0aWNpcGFudClcbiAgbXVTaGFyZTogTVVTaGFyZTsgLy8gc2hhcmUgdG8gYmUgc2VudCB0byBvdGhlciBwYXJ0aWNpcGFudFxufTtcblxuZXhwb3J0IHR5cGUgU2lnbkNvbnZlcnRTdGVwMyA9IHtcbiAgYlNoYXJlOiBCU2hhcmU7IC8vIHByaXZhdGUgcGFydGljaXBhbnQgc2hhcmUgKGRvZXMgbm90IGdldCBzZW50IHRvIG90aGVyIHBhcnRpY2lwYW50KVxuICBtdVNoYXJlOiBNVVNoYXJlOyAvLyBzaGFyZSB0byBiZSBtb2RpZmllZCBhbmQgc2VudCB0byBvdGhlciBwYXJ0aWNpcGFudFxufTtcblxuZXhwb3J0IHR5cGUgU2lnbkNvbnZlcnRTdGVwM1Jlc3BvbnNlID0ge1xuICBnU2hhcmU6IEdTaGFyZTsgLy8gcGFydGljaXBhbnQgc2hhcmVcbiAgc2lnbkluZGV4OiBTaWduSW5kZXg7XG59O1xuXG5leHBvcnQgdHlwZSBTaWduQ29udmVydFJUID0ge1xuICBhU2hhcmU/OiBBU2hhcmU7XG4gIGJTaGFyZT86IEJTaGFyZTtcbiAgbXVTaGFyZT86IE1VU2hhcmU7XG4gIGdTaGFyZT86IEdTaGFyZTtcbn07XG5cbmV4cG9ydCB0eXBlIE9TaGFyZSA9IHtcbiAgaTogbnVtYmVyO1xuICB5OiBzdHJpbmc7XG4gIGs6IHN0cmluZztcbiAgb21pY3Jvbjogc3RyaW5nO1xuICBkZWx0YTogc3RyaW5nO1xuICBHYW1tYTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgRFNoYXJlID0gU2lnbkluZGV4ICYge1xuICBkZWx0YTogc3RyaW5nO1xuICBHYW1tYTogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgU1NoYXJlID0ge1xuICBpOiBudW1iZXI7XG4gIFI6IHN0cmluZztcbiAgczogc3RyaW5nO1xuICB5OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBTaWduQ29tYmluZSA9IHtcbiAgZ1NoYXJlOiBHU2hhcmU7XG4gIHNpZ25JbmRleDogU2lnbkluZGV4O1xufTtcblxuZXhwb3J0IHR5cGUgU2lnbkNvbWJpbmVSVCA9IHtcbiAgb1NoYXJlOiBPU2hhcmU7XG4gIGRTaGFyZTogRFNoYXJlO1xufTtcblxuZXhwb3J0IHR5cGUgU2lnbmF0dXJlID0ge1xuICB5OiBzdHJpbmc7XG4gIHJlY2lkOiBudW1iZXI7XG4gIHI6IHN0cmluZztcbiAgczogc3RyaW5nO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNWQVNoYXJlIHtcbiAgVjogYmlnaW50O1xuICBBOiBiaWdpbnQ7XG4gIGNvbURlY29tVkE6IEhhc2hDb21taXREZWNvbW1pdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNWQVNoYXJlV2l0aFByb29mcyBleHRlbmRzIFB1YmxpY1ZBU2hhcmUsIFZBUHJvb2ZzIHt9XG5cbmV4cG9ydCBpbnRlcmZhY2UgVkFTaGFyZSBleHRlbmRzIFNTaGFyZSwgUHVibGljVkFTaGFyZSB7XG4gIG06IEJ1ZmZlcjtcbiAgbDogYmlnaW50O1xuICByaG86IGJpZ2ludDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWQVByb29mcyB7XG4gIHprVlByb29mVjogRWNkc2FUeXBlcy5aa1ZQcm9vZjtcbiAgc2Nobm9yclByb29mQTogU2Nobm9yclByb29mO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZBU2hhcmVXaXRoUHJvb2ZzIGV4dGVuZHMgVkFTaGFyZSwgVkFQcm9vZnMge1xuICBwcm9vZkNvbnRleHQ6IEJ1ZmZlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNVVFNoYXJlIHtcbiAgVTogYmlnaW50O1xuICBUOiBiaWdpbnQ7XG4gIGNvbURlY29tVVQ6IEhhc2hDb21taXREZWNvbW1pdDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVVFNoYXJlIGV4dGVuZHMgU1NoYXJlLCBQdWJsaWNVVFNoYXJlIHt9XG4iXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { Ed25519Curve } from '../../curves';
|
|
3
3
|
import Shamir from '../../shamir';
|
|
4
|
-
import HDTree from '../../hdTree';
|
|
5
4
|
import { KeyShare, UShare, YShare, KeyCombine, PShare, SubkeyShare, JShare, SignShare, Signature, XShare, RShare, GShare } from './types';
|
|
5
|
+
import { HDTree } from '@bitgo-beta/sdk-lib-mpc';
|
|
6
6
|
export default class Eddsa {
|
|
7
7
|
static curve: Ed25519Curve;
|
|
8
8
|
static shamir: Shamir;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eddsa.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/eddsa/eddsa.ts"],"names":[],"mappings":";AAgCA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,MAAM,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"eddsa.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/eddsa/eddsa.ts"],"names":[],"mappings":";AAgCA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,MAAM,MAAM,cAAc,CAAC;AAElC,OAAO,EACL,QAAQ,EACR,MAAM,EACN,MAAM,EACN,UAAU,EACV,MAAM,EACN,WAAW,EACX,MAAM,EACN,SAAS,EACT,SAAS,EACT,MAAM,EACN,MAAM,EACN,MAAM,EACP,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAKjD,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,MAAM,CAAC,KAAK,EAAE,YAAY,CAAsB;IAChD,MAAM,CAAC,MAAM,EAAE,MAAM,CAA2B;IAChD,MAAM,CAAC,WAAW,UAAS;WAEd,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IASxD,MAAM,CAAC,EAAE,MAAM,CAAC;gBAEJ,MAAM,CAAC,EAAE,MAAM;IAI3B,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ;IA6CtF,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,UAAU;IAgDzD;;;;;;OAMG;IACH,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAqB9D,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW;IA2DvE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS;IAmDvF,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,MAAM,EAAO,GAAG,MAAM;IAgC7F,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS;IAkBxC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO;IAMtD,OAAO,CAAC,kBAAkB;CAQ3B"}
|
|
@@ -304,4 +304,4 @@ exports.default = Eddsa;
|
|
|
304
304
|
Eddsa.curve = new curves_1.Ed25519Curve();
|
|
305
305
|
Eddsa.shamir = new shamir_1.default(Eddsa.curve);
|
|
306
306
|
Eddsa.initialized = false;
|
|
307
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRkc2EuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcy9lZGRzYS9lZGRzYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFDSCxtQ0FBaUQ7QUFDakQseUNBQTRDO0FBQzVDLDBEQUFrQztBQUVsQyxxQ0FBK0c7QUFlL0csb0RBQTRCO0FBRTVCLFFBQVE7QUFDUixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsc0VBQXNFLENBQUMsQ0FBQztBQUU1RixNQUFxQixLQUFLO0lBZ0J4QixZQUFZLE1BQWU7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQWJELE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQWU7UUFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDdEIsTUFBTSxxQkFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1NBQzFCO1FBRUQsT0FBTyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBUUQsUUFBUSxDQUFDLEtBQWEsRUFBRSxTQUFpQixFQUFFLFNBQWlCLEVBQUUsSUFBYTtRQUN6RSxJQUFJLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxTQUFTLENBQUMsRUFBRTtZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDNUM7UUFDRCxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7U0FDN0M7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLGFBQUosSUFBSSxjQUFK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Q29udGVudCI6WyIvKipcbiAqIE1vZHVsZSBwcm92aWRlcyBmdW5jdGlvbnMgZm9yIE1QQyB1c2luZyB0aHJlc2hvbGQgc2lnbmF0dXJlIHNjaGVtZSAoVFNTKS4gSXQgY29udGFpbnNcbiAqIGZ1bmN0aW9ucyBmb3Iga2V5IGdlbmVyYXRpb24gYW5kIG1lc3NhZ2Ugc2lnbmluZyB3aXRoIEVkRFNBLlxuICpcbiAqXG4gKiA9PT09PT09PT09PT09PT09PT09PT09XG4gKiBFZERTQSBLZXkgR2VuZXJhdGlvblxuICogPT09PT09PT09PT09PT09PT09PT09PVxuICogMS4gRWFjaCBzaWduZXIgZ2VuZXJhdGVzIHRoZWlyIG93biBrZXkgc2hhcmUsIHdoaWNoIGludm9sdmVzIGEgcHJpdmF0ZSB1LXNoYXJlIGFuZCBhIHB1YmxpYyB5LXNoYXJlLlxuICogMi4gU2lnbmVycyBkaXN0cmlidXRlIHRoZWlyIHktc2hhcmUgdG8gb3RoZXIgc2lnbmVycy5cbiAqIDMuIEFmdGVyIGV4Y2hhbmdpbmcgeS1zaGFyZXMgdGhlIG5leHQgcGhhc2UgaXMgdG8gY29tYmluZSBrZXkgc2hhcmVzLiBFYWNoIHNpZ25lciBjb21iaW5lcyB0aGVpciB1LXNoYXJlXG4gKiAgICB3aXRoIHRoZSB5LXNoYXJlcyByZWNlaXZlZCBmcm9tIG90aGVyIHNpZ25lcnMgaW4gb3JkZXIgdG8gZ2VuZXJhdGUgYSBwLXNoYXJlIGZvciB0aGVtc2VsdmVzLiBXZVxuICogICAgYWxzbyBzYXZlIGotc2hhcmVzIGZvciBvdGhlciBzaWduZXJzLlxuICogNC4gQXQgdGhpcyBwb2ludCB0aGUgcGxheWVycyBkbyBub3QgZGlzdHJpYnV0ZSBhbnkgc2hhcmVzIGFuZCB0aGUgZmlyc3QgcGhhc2Ugb2YgdGhlXG4gKiAgICBzaWduaW5nIHByb3RvY29sIGlzIGNvbXBsZXRlLlxuICpcbiAqID09PT09PT09PT09PT09PT09PT09PT1cbiAqIEVkRFNBIFNpZ25pbmdcbiAqID09PT09PT09PT09PT09PT09PT09PT1cbiAqIDEuIFRoZSBwYXJ0aWVzIGZyb20ga2V5IGdlbmVyYXRpb24gZGVjaWRlIHRoZXkgd2FudCB0byBzaWduIHNvbWV0aGluZy4gVGhleSBiZWdpbiB0aGUgc2lnbmluZyBwcm90b2NvbFxuICogICAgYnkgZ2VuZXJhdGluZyBzaGFyZXMgb2YgYW4gZXBoZW1lcmFsIGtleS5cbiAqXG4gKiAgICBhKSBFYWNoIHNpZ25lciB1c2VzIGhpcyBwLXNoYXJlIGFuZCB0aGUgai1zaGFyZXMgc3RvcmVkIGZvciBvdGhlciBwbGF5ZXJzIHRvIGdlbmVyYXRlIGhpcyBzaWduaW5nIHNoYXJlLlxuICogICAgYikgVGhpcyByZXN1bHRzIGluIGVhY2ggc2lnbmVyIGhhdmluZyBhIHByaXZhdGUgeC1zaGFyZSBhbmQgcHVibGljIHItc2hhcmVzLlxuICpcbiAqIDIuIFNpZ25lcnMgZGlzdHJpYnV0ZSB0aGVpciByLXNoYXJlcyB0byBvdGhlciBzaWduZXJzLlxuICogMy4gQWZ0ZXIgZXhjaGFuZ2luZyByLXNoYXJlcywgZWFjaCBzaWduZXIgc2lnbnMgdGhlaXIgc2hhcmUgb2YgdGhlIGVwaGVtZXJhbCBrZXkgdXNpbmcgdGhlaXIgcHJpdmF0ZVxuICogICAgeC1zaGFyZSB3aXRoIHRoZSByLXNoYXJlcyBmcm9tIG90aGVyIHNpZ25lcnMuXG4gKiA0LiBUaGlzIHJlc3VsdHMgaW4gZWFjaCBzaWduZXIgaGF2aW5nIGEgcHVibGljIGctc2hhcmUgd2hpY2ggdGhleSBzZW5kIHRvIHRoZSBvdGhlciBzaWduZXJzLlxuICogNS4gQWZ0ZXIgdGhlIHNpZ25lcnMgYnJvYWRjYXN0IHRoZWlyIGctc2hhcmVzLCB0aGUgZmluYWwgc2lnbmF0dXJlIGNhbiBiZSByZS1jb25zdHJ1Y3RlZCBpbmRlcGVuZGVudGx5LlxuICovXG5pbXBvcnQgeyByYW5kb21CeXRlcywgY3JlYXRlSGFzaCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBFZDI1NTE5Q3VydmUgfSBmcm9tICcuLi8uLi9jdXJ2ZXMnO1xuaW1wb3J0IFNoYW1pciBmcm9tICcuLi8uLi9zaGFtaXInO1xuaW1wb3J0IEhEVHJlZSBmcm9tICcuLi8uLi9oZFRyZWUnO1xuaW1wb3J0IHsgYmlnSW50RnJvbUJ1ZmZlckxFLCBiaWdJbnRUb0J1ZmZlckxFLCBiaWdJbnRGcm9tQnVmZmVyQkUsIGJpZ0ludFRvQnVmZmVyQkUsIGNsYW1wIH0gZnJvbSAnLi4vLi4vdXRpbCc7XG5pbXBvcnQge1xuICBLZXlTaGFyZSxcbiAgVVNoYXJlLFxuICBZU2hhcmUsXG4gIEtleUNvbWJpbmUsXG4gIFBTaGFyZSxcbiAgU3Via2V5U2hhcmUsXG4gIEpTaGFyZSxcbiAgU2lnblNoYXJlLFxuICBTaWduYXR1cmUsXG4gIFhTaGFyZSxcbiAgUlNoYXJlLFxuICBHU2hhcmUsXG59IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG4vLyAyXjI1NlxuY29uc3QgYmFzZSA9IEJpZ0ludCgnMHgwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRWRkc2Ege1xuICBzdGF0aWMgY3VydmU6IEVkMjU1MTlDdXJ2ZSA9IG5ldyBFZDI1NTE5Q3VydmUoKTtcbiAgc3RhdGljIHNoYW1pcjogU2hhbWlyID0gbmV3IFNoYW1pcihFZGRzYS5jdXJ2ZSk7XG4gIHN0YXRpYyBpbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHN0YXRpYyBhc3luYyBpbml0aWFsaXplKGhkVHJlZT86IEhEVHJlZSk6IFByb21pc2U8RWRkc2E+IHtcbiAgICBpZiAoIUVkZHNhLmluaXRpYWxpemVkKSB7XG4gICAgICBhd2FpdCBFZDI1NTE5Q3VydmUuaW5pdGlhbGl6ZSgpO1xuICAgICAgRWRkc2EuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgRWRkc2EoaGRUcmVlKTtcbiAgfVxuXG4gIGhkVHJlZT86IEhEVHJlZTtcblxuICBjb25zdHJ1Y3RvcihoZFRyZWU/OiBIRFRyZWUpIHtcbiAgICB0aGlzLmhkVHJlZSA9IGhkVHJlZTtcbiAgfVxuXG4gIGtleVNoYXJlKGluZGV4OiBudW1iZXIsIHRocmVzaG9sZDogbnVtYmVyLCBudW1TaGFyZXM6IG51bWJlciwgc2VlZD86IEJ1ZmZlcik6IEtleVNoYXJlIHtcbiAgICBpZiAoIShpbmRleCA+IDAgJiYgaW5kZXggPD0gbnVtU2hhcmVzKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEtleVNoYXJlIGNvbmZpZycpO1xuICAgIH1cbiAgICBpZiAoc2VlZCAmJiBzZWVkLmxlbmd0aCAhPT0gNjQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VlZCBtdXN0IGhhdmUgbGVuZ3RoIDY0Jyk7XG4gICAgfVxuICAgIGNvbnN0IHNlZWRjaGFpbiA9IHNlZWQgPz8gcmFuZG9tQnl0ZXMoNjQpO1xuICAgIGNvbnN0IGFjdHVhbFNlZWQgPSBzZWVkY2hhaW4uc2xpY2UoMCwgMzIpO1xuICAgIGNvbnN0IGNoYWluY29kZSA9IHNlZWRjaGFpbi5zbGljZSgzMik7XG4gICAgY29uc3QgaCA9IGNyZWF0ZUhhc2goJ3NoYTUxMicpLnVwZGF0ZShhY3R1YWxTZWVkKS5kaWdlc3QoKTtcbiAgICBjb25zdCB1ID0gY2xhbXAoYmlnSW50RnJvbUJ1ZmZlckxFKGguc2xpY2UoMCwgMzIpKSk7XG4gICAgY29uc3QgeSA9IEVkZHNhLmN1cnZlLmJhc2VQb2ludE11bHQodSk7XG4gICAgY29uc3QgeyBzaGFyZXM6IHNwbGl0X3UsIHYgfSA9IEVkZHNhLnNoYW1pci5zcGxpdCh1LCB0aHJlc2hvbGQsIG51bVNoYXJlcyk7XG5cbiAgICBjb25zdCBQX2k6IFVTaGFyZSA9IHtcbiAgICAgIGk6IGluZGV4LFxuICAgICAgdDogdGhyZXNob2xkLFxuICAgICAgbjogbnVtU2hhcmVzLFxuICAgICAgeTogYmlnSW50VG9CdWZmZXJMRSh5LCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgc2VlZDogYWN0dWFsU2VlZC50b1N0cmluZygnaGV4JyksXG4gICAgICBjaGFpbmNvZGU6IGNoYWluY29kZS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgICBjb25zdCBzaGFyZXM6IEtleVNoYXJlID0ge1xuICAgICAgdVNoYXJlOiBQX2ksXG4gICAgICB5U2hhcmVzOiB7fSxcbiAgICB9O1xuXG4gICAgZm9yIChjb25zdCBpbmQgaW4gc3BsaXRfdSkge1xuICAgICAgY29uc3QgaSA9IHBhcnNlSW50KGluZCwgMTApO1xuICAgICAgaWYgKGkgPT09IGluZGV4KSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgc2hhcmVzLnlTaGFyZXNbaV0gPSB7XG4gICAgICAgIGksXG4gICAgICAgIGo6IFBfaS5pLFxuICAgICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKHksIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHY6IGJpZ0ludFRvQnVmZmVyTEUodlswXSwgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgdTogYmlnSW50VG9CdWZmZXJMRShzcGxpdF91W2luZF0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIGNoYWluY29kZTogY2hhaW5jb2RlLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBzaGFyZXM7XG4gIH1cblxuICBrZXlDb21iaW5lKHVTaGFyZTogVVNoYXJlLCB5U2hhcmVzOiBZU2hhcmVbXSk6IEtleUNvbWJpbmUge1xuICAgIGNvbnN0IGggPSBjcmVhdGVIYXNoKCdzaGE1MTInKS51cGRhdGUoQnVmZmVyLmZyb20odVNoYXJlLnNlZWQsICdoZXgnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgdSA9IGNsYW1wKGJpZ0ludEZyb21CdWZmZXJMRShoLnNsaWNlKDAsIDMyKSkpO1xuICAgIGNvbnN0IHlWYWx1ZXMgPSBbdVNoYXJlLCAuLi55U2hhcmVzXS5tYXAoKHNoYXJlKSA9PiBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2hhcmUueSwgJ2hleCcpKSk7XG4gICAgY29uc3QgeSA9IHlWYWx1ZXMucmVkdWNlKChwYXJ0aWFsLCBzaGFyZSkgPT4gRWRkc2EuY3VydmUucG9pbnRBZGQocGFydGlhbCwgc2hhcmUpKTtcbiAgICBjb25zdCBjaGFpbmNvZGVzID0gW3VTaGFyZSwgLi4ueVNoYXJlc10ubWFwKCh7IGNoYWluY29kZSB9KSA9PiBiaWdJbnRGcm9tQnVmZmVyQkUoQnVmZmVyLmZyb20oY2hhaW5jb2RlLCAnaGV4JykpKTtcbiAgICBjb25zdCBjaGFpbmNvZGUgPSBjaGFpbmNvZGVzLnJlZHVjZSgoYWNjLCBjaGFpbmNvZGUpID0+IChhY2MgKyBjaGFpbmNvZGUpICUgYmFzZSk7XG5cbiAgICAvLyBWZXJpZnkgc2hhcmVzLlxuICAgIGZvciAoY29uc3Qgc2hhcmUgb2YgeVNoYXJlcykge1xuICAgICAgaWYgKCd2JyBpbiBzaGFyZSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIEVkZHNhLnNoYW1pci52ZXJpZnkoXG4gICAgICAgICAgICBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2hhcmUudSwgJ2hleCcpKSxcbiAgICAgICAgICAgIFtiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2hhcmUueSwgJ2hleCcpKSwgYmlnSW50RnJvbUJ1ZmZlckxFKEJ1ZmZlci5mcm9tKHNoYXJlLnYhLCAnaGV4JykpXSxcbiAgICAgICAgICAgIHVTaGFyZS5pXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgLy8gVE9ETyhCRy02MTAzNik6IEZpeCBWZXJpZmljYXRpb25cbiAgICAgICAgICAvLyB0aHJvdyBuZXcgRXJyb3IoYENvdWxkIG5vdCB2ZXJpZnkgc2hhcmUgZnJvbSBwYXJ0aWNpcGFudCAke3NoYXJlLmp9LiBWZXJpZmljYXRpb24gZXJyb3I6ICR7ZXJyfWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgUF9pOiBQU2hhcmUgPSB7XG4gICAgICBpOiB1U2hhcmUuaSxcbiAgICAgIHQ6IHVTaGFyZS50LFxuICAgICAgbjogdVNoYXJlLm4sXG4gICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKHksIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICB1OiBiaWdJbnRUb0J1ZmZlckxFKHUsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICBwcmVmaXg6IGguc2xpY2UoMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIGNoYWluY29kZTogYmlnSW50VG9CdWZmZXJCRShjaGFpbmNvZGUsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgICBjb25zdCBwbGF5ZXJzOiBLZXlDb21iaW5lID0ge1xuICAgICAgcFNoYXJlOiBQX2ksXG4gICAgICBqU2hhcmVzOiB7fSxcbiAgICB9O1xuXG4gICAgZm9yIChsZXQgaW5kID0gMDsgaW5kIDwgeVNoYXJlcy5sZW5ndGg7IGluZCsrKSB7XG4gICAgICBjb25zdCBQX2ogPSB5U2hhcmVzW2luZF07XG4gICAgICBwbGF5ZXJzLmpTaGFyZXNbUF9qLmpdID0ge1xuICAgICAgICBpOiBQX2ouaixcbiAgICAgICAgajogUF9pLmksXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gcGxheWVycztcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXJpdmVzIGEgY2hpbGQgY29tbW9uIGtleWNoYWluIGZyb20gY29tbW9uIGtleWNoYWluXG4gICAqXG4gICAqIEBwYXJhbSBjb21tb25LZXljaGFpbiAtIGNvbW1vbiBrZXljaGFpbiBhcyBhIGhleCBzdHJpbmdcbiAgICogQHBhcmFtIHBhdGggLSBiaXAzMiBwYXRoXG4gICAqIEByZXR1cm4ge3N0cmluZ30gZGVyaXZlZCBjb21tb24ga2V5Y2hhaW4gYXMgYSBoZXggc3RyaW5nXG4gICAqL1xuICBkZXJpdmVVbmhhcmRlbmVkKGNvbW1vbktleWNoYWluOiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuaGRUcmVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGRlcml2ZSBrZXkgd2l0aG91dCBIRFRyZWUgaW1wbGVtZW50YXRpb25cIik7XG4gICAgfVxuXG4gICAgY29uc3Qga2V5Y2hhaW4gPSBCdWZmZXIuZnJvbShjb21tb25LZXljaGFpbiwgJ2hleCcpO1xuXG4gICAgY29uc3QgZGVyaXZlZFB1YmxpY0tleWNoYWluID0gdGhpcy5oZFRyZWUucHVibGljRGVyaXZlKFxuICAgICAge1xuICAgICAgICBwazogYmlnSW50RnJvbUJ1ZmZlckxFKGtleWNoYWluLnNsaWNlKDAsIDMyKSksXG4gICAgICAgIGNoYWluY29kZTogYmlnSW50RnJvbUJ1ZmZlckJFKGtleWNoYWluLnNsaWNlKDMyKSksXG4gICAgICB9LFxuICAgICAgcGF0aFxuICAgICk7XG5cbiAgICBjb25zdCBkZXJpdmVkUGsgPSBiaWdJbnRUb0J1ZmZlckxFKGRlcml2ZWRQdWJsaWNLZXljaGFpbi5waywgMzIpLnRvU3RyaW5nKCdoZXgnKTtcbiAgICBjb25zdCBkZXJpdmVkQ2hhaW5jb2RlID0gYmlnSW50VG9CdWZmZXJCRShkZXJpdmVkUHVibGljS2V5Y2hhaW4uY2hhaW5jb2RlLCAzMikudG9TdHJpbmcoJ2hleCcpO1xuXG4gICAgcmV0dXJuIGRlcml2ZWRQayArIGRlcml2ZWRDaGFpbmNvZGU7XG4gIH1cblxuICBrZXlEZXJpdmUodVNoYXJlOiBVU2hhcmUsIHlTaGFyZXM6IFlTaGFyZVtdLCBwYXRoOiBzdHJpbmcpOiBTdWJrZXlTaGFyZSB7XG4gICAgaWYgKHRoaXMuaGRUcmVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGRlcml2ZSBrZXkgd2l0aG91dCBIRFRyZWUgaW1wbGVtZW50YXRpb25cIik7XG4gICAgfVxuICAgIGNvbnN0IGggPSBjcmVhdGVIYXNoKCdzaGE1MTInKS51cGRhdGUoQnVmZmVyLmZyb20odVNoYXJlLnNlZWQsICdoZXgnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgeVZhbHVlcyA9IFt1U2hhcmUsIC4uLnlTaGFyZXNdLm1hcCgoc2hhcmUpID0+IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShzaGFyZS55LCAnaGV4JykpKTtcbiAgICBjb25zdCB5ID0geVZhbHVlcy5yZWR1Y2UoKHBhcnRpYWwsIHNoYXJlKSA9PiBFZGRzYS5jdXJ2ZS5wb2ludEFkZChwYXJ0aWFsLCBzaGFyZSkpO1xuICAgIGNvbnN0IHUgPSBjbGFtcChiaWdJbnRGcm9tQnVmZmVyTEUoaC5zbGljZSgwLCAzMikpKTtcbiAgICBjb25zdCBwcmVmaXggPSBiaWdJbnRGcm9tQnVmZmVyQkUoaC5zbGljZSgzMikpO1xuICAgIGxldCBjb250cmliQ2hhaW5jb2RlID0gYmlnSW50RnJvbUJ1ZmZlckJFKEJ1ZmZlci5mcm9tKHVTaGFyZS5jaGFpbmNvZGUsICdoZXgnKSk7XG4gICAgY29uc3QgY2hhaW5jb2RlcyA9IFtcbiAgICAgIGNvbnRyaWJDaGFpbmNvZGUsXG4gICAgICAuLi55U2hhcmVzLm1hcCgoeyBjaGFpbmNvZGUgfSkgPT4gYmlnSW50RnJvbUJ1ZmZlckJFKEJ1ZmZlci5mcm9tKGNoYWluY29kZSwgJ2hleCcpKSksXG4gICAgXTtcbiAgICBjb25zdCBjaGFpbmNvZGUgPSBjaGFpbmNvZGVzLnJlZHVjZSgoYWNjLCBjaGFpbmNvZGUpID0+IChhY2MgKyBjaGFpbmNvZGUpICUgYmFzZSk7XG5cbiAgICAvLyBEZXJpdmUgc3Via2V5LlxuICAgIGNvbnN0IHN1YmtleSA9IHRoaXMuaGRUcmVlLnByaXZhdGVEZXJpdmUoeyBwazogeSwgc2s6IHUsIHByZWZpeCwgY2hhaW5jb2RlIH0sIHBhdGgpO1xuXG4gICAgLy8gQ2FsY3VsYXRlIG5ldyBwdWJsaWMga2V5IGNvbnRyaWJ1dGlvbi5cbiAgICBjb25zdCBjb250cmliWSA9IEVkZHNhLmN1cnZlLmJhc2VQb2ludE11bHQoc3Via2V5LnNrKTtcblxuICAgIC8vIENhbGN1bGF0ZSBuZXcgY2hhaW5jb2RlIGNvbnRyaWJ1dGlvbi5cbiAgICBjb25zdCBjaGFpbmNvZGVEZWx0YSA9IChiYXNlICsgc3Via2V5LmNoYWluY29kZSAtIGNoYWluY29kZSkgJSBiYXNlO1xuICAgIGNvbnRyaWJDaGFpbmNvZGUgPSAoY29udHJpYkNoYWluY29kZSArIGNoYWluY29kZURlbHRhKSAlIGJhc2U7XG5cbiAgICAvLyBDYWxjdWxhdGUgbmV3IHUgdmFsdWVzLlxuICAgIGNvbnN0IHsgc2hhcmVzOiBzcGxpdF91LCB2IH0gPSBFZGRzYS5zaGFtaXIuc3BsaXQoc3Via2V5LnNrLCB1U2hhcmUudCwgdVNoYXJlLm4pO1xuXG4gICAgY29uc3QgUF9pOiBQU2hhcmUgPSB7XG4gICAgICBpOiB1U2hhcmUuaSxcbiAgICAgIHQ6IHVTaGFyZS50LFxuICAgICAgbjogdVNoYXJlLm4sXG4gICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKHN1YmtleS5waywgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3Via2V5LnNrLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgcHJlZml4OiBiaWdJbnRUb0J1ZmZlckJFKHN1YmtleS5wcmVmaXghLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgY2hhaW5jb2RlOiBiaWdJbnRUb0J1ZmZlckJFKHN1YmtleS5jaGFpbmNvZGUsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcblxuICAgIGNvbnN0IHNoYXJlczogU3Via2V5U2hhcmUgPSB7XG4gICAgICBwU2hhcmU6IFBfaSxcbiAgICAgIHlTaGFyZXM6IHt9LFxuICAgIH07XG5cbiAgICBmb3IgKGxldCBpbmQgPSAwOyBpbmQgPCB5U2hhcmVzLmxlbmd0aDsgaW5kKyspIHtcbiAgICAgIGNvbnN0IFBfaiA9IHlTaGFyZXNbaW5kXTtcbiAgICAgIHNoYXJlcy55U2hhcmVzW1Bfai5qXSA9IHtcbiAgICAgICAgaTogUF9qLmosXG4gICAgICAgIGo6IFBfaS5pLFxuICAgICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKGNvbnRyaWJZLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICB2OiBiaWdJbnRUb0J1ZmZlckxFKHZbMF0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3BsaXRfdVtQX2oual0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIGNoYWluY29kZTogYmlnSW50VG9CdWZmZXJCRShjb250cmliQ2hhaW5jb2RlLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVzO1xuICB9XG5cbiAgc2lnblNoYXJlKG1lc3NhZ2U6IEJ1ZmZlciwgcFNoYXJlOiBQU2hhcmUsIGpTaGFyZXM6IEpTaGFyZVtdLCBzZWVkPzogQnVmZmVyKTogU2lnblNoYXJlIHtcbiAgICBpZiAoc2VlZCAmJiBzZWVkLmxlbmd0aCAhPT0gNjQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VlZCBtdXN0IGhhdmUgbGVuZ3RoIDY0Jyk7XG4gICAgfVxuICAgIGNvbnN0IGluZGljZXMgPSBbcFNoYXJlLCAuLi5qU2hhcmVzXS5tYXAoKHsgaSB9KSA9PiBpKTtcbiAgICBjb25zdCB7IHNoYXJlczogc3BsaXRfdSwgdiB9ID0gRWRkc2Euc2hhbWlyLnNwbGl0KFxuICAgICAgYmlnSW50RnJvbUJ1ZmZlckxFKEJ1ZmZlci5mcm9tKHBTaGFyZS51LCAnaGV4JykpLFxuICAgICAgcFNoYXJlLnQsXG4gICAgICBwU2hhcmUublxuICAgICk7XG5cbiAgICAvLyBHZW5lcmF0ZSBub25jZSBjb250cmlidXRpb24uXG4gICAgY29uc3QgcHJlZml4ID0gQnVmZmVyLmZyb20ocFNoYXJlLnByZWZpeCwgJ2hleCcpO1xuICAgIGNvbnN0IHJhbmRvbUJ1ZmZlciA9IHNlZWQgPz8gcmFuZG9tQnl0ZXMoNjQpO1xuXG4gICAgY29uc3QgZGlnZXN0ID0gY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAgIC51cGRhdGUoQnVmZmVyLmNvbmNhdChbcHJlZml4LCBtZXNzYWdlLCByYW5kb21CdWZmZXJdKSlcbiAgICAgIC5kaWdlc3QoKTtcblxuICAgIGNvbnN0IHIgPSBFZGRzYS5jdXJ2ZS5zY2FsYXJSZWR1Y2UoYmlnSW50RnJvbUJ1ZmZlckxFKGRpZ2VzdCkpO1xuICAgIGNvbnN0IFIgPSBFZGRzYS5jdXJ2ZS5iYXNlUG9pbnRNdWx0KHIpO1xuICAgIGNvbnN0IHsgc2hhcmVzOiBzcGxpdF9yIH0gPSBFZGRzYS5zaGFtaXIuc3BsaXQociwgaW5kaWNlcy5sZW5ndGgsIGluZGljZXMubGVuZ3RoLCBpbmRpY2VzKTtcblxuICAgIGNvbnN0IFBfaTogWFNoYXJlID0ge1xuICAgICAgaTogcFNoYXJlLmksXG4gICAgICB5OiBwU2hhcmUueSxcbiAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3BsaXRfdVtwU2hhcmUuaV0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICByOiBiaWdJbnRUb0J1ZmZlckxFKHNwbGl0X3JbcFNoYXJlLmldLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgUjogYmlnSW50VG9CdWZmZXJMRShSLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG5cbiAgICBjb25zdCByZXN1bHRTaGFyZXM6IFNpZ25TaGFyZSA9IHtcbiAgICAgIHhTaGFyZTogUF9pLFxuICAgICAgclNoYXJlczoge30sXG4gICAgfTtcblxuICAgIGZvciAobGV0IGluZCA9IDA7IGluZCA8IGpTaGFyZXMubGVuZ3RoOyBpbmQrKykge1xuICAgICAgY29uc3QgU19qID0galNoYXJlc1tpbmRdO1xuICAgICAgcmVzdWx0U2hhcmVzLnJTaGFyZXNbU19qLmldID0ge1xuICAgICAgICBpOiBTX2ouaSxcbiAgICAgICAgajogcFNoYXJlLmksXG4gICAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3BsaXRfdVtTX2ouaV0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHY6IGJpZ0ludFRvQnVmZmVyTEUodlswXSwgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgcjogYmlnSW50VG9CdWZmZXJMRShzcGxpdF9yW1Nfai5pXSwgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgUjogYmlnSW50VG9CdWZmZXJMRShSLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICBjb21taXRtZW50OiBiaWdJbnRUb0J1ZmZlckxFKEVkZHNhLmN1cnZlLmJhc2VQb2ludE11bHQoc3BsaXRfcltTX2ouaV0pLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdFNoYXJlcztcbiAgfVxuXG4gIHNpZ24obWVzc2FnZTogQnVmZmVyLCBwbGF5ZXJTaGFyZTogWFNoYXJlLCByU2hhcmVzOiBSU2hhcmVbXSwgeVNoYXJlczogWVNoYXJlW10gPSBbXSk6IEdTaGFyZSB7XG4gICAgZm9yIChjb25zdCByU2hhcmUgb2YgclNoYXJlcykge1xuICAgICAgaWYgKHJTaGFyZS5jb21taXRtZW50KSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVDb21taXRtZW50KHJTaGFyZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgU19pID0gcGxheWVyU2hhcmU7XG5cbiAgICBjb25zdCB1VmFsdWVzID0gW3BsYXllclNoYXJlLCAuLi5yU2hhcmVzLCAuLi55U2hhcmVzXS5tYXAoKHsgdSB9KSA9PiBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20odSwgJ2hleCcpKSk7XG4gICAgY29uc3QgeCA9IHVWYWx1ZXMucmVkdWNlKChhY2MsIHUpID0+IEVkZHNhLmN1cnZlLnNjYWxhckFkZChhY2MsIHUpKTtcblxuICAgIGNvbnN0IFJWYWx1ZXMgPSBbcGxheWVyU2hhcmUsIC4uLnJTaGFyZXNdLm1hcCgoeyBSIH0pID0+IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShSLCAnaGV4JykpKTtcbiAgICBjb25zdCBSID0gUlZhbHVlcy5yZWR1Y2UoKHBhcnRpYWwsIHNoYXJlKSA9PiBFZGRzYS5jdXJ2ZS5wb2ludEFkZChwYXJ0aWFsLCBzaGFyZSkpO1xuXG4gICAgY29uc3QgclZhbHVlcyA9IFtwbGF5ZXJTaGFyZSwgLi4uclNoYXJlc10ubWFwKCh7IHIgfSkgPT4gYmlnSW50RnJvbUJ1ZmZlckxFKEJ1ZmZlci5mcm9tKHIsICdoZXgnKSkpO1xuICAgIGNvbnN0IHIgPSByVmFsdWVzLnJlZHVjZSgocGFydGlhbCwgc2hhcmUpID0+IEVkZHNhLmN1cnZlLnNjYWxhckFkZChwYXJ0aWFsLCBzaGFyZSkpO1xuXG4gICAgY29uc3QgY29tYmluZWRCdWZmZXIgPSBCdWZmZXIuY29uY2F0KFtiaWdJbnRUb0J1ZmZlckxFKFIsIDMyKSwgQnVmZmVyLmZyb20oU19pLnksICdoZXgnKSwgbWVzc2FnZV0pO1xuICAgIGNvbnN0IGRpZ2VzdCA9IGNyZWF0ZUhhc2goJ3NoYTUxMicpLnVwZGF0ZShjb21iaW5lZEJ1ZmZlcikuZGlnZXN0KCk7XG4gICAgY29uc3QgayA9IEVkZHNhLmN1cnZlLnNjYWxhclJlZHVjZShiaWdJbnRGcm9tQnVmZmVyTEUoZGlnZXN0KSk7XG5cbiAgICBjb25zdCBnYW1tYSA9IEVkZHNhLmN1cnZlLnNjYWxhckFkZChyLCBFZGRzYS5jdXJ2ZS5zY2FsYXJNdWx0KGssIHgpKTtcbiAgICBjb25zdCByZXN1bHQgPSB7XG4gICAgICBpOiBwbGF5ZXJTaGFyZS5pLFxuICAgICAgeTogcGxheWVyU2hhcmUueSxcbiAgICAgIGdhbW1hOiBiaWdJbnRUb0J1ZmZlckxFKGdhbW1hLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgUjogYmlnSW50VG9CdWZmZXJMRShSLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHNpZ25Db21iaW5lKHNoYXJlczogR1NoYXJlW10pOiBTaWduYXR1cmUge1xuICAgIGNvbnN0IHkgPSBzaGFyZXNbMF0ueTtcbiAgICBjb25zdCBSID0gc2hhcmVzWzBdLlI7XG5cbiAgICBjb25zdCByZXN1bHRTaGFyZXMgPSB7fTtcbiAgICBmb3IgKGNvbnN0IGluZCBpbiBzaGFyZXMpIHtcbiAgICAgIGNvbnN0IFNfaSA9IHNoYXJlc1tpbmRdO1xuICAgICAgcmVzdWx0U2hhcmVzW1NfaS5pXSA9IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShTX2kuZ2FtbWEsICdoZXgnKSk7XG4gICAgfVxuICAgIGNvbnN0IHNpZ21hOiBiaWdpbnQgPSBFZGRzYS5zaGFtaXIuY29tYmluZShyZXN1bHRTaGFyZXMpO1xuICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgIHksXG4gICAgICBSLFxuICAgICAgc2lnbWE6IGJpZ0ludFRvQnVmZmVyTEUoc2lnbWEsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgdmVyaWZ5KG1lc3NhZ2U6IEJ1ZmZlciwgc2lnbmF0dXJlOiBTaWduYXR1cmUpOiBib29sZWFuIHtcbiAgICBjb25zdCBwdWJsaWNLZXkgPSBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2lnbmF0dXJlLnksICdoZXgnKSk7XG4gICAgY29uc3Qgc2lnbmVkTWVzc2FnZSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKHNpZ25hdHVyZS5SLCAnaGV4JyksIEJ1ZmZlci5mcm9tKHNpZ25hdHVyZS5zaWdtYSwgJ2hleCcpXSk7XG4gICAgcmV0dXJuIEVkZHNhLmN1cnZlLnZlcmlmeShtZXNzYWdlLCBzaWduZWRNZXNzYWdlLCBwdWJsaWNLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUNvbW1pdG1lbnQoUlNoYXJlOiBSU2hhcmUpOiB2b2lkIHtcbiAgICBhc3NlcnQoUlNoYXJlLmNvbW1pdG1lbnQsICdDb21taXRtZW50IGlzIG1pc3NpbmcnKTtcbiAgICBjb25zdCBjID0gRWRkc2EuY3VydmUuYmFzZVBvaW50TXVsdChiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oUlNoYXJlLnIsICdoZXgnKSkpO1xuICAgIGNvbnN0IG90aGVyUGxheWVyQ29tbWl0bWVudCA9IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShSU2hhcmUuY29tbWl0bWVudCwgJ2hleCcpKTtcbiAgICBpZiAoYyAhPT0gb3RoZXJQbGF5ZXJDb21taXRtZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvdWxkIG5vdCB2ZXJpZnkgb3RoZXIgcGxheWVyIHNoYXJlJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
307
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRkc2EuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcy9lZGRzYS9lZGRzYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFDSCxtQ0FBaUQ7QUFDakQseUNBQTRDO0FBQzVDLDBEQUFrQztBQUNsQyxxQ0FBK0c7QUFlL0csb0RBQTRCO0FBRzVCLFFBQVE7QUFDUixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsc0VBQXNFLENBQUMsQ0FBQztBQUU1RixNQUFxQixLQUFLO0lBZ0J4QixZQUFZLE1BQWU7UUFDekIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQWJELE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQWU7UUFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUU7WUFDdEIsTUFBTSxxQkFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1NBQzFCO1FBRUQsT0FBTyxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBUUQsUUFBUSxDQUFDLEtBQWEsRUFBRSxTQUFpQixFQUFFLFNBQWlCLEVBQUUsSUFBYTtRQUN6RSxJQUFJLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxTQUFTLENBQUMsRUFBRTtZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDNUM7UUFDRCxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7U0FDN0M7UUFDRCxNQUFNLFNBQVMsR0FBRyxJQUFJLGFBQUosSUFBSSxjQUFK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Q29udGVudCI6WyIvKipcbiAqIE1vZHVsZSBwcm92aWRlcyBmdW5jdGlvbnMgZm9yIE1QQyB1c2luZyB0aHJlc2hvbGQgc2lnbmF0dXJlIHNjaGVtZSAoVFNTKS4gSXQgY29udGFpbnNcbiAqIGZ1bmN0aW9ucyBmb3Iga2V5IGdlbmVyYXRpb24gYW5kIG1lc3NhZ2Ugc2lnbmluZyB3aXRoIEVkRFNBLlxuICpcbiAqXG4gKiA9PT09PT09PT09PT09PT09PT09PT09XG4gKiBFZERTQSBLZXkgR2VuZXJhdGlvblxuICogPT09PT09PT09PT09PT09PT09PT09PVxuICogMS4gRWFjaCBzaWduZXIgZ2VuZXJhdGVzIHRoZWlyIG93biBrZXkgc2hhcmUsIHdoaWNoIGludm9sdmVzIGEgcHJpdmF0ZSB1LXNoYXJlIGFuZCBhIHB1YmxpYyB5LXNoYXJlLlxuICogMi4gU2lnbmVycyBkaXN0cmlidXRlIHRoZWlyIHktc2hhcmUgdG8gb3RoZXIgc2lnbmVycy5cbiAqIDMuIEFmdGVyIGV4Y2hhbmdpbmcgeS1zaGFyZXMgdGhlIG5leHQgcGhhc2UgaXMgdG8gY29tYmluZSBrZXkgc2hhcmVzLiBFYWNoIHNpZ25lciBjb21iaW5lcyB0aGVpciB1LXNoYXJlXG4gKiAgICB3aXRoIHRoZSB5LXNoYXJlcyByZWNlaXZlZCBmcm9tIG90aGVyIHNpZ25lcnMgaW4gb3JkZXIgdG8gZ2VuZXJhdGUgYSBwLXNoYXJlIGZvciB0aGVtc2VsdmVzLiBXZVxuICogICAgYWxzbyBzYXZlIGotc2hhcmVzIGZvciBvdGhlciBzaWduZXJzLlxuICogNC4gQXQgdGhpcyBwb2ludCB0aGUgcGxheWVycyBkbyBub3QgZGlzdHJpYnV0ZSBhbnkgc2hhcmVzIGFuZCB0aGUgZmlyc3QgcGhhc2Ugb2YgdGhlXG4gKiAgICBzaWduaW5nIHByb3RvY29sIGlzIGNvbXBsZXRlLlxuICpcbiAqID09PT09PT09PT09PT09PT09PT09PT1cbiAqIEVkRFNBIFNpZ25pbmdcbiAqID09PT09PT09PT09PT09PT09PT09PT1cbiAqIDEuIFRoZSBwYXJ0aWVzIGZyb20ga2V5IGdlbmVyYXRpb24gZGVjaWRlIHRoZXkgd2FudCB0byBzaWduIHNvbWV0aGluZy4gVGhleSBiZWdpbiB0aGUgc2lnbmluZyBwcm90b2NvbFxuICogICAgYnkgZ2VuZXJhdGluZyBzaGFyZXMgb2YgYW4gZXBoZW1lcmFsIGtleS5cbiAqXG4gKiAgICBhKSBFYWNoIHNpZ25lciB1c2VzIGhpcyBwLXNoYXJlIGFuZCB0aGUgai1zaGFyZXMgc3RvcmVkIGZvciBvdGhlciBwbGF5ZXJzIHRvIGdlbmVyYXRlIGhpcyBzaWduaW5nIHNoYXJlLlxuICogICAgYikgVGhpcyByZXN1bHRzIGluIGVhY2ggc2lnbmVyIGhhdmluZyBhIHByaXZhdGUgeC1zaGFyZSBhbmQgcHVibGljIHItc2hhcmVzLlxuICpcbiAqIDIuIFNpZ25lcnMgZGlzdHJpYnV0ZSB0aGVpciByLXNoYXJlcyB0byBvdGhlciBzaWduZXJzLlxuICogMy4gQWZ0ZXIgZXhjaGFuZ2luZyByLXNoYXJlcywgZWFjaCBzaWduZXIgc2lnbnMgdGhlaXIgc2hhcmUgb2YgdGhlIGVwaGVtZXJhbCBrZXkgdXNpbmcgdGhlaXIgcHJpdmF0ZVxuICogICAgeC1zaGFyZSB3aXRoIHRoZSByLXNoYXJlcyBmcm9tIG90aGVyIHNpZ25lcnMuXG4gKiA0LiBUaGlzIHJlc3VsdHMgaW4gZWFjaCBzaWduZXIgaGF2aW5nIGEgcHVibGljIGctc2hhcmUgd2hpY2ggdGhleSBzZW5kIHRvIHRoZSBvdGhlciBzaWduZXJzLlxuICogNS4gQWZ0ZXIgdGhlIHNpZ25lcnMgYnJvYWRjYXN0IHRoZWlyIGctc2hhcmVzLCB0aGUgZmluYWwgc2lnbmF0dXJlIGNhbiBiZSByZS1jb25zdHJ1Y3RlZCBpbmRlcGVuZGVudGx5LlxuICovXG5pbXBvcnQgeyByYW5kb21CeXRlcywgY3JlYXRlSGFzaCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBFZDI1NTE5Q3VydmUgfSBmcm9tICcuLi8uLi9jdXJ2ZXMnO1xuaW1wb3J0IFNoYW1pciBmcm9tICcuLi8uLi9zaGFtaXInO1xuaW1wb3J0IHsgYmlnSW50RnJvbUJ1ZmZlckxFLCBiaWdJbnRUb0J1ZmZlckxFLCBiaWdJbnRGcm9tQnVmZmVyQkUsIGJpZ0ludFRvQnVmZmVyQkUsIGNsYW1wIH0gZnJvbSAnLi4vLi4vdXRpbCc7XG5pbXBvcnQge1xuICBLZXlTaGFyZSxcbiAgVVNoYXJlLFxuICBZU2hhcmUsXG4gIEtleUNvbWJpbmUsXG4gIFBTaGFyZSxcbiAgU3Via2V5U2hhcmUsXG4gIEpTaGFyZSxcbiAgU2lnblNoYXJlLFxuICBTaWduYXR1cmUsXG4gIFhTaGFyZSxcbiAgUlNoYXJlLFxuICBHU2hhcmUsXG59IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgSERUcmVlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWxpYi1tcGMnO1xuXG4vLyAyXjI1NlxuY29uc3QgYmFzZSA9IEJpZ0ludCgnMHgwMTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnKTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRWRkc2Ege1xuICBzdGF0aWMgY3VydmU6IEVkMjU1MTlDdXJ2ZSA9IG5ldyBFZDI1NTE5Q3VydmUoKTtcbiAgc3RhdGljIHNoYW1pcjogU2hhbWlyID0gbmV3IFNoYW1pcihFZGRzYS5jdXJ2ZSk7XG4gIHN0YXRpYyBpbml0aWFsaXplZCA9IGZhbHNlO1xuXG4gIHN0YXRpYyBhc3luYyBpbml0aWFsaXplKGhkVHJlZT86IEhEVHJlZSk6IFByb21pc2U8RWRkc2E+IHtcbiAgICBpZiAoIUVkZHNhLmluaXRpYWxpemVkKSB7XG4gICAgICBhd2FpdCBFZDI1NTE5Q3VydmUuaW5pdGlhbGl6ZSgpO1xuICAgICAgRWRkc2EuaW5pdGlhbGl6ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgRWRkc2EoaGRUcmVlKTtcbiAgfVxuXG4gIGhkVHJlZT86IEhEVHJlZTtcblxuICBjb25zdHJ1Y3RvcihoZFRyZWU/OiBIRFRyZWUpIHtcbiAgICB0aGlzLmhkVHJlZSA9IGhkVHJlZTtcbiAgfVxuXG4gIGtleVNoYXJlKGluZGV4OiBudW1iZXIsIHRocmVzaG9sZDogbnVtYmVyLCBudW1TaGFyZXM6IG51bWJlciwgc2VlZD86IEJ1ZmZlcik6IEtleVNoYXJlIHtcbiAgICBpZiAoIShpbmRleCA+IDAgJiYgaW5kZXggPD0gbnVtU2hhcmVzKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEtleVNoYXJlIGNvbmZpZycpO1xuICAgIH1cbiAgICBpZiAoc2VlZCAmJiBzZWVkLmxlbmd0aCAhPT0gNjQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VlZCBtdXN0IGhhdmUgbGVuZ3RoIDY0Jyk7XG4gICAgfVxuICAgIGNvbnN0IHNlZWRjaGFpbiA9IHNlZWQgPz8gcmFuZG9tQnl0ZXMoNjQpO1xuICAgIGNvbnN0IGFjdHVhbFNlZWQgPSBzZWVkY2hhaW4uc2xpY2UoMCwgMzIpO1xuICAgIGNvbnN0IGNoYWluY29kZSA9IHNlZWRjaGFpbi5zbGljZSgzMik7XG4gICAgY29uc3QgaCA9IGNyZWF0ZUhhc2goJ3NoYTUxMicpLnVwZGF0ZShhY3R1YWxTZWVkKS5kaWdlc3QoKTtcbiAgICBjb25zdCB1ID0gY2xhbXAoYmlnSW50RnJvbUJ1ZmZlckxFKGguc2xpY2UoMCwgMzIpKSk7XG4gICAgY29uc3QgeSA9IEVkZHNhLmN1cnZlLmJhc2VQb2ludE11bHQodSk7XG4gICAgY29uc3QgeyBzaGFyZXM6IHNwbGl0X3UsIHYgfSA9IEVkZHNhLnNoYW1pci5zcGxpdCh1LCB0aHJlc2hvbGQsIG51bVNoYXJlcyk7XG5cbiAgICBjb25zdCBQX2k6IFVTaGFyZSA9IHtcbiAgICAgIGk6IGluZGV4LFxuICAgICAgdDogdGhyZXNob2xkLFxuICAgICAgbjogbnVtU2hhcmVzLFxuICAgICAgeTogYmlnSW50VG9CdWZmZXJMRSh5LCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgc2VlZDogYWN0dWFsU2VlZC50b1N0cmluZygnaGV4JyksXG4gICAgICBjaGFpbmNvZGU6IGNoYWluY29kZS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgICBjb25zdCBzaGFyZXM6IEtleVNoYXJlID0ge1xuICAgICAgdVNoYXJlOiBQX2ksXG4gICAgICB5U2hhcmVzOiB7fSxcbiAgICB9O1xuXG4gICAgZm9yIChjb25zdCBpbmQgaW4gc3BsaXRfdSkge1xuICAgICAgY29uc3QgaSA9IHBhcnNlSW50KGluZCwgMTApO1xuICAgICAgaWYgKGkgPT09IGluZGV4KSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgc2hhcmVzLnlTaGFyZXNbaV0gPSB7XG4gICAgICAgIGksXG4gICAgICAgIGo6IFBfaS5pLFxuICAgICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKHksIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHY6IGJpZ0ludFRvQnVmZmVyTEUodlswXSwgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgdTogYmlnSW50VG9CdWZmZXJMRShzcGxpdF91W2luZF0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIGNoYWluY29kZTogY2hhaW5jb2RlLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBzaGFyZXM7XG4gIH1cblxuICBrZXlDb21iaW5lKHVTaGFyZTogVVNoYXJlLCB5U2hhcmVzOiBZU2hhcmVbXSk6IEtleUNvbWJpbmUge1xuICAgIGNvbnN0IGggPSBjcmVhdGVIYXNoKCdzaGE1MTInKS51cGRhdGUoQnVmZmVyLmZyb20odVNoYXJlLnNlZWQsICdoZXgnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgdSA9IGNsYW1wKGJpZ0ludEZyb21CdWZmZXJMRShoLnNsaWNlKDAsIDMyKSkpO1xuICAgIGNvbnN0IHlWYWx1ZXMgPSBbdVNoYXJlLCAuLi55U2hhcmVzXS5tYXAoKHNoYXJlKSA9PiBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2hhcmUueSwgJ2hleCcpKSk7XG4gICAgY29uc3QgeSA9IHlWYWx1ZXMucmVkdWNlKChwYXJ0aWFsLCBzaGFyZSkgPT4gRWRkc2EuY3VydmUucG9pbnRBZGQocGFydGlhbCwgc2hhcmUpKTtcbiAgICBjb25zdCBjaGFpbmNvZGVzID0gW3VTaGFyZSwgLi4ueVNoYXJlc10ubWFwKCh7IGNoYWluY29kZSB9KSA9PiBiaWdJbnRGcm9tQnVmZmVyQkUoQnVmZmVyLmZyb20oY2hhaW5jb2RlLCAnaGV4JykpKTtcbiAgICBjb25zdCBjaGFpbmNvZGUgPSBjaGFpbmNvZGVzLnJlZHVjZSgoYWNjLCBjaGFpbmNvZGUpID0+IChhY2MgKyBjaGFpbmNvZGUpICUgYmFzZSk7XG5cbiAgICAvLyBWZXJpZnkgc2hhcmVzLlxuICAgIGZvciAoY29uc3Qgc2hhcmUgb2YgeVNoYXJlcykge1xuICAgICAgaWYgKCd2JyBpbiBzaGFyZSkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIEVkZHNhLnNoYW1pci52ZXJpZnkoXG4gICAgICAgICAgICBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2hhcmUudSwgJ2hleCcpKSxcbiAgICAgICAgICAgIFtiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2hhcmUueSwgJ2hleCcpKSwgYmlnSW50RnJvbUJ1ZmZlckxFKEJ1ZmZlci5mcm9tKHNoYXJlLnYhLCAnaGV4JykpXSxcbiAgICAgICAgICAgIHVTaGFyZS5pXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgICAgLy8gVE9ETyhCRy02MTAzNik6IEZpeCBWZXJpZmljYXRpb25cbiAgICAgICAgICAvLyB0aHJvdyBuZXcgRXJyb3IoYENvdWxkIG5vdCB2ZXJpZnkgc2hhcmUgZnJvbSBwYXJ0aWNpcGFudCAke3NoYXJlLmp9LiBWZXJpZmljYXRpb24gZXJyb3I6ICR7ZXJyfWApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgUF9pOiBQU2hhcmUgPSB7XG4gICAgICBpOiB1U2hhcmUuaSxcbiAgICAgIHQ6IHVTaGFyZS50LFxuICAgICAgbjogdVNoYXJlLm4sXG4gICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKHksIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICB1OiBiaWdJbnRUb0J1ZmZlckxFKHUsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICBwcmVmaXg6IGguc2xpY2UoMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIGNoYWluY29kZTogYmlnSW50VG9CdWZmZXJCRShjaGFpbmNvZGUsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgICBjb25zdCBwbGF5ZXJzOiBLZXlDb21iaW5lID0ge1xuICAgICAgcFNoYXJlOiBQX2ksXG4gICAgICBqU2hhcmVzOiB7fSxcbiAgICB9O1xuXG4gICAgZm9yIChsZXQgaW5kID0gMDsgaW5kIDwgeVNoYXJlcy5sZW5ndGg7IGluZCsrKSB7XG4gICAgICBjb25zdCBQX2ogPSB5U2hhcmVzW2luZF07XG4gICAgICBwbGF5ZXJzLmpTaGFyZXNbUF9qLmpdID0ge1xuICAgICAgICBpOiBQX2ouaixcbiAgICAgICAgajogUF9pLmksXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gcGxheWVycztcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXJpdmVzIGEgY2hpbGQgY29tbW9uIGtleWNoYWluIGZyb20gY29tbW9uIGtleWNoYWluXG4gICAqXG4gICAqIEBwYXJhbSBjb21tb25LZXljaGFpbiAtIGNvbW1vbiBrZXljaGFpbiBhcyBhIGhleCBzdHJpbmdcbiAgICogQHBhcmFtIHBhdGggLSBiaXAzMiBwYXRoXG4gICAqIEByZXR1cm4ge3N0cmluZ30gZGVyaXZlZCBjb21tb24ga2V5Y2hhaW4gYXMgYSBoZXggc3RyaW5nXG4gICAqL1xuICBkZXJpdmVVbmhhcmRlbmVkKGNvbW1vbktleWNoYWluOiBzdHJpbmcsIHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuaGRUcmVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGRlcml2ZSBrZXkgd2l0aG91dCBIRFRyZWUgaW1wbGVtZW50YXRpb25cIik7XG4gICAgfVxuXG4gICAgY29uc3Qga2V5Y2hhaW4gPSBCdWZmZXIuZnJvbShjb21tb25LZXljaGFpbiwgJ2hleCcpO1xuXG4gICAgY29uc3QgZGVyaXZlZFB1YmxpY0tleWNoYWluID0gdGhpcy5oZFRyZWUucHVibGljRGVyaXZlKFxuICAgICAge1xuICAgICAgICBwazogYmlnSW50RnJvbUJ1ZmZlckxFKGtleWNoYWluLnNsaWNlKDAsIDMyKSksXG4gICAgICAgIGNoYWluY29kZTogYmlnSW50RnJvbUJ1ZmZlckJFKGtleWNoYWluLnNsaWNlKDMyKSksXG4gICAgICB9LFxuICAgICAgcGF0aFxuICAgICk7XG5cbiAgICBjb25zdCBkZXJpdmVkUGsgPSBiaWdJbnRUb0J1ZmZlckxFKGRlcml2ZWRQdWJsaWNLZXljaGFpbi5waywgMzIpLnRvU3RyaW5nKCdoZXgnKTtcbiAgICBjb25zdCBkZXJpdmVkQ2hhaW5jb2RlID0gYmlnSW50VG9CdWZmZXJCRShkZXJpdmVkUHVibGljS2V5Y2hhaW4uY2hhaW5jb2RlLCAzMikudG9TdHJpbmcoJ2hleCcpO1xuXG4gICAgcmV0dXJuIGRlcml2ZWRQayArIGRlcml2ZWRDaGFpbmNvZGU7XG4gIH1cblxuICBrZXlEZXJpdmUodVNoYXJlOiBVU2hhcmUsIHlTaGFyZXM6IFlTaGFyZVtdLCBwYXRoOiBzdHJpbmcpOiBTdWJrZXlTaGFyZSB7XG4gICAgaWYgKHRoaXMuaGRUcmVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbid0IGRlcml2ZSBrZXkgd2l0aG91dCBIRFRyZWUgaW1wbGVtZW50YXRpb25cIik7XG4gICAgfVxuICAgIGNvbnN0IGggPSBjcmVhdGVIYXNoKCdzaGE1MTInKS51cGRhdGUoQnVmZmVyLmZyb20odVNoYXJlLnNlZWQsICdoZXgnKSkuZGlnZXN0KCk7XG4gICAgY29uc3QgeVZhbHVlcyA9IFt1U2hhcmUsIC4uLnlTaGFyZXNdLm1hcCgoc2hhcmUpID0+IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShzaGFyZS55LCAnaGV4JykpKTtcbiAgICBjb25zdCB5ID0geVZhbHVlcy5yZWR1Y2UoKHBhcnRpYWwsIHNoYXJlKSA9PiBFZGRzYS5jdXJ2ZS5wb2ludEFkZChwYXJ0aWFsLCBzaGFyZSkpO1xuICAgIGNvbnN0IHUgPSBjbGFtcChiaWdJbnRGcm9tQnVmZmVyTEUoaC5zbGljZSgwLCAzMikpKTtcbiAgICBjb25zdCBwcmVmaXggPSBiaWdJbnRGcm9tQnVmZmVyQkUoaC5zbGljZSgzMikpO1xuICAgIGxldCBjb250cmliQ2hhaW5jb2RlID0gYmlnSW50RnJvbUJ1ZmZlckJFKEJ1ZmZlci5mcm9tKHVTaGFyZS5jaGFpbmNvZGUsICdoZXgnKSk7XG4gICAgY29uc3QgY2hhaW5jb2RlcyA9IFtcbiAgICAgIGNvbnRyaWJDaGFpbmNvZGUsXG4gICAgICAuLi55U2hhcmVzLm1hcCgoeyBjaGFpbmNvZGUgfSkgPT4gYmlnSW50RnJvbUJ1ZmZlckJFKEJ1ZmZlci5mcm9tKGNoYWluY29kZSwgJ2hleCcpKSksXG4gICAgXTtcbiAgICBjb25zdCBjaGFpbmNvZGUgPSBjaGFpbmNvZGVzLnJlZHVjZSgoYWNjLCBjaGFpbmNvZGUpID0+IChhY2MgKyBjaGFpbmNvZGUpICUgYmFzZSk7XG5cbiAgICAvLyBEZXJpdmUgc3Via2V5LlxuICAgIGNvbnN0IHN1YmtleSA9IHRoaXMuaGRUcmVlLnByaXZhdGVEZXJpdmUoeyBwazogeSwgc2s6IHUsIHByZWZpeCwgY2hhaW5jb2RlIH0sIHBhdGgpO1xuXG4gICAgLy8gQ2FsY3VsYXRlIG5ldyBwdWJsaWMga2V5IGNvbnRyaWJ1dGlvbi5cbiAgICBjb25zdCBjb250cmliWSA9IEVkZHNhLmN1cnZlLmJhc2VQb2ludE11bHQoc3Via2V5LnNrKTtcblxuICAgIC8vIENhbGN1bGF0ZSBuZXcgY2hhaW5jb2RlIGNvbnRyaWJ1dGlvbi5cbiAgICBjb25zdCBjaGFpbmNvZGVEZWx0YSA9IChiYXNlICsgc3Via2V5LmNoYWluY29kZSAtIGNoYWluY29kZSkgJSBiYXNlO1xuICAgIGNvbnRyaWJDaGFpbmNvZGUgPSAoY29udHJpYkNoYWluY29kZSArIGNoYWluY29kZURlbHRhKSAlIGJhc2U7XG5cbiAgICAvLyBDYWxjdWxhdGUgbmV3IHUgdmFsdWVzLlxuICAgIGNvbnN0IHsgc2hhcmVzOiBzcGxpdF91LCB2IH0gPSBFZGRzYS5zaGFtaXIuc3BsaXQoc3Via2V5LnNrLCB1U2hhcmUudCwgdVNoYXJlLm4pO1xuXG4gICAgY29uc3QgUF9pOiBQU2hhcmUgPSB7XG4gICAgICBpOiB1U2hhcmUuaSxcbiAgICAgIHQ6IHVTaGFyZS50LFxuICAgICAgbjogdVNoYXJlLm4sXG4gICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKHN1YmtleS5waywgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3Via2V5LnNrLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgcHJlZml4OiBiaWdJbnRUb0J1ZmZlckJFKHN1YmtleS5wcmVmaXghLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgY2hhaW5jb2RlOiBiaWdJbnRUb0J1ZmZlckJFKHN1YmtleS5jaGFpbmNvZGUsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcblxuICAgIGNvbnN0IHNoYXJlczogU3Via2V5U2hhcmUgPSB7XG4gICAgICBwU2hhcmU6IFBfaSxcbiAgICAgIHlTaGFyZXM6IHt9LFxuICAgIH07XG5cbiAgICBmb3IgKGxldCBpbmQgPSAwOyBpbmQgPCB5U2hhcmVzLmxlbmd0aDsgaW5kKyspIHtcbiAgICAgIGNvbnN0IFBfaiA9IHlTaGFyZXNbaW5kXTtcbiAgICAgIHNoYXJlcy55U2hhcmVzW1Bfai5qXSA9IHtcbiAgICAgICAgaTogUF9qLmosXG4gICAgICAgIGo6IFBfaS5pLFxuICAgICAgICB5OiBiaWdJbnRUb0J1ZmZlckxFKGNvbnRyaWJZLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICB2OiBiaWdJbnRUb0J1ZmZlckxFKHZbMF0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3BsaXRfdVtQX2oual0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIGNoYWluY29kZTogYmlnSW50VG9CdWZmZXJCRShjb250cmliQ2hhaW5jb2RlLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2hhcmVzO1xuICB9XG5cbiAgc2lnblNoYXJlKG1lc3NhZ2U6IEJ1ZmZlciwgcFNoYXJlOiBQU2hhcmUsIGpTaGFyZXM6IEpTaGFyZVtdLCBzZWVkPzogQnVmZmVyKTogU2lnblNoYXJlIHtcbiAgICBpZiAoc2VlZCAmJiBzZWVkLmxlbmd0aCAhPT0gNjQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignU2VlZCBtdXN0IGhhdmUgbGVuZ3RoIDY0Jyk7XG4gICAgfVxuICAgIGNvbnN0IGluZGljZXMgPSBbcFNoYXJlLCAuLi5qU2hhcmVzXS5tYXAoKHsgaSB9KSA9PiBpKTtcbiAgICBjb25zdCB7IHNoYXJlczogc3BsaXRfdSwgdiB9ID0gRWRkc2Euc2hhbWlyLnNwbGl0KFxuICAgICAgYmlnSW50RnJvbUJ1ZmZlckxFKEJ1ZmZlci5mcm9tKHBTaGFyZS51LCAnaGV4JykpLFxuICAgICAgcFNoYXJlLnQsXG4gICAgICBwU2hhcmUublxuICAgICk7XG5cbiAgICAvLyBHZW5lcmF0ZSBub25jZSBjb250cmlidXRpb24uXG4gICAgY29uc3QgcHJlZml4ID0gQnVmZmVyLmZyb20ocFNoYXJlLnByZWZpeCwgJ2hleCcpO1xuICAgIGNvbnN0IHJhbmRvbUJ1ZmZlciA9IHNlZWQgPz8gcmFuZG9tQnl0ZXMoNjQpO1xuXG4gICAgY29uc3QgZGlnZXN0ID0gY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAgIC51cGRhdGUoQnVmZmVyLmNvbmNhdChbcHJlZml4LCBtZXNzYWdlLCByYW5kb21CdWZmZXJdKSlcbiAgICAgIC5kaWdlc3QoKTtcblxuICAgIGNvbnN0IHIgPSBFZGRzYS5jdXJ2ZS5zY2FsYXJSZWR1Y2UoYmlnSW50RnJvbUJ1ZmZlckxFKGRpZ2VzdCkpO1xuICAgIGNvbnN0IFIgPSBFZGRzYS5jdXJ2ZS5iYXNlUG9pbnRNdWx0KHIpO1xuICAgIGNvbnN0IHsgc2hhcmVzOiBzcGxpdF9yIH0gPSBFZGRzYS5zaGFtaXIuc3BsaXQociwgaW5kaWNlcy5sZW5ndGgsIGluZGljZXMubGVuZ3RoLCBpbmRpY2VzKTtcblxuICAgIGNvbnN0IFBfaTogWFNoYXJlID0ge1xuICAgICAgaTogcFNoYXJlLmksXG4gICAgICB5OiBwU2hhcmUueSxcbiAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3BsaXRfdVtwU2hhcmUuaV0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICByOiBiaWdJbnRUb0J1ZmZlckxFKHNwbGl0X3JbcFNoYXJlLmldLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgUjogYmlnSW50VG9CdWZmZXJMRShSLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG5cbiAgICBjb25zdCByZXN1bHRTaGFyZXM6IFNpZ25TaGFyZSA9IHtcbiAgICAgIHhTaGFyZTogUF9pLFxuICAgICAgclNoYXJlczoge30sXG4gICAgfTtcblxuICAgIGZvciAobGV0IGluZCA9IDA7IGluZCA8IGpTaGFyZXMubGVuZ3RoOyBpbmQrKykge1xuICAgICAgY29uc3QgU19qID0galNoYXJlc1tpbmRdO1xuICAgICAgcmVzdWx0U2hhcmVzLnJTaGFyZXNbU19qLmldID0ge1xuICAgICAgICBpOiBTX2ouaSxcbiAgICAgICAgajogcFNoYXJlLmksXG4gICAgICAgIHU6IGJpZ0ludFRvQnVmZmVyTEUoc3BsaXRfdVtTX2ouaV0sIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHY6IGJpZ0ludFRvQnVmZmVyTEUodlswXSwgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgcjogYmlnSW50VG9CdWZmZXJMRShzcGxpdF9yW1Nfai5pXSwgMzIpLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgUjogYmlnSW50VG9CdWZmZXJMRShSLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgICBjb21taXRtZW50OiBiaWdJbnRUb0J1ZmZlckxFKEVkZHNhLmN1cnZlLmJhc2VQb2ludE11bHQoc3BsaXRfcltTX2ouaV0pLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdFNoYXJlcztcbiAgfVxuXG4gIHNpZ24obWVzc2FnZTogQnVmZmVyLCBwbGF5ZXJTaGFyZTogWFNoYXJlLCByU2hhcmVzOiBSU2hhcmVbXSwgeVNoYXJlczogWVNoYXJlW10gPSBbXSk6IEdTaGFyZSB7XG4gICAgZm9yIChjb25zdCByU2hhcmUgb2YgclNoYXJlcykge1xuICAgICAgaWYgKHJTaGFyZS5jb21taXRtZW50KSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVDb21taXRtZW50KHJTaGFyZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgU19pID0gcGxheWVyU2hhcmU7XG5cbiAgICBjb25zdCB1VmFsdWVzID0gW3BsYXllclNoYXJlLCAuLi5yU2hhcmVzLCAuLi55U2hhcmVzXS5tYXAoKHsgdSB9KSA9PiBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20odSwgJ2hleCcpKSk7XG4gICAgY29uc3QgeCA9IHVWYWx1ZXMucmVkdWNlKChhY2MsIHUpID0+IEVkZHNhLmN1cnZlLnNjYWxhckFkZChhY2MsIHUpKTtcblxuICAgIGNvbnN0IFJWYWx1ZXMgPSBbcGxheWVyU2hhcmUsIC4uLnJTaGFyZXNdLm1hcCgoeyBSIH0pID0+IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShSLCAnaGV4JykpKTtcbiAgICBjb25zdCBSID0gUlZhbHVlcy5yZWR1Y2UoKHBhcnRpYWwsIHNoYXJlKSA9PiBFZGRzYS5jdXJ2ZS5wb2ludEFkZChwYXJ0aWFsLCBzaGFyZSkpO1xuXG4gICAgY29uc3QgclZhbHVlcyA9IFtwbGF5ZXJTaGFyZSwgLi4uclNoYXJlc10ubWFwKCh7IHIgfSkgPT4gYmlnSW50RnJvbUJ1ZmZlckxFKEJ1ZmZlci5mcm9tKHIsICdoZXgnKSkpO1xuICAgIGNvbnN0IHIgPSByVmFsdWVzLnJlZHVjZSgocGFydGlhbCwgc2hhcmUpID0+IEVkZHNhLmN1cnZlLnNjYWxhckFkZChwYXJ0aWFsLCBzaGFyZSkpO1xuXG4gICAgY29uc3QgY29tYmluZWRCdWZmZXIgPSBCdWZmZXIuY29uY2F0KFtiaWdJbnRUb0J1ZmZlckxFKFIsIDMyKSwgQnVmZmVyLmZyb20oU19pLnksICdoZXgnKSwgbWVzc2FnZV0pO1xuICAgIGNvbnN0IGRpZ2VzdCA9IGNyZWF0ZUhhc2goJ3NoYTUxMicpLnVwZGF0ZShjb21iaW5lZEJ1ZmZlcikuZGlnZXN0KCk7XG4gICAgY29uc3QgayA9IEVkZHNhLmN1cnZlLnNjYWxhclJlZHVjZShiaWdJbnRGcm9tQnVmZmVyTEUoZGlnZXN0KSk7XG5cbiAgICBjb25zdCBnYW1tYSA9IEVkZHNhLmN1cnZlLnNjYWxhckFkZChyLCBFZGRzYS5jdXJ2ZS5zY2FsYXJNdWx0KGssIHgpKTtcbiAgICBjb25zdCByZXN1bHQgPSB7XG4gICAgICBpOiBwbGF5ZXJTaGFyZS5pLFxuICAgICAgeTogcGxheWVyU2hhcmUueSxcbiAgICAgIGdhbW1hOiBiaWdJbnRUb0J1ZmZlckxFKGdhbW1hLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgICAgUjogYmlnSW50VG9CdWZmZXJMRShSLCAzMikudG9TdHJpbmcoJ2hleCcpLFxuICAgIH07XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHNpZ25Db21iaW5lKHNoYXJlczogR1NoYXJlW10pOiBTaWduYXR1cmUge1xuICAgIGNvbnN0IHkgPSBzaGFyZXNbMF0ueTtcbiAgICBjb25zdCBSID0gc2hhcmVzWzBdLlI7XG5cbiAgICBjb25zdCByZXN1bHRTaGFyZXMgPSB7fTtcbiAgICBmb3IgKGNvbnN0IGluZCBpbiBzaGFyZXMpIHtcbiAgICAgIGNvbnN0IFNfaSA9IHNoYXJlc1tpbmRdO1xuICAgICAgcmVzdWx0U2hhcmVzW1NfaS5pXSA9IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShTX2kuZ2FtbWEsICdoZXgnKSk7XG4gICAgfVxuICAgIGNvbnN0IHNpZ21hOiBiaWdpbnQgPSBFZGRzYS5zaGFtaXIuY29tYmluZShyZXN1bHRTaGFyZXMpO1xuICAgIGNvbnN0IHJlc3VsdCA9IHtcbiAgICAgIHksXG4gICAgICBSLFxuICAgICAgc2lnbWE6IGJpZ0ludFRvQnVmZmVyTEUoc2lnbWEsIDMyKS50b1N0cmluZygnaGV4JyksXG4gICAgfTtcbiAgICByZXR1cm4gcmVzdWx0O1xuICB9XG5cbiAgdmVyaWZ5KG1lc3NhZ2U6IEJ1ZmZlciwgc2lnbmF0dXJlOiBTaWduYXR1cmUpOiBib29sZWFuIHtcbiAgICBjb25zdCBwdWJsaWNLZXkgPSBiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oc2lnbmF0dXJlLnksICdoZXgnKSk7XG4gICAgY29uc3Qgc2lnbmVkTWVzc2FnZSA9IEJ1ZmZlci5jb25jYXQoW0J1ZmZlci5mcm9tKHNpZ25hdHVyZS5SLCAnaGV4JyksIEJ1ZmZlci5mcm9tKHNpZ25hdHVyZS5zaWdtYSwgJ2hleCcpXSk7XG4gICAgcmV0dXJuIEVkZHNhLmN1cnZlLnZlcmlmeShtZXNzYWdlLCBzaWduZWRNZXNzYWdlLCBwdWJsaWNLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSB2YWxpZGF0ZUNvbW1pdG1lbnQoUlNoYXJlOiBSU2hhcmUpOiB2b2lkIHtcbiAgICBhc3NlcnQoUlNoYXJlLmNvbW1pdG1lbnQsICdDb21taXRtZW50IGlzIG1pc3NpbmcnKTtcbiAgICBjb25zdCBjID0gRWRkc2EuY3VydmUuYmFzZVBvaW50TXVsdChiaWdJbnRGcm9tQnVmZmVyTEUoQnVmZmVyLmZyb20oUlNoYXJlLnIsICdoZXgnKSkpO1xuICAgIGNvbnN0IG90aGVyUGxheWVyQ29tbWl0bWVudCA9IGJpZ0ludEZyb21CdWZmZXJMRShCdWZmZXIuZnJvbShSU2hhcmUuY29tbWl0bWVudCwgJ2hleCcpKTtcbiAgICBpZiAoYyAhPT0gb3RoZXJQbGF5ZXJDb21taXRtZW50KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvdWxkIG5vdCB2ZXJpZnkgb3RoZXIgcGxheWVyIHNoYXJlJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/eddsa/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/mpc/tss/eddsa/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,MAAM;IACrB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,WAAW,SAAS;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcy9lZGRzYS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBVU2hhcmUge1xuICBpOiBudW1iZXI7XG4gIHQ6IG51bWJlcjtcbiAgbjogbnVtYmVyO1xuICB5OiBzdHJpbmc7XG4gIHNlZWQ6IHN0cmluZztcbiAgY2hhaW5jb2RlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgWVNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBqOiBudW1iZXI7XG4gIHk6IHN0cmluZztcbiAgdj86IHN0cmluZztcbiAgdTogc3RyaW5nO1xuICBjaGFpbmNvZGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLZXlTaGFyZSB7XG4gIHVTaGFyZTogVVNoYXJlO1xuICB5U2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBZU2hhcmU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBTaGFyZSB7XG4gIGk6IG51bWJlcjtcbiAgdDogbnVtYmVyO1xuICBuOiBudW1iZXI7XG4gIHk6IHN0cmluZztcbiAgdTogc3RyaW5nO1xuICBwcmVmaXg6IHN0cmluZztcbiAgY2hhaW5jb2RlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSlNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBqOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Q29tYmluZSB7XG4gIHBTaGFyZTogUFNoYXJlO1xuICBqU2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBKU2hhcmU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YmtleVNoYXJlIHtcbiAgcFNoYXJlOiBQU2hhcmU7XG4gIHlTaGFyZXM6IFJlY29yZDxudW1iZXIsIFlTaGFyZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgWFNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICB5OiBzdHJpbmc7XG4gIHU6IHN0cmluZztcbiAgcjogc3RyaW5nO1xuICBSOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUlNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBqOiBudW1iZXI7XG4gIHU6IHN0cmluZztcbiAgdj86IHN0cmluZztcbiAgcjogc3RyaW5nO1xuICBSOiBzdHJpbmc7XG4gIGNvbW1pdG1lbnQ/
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcy9lZGRzYS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBVU2hhcmUge1xuICBpOiBudW1iZXI7XG4gIHQ6IG51bWJlcjtcbiAgbjogbnVtYmVyO1xuICB5OiBzdHJpbmc7XG4gIHNlZWQ6IHN0cmluZztcbiAgY2hhaW5jb2RlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgWVNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBqOiBudW1iZXI7XG4gIHk6IHN0cmluZztcbiAgdj86IHN0cmluZztcbiAgdTogc3RyaW5nO1xuICBjaGFpbmNvZGU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBLZXlTaGFyZSB7XG4gIHVTaGFyZTogVVNoYXJlO1xuICB5U2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBZU2hhcmU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBTaGFyZSB7XG4gIGk6IG51bWJlcjtcbiAgdDogbnVtYmVyO1xuICBuOiBudW1iZXI7XG4gIHk6IHN0cmluZztcbiAgdTogc3RyaW5nO1xuICBwcmVmaXg6IHN0cmluZztcbiAgY2hhaW5jb2RlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSlNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBqOiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgS2V5Q29tYmluZSB7XG4gIHBTaGFyZTogUFNoYXJlO1xuICBqU2hhcmVzOiBSZWNvcmQ8bnVtYmVyLCBKU2hhcmU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YmtleVNoYXJlIHtcbiAgcFNoYXJlOiBQU2hhcmU7XG4gIHlTaGFyZXM6IFJlY29yZDxudW1iZXIsIFlTaGFyZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgWFNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICB5OiBzdHJpbmc7XG4gIHU6IHN0cmluZztcbiAgcjogc3RyaW5nO1xuICBSOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUlNoYXJlIHtcbiAgaTogbnVtYmVyO1xuICBqOiBudW1iZXI7XG4gIHU6IHN0cmluZztcbiAgdj86IHN0cmluZztcbiAgcjogc3RyaW5nO1xuICBSOiBzdHJpbmc7XG4gIGNvbW1pdG1lbnQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2lnblNoYXJlIHtcbiAgeFNoYXJlOiBYU2hhcmU7XG4gIHJTaGFyZXM6IFJlY29yZDxudW1iZXIsIFJTaGFyZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR1NoYXJlIHtcbiAgaTogbnVtYmVyO1xuICB5OiBzdHJpbmc7XG4gIGdhbW1hOiBzdHJpbmc7XG4gIFI6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTaWduYXR1cmUge1xuICB5OiBzdHJpbmc7XG4gIFI6IHN0cmluZztcbiAgc2lnbWE6IHN0cmluZztcbn1cbiJdfQ==
|
|
@@ -110,6 +110,22 @@ export declare abstract class BaseCoin implements IBaseCoin {
|
|
|
110
110
|
signMessage(key: {
|
|
111
111
|
prv: string;
|
|
112
112
|
}, message: string): Promise<Buffer>;
|
|
113
|
+
/**
|
|
114
|
+
* Create signatures for the backup and bitgo keys using the user key.
|
|
115
|
+
* We can verify the signatures when fetching the keys from wallet-platform later.
|
|
116
|
+
* Currently only `AbstractUtxoCoin` implements and uses the complementary `verifyKeySignature` method.
|
|
117
|
+
* @param prv - the user private key
|
|
118
|
+
* @param backupKeychain - contains the backup public key
|
|
119
|
+
* @param bitgoKeychain - contains the bitgo public key
|
|
120
|
+
*/
|
|
121
|
+
createKeySignatures(prv: string, backupKeychain: {
|
|
122
|
+
pub: string;
|
|
123
|
+
}, bitgoKeychain: {
|
|
124
|
+
pub: string;
|
|
125
|
+
}): Promise<{
|
|
126
|
+
backup: string;
|
|
127
|
+
bitgo: string;
|
|
128
|
+
}>;
|
|
113
129
|
/**
|
|
114
130
|
* Decompose a raw transaction into useful information.
|
|
115
131
|
* @param options - coin-specific
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseCoin.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/baseCoin/baseCoin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"baseCoin.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/baseCoin/baseCoin.ts"],"names":[],"mappings":"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"}
|