@bitgo-beta/sdk-coin-sol 7.6.4-beta.654 → 7.6.4-beta.656
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/cjs/src/lib/confidentialTransferBuilder.d.ts +93 -0
- package/dist/cjs/src/lib/confidentialTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/confidentialTransferBuilder.js +212 -0
- package/dist/cjs/src/lib/constants.d.ts +45 -2
- package/dist/cjs/src/lib/constants.d.ts.map +1 -1
- package/dist/cjs/src/lib/constants.js +53 -2
- package/dist/cjs/src/lib/explainTransactionWasm.d.ts.map +1 -1
- package/dist/cjs/src/lib/explainTransactionWasm.js +34 -1
- package/dist/cjs/src/lib/iface.d.ts +205 -2
- package/dist/cjs/src/lib/iface.d.ts.map +1 -1
- package/dist/cjs/src/lib/iface.js +1 -1
- package/dist/cjs/src/lib/index.d.ts +1 -0
- package/dist/cjs/src/lib/index.d.ts.map +1 -1
- package/dist/cjs/src/lib/index.js +4 -2
- package/dist/cjs/src/lib/instructionParamsFactory.d.ts.map +1 -1
- package/dist/cjs/src/lib/instructionParamsFactory.js +70 -1
- package/dist/cjs/src/lib/solInstructionFactory.d.ts +1 -1
- package/dist/cjs/src/lib/solInstructionFactory.d.ts.map +1 -1
- package/dist/cjs/src/lib/solInstructionFactory.js +446 -2
- package/dist/cjs/src/lib/transaction.d.ts.map +1 -1
- package/dist/cjs/src/lib/transaction.js +4 -1
- package/dist/cjs/src/lib/transactionBuilder.d.ts +2 -0
- package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/cjs/src/lib/transactionBuilder.js +2 -2
- package/dist/cjs/src/lib/transactionBuilderFactory.d.ts +9 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/cjs/src/lib/transactionBuilderFactory.js +14 -1
- package/dist/cjs/src/lib/utils.d.ts.map +1 -1
- package/dist/cjs/src/lib/utils.js +23 -1
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.js +909 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/lib/confidentialTransferBuilder.d.ts +93 -0
- package/dist/esm/lib/confidentialTransferBuilder.d.ts.map +1 -0
- package/dist/esm/lib/confidentialTransferBuilder.js +205 -0
- package/dist/esm/lib/constants.d.ts +45 -2
- package/dist/esm/lib/constants.d.ts.map +1 -1
- package/dist/esm/lib/constants.js +52 -1
- package/dist/esm/lib/explainTransactionWasm.d.ts.map +1 -1
- package/dist/esm/lib/explainTransactionWasm.js +32 -2
- package/dist/esm/lib/iface.d.ts +205 -2
- package/dist/esm/lib/iface.d.ts.map +1 -1
- package/dist/esm/lib/iface.js +1 -1
- package/dist/esm/lib/index.d.ts +1 -0
- package/dist/esm/lib/index.d.ts.map +1 -1
- package/dist/esm/lib/index.js +2 -1
- package/dist/esm/lib/instructionParamsFactory.d.ts.map +1 -1
- package/dist/esm/lib/instructionParamsFactory.js +70 -1
- package/dist/esm/lib/solInstructionFactory.d.ts +1 -1
- package/dist/esm/lib/solInstructionFactory.d.ts.map +1 -1
- package/dist/esm/lib/solInstructionFactory.js +447 -3
- package/dist/esm/lib/transaction.d.ts.map +1 -1
- package/dist/esm/lib/transaction.js +4 -1
- package/dist/esm/lib/transactionBuilder.d.ts +2 -0
- package/dist/esm/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/esm/lib/transactionBuilder.js +2 -2
- package/dist/esm/lib/transactionBuilderFactory.d.ts +9 -0
- package/dist/esm/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/esm/lib/transactionBuilderFactory.js +14 -1
- package/dist/esm/lib/utils.d.ts.map +1 -1
- package/dist/esm/lib/utils.js +24 -2
- package/package.json +8 -7
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Transaction, parseTransaction } from '@bitgo/wasm-solana';
|
|
2
|
-
import { UNAVAILABLE_TEXT } from './constants';
|
|
2
|
+
import { UNAVAILABLE_TEXT, ZK_ELGAMAL_PROOF_PROGRAM_ID, CT_EXT_DISCRIMINATOR, CT_SUB_DISCRIMINATORS, } from './constants';
|
|
3
3
|
import { findTokenName } from './instructionParamsFactory';
|
|
4
|
+
import bs58 from 'bs58';
|
|
4
5
|
// =============================================================================
|
|
5
6
|
// Transaction type derivation (ported from @bitgo/wasm-solana explain.ts)
|
|
6
7
|
// =============================================================================
|
|
@@ -15,6 +16,7 @@ var TransactionType;
|
|
|
15
16
|
TransactionType["WalletInitialization"] = "WalletInitialization";
|
|
16
17
|
TransactionType["AssociatedTokenAccountInitialization"] = "AssociatedTokenAccountInitialization";
|
|
17
18
|
TransactionType["CustomTx"] = "CustomTx";
|
|
19
|
+
TransactionType["ConfidentialTransfer"] = "ConfidentialTransfer";
|
|
18
20
|
})(TransactionType || (TransactionType = {}));
|
|
19
21
|
function detectCombinedPattern(instructions) {
|
|
20
22
|
for (let i = 0; i < instructions.length - 1; i++) {
|
|
@@ -43,6 +45,31 @@ function detectCombinedPattern(instructions) {
|
|
|
43
45
|
// Transaction type derivation
|
|
44
46
|
// =============================================================================
|
|
45
47
|
const BOILERPLATE_TYPES = new Set(['NonceAdvance', 'Memo', 'SetComputeUnitLimit', 'SetPriorityFee']);
|
|
48
|
+
/**
|
|
49
|
+
* Returns true if a WASM-parsed Unknown instruction is a confidential transfer instruction
|
|
50
|
+
* (Token-2022 CT extension or zk-elgamal-proof program).
|
|
51
|
+
*
|
|
52
|
+
* CT extension: byte 0 = CT_EXT_DISCRIMINATOR, byte 1 ∈ CT_SUB_DISCRIMINATORS
|
|
53
|
+
* zk-elgamal-proof: any instruction from the zk-elgamal-proof program
|
|
54
|
+
*/
|
|
55
|
+
function isWasmConfidentialTransferInstruction(instr) {
|
|
56
|
+
if (instr.type !== 'Unknown')
|
|
57
|
+
return false;
|
|
58
|
+
const programId = instr.programId;
|
|
59
|
+
// zk-elgamal-proof program instructions are always CT proof verifications
|
|
60
|
+
if (programId === ZK_ELGAMAL_PROOF_PROGRAM_ID) {
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
// Token-2022 CT extension: byte 0 = CT_EXT_DISCRIMINATOR, byte 1 ∈ CT_SUB_DISCRIMINATORS
|
|
64
|
+
const TOKEN_2022_PROGRAM_ID = 'TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb';
|
|
65
|
+
if (programId === TOKEN_2022_PROGRAM_ID) {
|
|
66
|
+
const dataBytes = bs58.decode(instr.data);
|
|
67
|
+
if (dataBytes.length >= 2) {
|
|
68
|
+
return dataBytes[0] === CT_EXT_DISCRIMINATOR && CT_SUB_DISCRIMINATORS.has(dataBytes[1]);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return false;
|
|
72
|
+
}
|
|
46
73
|
function deriveTransactionType(instructions, combined, memo) {
|
|
47
74
|
if (combined)
|
|
48
75
|
return TransactionType[combined.kind];
|
|
@@ -64,6 +91,9 @@ function deriveTransactionType(instructions, combined, memo) {
|
|
|
64
91
|
if (staking)
|
|
65
92
|
return TransactionType[staking.type];
|
|
66
93
|
// Unknown instructions indicate a custom/unrecognized transaction
|
|
94
|
+
if (instructions.some((i) => i.type === 'Unknown' && isWasmConfidentialTransferInstruction(i))) {
|
|
95
|
+
return TransactionType.ConfidentialTransfer;
|
|
96
|
+
}
|
|
67
97
|
if (instructions.some((i) => i.type === 'Unknown'))
|
|
68
98
|
return TransactionType.CustomTx;
|
|
69
99
|
// Send requires an explicit Transfer or TokenTransfer instruction.
|
|
@@ -258,4 +288,4 @@ export function explainSolTransaction(params) {
|
|
|
258
288
|
...(stakingAuthorize ? { stakingAuthorize } : {}),
|
|
259
289
|
};
|
|
260
290
|
}
|
|
261
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblRyYW5zYWN0aW9uV2FzbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZXhwbGFpblRyYW5zYWN0aW9uV2FzbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFrRCxNQUFNLG9CQUFvQixDQUFDO0FBQ25ILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUUvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFTM0QsZ0ZBQWdGO0FBQ2hGLDBFQUEwRTtBQUMxRSxnRkFBZ0Y7QUFFaEYsSUFBSyxlQVVKO0FBVkQsV0FBSyxlQUFlO0lBQ2xCLGdDQUFhLENBQUE7SUFDYixzREFBbUMsQ0FBQTtJQUNuQywwREFBdUMsQ0FBQTtJQUN2QyxzREFBbUMsQ0FBQTtJQUNuQyx3REFBcUMsQ0FBQTtJQUNyQyxzREFBbUMsQ0FBQTtJQUNuQyxnRUFBNkMsQ0FBQTtJQUM3QyxnR0FBNkUsQ0FBQTtJQUM3RSx3Q0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBVkksZUFBZSxLQUFmLGVBQWUsUUFVbkI7QUEyQkQsU0FBUyxxQkFBcUIsQ0FBQyxZQUFpQztJQUM5RCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsWUFBWSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUNqRCxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0IsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUVqQyxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssZUFBZSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssaUJBQWlCLEVBQUUsQ0FBQztZQUNyRSxPQUFPO2dCQUNMLElBQUksRUFBRSxpQkFBaUI7Z0JBQ3ZCLFdB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V0FBVztZQUNYLGNBQWM7WUFDZCxjQUFjO1lBQ2QsY0FBYztZQUNkLFNBQVM7WUFDVCxlQUFlO1lBQ2Ysa0JBQWtCO1lBQ2xCLEtBQUs7WUFDTCxNQUFNO1NBQ1A7UUFDRCxFQUFFLEVBQUUsRUFBRSxJQUFJLGdCQUFnQjtRQUMxQix5RUFBeUU7UUFDekUsZ0ZBQWdGO1FBQ2hGLElBQUksRUFBRSxNQUFNLEtBQUssZUFBZSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsTUFBTTtRQUNsRixhQUFhLEVBQUUsRUFBRTtRQUNqQixZQUFZLEVBQUUsR0FBRztRQUNqQixZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUNsQyxPQUFPLEVBQUUsZUFBZTtRQUN4QixNQUFNLEVBQUUsY0FBYztRQUN0QixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7UUFDekIsR0FBRyxFQUFFO1lBQ0gsR0FBRyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztZQUN2QyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDakU7UUFDRCxJQUFJO1FBQ0osU0FBUyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1FBQ3ZCLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWTtRQUNqQyxnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDbEQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVG9rZW5FbmFibGVtZW50IH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24sIHBhcnNlVHJhbnNhY3Rpb24sIHR5cGUgUGFyc2VkVHJhbnNhY3Rpb24sIHR5cGUgSW5zdHJ1Y3Rpb25QYXJhbXMgfSBmcm9tICdAYml0Z28vd2FzbS1zb2xhbmEnO1xuaW1wb3J0IHsgVU5BVkFJTEFCTEVfVEVYVCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IFN0YWtpbmdBdXRob3JpemVQYXJhbXMsIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gYXMgU29sTGliVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgZmluZFRva2VuTmFtZSB9IGZyb20gJy4vaW5zdHJ1Y3Rpb25QYXJhbXNGYWN0b3J5JztcblxuZXhwb3J0IGludGVyZmFjZSBFeHBsYWluVHJhbnNhY3Rpb25XYXNtT3B0aW9ucyB7XG4gIHR4QmFzZTY0OiBzdHJpbmc7XG4gIGZlZUluZm8/OiB7IGZlZTogc3RyaW5nIH07XG4gIHRva2VuQWNjb3VudFJlbnRFeGVtcHRBbW91bnQ/OiBzdHJpbmc7XG4gIGNvaW5OYW1lOiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUcmFuc2FjdGlvbiB0eXBlIGRlcml2YXRpb24gKHBvcnRlZCBmcm9tIEBiaXRnby93YXNtLXNvbGFuYSBleHBsYWluLnRzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZW51bSBUcmFuc2FjdGlvblR5cGUge1xuICBTZW5kID0gJ1NlbmQnLFxuICBTdGFraW5nQWN0aXZhdGUgPSAnU3Rha2luZ0FjdGl2YXRlJyxcbiAgU3Rha2luZ0RlYWN0aXZhdGUgPSAnU3Rha2luZ0RlYWN0aXZhdGUnLFxuICBTdGFraW5nV2l0aGRyYXcgPSAnU3Rha2luZ1dpdGhkcmF3JyxcbiAgU3Rha2luZ0F1dGhvcml6ZSA9ICdTdGFraW5nQXV0aG9yaXplJyxcbiAgU3Rha2luZ0RlbGVnYXRlID0gJ1N0YWtpbmdEZWxlZ2F0ZScsXG4gIFdhbGxldEluaXRpYWxpemF0aW9uID0gJ1dhbGxldEluaXRpYWxpemF0aW9uJyxcbiAgQXNzb2NpYXRlZFRva2VuQWNjb3VudEluaXRpYWxpemF0aW9uID0gJ0Fzc29jaWF0ZWRUb2tlbkFjY291bnRJbml0aWFsaXphdGlvbicsXG4gIEN1c3RvbVR4ID0gJ0N1c3RvbVR4Jyxcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvbWJpbmVkIGluc3RydWN0aW9uIHBhdHRlcm4gZGV0ZWN0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBTb2xhbmEgbmF0aXZlIHN0YWtpbmcgcmVxdWlyZXMgMyBzZXBhcmF0ZSBpbnN0cnVjdGlvbnM6XG4vLyAgIENyZWF0ZUFjY291bnQgKGZ1bmQpICsgU3Rha2VJbml0aWFsaXplIChzZXQgYXV0aG9yaXRpZXMpICsgRGVsZWdhdGVTdGFrZSAocGljayB2YWxpZGF0b3IpXG4vLyBNYXJpbmFkZSBzdGFraW5nIHVzZXMgb25seSBDcmVhdGVBY2NvdW50ICsgU3Rha2VJbml0aWFsaXplIChubyBEZWxlZ2F0ZSkuXG4vLyBXYWxsZXQgaW5pdCB1c2VzIENyZWF0ZUFjY291bnQgKyBOb25jZUluaXRpYWxpemUuXG5cbmludGVyZmFjZSBDb21iaW5lZFN0YWtlQWN0aXZhdGUge1xuICBraW5kOiAnU3Rha2luZ0FjdGl2YXRlJztcbiAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50OiBiaWdpbnQ7XG59XG5cbmludGVyZmFjZSBDb21iaW5lZFdhbGxldEluaXQge1xuICBraW5kOiAnV2FsbGV0SW5pdGlhbGl6YXRpb24nO1xuICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICBub25jZUFkZHJlc3M6IHN0cmluZztcbiAgYW1vdW50OiBiaWdpbnQ7XG59XG5cbnR5cGUgQ29tYmluZWRQYXR0ZXJuID0gQ29tYmluZWRTdGFrZUFjdGl2YXRlIHwgQ29tYmluZWRXYWxsZXRJbml0O1xuXG5mdW5jdGlvbiBkZXRlY3RDb21iaW5lZFBhdHRlcm4oaW5zdHJ1Y3Rpb25zOiBJbnN0cnVjdGlvblBhcmFtc1tdKTogQ29tYmluZWRQYXR0ZXJuIHwgbnVsbCB7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaW5zdHJ1Y3Rpb25zLmxlbmd0aCAtIDE7IGkrKykge1xuICAgIGNvbnN0IGN1cnIgPSBpbnN0cnVjdGlvbnNbaV07XG4gICAgY29uc3QgbmV4dCA9IGluc3RydWN0aW9uc1tpICsgMV07XG5cbiAgICBpZiAoY3Vyci50eXBlID09PSAnQ3JlYXRlQWNjb3VudCcgJiYgbmV4dC50eXBlID09PSAnU3Rha2VJbml0aWFsaXplJykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAga2luZDogJ1N0YWtpbmdBY3RpdmF0ZScsXG4gICAgICAgIGZyb21BZGRyZXNzOiBjdXJyLmZyb21BZGRyZXNzLFxuICAgICAgICBzdGFraW5nQWRkcmVzczogY3Vyci5uZXdBZGRyZXNzLFxuICAgICAgICBhbW91bnQ6IGN1cnIuYW1vdW50LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoY3Vyci50eXBlID09PSAnQ3JlYXRlQWNjb3VudCcgJiYgbmV4dC50eXBlID09PSAnTm9uY2VJbml0aWFsaXplJykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAga2luZDogJ1dhbGxldEluaXRpYWxpemF0aW9uJyxcbiAgICAgICAgZnJvbUFkZHJlc3M6IGN1cnIuZnJvbUFkZHJlc3MsXG4gICAgICAgIG5vbmNlQWRkcmVzczogY3Vyci5uZXdBZGRyZXNzLFxuICAgICAgICBhbW91bnQ6IGN1cnIuYW1vdW50LFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRyYW5zYWN0aW9uIHR5cGUgZGVyaXZhdGlvblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuY29uc3QgQk9JTEVSUExBVEVfVFlQRVMgPSBuZXcgU2V0KFsnTm9uY2VBZHZhbmNlJywgJ01lbW8nLCAnU2V0Q29tcHV0ZVVuaXRMaW1pdCcsICdTZXRQcmlvcml0eUZlZSddKTtcblxuZnVuY3Rpb24gZGVyaXZlVHJhbnNhY3Rpb25UeXBlKFxuICBpbnN0cnVjdGlvbnM6IEluc3RydWN0aW9uUGFyYW1zW10sXG4gIGNvbWJpbmVkOiBDb21iaW5lZFBhdHRlcm4gfCBudWxsLFxuICBtZW1vOiBzdHJpbmcgfCB1bmRlZmluZWRcbik6IFRyYW5zYWN0aW9uVHlwZSB7XG4gIGlmIChjb21iaW5lZCkgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZVtjb21iaW5lZC5raW5kXTtcblxuICAvLyBNYXJpbmFkZSBkZWFjdGl2YXRlOiBUcmFuc2ZlciArIG1lbW8gY29udGFpbmluZyBcIlByZXBhcmVGb3JSZXZva2VcIlxuICBpZiAobWVtbz8uaW5jbHVkZXMoJ1ByZXBhcmVGb3JSZXZva2UnKSkgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nRGVhY3RpdmF0ZTtcblxuICAvLyBKaXRvIHBvb2wgb3BlcmF0aW9uc1xuICBpZiAoaW5zdHJ1Y3Rpb25zLnNvbWUoKGkpID0+IGkudHlwZSA9PT0gJ1N0YWtlUG9vbERlcG9zaXRTb2wnKSkgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQWN0aXZhdGU7XG4gIGlmIChpbnN0cnVjdGlvbnMuc29tZSgoaSkgPT4gaS50eXBlID09PSAnU3Rha2VQb29sV2l0aGRyYXdTdGFrZScpKSByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlO1xuXG4gIC8vIEFUQS1vbmx5IHRyYW5zYWN0aW9ucyAoaWdub3JpbmcgYm9pbGVycGxhdGUpXG4gIGNvbnN0IG1lYW5pbmdmdWwgPSBpbnN0cnVjdGlvbnMuZmlsdGVyKChpKSA9PiAhQk9JTEVSUExBVEVfVFlQRVMuaGFzKGkudHlwZSkpO1xuICBpZiAobWVhbmluZ2Z1bC5sZW5ndGggPiAwICYmIG1lYW5pbmdmdWwuZXZlcnkoKGkpID0+IGkudHlwZSA9PT0gJ0NyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQnKSkge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQXNzb2NpYXRlZFRva2VuQWNjb3VudEluaXRpYWxpemF0aW9uO1xuICB9XG5cbiAgLy8gRGlyZWN0IHN0YWtpbmcgaW5zdHJ1Y3Rpb24gbWFwcGluZ1xuICBjb25zdCBzdGFraW5nID0gaW5zdHJ1Y3Rpb25zLmZpbmQoKGkpID0+IGkudHlwZSBpbiBUcmFuc2FjdGlvblR5cGUpO1xuICBpZiAoc3Rha2luZykgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZVtzdGFraW5nLnR5cGUgYXMga2V5b2YgdHlwZW9mIFRyYW5zYWN0aW9uVHlwZV07XG5cbiAgLy8gVW5rbm93biBpbnN0cnVjdGlvbnMgaW5kaWNhdGUgYSBjdXN0b20vdW5yZWNvZ25pemVkIHRyYW5zYWN0aW9uXG4gIGlmIChpbnN0cnVjdGlvbnMuc29tZSgoaSkgPT4gaS50eXBlID09PSAnVW5rbm93bicpKSByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkN1c3RvbVR4O1xuXG4gIC8vIFNlbmQgcmVxdWlyZXMgYW4gZXhwbGljaXQgVHJhbnNmZXIgb3IgVG9rZW5UcmFuc2ZlciBpbnN0cnVjdGlvbi5cbiAgLy8gRXZlcnl0aGluZyBlbHNlIGlzIGEgY3VzdG9tL3VucmVjb2duaXplZCB0cmFuc2FjdGlvbi5cbiAgaWYgKGluc3RydWN0aW9ucy5zb21lKChpKSA9PiBpLnR5cGUgPT09ICdUcmFuc2ZlcicgfHwgaS50eXBlID09PSAnVG9rZW5UcmFuc2ZlcicpKSByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlNlbmQ7XG5cbiAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5DdXN0b21UeDtcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFRyYW5zYWN0aW9uIElEIGV4dHJhY3Rpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEJhc2U1OCBlbmNvZGluZyBvZiA2NCB6ZXJvIGJ5dGVzICh1bnNpZ25lZCB0cmFuc2FjdGlvbnMgaGF2ZSBhbGwtemVybyBzaWduYXR1cmVzKVxuY29uc3QgQUxMX1pFUk9TX0JBU0U1OCA9ICcxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJztcblxuZnVuY3Rpb24gZXh0cmFjdFRyYW5zYWN0aW9uSWQoc2lnbmF0dXJlczogc3RyaW5nW10pOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICBjb25zdCBzaWcgPSBzaWduYXR1cmVzWzBdO1xuICBpZiAoIXNpZyB8fCBzaWcgPT09IEFMTF9aRVJPU19CQVNFNTgpIHJldHVybiB1bmRlZmluZWQ7XG4gIHJldHVybiBzaWc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBTdGFraW5nIGF1dGhvcml6ZSBtYXBwaW5nXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIE1hcCBXQVNNIFN0YWtpbmdBdXRob3JpemUgaW5zdHJ1Y3Rpb24gdG8gdGhlIGxlZ2FjeSBCaXRHb0pTIHNoYXBlLlxuICogQml0R29KUyB1c2VzIGRpZmZlcmVudCBmaWVsZCBuYW1lcyBmb3IgU3Rha2VyIHZzIFdpdGhkcmF3ZXIgYXV0aG9yaXR5IGNoYW5nZXMuXG4gKi9cbmZ1bmN0aW9uIG1hcFN0YWtpbmdBdXRob3JpemUoaW5zdHI6IHtcbiAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgb2xkQXV0aG9yaXplQWRkcmVzczogc3RyaW5nO1xuICBuZXdBdXRob3JpemVBZGRyZXNzOiBzdHJpbmc7XG4gIGF1dGhvcml6ZVR5cGU6ICdTdGFrZXInIHwgJ1dpdGhkcmF3ZXInO1xuICBjdXN0b2RpYW5BZGRyZXNzPzogc3RyaW5nO1xufSk6IFN0YWtpbmdBdXRob3JpemVQYXJhbXMge1xuICBpZiAoaW5zdHIuYXV0aG9yaXplVHlwZSA9PT0gJ1dpdGhkcmF3ZXInKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN0YWtpbmdBZGRyZXNzOiBpbnN0ci5zdGFraW5nQWRkcmVzcyxcbiAgICAgIG9sZFdpdGhkcmF3QWRkcmVzczogaW5zdHIub2xkQXV0aG9yaXplQWRkcmVzcyxcbiAgICAgIG5ld1dpdGhkcmF3QWRkcmVzczogaW5zdHIubmV3QXV0aG9yaXplQWRkcmVzcyxcbiAgICAgIGN1c3RvZGlhbkFkZHJlc3M6IGluc3RyLmN1c3RvZGlhbkFkZHJlc3MsXG4gICAgfTtcbiAgfVxuICAvLyBTdGFrZXIgYXV0aG9yaXR5IGNoYW5nZVxuICByZXR1cm4ge1xuICAgIHN0YWtpbmdBZGRyZXNzOiBpbnN0ci5zdGFraW5nQWRkcmVzcyxcbiAgICBvbGRXaXRoZHJhd0FkZHJlc3M6ICcnLFxuICAgIG5ld1dpdGhkcmF3QWRkcmVzczogJycsXG4gICAgb2xkU3Rha2luZ0F1dGhvcml0eUFkZHJlc3M6IGluc3RyLm9sZEF1dGhvcml6ZUFkZHJlc3MsXG4gICAgbmV3U3Rha2luZ0F1dGhvcml0eUFkZHJlc3M6IGluc3RyLm5ld0F1dGhvcml6ZUFkZHJlc3MsXG4gIH07XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNYWluIGV4cGxhaW4gZnVuY3Rpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogU3RhbmRhbG9uZSBXQVNNLWJhc2VkIHRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uLlxuICpcbiAqIFBhcnNlcyB0aGUgdHJhbnNhY3Rpb24gdmlhIGBwYXJzZVRyYW5zYWN0aW9uKHR4KWAgZnJvbSBAYml0Z28vd2FzbS1zb2xhbmEsXG4gKiB0aGVuIGRlcml2ZXMgdGhlIHRyYW5zYWN0aW9uIHR5cGUsIGV4dHJhY3RzIG91dHB1dHMvaW5wdXRzLCBjb21wdXRlcyBmZWVzLFxuICogYW5kIG1hcHMgdG8gQml0R29KUyBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGZvcm1hdC5cbiAqXG4gKiBUaGUgZXhwbGFpbiBsb2dpYyB3YXMgcG9ydGVkIGZyb20gd2FzbS1zb2xhbmEgcGVyIHRoZSBjb252ZW50aW9uIHRoYXRcbiAqIGBleHBsYWluVHJhbnNhY3Rpb25gIGJlbG9uZ3MgaW4gQml0R29KUywgbm90IGluIHdhc20tKiBwYWNrYWdlcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cGxhaW5Tb2xUcmFuc2FjdGlvbihwYXJhbXM6IEV4cGxhaW5UcmFuc2FjdGlvbldhc21PcHRpb25zKTogU29sTGliVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIGNvbnN0IHR4Qnl0ZXMgPSBCdWZmZXIuZnJvbShwYXJhbXMudHhCYXNlNjQsICdiYXNlNjQnKTtcbiAgY29uc3QgdHggPSBUcmFuc2FjdGlvbi5mcm9tQnl0ZXModHhCeXRlcyk7XG4gIGNvbnN0IHBhcnNlZDogUGFyc2VkVHJhbnNhY3Rpb24gPSBwYXJzZVRyYW5zYWN0aW9uKHR4KTtcblxuICAvLyAtLS0gVHJhbnNhY3Rpb24gSUQgLS0tXG4gIGNvbnN0IGlkID0gZXh0cmFjdFRyYW5zYWN0aW9uSWQocGFyc2VkLnNpZ25hdHVyZXMpO1xuXG4gIC8vIC0tLSBGZWUgY2FsY3VsYXRpb24gLS0tXG4gIGNvbnN0IGxhbXBvcnRzUGVyU2lnbmF0dXJlID0gcGFyYW1zLmZlZUluZm8gPyBCaWdJbnQocGFyYW1zLmZlZUluZm8uZmVlKSA6IDBuO1xuICBsZXQgZmVlID0gQmlnSW50KHBhcnNlZC5udW1TaWduYXR1cmVzKSAqIGxhbXBvcnRzUGVyU2lnbmF0dXJlO1xuXG4gIC8vIEVhY2ggQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudCBjcmVhdGVzIGEgbmV3IHRva2VuIGFjY291bnQgcmVxdWlyaW5nIGEgcmVudCBkZXBvc2l0LlxuICBjb25zdCBhdGFDb3VudCA9IHBhcnNlZC5pbnN0cnVjdGlvbnNEYXRhLmZpbHRlcigoaSkgPT4gaS50eXBlID09PSAnQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudCcpLmxlbmd0aDtcbiAgaWYgKGF0YUNvdW50ID4gMCAmJiBwYXJhbXMudG9rZW5BY2NvdW50UmVudEV4ZW1wdEFtb3VudCkge1xuICAgIGZlZSArPSBCaWdJbnQoYXRhQ291bnQpICogQmlnSW50KHBhcmFtcy50b2tlbkFjY291bnRSZW50RXhlbXB0QW1vdW50KTtcbiAgfVxuXG4gIC8vIC0tLSBFeHRyYWN0IG1lbW8gKG5lZWRlZCBiZWZvcmUgdHlwZSBkZXJpdmF0aW9uKSAtLS1cbiAgbGV0IG1lbW86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgZm9yIChjb25zdCBpbnN0ciBvZiBwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YSkge1xuICAgIGlmIChpbnN0ci50eXBlID09PSAnTWVtbycpIHtcbiAgICAgIG1lbW8gPSBpbnN0ci5tZW1vO1xuICAgIH1cbiAgfVxuXG4gIC8vIC0tLSBEZXRlY3QgY29tYmluZWQgcGF0dGVybnMgYW5kIGRlcml2ZSB0eXBlIC0tLVxuICBjb25zdCBjb21iaW5lZCA9IGRldGVjdENvbWJpbmVkUGF0dGVybihwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YSk7XG4gIGNvbnN0IHR4VHlwZSA9IGRlcml2ZVRyYW5zYWN0aW9uVHlwZShwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YSwgY29tYmluZWQsIG1lbW8pO1xuXG4gIC8vIE1hcmluYWRlIGRlYWN0aXZhdGU6IFRyYW5zZmVyICsgUHJlcGFyZUZvclJldm9rZSBtZW1vLlxuICAvLyBUaGUgVHJhbnNmZXIgaXMgYSBjb250cmFjdCBpbnRlcmFjdGlvbiwgbm90IHJlYWwgdmFsdWUgdHJhbnNmZXIg4oCUIHNraXAgZnJvbSBvdXRwdXRzLlxuICBjb25zdCBpc01hcmluYWRlRGVhY3RpdmF0ZSA9XG4gICAgdHhUeXBlID09PSBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0RlYWN0aXZhdGUgJiYgbWVtbyAhPT0gdW5kZWZpbmVkICYmIG1lbW8uaW5jbHVkZXMoJ1ByZXBhcmVGb3JSZXZva2UnKTtcblxuICAvLyAtLS0gRXh0cmFjdCBvdXRwdXRzIGFuZCBpbnB1dHMgLS0tXG4gIGNvbnN0IG91dHB1dHM6IHsgYWRkcmVzczogc3RyaW5nOyBhbW91bnQ6IGJpZ2ludDsgdG9rZW5OYW1lPzogc3RyaW5nIH1bXSA9IFtdO1xuICBjb25zdCBpbnB1dHM6IHsgYWRkcmVzczogc3RyaW5nOyB2YWx1ZTogYmlnaW50IH1bXSA9IFtdO1xuXG4gIGlmIChjb21iaW5lZD8ua2luZCA9PT0gJ1N0YWtpbmdBY3RpdmF0ZScpIHtcbiAgICBvdXRwdXRzLnB1c2goeyBhZGRyZXNzOiBjb21iaW5lZC5zdGFraW5nQWRkcmVzcywgYW1vdW50OiBjb21iaW5lZC5hbW91bnQgfSk7XG4gICAgaW5wdXRzLnB1c2goeyBhZGRyZXNzOiBjb21iaW5lZC5mcm9tQWRkcmVzcywgdmFsdWU6IGNvbWJpbmVkLmFtb3VudCB9KTtcbiAgfSBlbHNlIGlmIChjb21iaW5lZD8ua2luZCA9PT0gJ1dhbGxldEluaXRpYWxpemF0aW9uJykge1xuICAgIG91dHB1dHMucHVzaCh7IGFkZHJlc3M6IGNvbWJpbmVkLm5vbmNlQWRkcmVzcywgYW1vdW50OiBjb21iaW5lZC5hbW91bnQgfSk7XG4gICAgaW5wdXRzLnB1c2goeyBhZGRyZXNzOiBjb21iaW5lZC5mcm9tQWRkcmVzcywgdmFsdWU6IGNvbWJpbmVkLmFtb3VudCB9KTtcbiAgfSBlbHNlIHtcbiAgICBmb3IgKGNvbnN0IGluc3RyIG9mIHBhcnNlZC5pbnN0cnVjdGlvbnNEYXRhKSB7XG4gICAgICBzd2l0Y2ggKGluc3RyLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnVHJhbnNmZXInOlxuICAgICAgICAgIGlmIChpc01hcmluYWRlRGVhY3RpdmF0ZSkgYnJlYWs7XG4gICAgICAgICAgb3V0cHV0cy5wdXNoKHsgYWRkcmVzczogaW5zdHIudG9BZGRyZXNzLCBhbW91bnQ6IGluc3RyLmFtb3VudCB9KTtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLmZyb21BZGRyZXNzLCB2YWx1ZTogaW5zdHIuYW1vdW50IH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdUb2tlblRyYW5zZmVyJzpcbiAgICAgICAgICBvdXRwdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci50b0FkZHJlc3MsIGFtb3VudDogaW5zdHIuYW1vdW50LCB0b2tlbk5hbWU6IGluc3RyLnRva2VuQWRkcmVzcyB9KTtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLmZyb21BZGRyZXNzLCB2YWx1ZTogaW5zdHIuYW1vdW50IH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdTdGFraW5nQWN0aXZhdGUnOlxuICAgICAgICAgIG91dHB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLnN0YWtpbmdBZGRyZXNzLCBhbW91bnQ6IGluc3RyLmFtb3VudCB9KTtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLmZyb21BZGRyZXNzLCB2YWx1ZTogaW5zdHIuYW1vdW50IH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdTdGFraW5nV2l0aGRyYXcnOlxuICAgICAgICAgIC8vIFdpdGhkcmF3OiBTT0wgZmxvd3MgRlJPTSBzdGFraW5nIGFkZHJlc3MgVE8gdGhlIHJlY2lwaWVudCAoZnJvbUFkZHJlc3MpXG4gICAgICAgICAgb3V0cHV0cy5wdXNoKHsgYWRkcmVzczogaW5zdHIuZnJvbUFkZHJlc3MsIGFtb3VudDogaW5zdHIuYW1vdW50IH0pO1xuICAgICAgICAgIGlucHV0cy5wdXNoKHsgYWRkcmVzczogaW5zdHIuc3Rha2luZ0FkZHJlc3MsIHZhbHVlOiBpbnN0ci5hbW91bnQgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ1N0YWtlUG9vbERlcG9zaXRTb2wnOlxuICAgICAgICAgIC8vIEppdG8gbGlxdWlkIHN0YWtpbmcgZGVwb3NpdFxuICAgICAgICAgIG91dHB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLnN0YWtlUG9vbCwgYW1vdW50OiBpbnN0ci5sYW1wb3J0cyB9KTtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLmZ1bmRpbmdBY2NvdW50LCB2YWx1ZTogaW5zdHIubGFtcG9ydHMgfSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gLS0tIE91dHB1dCBhbW91bnQgKG5hdGl2ZSBTT0wgb25seSwgbm90IHRva2VuIGFtb3VudHMpIC0tLVxuICBjb25zdCBvdXRwdXRBbW91bnQgPSBvdXRwdXRzLmZpbHRlcigobykgPT4gIW8udG9rZW5OYW1lKS5yZWR1Y2UoKHN1bSwgbykgPT4gc3VtICsgby5hbW91bnQsIDBuKTtcblxuICAvLyAtLS0gQVRBIG93bmVyIG1hcHBpbmcgYW5kIHRva2VuIGVuYWJsZW1lbnRzIC0tLVxuICBjb25zdCBhdGFPd25lck1hcDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBjb25zdCB0b2tlbkVuYWJsZW1lbnRzOiBJVG9rZW5FbmFibGVtZW50W10gPSBbXTtcbiAgZm9yIChjb25zdCBpbnN0ciBvZiBwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YSkge1xuICAgIGlmIChpbnN0ci50eXBlID09PSAnQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudCcpIHtcbiAgICAgIGF0YU93bmVyTWFwW2luc3RyLmF0YUFkZHJlc3NdID0gaW5zdHIub3duZXJBZGRyZXNzO1xuICAgICAgdG9rZW5FbmFibGVtZW50cy5wdXNoKHtcbiAgICAgICAgYWRkcmVzczogaW5zdHIuYXRhQWRkcmVzcyxcbiAgICAgICAgdG9rZW5OYW1lOiBmaW5kVG9rZW5OYW1lKGluc3RyLm1pbnRBZGRyZXNzLCB1bmRlZmluZWQsIHRydWUpLFxuICAgICAgICB0b2tlbkFkZHJlc3M6IGluc3RyLm1pbnRBZGRyZXNzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gLS0tIFN0YWtpbmcgYXV0aG9yaXplIC0tLVxuICBsZXQgc3Rha2luZ0F1dGhvcml6ZTogU3Rha2luZ0F1dGhvcml6ZVBhcmFtcyB8IHVuZGVmaW5lZDtcbiAgZm9yIChjb25zdCBpbnN0ciBvZiBwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YSkge1xuICAgIGlmIChpbnN0ci50eXBlID09PSAnU3Rha2luZ0F1dGhvcml6ZScpIHtcbiAgICAgIHN0YWtpbmdBdXRob3JpemUgPSBtYXBTdGFraW5nQXV0aG9yaXplKGluc3RyKTtcbiAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIC8vIC0tLSBSZXNvbHZlIHRva2VuIG5hbWVzIGFuZCBjb252ZXJ0IGJpZ2ludCB0byBzdHJpbmcgYXQgc2VyaWFsaXphdGlvbiBib3VuZGFyeSAtLS1cbiAgY29uc3QgcmVzb2x2ZWRPdXRwdXRzID0gb3V0cHV0cy5tYXAoKG8pID0+ICh7XG4gICAgYWRkcmVzczogby5hZGRyZXNzLFxuICAgIGFtb3VudDogU3RyaW5nKG8uYW1vdW50KSxcbiAgICAuLi4oby50b2tlbk5hbWUgPyB7IHRva2VuTmFtZTogZmluZFRva2VuTmFtZShvLnRva2VuTmFtZSwgdW5kZWZpbmVkLCB0cnVlKSB9IDoge30pLFxuICB9KSk7XG5cbiAgY29uc3QgcmVzb2x2ZWRJbnB1dHMgPSBpbnB1dHMubWFwKChpKSA9PiAoe1xuICAgIGFkZHJlc3M6IGkuYWRkcmVzcyxcbiAgICB2YWx1ZTogU3RyaW5nKGkudmFsdWUpLFxuICB9KSk7XG5cbiAgcmV0dXJuIHtcbiAgICBkaXNwbGF5T3JkZXI6IFtcbiAgICAgICdpZCcsXG4gICAgICAndHlwZScsXG4gICAgICAnYmxvY2toYXNoJyxcbiAgICAgICdkdXJhYmxlTm9uY2UnLFxuICAgICAgJ291dHB1dEFtb3VudCcsXG4gICAgICAnY2hhbmdlQW1vdW50JyxcbiAgICAgICdvdXRwdXRzJyxcbiAgICAgICdjaGFuZ2VPdXRwdXRzJyxcbiAgICAgICd0b2tlbkVuYWJsZW1lbnRzJyxcbiAgICAgICdmZWUnLFxuICAgICAgJ21lbW8nLFxuICAgIF0sXG4gICAgaWQ6IGlkID8/IFVOQVZBSUxBQkxFX1RFWFQsXG4gICAgLy8gV0FTTSByZXR1cm5zIFwiU3Rha2luZ0F1dGhvcml6ZVwiIGJ1dCBCaXRHb0pTIHVzZXMgXCJTdGFraW5nQXV0aG9yaXplUmF3XCJcbiAgICAvLyB3aGVuIGRlc2VyaWFsaXppbmcgZnJvbSBieXRlcyAodGhlIG5vbi1yYXcgdHlwZSBvbmx5IGV4aXN0cyBkdXJpbmcgYnVpbGRpbmcpLlxuICAgIHR5cGU6IHR4VHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdBdXRob3JpemUgPyAnU3Rha2luZ0F1dGhvcml6ZVJhdycgOiB0eFR5cGUsXG4gICAgY2hhbmdlT3V0cHV0czogW10sXG4gICAgY2hhbmdlQW1vdW50OiAnMCcsXG4gICAgb3V0cHV0QW1vdW50OiBTdHJpbmcob3V0cHV0QW1vdW50KSxcbiAgICBvdXRwdXRzOiByZXNvbHZlZE91dHB1dHMsXG4gICAgaW5wdXRzOiByZXNvbHZlZElucHV0cyxcbiAgICBmZWVQYXllcjogcGFyc2VkLmZlZVBheWVyLFxuICAgIGZlZToge1xuICAgICAgZmVlOiBwYXJhbXMuZmVlSW5mbyA/IFN0cmluZyhmZWUpIDogJzAnLFxuICAgICAgZmVlUmF0ZTogcGFyYW1zLmZlZUluZm8gPyBOdW1iZXIocGFyYW1zLmZlZUluZm8uZmVlKSA6IHVuZGVmaW5lZCxcbiAgICB9LFxuICAgIG1lbW8sXG4gICAgYmxvY2toYXNoOiBwYXJzZWQubm9uY2UsXG4gICAgZHVyYWJsZU5vbmNlOiBwYXJzZWQuZHVyYWJsZU5vbmNlLFxuICAgIHRva2VuRW5hYmxlbWVudHMsXG4gICAgYXRhT3duZXJNYXAsXG4gICAgLi4uKHN0YWtpbmdBdXRob3JpemUgPyB7IHN0YWtpbmdBdXRob3JpemUgfSA6IHt9KSxcbiAgfTtcbn1cbiJdfQ==
|
|
291
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwbGFpblRyYW5zYWN0aW9uV2FzbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZXhwbGFpblRyYW5zYWN0aW9uV2FzbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFrRCxNQUFNLG9CQUFvQixDQUFDO0FBQ25ILE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsMkJBQTJCLEVBQzNCLG9CQUFvQixFQUNwQixxQkFBcUIsR0FDdEIsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sSUFBSSxNQUFNLE1BQU0sQ0FBQztBQVN4QixnRkFBZ0Y7QUFDaEYsMEVBQTBFO0FBQzFFLGdGQUFnRjtBQUVoRixJQUFLLGVBV0o7QUFYRCxXQUFLLGVBQWU7SUFDbEIsZ0NBQWEsQ0FBQTtJQUNiLHNEQUFtQyxDQUFBO0lBQ25DLDBEQUF1QyxDQUFBO0lBQ3ZDLHNEQUFtQyxDQUFBO0lBQ25DLHdEQUFxQyxDQUFBO0lBQ3JDLHNEQUFtQyxDQUFBO0lBQ25DLGdFQUE2QyxDQUFBO0lBQzdDLGdHQUE2RSxDQUFBO0lBQzdFLHdDQUFxQixDQUFBO0lBQ3JCLGdFQUE2QyxDQUFBO0FBQy9DLENBQUMsRUFYSSxlQUFlLEtBQWYsZUFBZSxRQVduQjtBQTJCRCxTQUFTLHFCQUFxQixDQUFDLFlBQWlDO0lBQzlELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQ2pELE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM3QixNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRWpDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxl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QUs7WUFDTCxNQUFNO1NBQ1A7UUFDRCxFQUFFLEVBQUUsRUFBRSxJQUFJLGdCQUFnQjtRQUMxQix5RUFBeUU7UUFDekUsZ0ZBQWdGO1FBQ2hGLElBQUksRUFBRSxNQUFNLEtBQUssZUFBZSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsTUFBTTtRQUNsRixhQUFhLEVBQUUsRUFBRTtRQUNqQixZQUFZLEVBQUUsR0FBRztRQUNqQixZQUFZLEVBQUUsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUNsQyxPQUFPLEVBQUUsZUFBZTtRQUN4QixNQUFNLEVBQUUsY0FBYztRQUN0QixRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVE7UUFDekIsR0FBRyxFQUFFO1lBQ0gsR0FBRyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRztZQUN2QyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7U0FDakU7UUFDRCxJQUFJO1FBQ0osU0FBUyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1FBQ3ZCLFlBQVksRUFBRSxNQUFNLENBQUMsWUFBWTtRQUNqQyxnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDbEQsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJVG9rZW5FbmFibGVtZW50IH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24sIHBhcnNlVHJhbnNhY3Rpb24sIHR5cGUgUGFyc2VkVHJhbnNhY3Rpb24sIHR5cGUgSW5zdHJ1Y3Rpb25QYXJhbXMgfSBmcm9tICdAYml0Z28vd2FzbS1zb2xhbmEnO1xuaW1wb3J0IHtcbiAgVU5BVkFJTEFCTEVfVEVYVCxcbiAgWktfRUxHQU1BTF9QUk9PRl9QUk9HUkFNX0lELFxuICBDVF9FWFRfRElTQ1JJTUlOQVRPUixcbiAgQ1RfU1VCX0RJU0NSSU1JTkFUT1JTLFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTdGFraW5nQXV0aG9yaXplUGFyYW1zLCBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIFNvbExpYlRyYW5zYWN0aW9uRXhwbGFuYXRpb24gfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IGZpbmRUb2tlbk5hbWUgfSBmcm9tICcuL2luc3RydWN0aW9uUGFyYW1zRmFjdG9yeSc7XG5pbXBvcnQgYnM1OCBmcm9tICdiczU4JztcblxuZXhwb3J0IGludGVyZmFjZSBFeHBsYWluVHJhbnNhY3Rpb25XYXNtT3B0aW9ucyB7XG4gIHR4QmFzZTY0OiBzdHJpbmc7XG4gIGZlZUluZm8/OiB7IGZlZTogc3RyaW5nIH07XG4gIHRva2VuQWNjb3VudFJlbnRFeGVtcHRBbW91bnQ/OiBzdHJpbmc7XG4gIGNvaW5OYW1lOiBzdHJpbmc7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUcmFuc2FjdGlvbiB0eXBlIGRlcml2YXRpb24gKHBvcnRlZCBmcm9tIEBiaXRnby93YXNtLXNvbGFuYSBleHBsYWluLnRzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuZW51bSBUcmFuc2FjdGlvblR5cGUge1xuICBTZW5kID0gJ1NlbmQnLFxuICBTdGFraW5nQWN0aXZhdGUgPSAnU3Rha2luZ0FjdGl2YXRlJyxcbiAgU3Rha2luZ0RlYWN0aXZhdGUgPSAnU3Rha2luZ0RlYWN0aXZhdGUnLFxuICBTdGFraW5nV2l0aGRyYXcgPSAnU3Rha2luZ1dpdGhkcmF3JyxcbiAgU3Rha2luZ0F1dGhvcml6ZSA9ICdTdGFraW5nQXV0aG9yaXplJyxcbiAgU3Rha2luZ0RlbGVnYXRlID0gJ1N0YWtpbmdEZWxlZ2F0ZScsXG4gIFdhbGxldEluaXRpYWxpemF0aW9uID0gJ1dhbGxldEluaXRpYWxpemF0aW9uJyxcbiAgQXNzb2NpYXRlZFRva2VuQWNjb3VudEluaXRpYWxpemF0aW9uID0gJ0Fzc29jaWF0ZWRUb2tlbkFjY291bnRJbml0aWFsaXphdGlvbicsXG4gIEN1c3RvbVR4ID0gJ0N1c3RvbVR4JyxcbiAgQ29uZmlkZW50aWFsVHJhbnNmZXIgPSAnQ29uZmlkZW50aWFsVHJhbnNmZXInLFxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29tYmluZWQgaW5zdHJ1Y3Rpb24gcGF0dGVybiBkZXRlY3Rpb25cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIFNvbGFuYSBuYXRpdmUgc3Rha2luZyByZXF1aXJlcyAzIHNlcGFyYXRlIGluc3RydWN0aW9uczpcbi8vICAgQ3JlYXRlQWNjb3VudCAoZnVuZCkgKyBTdGFrZUluaXRpYWxpemUgKHNldCBhdXRob3JpdGllcykgKyBEZWxlZ2F0ZVN0YWtlIChwaWNrIHZhbGlkYXRvcilcbi8vIE1hcmluYWRlIHN0YWtpbmcgdXNlcyBvbmx5IENyZWF0ZUFjY291bnQgKyBTdGFrZUluaXRpYWxpemUgKG5vIERlbGVnYXRlKS5cbi8vIFdhbGxldCBpbml0IHVzZXMgQ3JlYXRlQWNjb3VudCArIE5vbmNlSW5pdGlhbGl6ZS5cblxuaW50ZXJmYWNlIENvbWJpbmVkU3Rha2VBY3RpdmF0ZSB7XG4gIGtpbmQ6ICdTdGFraW5nQWN0aXZhdGUnO1xuICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICBhbW91bnQ6IGJpZ2ludDtcbn1cblxuaW50ZXJmYWNlIENvbWJpbmVkV2FsbGV0SW5pdCB7XG4gIGtpbmQ6ICdXYWxsZXRJbml0aWFsaXphdGlvbic7XG4gIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gIG5vbmNlQWRkcmVzczogc3RyaW5nO1xuICBhbW91bnQ6IGJpZ2ludDtcbn1cblxudHlwZSBDb21iaW5lZFBhdHRlcm4gPSBDb21iaW5lZFN0YWtlQWN0aXZhdGUgfCBDb21iaW5lZFdhbGxldEluaXQ7XG5cbmZ1bmN0aW9uIGRldGVjdENvbWJpbmVkUGF0dGVybihpbnN0cnVjdGlvbnM6IEluc3RydWN0aW9uUGFyYW1zW10pOiBDb21iaW5lZFBhdHRlcm4gfCBudWxsIHtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnN0cnVjdGlvbnMubGVuZ3RoIC0gMTsgaSsrKSB7XG4gICAgY29uc3QgY3VyciA9IGluc3RydWN0aW9uc1tpXTtcbiAgICBjb25zdCBuZXh0ID0gaW5zdHJ1Y3Rpb25zW2kgKyAxXTtcblxuICAgIGlmIChjdXJyLnR5cGUgPT09ICdDcmVhdGVBY2NvdW50JyAmJiBuZXh0LnR5cGUgPT09ICdTdGFrZUluaXRpYWxpemUnKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBraW5kOiAnU3Rha2luZ0FjdGl2YXRlJyxcbiAgICAgICAgZnJvbUFkZHJlc3M6IGN1cnIuZnJvbUFkZHJlc3MsXG4gICAgICAgIHN0YWtpbmdBZGRyZXNzOiBjdXJyLm5ld0FkZHJlc3MsXG4gICAgICAgIGFtb3VudDogY3Vyci5hbW91bnQsXG4gICAgICB9O1xuICAgIH1cblxuICAgIGlmIChjdXJyLnR5cGUgPT09ICdDcmVhdGVBY2NvdW50JyAmJiBuZXh0LnR5cGUgPT09ICdOb25jZUluaXRpYWxpemUnKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBraW5kOiAnV2FsbGV0SW5pdGlhbGl6YXRpb24nLFxuICAgICAgICBmcm9tQWRkcmVzczogY3Vyci5mcm9tQWRkcmVzcyxcbiAgICAgICAgbm9uY2VBZGRyZXNzOiBjdXJyLm5ld0FkZHJlc3MsXG4gICAgICAgIGFtb3VudDogY3Vyci5hbW91bnQsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBudWxsO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVHJhbnNhY3Rpb24gdHlwZSBkZXJpdmF0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5jb25zdCBCT0lMRVJQTEFURV9UWVBFUyA9IG5ldyBTZXQoWydOb25jZUFkdmFuY2UnLCAnTWVtbycsICdTZXRDb21wdXRlVW5pdExpbWl0JywgJ1NldFByaW9yaXR5RmVlJ10pO1xuXG4vKipcbiAqIFJldHVybnMgdHJ1ZSBpZiBhIFdBU00tcGFyc2VkIFVua25vd24gaW5zdHJ1Y3Rpb24gaXMgYSBjb25maWRlbnRpYWwgdHJhbnNmZXIgaW5zdHJ1Y3Rpb25cbiAqIChUb2tlbi0yMDIyIENUIGV4dGVuc2lvbiBvciB6ay1lbGdhbWFsLXByb29mIHByb2dyYW0pLlxuICpcbiAqIENUIGV4dGVuc2lvbjogYnl0ZSAwID0gQ1RfRVhUX0RJU0NSSU1JTkFUT1IsIGJ5dGUgMSDiiIggQ1RfU1VCX0RJU0NSSU1JTkFUT1JTXG4gKiB6ay1lbGdhbWFsLXByb29mOiBhbnkgaW5zdHJ1Y3Rpb24gZnJvbSB0aGUgemstZWxnYW1hbC1wcm9vZiBwcm9ncmFtXG4gKi9cbmZ1bmN0aW9uIGlzV2FzbUNvbmZpZGVudGlhbFRyYW5zZmVySW5zdHJ1Y3Rpb24oaW5zdHI6IEluc3RydWN0aW9uUGFyYW1zKTogYm9vbGVhbiB7XG4gIGlmIChpbnN0ci50eXBlICE9PSAnVW5rbm93bicpIHJldHVybiBmYWxzZTtcbiAgY29uc3QgcHJvZ3JhbUlkID0gaW5zdHIucHJvZ3JhbUlkO1xuICAvLyB6ay1lbGdhbWFsLXByb29mIHByb2dyYW0gaW5zdHJ1Y3Rpb25zIGFyZSBhbHdheXMgQ1QgcHJvb2YgdmVyaWZpY2F0aW9uc1xuICBpZiAocHJvZ3JhbUlkID09PSBaS19FTEdBTUFMX1BST09GX1BST0dSQU1fSUQpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBUb2tlbi0yMDIyIENUIGV4dGVuc2lvbjogYnl0ZSAwID0gQ1RfRVhUX0RJU0NSSU1JTkFUT1IsIGJ5dGUgMSDiiIggQ1RfU1VCX0RJU0NSSU1JTkFUT1JTXG4gIGNvbnN0IFRPS0VOXzIwMjJfUFJPR1JBTV9JRCA9ICdUb2tlbnpRZEJOYkxxUDVWRWhka0FTNkVQRkxDMVBIbkJxQ1hFcFB4dUViJztcbiAgaWYgKHByb2dyYW1JZCA9PT0gVE9LRU5fMjAyMl9QUk9HUkFNX0lEKSB7XG4gICAgY29uc3QgZGF0YUJ5dGVzID0gYnM1OC5kZWNvZGUoaW5zdHIuZGF0YSk7XG4gICAgaWYgKGRhdGFCeXRlcy5sZW5ndGggPj0gMikge1xuICAgICAgcmV0dXJuIGRhdGFCeXRlc1swXSA9PT0gQ1RfRVhUX0RJU0NSSU1JTkFUT1IgJiYgQ1RfU1VCX0RJU0NSSU1JTkFUT1JTLmhhcyhkYXRhQnl0ZXNbMV0pO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGRlcml2ZVRyYW5zYWN0aW9uVHlwZShcbiAgaW5zdHJ1Y3Rpb25zOiBJbnN0cnVjdGlvblBhcmFtc1tdLFxuICBjb21iaW5lZDogQ29tYmluZWRQYXR0ZXJuIHwgbnVsbCxcbiAgbWVtbzogc3RyaW5nIHwgdW5kZWZpbmVkXG4pOiBUcmFuc2FjdGlvblR5cGUge1xuICBpZiAoY29tYmluZWQpIHJldHVybiBUcmFuc2FjdGlvblR5cGVbY29tYmluZWQua2luZF07XG5cbiAgLy8gTWFyaW5hZGUgZGVhY3RpdmF0ZTogVHJhbnNmZXIgKyBtZW1vIGNvbnRhaW5pbmcgXCJQcmVwYXJlRm9yUmV2b2tlXCJcbiAgaWYgKG1lbW8/LmluY2x1ZGVzKCdQcmVwYXJlRm9yUmV2b2tlJykpIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0RlYWN0aXZhdGU7XG5cbiAgLy8gSml0byBwb29sIG9wZXJhdGlvbnNcbiAgaWYgKGluc3RydWN0aW9ucy5zb21lKChpKSA9PiBpLnR5cGUgPT09ICdTdGFrZVBvb2xEZXBvc2l0U29sJykpIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU3Rha2luZ0FjdGl2YXRlO1xuICBpZiAoaW5zdHJ1Y3Rpb25zLnNvbWUoKGkpID0+IGkudHlwZSA9PT0gJ1N0YWtlUG9vbFdpdGhkcmF3U3Rha2UnKSkgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nRGVhY3RpdmF0ZTtcblxuICAvLyBBVEEtb25seSB0cmFuc2FjdGlvbnMgKGlnbm9yaW5nIGJvaWxlcnBsYXRlKVxuICBjb25zdCBtZWFuaW5nZnVsID0gaW5zdHJ1Y3Rpb25zLmZpbHRlcigoaSkgPT4gIUJPSUxFUlBMQVRFX1RZUEVTLmhhcyhpLnR5cGUpKTtcbiAgaWYgKG1lYW5pbmdmdWwubGVuZ3RoID4gMCAmJiBtZWFuaW5nZnVsLmV2ZXJ5KChpKSA9PiBpLnR5cGUgPT09ICdDcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50JykpIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLkFzc29jaWF0ZWRUb2tlbkFjY291bnRJbml0aWFsaXphdGlvbjtcbiAgfVxuXG4gIC8vIERpcmVjdCBzdGFraW5nIGluc3RydWN0aW9uIG1hcHBpbmdcbiAgY29uc3Qgc3Rha2luZyA9IGluc3RydWN0aW9ucy5maW5kKChpKSA9PiBpLnR5cGUgaW4gVHJhbnNhY3Rpb25UeXBlKTtcbiAgaWYgKHN0YWtpbmcpIHJldHVybiBUcmFuc2FjdGlvblR5cGVbc3Rha2luZy50eXBlIGFzIGtleW9mIHR5cGVvZiBUcmFuc2FjdGlvblR5cGVdO1xuXG4gIC8vIFVua25vd24gaW5zdHJ1Y3Rpb25zIGluZGljYXRlIGEgY3VzdG9tL3VucmVjb2duaXplZCB0cmFuc2FjdGlvblxuICBpZiAoaW5zdHJ1Y3Rpb25zLnNvbWUoKGkpID0+IGkudHlwZSA9PT0gJ1Vua25vd24nICYmIGlzV2FzbUNvbmZpZGVudGlhbFRyYW5zZmVySW5zdHJ1Y3Rpb24oaSkpKSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5Db25maWRlbnRpYWxUcmFuc2ZlcjtcbiAgfVxuICBpZiAoaW5zdHJ1Y3Rpb25zLnNvbWUoKGkpID0+IGkudHlwZSA9PT0gJ1Vua25vd24nKSkgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5DdXN0b21UeDtcblxuICAvLyBTZW5kIHJlcXVpcmVzIGFuIGV4cGxpY2l0IFRyYW5zZmVyIG9yIFRva2VuVHJhbnNmZXIgaW5zdHJ1Y3Rpb24uXG4gIC8vIEV2ZXJ5dGhpbmcgZWxzZSBpcyBhIGN1c3RvbS91bnJlY29nbml6ZWQgdHJhbnNhY3Rpb24uXG4gIGlmIChpbnN0cnVjdGlvbnMuc29tZSgoaSkgPT4gaS50eXBlID09PSAnVHJhbnNmZXInIHx8IGkudHlwZSA9PT0gJ1Rva2VuVHJhbnNmZXInKSkgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuXG4gIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQ3VzdG9tVHg7XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUcmFuc2FjdGlvbiBJRCBleHRyYWN0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBCYXNlNTggZW5jb2Rpbmcgb2YgNjQgemVybyBieXRlcyAodW5zaWduZWQgdHJhbnNhY3Rpb25zIGhhdmUgYWxsLXplcm8gc2lnbmF0dXJlcylcbmNvbnN0IEFMTF9aRVJPU19CQVNFNTggPSAnMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMSc7XG5cbmZ1bmN0aW9uIGV4dHJhY3RUcmFuc2FjdGlvbklkKHNpZ25hdHVyZXM6IHN0cmluZ1tdKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgY29uc3Qgc2lnID0gc2lnbmF0dXJlc1swXTtcbiAgaWYgKCFzaWcgfHwgc2lnID09PSBBTExfWkVST1NfQkFTRTU4KSByZXR1cm4gdW5kZWZpbmVkO1xuICByZXR1cm4gc2lnO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU3Rha2luZyBhdXRob3JpemUgbWFwcGluZ1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBNYXAgV0FTTSBTdGFraW5nQXV0aG9yaXplIGluc3RydWN0aW9uIHRvIHRoZSBsZWdhY3kgQml0R29KUyBzaGFwZS5cbiAqIEJpdEdvSlMgdXNlcyBkaWZmZXJlbnQgZmllbGQgbmFtZXMgZm9yIFN0YWtlciB2cyBXaXRoZHJhd2VyIGF1dGhvcml0eSBjaGFuZ2VzLlxuICovXG5mdW5jdGlvbiBtYXBTdGFraW5nQXV0aG9yaXplKGluc3RyOiB7XG4gIHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gIG9sZEF1dGhvcml6ZUFkZHJlc3M6IHN0cmluZztcbiAgbmV3QXV0aG9yaXplQWRkcmVzczogc3RyaW5nO1xuICBhdXRob3JpemVUeXBlOiAnU3Rha2VyJyB8ICdXaXRoZHJhd2VyJztcbiAgY3VzdG9kaWFuQWRkcmVzcz86IHN0cmluZztcbn0pOiBTdGFraW5nQXV0aG9yaXplUGFyYW1zIHtcbiAgaWYgKGluc3RyLmF1dGhvcml6ZVR5cGUgPT09ICdXaXRoZHJhd2VyJykge1xuICAgIHJldHVybiB7XG4gICAgICBzdGFraW5nQWRkcmVzczogaW5zdHIuc3Rha2luZ0FkZHJlc3MsXG4gICAgICBvbGRXaXRoZHJhd0FkZHJlc3M6IGluc3RyLm9sZEF1dGhvcml6ZUFkZHJlc3MsXG4gICAgICBuZXdXaXRoZHJhd0FkZHJlc3M6IGluc3RyLm5ld0F1dGhvcml6ZUFkZHJlc3MsXG4gICAgICBjdXN0b2RpYW5BZGRyZXNzOiBpbnN0ci5jdXN0b2RpYW5BZGRyZXNzLFxuICAgIH07XG4gIH1cbiAgLy8gU3Rha2VyIGF1dGhvcml0eSBjaGFuZ2VcbiAgcmV0dXJuIHtcbiAgICBzdGFraW5nQWRkcmVzczogaW5zdHIuc3Rha2luZ0FkZHJlc3MsXG4gICAgb2xkV2l0aGRyYXdBZGRyZXNzOiAnJyxcbiAgICBuZXdXaXRoZHJhd0FkZHJlc3M6ICcnLFxuICAgIG9sZFN0YWtpbmdBdXRob3JpdHlBZGRyZXNzOiBpbnN0ci5vbGRBdXRob3JpemVBZGRyZXNzLFxuICAgIG5ld1N0YWtpbmdBdXRob3JpdHlBZGRyZXNzOiBpbnN0ci5uZXdBdXRob3JpemVBZGRyZXNzLFxuICB9O1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTWFpbiBleHBsYWluIGZ1bmN0aW9uXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vKipcbiAqIFN0YW5kYWxvbmUgV0FTTS1iYXNlZCB0cmFuc2FjdGlvbiBleHBsYW5hdGlvbi5cbiAqXG4gKiBQYXJzZXMgdGhlIHRyYW5zYWN0aW9uIHZpYSBgcGFyc2VUcmFuc2FjdGlvbih0eClgIGZyb20gQGJpdGdvL3dhc20tc29sYW5hLFxuICogdGhlbiBkZXJpdmVzIHRoZSB0cmFuc2FjdGlvbiB0eXBlLCBleHRyYWN0cyBvdXRwdXRzL2lucHV0cywgY29tcHV0ZXMgZmVlcyxcbiAqIGFuZCBtYXBzIHRvIEJpdEdvSlMgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBmb3JtYXQuXG4gKlxuICogVGhlIGV4cGxhaW4gbG9naWMgd2FzIHBvcnRlZCBmcm9tIHdhc20tc29sYW5hIHBlciB0aGUgY29udmVudGlvbiB0aGF0XG4gKiBgZXhwbGFpblRyYW5zYWN0aW9uYCBiZWxvbmdzIGluIEJpdEdvSlMsIG5vdCBpbiB3YXNtLSogcGFja2FnZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBleHBsYWluU29sVHJhbnNhY3Rpb24ocGFyYW1zOiBFeHBsYWluVHJhbnNhY3Rpb25XYXNtT3B0aW9ucyk6IFNvbExpYlRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICBjb25zdCB0eEJ5dGVzID0gQnVmZmVyLmZyb20ocGFyYW1zLnR4QmFzZTY0LCAnYmFzZTY0Jyk7XG4gIGNvbnN0IHR4ID0gVHJhbnNhY3Rpb24uZnJvbUJ5dGVzKHR4Qnl0ZXMpO1xuICBjb25zdCBwYXJzZWQ6IFBhcnNlZFRyYW5zYWN0aW9uID0gcGFyc2VUcmFuc2FjdGlvbih0eCk7XG5cbiAgLy8gLS0tIFRyYW5zYWN0aW9uIElEIC0tLVxuICBjb25zdCBpZCA9IGV4dHJhY3RUcmFuc2FjdGlvbklkKHBhcnNlZC5zaWduYXR1cmVzKTtcblxuICAvLyAtLS0gRmVlIGNhbGN1bGF0aW9uIC0tLVxuICBjb25zdCBsYW1wb3J0c1BlclNpZ25hdHVyZSA9IHBhcmFtcy5mZWVJbmZvID8gQmlnSW50KHBhcmFtcy5mZWVJbmZvLmZlZSkgOiAwbjtcbiAgbGV0IGZlZSA9IEJpZ0ludChwYXJzZWQubnVtU2lnbmF0dXJlcykgKiBsYW1wb3J0c1BlclNpZ25hdHVyZTtcblxuICAvLyBFYWNoIENyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQgY3JlYXRlcyBhIG5ldyB0b2tlbiBhY2NvdW50IHJlcXVpcmluZyBhIHJlbnQgZGVwb3NpdC5cbiAgY29uc3QgYXRhQ291bnQgPSBwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YS5maWx0ZXIoKGkpID0+IGkudHlwZSA9PT0gJ0NyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQnKS5sZW5ndGg7XG4gIGlmIChhdGFDb3VudCA+IDAgJiYgcGFyYW1zLnRva2VuQWNjb3VudFJlbnRFeGVtcHRBbW91bnQpIHtcbiAgICBmZWUgKz0gQmlnSW50KGF0YUNvdW50KSAqIEJpZ0ludChwYXJhbXMudG9rZW5BY2NvdW50UmVudEV4ZW1wdEFtb3VudCk7XG4gIH1cblxuICAvLyAtLS0gRXh0cmFjdCBtZW1vIChuZWVkZWQgYmVmb3JlIHR5cGUgZGVyaXZhdGlvbikgLS0tXG4gIGxldCBtZW1vOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGZvciAoY29uc3QgaW5zdHIgb2YgcGFyc2VkLmluc3RydWN0aW9uc0RhdGEpIHtcbiAgICBpZiAoaW5zdHIudHlwZSA9PT0gJ01lbW8nKSB7XG4gICAgICBtZW1vID0gaW5zdHIubWVtbztcbiAgICB9XG4gIH1cblxuICAvLyAtLS0gRGV0ZWN0IGNvbWJpbmVkIHBhdHRlcm5zIGFuZCBkZXJpdmUgdHlwZSAtLS1cbiAgY29uc3QgY29tYmluZWQgPSBkZXRlY3RDb21iaW5lZFBhdHRlcm4ocGFyc2VkLmluc3RydWN0aW9uc0RhdGEpO1xuICBjb25zdCB0eFR5cGUgPSBkZXJpdmVUcmFuc2FjdGlvblR5cGUocGFyc2VkLmluc3RydWN0aW9uc0RhdGEsIGNvbWJpbmVkLCBtZW1vKTtcblxuICAvLyBNYXJpbmFkZSBkZWFjdGl2YXRlOiBUcmFuc2ZlciArIFByZXBhcmVGb3JSZXZva2UgbWVtby5cbiAgLy8gVGhlIFRyYW5zZmVyIGlzIGEgY29udHJhY3QgaW50ZXJhY3Rpb24sIG5vdCByZWFsIHZhbHVlIHRyYW5zZmVyIOKAlCBza2lwIGZyb20gb3V0cHV0cy5cbiAgY29uc3QgaXNNYXJpbmFkZURlYWN0aXZhdGUgPVxuICAgIHR4VHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdEZWFjdGl2YXRlICYmIG1lbW8gIT09IHVuZGVmaW5lZCAmJiBtZW1vLmluY2x1ZGVzKCdQcmVwYXJlRm9yUmV2b2tlJyk7XG5cbiAgLy8gLS0tIEV4dHJhY3Qgb3V0cHV0cyBhbmQgaW5wdXRzIC0tLVxuICBjb25zdCBvdXRwdXRzOiB7IGFkZHJlc3M6IHN0cmluZzsgYW1vdW50OiBiaWdpbnQ7IHRva2VuTmFtZT86IHN0cmluZyB9W10gPSBbXTtcbiAgY29uc3QgaW5wdXRzOiB7IGFkZHJlc3M6IHN0cmluZzsgdmFsdWU6IGJpZ2ludCB9W10gPSBbXTtcblxuICBpZiAoY29tYmluZWQ/LmtpbmQgPT09ICdTdGFraW5nQWN0aXZhdGUnKSB7XG4gICAgb3V0cHV0cy5wdXNoKHsgYWRkcmVzczogY29tYmluZWQuc3Rha2luZ0FkZHJlc3MsIGFtb3VudDogY29tYmluZWQuYW1vdW50IH0pO1xuICAgIGlucHV0cy5wdXNoKHsgYWRkcmVzczogY29tYmluZWQuZnJvbUFkZHJlc3MsIHZhbHVlOiBjb21iaW5lZC5hbW91bnQgfSk7XG4gIH0gZWxzZSBpZiAoY29tYmluZWQ/LmtpbmQgPT09ICdXYWxsZXRJbml0aWFsaXphdGlvbicpIHtcbiAgICBvdXRwdXRzLnB1c2goeyBhZGRyZXNzOiBjb21iaW5lZC5ub25jZUFkZHJlc3MsIGFtb3VudDogY29tYmluZWQuYW1vdW50IH0pO1xuICAgIGlucHV0cy5wdXNoKHsgYWRkcmVzczogY29tYmluZWQuZnJvbUFkZHJlc3MsIHZhbHVlOiBjb21iaW5lZC5hbW91bnQgfSk7XG4gIH0gZWxzZSB7XG4gICAgZm9yIChjb25zdCBpbnN0ciBvZiBwYXJzZWQuaW5zdHJ1Y3Rpb25zRGF0YSkge1xuICAgICAgc3dpdGNoIChpbnN0ci50eXBlKSB7XG4gICAgICAgIGNhc2UgJ1RyYW5zZmVyJzpcbiAgICAgICAgICBpZiAoaXNNYXJpbmFkZURlYWN0aXZhdGUpIGJyZWFrO1xuICAgICAgICAgIG91dHB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLnRvQWRkcmVzcywgYW1vdW50OiBpbnN0ci5hbW91bnQgfSk7XG4gICAgICAgICAgaW5wdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci5mcm9tQWRkcmVzcywgdmFsdWU6IGluc3RyLmFtb3VudCB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnVG9rZW5UcmFuc2Zlcic6XG4gICAgICAgICAgb3V0cHV0cy5wdXNoKHsgYWRkcmVzczogaW5zdHIudG9BZGRyZXNzLCBhbW91bnQ6IGluc3RyLmFtb3VudCwgdG9rZW5OYW1lOiBpbnN0ci50b2tlbkFkZHJlc3MgfSk7XG4gICAgICAgICAgaW5wdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci5mcm9tQWRkcmVzcywgdmFsdWU6IGluc3RyLmFtb3VudCB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnU3Rha2luZ0FjdGl2YXRlJzpcbiAgICAgICAgICBvdXRwdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci5zdGFraW5nQWRkcmVzcywgYW1vdW50OiBpbnN0ci5hbW91bnQgfSk7XG4gICAgICAgICAgaW5wdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci5mcm9tQWRkcmVzcywgdmFsdWU6IGluc3RyLmFtb3VudCB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnU3Rha2luZ1dpdGhkcmF3JzpcbiAgICAgICAgICAvLyBXaXRoZHJhdzogU09MIGZsb3dzIEZST00gc3Rha2luZyBhZGRyZXNzIFRPIHRoZSByZWNpcGllbnQgKGZyb21BZGRyZXNzKVxuICAgICAgICAgIG91dHB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLmZyb21BZGRyZXNzLCBhbW91bnQ6IGluc3RyLmFtb3VudCB9KTtcbiAgICAgICAgICBpbnB1dHMucHVzaCh7IGFkZHJlc3M6IGluc3RyLnN0YWtpbmdBZGRyZXNzLCB2YWx1ZTogaW5zdHIuYW1vdW50IH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdTdGFrZVBvb2xEZXBvc2l0U29sJzpcbiAgICAgICAgICAvLyBKaXRvIGxpcXVpZCBzdGFraW5nIGRlcG9zaXRcbiAgICAgICAgICBvdXRwdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci5zdGFrZVBvb2wsIGFtb3VudDogaW5zdHIubGFtcG9ydHMgfSk7XG4gICAgICAgICAgaW5wdXRzLnB1c2goeyBhZGRyZXNzOiBpbnN0ci5mdW5kaW5nQWNjb3VudCwgdmFsdWU6IGluc3RyLmxhbXBvcnRzIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIC0tLSBPdXRwdXQgYW1vdW50IChuYXRpdmUgU09MIG9ubHksIG5vdCB0b2tlbiBhbW91bnRzKSAtLS1cbiAgY29uc3Qgb3V0cHV0QW1vdW50ID0gb3V0cHV0cy5maWx0ZXIoKG8pID0+ICFvLnRva2VuTmFtZSkucmVkdWNlKChzdW0sIG8pID0+IHN1bSArIG8uYW1vdW50LCAwbik7XG5cbiAgLy8gLS0tIEFUQSBvd25lciBtYXBwaW5nIGFuZCB0b2tlbiBlbmFibGVtZW50cyAtLS1cbiAgY29uc3QgYXRhT3duZXJNYXA6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgY29uc3QgdG9rZW5FbmFibGVtZW50czogSVRva2VuRW5hYmxlbWVudFtdID0gW107XG4gIGZvciAoY29uc3QgaW5zdHIgb2YgcGFyc2VkLmluc3RydWN0aW9uc0RhdGEpIHtcbiAgICBpZiAoaW5zdHIudHlwZSA9PT0gJ0NyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQnKSB7XG4gICAgICBhdGFPd25lck1hcFtpbnN0ci5hdGFBZGRyZXNzXSA9IGluc3RyLm93bmVyQWRkcmVzcztcbiAgICAgIHRva2VuRW5hYmxlbWVudHMucHVzaCh7XG4gICAgICAgIGFkZHJlc3M6IGluc3RyLmF0YUFkZHJlc3MsXG4gICAgICAgIHRva2VuTmFtZTogZmluZFRva2VuTmFtZShpbnN0ci5taW50QWRkcmVzcywgdW5kZWZpbmVkLCB0cnVlKSxcbiAgICAgICAgdG9rZW5BZGRyZXNzOiBpbnN0ci5taW50QWRkcmVzcyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8vIC0tLSBTdGFraW5nIGF1dGhvcml6ZSAtLS1cbiAgbGV0IHN0YWtpbmdBdXRob3JpemU6IFN0YWtpbmdBdXRob3JpemVQYXJhbXMgfCB1bmRlZmluZWQ7XG4gIGZvciAoY29uc3QgaW5zdHIgb2YgcGFyc2VkLmluc3RydWN0aW9uc0RhdGEpIHtcbiAgICBpZiAoaW5zdHIudHlwZSA9PT0gJ1N0YWtpbmdBdXRob3JpemUnKSB7XG4gICAgICBzdGFraW5nQXV0aG9yaXplID0gbWFwU3Rha2luZ0F1dGhvcml6ZShpbnN0cik7XG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvLyAtLS0gUmVzb2x2ZSB0b2tlbiBuYW1lcyBhbmQgY29udmVydCBiaWdpbnQgdG8gc3RyaW5nIGF0IHNlcmlhbGl6YXRpb24gYm91bmRhcnkgLS0tXG4gIGNvbnN0IHJlc29sdmVkT3V0cHV0cyA9IG91dHB1dHMubWFwKChvKSA9PiAoe1xuICAgIGFkZHJlc3M6IG8uYWRkcmVzcyxcbiAgICBhbW91bnQ6IFN0cmluZyhvLmFtb3VudCksXG4gICAgLi4uKG8udG9rZW5OYW1lID8geyB0b2tlbk5hbWU6IGZpbmRUb2tlbk5hbWUoby50b2tlbk5hbWUsIHVuZGVmaW5lZCwgdHJ1ZSkgfSA6IHt9KSxcbiAgfSkpO1xuXG4gIGNvbnN0IHJlc29sdmVkSW5wdXRzID0gaW5wdXRzLm1hcCgoaSkgPT4gKHtcbiAgICBhZGRyZXNzOiBpLmFkZHJlc3MsXG4gICAgdmFsdWU6IFN0cmluZyhpLnZhbHVlKSxcbiAgfSkpO1xuXG4gIHJldHVybiB7XG4gICAgZGlzcGxheU9yZGVyOiBbXG4gICAgICAnaWQnLFxuICAgICAgJ3R5cGUnLFxuICAgICAgJ2Jsb2NraGFzaCcsXG4gICAgICAnZHVyYWJsZU5vbmNlJyxcbiAgICAgICdvdXRwdXRBbW91bnQnLFxuICAgICAgJ2NoYW5nZUFtb3VudCcsXG4gICAgICAnb3V0cHV0cycsXG4gICAgICAnY2hhbmdlT3V0cHV0cycsXG4gICAgICAndG9rZW5FbmFibGVtZW50cycsXG4gICAgICAnZmVlJyxcbiAgICAgICdtZW1vJyxcbiAgICBdLFxuICAgIGlkOiBpZCA/PyBVTkFWQUlMQUJMRV9URVhULFxuICAgIC8vIFdBU00gcmV0dXJucyBcIlN0YWtpbmdBdXRob3JpemVcIiBidXQgQml0R29KUyB1c2VzIFwiU3Rha2luZ0F1dGhvcml6ZVJhd1wiXG4gICAgLy8gd2hlbiBkZXNlcmlhbGl6aW5nIGZyb20gYnl0ZXMgKHRoZSBub24tcmF3IHR5cGUgb25seSBleGlzdHMgZHVyaW5nIGJ1aWxkaW5nKS5cbiAgICB0eXBlOiB0eFR5cGUgPT09IFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQXV0aG9yaXplID8gJ1N0YWtpbmdBdXRob3JpemVSYXcnIDogdHhUeXBlLFxuICAgIGNoYW5nZU91dHB1dHM6IFtdLFxuICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgIG91dHB1dEFtb3VudDogU3RyaW5nKG91dHB1dEFtb3VudCksXG4gICAgb3V0cHV0czogcmVzb2x2ZWRPdXRwdXRzLFxuICAgIGlucHV0czogcmVzb2x2ZWRJbnB1dHMsXG4gICAgZmVlUGF5ZXI6IHBhcnNlZC5mZWVQYXllcixcbiAgICBmZWU6IHtcbiAgICAgIGZlZTogcGFyYW1zLmZlZUluZm8gPyBTdHJpbmcoZmVlKSA6ICcwJyxcbiAgICAgIGZlZVJhdGU6IHBhcmFtcy5mZWVJbmZvID8gTnVtYmVyKHBhcmFtcy5mZWVJbmZvLmZlZSkgOiB1bmRlZmluZWQsXG4gICAgfSxcbiAgICBtZW1vLFxuICAgIGJsb2NraGFzaDogcGFyc2VkLm5vbmNlLFxuICAgIGR1cmFibGVOb25jZTogcGFyc2VkLmR1cmFibGVOb25jZSxcbiAgICB0b2tlbkVuYWJsZW1lbnRzLFxuICAgIGF0YU93bmVyTWFwLFxuICAgIC4uLihzdGFraW5nQXV0aG9yaXplID8geyBzdGFraW5nQXV0aG9yaXplIH0gOiB7fSksXG4gIH07XG59XG4iXX0=
|
package/dist/esm/lib/iface.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export interface TxData {
|
|
|
22
22
|
durableNonce?: DurableNonceParams;
|
|
23
23
|
instructionsData: InstructionParams[];
|
|
24
24
|
}
|
|
25
|
-
export type InstructionParams = Nonce | Memo | WalletInit | SetComputeUnitLimit | SetPriorityFee | Transfer | StakingActivate | StakingDeactivate | StakingWithdraw | AtaInit | AtaClose | AtaRecoverNested | TokenTransfer | StakingAuthorize | StakingDelegate | MintTo | Burn | Approve | CustomInstruction | VersionedCustomInstruction | PermissionlessThawIdempotent;
|
|
25
|
+
export type InstructionParams = Nonce | Memo | WalletInit | SetComputeUnitLimit | SetPriorityFee | Transfer | StakingActivate | StakingDeactivate | StakingWithdraw | AtaInit | AtaClose | AtaRecoverNested | TokenTransfer | StakingAuthorize | StakingDelegate | MintTo | Burn | Approve | CustomInstruction | VersionedCustomInstruction | PermissionlessThawIdempotent | ConfigureConfidentialTransferAccount | ApplyPendingBalance | ConfidentialDeposit | ConfidentialWithdraw | ConfidentialTransfer | VerifyPubkeyValidity | VerifyEqualityProof | VerifyValidityProof | VerifyRangeProof;
|
|
26
26
|
export interface Memo {
|
|
27
27
|
type: InstructionBuilderTypes.Memo;
|
|
28
28
|
params: {
|
|
@@ -258,7 +258,7 @@ export interface AtaRecoverNested {
|
|
|
258
258
|
walletAddress: string;
|
|
259
259
|
};
|
|
260
260
|
}
|
|
261
|
-
export type ValidInstructionTypes = SystemInstructionType | StakeInstructionType | StakePoolInstructionType | 'Memo' | 'InitializeAssociatedTokenAccount' | 'CloseAssociatedTokenAccount' | 'RecoverNestedAssociatedTokenAccount' | DecodedCloseAccountInstruction | 'TokenTransfer' | 'SetComputeUnitLimit' | 'SetPriorityFee' | 'MintTo' | 'Burn' | 'Approve' | 'CustomInstruction' | 'PermissionlessThawIdempotent';
|
|
261
|
+
export type ValidInstructionTypes = SystemInstructionType | StakeInstructionType | StakePoolInstructionType | 'Memo' | 'InitializeAssociatedTokenAccount' | 'CloseAssociatedTokenAccount' | 'RecoverNestedAssociatedTokenAccount' | DecodedCloseAccountInstruction | 'TokenTransfer' | 'SetComputeUnitLimit' | 'SetPriorityFee' | 'MintTo' | 'Burn' | 'Approve' | 'CustomInstruction' | 'PermissionlessThawIdempotent' | 'ConfigureConfidentialTransferAccount' | 'ApplyPendingBalance' | 'ConfidentialDeposit' | 'ConfidentialWithdraw' | 'ConfidentialTransfer' | 'VerifyPubkeyValidity' | 'VerifyEqualityProof' | 'VerifyValidityProof' | 'VerifyRangeProof';
|
|
262
262
|
export type StakingAuthorizeParams = {
|
|
263
263
|
stakingAddress: string;
|
|
264
264
|
oldWithdrawAddress: string;
|
|
@@ -311,6 +311,209 @@ export interface TransactionExplanation extends BaseTransactionExplanation {
|
|
|
311
311
|
feePayer?: string;
|
|
312
312
|
ataOwnerMap?: Record<string, string>;
|
|
313
313
|
}
|
|
314
|
+
/**
|
|
315
|
+
* Configures a token account for confidential transfers.
|
|
316
|
+
*
|
|
317
|
+
* Layout: [27][2] + decryptable_zero_balance(36) + maximum_pending_balance_credit_counter(u64) + proof_instruction_offset(i8) = 47 bytes
|
|
318
|
+
*
|
|
319
|
+
* Accounts: [token(writable), mint, instructionsSysvar|contextState, authority(signer)]
|
|
320
|
+
*/
|
|
321
|
+
export interface ConfigureConfidentialTransferAccount {
|
|
322
|
+
type: InstructionBuilderTypes.ConfigureConfidentialTransferAccount;
|
|
323
|
+
params: {
|
|
324
|
+
tokenAddress: string;
|
|
325
|
+
mintAddress: string;
|
|
326
|
+
authorityAddress: string;
|
|
327
|
+
/** Instructions sysvar (inline proof) or context state account (pre-verified proof). Defaults to instructions sysvar. */
|
|
328
|
+
instructionsSysvarOrContextStateAddress?: string;
|
|
329
|
+
/** AES-encrypted zero balance (36 bytes hex). */
|
|
330
|
+
decryptableZeroBalance: string;
|
|
331
|
+
/** Maximum deposits + transfers before ApplyPendingBalance is required. */
|
|
332
|
+
maximumPendingBalanceCreditCounter: string;
|
|
333
|
+
/** Relative offset to the VerifyPubkeyValidity proof instruction (i8, signed). 0 = use context state account. */
|
|
334
|
+
proofInstructionOffset: number;
|
|
335
|
+
};
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* Applies pending balance to available balance.
|
|
339
|
+
*
|
|
340
|
+
* Layout: [27][8] + expected_pending_balance_credit_counter(u64) + new_decryptable_available_balance(36) = 46 bytes
|
|
341
|
+
*
|
|
342
|
+
* Accounts: [token(writable), authority(signer)]
|
|
343
|
+
*/
|
|
344
|
+
export interface ApplyPendingBalance {
|
|
345
|
+
type: InstructionBuilderTypes.ApplyPendingBalance;
|
|
346
|
+
params: {
|
|
347
|
+
tokenAddress: string;
|
|
348
|
+
authorityAddress: string;
|
|
349
|
+
/** Expected number of pending balance credits since last ApplyPendingBalance. */
|
|
350
|
+
expectedPendingBalanceCreditCounter: string;
|
|
351
|
+
/** AES-encrypted new available balance (36 bytes hex). */
|
|
352
|
+
newDecryptableAvailableBalance: string;
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
/**
|
|
356
|
+
* Deposits public SPL tokens into confidential pending balance.
|
|
357
|
+
*
|
|
358
|
+
* Layout: [27][5] + amount(u64) + decimals(u8) = 11 bytes
|
|
359
|
+
*
|
|
360
|
+
* Accounts: [token(writable), mint, authority(signer)]
|
|
361
|
+
*/
|
|
362
|
+
export interface ConfidentialDeposit {
|
|
363
|
+
type: InstructionBuilderTypes.ConfidentialDeposit;
|
|
364
|
+
params: {
|
|
365
|
+
tokenAddress: string;
|
|
366
|
+
mintAddress: string;
|
|
367
|
+
authorityAddress: string;
|
|
368
|
+
/** Amount to deposit in base units. */
|
|
369
|
+
amount: string;
|
|
370
|
+
/** Number of decimals for the token. */
|
|
371
|
+
decimals: number;
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Withdraws tokens from confidential available balance to public balance.
|
|
376
|
+
*
|
|
377
|
+
* Layout: [27][6] + amount(u64) + decimals(u8) + new_decryptable_available_balance(36) + equality_proof_offset(i8) + range_proof_offset(i8) = 49 bytes
|
|
378
|
+
*
|
|
379
|
+
* Accounts: [token(writable), mint, instructionsSysvar?, equalityContextState?, rangeContextState?, authority(signer)]
|
|
380
|
+
*/
|
|
381
|
+
export interface ConfidentialWithdraw {
|
|
382
|
+
type: InstructionBuilderTypes.ConfidentialWithdraw;
|
|
383
|
+
params: {
|
|
384
|
+
tokenAddress: string;
|
|
385
|
+
mintAddress: string;
|
|
386
|
+
authorityAddress: string;
|
|
387
|
+
/** Instructions sysvar address (if proofs are inline). Omit if using context state accounts. */
|
|
388
|
+
instructionsSysvarAddress?: string;
|
|
389
|
+
/** Equality proof context state account (if pre-verified). Omit if using inline proof. */
|
|
390
|
+
equalityProofContextStateAddress?: string;
|
|
391
|
+
/** Range proof context state account (if pre-verified). Omit if using inline proof. */
|
|
392
|
+
rangeProofContextStateAddress?: string;
|
|
393
|
+
/** Amount to withdraw in base units. */
|
|
394
|
+
amount: string;
|
|
395
|
+
/** Number of decimals for the token. */
|
|
396
|
+
decimals: number;
|
|
397
|
+
/** AES-encrypted new available balance after withdrawal (36 bytes hex). */
|
|
398
|
+
newDecryptableAvailableBalance: string;
|
|
399
|
+
/** Relative offset to VerifyCiphertextCommitmentEquality proof (i8). 0 = use context state. */
|
|
400
|
+
equalityProofInstructionOffset: number;
|
|
401
|
+
/** Relative offset to VerifyBatchedRangeProofU64 proof (i8). 0 = use context state. */
|
|
402
|
+
rangeProofInstructionOffset: number;
|
|
403
|
+
};
|
|
404
|
+
}
|
|
405
|
+
/**
|
|
406
|
+
* Transfers tokens confidentially between two accounts.
|
|
407
|
+
*
|
|
408
|
+
* Layout: [27][7] + new_source_decryptable(36) + auditor_ct_lo(64) + auditor_ct_hi(64) + eq_offset(i8) + validity_offset(i8) + range_offset(i8) = 169 bytes
|
|
409
|
+
*
|
|
410
|
+
* Accounts: [source(writable), mint, dest(writable), instructionsSysvar?, eqCtx?, validityCtx?, rangeCtx?, authority(signer)]
|
|
411
|
+
*/
|
|
412
|
+
export interface ConfidentialTransfer {
|
|
413
|
+
type: InstructionBuilderTypes.ConfidentialTransfer;
|
|
414
|
+
params: {
|
|
415
|
+
sourceTokenAddress: string;
|
|
416
|
+
mintAddress: string;
|
|
417
|
+
destinationTokenAddress: string;
|
|
418
|
+
authorityAddress: string;
|
|
419
|
+
/** Instructions sysvar address (if proofs are inline). Omit if using context state accounts. */
|
|
420
|
+
instructionsSysvarAddress?: string;
|
|
421
|
+
/** Equality proof context state account (if pre-verified). Omit if using inline proof. */
|
|
422
|
+
equalityProofContextStateAddress?: string;
|
|
423
|
+
/** Ciphertext validity proof context state account (if pre-verified). Omit if using inline proof. */
|
|
424
|
+
ciphertextValidityProofContextStateAddress?: string;
|
|
425
|
+
/** Range proof context state account (if pre-verified). Omit if using inline proof. */
|
|
426
|
+
rangeProofContextStateAddress?: string;
|
|
427
|
+
/** AES-encrypted new source decryptable balance (36 bytes hex). */
|
|
428
|
+
newSourceDecryptableAvailableBalance: string;
|
|
429
|
+
/** Auditor ElGamal ciphertext for transfer amount low 16 bits (64 bytes hex). */
|
|
430
|
+
transferAmountAuditorCiphertextLo: string;
|
|
431
|
+
/** Auditor ElGamal ciphertext for transfer amount high bits (64 bytes hex). */
|
|
432
|
+
transferAmountAuditorCiphertextHi: string;
|
|
433
|
+
/** Relative offset to VerifyCiphertextCommitmentEquality proof (i8). 0 = use context state. */
|
|
434
|
+
equalityProofInstructionOffset: number;
|
|
435
|
+
/** Relative offset to VerifyBatchedGroupedCiphertext3HandlesValidity proof (i8). 0 = use context state. */
|
|
436
|
+
ciphertextValidityProofInstructionOffset: number;
|
|
437
|
+
/** Relative offset to VerifyBatchedRangeProofU128 proof (i8). 0 = use context state. */
|
|
438
|
+
rangeProofInstructionOffset: number;
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
/**
|
|
442
|
+
* Verifies the validity of an ElGamal pubkey (used with ConfigureAccount).
|
|
443
|
+
*
|
|
444
|
+
* Discriminator: [4] + proof_data
|
|
445
|
+
* Program: zk-elgamal-proof
|
|
446
|
+
* Accounts: [] (inline proof) or [contextState(writable), authority] (context state)
|
|
447
|
+
*/
|
|
448
|
+
export interface VerifyPubkeyValidity {
|
|
449
|
+
type: InstructionBuilderTypes.VerifyPubkeyValidity;
|
|
450
|
+
params: {
|
|
451
|
+
/** Proof data as hex string (inline proof). If omitted, uses context state account + offset. */
|
|
452
|
+
proofData?: string;
|
|
453
|
+
/** Context state account address (if pre-verified proof). */
|
|
454
|
+
contextStateAccountAddress?: string;
|
|
455
|
+
/** Context state authority address (if pre-verified proof). */
|
|
456
|
+
contextStateAuthorityAddress?: string;
|
|
457
|
+
};
|
|
458
|
+
}
|
|
459
|
+
/**
|
|
460
|
+
* Verifies ciphertext-commitment equality proof (used with Transfer and Withdraw).
|
|
461
|
+
*
|
|
462
|
+
* Discriminator: [3] + proof_data or [3] + offset(u32)
|
|
463
|
+
* Program: zk-elgamal-proof
|
|
464
|
+
*/
|
|
465
|
+
export interface VerifyEqualityProof {
|
|
466
|
+
type: InstructionBuilderTypes.VerifyEqualityProof;
|
|
467
|
+
params: {
|
|
468
|
+
/** Proof data as hex string (inline proof). If omitted, uses context state account + offset. */
|
|
469
|
+
proofData?: string;
|
|
470
|
+
/** Context state account address (if pre-verified proof). */
|
|
471
|
+
contextStateAccountAddress?: string;
|
|
472
|
+
/** Context state authority address (if pre-verified proof). */
|
|
473
|
+
contextStateAuthorityAddress?: string;
|
|
474
|
+
/** Offset into context state account (if using context state). */
|
|
475
|
+
offset?: number;
|
|
476
|
+
};
|
|
477
|
+
}
|
|
478
|
+
/**
|
|
479
|
+
* Verifies batched grouped ciphertext 3-handles validity proof (used with Transfer).
|
|
480
|
+
*
|
|
481
|
+
* Discriminator: [12] + proof_data or [12] + offset(u32)
|
|
482
|
+
* Program: zk-elgamal-proof
|
|
483
|
+
*/
|
|
484
|
+
export interface VerifyValidityProof {
|
|
485
|
+
type: InstructionBuilderTypes.VerifyValidityProof;
|
|
486
|
+
params: {
|
|
487
|
+
/** Proof data as hex string (inline proof). If omitted, uses context state account + offset. */
|
|
488
|
+
proofData?: string;
|
|
489
|
+
/** Context state account address (if pre-verified proof). */
|
|
490
|
+
contextStateAccountAddress?: string;
|
|
491
|
+
/** Context state authority address (if pre-verified proof). */
|
|
492
|
+
contextStateAuthorityAddress?: string;
|
|
493
|
+
/** Offset into context state account (if using context state). */
|
|
494
|
+
offset?: number;
|
|
495
|
+
};
|
|
496
|
+
}
|
|
497
|
+
/**
|
|
498
|
+
* Verifies batched range proof U128 (used with Transfer).
|
|
499
|
+
*
|
|
500
|
+
* Discriminator: [7] + proof_data or [7] + offset(i32)
|
|
501
|
+
* Program: zk-elgamal-proof
|
|
502
|
+
* Accounts: [] (inline proof) or [contextState(writable), authority] (context state)
|
|
503
|
+
*/
|
|
504
|
+
export interface VerifyRangeProof {
|
|
505
|
+
type: InstructionBuilderTypes.VerifyRangeProof;
|
|
506
|
+
params: {
|
|
507
|
+
/** Proof data as hex string (inline proof). If omitted, uses context state account + offset. */
|
|
508
|
+
proofData?: string;
|
|
509
|
+
/** Context state account address (if pre-verified proof). */
|
|
510
|
+
contextStateAccountAddress?: string;
|
|
511
|
+
/** Context state authority address (if pre-verified proof). */
|
|
512
|
+
contextStateAuthorityAddress?: string;
|
|
513
|
+
/** Offset into context state account (if using context state). */
|
|
514
|
+
offset?: number;
|
|
515
|
+
};
|
|
516
|
+
}
|
|
314
517
|
export declare class TokenAssociateRecipient {
|
|
315
518
|
ownerAddress: string;
|
|
316
519
|
tokenName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/lib/iface.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export class TokenAssociateRecipient {
|
|
2
2
|
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW1YQSxNQUFNLE9BQU8sdUJBQXVCO0NBTW5DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU29sU3Rha2luZ1R5cGVFbnVtIH0gZnJvbSAnQGJpdGdvL3B1YmxpYy10eXBlcyc7XG5pbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBSZWNpcGllbnQsXG4gIFNvbEluc3RydWN0aW9uLFxuICBTb2xWZXJzaW9uZWRJbnN0cnVjdGlvbixcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgRGVjb2RlZENsb3NlQWNjb3VudEluc3RydWN0aW9uIH0gZnJvbSAnQHNvbGFuYS9zcGwtdG9rZW4nO1xuaW1wb3J0IHsgQmxvY2toYXNoLCBTdGFrZUluc3RydWN0aW9uVHlwZSwgU3lzdGVtSW5zdHJ1Y3Rpb25UeXBlLCBUcmFuc2FjdGlvblNpZ25hdHVyZSB9IGZyb20gJ0Bzb2xhbmEvd2ViMy5qcyc7XG5pbXBvcnQgeyBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IFN0YWtlUG9vbEluc3RydWN0aW9uVHlwZSB9IGZyb20gJ0Bzb2xhbmEvc3BsLXN0YWtlLXBvb2wnO1xuaW1wb3J0IHsgRGVwb3NpdFNvbFN0YWtlUG9vbERhdGEsIFdpdGhkcmF3U3Rha2VTdGFrZVBvb2xEYXRhIH0gZnJvbSAnLi9qaXRvU3Rha2VQb29sT3BlcmF0aW9ucyc7XG5cbi8vIFRPRE8oU1RMWC05ODkwKTogQWRkIHRoZSBpbnRlcmZhY2VzIGZvciB2YWxpZGl0eVdpbmRvdyBhbmQgU2VxdWVuY2VJZFxuZXhwb3J0IGludGVyZmFjZSBTb2xhbmFLZXlzIHtcbiAgcHJ2PzogVWludDhBcnJheSB8IHN0cmluZztcbiAgcHViOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIER1cmFibGVOb25jZVBhcmFtcyB7XG4gIHdhbGxldE5vbmNlQWRkcmVzczogc3RyaW5nO1xuICBhdXRoV2FsbGV0QWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkPzogVHJhbnNhY3Rpb25TaWduYXR1cmU7XG4gIGZlZVBheWVyPzogc3RyaW5nO1xuICBsYW1wb3J0c1BlclNpZ25hdHVyZT86IG51bWJlcjtcbiAgbnVtU2lnbmF0dXJlczogbnVtYmVyO1xuICBub25jZTogQmxvY2toYXNoO1xuICAvLyBvbmx5IHBvcHVsYXRlZCB3aGVuIG5vbmNlIGlzIGZyb20gYSBkdXJhYmxlIG5vbmNlIGFjY291bnRcbiAgZHVyYWJsZU5vbmNlPzogRHVyYWJsZU5vbmNlUGFyYW1zO1xuICBpbnN0cnVjdGlvbnNEYXRhOiBJbnN0cnVjdGlvblBhcmFtc1tdO1xufVxuXG5leHBvcnQgdHlwZSBJbnN0cnVjdGlvblBhcmFtcyA9XG4gIHwgTm9uY2VcbiAgfCBNZW1vXG4gIHwgV2FsbGV0SW5pdFxuICB8IFNldENvbXB1dGVVbml0TGltaXRcbiAgfCBTZXRQcmlvcml0eUZlZVxuICB8IFRyYW5zZmVyXG4gIHwgU3Rha2luZ0FjdGl2YXRlXG4gIHwgU3Rha2luZ0RlYWN0aXZhdGVcbiAgfCBTdGFraW5nV2l0aGRyYXdcbiAgfCBBdGFJbml0XG4gIHwgQXRhQ2xvc2VcbiAgfCBBdGFSZWNvdmVyTmVzdGVkXG4gIHwgVG9rZW5UcmFuc2ZlclxuICB8IFN0YWtpbmdBdXRob3JpemVcbiAgfCBTdGFraW5nRGVsZWdhdGVcbiAgfCBNaW50VG9cbiAgfCBCdXJuXG4gIHwgQXBwcm92ZVxuICB8IEN1c3RvbUluc3RydWN0aW9uXG4gIHwgVmVyc2lvbmVkQ3VzdG9tSW5zdHJ1Y3Rpb25cbiAgfCBQZXJtaXNzaW9ubGVzc1RoYXdJZGVtcG90ZW50O1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lbW8ge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5NZW1vO1xuICBwYXJhbXM6IHsgbWVtbzogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm9uY2Uge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Ob25jZUFkdmFuY2U7XG4gIHBhcmFtczogRHVyYWJsZU5vbmNlUGFyYW1zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldEluaXQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5DcmVhdGVOb25jZUFjY291bnQ7XG4gIHBhcmFtczogeyBmcm9tQWRkcmVzczogc3RyaW5nOyBub25jZUFkZHJlc3M6IHN0cmluZzsgYXV0aEFkZHJlc3M6IHN0cmluZzsgYW1vdW50OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2ZlciB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlRyYW5zZmVyO1xuICBwYXJhbXM6IHtcbiAgICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICAgIHRvQWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICB9O1xufVxuXG4vKipcbiAqIEV4dHJhIGFjY291bnQgbWV0YWRhdGEgcmVxdWlyZWQgYnkgYSBUb2tlbi0yMDIyIFRyYW5zZmVyIEhvb2suXG4gKlxuICogVGhlc2UgYXJlIHJlc29sdmVkIGxpdmUgKGluIHRoZSBvcmRlciB0aGUgaG9vaydzIEV4dHJhQWNjb3VudE1ldGFMaXN0IHJlcXVpcmVzKVxuICogYW5kIHN1cHBsaWVkIHRvIHRoZSBpbnN0cnVjdGlvbiBmYWN0b3J5LiBTZWUge0BsaW5rIFRva2VuVHJhbnNmZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4dHJhQWNjb3VudE1ldGEge1xuICAvKiogVGhlIGJhc2U1OC1lbmNvZGVkIHB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQgKi9cbiAgcHVia2V5OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBhY2NvdW50IG11c3Qgc2lnbiB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgaXNTaWduZXI6IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRoZSBhY2NvdW50IGlzIHdyaXRhYmxlICovXG4gIGlzV3JpdGFibGU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9rZW5UcmFuc2ZlciB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlRva2VuVHJhbnNmZXI7XG4gIHBhcmFtczoge1xuICAgIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gICAgdG9BZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgc291cmNlQWRkcmVzczogc3RyaW5nO1xuICAgIHRva2VuQWRkcmVzcz86IHN0cmluZztcbiAgICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgICAvKiogV2l0aGhlbGQgdHJhbnNmZXIgZmVlIGluIHJhdyBiYXNlIHVuaXRzICovXG4gICAgZmVlPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFJlc29sdmVkIFRyYW5zZmVyIEhvb2sgZXh0cmEgYWNjb3VudCBtZXRhcywgaW4gdGhlIGV4YWN0IG9yZGVyIHRoZSBob29rXG4gICAgICogcmVxdWlyZXMuIE9ubHkgdXNlZCBmb3IgVG9rZW4tMjAyMiB0cmFuc2ZlcnMgd2hvc2UgbWludCBoYXMgYSBUcmFuc2ZlclxuICAgICAqIEhvb2sgZXh0ZW5zaW9uOyByZXNvbHZlZCBsaXZlIGJ5IHRoZSBjYWxsZXIgKG9mZmxpbmUgYnVpbGRlcnMgbmV2ZXIgZmV0Y2gpLlxuICAgICAqL1xuICAgIHRyYW5zZmVySG9va0FjY291bnRzPzogRXh0cmFBY2NvdW50TWV0YVtdO1xuICB9O1xufVxuXG4vKipcbiAqIHNSRkMtMzcgVG9rZW4gQUNMIHBlcm1pc3Npb25sZXNzIHRoYXcgKGlkZW1wb3RlbnQpIGluc3RydWN0aW9uLlxuICpcbiAqIEVtaXR0ZWQgZm9yIGFsbG93bGlzdC9ibG9ja2xpc3QgKERlZmF1bHRBY2NvdW50U3RhdGUpIFRva2VuLTIwMjIgbWludHMgc28gYSBmcmVzaGx5IGNyZWF0ZWRcbiAqIChmcm96ZW4pIHRva2VuIGFjY291bnQgY2FuIGJlIHRoYXdlZCBhdG9taWNhbGx5IGluIHRoZSBzYW1lIHRyYW5zYWN0aW9uIGFzIHRoZSB0cmFuc2Zlci4gVGhlXG4gKiBnYXRpbmctcHJvZ3JhbSBkZXBlbmRlbmNpZXMgKGBmbGFnQWNjb3VudGAsIGBtaW50Q29uZmlnYCwgYGdhdGluZ1Byb2dyYW1gLCBgZXh0cmFBY2NvdW50c2ApIGFyZVxuICogcmVzb2x2ZWQgbGl2ZSBieSB0aGUgY2FsbGVyIChzZWUgYFNvbC5yZXNvbHZlUGVybWlzc2lvbmxlc3NUaGF3YCkgYmVjYXVzZSBidWlsZGVycyBuZXZlciBmZXRjaC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQZXJtaXNzaW9ubGVzc1RoYXdJZGVtcG90ZW50IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUGVybWlzc2lvbmxlc3NUaGF3SWRlbXBvdGVudDtcbiAgcGFyYW1zOiB7XG4gICAgLyoqIFRoZSBzaWduZXIgaW52b2tpbmcgdGhlIHRoYXcgKGZlZSBwYXllciAvIGF1dGhvcml0eSkuICovXG4gICAgYXV0aG9yaXR5OiBzdHJpbmc7XG4gICAgLyoqIFRoZSBUb2tlbi0yMDIyIG1pbnQgb2YgdGhlIHRva2VuIGFjY291bnQgYmVpbmcgdGhhd2VkLiAqL1xuICAgIG1pbnQ6IHN0cmluZztcbiAgICAvKiogVGhlIHRva2VuIGFjY291bnQgKEFUQSkgdG8gdGhhdy4gKi9cbiAgICB0b2tlbkFjY291bnQ6IHN0cmluZztcbiAgICAvKiogVGhlIG93bmVyIG9mIHRoZSB0b2tlbiBhY2NvdW50LiAqL1xuICAgIHRva2VuQWNjb3VudE93bmVyOiBzdHJpbmc7XG4gICAgLyoqIFRoZSBUb2tlbiBBQ0wgZ2F0aW5nIHByb2dyYW0gdGhhdCBhdXRob3JpemVzIHRoZSB0aGF3LiAqL1xuICAgIGdhdGluZ1Byb2dyYW06IHN0cmluZztcbiAgICAvKiogUERBICh1bmRlciB0aGUgVG9rZW4gQUNMIHByb2dyYW0pIHRyYWNraW5nIHRoZSB0b2tlbiBhY2NvdW50J3MgdGhhdyBmbGFnLiAqL1xuICAgIGZsYWdBY2NvdW50OiBzdHJpbmc7XG4gICAgLyoqIFBEQSAodW5kZXIgdGhlIFRva2VuIEFDTCBwcm9ncmFtKSBob2xkaW5nIHRoZSBtaW50J3MgVG9rZW4gQUNMIGNvbmZpZy4gKi9cbiAgICBtaW50Q29uZmlnOiBzdHJpbmc7XG4gICAgLyoqIFRva2VuIHByb2dyYW0gaWQ7IGRlZmF1bHRzIHRvIHRoZSBUb2tlbi0yMDIyIHByb2dyYW0gd2hlbiBvbWl0dGVkLiAqL1xuICAgIHRva2VuUHJvZ3JhbT86IHN0cmluZztcbiAgICAvKiogU3lzdGVtIHByb2dyYW0gaWQ7IGRlZmF1bHRzIHRvIHRoZSBTeXN0ZW0gcHJvZ3JhbSB3aGVuIG9taXR0ZWQuICovXG4gICAgc3lzdGVtUHJvZ3JhbT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBSZXNvbHZlZCBleHRyYSBhY2NvdW50IG1ldGFzIHJlcXVpcmVkIGJ5IHRoZSBnYXRpbmcgcHJvZ3JhbSwgaW4gdGhlIGV4YWN0IG9yZGVyIHRoZVxuICAgICAqIGdhdGluZyBwcm9ncmFtJ3MgdGhhdyBFeHRyYUFjY291bnRNZXRhTGlzdCByZXF1aXJlcy4gVGhlIGZpcnN0IGVudHJ5IGlzIHRoZSB0aGF3XG4gICAgICogRXh0cmFBY2NvdW50TWV0YUxpc3QgUERBIGl0c2VsZiwgZm9sbG93ZWQgYnkgYW55IHNlZWQvYWNjb3VudC1kZXJpdmVkIGRlcGVuZGVuY2llcy5cbiAgICAgKi9cbiAgICBleHRyYUFjY291bnRzOiBFeHRyYUFjY291bnRNZXRhW107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWludFRvIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTWludFRvO1xuICBwYXJhbXM6IHtcbiAgICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICB0b2tlbk5hbWU6IHN0cmluZztcbiAgICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdXJuIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQnVybjtcbiAgcGFyYW1zOiB7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICB0b2tlbk5hbWU6IHN0cmluZztcbiAgICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHByb3ZlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQXBwcm92ZTtcbiAgcGFyYW1zOiB7XG4gICAgYWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBkZWxlZ2F0ZUFkZHJlc3M6IHN0cmluZztcbiAgICBvd25lckFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSml0b1N0YWtpbmdBY3RpdmF0ZVBhcmFtcyB7XG4gIHN0YWtlUG9vbERhdGE6IERlcG9zaXRTb2xTdGFrZVBvb2xEYXRhO1xuICBjcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgU3Rha2luZ0FjdGl2YXRlRXh0cmFQYXJhbXMgPSBKaXRvU3Rha2luZ0FjdGl2YXRlUGFyYW1zO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWtpbmdBY3RpdmF0ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdBY3RpdmF0ZTtcbiAgcGFyYW1zOiB7XG4gICAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICAgIHZhbGlkYXRvcjogc3RyaW5nO1xuICAgIHN0YWtpbmdUeXBlOiBTb2xTdGFraW5nVHlwZUVudW07XG4gICAgZXh0cmFQYXJhbXM/OiBTdGFraW5nQWN0aXZhdGVFeHRyYVBhcmFtcztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nRGVsZWdhdGUge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TdGFraW5nRGVsZWdhdGU7XG4gIHBhcmFtczogeyBzdGFraW5nQWRkcmVzczogc3RyaW5nOyBmcm9tQWRkcmVzczogc3RyaW5nOyB2YWxpZGF0b3I6IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEppdG9TdGFraW5nRGVhY3RpdmF0ZVBhcmFtcyB7XG4gIHN0YWtlUG9vbERhdGE6IFdpdGhkcmF3U3Rha2VTdGFrZVBvb2xEYXRhO1xuICB2YWxpZGF0b3JBZGRyZXNzOiBzdHJpbmc7XG4gIHRyYW5zZmVyQXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBTdGFraW5nRGVhY3RpdmF0ZUV4dHJhUGFyYW1zID0gSml0b1N0YWtpbmdEZWFjdGl2YXRlUGFyYW1zO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWtpbmdEZWFjdGl2YXRlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ0RlYWN0aXZhdGU7XG4gIHBhcmFtczoge1xuICAgIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gICAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ/OiBzdHJpbmc7XG4gICAgdW5zdGFraW5nQWRkcmVzcz86IHN0cmluZztcbiAgICBzdGFraW5nVHlwZTogU29sU3Rha2luZ1R5cGVFbnVtO1xuICAgIGV4dHJhUGFyYW1zPzogU3Rha2luZ0RlYWN0aXZhdGVFeHRyYVBhcmFtcztcbiAgICByZWNpcGllbnRzPzogUmVjaXBpZW50W107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ1dpdGhkcmF3IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ1dpdGhkcmF3O1xuICBwYXJhbXM6IHsgZnJvbUFkZHJlc3M6IHN0cmluZzsgc3Rha2luZ0FkZHJlc3M6IHN0cmluZzsgYW1vdW50OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nQXV0aG9yaXplIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ0F1dGhvcml6ZTtcbiAgcGFyYW1zOiB7XG4gICAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgICBvbGRBdXRob3JpemVBZGRyZXNzO1xuICAgIG5ld0F1dGhvcml6ZUFkZHJlc3M6IHN0cmluZztcbiAgICBuZXdXaXRoZHJhd0FkZHJlc3M/OiBzdHJpbmc7XG4gICAgY3VzdG9kaWFuQWRkcmVzcz86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRDb21wdXRlVW5pdExpbWl0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU2V0Q29tcHV0ZVVuaXRMaW1pdDtcbiAgcGFyYW1zOiB7XG4gICAgdW5pdHM6IG51bWJlcjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRQcmlvcml0eUZlZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlNldFByaW9yaXR5RmVlO1xuICBwYXJhbXM6IHtcbiAgICBmZWU6IG51bWJlciB8IGJpZ2ludDtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdGFJbml0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhdGFBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgcGF5ZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF0YUNsb3NlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50O1xuICBwYXJhbXM6IHsgYWNjb3VudEFkZHJlc3M6IHN0cmluZzsgZGVzdGluYXRpb25BZGRyZXNzOiBzdHJpbmc7IGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF0YVJlY292ZXJOZXN0ZWQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5SZWNvdmVyTmVzdGVkQXNzb2NpYXRlZFRva2VuQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgbmVzdGVkQWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBuZXN0ZWRNaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uQWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBvd25lckFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJNaW50QWRkcmVzczogc3RyaW5nO1xuICAgIHdhbGxldEFkZHJlc3M6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgVmFsaWRJbnN0cnVjdGlvblR5cGVzID1cbiAgfCBTeXN0ZW1JbnN0cnVjdGlvblR5cGVcbiAgfCBTdGFrZUluc3RydWN0aW9uVHlwZVxuICB8IFN0YWtlUG9vbEluc3RydWN0aW9uVHlwZVxuICB8ICdNZW1vJ1xuICB8ICdJbml0aWFsaXplQXNzb2NpYXRlZFRva2VuQWNjb3VudCdcbiAgfCAnQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50J1xuICB8ICdSZWNvdmVyTmVzdGVkQXNzb2NpYXRlZFRva2VuQWNjb3VudCdcbiAgfCBEZWNvZGVkQ2xvc2VBY2NvdW50SW5zdHJ1Y3Rpb25cbiAgfCAnVG9rZW5UcmFuc2ZlcidcbiAgfCAnU2V0Q29tcHV0ZVVuaXRMaW1pdCdcbiAgfCAnU2V0UHJpb3JpdHlGZWUnXG4gIHwgJ01pbnRUbydcbiAgfCAnQnVybidcbiAgfCAnQXBwcm92ZSdcbiAgfCAnQ3VzdG9tSW5zdHJ1Y3Rpb24nXG4gIHwgJ1Blcm1pc3Npb25sZXNzVGhhd0lkZW1wb3RlbnQnO1xuXG5leHBvcnQgdHlwZSBTdGFraW5nQXV0aG9yaXplUGFyYW1zID0ge1xuICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICBvbGRXaXRoZHJhd0FkZHJlc3M6IHN0cmluZztcbiAgbmV3V2l0aGRyYXdBZGRyZXNzOiBzdHJpbmc7XG4gIGN1c3RvZGlhbkFkZHJlc3M/OiBzdHJpbmc7XG4gIG9sZFN0YWtpbmdBdXRob3JpdHlBZGRyZXNzPzogc3RyaW5nO1xuICBuZXdTdGFraW5nQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdEZWxlZ2F0ZVBhcmFtcyA9IHtcbiAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgdmFsaWRhdG9yOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbUluc3RydWN0aW9uIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3VzdG9tSW5zdHJ1Y3Rpb247XG4gIHBhcmFtczogU29sSW5zdHJ1Y3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyc2lvbmVkQ3VzdG9tSW5zdHJ1Y3Rpb24ge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJzaW9uZWRDdXN0b21JbnN0cnVjdGlvbjtcbiAgcGFyYW1zOiBTb2xWZXJzaW9uZWRJbnN0cnVjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWZXJzaW9uZWRUcmFuc2FjdGlvbkRhdGEge1xuICB2ZXJzaW9uZWRJbnN0cnVjdGlvbnM6IFNvbFZlcnNpb25lZEluc3RydWN0aW9uW107XG4gIGFkZHJlc3NMb29rdXBUYWJsZXM6IEFkZHJlc3NMb29rdXBUYWJsZVtdO1xuICBzdGF0aWNBY2NvdW50S2V5czogc3RyaW5nW107XG4gIG1lc3NhZ2VIZWFkZXI6IHtcbiAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IG51bWJlcjtcbiAgICBudW1SZWFkb25seVNpZ25lZEFjY291bnRzOiBudW1iZXI7XG4gICAgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzOiBudW1iZXI7XG4gIH07XG4gIHJlY2VudEJsb2NraGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzTG9va3VwVGFibGUge1xuICBhY2NvdW50S2V5OiBzdHJpbmc7XG4gIHdyaXRhYmxlSW5kZXhlczogbnVtYmVyW107XG4gIHJlYWRvbmx5SW5kZXhlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogc3RyaW5nO1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLy8gb25seSBwb3B1bGF0ZWQgaWYgYmxvY2toYXNoIGlzIGZyb20gYSBub25jZSBhY2NvdW50XG4gIGR1cmFibGVOb25jZT86IER1cmFibGVOb25jZVBhcmFtcztcbiAgbWVtbz86IHN0cmluZztcbiAgc3Rha2luZ0F1dGhvcml6ZT86IFN0YWtpbmdBdXRob3JpemVQYXJhbXM7XG4gIHN0YWtpbmdEZWxlZ2F0ZT86IFN0YWtpbmdEZWxlZ2F0ZVBhcmFtcztcbiAgaW5wdXRzPzogeyBhZGRyZXNzOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IGNvaW4/OiBzdHJpbmcgfVtdO1xuICBmZWVQYXllcj86IHN0cmluZztcbiAgYXRhT3duZXJNYXA/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG5leHBvcnQgY2xhc3MgVG9rZW5Bc3NvY2lhdGVSZWNpcGllbnQge1xuICBvd25lckFkZHJlc3M6IHN0cmluZztcbiAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gIGF0YUFkZHJlc3M/OiBzdHJpbmc7XG4gIHRva2VuQWRkcmVzcz86IHN0cmluZztcbiAgcHJvZ3JhbUlkPzogc3RyaW5nO1xufVxuIl19
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZsQkEsTUFBTSxPQUFPLHVCQUF1QjtDQU1uQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvbFN0YWtpbmdUeXBlRW51bSB9IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBhcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbixcbiAgUmVjaXBpZW50LFxuICBTb2xJbnN0cnVjdGlvbixcbiAgU29sVmVyc2lvbmVkSW5zdHJ1Y3Rpb24sXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IERlY29kZWRDbG9zZUFjY291bnRJbnN0cnVjdGlvbiB9IGZyb20gJ0Bzb2xhbmEvc3BsLXRva2VuJztcbmltcG9ydCB7IEJsb2NraGFzaCwgU3Rha2VJbnN0cnVjdGlvblR5cGUsIFN5c3RlbUluc3RydWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25TaWduYXR1cmUgfSBmcm9tICdAc29sYW5hL3dlYjMuanMnO1xuaW1wb3J0IHsgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTdGFrZVBvb2xJbnN0cnVjdGlvblR5cGUgfSBmcm9tICdAc29sYW5hL3NwbC1zdGFrZS1wb29sJztcbmltcG9ydCB7IERlcG9zaXRTb2xTdGFrZVBvb2xEYXRhLCBXaXRoZHJhd1N0YWtlU3Rha2VQb29sRGF0YSB9IGZyb20gJy4vaml0b1N0YWtlUG9vbE9wZXJhdGlvbnMnO1xuXG4vLyBUT0RPKFNUTFgtOTg5MCk6IEFkZCB0aGUgaW50ZXJmYWNlcyBmb3IgdmFsaWRpdHlXaW5kb3cgYW5kIFNlcXVlbmNlSWRcbmV4cG9ydCBpbnRlcmZhY2UgU29sYW5hS2V5cyB7XG4gIHBydj86IFVpbnQ4QXJyYXkgfCBzdHJpbmc7XG4gIHB1Yjogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBEdXJhYmxlTm9uY2VQYXJhbXMge1xuICB3YWxsZXROb25jZUFkZHJlc3M6IHN0cmluZztcbiAgYXV0aFdhbGxldEFkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IFRyYW5zYWN0aW9uU2lnbmF0dXJlO1xuICBmZWVQYXllcj86IHN0cmluZztcbiAgbGFtcG9ydHNQZXJTaWduYXR1cmU/OiBudW1iZXI7XG4gIG51bVNpZ25hdHVyZXM6IG51bWJlcjtcbiAgbm9uY2U6IEJsb2NraGFzaDtcbiAgLy8gb25seSBwb3B1bGF0ZWQgd2hlbiBub25jZSBpcyBmcm9tIGEgZHVyYWJsZSBub25jZSBhY2NvdW50XG4gIGR1cmFibGVOb25jZT86IER1cmFibGVOb25jZVBhcmFtcztcbiAgaW5zdHJ1Y3Rpb25zRGF0YTogSW5zdHJ1Y3Rpb25QYXJhbXNbXTtcbn1cblxuZXhwb3J0IHR5cGUgSW5zdHJ1Y3Rpb25QYXJhbXMgPVxuICB8IE5vbmNlXG4gIHwgTWVtb1xuICB8IFdhbGxldEluaXRcbiAgfCBTZXRDb21wdXRlVW5pdExpbWl0XG4gIHwgU2V0UHJpb3JpdHlGZWVcbiAgfCBUcmFuc2ZlclxuICB8IFN0YWtpbmdBY3RpdmF0ZVxuICB8IFN0YWtpbmdEZWFjdGl2YXRlXG4gIHwgU3Rha2luZ1dpdGhkcmF3XG4gIHwgQXRhSW5pdFxuICB8IEF0YUNsb3NlXG4gIHwgQXRhUmVjb3Zlck5lc3RlZFxuICB8IFRva2VuVHJhbnNmZXJcbiAgfCBTdGFraW5nQXV0aG9yaXplXG4gIHwgU3Rha2luZ0RlbGVnYXRlXG4gIHwgTWludFRvXG4gIHwgQnVyblxuICB8IEFwcHJvdmVcbiAgfCBDdXN0b21JbnN0cnVjdGlvblxuICB8IFZlcnNpb25lZEN1c3RvbUluc3RydWN0aW9uXG4gIHwgUGVybWlzc2lvbmxlc3NUaGF3SWRlbXBvdGVudFxuICB8IENvbmZpZ3VyZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudFxuICB8IEFwcGx5UGVuZGluZ0JhbGFuY2VcbiAgfCBDb25maWRlbnRpYWxEZXBvc2l0XG4gIHwgQ29uZmlkZW50aWFsV2l0aGRyYXdcbiAgfCBDb25maWRlbnRpYWxUcmFuc2ZlclxuICB8IFZlcmlmeVB1YmtleVZhbGlkaXR5XG4gIHwgVmVyaWZ5RXF1YWxpdHlQcm9vZlxuICB8IFZlcmlmeVZhbGlkaXR5UHJvb2ZcbiAgfCBWZXJpZnlSYW5nZVByb29mO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1lbW8ge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5NZW1vO1xuICBwYXJhbXM6IHsgbWVtbzogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTm9uY2Uge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Ob25jZUFkdmFuY2U7XG4gIHBhcmFtczogRHVyYWJsZU5vbmNlUGFyYW1zO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdhbGxldEluaXQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5DcmVhdGVOb25jZUFjY291bnQ7XG4gIHBhcmFtczogeyBmcm9tQWRkcmVzczogc3RyaW5nOyBub25jZUFkZHJlc3M6IHN0cmluZzsgYXV0aEFkZHJlc3M6IHN0cmluZzsgYW1vdW50OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2ZlciB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlRyYW5zZmVyO1xuICBwYXJhbXM6IHtcbiAgICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICAgIHRvQWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICB9O1xufVxuXG4vKipcbiAqIEV4dHJhIGFjY291bnQgbWV0YWRhdGEgcmVxdWlyZWQgYnkgYSBUb2tlbi0yMDIyIFRyYW5zZmVyIEhvb2suXG4gKlxuICogVGhlc2UgYXJlIHJlc29sdmVkIGxpdmUgKGluIHRoZSBvcmRlciB0aGUgaG9vaydzIEV4dHJhQWNjb3VudE1ldGFMaXN0IHJlcXVpcmVzKVxuICogYW5kIHN1cHBsaWVkIHRvIHRoZSBpbnN0cnVjdGlvbiBmYWN0b3J5LiBTZWUge0BsaW5rIFRva2VuVHJhbnNmZXJ9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4dHJhQWNjb3VudE1ldGEge1xuICAvKiogVGhlIGJhc2U1OC1lbmNvZGVkIHB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQgKi9cbiAgcHVia2V5OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBhY2NvdW50IG11c3Qgc2lnbiB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgaXNTaWduZXI6IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRoZSBhY2NvdW50IGlzIHdyaXRhYmxlICovXG4gIGlzV3JpdGFibGU6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVG9rZW5UcmFuc2ZlciB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlRva2VuVHJhbnNmZXI7XG4gIHBhcmFtczoge1xuICAgIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gICAgdG9BZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgc291cmNlQWRkcmVzczogc3RyaW5nO1xuICAgIHRva2VuQWRkcmVzcz86IHN0cmluZztcbiAgICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgICAvKiogV2l0aGhlbGQgdHJhbnNmZXIgZmVlIGluIHJhdyBiYXNlIHVuaXRzICovXG4gICAgZmVlPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFJlc29sdmVkIFRyYW5zZmVyIEhvb2sgZXh0cmEgYWNjb3VudCBtZXRhcywgaW4gdGhlIGV4YWN0IG9yZGVyIHRoZSBob29rXG4gICAgICogcmVxdWlyZXMuIE9ubHkgdXNlZCBmb3IgVG9rZW4tMjAyMiB0cmFuc2ZlcnMgd2hvc2UgbWludCBoYXMgYSBUcmFuc2ZlclxuICAgICAqIEhvb2sgZXh0ZW5zaW9uOyByZXNvbHZlZCBsaXZlIGJ5IHRoZSBjYWxsZXIgKG9mZmxpbmUgYnVpbGRlcnMgbmV2ZXIgZmV0Y2gpLlxuICAgICAqL1xuICAgIHRyYW5zZmVySG9va0FjY291bnRzPzogRXh0cmFBY2NvdW50TWV0YVtdO1xuICB9O1xufVxuXG4vKipcbiAqIHNSRkMtMzcgVG9rZW4gQUNMIHBlcm1pc3Npb25sZXNzIHRoYXcgKGlkZW1wb3RlbnQpIGluc3RydWN0aW9uLlxuICpcbiAqIEVtaXR0ZWQgZm9yIGFsbG93bGlzdC9ibG9ja2xpc3QgKERlZmF1bHRBY2NvdW50U3RhdGUpIFRva2VuLTIwMjIgbWludHMgc28gYSBmcmVzaGx5IGNyZWF0ZWRcbiAqIChmcm96ZW4pIHRva2VuIGFjY291bnQgY2FuIGJlIHRoYXdlZCBhdG9taWNhbGx5IGluIHRoZSBzYW1lIHRyYW5zYWN0aW9uIGFzIHRoZSB0cmFuc2Zlci4gVGhlXG4gKiBnYXRpbmctcHJvZ3JhbSBkZXBlbmRlbmNpZXMgKGBmbGFnQWNjb3VudGAsIGBtaW50Q29uZmlnYCwgYGdhdGluZ1Byb2dyYW1gLCBgZXh0cmFBY2NvdW50c2ApIGFyZVxuICogcmVzb2x2ZWQgbGl2ZSBieSB0aGUgY2FsbGVyIChzZWUgYFNvbC5yZXNvbHZlUGVybWlzc2lvbmxlc3NUaGF3YCkgYmVjYXVzZSBidWlsZGVycyBuZXZlciBmZXRjaC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQZXJtaXNzaW9ubGVzc1RoYXdJZGVtcG90ZW50IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUGVybWlzc2lvbmxlc3NUaGF3SWRlbXBvdGVudDtcbiAgcGFyYW1zOiB7XG4gICAgLyoqIFRoZSBzaWduZXIgaW52b2tpbmcgdGhlIHRoYXcgKGZlZSBwYXllciAvIGF1dGhvcml0eSkuICovXG4gICAgYXV0aG9yaXR5OiBzdHJpbmc7XG4gICAgLyoqIFRoZSBUb2tlbi0yMDIyIG1pbnQgb2YgdGhlIHRva2VuIGFjY291bnQgYmVpbmcgdGhhd2VkLiAqL1xuICAgIG1pbnQ6IHN0cmluZztcbiAgICAvKiogVGhlIHRva2VuIGFjY291bnQgKEFUQSkgdG8gdGhhdy4gKi9cbiAgICB0b2tlbkFjY291bnQ6IHN0cmluZztcbiAgICAvKiogVGhlIG93bmVyIG9mIHRoZSB0b2tlbiBhY2NvdW50LiAqL1xuICAgIHRva2VuQWNjb3VudE93bmVyOiBzdHJpbmc7XG4gICAgLyoqIFRoZSBUb2tlbiBBQ0wgZ2F0aW5nIHByb2dyYW0gdGhhdCBhdXRob3JpemVzIHRoZSB0aGF3LiAqL1xuICAgIGdhdGluZ1Byb2dyYW06IHN0cmluZztcbiAgICAvKiogUERBICh1bmRlciB0aGUgVG9rZW4gQUNMIHByb2dyYW0pIHRyYWNraW5nIHRoZSB0b2tlbiBhY2NvdW50J3MgdGhhdyBmbGFnLiAqL1xuICAgIGZsYWdBY2NvdW50OiBzdHJpbmc7XG4gICAgLyoqIFBEQSAodW5kZXIgdGhlIFRva2VuIEFDTCBwcm9ncmFtKSBob2xkaW5nIHRoZSBtaW50J3MgVG9rZW4gQUNMIGNvbmZpZy4gKi9cbiAgICBtaW50Q29uZmlnOiBzdHJpbmc7XG4gICAgLyoqIFRva2VuIHByb2dyYW0gaWQ7IGRlZmF1bHRzIHRvIHRoZSBUb2tlbi0yMDIyIHByb2dyYW0gd2hlbiBvbWl0dGVkLiAqL1xuICAgIHRva2VuUHJvZ3JhbT86IHN0cmluZztcbiAgICAvKiogU3lzdGVtIHByb2dyYW0gaWQ7IGRlZmF1bHRzIHRvIHRoZSBTeXN0ZW0gcHJvZ3JhbSB3aGVuIG9taXR0ZWQuICovXG4gICAgc3lzdGVtUHJvZ3JhbT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBSZXNvbHZlZCBleHRyYSBhY2NvdW50IG1ldGFzIHJlcXVpcmVkIGJ5IHRoZSBnYXRpbmcgcHJvZ3JhbSwgaW4gdGhlIGV4YWN0IG9yZGVyIHRoZVxuICAgICAqIGdhdGluZyBwcm9ncmFtJ3MgdGhhdyBFeHRyYUFjY291bnRNZXRhTGlzdCByZXF1aXJlcy4gVGhlIGZpcnN0IGVudHJ5IGlzIHRoZSB0aGF3XG4gICAgICogRXh0cmFBY2NvdW50TWV0YUxpc3QgUERBIGl0c2VsZiwgZm9sbG93ZWQgYnkgYW55IHNlZWQvYWNjb3VudC1kZXJpdmVkIGRlcGVuZGVuY2llcy5cbiAgICAgKi9cbiAgICBleHRyYUFjY291bnRzOiBFeHRyYUFjY291bnRNZXRhW107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTWludFRvIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTWludFRvO1xuICBwYXJhbXM6IHtcbiAgICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICB0b2tlbk5hbWU6IHN0cmluZztcbiAgICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdXJuIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQnVybjtcbiAgcGFyYW1zOiB7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICB0b2tlbk5hbWU6IHN0cmluZztcbiAgICBkZWNpbWFsUGxhY2VzPzogbnVtYmVyO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHByb3ZlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQXBwcm92ZTtcbiAgcGFyYW1zOiB7XG4gICAgYWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBkZWxlZ2F0ZUFkZHJlc3M6IHN0cmluZztcbiAgICBvd25lckFkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSml0b1N0YWtpbmdBY3RpdmF0ZVBhcmFtcyB7XG4gIHN0YWtlUG9vbERhdGE6IERlcG9zaXRTb2xTdGFrZVBvb2xEYXRhO1xuICBjcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50PzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgU3Rha2luZ0FjdGl2YXRlRXh0cmFQYXJhbXMgPSBKaXRvU3Rha2luZ0FjdGl2YXRlUGFyYW1zO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWtpbmdBY3RpdmF0ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdBY3RpdmF0ZTtcbiAgcGFyYW1zOiB7XG4gICAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICAgIHZhbGlkYXRvcjogc3RyaW5nO1xuICAgIHN0YWtpbmdUeXBlOiBTb2xTdGFraW5nVHlwZUVudW07XG4gICAgZXh0cmFQYXJhbXM/OiBTdGFraW5nQWN0aXZhdGVFeHRyYVBhcmFtcztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nRGVsZWdhdGUge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TdGFraW5nRGVsZWdhdGU7XG4gIHBhcmFtczogeyBzdGFraW5nQWRkcmVzczogc3RyaW5nOyBmcm9tQWRkcmVzczogc3RyaW5nOyB2YWxpZGF0b3I6IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEppdG9TdGFraW5nRGVhY3RpdmF0ZVBhcmFtcyB7XG4gIHN0YWtlUG9vbERhdGE6IFdpdGhkcmF3U3Rha2VTdGFrZVBvb2xEYXRhO1xuICB2YWxpZGF0b3JBZGRyZXNzOiBzdHJpbmc7XG4gIHRyYW5zZmVyQXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBTdGFraW5nRGVhY3RpdmF0ZUV4dHJhUGFyYW1zID0gSml0b1N0YWtpbmdEZWFjdGl2YXRlUGFyYW1zO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWtpbmdEZWFjdGl2YXRlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ0RlYWN0aXZhdGU7XG4gIHBhcmFtczoge1xuICAgIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gICAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ/OiBzdHJpbmc7XG4gICAgdW5zdGFraW5nQWRkcmVzcz86IHN0cmluZztcbiAgICBzdGFraW5nVHlwZTogU29sU3Rha2luZ1R5cGVFbnVtO1xuICAgIGV4dHJhUGFyYW1zPzogU3Rha2luZ0RlYWN0aXZhdGVFeHRyYVBhcmFtcztcbiAgICByZWNpcGllbnRzPzogUmVjaXBpZW50W107XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ1dpdGhkcmF3IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ1dpdGhkcmF3O1xuICBwYXJhbXM6IHsgZnJvbUFkZHJlc3M6IHN0cmluZzsgc3Rha2luZ0FkZHJlc3M6IHN0cmluZzsgYW1vdW50OiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nQXV0aG9yaXplIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ0F1dGhvcml6ZTtcbiAgcGFyYW1zOiB7XG4gICAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgICBvbGRBdXRob3JpemVBZGRyZXNzO1xuICAgIG5ld0F1dGhvcml6ZUFkZHJlc3M6IHN0cmluZztcbiAgICBuZXdXaXRoZHJhd0FkZHJlc3M/OiBzdHJpbmc7XG4gICAgY3VzdG9kaWFuQWRkcmVzcz86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRDb21wdXRlVW5pdExpbWl0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU2V0Q29tcHV0ZVVuaXRMaW1pdDtcbiAgcGFyYW1zOiB7XG4gICAgdW5pdHM6IG51bWJlcjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXRQcmlvcml0eUZlZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlNldFByaW9yaXR5RmVlO1xuICBwYXJhbXM6IHtcbiAgICBmZWU6IG51bWJlciB8IGJpZ2ludDtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdGFJbml0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhdGFBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgcGF5ZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF0YUNsb3NlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50O1xuICBwYXJhbXM6IHsgYWNjb3VudEFkZHJlc3M6IHN0cmluZzsgZGVzdGluYXRpb25BZGRyZXNzOiBzdHJpbmc7IGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF0YVJlY292ZXJOZXN0ZWQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5SZWNvdmVyTmVzdGVkQXNzb2NpYXRlZFRva2VuQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgbmVzdGVkQWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBuZXN0ZWRNaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uQWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBvd25lckFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJNaW50QWRkcmVzczogc3RyaW5nO1xuICAgIHdhbGxldEFkZHJlc3M6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IHR5cGUgVmFsaWRJbnN0cnVjdGlvblR5cGVzID1cbiAgfCBTeXN0ZW1JbnN0cnVjdGlvblR5cGVcbiAgfCBTdGFrZUluc3RydWN0aW9uVHlwZVxuICB8IFN0YWtlUG9vbEluc3RydWN0aW9uVHlwZVxuICB8ICdNZW1vJ1xuICB8ICdJbml0aWFsaXplQXNzb2NpYXRlZFRva2VuQWNjb3VudCdcbiAgfCAnQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50J1xuICB8ICdSZWNvdmVyTmVzdGVkQXNzb2NpYXRlZFRva2VuQWNjb3VudCdcbiAgfCBEZWNvZGVkQ2xvc2VBY2NvdW50SW5zdHJ1Y3Rpb25cbiAgfCAnVG9rZW5UcmFuc2ZlcidcbiAgfCAnU2V0Q29tcHV0ZVVuaXRMaW1pdCdcbiAgfCAnU2V0UHJpb3JpdHlGZWUnXG4gIHwgJ01pbnRUbydcbiAgfCAnQnVybidcbiAgfCAnQXBwcm92ZSdcbiAgfCAnQ3VzdG9tSW5zdHJ1Y3Rpb24nXG4gIHwgJ1Blcm1pc3Npb25sZXNzVGhhd0lkZW1wb3RlbnQnXG4gIHwgJ0NvbmZpZ3VyZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudCdcbiAgfCAnQXBwbHlQZW5kaW5nQmFsYW5jZSdcbiAgfCAnQ29uZmlkZW50aWFsRGVwb3NpdCdcbiAgfCAnQ29uZmlkZW50aWFsV2l0aGRyYXcnXG4gIHwgJ0NvbmZpZGVudGlhbFRyYW5zZmVyJ1xuICB8ICdWZXJpZnlQdWJrZXlWYWxpZGl0eSdcbiAgfCAnVmVyaWZ5RXF1YWxpdHlQcm9vZidcbiAgfCAnVmVyaWZ5VmFsaWRpdHlQcm9vZidcbiAgfCAnVmVyaWZ5UmFuZ2VQcm9vZic7XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdBdXRob3JpemVQYXJhbXMgPSB7XG4gIHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gIG9sZFdpdGhkcmF3QWRkcmVzczogc3RyaW5nO1xuICBuZXdXaXRoZHJhd0FkZHJlc3M6IHN0cmluZztcbiAgY3VzdG9kaWFuQWRkcmVzcz86IHN0cmluZztcbiAgb2xkU3Rha2luZ0F1dGhvcml0eUFkZHJlc3M/OiBzdHJpbmc7XG4gIG5ld1N0YWtpbmdBdXRob3JpdHlBZGRyZXNzPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgU3Rha2luZ0RlbGVnYXRlUGFyYW1zID0ge1xuICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICB2YWxpZGF0b3I6IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tSW5zdHJ1Y3Rpb24ge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5DdXN0b21JbnN0cnVjdGlvbjtcbiAgcGFyYW1zOiBTb2xJbnN0cnVjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWZXJzaW9uZWRDdXN0b21JbnN0cnVjdGlvbiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcnNpb25lZEN1c3RvbUluc3RydWN0aW9uO1xuICBwYXJhbXM6IFNvbFZlcnNpb25lZEluc3RydWN0aW9uO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZlcnNpb25lZFRyYW5zYWN0aW9uRGF0YSB7XG4gIHZlcnNpb25lZEluc3RydWN0aW9uczogU29sVmVyc2lvbmVkSW5zdHJ1Y3Rpb25bXTtcbiAgYWRkcmVzc0xvb2t1cFRhYmxlczogQWRkcmVzc0xvb2t1cFRhYmxlW107XG4gIHN0YXRpY0FjY291bnRLZXlzOiBzdHJpbmdbXTtcbiAgbWVzc2FnZUhlYWRlcjoge1xuICAgIG51bVJlcXVpcmVkU2lnbmF0dXJlczogbnVtYmVyO1xuICAgIG51bVJlYWRvbmx5U2lnbmVkQWNjb3VudHM6IG51bWJlcjtcbiAgICBudW1SZWFkb25seVVuc2lnbmVkQWNjb3VudHM6IG51bWJlcjtcbiAgfTtcbiAgcmVjZW50QmxvY2toYXNoPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFkZHJlc3NMb29rdXBUYWJsZSB7XG4gIGFjY291bnRLZXk6IHN0cmluZztcbiAgd3JpdGFibGVJbmRleGVzOiBudW1iZXJbXTtcbiAgcmVhZG9ubHlJbmRleGVzOiBudW1iZXJbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICB0eXBlOiBzdHJpbmc7XG4gIGJsb2NraGFzaDogQmxvY2toYXNoO1xuICAvLyBvbmx5IHBvcHVsYXRlZCBpZiBibG9ja2hhc2ggaXMgZnJvbSBhIG5vbmNlIGFjY291bnRcbiAgZHVyYWJsZU5vbmNlPzogRHVyYWJsZU5vbmNlUGFyYW1zO1xuICBtZW1vPzogc3RyaW5nO1xuICBzdGFraW5nQXV0aG9yaXplPzogU3Rha2luZ0F1dGhvcml6ZVBhcmFtcztcbiAgc3Rha2luZ0RlbGVnYXRlPzogU3Rha2luZ0RlbGVnYXRlUGFyYW1zO1xuICBpbnB1dHM/OiB7IGFkZHJlc3M6IHN0cmluZzsgdmFsdWU6IHN0cmluZzsgY29pbj86IHN0cmluZyB9W107XG4gIGZlZVBheWVyPzogc3RyaW5nO1xuICBhdGFPd25lck1hcD86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59XG5cbi8vIOKUgOKUgOKUgCBDb25maWRlbnRpYWwgVHJhbnNmZXIgaW50ZXJmYWNlcyAoVG9rZW4tMjAyMiBDVCBleHRlbnNpb24pIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4vKipcbiAqIENvbmZpZ3VyZXMgYSB0b2tlbiBhY2NvdW50IGZvciBjb25maWRlbnRpYWwgdHJhbnNmZXJzLlxuICpcbiAqIExheW91dDogWzI3XVsyXSArIGRlY3J5cHRhYmxlX3plcm9fYmFsYW5jZSgzNikgKyBtYXhpbXVtX3BlbmRpbmdfYmFsYW5jZV9jcmVkaXRfY291bnRlcih1NjQpICsgcHJvb2ZfaW5zdHJ1Y3Rpb25fb2Zmc2V0KGk4KSA9IDQ3IGJ5dGVzXG4gKlxuICogQWNjb3VudHM6IFt0b2tlbih3cml0YWJsZSksIG1pbnQsIGluc3RydWN0aW9uc1N5c3Zhcnxjb250ZXh0U3RhdGUsIGF1dGhvcml0eShzaWduZXIpXVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZ3VyZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZ3VyZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgLyoqIEluc3RydWN0aW9ucyBzeXN2YXIgKGlubGluZSBwcm9vZikgb3IgY29udGV4dCBzdGF0ZSBhY2NvdW50IChwcmUtdmVyaWZpZWQgcHJvb2YpLiBEZWZhdWx0cyB0byBpbnN0cnVjdGlvbnMgc3lzdmFyLiAqL1xuICAgIGluc3RydWN0aW9uc1N5c3Zhck9yQ29udGV4dFN0YXRlQWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogQUVTLWVuY3J5cHRlZCB6ZXJvIGJhbGFuY2UgKDM2IGJ5dGVzIGhleCkuICovXG4gICAgZGVjcnlwdGFibGVaZXJvQmFsYW5jZTogc3RyaW5nO1xuICAgIC8qKiBNYXhpbXVtIGRlcG9zaXRzICsgdHJhbnNmZXJzIGJlZm9yZSBBcHBseVBlbmRpbmdCYWxhbmNlIGlzIHJlcXVpcmVkLiAqL1xuICAgIG1heGltdW1QZW5kaW5nQmFsYW5jZUNyZWRpdENvdW50ZXI6IHN0cmluZztcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIHRoZSBWZXJpZnlQdWJrZXlWYWxpZGl0eSBwcm9vZiBpbnN0cnVjdGlvbiAoaTgsIHNpZ25lZCkuIDAgPSB1c2UgY29udGV4dCBzdGF0ZSBhY2NvdW50LiAqL1xuICAgIHByb29mSW5zdHJ1Y3Rpb25PZmZzZXQ6IG51bWJlcjtcbiAgfTtcbn1cblxuLyoqXG4gKiBBcHBsaWVzIHBlbmRpbmcgYmFsYW5jZSB0byBhdmFpbGFibGUgYmFsYW5jZS5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bOF0gKyBleHBlY3RlZF9wZW5kaW5nX2JhbGFuY2VfY3JlZGl0X2NvdW50ZXIodTY0KSArIG5ld19kZWNyeXB0YWJsZV9hdmFpbGFibGVfYmFsYW5jZSgzNikgPSA0NiBieXRlc1xuICpcbiAqIEFjY291bnRzOiBbdG9rZW4od3JpdGFibGUpLCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcHBseVBlbmRpbmdCYWxhbmNlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQXBwbHlQZW5kaW5nQmFsYW5jZTtcbiAgcGFyYW1zOiB7XG4gICAgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgYXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xuICAgIC8qKiBFeHBlY3RlZCBudW1iZXIgb2YgcGVuZGluZyBiYWxhbmNlIGNyZWRpdHMgc2luY2UgbGFzdCBBcHBseVBlbmRpbmdCYWxhbmNlLiAqL1xuICAgIGV4cGVjdGVkUGVuZGluZ0JhbGFuY2VDcmVkaXRDb3VudGVyOiBzdHJpbmc7XG4gICAgLyoqIEFFUy1lbmNyeXB0ZWQgbmV3IGF2YWlsYWJsZSBiYWxhbmNlICgzNiBieXRlcyBoZXgpLiAqL1xuICAgIG5ld0RlY3J5cHRhYmxlQXZhaWxhYmxlQmFsYW5jZTogc3RyaW5nO1xuICB9O1xufVxuXG4vKipcbiAqIERlcG9zaXRzIHB1YmxpYyBTUEwgdG9rZW5zIGludG8gY29uZmlkZW50aWFsIHBlbmRpbmcgYmFsYW5jZS5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bNV0gKyBhbW91bnQodTY0KSArIGRlY2ltYWxzKHU4KSA9IDExIGJ5dGVzXG4gKlxuICogQWNjb3VudHM6IFt0b2tlbih3cml0YWJsZSksIG1pbnQsIGF1dGhvcml0eShzaWduZXIpXVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZGVudGlhbERlcG9zaXQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxEZXBvc2l0O1xuICBwYXJhbXM6IHtcbiAgICB0b2tlbkFkZHJlc3M6IHN0cmluZztcbiAgICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogQW1vdW50IHRvIGRlcG9zaXQgaW4gYmFzZSB1bml0cy4gKi9cbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICAvKiogTnVtYmVyIG9mIGRlY2ltYWxzIGZvciB0aGUgdG9rZW4uICovXG4gICAgZGVjaW1hbHM6IG51bWJlcjtcbiAgfTtcbn1cblxuLyoqXG4gKiBXaXRoZHJhd3MgdG9rZW5zIGZyb20gY29uZmlkZW50aWFsIGF2YWlsYWJsZSBiYWxhbmNlIHRvIHB1YmxpYyBiYWxhbmNlLlxuICpcbiAqIExheW91dDogWzI3XVs2XSArIGFtb3VudCh1NjQpICsgZGVjaW1hbHModTgpICsgbmV3X2RlY3J5cHRhYmxlX2F2YWlsYWJsZV9iYWxhbmNlKDM2KSArIGVxdWFsaXR5X3Byb29mX29mZnNldChpOCkgKyByYW5nZV9wcm9vZl9vZmZzZXQoaTgpID0gNDkgYnl0ZXNcbiAqXG4gKiBBY2NvdW50czogW3Rva2VuKHdyaXRhYmxlKSwgbWludCwgaW5zdHJ1Y3Rpb25zU3lzdmFyPywgZXF1YWxpdHlDb250ZXh0U3RhdGU/LCByYW5nZUNvbnRleHRTdGF0ZT8sIGF1dGhvcml0eShzaWduZXIpXVxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbmZpZGVudGlhbFdpdGhkcmF3IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsV2l0aGRyYXc7XG4gIHBhcmFtczoge1xuICAgIHRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xuICAgIC8qKiBJbnN0cnVjdGlvbnMgc3lzdmFyIGFkZHJlc3MgKGlmIHByb29mcyBhcmUgaW5saW5lKS4gT21pdCBpZiB1c2luZyBjb250ZXh0IHN0YXRlIGFjY291bnRzLiAqL1xuICAgIGluc3RydWN0aW9uc1N5c3ZhckFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIEVxdWFsaXR5IHByb29mIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgcHJlLXZlcmlmaWVkKS4gT21pdCBpZiB1c2luZyBpbmxpbmUgcHJvb2YuICovXG4gICAgZXF1YWxpdHlQcm9vZkNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIFJhbmdlIHByb29mIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgcHJlLXZlcmlmaWVkKS4gT21pdCBpZiB1c2luZyBpbmxpbmUgcHJvb2YuICovXG4gICAgcmFuZ2VQcm9vZkNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIEFtb3VudCB0byB3aXRoZHJhdyBpbiBiYXNlIHVuaXRzLiAqL1xuICAgIGFtb3VudDogc3RyaW5nO1xuICAgIC8qKiBOdW1iZXIgb2YgZGVjaW1hbHMgZm9yIHRoZSB0b2tlbi4gKi9cbiAgICBkZWNpbWFsczogbnVtYmVyO1xuICAgIC8qKiBBRVMtZW5jcnlwdGVkIG5ldyBhdmFpbGFibGUgYmFsYW5jZSBhZnRlciB3aXRoZHJhd2FsICgzNiBieXRlcyBoZXgpLiAqL1xuICAgIG5ld0RlY3J5cHRhYmxlQXZhaWxhYmxlQmFsYW5jZTogc3RyaW5nO1xuICAgIC8qKiBSZWxhdGl2ZSBvZmZzZXQgdG8gVmVyaWZ5Q2lwaGVydGV4dENvbW1pdG1lbnRFcXVhbGl0eSBwcm9vZiAoaTgpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUuICovXG4gICAgZXF1YWxpdHlQcm9vZkluc3RydWN0aW9uT2Zmc2V0OiBudW1iZXI7XG4gICAgLyoqIFJlbGF0aXZlIG9mZnNldCB0byBWZXJpZnlCYXRjaGVkUmFuZ2VQcm9vZlU2NCBwcm9vZiAoaTgpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUuICovXG4gICAgcmFuZ2VQcm9vZkluc3RydWN0aW9uT2Zmc2V0OiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogVHJhbnNmZXJzIHRva2VucyBjb25maWRlbnRpYWxseSBiZXR3ZWVuIHR3byBhY2NvdW50cy5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bN10gKyBuZXdfc291cmNlX2RlY3J5cHRhYmxlKDM2KSArIGF1ZGl0b3JfY3RfbG8oNjQpICsgYXVkaXRvcl9jdF9oaSg2NCkgKyBlcV9vZmZzZXQoaTgpICsgdmFsaWRpdHlfb2Zmc2V0KGk4KSArIHJhbmdlX29mZnNldChpOCkgPSAxNjkgYnl0ZXNcbiAqXG4gKiBBY2NvdW50czogW3NvdXJjZSh3cml0YWJsZSksIG1pbnQsIGRlc3Qod3JpdGFibGUpLCBpbnN0cnVjdGlvbnNTeXN2YXI/LCBlcUN0eD8sIHZhbGlkaXR5Q3R4PywgcmFuZ2VDdHg/LCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWRlbnRpYWxUcmFuc2ZlciB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZGVudGlhbFRyYW5zZmVyO1xuICBwYXJhbXM6IHtcbiAgICBzb3VyY2VUb2tlbkFkZHJlc3M6IHN0cmluZztcbiAgICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uVG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgYXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xuICAgIC8qKiBJbnN0cnVjdGlvbnMgc3lzdmFyIGFkZHJlc3MgKGlmIHByb29mcyBhcmUgaW5saW5lKS4gT21pdCBpZiB1c2luZyBjb250ZXh0IHN0YXRlIGFjY291bnRzLiAqL1xuICAgIGluc3RydWN0aW9uc1N5c3ZhckFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIEVxdWFsaXR5IHByb29mIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgcHJlLXZlcmlmaWVkKS4gT21pdCBpZiB1c2luZyBpbmxpbmUgcHJvb2YuICovXG4gICAgZXF1YWxpdHlQcm9vZkNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENpcGhlcnRleHQgdmFsaWRpdHkgcHJvb2YgY29udGV4dCBzdGF0ZSBhY2NvdW50IChpZiBwcmUtdmVyaWZpZWQpLiBPbWl0IGlmIHVzaW5nIGlubGluZSBwcm9vZi4gKi9cbiAgICBjaXBoZXJ0ZXh0VmFsaWRpdHlQcm9vZkNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIFJhbmdlIHByb29mIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgcHJlLXZlcmlmaWVkKS4gT21pdCBpZiB1c2luZyBpbmxpbmUgcHJvb2YuICovXG4gICAgcmFuZ2VQcm9vZkNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIEFFUy1lbmNyeXB0ZWQgbmV3IHNvdXJjZSBkZWNyeXB0YWJsZSBiYWxhbmNlICgzNiBieXRlcyBoZXgpLiAqL1xuICAgIG5ld1NvdXJjZURlY3J5cHRhYmxlQXZhaWxhYmxlQmFsYW5jZTogc3RyaW5nO1xuICAgIC8qKiBBdWRpdG9yIEVsR2FtYWwgY2lwaGVydGV4dCBmb3IgdHJhbnNmZXIgYW1vdW50IGxvdyAxNiBiaXRzICg2NCBieXRlcyBoZXgpLiAqL1xuICAgIHRyYW5zZmVyQW1vdW50QXVkaXRvckNpcGhlcnRleHRMbzogc3RyaW5nO1xuICAgIC8qKiBBdWRpdG9yIEVsR2FtYWwgY2lwaGVydGV4dCBmb3IgdHJhbnNmZXIgYW1vdW50IGhpZ2ggYml0cyAoNjQgYnl0ZXMgaGV4KS4gKi9cbiAgICB0cmFuc2ZlckFtb3VudEF1ZGl0b3JDaXBoZXJ0ZXh0SGk6IHN0cmluZztcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUNpcGhlcnRleHRDb21taXRtZW50RXF1YWxpdHkgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZJbnN0cnVjdGlvbk9mZnNldDogbnVtYmVyO1xuICAgIC8qKiBSZWxhdGl2ZSBvZmZzZXQgdG8gVmVyaWZ5QmF0Y2hlZEdyb3VwZWRDaXBoZXJ0ZXh0M0hhbmRsZXNWYWxpZGl0eSBwcm9vZiAoaTgpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUuICovXG4gICAgY2lwaGVydGV4dFZhbGlkaXR5UHJvb2ZJbnN0cnVjdGlvbk9mZnNldDogbnVtYmVyO1xuICAgIC8qKiBSZWxhdGl2ZSBvZmZzZXQgdG8gVmVyaWZ5QmF0Y2hlZFJhbmdlUHJvb2ZVMTI4IHByb29mIChpOCkuIDAgPSB1c2UgY29udGV4dCBzdGF0ZS4gKi9cbiAgICByYW5nZVByb29mSW5zdHJ1Y3Rpb25PZmZzZXQ6IG51bWJlcjtcbiAgfTtcbn1cblxuLy8g4pSA4pSA4pSAIHprLWVsZ2FtYWwtcHJvb2YgdmVyaWZpY2F0aW9uIGludGVyZmFjZXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG5cbi8qKlxuICogVmVyaWZpZXMgdGhlIHZhbGlkaXR5IG9mIGFuIEVsR2FtYWwgcHVia2V5ICh1c2VkIHdpdGggQ29uZmlndXJlQWNjb3VudCkuXG4gKlxuICogRGlzY3JpbWluYXRvcjogWzRdICsgcHJvb2ZfZGF0YVxuICogUHJvZ3JhbTogemstZWxnYW1hbC1wcm9vZlxuICogQWNjb3VudHM6IFtdIChpbmxpbmUgcHJvb2YpIG9yIFtjb250ZXh0U3RhdGUod3JpdGFibGUpLCBhdXRob3JpdHldIChjb250ZXh0IHN0YXRlKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVB1YmtleVZhbGlkaXR5IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5UHVia2V5VmFsaWRpdHk7XG4gIHBhcmFtczoge1xuICAgIC8qKiBQcm9vZiBkYXRhIGFzIGhleCBzdHJpbmcgKGlubGluZSBwcm9vZikuIElmIG9taXR0ZWQsIHVzZXMgY29udGV4dCBzdGF0ZSBhY2NvdW50ICsgb2Zmc2V0LiAqL1xuICAgIHByb29mRGF0YT86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhY2NvdW50IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQWNjb3VudEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYXV0aG9yaXR5IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBWZXJpZmllcyBjaXBoZXJ0ZXh0LWNvbW1pdG1lbnQgZXF1YWxpdHkgcHJvb2YgKHVzZWQgd2l0aCBUcmFuc2ZlciBhbmQgV2l0aGRyYXcpLlxuICpcbiAqIERpc2NyaW1pbmF0b3I6IFszXSArIHByb29mX2RhdGEgb3IgWzNdICsgb2Zmc2V0KHUzMilcbiAqIFByb2dyYW06IHprLWVsZ2FtYWwtcHJvb2ZcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWZXJpZnlFcXVhbGl0eVByb29mIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5RXF1YWxpdHlQcm9vZjtcbiAgcGFyYW1zOiB7XG4gICAgLyoqIFByb29mIGRhdGEgYXMgaGV4IHN0cmluZyAoaW5saW5lIHByb29mKS4gSWYgb21pdHRlZCwgdXNlcyBjb250ZXh0IHN0YXRlIGFjY291bnQgKyBvZmZzZXQuICovXG4gICAgcHJvb2ZEYXRhPzogc3RyaW5nO1xuICAgIC8qKiBDb250ZXh0IHN0YXRlIGFjY291bnQgYWRkcmVzcyAoaWYgcHJlLXZlcmlmaWVkIHByb29mKS4gKi9cbiAgICBjb250ZXh0U3RhdGVBY2NvdW50QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhdXRob3JpdHkgYWRkcmVzcyAoaWYgcHJlLXZlcmlmaWVkIHByb29mKS4gKi9cbiAgICBjb250ZXh0U3RhdGVBdXRob3JpdHlBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBPZmZzZXQgaW50byBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHVzaW5nIGNvbnRleHQgc3RhdGUpLiAqL1xuICAgIG9mZnNldD86IG51bWJlcjtcbiAgfTtcbn1cblxuLyoqXG4gKiBWZXJpZmllcyBiYXRjaGVkIGdyb3VwZWQgY2lwaGVydGV4dCAzLWhhbmRsZXMgdmFsaWRpdHkgcHJvb2YgKHVzZWQgd2l0aCBUcmFuc2ZlcikuXG4gKlxuICogRGlzY3JpbWluYXRvcjogWzEyXSArIHByb29mX2RhdGEgb3IgWzEyXSArIG9mZnNldCh1MzIpXG4gKiBQcm9ncmFtOiB6ay1lbGdhbWFsLXByb29mXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZ5VmFsaWRpdHlQcm9vZiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVZhbGlkaXR5UHJvb2Y7XG4gIHBhcmFtczoge1xuICAgIC8qKiBQcm9vZiBkYXRhIGFzIGhleCBzdHJpbmcgKGlubGluZSBwcm9vZikuIElmIG9taXR0ZWQsIHVzZXMgY29udGV4dCBzdGF0ZSBhY2NvdW50ICsgb2Zmc2V0LiAqL1xuICAgIHByb29mRGF0YT86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhY2NvdW50IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQWNjb3VudEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYXV0aG9yaXR5IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogT2Zmc2V0IGludG8gY29udGV4dCBzdGF0ZSBhY2NvdW50IChpZiB1c2luZyBjb250ZXh0IHN0YXRlKS4gKi9cbiAgICBvZmZzZXQ/OiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogVmVyaWZpZXMgYmF0Y2hlZCByYW5nZSBwcm9vZiBVMTI4ICh1c2VkIHdpdGggVHJhbnNmZXIpLlxuICpcbiAqIERpc2NyaW1pbmF0b3I6IFs3XSArIHByb29mX2RhdGEgb3IgWzddICsgb2Zmc2V0KGkzMilcbiAqIFByb2dyYW06IHprLWVsZ2FtYWwtcHJvb2ZcbiAqIEFjY291bnRzOiBbXSAoaW5saW5lIHByb29mKSBvciBbY29udGV4dFN0YXRlKHdyaXRhYmxlKSwgYXV0aG9yaXR5XSAoY29udGV4dCBzdGF0ZSlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWZXJpZnlSYW5nZVByb29mIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5UmFuZ2VQcm9vZjtcbiAgcGFyYW1zOiB7XG4gICAgLyoqIFByb29mIGRhdGEgYXMgaGV4IHN0cmluZyAoaW5saW5lIHByb29mKS4gSWYgb21pdHRlZCwgdXNlcyBjb250ZXh0IHN0YXRlIGFjY291bnQgKyBvZmZzZXQuICovXG4gICAgcHJvb2ZEYXRhPzogc3RyaW5nO1xuICAgIC8qKiBDb250ZXh0IHN0YXRlIGFjY291bnQgYWRkcmVzcyAoaWYgcHJlLXZlcmlmaWVkIHByb29mKS4gKi9cbiAgICBjb250ZXh0U3RhdGVBY2NvdW50QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhdXRob3JpdHkgYWRkcmVzcyAoaWYgcHJlLXZlcmlmaWVkIHByb29mKS4gKi9cbiAgICBjb250ZXh0U3RhdGVBdXRob3JpdHlBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBPZmZzZXQgaW50byBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHVzaW5nIGNvbnRleHQgc3RhdGUpLiAqL1xuICAgIG9mZnNldD86IG51bWJlcjtcbiAgfTtcbn1cblxuZXhwb3J0IGNsYXNzIFRva2VuQXNzb2NpYXRlUmVjaXBpZW50IHtcbiAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gIHRva2VuTmFtZTogc3RyaW5nO1xuICBhdGFBZGRyZXNzPzogc3RyaW5nO1xuICB0b2tlbkFkZHJlc3M/OiBzdHJpbmc7XG4gIHByb2dyYW1JZD86IHN0cmluZztcbn1cbiJdfQ==
|
package/dist/esm/lib/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import * as Interface from './iface';
|
|
|
2
2
|
import * as Utils from './utils';
|
|
3
3
|
export { AtaInitializationBuilder } from './ataInitializationBuilder';
|
|
4
4
|
export { CloseAtaBuilder } from './closeAtaBuilder';
|
|
5
|
+
export { ConfidentialTransferBuilder } from './confidentialTransferBuilder';
|
|
5
6
|
export { CustomInstructionBuilder } from './customInstructionBuilder';
|
|
6
7
|
export { KeyPair } from './keyPair';
|
|
7
8
|
export { StakingActivateBuilder } from './stakingActivateBuilder';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,+BAA+B,EAC/B,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC"}
|