@bitgo-beta/sdk-coin-sol 7.6.4-beta.784 → 7.6.4-beta.786
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/LICENSE +191 -0
- package/dist/cjs/src/lib/confidentialTransferBuilder.d.ts +2 -2
- package/dist/cjs/src/lib/confidentialTransferBuilder.d.ts.map +1 -1
- package/dist/cjs/src/lib/confidentialTransferBuilder.js +4 -4
- package/dist/cjs/src/lib/iface.d.ts +13 -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/solInstructionFactory.js +20 -10
- package/dist/cjs/test/unit/ctEnablementVerify.js +1 -2
- package/dist/cjs/test/unit/transactionBuilder/confidentialEnablementV1.js +1 -2
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.js +55 -22
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1.js +1 -2
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1Ops.js +1 -2
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/lib/confidentialTransferBuilder.d.ts +2 -2
- package/dist/esm/lib/confidentialTransferBuilder.d.ts.map +1 -1
- package/dist/esm/lib/confidentialTransferBuilder.js +4 -4
- package/dist/esm/lib/iface.d.ts +13 -2
- package/dist/esm/lib/iface.d.ts.map +1 -1
- package/dist/esm/lib/iface.js +1 -1
- package/dist/esm/lib/solInstructionFactory.js +20 -10
- package/package.json +8 -8
|
@@ -76,8 +76,8 @@ export declare class ConfidentialTransferBuilder extends TransactionBuilder {
|
|
|
76
76
|
createAta(params: AtaInit['params']): this;
|
|
77
77
|
/**
|
|
78
78
|
* Add a ConfigureAccount instruction to the transaction.
|
|
79
|
-
* One-time ATA setup — registers
|
|
80
|
-
*
|
|
79
|
+
* One-time ATA setup — registers the AES zero ciphertext and pending-balance counter; the
|
|
80
|
+
* ElGamal pubkey is taken from the accompanying VerifyPubkeyValidity proof.
|
|
81
81
|
*/
|
|
82
82
|
configureAccount(params: ConfigureConfidentialTransferAccount['params']): this;
|
|
83
83
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"confidentialTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/confidentialTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAyB,qBAAqB,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG7H,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,mBAAmB,EACnB,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oCAAoC,EAGpC,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAQjB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,2BAA4B,SAAQ,kBAAkB;IACjE,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,QAAQ,CAAC,CAAwB;IACzC,OAAO,CAAC,oBAAoB,CAAC,CAAyB;gBAE1C,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAK7C;;;;;;;OAOG;IACH,iBAAiB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAKvD;;;;;;;;OAQG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAMzC,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAwBlC;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"confidentialTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/confidentialTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAyB,qBAAqB,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAG7H,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EACL,mBAAmB,EACnB,OAAO,EACP,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oCAAoC,EAGpC,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,SAAS,CAAC;AAQjB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,2BAA4B,SAAQ,kBAAkB;IACjE,OAAO,CAAC,eAAe,CAA2B;IAClD,OAAO,CAAC,QAAQ,CAAC,CAAwB;IACzC,OAAO,CAAC,oBAAoB,CAAC,CAAyB;gBAE1C,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAK7C;;;;;;;OAOG;IACH,iBAAiB,CAAC,MAAM,EAAE,sBAAsB,GAAG,IAAI;IAKvD;;;;;;;;OAQG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAMzC,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAwBlC;;;;;OAKG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI;IAyB1C;;;;OAIG;IACH,gBAAgB,CAAC,MAAM,EAAE,oCAAoC,CAAC,QAAQ,CAAC,GAAG,IAAI;IAc9E;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAahE;;;OAGG;IACH,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAahE;;;;OAIG;IACH,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAclE;;;OAGG;IACH,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAgBlE;;OAEG;IACH,oBAAoB,CAAC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAQlE;;OAEG;IACH,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAQhE;;OAEG;IACH,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAQhE;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,GAAG,IAAI;IAQ1D,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAY3D;;;;;;;;;;OAUG;IACH,OAAO,CAAC,OAAO;CAwGhB"}
|
|
@@ -133,20 +133,20 @@ export class ConfidentialTransferBuilder extends TransactionBuilder {
|
|
|
133
133
|
payerAddress: params.payerAddress,
|
|
134
134
|
ownerAddress: params.ownerAddress,
|
|
135
135
|
programId: params.programId,
|
|
136
|
+
mintHasTransferFeeConfig: params.mintHasTransferFeeConfig,
|
|
136
137
|
},
|
|
137
138
|
});
|
|
138
139
|
return this;
|
|
139
140
|
}
|
|
140
141
|
/**
|
|
141
142
|
* Add a ConfigureAccount instruction to the transaction.
|
|
142
|
-
* One-time ATA setup — registers
|
|
143
|
-
*
|
|
143
|
+
* One-time ATA setup — registers the AES zero ciphertext and pending-balance counter; the
|
|
144
|
+
* ElGamal pubkey is taken from the accompanying VerifyPubkeyValidity proof.
|
|
144
145
|
*/
|
|
145
146
|
configureAccount(params) {
|
|
146
147
|
assert(params.tokenAddress, 'Missing tokenAddress param');
|
|
147
148
|
assert(params.mintAddress, 'Missing mintAddress param');
|
|
148
149
|
assert(params.authorityAddress, 'Missing authorityAddress param');
|
|
149
|
-
assert(params.elgamalPubkey, 'Missing elgamalPubkey param');
|
|
150
150
|
assert(params.decryptableZeroBalance, 'Missing decryptableZeroBalance param');
|
|
151
151
|
assert(params.maximumPendingBalanceCreditCounter, 'Missing maximumPendingBalanceCreditCounter param');
|
|
152
152
|
this._ctInstructions.push({
|
|
@@ -365,4 +365,4 @@ export class ConfidentialTransferBuilder extends TransactionBuilder {
|
|
|
365
365
|
return this._transaction;
|
|
366
366
|
}
|
|
367
367
|
}
|
|
368
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlkZW50aWFsVHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25maWRlbnRpYWxUcmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFpRCxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3SCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsSUFBSSxjQUFjLEVBQTBCLE1BQU0saUJBQWlCLENBQUM7QUFDbkcsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBZXRELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCRztBQUNILE1BQU0sT0FBTywyQkFBNEIsU0FBUSxrQkFBa0I7SUFLakUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFMYixvQkFBZSxHQUF3QixFQUFFLENBQUM7UUFNaEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lB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QkFBa0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBRXpDLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIFNvbFRyYW5zYWN0aW9uVmVyc2lvbiwgU29sVjFUcmFuc2FjdGlvbkNvbmZpZywgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgUHVibGljS2V5LCBUcmFuc2FjdGlvbiBhcyBTb2xUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25JbnN0cnVjdGlvbiB9IGZyb20gJ0Bzb2xhbmEvd2ViMy5qcyc7XG5pbXBvcnQgbmFjbCBmcm9tICd0d2VldG5hY2wnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IEluc3RydWN0aW9uQnVpbGRlclR5cGVzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgQXBwbHlQZW5kaW5nQmFsYW5jZSxcbiAgQXRhSW5pdCxcbiAgQ29uZmlkZW50aWFsRGVwb3NpdCxcbiAgQ29uZmlkZW50aWFsVHJhbnNmZXIsXG4gIENvbmZpZGVudGlhbFdpdGhkcmF3LFxuICBDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQsXG4gIEluc3RydWN0aW9uUGFyYW1zLFxuICBNZW1vLFxuICBWZXJpZnlFcXVhbGl0eVByb29mLFxuICBWZXJpZnlQdWJrZXlWYWxpZGl0eSxcbiAgVmVyaWZ5UmFuZ2VQcm9vZixcbiAgVmVyaWZ5VmFsaWRpdHlQcm9vZixcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBjb21waWxlVHJhbnNhY3Rpb25NZXNzYWdlIH0gZnJvbSAnLi9zZXJpYWxpemF0aW9uL2NvbXBpbGVUcmFuc2FjdGlvbk1lc3NhZ2UnO1xuaW1wb3J0IHsgZGVjb2RlVjFNZXNzYWdlIH0gZnJvbSAnLi9zZXJpYWxpemF0aW9uL2NvZGVjcy92MS9tZXNzYWdlJztcbmltcG9ydCB7IHNlcmlhbGl6ZVdpcmVUcmFuc2FjdGlvbiB9IGZyb20gJy4vc2VyaWFsaXphdGlvbi93aXJlLXRyYW5zYWN0aW9uJztcbmltcG9ydCB7IHNvbEluc3RydWN0aW9uRmFjdG9yeSB9IGZyb20gJy4vc29sSW5zdHJ1Y3Rpb25GYWN0b3J5JztcbmltcG9ydCB7IGJ1aWxkQWR2YW5jZU5vbmNlQWNjb3VudEluc3RydWN0aW9uIH0gZnJvbSAnLi92MVRyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbi8qKlxuICogQnVpbGRlciBmb3IgVG9rZW4tMjAyMiBjb25maWRlbnRpYWwgdHJhbnNmZXIgdHJhbnNhY3Rpb25zLlxuICpcbiAqIFByb3ZpZGVzIHR5cGUtc2FmZSBmbHVlbnQgc2V0dGVycyBmb3IgdGhlIGZvbGxvd2luZyBDVCBpbnN0cnVjdGlvbnM6XG4gKiAtIENyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQgKENUIGVuYWJsZW1lbnQ6IEFUQSB1bmRlciBUb2tlbi0yMDIyIGJlZm9yZSBDb25maWd1cmVBY2NvdW50KVxuICogLSBDb25maWd1cmVBY2NvdW50IChzdGFuZGFsb25lLCB3aXRoIFZlcmlmeVB1YmtleVZhbGlkaXR5IHByb29mKVxuICogLSBBcHBseVBlbmRpbmdCYWxhbmNlIChhbHdheXMgaW5zdHJ1Y3Rpb24gIzEgaW4gdjEgc3BlbmQgdHhzLCBpZGVtcG90ZW50KVxuICogLSBEZXBvc2l0IChwdWJsaWMg4oaSIGNvbmZpZGVudGlhbCBjb252ZXJzaW9uKVxuICogLSBXaXRoZHJhdyAoY29uZmlkZW50aWFsIOKGkiBwdWJsaWMgY29udmVyc2lvbiwgd2l0aCBlcXVhbGl0eSArIHJhbmdlIHByb29mcylcbiAqIC0gVHJhbnNmZXIgKGNvbmZpZGVudGlhbCDihpIgY29uZmlkZW50aWFsLCB3aXRoIGVxdWFsaXR5ICsgdmFsaWRpdHkgKyByYW5nZSBwcm9vZnMpXG4gKiAtIFZlcmlmeVB1YmtleVZhbGlkaXR5IC8gVmVyaWZ5RXF1YWxpdHkgLyBWZXJpZnlWYWxpZGl0eSAvIFZlcmlmeVJhbmdlIHByb29mIGluc3RydWN0aW9uc1xuICpcbiAqIEluc3RydWN0aW9uIGJ1aWxkZXJzIGFyZSB2MC92MS1hZ25vc3RpYzogdGhleSBwcm9kdWNlIGluc3RydWN0aW9uIGRhdGEgYW5kXG4gKiBhY2NvdW50IG1ldGFzIG9ubHkuIFRoZSBjYWxsZXIgKFdhbGxldCBQbGF0Zm9ybSkgYXNzZW1ibGVzIHRoZW0gaW50byB2MVxuICogdHJhbnNhY3Rpb25zIGluIHRoZSBjb3JyZWN0IG9yZGVyLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogY29uc3QgYnVpbGRlciA9IGZhY3RvcnkuZ2V0Q29uZmlkZW50aWFsVHJhbnNmZXJCdWlsZGVyKCk7XG4gKiBidWlsZGVyLm5vbmNlKHJlY2VudEJsb2NraGFzaCkuc2VuZGVyKHBheWVyKTtcbiAqIGJ1aWxkZXIuY29uZmlndXJlQWNjb3VudCh7IHRva2VuQWRkcmVzcywgbWludEFkZHJlc3MsIGF1dGhvcml0eUFkZHJlc3MsIC4uLiB9KTtcbiAqIGJ1aWxkZXIudmVyaWZ5UHVia2V5VmFsaWRpdHkoeyBwcm9vZkRhdGEgfSk7XG4gKiBjb25zdCB0eCA9IGF3YWl0IGJ1aWxkZXIuYnVpbGQoKTtcbiAqIGBgYFxuICovXG5leHBvcnQgY2xhc3MgQ29uZmlkZW50aWFsVHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfY3RJbnN0cnVjdGlvbnM6IEluc3RydWN0aW9uUGFyYW1zW10gPSBbXTtcbiAgcHJpdmF0ZSBfdmVyc2lvbj86IFNvbFRyYW5zYWN0aW9uVmVyc2lvbjtcbiAgcHJpdmF0ZSBfdjFUcmFuc2FjdGlvbkNvbmZpZz86IFNvbFYxVHJhbnNhY3Rpb25Db25maWc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5Db25maWRlbnRpYWxUcmFuc2ZlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIFNvbGFuYSB0cmFuc2FjdGlvbiB2ZXJzaW9uLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byBsZWdhY3kgdW50aWwgc2V0LiBXaGVuIHNldCB0byBgMWAsIHRoZSBidWlsZGVyIGFzc2VtYmxlcyBhIHYxXG4gICAqIChTSU1ELTAyOTYvMDM4NSkgdHJhbnNhY3Rpb246IHZlcnNpb24gYnl0ZSBgMHg4MWAsIGFuIGlubGluZSBgdHJhbnNhY3Rpb25Db25maWdgXG4gICAqIGluc3RlYWQgb2YgQ29tcHV0ZUJ1ZGdldCBpbnN0cnVjdGlvbnMsIG5vIGFkZHJlc3MgbG9va3VwIHRhYmxlcywgYW5kIGFcbiAgICogbWVzc2FnZS1maXJzdCB3aXJlIGZvcm1hdCB3aXRoIHNpZ25hdHVyZXMgYXBwZW5kZWQuXG4gICAqXG4gICAqIEBwYXJhbSB2ZXJzaW9uIC0gdGhlIHRyYW5zYWN0aW9uIHZlcnNpb24gKDAgPSB2MCwgMSA9IHYxKVxuICAgKiBAcmV0dXJucyB7dGhpc30gVGhpcyBidWlsZGVyXG4gICAqL1xuICB2ZXJzaW9uKHZlcnNpb246IFNvbFRyYW5zYWN0aW9uVmVyc2lvbik6IHRoaXMge1xuICAgIHRoaXMuX3ZlcnNpb24gPSB2ZXJzaW9uO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdjEgdHJhbnNhY3Rpb24gY29uZmlnIChjb21wdXRlIHVuaXQgbGltaXQsIGhlYXAgc2l6ZSwgbG9hZGVkIGFjY291bnRzXG4gICAqIGRhdGEgc2l6ZSBsaW1pdCwgYW5kIHByaW9yaXR5IGZlZSBhcyB0b3RhbCBsYW1wb3J0cykuIFJlcXVpcmVkIHdoZW5cbiAgICogYHZlcnNpb24oMSlgIGlzIHNldC5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZyAtIHRoZSB2MSB0cmFuc2FjdGlvbiBjb25maWdcbiAgICogQHJldHVybnMge3RoaXN9IFRoaXMgYnVpbGRlclxuICAgKi9cbiAgdHJhbnNhY3Rpb25Db25maWcoY29uZmlnOiBTb2xWMVRyYW5zYWN0aW9uQ29uZmlnKTogdGhpcyB7XG4gICAgdGhpcy5fdjFUcmFuc2FjdGlvbkNvbmZpZyA9IGNvbmZpZztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBPdmVycmlkZSB0aGUgemstZWxnYW1hbC1wcm9vZiBwcm9ncmFtIGlkLlxuICAgKlxuICAgKiBEZWZhdWx0cyB0byB0aGUgY2Fub25pY2FsIG9uLWNoYWluIHByb2dyYW0gaWQgKGBaa0UxR2FtYTFQcm9vZjExMS4uLmApXG4gICAqIHdoaWNoIGlzIHRoZSBzYW1lIGFjcm9zcyBtYWlubmV0LCBkZXZuZXQsIGFuZCB0ZXN0bmV0LiBPdmVycmlkZSBvbmx5XG4gICAqIHdoZW4gdGFyZ2V0aW5nIGEgY3VzdG9tIGRlcGxveW1lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9ncmFtSWQgLSBiYXNlNTggZW5jb2RlZCBwcm9ncmFtIGlkXG4gICAqL1xuICB6a1Byb29mUHJvZ3JhbUlkKHByb2dyYW1JZDogc3RyaW5nKTogdGhpcyB7XG4gICAgYXNzZXJ0KHByb2dyYW1JZCwgJ01pc3NpbmcgcHJvZ3JhbUlkIHBhcmFtJyk7XG4gICAgdGhpcy5femtQcm9vZlByb2dyYW1JZCA9IHByb2dyYW1JZDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMgPSBbXTtcbiAgICBmb3IgKGNvbnN0IGluc3RydWN0aW9uIG9mIHRoaXMuX2luc3RydWN0aW9uc0RhdGEpIHtcbiAgICAgIHN3aXRjaCAoaW5zdHJ1Y3Rpb24udHlwZSkge1xuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQ6XG4gICAgICAgIGNhc2UgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUmVhbGxvY2F0ZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudDpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQ6XG4gICAgICAgIGNhc2UgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQXBwbHlQZW5kaW5nQmFsYW5jZTpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxEZXBvc2l0OlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZGVudGlhbFdpdGhkcmF3OlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZGVudGlhbFRyYW5zZmVyOlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVB1YmtleVZhbGlkaXR5OlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeUVxdWFsaXR5UHJvb2Y6XG4gICAgICAgIGNhc2UgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5VmFsaWRpdHlQcm9vZjpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlSYW5nZVByb29mOlxuICAgICAgICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goaW5zdHJ1Y3Rpb24pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBDcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50IChpZGVtcG90ZW50KSBpbnN0cnVjdGlvbiB0byB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIENUIGVuYWJsZW1lbnQgb25seSDigJQgdGhlIEFUQSBtdXN0IGV4aXN0IGJlZm9yZSBDb25maWd1cmVBY2NvdW50OyBhZGQgdGhpc1xuICAgKiBmaXJzdCB3aGVuIHRoZSBBVEEgaXMgbm90IHlldCBvbi1jaGFpbi4gRm9yIFRva2VuLTIwMjIgbWludHMgcGFzc1xuICAgKiBgcHJvZ3JhbUlkYCBzbyB0aGUgQVRBIGlzIGNyZWF0ZWQgdW5kZXIgdGhlIFRva2VuLTIwMjIgcHJvZ3JhbS5cbiAgICovXG4gIGNyZWF0ZUF0YShwYXJhbXM6IEF0YUluaXRbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgYXNzZXJ0KHBhcmFtcy5taW50QWRkcmVzcywgJ01pc3NpbmcgbWludEFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmF0YUFkZHJlc3MsICdNaXNzaW5nIGF0YUFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLm93bmVyQWRkcmVzcywgJ01pc3Npbmcgb3duZXJBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5wYXllckFkZHJlc3MsICdNaXNzaW5nIHBheWVyQWRkcmVzcyBwYXJhbScpO1xuXG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5DcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50LFxuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICAgIC8vIENvbmZpZ3VyZUFjY291bnQgcmVxdWlyZXMgdGhlIENvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudCBleHRlbnNpb24sIHdoaWNoIGFuIEFUQSBkb2VzXG4gICAgLy8gbm90IGNhcnJ5IOKAlCBSZWFsbG9jYXRlIGFkZHMgaXQgYW5kIG11c3QgcnVuIGJlZm9yZSBDb25maWd1cmVBY2NvdW50LlxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUmVhbGxvY2F0ZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudCxcbiAgICAgIHBhcmFtczoge1xuICAgICAgICB0b2tlbkFkZHJlc3M6IHBhcmFtcy5hdGFBZGRyZXNzLFxuICAgICAgICBwYXllckFkZHJlc3M6IHBhcmFtcy5wYXllckFkZHJlc3MsXG4gICAgICAgIG93bmVyQWRkcmVzczogcGFyYW1zLm93bmVyQWRkcmVzcyxcbiAgICAgICAgcHJvZ3JhbUlkOiBwYXJhbXMucHJvZ3JhbUlkLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBDb25maWd1cmVBY2NvdW50IGluc3RydWN0aW9uIHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogT25lLXRpbWUgQVRBIHNldHVwIOKAlCByZWdpc3RlcnMgRWxHYW1hbCBwdWJrZXkgKyBBRVMgemVybyBjaXBoZXJ0ZXh0LlxuICAgKiBNdXN0IGJlIGFjY29tcGFuaWVkIGJ5IGEgVmVyaWZ5UHVia2V5VmFsaWRpdHkgcHJvb2YgaW5zdHJ1Y3Rpb24uXG4gICAqL1xuICBjb25maWd1cmVBY2NvdW50KHBhcmFtczogQ29uZmlndXJlQ29uZmlkZW50aWFsVHJhbnNmZXJBY2NvdW50WydwYXJhbXMnXSk6IHRoaXMge1xuICAgIGFzc2VydChwYXJhbXMudG9rZW5BZGRyZXNzLCAnTWlzc2luZyB0b2tlbkFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLm1pbnRBZGRyZXNzLCAnTWlzc2luZyBtaW50QWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMuYXV0aG9yaXR5QWRkcmVzcywgJ01pc3NpbmcgYXV0aG9yaXR5QWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMuZWxnYW1hbFB1YmtleSwgJ01pc3NpbmcgZWxnYW1hbFB1YmtleSBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMuZGVjcnlwdGFibGVaZXJvQmFsYW5jZSwgJ01pc3NpbmcgZGVjcnlwdGFibGVaZXJvQmFsYW5jZSBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMubWF4aW11bVBlbmRpbmdCYWxhbmNlQ3JlZGl0Q291bnRlciwgJ01pc3NpbmcgbWF4aW11bVBlbmRpbmdCYWxhbmNlQ3JlZGl0Q291bnRlciBwYXJhbScpO1xuXG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGFuIEFwcGx5UGVuZGluZ0JhbGFuY2UgaW5zdHJ1Y3Rpb24gdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBDcmVkaXRzIHBlbmRpbmcgYmFsYW5jZSBpbnRvIGF2YWlsYWJsZSBiYWxhbmNlLiBJZGVtcG90ZW50IChuby1vcCBpZiAwIHBlbmRpbmcpLlxuICAgKiBJbiB2MSB0cmFuc2FjdGlvbnMsIHRoaXMgc2hvdWxkIGFsd2F5cyBiZSBpbnN0cnVjdGlvbiAjMS5cbiAgICovXG4gIGFwcGx5UGVuZGluZ0JhbGFuY2UocGFyYW1zOiBBcHBseVBlbmRpbmdCYWxhbmNlWydwYXJhbXMnXSk6IHRoaXMge1xuICAgIGFzc2VydChwYXJhbXMudG9rZW5BZGRyZXNzLCAnTWlzc2luZyB0b2tlbkFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmF1dGhvcml0eUFkZHJlc3MsICdNaXNzaW5nIGF1dGhvcml0eUFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmV4cGVjdGVkUGVuZGluZ0JhbGFuY2VDcmVkaXRDb3VudGVyLCAnTWlzc2luZyBleHBlY3RlZFBlbmRpbmdCYWxhbmNlQ3JlZGl0Q291bnRlciBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMubmV3RGVjcnlwdGFibGVBdmFpbGFibGVCYWxhbmNlLCAnTWlzc2luZyBuZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2UgcGFyYW0nKTtcblxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQXBwbHlQZW5kaW5nQmFsYW5jZSxcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBEZXBvc2l0IGluc3RydWN0aW9uIHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogTW92ZXMgcHVibGljIFNQTCB0b2tlbnMgaW50byBjb25maWRlbnRpYWwgcGVuZGluZyBiYWxhbmNlLiBObyBwcm9vZiByZXF1aXJlZC5cbiAgICovXG4gIGNvbmZpZGVudGlhbERlcG9zaXQocGFyYW1zOiBDb25maWRlbnRpYWxEZXBvc2l0WydwYXJhbXMnXSk6IHRoaXMge1xuICAgIGFzc2VydChwYXJhbXMudG9rZW5BZGRyZXNzLCAnTWlzc2luZyB0b2tlbkFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLm1pbnRBZGRyZXNzLCAnTWlzc2luZyBtaW50QWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMuYXV0aG9yaXR5QWRkcmVzcywgJ01pc3NpbmcgYXV0aG9yaXR5QWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMuYW1vdW50LCAnTWlzc2luZyBhbW91bnQgcGFyYW0nKTtcblxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsRGVwb3NpdCxcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBXaXRoZHJhdyBpbnN0cnVjdGlvbiB0byB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIE1vdmVzIGNvbmZpZGVudGlhbCBhdmFpbGFibGUgYmFsYW5jZSB0byBwdWJsaWMgYmFsYW5jZS5cbiAgICogUmVxdWlyZXMgZXF1YWxpdHkgKyByYW5nZSBwcm9vZiB2ZXJpZmljYXRpb24gaW5zdHJ1Y3Rpb25zLlxuICAgKi9cbiAgY29uZmlkZW50aWFsV2l0aGRyYXcocGFyYW1zOiBDb25maWRlbnRpYWxXaXRoZHJhd1sncGFyYW1zJ10pOiB0aGlzIHtcbiAgICBhc3NlcnQocGFyYW1zLnRva2VuQWRkcmVzcywgJ01pc3NpbmcgdG9rZW5BZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5taW50QWRkcmVzcywgJ01pc3NpbmcgbWludEFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmF1dGhvcml0eUFkZHJlc3MsICdNaXNzaW5nIGF1dGhvcml0eUFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmFtb3VudCwgJ01pc3NpbmcgYW1vdW50IHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5uZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2UsICdNaXNzaW5nIG5ld0RlY3J5cHRhYmxlQXZhaWxhYmxlQmFsYW5jZSBwYXJhbScpO1xuXG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxXaXRoZHJhdyxcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBjb25maWRlbnRpYWwgVHJhbnNmZXIgaW5zdHJ1Y3Rpb24gdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBSZXF1aXJlcyBlcXVhbGl0eSArIGNpcGhlcnRleHQgdmFsaWRpdHkgKyByYW5nZSBwcm9vZiB2ZXJpZmljYXRpb24gaW5zdHJ1Y3Rpb25zLlxuICAgKi9cbiAgY29uZmlkZW50aWFsVHJhbnNmZXIocGFyYW1zOiBDb25maWRlbnRpYWxUcmFuc2ZlclsncGFyYW1zJ10pOiB0aGlzIHtcbiAgICBhc3NlcnQocGFyYW1zLnNvdXJjZVRva2VuQWRkcmVzcywgJ01pc3Npbmcgc291cmNlVG9rZW5BZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5taW50QWRkcmVzcywgJ01pc3NpbmcgbWludEFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmRlc3RpbmF0aW9uVG9rZW5BZGRyZXNzLCAnTWlzc2luZyBkZXN0aW5hdGlvblRva2VuQWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMuYXV0aG9yaXR5QWRkcmVzcywgJ01pc3NpbmcgYXV0aG9yaXR5QWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMubmV3U291cmNlRGVjcnlwdGFibGVBdmFpbGFibGVCYWxhbmNlLCAnTWlzc2luZyBuZXdTb3VyY2VEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2UgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLnRyYW5zZmVyQW1vdW50QXVkaXRvckNpcGhlcnRleHRMbywgJ01pc3NpbmcgdHJhbnNmZXJBbW91bnRBdWRpdG9yQ2lwaGVydGV4dExvIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy50cmFuc2ZlckFtb3VudEF1ZGl0b3JDaXBoZXJ0ZXh0SGksICdNaXNzaW5nIHRyYW5zZmVyQW1vdW50QXVkaXRvckNpcGhlcnRleHRIaSBwYXJhbScpO1xuXG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxUcmFuc2ZlcixcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBWZXJpZnlQdWJrZXlWYWxpZGl0eSBwcm9vZiBpbnN0cnVjdGlvbiAodXNlZCB3aXRoIENvbmZpZ3VyZUFjY291bnQpLlxuICAgKi9cbiAgdmVyaWZ5UHVia2V5VmFsaWRpdHkocGFyYW1zOiBWZXJpZnlQdWJrZXlWYWxpZGl0eVsncGFyYW1zJ10pOiB0aGlzIHtcbiAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKHtcbiAgICAgIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVB1YmtleVZhbGlkaXR5LFxuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIFZlcmlmeUNpcGhlcnRleHRDb21taXRtZW50RXF1YWxpdHkgcHJvb2YgaW5zdHJ1Y3Rpb24gKHVzZWQgd2l0aCBUcmFuc2ZlciBhbmQgV2l0aGRyYXcpLlxuICAgKi9cbiAgdmVyaWZ5RXF1YWxpdHlQcm9vZihwYXJhbXM6IFZlcmlmeUVxdWFsaXR5UHJvb2ZbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlFcXVhbGl0eVByb29mLFxuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIFZlcmlmeUJhdGNoZWRHcm91cGVkQ2lwaGVydGV4dDNIYW5kbGVzVmFsaWRpdHkgcHJvb2YgaW5zdHJ1Y3Rpb24gKHVzZWQgd2l0aCBUcmFuc2ZlcikuXG4gICAqL1xuICB2ZXJpZnlWYWxpZGl0eVByb29mKHBhcmFtczogVmVyaWZ5VmFsaWRpdHlQcm9vZlsncGFyYW1zJ10pOiB0aGlzIHtcbiAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKHtcbiAgICAgIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVZhbGlkaXR5UHJvb2YsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgVmVyaWZ5QmF0Y2hlZFJhbmdlUHJvb2ZVMTI4IHByb29mIGluc3RydWN0aW9uICh1c2VkIHdpdGggVHJhbnNmZXIpLlxuICAgKi9cbiAgdmVyaWZ5UmFuZ2VQcm9vZihwYXJhbXM6IFZlcmlmeVJhbmdlUHJvb2ZbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlSYW5nZVByb29mLFxuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBhc3NlcnQodGhpcy5fY3RJbnN0cnVjdGlvbnMubGVuZ3RoID4gMCwgJ0F0IGxlYXN0IG9uZSBjb25maWRlbnRpYWwgdHJhbnNmZXIgaW5zdHJ1Y3Rpb24gbXVzdCBiZSBzcGVjaWZpZWQnKTtcblxuICAgIGlmICh0aGlzLl92ZXJzaW9uID09PSAxKSB7XG4gICAgICByZXR1cm4gdGhpcy5idWlsZFYxKCk7XG4gICAgfVxuXG4gICAgdGhpcy5faW5zdHJ1Y3Rpb25zRGF0YSA9IFsuLi50aGlzLl9jdEluc3RydWN0aW9uc107XG5cbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuYnVpbGRJbXBsZW1lbnRhdGlvbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIGEgdjEgKFNJTUQtMDI5Ni8wMzg1KSBjb25maWRlbnRpYWwgdHJhbnNmZXIgdHJhbnNhY3Rpb24uXG4gICAqXG4gICAqIEFzc2VtYmxlcyB0aGUgQ1QgaW5zdHJ1Y3Rpb25zIHZpYSB0aGUgc2hhcmVkIGluc3RydWN0aW9uIGZhY3RvcnksIGNvbXBpbGVzXG4gICAqIGFuZCBzZXJpYWxpemVzIGEgdjEgbWVzc2FnZSB3aXRoIHRoZSBpbmxpbmUgdHJhbnNhY3Rpb24gY29uZmlnLCBzaWducyB0aGVcbiAgICogbWVzc2FnZSBieXRlcyB3aXRoIHRoZSBidWlsZGVyJ3Mgc2lnbmVycywgYW5kIHN0b3JlcyB0aGUgcmVzdWx0aW5nIHdpcmVcbiAgICogYnl0ZXMgZm9yIGJyb2FkY2FzdC4gQWxzbyBwb3B1bGF0ZXMgYSBtZXRhZGF0YS1vbmx5IFNvbFRyYW5zYWN0aW9uIHNvIHRoZVxuICAgKiB0cmFuc2FjdGlvbiBKU09OIGFuZCBpbnB1dC9vdXRwdXQgZXh0cmFjdGlvbiByZW1haW4gdXNhYmxlLlxuICAgKlxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb259IFRoZSBidWlsdCB0cmFuc2FjdGlvbiBob2xkaW5nIHRoZSB2MSB3aXJlIGJ5dGVzXG4gICAqL1xuICBwcml2YXRlIGJ1aWxkVjEoKTogVHJhbnNhY3Rpb24ge1xuICAgIGFzc2VydCh0aGlzLl9zZW5kZXIsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3NlbmRlciBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgYXNzZXJ0KHRoaXMuX3JlY2VudEJsb2NraGFzaCwgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcigncmVjZW50IGJsb2NraGFzaCBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgYXNzZXJ0KHRoaXMuX3YxVHJhbnNhY3Rpb25Db25maWcsICd0cmFuc2FjdGlvbkNvbmZpZyBpcyByZXF1aXJlZCB0byBidWlsZCBhIHYxIGNvbmZpZGVudGlhbCB0cmFuc2ZlciB0cmFuc2FjdGlvbicpO1xuXG4gICAgLy8gQXBwbHlQZW5kaW5nQmFsYW5jZSBtdXN0IHJlbWFpbiBpbnN0cnVjdGlvbiAjMSBpbiB2MSBzcGVuZCB0eHMgKGl0IGlzIGlkZW1wb3RlbnQpLFxuICAgIC8vIHJlZ2FyZGxlc3Mgb2YgdGhlIG9yZGVyIHRoZSBjYWxsZXIgYWRkZWQgaW5zdHJ1Y3Rpb25zLlxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zID0gW1xuICAgICAgLi4udGhpcy5fY3RJbnN0cnVjdGlvbnMuZmlsdGVyKChpKSA9PiBpLnR5cGUgPT09IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcGx5UGVuZGluZ0JhbGFuY2UpLFxuICAgICAgLi4udGhpcy5fY3RJbnN0cnVjdGlvbnMuZmlsdGVyKChpKSA9PiBpLnR5cGUgIT09IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcGx5UGVuZGluZ0JhbGFuY2UpLFxuICAgIF07XG5cbiAgICBjb25zdCBpbnN0cnVjdGlvbnM6IFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb25bXSA9IFtdO1xuXG4gICAgLy8gRHVyYWJsZSBub25jZTogdGhlIEFkdmFuY2VOb25jZUFjY291bnQgaW5zdHJ1Y3Rpb24gTVVTVCBiZSBwYXJ0IG9mIHRoZVxuICAgIC8vIG1lc3NhZ2UgKGEgYmFyZSBub25jZSBoYXNoIHdpdGhvdXQgdGhlIGluc3RydWN0aW9uIGlzIGludmFsaWQpLiBJdCBpc1xuICAgIC8vIHBsYWNlZCBmaXJzdCwgbWF0Y2hpbmcgdGhlIHYwIHdlYjMuanMgYW5kIHYxIHBheW1lbnQtYnVpbGRlciBjb252ZW50aW9uLlxuICAgIGlmICh0aGlzLl9ub25jZUluZm8pIHtcbiAgICAgIGluc3RydWN0aW9ucy5wdXNoKFxuICAgICAgICBidWlsZEFkdmFuY2VOb25jZUFjY291bnRJbnN0cnVjdGlvbihcbiAgICAgICAgICB0aGlzLl9ub25jZUluZm8ucGFyYW1zLndhbGxldE5vbmNlQWRkcmVzcyxcbiAgICAgICAgICB0aGlzLl9ub25jZUluZm8ucGFyYW1zLmF1dGhXYWxsZXRBZGRyZXNzXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBpbnN0cnVjdGlvbiBvZiB0aGlzLl9jdEluc3RydWN0aW9ucykge1xuICAgICAgaW5zdHJ1Y3Rpb25zLnB1c2goLi4uc29sSW5zdHJ1Y3Rpb25GYWN0b3J5KGluc3RydWN0aW9uLCB0aGlzLl96a1Byb29mUHJvZ3JhbUlkKSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX21lbW8pIHtcbiAgICAgIGNvbnN0IG1lbW9EYXRhOiBNZW1vID0ge1xuICAgICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5NZW1vLFxuICAgICAgICBwYXJhbXM6IHsgbWVtbzogdGhpcy5fbWVtbyB9LFxuICAgICAgfTtcbiAgICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2gobWVtb0RhdGEpO1xuICAgICAgaW5zdHJ1Y3Rpb25zLnB1c2goLi4uc29sSW5zdHJ1Y3Rpb25GYWN0b3J5KG1lbW9EYXRhKSk7XG4gICAgfVxuXG4gICAgY29uc3QgZmVlUGF5ZXIgPSB0aGlzLl9mZWVQYXllciA/IG5ldyBQdWJsaWNLZXkodGhpcy5fZmVlUGF5ZXIpIDogbmV3IFB1YmxpY0tleSh0aGlzLl9zZW5kZXIpO1xuICAgIGNvbnN0IG1lc3NhZ2VCeXRlcyA9IGNvbXBpbGVUcmFuc2FjdGlvbk1lc3NhZ2Uoe1xuICAgICAgdmVyc2lvbjogMSxcbiAgICAgIGluc3RydWN0aW9ucyxcbiAgICAgIGZlZVBheWVyLFxuICAgICAgcmVjZW50QmxvY2toYXNoOiB0aGlzLl9yZWNlbnRCbG9ja2hhc2gsXG4gICAgICB0cmFuc2FjdGlvbkNvbmZpZzogdGhpcy5fdjFUcmFuc2FjdGlvbkNvbmZpZyxcbiAgICB9KTtcblxuICAgIC8vIFNpZ25lciBvcmRlciBjb21lcyBmcm9tIHRoZSBjb21waWxlZCBtZXNzYWdlOiB0aGUgZmlyc3RcbiAgICAvLyBudW1TaWduZXJBY2NvdW50cyBzdGF0aWMgYWNjb3VudHMgYXJlIHRoZSByZXF1aXJlZCBzaWduZXJzIChmZWUgcGF5ZXJcbiAgICAvLyBmaXJzdCwgdGhlbiB0aGUgcmVtYWluaW5nIHNpZ25lcnMgaW4gdGhlIGNvbXBpbGVkIGFjY291bnQgb3JkZXIpLiBNaXNzaW5nXG4gICAgLy8gc2lnbmF0dXJlcyBhcmUgemVyby1maWxsZWQgc28gdW5zaWduZWQvcGFydGlhbCBidWlsZHMga2VlcCBhIHZhbGlkIHdpcmVcbiAgICAvLyBzaGFwZSBmb3IgdGhlIHNlcnZlci1zaWRlIHNpZ24gcGF0aCAobm90IGJyb2FkY2FzdGFibGUgdW50aWwgZmlsbGVkKS5cbiAgICBjb25zdCBkZWNvZGVkID0gZGVjb2RlVjFNZXNzYWdlKG1lc3NhZ2VCeXRlcyk7XG4gICAgY29uc3Qgc2lnbmVyQWRkcmVzc2VzID0gZGVjb2RlZC5zdGF0aWNBY2NvdW50cy5zbGljZSgwLCBkZWNvZGVkLmhlYWRlci5udW1TaWduZXJBY2NvdW50cyk7XG5cbiAgICBjb25zdCBzaWduYXR1cmVzOiBVaW50OEFycmF5W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IGFkZHJlc3Mgb2Ygc2lnbmVyQWRkcmVzc2VzKSB7XG4gICAgICBjb25zdCBrZXlQYWlyID0gdGhpcy5fc2lnbmVycy5maW5kKChzaWduZXIpID0+IHNpZ25lci5nZXRLZXlzKCkucHViID09PSBhZGRyZXNzKTtcbiAgICAgIGlmIChrZXlQYWlyKSB7XG4gICAgICAgIGNvbnN0IHNlY3JldEtleSA9IGtleVBhaXIuZ2V0S2V5cyh0cnVlKS5wcnY7XG4gICAgICAgIGFzc2VydChzZWNyZXRLZXkgaW5zdGFuY2VvZiBVaW50OEFycmF5LCAnTWlzc2luZyBwcml2YXRlIGtleScpO1xuICAgICAgICBzaWduYXR1cmVzLnB1c2gobmFjbC5zaWduLmRldGFjaGVkKG1lc3NhZ2VCeXRlcywgc2VjcmV0S2V5KSk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgY29uc3QgYWRkaXRpb25hbCA9IHRoaXMuZ2V0QWRkaXRpb25hbFNpZ25hdHVyZXMoKS5maW5kKChzaWcpID0+IHNpZy5wdWJsaWNLZXkucHViID09PSBhZGRyZXNzKTtcbiAgICAgIGlmIChhZGRpdGlvbmFsKSB7XG4gICAgICAgIHNpZ25hdHVyZXMucHVzaChuZXcgVWludDhBcnJheShhZGRpdGlvbmFsLnNpZ25hdHVyZSkpO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIC8vIE1pc3Npbmcgc2lnbmF0dXJlOiB6ZXJvLWZpbGwgdGhlIHNsb3Qgc28gdGhlIHdpcmUgc2hhcGUgc3RheXMgdmFsaWRcbiAgICAgIC8vIGZvciBwYXJ0aWFsLXNpZ24gZmxvd3M7IHRoZSB0cmFuc2FjdGlvbiBpcyBub3QgYnJvYWRjYXN0YWJsZSB1bnRpbFxuICAgICAgLy8gZXZlcnkgcmVxdWlyZWQgc2lnbmVyIGhhcyBhIHNpZ25hdHVyZS5cbiAgICAgIHNpZ25hdHVyZXMucHVzaChuZXcgVWludDhBcnJheSg2NCkpO1xuICAgIH1cblxuICAgIGNvbnN0IHYxV2lyZSA9IHNlcmlhbGl6ZVdpcmVUcmFuc2FjdGlvbihtZXNzYWdlQnl0ZXMsIHNpZ25hdHVyZXMpO1xuXG4gICAgdGhpcy5fdHJhbnNhY3Rpb24udjFUcmFuc2FjdGlvbkJ5dGVzID0gdjFXaXJlO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnYxTWVzc2FnZUJ5dGVzID0gbWVzc2FnZUJ5dGVzO1xuXG4gICAgLy8gUG9wdWxhdGUgYSBtZXRhZGF0YS1vbmx5IFNvbFRyYW5zYWN0aW9uIHNvIHRvSnNvbiAvIGxvYWRJbnB1dHNBbmRPdXRwdXRzIHdvcmsuXG4gICAgLy8gVGhlIGR1cmFibGUgbm9uY2UgaXMgY2FycmllZCB2aWEgbm9uY2VJbmZvLCBtYXRjaGluZyB0aGUgdjAgbW9kZWwuXG4gICAgY29uc3QgbWV0YVR4ID0gbmV3IFNvbFRyYW5zYWN0aW9uKCk7XG4gICAgbWV0YVR4LmZlZVBheWVyID0gZmVlUGF5ZXI7XG4gICAgbWV0YVR4LnJlY2VudEJsb2NraGFzaCA9IHRoaXMuX3JlY2VudEJsb2NraGFzaDtcbiAgICBpZiAodGhpcy5fbm9uY2VJbmZvKSB7XG4gICAgICBtZXRhVHgubm9uY2VJbmZvID0ge1xuICAgICAgICBub25jZTogdGhpcy5fcmVjZW50QmxvY2toYXNoLFxuICAgICAgICBub25jZUluc3RydWN0aW9uOiBidWlsZEFkdmFuY2VOb25jZUFjY291bnRJbnN0cnVjdGlvbihcbiAgICAgICAgICB0aGlzLl9ub25jZUluZm8ucGFyYW1zLndhbGxldE5vbmNlQWRkcmVzcyxcbiAgICAgICAgICB0aGlzLl9ub25jZUluZm8ucGFyYW1zLmF1dGhXYWxsZXRBZGRyZXNzXG4gICAgICAgICksXG4gICAgICB9O1xuICAgIH1cbiAgICBtZXRhVHguYWRkKC4uLmluc3RydWN0aW9ucyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uc29sVHJhbnNhY3Rpb24gPSBtZXRhVHg7XG5cbiAgICB0aGlzLl90cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvblR5cGUodGhpcy50cmFuc2FjdGlvblR5cGUpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnNldEluc3RydWN0aW9uc0RhdGEodGhpcy5fY3RJbnN0cnVjdGlvbnMpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG5cbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cbn1cbiJdfQ==
|
|
368
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlkZW50aWFsVHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25maWRlbnRpYWxUcmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHFCQUFxQixFQUFpRCxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3SCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsSUFBSSxjQUFjLEVBQTBCLE1BQU0saUJBQWlCLENBQUM7QUFDbkcsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFDO0FBQzdCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBZXRELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCRztBQUNILE1BQU0sT0FBTywyQkFBNEIsU0FBUSxrQkFBa0I7SUFLakUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFMYixvQkFBZSxHQUF3QixFQUFFLENBQUM7UUFNaEQsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lB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QUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUV6QyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBTb2xUcmFuc2FjdGlvblZlcnNpb24sIFNvbFYxVHJhbnNhY3Rpb25Db25maWcsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFB1YmxpY0tleSwgVHJhbnNhY3Rpb24gYXMgU29sVHJhbnNhY3Rpb24sIFRyYW5zYWN0aW9uSW5zdHJ1Y3Rpb24gfSBmcm9tICdAc29sYW5hL3dlYjMuanMnO1xuaW1wb3J0IG5hY2wgZnJvbSAndHdlZXRuYWNsJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7XG4gIEFwcGx5UGVuZGluZ0JhbGFuY2UsXG4gIEF0YUluaXQsXG4gIENvbmZpZGVudGlhbERlcG9zaXQsXG4gIENvbmZpZGVudGlhbFRyYW5zZmVyLFxuICBDb25maWRlbnRpYWxXaXRoZHJhdyxcbiAgQ29uZmlndXJlQ29uZmlkZW50aWFsVHJhbnNmZXJBY2NvdW50LFxuICBJbnN0cnVjdGlvblBhcmFtcyxcbiAgTWVtbyxcbiAgVmVyaWZ5RXF1YWxpdHlQcm9vZixcbiAgVmVyaWZ5UHVia2V5VmFsaWRpdHksXG4gIFZlcmlmeVJhbmdlUHJvb2YsXG4gIFZlcmlmeVZhbGlkaXR5UHJvb2YsXG59IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgY29tcGlsZVRyYW5zYWN0aW9uTWVzc2FnZSB9IGZyb20gJy4vc2VyaWFsaXphdGlvbi9jb21waWxlVHJhbnNhY3Rpb25NZXNzYWdlJztcbmltcG9ydCB7IGRlY29kZVYxTWVzc2FnZSB9IGZyb20gJy4vc2VyaWFsaXphdGlvbi9jb2RlY3MvdjEvbWVzc2FnZSc7XG5pbXBvcnQgeyBzZXJpYWxpemVXaXJlVHJhbnNhY3Rpb24gfSBmcm9tICcuL3NlcmlhbGl6YXRpb24vd2lyZS10cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBzb2xJbnN0cnVjdGlvbkZhY3RvcnkgfSBmcm9tICcuL3NvbEluc3RydWN0aW9uRmFjdG9yeSc7XG5pbXBvcnQgeyBidWlsZEFkdmFuY2VOb25jZUFjY291bnRJbnN0cnVjdGlvbiB9IGZyb20gJy4vdjFUcmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuXG4vKipcbiAqIEJ1aWxkZXIgZm9yIFRva2VuLTIwMjIgY29uZmlkZW50aWFsIHRyYW5zZmVyIHRyYW5zYWN0aW9ucy5cbiAqXG4gKiBQcm92aWRlcyB0eXBlLXNhZmUgZmx1ZW50IHNldHRlcnMgZm9yIHRoZSBmb2xsb3dpbmcgQ1QgaW5zdHJ1Y3Rpb25zOlxuICogLSBDcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50IChDVCBlbmFibGVtZW50OiBBVEEgdW5kZXIgVG9rZW4tMjAyMiBiZWZvcmUgQ29uZmlndXJlQWNjb3VudClcbiAqIC0gQ29uZmlndXJlQWNjb3VudCAoc3RhbmRhbG9uZSwgd2l0aCBWZXJpZnlQdWJrZXlWYWxpZGl0eSBwcm9vZilcbiAqIC0gQXBwbHlQZW5kaW5nQmFsYW5jZSAoYWx3YXlzIGluc3RydWN0aW9uICMxIGluIHYxIHNwZW5kIHR4cywgaWRlbXBvdGVudClcbiAqIC0gRGVwb3NpdCAocHVibGljIOKGkiBjb25maWRlbnRpYWwgY29udmVyc2lvbilcbiAqIC0gV2l0aGRyYXcgKGNvbmZpZGVudGlhbCDihpIgcHVibGljIGNvbnZlcnNpb24sIHdpdGggZXF1YWxpdHkgKyByYW5nZSBwcm9vZnMpXG4gKiAtIFRyYW5zZmVyIChjb25maWRlbnRpYWwg4oaSIGNvbmZpZGVudGlhbCwgd2l0aCBlcXVhbGl0eSArIHZhbGlkaXR5ICsgcmFuZ2UgcHJvb2ZzKVxuICogLSBWZXJpZnlQdWJrZXlWYWxpZGl0eSAvIFZlcmlmeUVxdWFsaXR5IC8gVmVyaWZ5VmFsaWRpdHkgLyBWZXJpZnlSYW5nZSBwcm9vZiBpbnN0cnVjdGlvbnNcbiAqXG4gKiBJbnN0cnVjdGlvbiBidWlsZGVycyBhcmUgdjAvdjEtYWdub3N0aWM6IHRoZXkgcHJvZHVjZSBpbnN0cnVjdGlvbiBkYXRhIGFuZFxuICogYWNjb3VudCBtZXRhcyBvbmx5LiBUaGUgY2FsbGVyIChXYWxsZXQgUGxhdGZvcm0pIGFzc2VtYmxlcyB0aGVtIGludG8gdjFcbiAqIHRyYW5zYWN0aW9ucyBpbiB0aGUgY29ycmVjdCBvcmRlci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHNcbiAqIGNvbnN0IGJ1aWxkZXIgPSBmYWN0b3J5LmdldENvbmZpZGVudGlhbFRyYW5zZmVyQnVpbGRlcigpO1xuICogYnVpbGRlci5ub25jZShyZWNlbnRCbG9ja2hhc2gpLnNlbmRlcihwYXllcik7XG4gKiBidWlsZGVyLmNvbmZpZ3VyZUFjY291bnQoeyB0b2tlbkFkZHJlc3MsIG1pbnRBZGRyZXNzLCBhdXRob3JpdHlBZGRyZXNzLCAuLi4gfSk7XG4gKiBidWlsZGVyLnZlcmlmeVB1YmtleVZhbGlkaXR5KHsgcHJvb2ZEYXRhIH0pO1xuICogY29uc3QgdHggPSBhd2FpdCBidWlsZGVyLmJ1aWxkKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIENvbmZpZGVudGlhbFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX2N0SW5zdHJ1Y3Rpb25zOiBJbnN0cnVjdGlvblBhcmFtc1tdID0gW107XG4gIHByaXZhdGUgX3ZlcnNpb24/OiBTb2xUcmFuc2FjdGlvblZlcnNpb247XG4gIHByaXZhdGUgX3YxVHJhbnNhY3Rpb25Db25maWc/OiBTb2xWMVRyYW5zYWN0aW9uQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbiA9IG5ldyBUcmFuc2FjdGlvbihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQ29uZmlkZW50aWFsVHJhbnNmZXI7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBTb2xhbmEgdHJhbnNhY3Rpb24gdmVyc2lvbi5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gbGVnYWN5IHVudGlsIHNldC4gV2hlbiBzZXQgdG8gYDFgLCB0aGUgYnVpbGRlciBhc3NlbWJsZXMgYSB2MVxuICAgKiAoU0lNRC0wMjk2LzAzODUpIHRyYW5zYWN0aW9uOiB2ZXJzaW9uIGJ5dGUgYDB4ODFgLCBhbiBpbmxpbmUgYHRyYW5zYWN0aW9uQ29uZmlnYFxuICAgKiBpbnN0ZWFkIG9mIENvbXB1dGVCdWRnZXQgaW5zdHJ1Y3Rpb25zLCBubyBhZGRyZXNzIGxvb2t1cCB0YWJsZXMsIGFuZCBhXG4gICAqIG1lc3NhZ2UtZmlyc3Qgd2lyZSBmb3JtYXQgd2l0aCBzaWduYXR1cmVzIGFwcGVuZGVkLlxuICAgKlxuICAgKiBAcGFyYW0gdmVyc2lvbiAtIHRoZSB0cmFuc2FjdGlvbiB2ZXJzaW9uICgwID0gdjAsIDEgPSB2MSlcbiAgICogQHJldHVybnMge3RoaXN9IFRoaXMgYnVpbGRlclxuICAgKi9cbiAgdmVyc2lvbih2ZXJzaW9uOiBTb2xUcmFuc2FjdGlvblZlcnNpb24pOiB0aGlzIHtcbiAgICB0aGlzLl92ZXJzaW9uID0gdmVyc2lvbjtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHYxIHRyYW5zYWN0aW9uIGNvbmZpZyAoY29tcHV0ZSB1bml0IGxpbWl0LCBoZWFwIHNpemUsIGxvYWRlZCBhY2NvdW50c1xuICAgKiBkYXRhIHNpemUgbGltaXQsIGFuZCBwcmlvcml0eSBmZWUgYXMgdG90YWwgbGFtcG9ydHMpLiBSZXF1aXJlZCB3aGVuXG4gICAqIGB2ZXJzaW9uKDEpYCBpcyBzZXQuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWcgLSB0aGUgdjEgdHJhbnNhY3Rpb24gY29uZmlnXG4gICAqIEByZXR1cm5zIHt0aGlzfSBUaGlzIGJ1aWxkZXJcbiAgICovXG4gIHRyYW5zYWN0aW9uQ29uZmlnKGNvbmZpZzogU29sVjFUcmFuc2FjdGlvbkNvbmZpZyk6IHRoaXMge1xuICAgIHRoaXMuX3YxVHJhbnNhY3Rpb25Db25maWcgPSBjb25maWc7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogT3ZlcnJpZGUgdGhlIHprLWVsZ2FtYWwtcHJvb2YgcHJvZ3JhbSBpZC5cbiAgICpcbiAgICogRGVmYXVsdHMgdG8gdGhlIGNhbm9uaWNhbCBvbi1jaGFpbiBwcm9ncmFtIGlkIChgWmtFMUdhbWExUHJvb2YxMTEuLi5gKVxuICAgKiB3aGljaCBpcyB0aGUgc2FtZSBhY3Jvc3MgbWFpbm5ldCwgZGV2bmV0LCBhbmQgdGVzdG5ldC4gT3ZlcnJpZGUgb25seVxuICAgKiB3aGVuIHRhcmdldGluZyBhIGN1c3RvbSBkZXBsb3ltZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcHJvZ3JhbUlkIC0gYmFzZTU4IGVuY29kZWQgcHJvZ3JhbSBpZFxuICAgKi9cbiAgemtQcm9vZlByb2dyYW1JZChwcm9ncmFtSWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGFzc2VydChwcm9ncmFtSWQsICdNaXNzaW5nIHByb2dyYW1JZCBwYXJhbScpO1xuICAgIHRoaXMuX3prUHJvb2ZQcm9ncmFtSWQgPSBwcm9ncmFtSWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zID0gW107XG4gICAgZm9yIChjb25zdCBpbnN0cnVjdGlvbiBvZiB0aGlzLl9pbnN0cnVjdGlvbnNEYXRhKSB7XG4gICAgICBzd2l0Y2ggKGluc3RydWN0aW9uLnR5cGUpIHtcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5DcmVhdGVBc3NvY2lhdGVkVG9rZW5BY2NvdW50OlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlJlYWxsb2NhdGVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQ6XG4gICAgICAgIGNhc2UgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlndXJlQ29uZmlkZW50aWFsVHJhbnNmZXJBY2NvdW50OlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcGx5UGVuZGluZ0JhbGFuY2U6XG4gICAgICAgIGNhc2UgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsRGVwb3NpdDpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxXaXRoZHJhdzpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxUcmFuc2ZlcjpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlQdWJrZXlWYWxpZGl0eTpcbiAgICAgICAgY2FzZSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlFcXVhbGl0eVByb29mOlxuICAgICAgICBjYXNlIEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVZhbGlkaXR5UHJvb2Y6XG4gICAgICAgIGNhc2UgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5UmFuZ2VQcm9vZjpcbiAgICAgICAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKGluc3RydWN0aW9uKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudCAoaWRlbXBvdGVudCkgaW5zdHJ1Y3Rpb24gdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBDVCBlbmFibGVtZW50IG9ubHkg4oCUIHRoZSBBVEEgbXVzdCBleGlzdCBiZWZvcmUgQ29uZmlndXJlQWNjb3VudDsgYWRkIHRoaXNcbiAgICogZmlyc3Qgd2hlbiB0aGUgQVRBIGlzIG5vdCB5ZXQgb24tY2hhaW4uIEZvciBUb2tlbi0yMDIyIG1pbnRzIHBhc3NcbiAgICogYHByb2dyYW1JZGAgc28gdGhlIEFUQSBpcyBjcmVhdGVkIHVuZGVyIHRoZSBUb2tlbi0yMDIyIHByb2dyYW0uXG4gICAqL1xuICBjcmVhdGVBdGEocGFyYW1zOiBBdGFJbml0WydwYXJhbXMnXSk6IHRoaXMge1xuICAgIGFzc2VydChwYXJhbXMubWludEFkZHJlc3MsICdNaXNzaW5nIG1pbnRBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5hdGFBZGRyZXNzLCAnTWlzc2luZyBhdGFBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5vd25lckFkZHJlc3MsICdNaXNzaW5nIG93bmVyQWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMucGF5ZXJBZGRyZXNzLCAnTWlzc2luZyBwYXllckFkZHJlc3MgcGFyYW0nKTtcblxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudCxcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICAvLyBDb25maWd1cmVBY2NvdW50IHJlcXVpcmVzIHRoZSBDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQgZXh0ZW5zaW9uLCB3aGljaCBhbiBBVEEgZG9lc1xuICAgIC8vIG5vdCBjYXJyeSDigJQgUmVhbGxvY2F0ZSBhZGRzIGl0IGFuZCBtdXN0IHJ1biBiZWZvcmUgQ29uZmlndXJlQWNjb3VudC5cbiAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKHtcbiAgICAgIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlJlYWxsb2NhdGVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQsXG4gICAgICBwYXJhbXM6IHtcbiAgICAgICAgdG9rZW5BZGRyZXNzOiBwYXJhbXMuYXRhQWRkcmVzcyxcbiAgICAgICAgcGF5ZXJBZGRyZXNzOiBwYXJhbXMucGF5ZXJBZGRyZXNzLFxuICAgICAgICBvd25lckFkZHJlc3M6IHBhcmFtcy5vd25lckFkZHJlc3MsXG4gICAgICAgIHByb2dyYW1JZDogcGFyYW1zLnByb2dyYW1JZCxcbiAgICAgICAgbWludEhhc1RyYW5zZmVyRmVlQ29uZmlnOiBwYXJhbXMubWludEhhc1RyYW5zZmVyRmVlQ29uZmlnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBDb25maWd1cmVBY2NvdW50IGluc3RydWN0aW9uIHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogT25lLXRpbWUgQVRBIHNldHVwIOKAlCByZWdpc3RlcnMgdGhlIEFFUyB6ZXJvIGNpcGhlcnRleHQgYW5kIHBlbmRpbmctYmFsYW5jZSBjb3VudGVyOyB0aGVcbiAgICogRWxHYW1hbCBwdWJrZXkgaXMgdGFrZW4gZnJvbSB0aGUgYWNjb21wYW55aW5nIFZlcmlmeVB1YmtleVZhbGlkaXR5IHByb29mLlxuICAgKi9cbiAgY29uZmlndXJlQWNjb3VudChwYXJhbXM6IENvbmZpZ3VyZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudFsncGFyYW1zJ10pOiB0aGlzIHtcbiAgICBhc3NlcnQocGFyYW1zLnRva2VuQWRkcmVzcywgJ01pc3NpbmcgdG9rZW5BZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5taW50QWRkcmVzcywgJ01pc3NpbmcgbWludEFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmF1dGhvcml0eUFkZHJlc3MsICdNaXNzaW5nIGF1dGhvcml0eUFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmRlY3J5cHRhYmxlWmVyb0JhbGFuY2UsICdNaXNzaW5nIGRlY3J5cHRhYmxlWmVyb0JhbGFuY2UgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLm1heGltdW1QZW5kaW5nQmFsYW5jZUNyZWRpdENvdW50ZXIsICdNaXNzaW5nIG1heGltdW1QZW5kaW5nQmFsYW5jZUNyZWRpdENvdW50ZXIgcGFyYW0nKTtcblxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlndXJlQ29uZmlkZW50aWFsVHJhbnNmZXJBY2NvdW50LFxuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhbiBBcHBseVBlbmRpbmdCYWxhbmNlIGluc3RydWN0aW9uIHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogQ3JlZGl0cyBwZW5kaW5nIGJhbGFuY2UgaW50byBhdmFpbGFibGUgYmFsYW5jZS4gSWRlbXBvdGVudCAobm8tb3AgaWYgMCBwZW5kaW5nKS5cbiAgICogSW4gdjEgdHJhbnNhY3Rpb25zLCB0aGlzIHNob3VsZCBhbHdheXMgYmUgaW5zdHJ1Y3Rpb24gIzEuXG4gICAqL1xuICBhcHBseVBlbmRpbmdCYWxhbmNlKHBhcmFtczogQXBwbHlQZW5kaW5nQmFsYW5jZVsncGFyYW1zJ10pOiB0aGlzIHtcbiAgICBhc3NlcnQocGFyYW1zLnRva2VuQWRkcmVzcywgJ01pc3NpbmcgdG9rZW5BZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5hdXRob3JpdHlBZGRyZXNzLCAnTWlzc2luZyBhdXRob3JpdHlBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5leHBlY3RlZFBlbmRpbmdCYWxhbmNlQ3JlZGl0Q291bnRlciwgJ01pc3NpbmcgZXhwZWN0ZWRQZW5kaW5nQmFsYW5jZUNyZWRpdENvdW50ZXIgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLm5ld0RlY3J5cHRhYmxlQXZhaWxhYmxlQmFsYW5jZSwgJ01pc3NpbmcgbmV3RGVjcnlwdGFibGVBdmFpbGFibGVCYWxhbmNlIHBhcmFtJyk7XG5cbiAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKHtcbiAgICAgIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcGx5UGVuZGluZ0JhbGFuY2UsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgRGVwb3NpdCBpbnN0cnVjdGlvbiB0byB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIE1vdmVzIHB1YmxpYyBTUEwgdG9rZW5zIGludG8gY29uZmlkZW50aWFsIHBlbmRpbmcgYmFsYW5jZS4gTm8gcHJvb2YgcmVxdWlyZWQuXG4gICAqL1xuICBjb25maWRlbnRpYWxEZXBvc2l0KHBhcmFtczogQ29uZmlkZW50aWFsRGVwb3NpdFsncGFyYW1zJ10pOiB0aGlzIHtcbiAgICBhc3NlcnQocGFyYW1zLnRva2VuQWRkcmVzcywgJ01pc3NpbmcgdG9rZW5BZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5taW50QWRkcmVzcywgJ01pc3NpbmcgbWludEFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmF1dGhvcml0eUFkZHJlc3MsICdNaXNzaW5nIGF1dGhvcml0eUFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmFtb3VudCwgJ01pc3NpbmcgYW1vdW50IHBhcmFtJyk7XG5cbiAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKHtcbiAgICAgIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZGVudGlhbERlcG9zaXQsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgV2l0aGRyYXcgaW5zdHJ1Y3Rpb24gdG8gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBNb3ZlcyBjb25maWRlbnRpYWwgYXZhaWxhYmxlIGJhbGFuY2UgdG8gcHVibGljIGJhbGFuY2UuXG4gICAqIFJlcXVpcmVzIGVxdWFsaXR5ICsgcmFuZ2UgcHJvb2YgdmVyaWZpY2F0aW9uIGluc3RydWN0aW9ucy5cbiAgICovXG4gIGNvbmZpZGVudGlhbFdpdGhkcmF3KHBhcmFtczogQ29uZmlkZW50aWFsV2l0aGRyYXdbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgYXNzZXJ0KHBhcmFtcy50b2tlbkFkZHJlc3MsICdNaXNzaW5nIHRva2VuQWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMubWludEFkZHJlc3MsICdNaXNzaW5nIG1pbnRBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5hdXRob3JpdHlBZGRyZXNzLCAnTWlzc2luZyBhdXRob3JpdHlBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5hbW91bnQsICdNaXNzaW5nIGFtb3VudCBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMubmV3RGVjcnlwdGFibGVBdmFpbGFibGVCYWxhbmNlLCAnTWlzc2luZyBuZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2UgcGFyYW0nKTtcblxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsV2l0aGRyYXcsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgY29uZmlkZW50aWFsIFRyYW5zZmVyIGluc3RydWN0aW9uIHRvIHRoZSB0cmFuc2FjdGlvbi5cbiAgICogUmVxdWlyZXMgZXF1YWxpdHkgKyBjaXBoZXJ0ZXh0IHZhbGlkaXR5ICsgcmFuZ2UgcHJvb2YgdmVyaWZpY2F0aW9uIGluc3RydWN0aW9ucy5cbiAgICovXG4gIGNvbmZpZGVudGlhbFRyYW5zZmVyKHBhcmFtczogQ29uZmlkZW50aWFsVHJhbnNmZXJbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgYXNzZXJ0KHBhcmFtcy5zb3VyY2VUb2tlbkFkZHJlc3MsICdNaXNzaW5nIHNvdXJjZVRva2VuQWRkcmVzcyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMubWludEFkZHJlc3MsICdNaXNzaW5nIG1pbnRBZGRyZXNzIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy5kZXN0aW5hdGlvblRva2VuQWRkcmVzcywgJ01pc3NpbmcgZGVzdGluYXRpb25Ub2tlbkFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLmF1dGhvcml0eUFkZHJlc3MsICdNaXNzaW5nIGF1dGhvcml0eUFkZHJlc3MgcGFyYW0nKTtcbiAgICBhc3NlcnQocGFyYW1zLm5ld1NvdXJjZURlY3J5cHRhYmxlQXZhaWxhYmxlQmFsYW5jZSwgJ01pc3NpbmcgbmV3U291cmNlRGVjcnlwdGFibGVBdmFpbGFibGVCYWxhbmNlIHBhcmFtJyk7XG4gICAgYXNzZXJ0KHBhcmFtcy50cmFuc2ZlckFtb3VudEF1ZGl0b3JDaXBoZXJ0ZXh0TG8sICdNaXNzaW5nIHRyYW5zZmVyQW1vdW50QXVkaXRvckNpcGhlcnRleHRMbyBwYXJhbScpO1xuICAgIGFzc2VydChwYXJhbXMudHJhbnNmZXJBbW91bnRBdWRpdG9yQ2lwaGVydGV4dEhpLCAnTWlzc2luZyB0cmFuc2ZlckFtb3VudEF1ZGl0b3JDaXBoZXJ0ZXh0SGkgcGFyYW0nKTtcblxuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsVHJhbnNmZXIsXG4gICAgICBwYXJhbXMsXG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgVmVyaWZ5UHVia2V5VmFsaWRpdHkgcHJvb2YgaW5zdHJ1Y3Rpb24gKHVzZWQgd2l0aCBDb25maWd1cmVBY2NvdW50KS5cbiAgICovXG4gIHZlcmlmeVB1YmtleVZhbGlkaXR5KHBhcmFtczogVmVyaWZ5UHVia2V5VmFsaWRpdHlbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlQdWJrZXlWYWxpZGl0eSxcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBWZXJpZnlDaXBoZXJ0ZXh0Q29tbWl0bWVudEVxdWFsaXR5IHByb29mIGluc3RydWN0aW9uICh1c2VkIHdpdGggVHJhbnNmZXIgYW5kIFdpdGhkcmF3KS5cbiAgICovXG4gIHZlcmlmeUVxdWFsaXR5UHJvb2YocGFyYW1zOiBWZXJpZnlFcXVhbGl0eVByb29mWydwYXJhbXMnXSk6IHRoaXMge1xuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5RXF1YWxpdHlQcm9vZixcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBWZXJpZnlCYXRjaGVkR3JvdXBlZENpcGhlcnRleHQzSGFuZGxlc1ZhbGlkaXR5IHByb29mIGluc3RydWN0aW9uICh1c2VkIHdpdGggVHJhbnNmZXIpLlxuICAgKi9cbiAgdmVyaWZ5VmFsaWRpdHlQcm9vZihwYXJhbXM6IFZlcmlmeVZhbGlkaXR5UHJvb2ZbJ3BhcmFtcyddKTogdGhpcyB7XG4gICAgdGhpcy5fY3RJbnN0cnVjdGlvbnMucHVzaCh7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlWYWxpZGl0eVByb29mLFxuICAgICAgcGFyYW1zLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIFZlcmlmeUJhdGNoZWRSYW5nZVByb29mVTEyOCBwcm9vZiBpbnN0cnVjdGlvbiAodXNlZCB3aXRoIFRyYW5zZmVyKS5cbiAgICovXG4gIHZlcmlmeVJhbmdlUHJvb2YocGFyYW1zOiBWZXJpZnlSYW5nZVByb29mWydwYXJhbXMnXSk6IHRoaXMge1xuICAgIHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLnB1c2goe1xuICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVmVyaWZ5UmFuZ2VQcm9vZixcbiAgICAgIHBhcmFtcyxcbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgYXNzZXJ0KHRoaXMuX2N0SW5zdHJ1Y3Rpb25zLmxlbmd0aCA+IDAsICdBdCBsZWFzdCBvbmUgY29uZmlkZW50aWFsIHRyYW5zZmVyIGluc3RydWN0aW9uIG11c3QgYmUgc3BlY2lmaWVkJyk7XG5cbiAgICBpZiAodGhpcy5fdmVyc2lvbiA9PT0gMSkge1xuICAgICAgcmV0dXJuIHRoaXMuYnVpbGRWMSgpO1xuICAgIH1cblxuICAgIHRoaXMuX2luc3RydWN0aW9uc0RhdGEgPSBbLi4udGhpcy5fY3RJbnN0cnVjdGlvbnNdO1xuXG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmJ1aWxkSW1wbGVtZW50YXRpb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhIHYxIChTSU1ELTAyOTYvMDM4NSkgY29uZmlkZW50aWFsIHRyYW5zZmVyIHRyYW5zYWN0aW9uLlxuICAgKlxuICAgKiBBc3NlbWJsZXMgdGhlIENUIGluc3RydWN0aW9ucyB2aWEgdGhlIHNoYXJlZCBpbnN0cnVjdGlvbiBmYWN0b3J5LCBjb21waWxlc1xuICAgKiBhbmQgc2VyaWFsaXplcyBhIHYxIG1lc3NhZ2Ugd2l0aCB0aGUgaW5saW5lIHRyYW5zYWN0aW9uIGNvbmZpZywgc2lnbnMgdGhlXG4gICAqIG1lc3NhZ2UgYnl0ZXMgd2l0aCB0aGUgYnVpbGRlcidzIHNpZ25lcnMsIGFuZCBzdG9yZXMgdGhlIHJlc3VsdGluZyB3aXJlXG4gICAqIGJ5dGVzIGZvciBicm9hZGNhc3QuIEFsc28gcG9wdWxhdGVzIGEgbWV0YWRhdGEtb25seSBTb2xUcmFuc2FjdGlvbiBzbyB0aGVcbiAgICogdHJhbnNhY3Rpb24gSlNPTiBhbmQgaW5wdXQvb3V0cHV0IGV4dHJhY3Rpb24gcmVtYWluIHVzYWJsZS5cbiAgICpcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9ufSBUaGUgYnVpbHQgdHJhbnNhY3Rpb24gaG9sZGluZyB0aGUgdjEgd2lyZSBieXRlc1xuICAgKi9cbiAgcHJpdmF0ZSBidWlsZFYxKCk6IFRyYW5zYWN0aW9uIHtcbiAgICBhc3NlcnQodGhpcy5fc2VuZGVyLCBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzZW5kZXIgaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydCh0aGlzLl9yZWNlbnRCbG9ja2hhc2gsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ3JlY2VudCBibG9ja2hhc2ggaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydCh0aGlzLl92MVRyYW5zYWN0aW9uQ29uZmlnLCAndHJhbnNhY3Rpb25Db25maWcgaXMgcmVxdWlyZWQgdG8gYnVpbGQgYSB2MSBjb25maWRlbnRpYWwgdHJhbnNmZXIgdHJhbnNhY3Rpb24nKTtcblxuICAgIC8vIEFwcGx5UGVuZGluZ0JhbGFuY2UgbXVzdCByZW1haW4gaW5zdHJ1Y3Rpb24gIzEgaW4gdjEgc3BlbmQgdHhzIChpdCBpcyBpZGVtcG90ZW50KSxcbiAgICAvLyByZWdhcmRsZXNzIG9mIHRoZSBvcmRlciB0aGUgY2FsbGVyIGFkZGVkIGluc3RydWN0aW9ucy5cbiAgICB0aGlzLl9jdEluc3RydWN0aW9ucyA9IFtcbiAgICAgIC4uLnRoaXMuX2N0SW5zdHJ1Y3Rpb25zLmZpbHRlcigoaSkgPT4gaS50eXBlID09PSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5BcHBseVBlbmRpbmdCYWxhbmNlKSxcbiAgICAgIC4uLnRoaXMuX2N0SW5zdHJ1Y3Rpb25zLmZpbHRlcigoaSkgPT4gaS50eXBlICE9PSBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5BcHBseVBlbmRpbmdCYWxhbmNlKSxcbiAgICBdO1xuXG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25zOiBUcmFuc2FjdGlvbkluc3RydWN0aW9uW10gPSBbXTtcblxuICAgIC8vIER1cmFibGUgbm9uY2U6IHRoZSBBZHZhbmNlTm9uY2VBY2NvdW50IGluc3RydWN0aW9uIE1VU1QgYmUgcGFydCBvZiB0aGVcbiAgICAvLyBtZXNzYWdlIChhIGJhcmUgbm9uY2UgaGFzaCB3aXRob3V0IHRoZSBpbnN0cnVjdGlvbiBpcyBpbnZhbGlkKS4gSXQgaXNcbiAgICAvLyBwbGFjZWQgZmlyc3QsIG1hdGNoaW5nIHRoZSB2MCB3ZWIzLmpzIGFuZCB2MSBwYXltZW50LWJ1aWxkZXIgY29udmVudGlvbi5cbiAgICBpZiAodGhpcy5fbm9uY2VJbmZvKSB7XG4gICAgICBpbnN0cnVjdGlvbnMucHVzaChcbiAgICAgICAgYnVpbGRBZHZhbmNlTm9uY2VBY2NvdW50SW5zdHJ1Y3Rpb24oXG4gICAgICAgICAgdGhpcy5fbm9uY2VJbmZvLnBhcmFtcy53YWxsZXROb25jZUFkZHJlc3MsXG4gICAgICAgICAgdGhpcy5fbm9uY2VJbmZvLnBhcmFtcy5hdXRoV2FsbGV0QWRkcmVzc1xuICAgICAgICApXG4gICAgICApO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgaW5zdHJ1Y3Rpb24gb2YgdGhpcy5fY3RJbnN0cnVjdGlvbnMpIHtcbiAgICAgIGluc3RydWN0aW9ucy5wdXNoKC4uLnNvbEluc3RydWN0aW9uRmFjdG9yeShpbnN0cnVjdGlvbiwgdGhpcy5femtQcm9vZlByb2dyYW1JZCkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9tZW1vKSB7XG4gICAgICBjb25zdCBtZW1vRGF0YTogTWVtbyA9IHtcbiAgICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTWVtbyxcbiAgICAgICAgcGFyYW1zOiB7IG1lbW86IHRoaXMuX21lbW8gfSxcbiAgICAgIH07XG4gICAgICB0aGlzLl9jdEluc3RydWN0aW9ucy5wdXNoKG1lbW9EYXRhKTtcbiAgICAgIGluc3RydWN0aW9ucy5wdXNoKC4uLnNvbEluc3RydWN0aW9uRmFjdG9yeShtZW1vRGF0YSkpO1xuICAgIH1cblxuICAgIGNvbnN0IGZlZVBheWVyID0gdGhpcy5fZmVlUGF5ZXIgPyBuZXcgUHVibGljS2V5KHRoaXMuX2ZlZVBheWVyKSA6IG5ldyBQdWJsaWNLZXkodGhpcy5fc2VuZGVyKTtcbiAgICBjb25zdCBtZXNzYWdlQnl0ZXMgPSBjb21waWxlVHJhbnNhY3Rpb25NZXNzYWdlKHtcbiAgICAgIHZlcnNpb246IDEsXG4gICAgICBpbnN0cnVjdGlvbnMsXG4gICAgICBmZWVQYXllcixcbiAgICAgIHJlY2VudEJsb2NraGFzaDogdGhpcy5fcmVjZW50QmxvY2toYXNoLFxuICAgICAgdHJhbnNhY3Rpb25Db25maWc6IHRoaXMuX3YxVHJhbnNhY3Rpb25Db25maWcsXG4gICAgfSk7XG5cbiAgICAvLyBTaWduZXIgb3JkZXIgY29tZXMgZnJvbSB0aGUgY29tcGlsZWQgbWVzc2FnZTogdGhlIGZpcnN0XG4gICAgLy8gbnVtU2lnbmVyQWNjb3VudHMgc3RhdGljIGFjY291bnRzIGFyZSB0aGUgcmVxdWlyZWQgc2lnbmVycyAoZmVlIHBheWVyXG4gICAgLy8gZmlyc3QsIHRoZW4gdGhlIHJlbWFpbmluZyBzaWduZXJzIGluIHRoZSBjb21waWxlZCBhY2NvdW50IG9yZGVyKS4gTWlzc2luZ1xuICAgIC8vIHNpZ25hdHVyZXMgYXJlIHplcm8tZmlsbGVkIHNvIHVuc2lnbmVkL3BhcnRpYWwgYnVpbGRzIGtlZXAgYSB2YWxpZCB3aXJlXG4gICAgLy8gc2hhcGUgZm9yIHRoZSBzZXJ2ZXItc2lkZSBzaWduIHBhdGggKG5vdCBicm9hZGNhc3RhYmxlIHVudGlsIGZpbGxlZCkuXG4gICAgY29uc3QgZGVjb2RlZCA9IGRlY29kZVYxTWVzc2FnZShtZXNzYWdlQnl0ZXMpO1xuICAgIGNvbnN0IHNpZ25lckFkZHJlc3NlcyA9IGRlY29kZWQuc3RhdGljQWNjb3VudHMuc2xpY2UoMCwgZGVjb2RlZC5oZWFkZXIubnVtU2lnbmVyQWNjb3VudHMpO1xuXG4gICAgY29uc3Qgc2lnbmF0dXJlczogVWludDhBcnJheVtdID0gW107XG4gICAgZm9yIChjb25zdCBhZGRyZXNzIG9mIHNpZ25lckFkZHJlc3Nlcykge1xuICAgICAgY29uc3Qga2V5UGFpciA9IHRoaXMuX3NpZ25lcnMuZmluZCgoc2lnbmVyKSA9PiBzaWduZXIuZ2V0S2V5cygpLnB1YiA9PT0gYWRkcmVzcyk7XG4gICAgICBpZiAoa2V5UGFpcikge1xuICAgICAgICBjb25zdCBzZWNyZXRLZXkgPSBrZXlQYWlyLmdldEtleXModHJ1ZSkucHJ2O1xuICAgICAgICBhc3NlcnQoc2VjcmV0S2V5IGluc3RhbmNlb2YgVWludDhBcnJheSwgJ01pc3NpbmcgcHJpdmF0ZSBrZXknKTtcbiAgICAgICAgc2lnbmF0dXJlcy5wdXNoKG5hY2wuc2lnbi5kZXRhY2hlZChtZXNzYWdlQnl0ZXMsIHNlY3JldEtleSkpO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGFkZGl0aW9uYWwgPSB0aGlzLmdldEFkZGl0aW9uYWxTaWduYXR1cmVzKCkuZmluZCgoc2lnKSA9PiBzaWcucHVibGljS2V5LnB1YiA9PT0gYWRkcmVzcyk7XG4gICAgICBpZiAoYWRkaXRpb25hbCkge1xuICAgICAgICBzaWduYXR1cmVzLnB1c2gobmV3IFVpbnQ4QXJyYXkoYWRkaXRpb25hbC5zaWduYXR1cmUpKTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICAvLyBNaXNzaW5nIHNpZ25hdHVyZTogemVyby1maWxsIHRoZSBzbG90IHNvIHRoZSB3aXJlIHNoYXBlIHN0YXlzIHZhbGlkXG4gICAgICAvLyBmb3IgcGFydGlhbC1zaWduIGZsb3dzOyB0aGUgdHJhbnNhY3Rpb24gaXMgbm90IGJyb2FkY2FzdGFibGUgdW50aWxcbiAgICAgIC8vIGV2ZXJ5IHJlcXVpcmVkIHNpZ25lciBoYXMgYSBzaWduYXR1cmUuXG4gICAgICBzaWduYXR1cmVzLnB1c2gobmV3IFVpbnQ4QXJyYXkoNjQpKTtcbiAgICB9XG5cbiAgICBjb25zdCB2MVdpcmUgPSBzZXJpYWxpemVXaXJlVHJhbnNhY3Rpb24obWVzc2FnZUJ5dGVzLCBzaWduYXR1cmVzKTtcblxuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnYxVHJhbnNhY3Rpb25CeXRlcyA9IHYxV2lyZTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi52MU1lc3NhZ2VCeXRlcyA9IG1lc3NhZ2VCeXRlcztcblxuICAgIC8vIFBvcHVsYXRlIGEgbWV0YWRhdGEtb25seSBTb2xUcmFuc2FjdGlvbiBzbyB0b0pzb24gLyBsb2FkSW5wdXRzQW5kT3V0cHV0cyB3b3JrLlxuICAgIC8vIFRoZSBkdXJhYmxlIG5vbmNlIGlzIGNhcnJpZWQgdmlhIG5vbmNlSW5mbywgbWF0Y2hpbmcgdGhlIHYwIG1vZGVsLlxuICAgIGNvbnN0IG1ldGFUeCA9IG5ldyBTb2xUcmFuc2FjdGlvbigpO1xuICAgIG1ldGFUeC5mZWVQYXllciA9IGZlZVBheWVyO1xuICAgIG1ldGFUeC5yZWNlbnRCbG9ja2hhc2ggPSB0aGlzLl9yZWNlbnRCbG9ja2hhc2g7XG4gICAgaWYgKHRoaXMuX25vbmNlSW5mbykge1xuICAgICAgbWV0YVR4Lm5vbmNlSW5mbyA9IHtcbiAgICAgICAgbm9uY2U6IHRoaXMuX3JlY2VudEJsb2NraGFzaCxcbiAgICAgICAgbm9uY2VJbnN0cnVjdGlvbjogYnVpbGRBZHZhbmNlTm9uY2VBY2NvdW50SW5zdHJ1Y3Rpb24oXG4gICAgICAgICAgdGhpcy5fbm9uY2VJbmZvLnBhcmFtcy53YWxsZXROb25jZUFkZHJlc3MsXG4gICAgICAgICAgdGhpcy5fbm9uY2VJbmZvLnBhcmFtcy5hdXRoV2FsbGV0QWRkcmVzc1xuICAgICAgICApLFxuICAgICAgfTtcbiAgICB9XG4gICAgbWV0YVR4LmFkZCguLi5pbnN0cnVjdGlvbnMpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLnNvbFRyYW5zYWN0aW9uID0gbWV0YVR4O1xuXG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb25UeXBlKHRoaXMudHJhbnNhY3Rpb25UeXBlKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5zZXRJbnN0cnVjdGlvbnNEYXRhKHRoaXMuX2N0SW5zdHJ1Y3Rpb25zKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5sb2FkSW5wdXRzQW5kT3V0cHV0cygpO1xuXG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uO1xuICB9XG59XG4iXX0=
|
package/dist/esm/lib/iface.d.ts
CHANGED
|
@@ -237,6 +237,11 @@ export interface AtaInit {
|
|
|
237
237
|
payerAddress: string;
|
|
238
238
|
tokenName: string;
|
|
239
239
|
programId?: string;
|
|
240
|
+
/**
|
|
241
|
+
* True when the mint carries `TransferFeeConfig`. The ATA then also needs room for the
|
|
242
|
+
* ConfidentialTransferFeeAmount extension, so the bundled Reallocate reserves it.
|
|
243
|
+
*/
|
|
244
|
+
mintHasTransferFeeConfig?: boolean;
|
|
240
245
|
};
|
|
241
246
|
}
|
|
242
247
|
export interface ReallocateConfidentialTransferAccount {
|
|
@@ -247,6 +252,11 @@ export interface ReallocateConfidentialTransferAccount {
|
|
|
247
252
|
payerAddress: string;
|
|
248
253
|
ownerAddress: string;
|
|
249
254
|
programId?: string;
|
|
255
|
+
/**
|
|
256
|
+
* True when the mint carries `TransferFeeConfig`. ConfigureAccount initializes
|
|
257
|
+
* ConfidentialTransferFeeAmount for such mints, so its 68 bytes must be reserved here.
|
|
258
|
+
*/
|
|
259
|
+
mintHasTransferFeeConfig?: boolean;
|
|
250
260
|
};
|
|
251
261
|
}
|
|
252
262
|
export interface AtaClose {
|
|
@@ -329,6 +339,9 @@ export interface TransactionExplanation extends BaseTransactionExplanation {
|
|
|
329
339
|
* Layout: [27][2] + decryptable_zero_balance(36) + maximum_pending_balance_credit_counter(u64) + proof_instruction_offset(i8) = 47 bytes
|
|
330
340
|
*
|
|
331
341
|
* Accounts: [token(writable), mint, instructionsSysvar|contextState, authority(signer)]
|
|
342
|
+
*
|
|
343
|
+
* The account's ElGamal pubkey is not part of the instruction data — Token-2022 takes it
|
|
344
|
+
* from the accompanying VerifyPubkeyValidity proof context.
|
|
332
345
|
*/
|
|
333
346
|
export interface ConfigureConfidentialTransferAccount {
|
|
334
347
|
type: InstructionBuilderTypes.ConfigureConfidentialTransferAccount;
|
|
@@ -336,8 +349,6 @@ export interface ConfigureConfidentialTransferAccount {
|
|
|
336
349
|
tokenAddress: string;
|
|
337
350
|
mintAddress: string;
|
|
338
351
|
authorityAddress: string;
|
|
339
|
-
/** 32-byte ElGamal pubkey registered on the token account (hex). */
|
|
340
|
-
elgamalPubkey: string;
|
|
341
352
|
/** Instructions sysvar (inline proof) or context state account (pre-verified proof). Defaults to instructions sysvar. */
|
|
342
353
|
instructionsSysvarOrContextStateAddress?: string;
|
|
343
354
|
/** AES-encrypted zero balance (36 bytes hex). */
|
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWluQkEsTUFBTSxPQUFPLHVCQUF1QjtDQU1uQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvbFN0YWtpbmdUeXBlRW51bSB9IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBhcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbixcbiAgUmVjaXBpZW50LFxuICBTb2xJbnN0cnVjdGlvbixcbiAgU29sVmVyc2lvbmVkSW5zdHJ1Y3Rpb24sXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IERlY29kZWRDbG9zZUFjY291bnRJbnN0cnVjdGlvbiB9IGZyb20gJ0Bzb2xhbmEvc3BsLXRva2VuJztcbmltcG9ydCB7IEJsb2NraGFzaCwgU3Rha2VJbnN0cnVjdGlvblR5cGUsIFN5c3RlbUluc3RydWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25TaWduYXR1cmUgfSBmcm9tICdAc29sYW5hL3dlYjMuanMnO1xuaW1wb3J0IHsgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTdGFrZVBvb2xJbnN0cnVjdGlvblR5cGUgfSBmcm9tICdAc29sYW5hL3NwbC1zdGFrZS1wb29sJztcbmltcG9ydCB7IERlcG9zaXRTb2xTdGFrZVBvb2xEYXRhLCBXaXRoZHJhd1N0YWtlU3Rha2VQb29sRGF0YSB9IGZyb20gJy4vaml0b1N0YWtlUG9vbE9wZXJhdGlvbnMnO1xuXG4vLyBUT0RPKFNUTFgtOTg5MCk6IEFkZCB0aGUgaW50ZXJmYWNlcyBmb3IgdmFsaWRpdHlXaW5kb3cgYW5kIFNlcXVlbmNlSWRcbmV4cG9ydCBpbnRlcmZhY2UgU29sYW5hS2V5cyB7XG4gIHBydj86IFVpbnQ4QXJyYXkgfCBzdHJpbmc7XG4gIHB1Yjogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBEdXJhYmxlTm9uY2VQYXJhbXMge1xuICB3YWxsZXROb25jZUFkZHJlc3M6IHN0cmluZztcbiAgYXV0aFdhbGxldEFkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IFRyYW5zYWN0aW9uU2lnbmF0dXJlO1xuICBmZWVQYXllcj86IHN0cmluZztcbiAgbGFtcG9ydHNQZXJTaWduYXR1cmU/OiBudW1iZXI7XG4gIG51bVNpZ25hdHVyZXM6IG51bWJlcjtcbiAgbm9uY2U6IEJsb2NraGFzaDtcbiAgLy8gb25seSBwb3B1bGF0ZWQgd2hlbiBub25jZSBpcyBmcm9tIGEgZHVyYWJsZSBub25jZSBhY2NvdW50XG4gIGR1cmFibGVOb25jZT86IER1cmFibGVOb25jZVBhcmFtcztcbiAgaW5zdHJ1Y3Rpb25zRGF0YTogSW5zdHJ1Y3Rpb25QYXJhbXNbXTtcbn1cblxuZXhwb3J0IHR5cGUgSW5zdHJ1Y3Rpb25QYXJhbXMgPVxuICB8IE5vbmNlXG4gIHwgTWVtb1xuICB8IFdhbGxldEluaXRcbiAgfCBTZXRDb21wdXRlVW5pdExpbWl0XG4gIHwgU2V0UHJpb3JpdHlGZWVcbiAgfCBUcmFuc2ZlclxuICB8IFN0YWtpbmdBY3RpdmF0ZVxuICB8IFN0YWtpbmdEZWFjdGl2YXRlXG4gIHwgU3Rha2luZ1dpdGhkcmF3XG4gIHwgQXRhSW5pdFxuICB8IFJlYWxsb2NhdGVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnRcbiAgfCBBdGFDbG9zZVxuICB8IEF0YVJlY292ZXJOZXN0ZWRcbiAgfCBUb2tlblRyYW5zZmVyXG4gIHwgU3Rha2luZ0F1dGhvcml6ZVxuICB8IFN0YWtpbmdEZWxlZ2F0ZVxuICB8IE1pbnRUb1xuICB8IEJ1cm5cbiAgfCBBcHByb3ZlXG4gIHwgQ3VzdG9tSW5zdHJ1Y3Rpb25cbiAgfCBWZXJzaW9uZWRDdXN0b21JbnN0cnVjdGlvblxuICB8IFBlcm1pc3Npb25sZXNzVGhhd0lkZW1wb3RlbnRcbiAgfCBDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnRcbiAgfCBBcHBseVBlbmRpbmdCYWxhbmNlXG4gIHwgQ29uZmlkZW50aWFsRGVwb3NpdFxuICB8IENvbmZpZGVudGlhbFdpdGhkcmF3XG4gIHwgQ29uZmlkZW50aWFsVHJhbnNmZXJcbiAgfCBWZXJpZnlQdWJrZXlWYWxpZGl0eVxuICB8IFZlcmlmeUVxdWFsaXR5UHJvb2ZcbiAgfCBWZXJpZnlWYWxpZGl0eVByb29mXG4gIHwgVmVyaWZ5UmFuZ2VQcm9vZjtcblxuZXhwb3J0IGludGVyZmFjZSBNZW1vIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTWVtbztcbiAgcGFyYW1zOiB7IG1lbW86IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vbmNlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTm9uY2VBZHZhbmNlO1xuICBwYXJhbXM6IER1cmFibGVOb25jZVBhcmFtcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRJbml0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3JlYXRlTm9uY2VBY2NvdW50O1xuICBwYXJhbXM6IHsgZnJvbUFkZHJlc3M6IHN0cmluZzsgbm9uY2VBZGRyZXNzOiBzdHJpbmc7IGF1dGhBZGRyZXNzOiBzdHJpbmc7IGFtb3VudDogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmZXIge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5UcmFuc2ZlcjtcbiAgcGFyYW1zOiB7XG4gICAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgICB0b0FkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBFeHRyYSBhY2NvdW50IG1ldGFkYXRhIHJlcXVpcmVkIGJ5IGEgVG9rZW4tMjAyMiBUcmFuc2ZlciBIb29rLlxuICpcbiAqIFRoZXNlIGFyZSByZXNvbHZlZCBsaXZlIChpbiB0aGUgb3JkZXIgdGhlIGhvb2sncyBFeHRyYUFjY291bnRNZXRhTGlzdCByZXF1aXJlcylcbiAqIGFuZCBzdXBwbGllZCB0byB0aGUgaW5zdHJ1Y3Rpb24gZmFjdG9yeS4gU2VlIHtAbGluayBUb2tlblRyYW5zZmVyfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHRyYUFjY291bnRNZXRhIHtcbiAgLyoqIFRoZSBiYXNlNTgtZW5jb2RlZCBwdWJsaWMga2V5IG9mIHRoZSBhY2NvdW50ICovXG4gIHB1YmtleTogc3RyaW5nO1xuICAvKiogV2hldGhlciB0aGUgYWNjb3VudCBtdXN0IHNpZ24gdGhlIHRyYW5zYWN0aW9uICovXG4gIGlzU2lnbmVyOiBib29sZWFuO1xuICAvKiogV2hldGhlciB0aGUgYWNjb3VudCBpcyB3cml0YWJsZSAqL1xuICBpc1dyaXRhYmxlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuVHJhbnNmZXIge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Ub2tlblRyYW5zZmVyO1xuICBwYXJhbXM6IHtcbiAgICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICAgIHRvQWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICAgIHRva2VuTmFtZTogc3RyaW5nO1xuICAgIHNvdXJjZUFkZHJlc3M6IHN0cmluZztcbiAgICB0b2tlbkFkZHJlc3M/OiBzdHJpbmc7XG4gICAgZGVjaW1hbFBsYWNlcz86IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gICAgLyoqIFdpdGhoZWxkIHRyYW5zZmVyIGZlZSBpbiByYXcgYmFzZSB1bml0cyAqL1xuICAgIGZlZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBSZXNvbHZlZCBUcmFuc2ZlciBIb29rIGV4dHJhIGFjY291bnQgbWV0YXMsIGluIHRoZSBleGFjdCBvcmRlciB0aGUgaG9va1xuICAgICAqIHJlcXVpcmVzLiBPbmx5IHVzZWQgZm9yIFRva2VuLTIwMjIgdHJhbnNmZXJzIHdob3NlIG1pbnQgaGFzIGEgVHJhbnNmZXJcbiAgICAgKiBIb29rIGV4dGVuc2lvbjsgcmVzb2x2ZWQgbGl2ZSBieSB0aGUgY2FsbGVyIChvZmZsaW5lIGJ1aWxkZXJzIG5ldmVyIGZldGNoKS5cbiAgICAgKi9cbiAgICB0cmFuc2Zlckhvb2tBY2NvdW50cz86IEV4dHJhQWNjb3VudE1ldGFbXTtcbiAgfTtcbn1cblxuLyoqXG4gKiBzUkZDLTM3IFRva2VuIEFDTCBwZXJtaXNzaW9ubGVzcyB0aGF3IChpZGVtcG90ZW50KSBpbnN0cnVjdGlvbi5cbiAqXG4gKiBFbWl0dGVkIGZvciBhbGxvd2xpc3QvYmxvY2tsaXN0IChEZWZhdWx0QWNjb3VudFN0YXRlKSBUb2tlbi0yMDIyIG1pbnRzIHNvIGEgZnJlc2hseSBjcmVhdGVkXG4gKiAoZnJvemVuKSB0b2tlbiBhY2NvdW50IGNhbiBiZSB0aGF3ZWQgYXRvbWljYWxseSBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbiBhcyB0aGUgdHJhbnNmZXIuIFRoZVxuICogZ2F0aW5nLXByb2dyYW0gZGVwZW5kZW5jaWVzIChgZmxhZ0FjY291bnRgLCBgbWludENvbmZpZ2AsIGBnYXRpbmdQcm9ncmFtYCwgYGV4dHJhQWNjb3VudHNgKSBhcmVcbiAqIHJlc29sdmVkIGxpdmUgYnkgdGhlIGNhbGxlciAoc2VlIGBTb2wucmVzb2x2ZVBlcm1pc3Npb25sZXNzVGhhd2ApIGJlY2F1c2UgYnVpbGRlcnMgbmV2ZXIgZmV0Y2guXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGVybWlzc2lvbmxlc3NUaGF3SWRlbXBvdGVudCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlBlcm1pc3Npb25sZXNzVGhhd0lkZW1wb3RlbnQ7XG4gIHBhcmFtczoge1xuICAgIC8qKiBUaGUgc2lnbmVyIGludm9raW5nIHRoZSB0aGF3IChmZWUgcGF5ZXIgLyBhdXRob3JpdHkpLiAqL1xuICAgIGF1dGhvcml0eTogc3RyaW5nO1xuICAgIC8qKiBUaGUgVG9rZW4tMjAyMiBtaW50IG9mIHRoZSB0b2tlbiBhY2NvdW50IGJlaW5nIHRoYXdlZC4gKi9cbiAgICBtaW50OiBzdHJpbmc7XG4gICAgLyoqIFRoZSB0b2tlbiBhY2NvdW50IChBVEEpIHRvIHRoYXcuICovXG4gICAgdG9rZW5BY2NvdW50OiBzdHJpbmc7XG4gICAgLyoqIFRoZSBvd25lciBvZiB0aGUgdG9rZW4gYWNjb3VudC4gKi9cbiAgICB0b2tlbkFjY291bnRPd25lcjogc3RyaW5nO1xuICAgIC8qKiBUaGUgVG9rZW4gQUNMIGdhdGluZyBwcm9ncmFtIHRoYXQgYXV0aG9yaXplcyB0aGUgdGhhdy4gKi9cbiAgICBnYXRpbmdQcm9ncmFtOiBzdHJpbmc7XG4gICAgLyoqIFBEQSAodW5kZXIgdGhlIFRva2VuIEFDTCBwcm9ncmFtKSB0cmFja2luZyB0aGUgdG9rZW4gYWNjb3VudCdzIHRoYXcgZmxhZy4gKi9cbiAgICBmbGFnQWNjb3VudDogc3RyaW5nO1xuICAgIC8qKiBQREEgKHVuZGVyIHRoZSBUb2tlbiBBQ0wgcHJvZ3JhbSkgaG9sZGluZyB0aGUgbWludCdzIFRva2VuIEFDTCBjb25maWcuICovXG4gICAgbWludENvbmZpZzogc3RyaW5nO1xuICAgIC8qKiBUb2tlbiBwcm9ncmFtIGlkOyBkZWZhdWx0cyB0byB0aGUgVG9rZW4tMjAyMiBwcm9ncmFtIHdoZW4gb21pdHRlZC4gKi9cbiAgICB0b2tlblByb2dyYW0/OiBzdHJpbmc7XG4gICAgLyoqIFN5c3RlbSBwcm9ncmFtIGlkOyBkZWZhdWx0cyB0byB0aGUgU3lzdGVtIHByb2dyYW0gd2hlbiBvbWl0dGVkLiAqL1xuICAgIHN5c3RlbVByb2dyYW0/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogUmVzb2x2ZWQgZXh0cmEgYWNjb3VudCBtZXRhcyByZXF1aXJlZCBieSB0aGUgZ2F0aW5nIHByb2dyYW0sIGluIHRoZSBleGFjdCBvcmRlciB0aGVcbiAgICAgKiBnYXRpbmcgcHJvZ3JhbSdzIHRoYXcgRXh0cmFBY2NvdW50TWV0YUxpc3QgcmVxdWlyZXMuIFRoZSBmaXJzdCBlbnRyeSBpcyB0aGUgdGhhd1xuICAgICAqIEV4dHJhQWNjb3VudE1ldGFMaXN0IFBEQSBpdHNlbGYsIGZvbGxvd2VkIGJ5IGFueSBzZWVkL2FjY291bnQtZGVyaXZlZCBkZXBlbmRlbmNpZXMuXG4gICAgICovXG4gICAgZXh0cmFBY2NvdW50czogRXh0cmFBY2NvdW50TWV0YVtdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1pbnRUbyB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLk1pbnRUbztcbiAgcGFyYW1zOiB7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgZGVjaW1hbFBsYWNlcz86IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVybiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkJ1cm47XG4gIHBhcmFtczoge1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgZGVjaW1hbFBsYWNlcz86IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwcm92ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcHJvdmU7XG4gIHBhcmFtczoge1xuICAgIGFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgZGVsZWdhdGVBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEppdG9TdGFraW5nQWN0aXZhdGVQYXJhbXMge1xuICBzdGFrZVBvb2xEYXRhOiBEZXBvc2l0U29sU3Rha2VQb29sRGF0YTtcbiAgY3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdBY3RpdmF0ZUV4dHJhUGFyYW1zID0gSml0b1N0YWtpbmdBY3RpdmF0ZVBhcmFtcztcblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nQWN0aXZhdGUge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TdGFraW5nQWN0aXZhdGU7XG4gIHBhcmFtczoge1xuICAgIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gICAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICB2YWxpZGF0b3I6IHN0cmluZztcbiAgICBzdGFraW5nVHlwZTogU29sU3Rha2luZ1R5cGVFbnVtO1xuICAgIGV4dHJhUGFyYW1zPzogU3Rha2luZ0FjdGl2YXRlRXh0cmFQYXJhbXM7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ0RlbGVnYXRlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ0RlbGVnYXRlO1xuICBwYXJhbXM6IHsgc3Rha2luZ0FkZHJlc3M6IHN0cmluZzsgZnJvbUFkZHJlc3M6IHN0cmluZzsgdmFsaWRhdG9yOiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKaXRvU3Rha2luZ0RlYWN0aXZhdGVQYXJhbXMge1xuICBzdGFrZVBvb2xEYXRhOiBXaXRoZHJhd1N0YWtlU3Rha2VQb29sRGF0YTtcbiAgdmFsaWRhdG9yQWRkcmVzczogc3RyaW5nO1xuICB0cmFuc2ZlckF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgU3Rha2luZ0RlYWN0aXZhdGVFeHRyYVBhcmFtcyA9IEppdG9TdGFraW5nRGVhY3RpdmF0ZVBhcmFtcztcblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nRGVhY3RpdmF0ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdEZWFjdGl2YXRlO1xuICBwYXJhbXM6IHtcbiAgICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICAgIHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50Pzogc3RyaW5nO1xuICAgIHVuc3Rha2luZ0FkZHJlc3M/OiBzdHJpbmc7XG4gICAgc3Rha2luZ1R5cGU6IFNvbFN0YWtpbmdUeXBlRW51bTtcbiAgICBleHRyYVBhcmFtcz86IFN0YWtpbmdEZWFjdGl2YXRlRXh0cmFQYXJhbXM7XG4gICAgcmVjaXBpZW50cz86IFJlY2lwaWVudFtdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWtpbmdXaXRoZHJhdyB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdXaXRoZHJhdztcbiAgcGFyYW1zOiB7IGZyb21BZGRyZXNzOiBzdHJpbmc7IHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7IGFtb3VudDogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ0F1dGhvcml6ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdBdXRob3JpemU7XG4gIHBhcmFtczoge1xuICAgIHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gICAgb2xkQXV0aG9yaXplQWRkcmVzcztcbiAgICBuZXdBdXRob3JpemVBZGRyZXNzOiBzdHJpbmc7XG4gICAgbmV3V2l0aGRyYXdBZGRyZXNzPzogc3RyaW5nO1xuICAgIGN1c3RvZGlhbkFkZHJlc3M/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0Q29tcHV0ZVVuaXRMaW1pdCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlNldENvbXB1dGVVbml0TGltaXQ7XG4gIHBhcmFtczoge1xuICAgIHVuaXRzOiBudW1iZXI7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0UHJpb3JpdHlGZWUge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TZXRQcmlvcml0eUZlZTtcbiAgcGFyYW1zOiB7XG4gICAgZmVlOiBudW1iZXIgfCBiaWdpbnQ7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXRhSW5pdCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYXRhQWRkcmVzczogc3RyaW5nO1xuICAgIG93bmVyQWRkcmVzczogc3RyaW5nO1xuICAgIHBheWVyQWRkcmVzczogc3RyaW5nO1xuICAgIHRva2VuTmFtZTogc3RyaW5nO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWFsbG9jYXRlQ29uZmlkZW50aWFsVHJhbnNmZXJBY2NvdW50IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUmVhbGxvY2F0ZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgLyoqIFRva2VuLTIwMjIgYWNjb3VudCByZWNlaXZpbmcgdGhlIENvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudCBleHRlbnNpb24uICovXG4gICAgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgcGF5ZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF0YUNsb3NlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50O1xuICBwYXJhbXM6IHtcbiAgICBhY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogU1BMIHRva2VuIHByb2dyYW0gb3duaW5nIHRoZSBBVEE7IG9taXR0ZWQgZm9yIGxlZ2FjeSBUb2tlbiBQcm9ncmFtLiAqL1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdGFSZWNvdmVyTmVzdGVkIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUmVjb3Zlck5lc3RlZEFzc29jaWF0ZWRUb2tlbkFjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIG5lc3RlZEFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgbmVzdGVkTWludEFkZHJlc3M6IHN0cmluZztcbiAgICBkZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICAgIG93bmVyTWludEFkZHJlc3M6IHN0cmluZztcbiAgICB3YWxsZXRBZGRyZXNzOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIFZhbGlkSW5zdHJ1Y3Rpb25UeXBlcyA9XG4gIHwgU3lzdGVtSW5zdHJ1Y3Rpb25UeXBlXG4gIHwgU3Rha2VJbnN0cnVjdGlvblR5cGVcbiAgfCBTdGFrZVBvb2xJbnN0cnVjdGlvblR5cGVcbiAgfCAnTWVtbydcbiAgfCAnSW5pdGlhbGl6ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQnXG4gIHwgJ0Nsb3NlQXNzb2NpYXRlZFRva2VuQWNjb3VudCdcbiAgfCAnUmVjb3Zlck5lc3RlZEFzc29jaWF0ZWRUb2tlbkFjY291bnQnXG4gIHwgRGVjb2RlZENsb3NlQWNjb3VudEluc3RydWN0aW9uXG4gIHwgJ1Rva2VuVHJhbnNmZXInXG4gIHwgJ1NldENvbXB1dGVVbml0TGltaXQnXG4gIHwgJ1NldFByaW9yaXR5RmVlJ1xuICB8ICdNaW50VG8nXG4gIHwgJ0J1cm4nXG4gIHwgJ0FwcHJvdmUnXG4gIHwgJ0N1c3RvbUluc3RydWN0aW9uJ1xuICB8ICdQZXJtaXNzaW9ubGVzc1RoYXdJZGVtcG90ZW50J1xuICB8ICdDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQnXG4gIHwgJ0FwcGx5UGVuZGluZ0JhbGFuY2UnXG4gIHwgJ0NvbmZpZGVudGlhbERlcG9zaXQnXG4gIHwgJ0NvbmZpZGVudGlhbFdpdGhkcmF3J1xuICB8ICdDb25maWRlbnRpYWxUcmFuc2ZlcidcbiAgfCAnVmVyaWZ5UHVia2V5VmFsaWRpdHknXG4gIHwgJ1ZlcmlmeUVxdWFsaXR5UHJvb2YnXG4gIHwgJ1ZlcmlmeVZhbGlkaXR5UHJvb2YnXG4gIHwgJ1ZlcmlmeVJhbmdlUHJvb2YnO1xuXG5leHBvcnQgdHlwZSBTdGFraW5nQXV0aG9yaXplUGFyYW1zID0ge1xuICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICBvbGRXaXRoZHJhd0FkZHJlc3M6IHN0cmluZztcbiAgbmV3V2l0aGRyYXdBZGRyZXNzOiBzdHJpbmc7XG4gIGN1c3RvZGlhbkFkZHJlc3M/OiBzdHJpbmc7XG4gIG9sZFN0YWtpbmdBdXRob3JpdHlBZGRyZXNzPzogc3RyaW5nO1xuICBuZXdTdGFraW5nQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdEZWxlZ2F0ZVBhcmFtcyA9IHtcbiAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgdmFsaWRhdG9yOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbUluc3RydWN0aW9uIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3VzdG9tSW5zdHJ1Y3Rpb247XG4gIHBhcmFtczogU29sSW5zdHJ1Y3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyc2lvbmVkQ3VzdG9tSW5zdHJ1Y3Rpb24ge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJzaW9uZWRDdXN0b21JbnN0cnVjdGlvbjtcbiAgcGFyYW1zOiBTb2xWZXJzaW9uZWRJbnN0cnVjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWZXJzaW9uZWRUcmFuc2FjdGlvbkRhdGEge1xuICB2ZXJzaW9uZWRJbnN0cnVjdGlvbnM6IFNvbFZlcnNpb25lZEluc3RydWN0aW9uW107XG4gIGFkZHJlc3NMb29rdXBUYWJsZXM6IEFkZHJlc3NMb29rdXBUYWJsZVtdO1xuICBzdGF0aWNBY2NvdW50S2V5czogc3RyaW5nW107XG4gIG1lc3NhZ2VIZWFkZXI6IHtcbiAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IG51bWJlcjtcbiAgICBudW1SZWFkb25seVNpZ25lZEFjY291bnRzOiBudW1iZXI7XG4gICAgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzOiBudW1iZXI7XG4gIH07XG4gIHJlY2VudEJsb2NraGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzTG9va3VwVGFibGUge1xuICBhY2NvdW50S2V5OiBzdHJpbmc7XG4gIHdyaXRhYmxlSW5kZXhlczogbnVtYmVyW107XG4gIHJlYWRvbmx5SW5kZXhlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogc3RyaW5nO1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLy8gb25seSBwb3B1bGF0ZWQgaWYgYmxvY2toYXNoIGlzIGZyb20gYSBub25jZSBhY2NvdW50XG4gIGR1cmFibGVOb25jZT86IER1cmFibGVOb25jZVBhcmFtcztcbiAgbWVtbz86IHN0cmluZztcbiAgc3Rha2luZ0F1dGhvcml6ZT86IFN0YWtpbmdBdXRob3JpemVQYXJhbXM7XG4gIHN0YWtpbmdEZWxlZ2F0ZT86IFN0YWtpbmdEZWxlZ2F0ZVBhcmFtcztcbiAgaW5wdXRzPzogeyBhZGRyZXNzOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IGNvaW4/OiBzdHJpbmcgfVtdO1xuICBmZWVQYXllcj86IHN0cmluZztcbiAgYXRhT3duZXJNYXA/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG4vLyDilIDilIDilIAgQ29uZmlkZW50aWFsIFRyYW5zZmVyIGludGVyZmFjZXMgKFRva2VuLTIwMjIgQ1QgZXh0ZW5zaW9uKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuLyoqXG4gKiBDb25maWd1cmVzIGEgdG9rZW4gYWNjb3VudCBmb3IgY29uZmlkZW50aWFsIHRyYW5zZmVycy5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bMl0gKyBkZWNyeXB0YWJsZV96ZXJvX2JhbGFuY2UoMzYpICsgbWF4aW11bV9wZW5kaW5nX2JhbGFuY2VfY3JlZGl0X2NvdW50ZXIodTY0KSArIHByb29mX2luc3RydWN0aW9uX29mZnNldChpOCkgPSA0NyBieXRlc1xuICpcbiAqIEFjY291bnRzOiBbdG9rZW4od3JpdGFibGUpLCBtaW50LCBpbnN0cnVjdGlvbnNTeXN2YXJ8Y29udGV4dFN0YXRlLCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIHRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xuICAgIC8qKiAzMi1ieXRlIEVsR2FtYWwgcHVia2V5IHJlZ2lzdGVyZWQgb24gdGhlIHRva2VuIGFjY291bnQgKGhleCkuICovXG4gICAgZWxnYW1hbFB1YmtleTogc3RyaW5nO1xuICAgIC8qKiBJbnN0cnVjdGlvbnMgc3lzdmFyIChpbmxpbmUgcHJvb2YpIG9yIGNvbnRleHQgc3RhdGUgYWNjb3VudCAocHJlLXZlcmlmaWVkIHByb29mKS4gRGVmYXVsdHMgdG8gaW5zdHJ1Y3Rpb25zIHN5c3Zhci4gKi9cbiAgICBpbnN0cnVjdGlvbnNTeXN2YXJPckNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIEFFUy1lbmNyeXB0ZWQgemVybyBiYWxhbmNlICgzNiBieXRlcyBoZXgpLiAqL1xuICAgIGRlY3J5cHRhYmxlWmVyb0JhbGFuY2U6IHN0cmluZztcbiAgICAvKiogTWF4aW11bSBkZXBvc2l0cyArIHRyYW5zZmVycyBiZWZvcmUgQXBwbHlQZW5kaW5nQmFsYW5jZSBpcyByZXF1aXJlZC4gKi9cbiAgICBtYXhpbXVtUGVuZGluZ0JhbGFuY2VDcmVkaXRDb3VudGVyOiBzdHJpbmc7XG4gICAgLyoqIFJlbGF0aXZlIG9mZnNldCB0byB0aGUgVmVyaWZ5UHVia2V5VmFsaWRpdHkgcHJvb2YgaW5zdHJ1Y3Rpb24gKGk4LCBzaWduZWQpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUgYWNjb3VudC4gKi9cbiAgICBwcm9vZkluc3RydWN0aW9uT2Zmc2V0OiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogQXBwbGllcyBwZW5kaW5nIGJhbGFuY2UgdG8gYXZhaWxhYmxlIGJhbGFuY2UuXG4gKlxuICogTGF5b3V0OiBbMjddWzhdICsgZXhwZWN0ZWRfcGVuZGluZ19iYWxhbmNlX2NyZWRpdF9jb3VudGVyKHU2NCkgKyBuZXdfZGVjcnlwdGFibGVfYXZhaWxhYmxlX2JhbGFuY2UoMzYpID0gNDYgYnl0ZXNcbiAqXG4gKiBBY2NvdW50czogW3Rva2VuKHdyaXRhYmxlKSwgYXV0aG9yaXR5KHNpZ25lcildXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbHlQZW5kaW5nQmFsYW5jZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcGx5UGVuZGluZ0JhbGFuY2U7XG4gIHBhcmFtczoge1xuICAgIHRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogRXhwZWN0ZWQgbnVtYmVyIG9mIHBlbmRpbmcgYmFsYW5jZSBjcmVkaXRzIHNpbmNlIGxhc3QgQXBwbHlQZW5kaW5nQmFsYW5jZS4gKi9cbiAgICBleHBlY3RlZFBlbmRpbmdCYWxhbmNlQ3JlZGl0Q291bnRlcjogc3RyaW5nO1xuICAgIC8qKiBBRVMtZW5jcnlwdGVkIG5ldyBhdmFpbGFibGUgYmFsYW5jZSAoMzYgYnl0ZXMgaGV4KS4gKi9cbiAgICBuZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2U6IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBEZXBvc2l0cyBwdWJsaWMgU1BMIHRva2VucyBpbnRvIGNvbmZpZGVudGlhbCBwZW5kaW5nIGJhbGFuY2UuXG4gKlxuICogTGF5b3V0OiBbMjddWzVdICsgYW1vdW50KHU2NCkgKyBkZWNpbWFscyh1OCkgPSAxMSBieXRlc1xuICpcbiAqIEFjY291bnRzOiBbdG9rZW4od3JpdGFibGUpLCBtaW50LCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWRlbnRpYWxEZXBvc2l0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsRGVwb3NpdDtcbiAgcGFyYW1zOiB7XG4gICAgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgLyoqIEFtb3VudCB0byBkZXBvc2l0IGluIGJhc2UgdW5pdHMuICovXG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgLyoqIE51bWJlciBvZiBkZWNpbWFscyBmb3IgdGhlIHRva2VuLiAqL1xuICAgIGRlY2ltYWxzOiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogV2l0aGRyYXdzIHRva2VucyBmcm9tIGNvbmZpZGVudGlhbCBhdmFpbGFibGUgYmFsYW5jZSB0byBwdWJsaWMgYmFsYW5jZS5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bNl0gKyBhbW91bnQodTY0KSArIGRlY2ltYWxzKHU4KSArIG5ld19kZWNyeXB0YWJsZV9hdmFpbGFibGVfYmFsYW5jZSgzNikgKyBlcXVhbGl0eV9wcm9vZl9vZmZzZXQoaTgpICsgcmFuZ2VfcHJvb2Zfb2Zmc2V0KGk4KSA9IDQ5IGJ5dGVzXG4gKlxuICogQWNjb3VudHM6IFt0b2tlbih3cml0YWJsZSksIG1pbnQsIGluc3RydWN0aW9uc1N5c3Zhcj8sIGVxdWFsaXR5Q29udGV4dFN0YXRlPywgcmFuZ2VDb250ZXh0U3RhdGU/LCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWRlbnRpYWxXaXRoZHJhdyB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZGVudGlhbFdpdGhkcmF3O1xuICBwYXJhbXM6IHtcbiAgICB0b2tlbkFkZHJlc3M6IHN0cmluZztcbiAgICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogSW5zdHJ1Y3Rpb25zIHN5c3ZhciBhZGRyZXNzIChpZiBwcm9vZnMgYXJlIGlubGluZSkuIE9taXQgaWYgdXNpbmcgY29udGV4dCBzdGF0ZSBhY2NvdW50cy4gKi9cbiAgICBpbnN0cnVjdGlvbnNTeXN2YXJBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBFcXVhbGl0eSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBSYW5nZSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIHJhbmdlUHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBBbW91bnQgdG8gd2l0aGRyYXcgaW4gYmFzZSB1bml0cy4gKi9cbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICAvKiogTnVtYmVyIG9mIGRlY2ltYWxzIGZvciB0aGUgdG9rZW4uICovXG4gICAgZGVjaW1hbHM6IG51bWJlcjtcbiAgICAvKiogQUVTLWVuY3J5cHRlZCBuZXcgYXZhaWxhYmxlIGJhbGFuY2UgYWZ0ZXIgd2l0aGRyYXdhbCAoMzYgYnl0ZXMgaGV4KS4gKi9cbiAgICBuZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2U6IHN0cmluZztcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUNpcGhlcnRleHRDb21taXRtZW50RXF1YWxpdHkgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZJbnN0cnVjdGlvbk9mZnNldDogbnVtYmVyO1xuICAgIC8qKiBSZWxhdGl2ZSBvZmZzZXQgdG8gVmVyaWZ5QmF0Y2hlZFJhbmdlUHJvb2ZVNjQgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIHJhbmdlUHJvb2ZJbnN0cnVjdGlvbk9mZnNldDogbnVtYmVyO1xuICB9O1xufVxuXG4vKipcbiAqIFRyYW5zZmVycyB0b2tlbnMgY29uZmlkZW50aWFsbHkgYmV0d2VlbiB0d28gYWNjb3VudHMuXG4gKlxuICogTGF5b3V0OiBbMjddWzddICsgbmV3X3NvdXJjZV9kZWNyeXB0YWJsZSgzNikgKyBhdWRpdG9yX2N0X2xvKDY0KSArIGF1ZGl0b3JfY3RfaGkoNjQpICsgZXFfb2Zmc2V0KGk4KSArIHZhbGlkaXR5X29mZnNldChpOCkgKyByYW5nZV9vZmZzZXQoaTgpID0gMTY5IGJ5dGVzXG4gKlxuICogQWNjb3VudHM6IFtzb3VyY2Uod3JpdGFibGUpLCBtaW50LCBkZXN0KHdyaXRhYmxlKSwgaW5zdHJ1Y3Rpb25zU3lzdmFyPywgZXFDdHg/LCB2YWxpZGl0eUN0eD8sIHJhbmdlQ3R4PywgYXV0aG9yaXR5KHNpZ25lcildXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlkZW50aWFsVHJhbnNmZXIge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxUcmFuc2ZlcjtcbiAgcGFyYW1zOiB7XG4gICAgc291cmNlVG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBkZXN0aW5hdGlvblRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogSW5zdHJ1Y3Rpb25zIHN5c3ZhciBhZGRyZXNzIChpZiBwcm9vZnMgYXJlIGlubGluZSkuIE9taXQgaWYgdXNpbmcgY29udGV4dCBzdGF0ZSBhY2NvdW50cy4gKi9cbiAgICBpbnN0cnVjdGlvbnNTeXN2YXJBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBFcXVhbGl0eSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBDaXBoZXJ0ZXh0IHZhbGlkaXR5IHByb29mIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgcHJlLXZlcmlmaWVkKS4gT21pdCBpZiB1c2luZyBpbmxpbmUgcHJvb2YuICovXG4gICAgY2lwaGVydGV4dFZhbGlkaXR5UHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBSYW5nZSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIHJhbmdlUHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBBRVMtZW5jcnlwdGVkIG5ldyBzb3VyY2UgZGVjcnlwdGFibGUgYmFsYW5jZSAoMzYgYnl0ZXMgaGV4KS4gKi9cbiAgICBuZXdTb3VyY2VEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2U6IHN0cmluZztcbiAgICAvKiogQXVkaXRvciBFbEdhbWFsIGNpcGhlcnRleHQgZm9yIHRyYW5zZmVyIGFtb3VudCBsb3cgMTYgYml0cyAoNjQgYnl0ZXMgaGV4KS4gKi9cbiAgICB0cmFuc2ZlckFtb3VudEF1ZGl0b3JDaXBoZXJ0ZXh0TG86IHN0cmluZztcbiAgICAvKiogQXVkaXRvciBFbEdhbWFsIGNpcGhlcnRleHQgZm9yIHRyYW5zZmVyIGFtb3VudCBoaWdoIGJpdHMgKDY0IGJ5dGVzIGhleCkuICovXG4gICAgdHJhbnNmZXJBbW91bnRBdWRpdG9yQ2lwaGVydGV4dEhpOiBzdHJpbmc7XG4gICAgLyoqIFJlbGF0aXZlIG9mZnNldCB0byBWZXJpZnlDaXBoZXJ0ZXh0Q29tbWl0bWVudEVxdWFsaXR5IHByb29mIChpOCkuIDAgPSB1c2UgY29udGV4dCBzdGF0ZS4gKi9cbiAgICBlcXVhbGl0eVByb29mSW5zdHJ1Y3Rpb25PZmZzZXQ6IG51bWJlcjtcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUJhdGNoZWRHcm91cGVkQ2lwaGVydGV4dDNIYW5kbGVzVmFsaWRpdHkgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIGNpcGhlcnRleHRWYWxpZGl0eVByb29mSW5zdHJ1Y3Rpb25PZmZzZXQ6IG51bWJlcjtcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUJhdGNoZWRSYW5nZVByb29mVTEyOCBwcm9vZiAoaTgpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUuICovXG4gICAgcmFuZ2VQcm9vZkluc3RydWN0aW9uT2Zmc2V0OiBudW1iZXI7XG4gIH07XG59XG5cbi8vIOKUgOKUgOKUgCB6ay1lbGdhbWFsLXByb29mIHZlcmlmaWNhdGlvbiBpbnRlcmZhY2VzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4vKipcbiAqIFZlcmlmaWVzIHRoZSB2YWxpZGl0eSBvZiBhbiBFbEdhbWFsIHB1YmtleSAodXNlZCB3aXRoIENvbmZpZ3VyZUFjY291bnQpLlxuICpcbiAqIERpc2NyaW1pbmF0b3I6IFs0XSArIHByb29mX2RhdGFcbiAqIFByb2dyYW06IHprLWVsZ2FtYWwtcHJvb2ZcbiAqIEFjY291bnRzOiBbXSAoaW5saW5lIHByb29mKSBvciBbY29udGV4dFN0YXRlKHdyaXRhYmxlKSwgYXV0aG9yaXR5XSAoY29udGV4dCBzdGF0ZSlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWZXJpZnlQdWJrZXlWYWxpZGl0eSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVB1YmtleVZhbGlkaXR5O1xuICBwYXJhbXM6IHtcbiAgICAvKiogUHJvb2YgZGF0YSBhcyBoZXggc3RyaW5nIChpbmxpbmUgcHJvb2YpLiBJZiBvbWl0dGVkLCB1c2VzIGNvbnRleHQgc3RhdGUgYWNjb3VudCArIG9mZnNldC4gKi9cbiAgICBwcm9vZkRhdGE/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYWNjb3VudCBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUFjY291bnRBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBDb250ZXh0IHN0YXRlIGF1dGhvcml0eSBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUF1dGhvcml0eUFkZHJlc3M/OiBzdHJpbmc7XG4gIH07XG59XG5cbi8qKlxuICogVmVyaWZpZXMgY2lwaGVydGV4dC1jb21taXRtZW50IGVxdWFsaXR5IHByb29mICh1c2VkIHdpdGggVHJhbnNmZXIgYW5kIFdpdGhkcmF3KS5cbiAqXG4gKiBEaXNjcmltaW5hdG9yOiBbM10gKyBwcm9vZl9kYXRhIG9yIFszXSArIG9mZnNldCh1MzIpXG4gKiBQcm9ncmFtOiB6ay1lbGdhbWFsLXByb29mXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZ5RXF1YWxpdHlQcm9vZiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeUVxdWFsaXR5UHJvb2Y7XG4gIHBhcmFtczoge1xuICAgIC8qKiBQcm9vZiBkYXRhIGFzIGhleCBzdHJpbmcgKGlubGluZSBwcm9vZikuIElmIG9taXR0ZWQsIHVzZXMgY29udGV4dCBzdGF0ZSBhY2NvdW50ICsgb2Zmc2V0LiAqL1xuICAgIHByb29mRGF0YT86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhY2NvdW50IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQWNjb3VudEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYXV0aG9yaXR5IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogT2Zmc2V0IGludG8gY29udGV4dCBzdGF0ZSBhY2NvdW50IChpZiB1c2luZyBjb250ZXh0IHN0YXRlKS4gKi9cbiAgICBvZmZzZXQ/OiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogVmVyaWZpZXMgYmF0Y2hlZCBncm91cGVkIGNpcGhlcnRleHQgMy1oYW5kbGVzIHZhbGlkaXR5IHByb29mICh1c2VkIHdpdGggVHJhbnNmZXIpLlxuICpcbiAqIERpc2NyaW1pbmF0b3I6IFsxMl0gKyBwcm9vZl9kYXRhIG9yIFsxMl0gKyBvZmZzZXQodTMyKVxuICogUHJvZ3JhbTogemstZWxnYW1hbC1wcm9vZlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVZhbGlkaXR5UHJvb2Yge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlWYWxpZGl0eVByb29mO1xuICBwYXJhbXM6IHtcbiAgICAvKiogUHJvb2YgZGF0YSBhcyBoZXggc3RyaW5nIChpbmxpbmUgcHJvb2YpLiBJZiBvbWl0dGVkLCB1c2VzIGNvbnRleHQgc3RhdGUgYWNjb3VudCArIG9mZnNldC4gKi9cbiAgICBwcm9vZkRhdGE/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYWNjb3VudCBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUFjY291bnRBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBDb250ZXh0IHN0YXRlIGF1dGhvcml0eSBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUF1dGhvcml0eUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIE9mZnNldCBpbnRvIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgdXNpbmcgY29udGV4dCBzdGF0ZSkuICovXG4gICAgb2Zmc2V0PzogbnVtYmVyO1xuICB9O1xufVxuXG4vKipcbiAqIFZlcmlmaWVzIGJhdGNoZWQgcmFuZ2UgcHJvb2YgVTEyOCAodXNlZCB3aXRoIFRyYW5zZmVyKS5cbiAqXG4gKiBEaXNjcmltaW5hdG9yOiBbN10gKyBwcm9vZl9kYXRhIG9yIFs3XSArIG9mZnNldChpMzIpXG4gKiBQcm9ncmFtOiB6ay1lbGdhbWFsLXByb29mXG4gKiBBY2NvdW50czogW10gKGlubGluZSBwcm9vZikgb3IgW2NvbnRleHRTdGF0ZSh3cml0YWJsZSksIGF1dGhvcml0eV0gKGNvbnRleHQgc3RhdGUpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZ5UmFuZ2VQcm9vZiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVJhbmdlUHJvb2Y7XG4gIHBhcmFtczoge1xuICAgIC8qKiBQcm9vZiBkYXRhIGFzIGhleCBzdHJpbmcgKGlubGluZSBwcm9vZikuIElmIG9taXR0ZWQsIHVzZXMgY29udGV4dCBzdGF0ZSBhY2NvdW50ICsgb2Zmc2V0LiAqL1xuICAgIHByb29mRGF0YT86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhY2NvdW50IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQWNjb3VudEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYXV0aG9yaXR5IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogT2Zmc2V0IGludG8gY29udGV4dCBzdGF0ZSBhY2NvdW50IChpZiB1c2luZyBjb250ZXh0IHN0YXRlKS4gKi9cbiAgICBvZmZzZXQ/OiBudW1iZXI7XG4gIH07XG59XG5cbmV4cG9ydCBjbGFzcyBUb2tlbkFzc29jaWF0ZVJlY2lwaWVudCB7XG4gIG93bmVyQWRkcmVzczogc3RyaW5nO1xuICB0b2tlbk5hbWU6IHN0cmluZztcbiAgYXRhQWRkcmVzcz86IHN0cmluZztcbiAgdG9rZW5BZGRyZXNzPzogc3RyaW5nO1xuICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG59XG4iXX0=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRuQkEsTUFBTSxPQUFPLHVCQUF1QjtDQU1uQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvbFN0YWtpbmdUeXBlRW51bSB9IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBhcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbixcbiAgUmVjaXBpZW50LFxuICBTb2xJbnN0cnVjdGlvbixcbiAgU29sVmVyc2lvbmVkSW5zdHJ1Y3Rpb24sXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IERlY29kZWRDbG9zZUFjY291bnRJbnN0cnVjdGlvbiB9IGZyb20gJ0Bzb2xhbmEvc3BsLXRva2VuJztcbmltcG9ydCB7IEJsb2NraGFzaCwgU3Rha2VJbnN0cnVjdGlvblR5cGUsIFN5c3RlbUluc3RydWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25TaWduYXR1cmUgfSBmcm9tICdAc29sYW5hL3dlYjMuanMnO1xuaW1wb3J0IHsgSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBTdGFrZVBvb2xJbnN0cnVjdGlvblR5cGUgfSBmcm9tICdAc29sYW5hL3NwbC1zdGFrZS1wb29sJztcbmltcG9ydCB7IERlcG9zaXRTb2xTdGFrZVBvb2xEYXRhLCBXaXRoZHJhd1N0YWtlU3Rha2VQb29sRGF0YSB9IGZyb20gJy4vaml0b1N0YWtlUG9vbE9wZXJhdGlvbnMnO1xuXG4vLyBUT0RPKFNUTFgtOTg5MCk6IEFkZCB0aGUgaW50ZXJmYWNlcyBmb3IgdmFsaWRpdHlXaW5kb3cgYW5kIFNlcXVlbmNlSWRcbmV4cG9ydCBpbnRlcmZhY2UgU29sYW5hS2V5cyB7XG4gIHBydj86IFVpbnQ4QXJyYXkgfCBzdHJpbmc7XG4gIHB1Yjogc3RyaW5nO1xufVxuZXhwb3J0IGludGVyZmFjZSBEdXJhYmxlTm9uY2VQYXJhbXMge1xuICB3YWxsZXROb25jZUFkZHJlc3M6IHN0cmluZztcbiAgYXV0aFdhbGxldEFkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUeERhdGEge1xuICBpZD86IFRyYW5zYWN0aW9uU2lnbmF0dXJlO1xuICBmZWVQYXllcj86IHN0cmluZztcbiAgbGFtcG9ydHNQZXJTaWduYXR1cmU/OiBudW1iZXI7XG4gIG51bVNpZ25hdHVyZXM6IG51bWJlcjtcbiAgbm9uY2U6IEJsb2NraGFzaDtcbiAgLy8gb25seSBwb3B1bGF0ZWQgd2hlbiBub25jZSBpcyBmcm9tIGEgZHVyYWJsZSBub25jZSBhY2NvdW50XG4gIGR1cmFibGVOb25jZT86IER1cmFibGVOb25jZVBhcmFtcztcbiAgaW5zdHJ1Y3Rpb25zRGF0YTogSW5zdHJ1Y3Rpb25QYXJhbXNbXTtcbn1cblxuZXhwb3J0IHR5cGUgSW5zdHJ1Y3Rpb25QYXJhbXMgPVxuICB8IE5vbmNlXG4gIHwgTWVtb1xuICB8IFdhbGxldEluaXRcbiAgfCBTZXRDb21wdXRlVW5pdExpbWl0XG4gIHwgU2V0UHJpb3JpdHlGZWVcbiAgfCBUcmFuc2ZlclxuICB8IFN0YWtpbmdBY3RpdmF0ZVxuICB8IFN0YWtpbmdEZWFjdGl2YXRlXG4gIHwgU3Rha2luZ1dpdGhkcmF3XG4gIHwgQXRhSW5pdFxuICB8IFJlYWxsb2NhdGVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnRcbiAgfCBBdGFDbG9zZVxuICB8IEF0YVJlY292ZXJOZXN0ZWRcbiAgfCBUb2tlblRyYW5zZmVyXG4gIHwgU3Rha2luZ0F1dGhvcml6ZVxuICB8IFN0YWtpbmdEZWxlZ2F0ZVxuICB8IE1pbnRUb1xuICB8IEJ1cm5cbiAgfCBBcHByb3ZlXG4gIHwgQ3VzdG9tSW5zdHJ1Y3Rpb25cbiAgfCBWZXJzaW9uZWRDdXN0b21JbnN0cnVjdGlvblxuICB8IFBlcm1pc3Npb25sZXNzVGhhd0lkZW1wb3RlbnRcbiAgfCBDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnRcbiAgfCBBcHBseVBlbmRpbmdCYWxhbmNlXG4gIHwgQ29uZmlkZW50aWFsRGVwb3NpdFxuICB8IENvbmZpZGVudGlhbFdpdGhkcmF3XG4gIHwgQ29uZmlkZW50aWFsVHJhbnNmZXJcbiAgfCBWZXJpZnlQdWJrZXlWYWxpZGl0eVxuICB8IFZlcmlmeUVxdWFsaXR5UHJvb2ZcbiAgfCBWZXJpZnlWYWxpZGl0eVByb29mXG4gIHwgVmVyaWZ5UmFuZ2VQcm9vZjtcblxuZXhwb3J0IGludGVyZmFjZSBNZW1vIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTWVtbztcbiAgcGFyYW1zOiB7IG1lbW86IHN0cmluZyB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5vbmNlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuTm9uY2VBZHZhbmNlO1xuICBwYXJhbXM6IER1cmFibGVOb25jZVBhcmFtcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXYWxsZXRJbml0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3JlYXRlTm9uY2VBY2NvdW50O1xuICBwYXJhbXM6IHsgZnJvbUFkZHJlc3M6IHN0cmluZzsgbm9uY2VBZGRyZXNzOiBzdHJpbmc7IGF1dGhBZGRyZXNzOiBzdHJpbmc7IGFtb3VudDogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmZXIge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5UcmFuc2ZlcjtcbiAgcGFyYW1zOiB7XG4gICAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgICB0b0FkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBFeHRyYSBhY2NvdW50IG1ldGFkYXRhIHJlcXVpcmVkIGJ5IGEgVG9rZW4tMjAyMiBUcmFuc2ZlciBIb29rLlxuICpcbiAqIFRoZXNlIGFyZSByZXNvbHZlZCBsaXZlIChpbiB0aGUgb3JkZXIgdGhlIGhvb2sncyBFeHRyYUFjY291bnRNZXRhTGlzdCByZXF1aXJlcylcbiAqIGFuZCBzdXBwbGllZCB0byB0aGUgaW5zdHJ1Y3Rpb24gZmFjdG9yeS4gU2VlIHtAbGluayBUb2tlblRyYW5zZmVyfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHRyYUFjY291bnRNZXRhIHtcbiAgLyoqIFRoZSBiYXNlNTgtZW5jb2RlZCBwdWJsaWMga2V5IG9mIHRoZSBhY2NvdW50ICovXG4gIHB1YmtleTogc3RyaW5nO1xuICAvKiogV2hldGhlciB0aGUgYWNjb3VudCBtdXN0IHNpZ24gdGhlIHRyYW5zYWN0aW9uICovXG4gIGlzU2lnbmVyOiBib29sZWFuO1xuICAvKiogV2hldGhlciB0aGUgYWNjb3VudCBpcyB3cml0YWJsZSAqL1xuICBpc1dyaXRhYmxlOiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuVHJhbnNmZXIge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Ub2tlblRyYW5zZmVyO1xuICBwYXJhbXM6IHtcbiAgICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICAgIHRvQWRkcmVzczogc3RyaW5nO1xuICAgIGFtb3VudDogc3RyaW5nO1xuICAgIHRva2VuTmFtZTogc3RyaW5nO1xuICAgIHNvdXJjZUFkZHJlc3M6IHN0cmluZztcbiAgICB0b2tlbkFkZHJlc3M/OiBzdHJpbmc7XG4gICAgZGVjaW1hbFBsYWNlcz86IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gICAgLyoqIFdpdGhoZWxkIHRyYW5zZmVyIGZlZSBpbiByYXcgYmFzZSB1bml0cyAqL1xuICAgIGZlZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBSZXNvbHZlZCBUcmFuc2ZlciBIb29rIGV4dHJhIGFjY291bnQgbWV0YXMsIGluIHRoZSBleGFjdCBvcmRlciB0aGUgaG9va1xuICAgICAqIHJlcXVpcmVzLiBPbmx5IHVzZWQgZm9yIFRva2VuLTIwMjIgdHJhbnNmZXJzIHdob3NlIG1pbnQgaGFzIGEgVHJhbnNmZXJcbiAgICAgKiBIb29rIGV4dGVuc2lvbjsgcmVzb2x2ZWQgbGl2ZSBieSB0aGUgY2FsbGVyIChvZmZsaW5lIGJ1aWxkZXJzIG5ldmVyIGZldGNoKS5cbiAgICAgKi9cbiAgICB0cmFuc2Zlckhvb2tBY2NvdW50cz86IEV4dHJhQWNjb3VudE1ldGFbXTtcbiAgfTtcbn1cblxuLyoqXG4gKiBzUkZDLTM3IFRva2VuIEFDTCBwZXJtaXNzaW9ubGVzcyB0aGF3IChpZGVtcG90ZW50KSBpbnN0cnVjdGlvbi5cbiAqXG4gKiBFbWl0dGVkIGZvciBhbGxvd2xpc3QvYmxvY2tsaXN0IChEZWZhdWx0QWNjb3VudFN0YXRlKSBUb2tlbi0yMDIyIG1pbnRzIHNvIGEgZnJlc2hseSBjcmVhdGVkXG4gKiAoZnJvemVuKSB0b2tlbiBhY2NvdW50IGNhbiBiZSB0aGF3ZWQgYXRvbWljYWxseSBpbiB0aGUgc2FtZSB0cmFuc2FjdGlvbiBhcyB0aGUgdHJhbnNmZXIuIFRoZVxuICogZ2F0aW5nLXByb2dyYW0gZGVwZW5kZW5jaWVzIChgZmxhZ0FjY291bnRgLCBgbWludENvbmZpZ2AsIGBnYXRpbmdQcm9ncmFtYCwgYGV4dHJhQWNjb3VudHNgKSBhcmVcbiAqIHJlc29sdmVkIGxpdmUgYnkgdGhlIGNhbGxlciAoc2VlIGBTb2wucmVzb2x2ZVBlcm1pc3Npb25sZXNzVGhhd2ApIGJlY2F1c2UgYnVpbGRlcnMgbmV2ZXIgZmV0Y2guXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGVybWlzc2lvbmxlc3NUaGF3SWRlbXBvdGVudCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlBlcm1pc3Npb25sZXNzVGhhd0lkZW1wb3RlbnQ7XG4gIHBhcmFtczoge1xuICAgIC8qKiBUaGUgc2lnbmVyIGludm9raW5nIHRoZSB0aGF3IChmZWUgcGF5ZXIgLyBhdXRob3JpdHkpLiAqL1xuICAgIGF1dGhvcml0eTogc3RyaW5nO1xuICAgIC8qKiBUaGUgVG9rZW4tMjAyMiBtaW50IG9mIHRoZSB0b2tlbiBhY2NvdW50IGJlaW5nIHRoYXdlZC4gKi9cbiAgICBtaW50OiBzdHJpbmc7XG4gICAgLyoqIFRoZSB0b2tlbiBhY2NvdW50IChBVEEpIHRvIHRoYXcuICovXG4gICAgdG9rZW5BY2NvdW50OiBzdHJpbmc7XG4gICAgLyoqIFRoZSBvd25lciBvZiB0aGUgdG9rZW4gYWNjb3VudC4gKi9cbiAgICB0b2tlbkFjY291bnRPd25lcjogc3RyaW5nO1xuICAgIC8qKiBUaGUgVG9rZW4gQUNMIGdhdGluZyBwcm9ncmFtIHRoYXQgYXV0aG9yaXplcyB0aGUgdGhhdy4gKi9cbiAgICBnYXRpbmdQcm9ncmFtOiBzdHJpbmc7XG4gICAgLyoqIFBEQSAodW5kZXIgdGhlIFRva2VuIEFDTCBwcm9ncmFtKSB0cmFja2luZyB0aGUgdG9rZW4gYWNjb3VudCdzIHRoYXcgZmxhZy4gKi9cbiAgICBmbGFnQWNjb3VudDogc3RyaW5nO1xuICAgIC8qKiBQREEgKHVuZGVyIHRoZSBUb2tlbiBBQ0wgcHJvZ3JhbSkgaG9sZGluZyB0aGUgbWludCdzIFRva2VuIEFDTCBjb25maWcuICovXG4gICAgbWludENvbmZpZzogc3RyaW5nO1xuICAgIC8qKiBUb2tlbiBwcm9ncmFtIGlkOyBkZWZhdWx0cyB0byB0aGUgVG9rZW4tMjAyMiBwcm9ncmFtIHdoZW4gb21pdHRlZC4gKi9cbiAgICB0b2tlblByb2dyYW0/OiBzdHJpbmc7XG4gICAgLyoqIFN5c3RlbSBwcm9ncmFtIGlkOyBkZWZhdWx0cyB0byB0aGUgU3lzdGVtIHByb2dyYW0gd2hlbiBvbWl0dGVkLiAqL1xuICAgIHN5c3RlbVByb2dyYW0/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogUmVzb2x2ZWQgZXh0cmEgYWNjb3VudCBtZXRhcyByZXF1aXJlZCBieSB0aGUgZ2F0aW5nIHByb2dyYW0sIGluIHRoZSBleGFjdCBvcmRlciB0aGVcbiAgICAgKiBnYXRpbmcgcHJvZ3JhbSdzIHRoYXcgRXh0cmFBY2NvdW50TWV0YUxpc3QgcmVxdWlyZXMuIFRoZSBmaXJzdCBlbnRyeSBpcyB0aGUgdGhhd1xuICAgICAqIEV4dHJhQWNjb3VudE1ldGFMaXN0IFBEQSBpdHNlbGYsIGZvbGxvd2VkIGJ5IGFueSBzZWVkL2FjY291bnQtZGVyaXZlZCBkZXBlbmRlbmNpZXMuXG4gICAgICovXG4gICAgZXh0cmFBY2NvdW50czogRXh0cmFBY2NvdW50TWV0YVtdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1pbnRUbyB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLk1pbnRUbztcbiAgcGFyYW1zOiB7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBkZXN0aW5hdGlvbkFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgZGVjaW1hbFBsYWNlcz86IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVybiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkJ1cm47XG4gIHBhcmFtczoge1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYWNjb3VudEFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgdG9rZW5OYW1lOiBzdHJpbmc7XG4gICAgZGVjaW1hbFBsYWNlcz86IG51bWJlcjtcbiAgICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwcm92ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcHJvdmU7XG4gIHBhcmFtczoge1xuICAgIGFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgZGVsZWdhdGVBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkPzogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEppdG9TdGFraW5nQWN0aXZhdGVQYXJhbXMge1xuICBzdGFrZVBvb2xEYXRhOiBEZXBvc2l0U29sU3Rha2VQb29sRGF0YTtcbiAgY3JlYXRlQXNzb2NpYXRlZFRva2VuQWNjb3VudD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdBY3RpdmF0ZUV4dHJhUGFyYW1zID0gSml0b1N0YWtpbmdBY3RpdmF0ZVBhcmFtcztcblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nQWN0aXZhdGUge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TdGFraW5nQWN0aXZhdGU7XG4gIHBhcmFtczoge1xuICAgIGZyb21BZGRyZXNzOiBzdHJpbmc7XG4gICAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICB2YWxpZGF0b3I6IHN0cmluZztcbiAgICBzdGFraW5nVHlwZTogU29sU3Rha2luZ1R5cGVFbnVtO1xuICAgIGV4dHJhUGFyYW1zPzogU3Rha2luZ0FjdGl2YXRlRXh0cmFQYXJhbXM7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ0RlbGVnYXRlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ0RlbGVnYXRlO1xuICBwYXJhbXM6IHsgc3Rha2luZ0FkZHJlc3M6IHN0cmluZzsgZnJvbUFkZHJlc3M6IHN0cmluZzsgdmFsaWRhdG9yOiBzdHJpbmcgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBKaXRvU3Rha2luZ0RlYWN0aXZhdGVQYXJhbXMge1xuICBzdGFrZVBvb2xEYXRhOiBXaXRoZHJhd1N0YWtlU3Rha2VQb29sRGF0YTtcbiAgdmFsaWRhdG9yQWRkcmVzczogc3RyaW5nO1xuICB0cmFuc2ZlckF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgU3Rha2luZ0RlYWN0aXZhdGVFeHRyYVBhcmFtcyA9IEppdG9TdGFraW5nRGVhY3RpdmF0ZVBhcmFtcztcblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nRGVhY3RpdmF0ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdEZWFjdGl2YXRlO1xuICBwYXJhbXM6IHtcbiAgICBmcm9tQWRkcmVzczogc3RyaW5nO1xuICAgIHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gICAgYW1vdW50Pzogc3RyaW5nO1xuICAgIHVuc3Rha2luZ0FkZHJlc3M/OiBzdHJpbmc7XG4gICAgc3Rha2luZ1R5cGU6IFNvbFN0YWtpbmdUeXBlRW51bTtcbiAgICBleHRyYVBhcmFtcz86IFN0YWtpbmdEZWFjdGl2YXRlRXh0cmFQYXJhbXM7XG4gICAgcmVjaXBpZW50cz86IFJlY2lwaWVudFtdO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWtpbmdXaXRoZHJhdyB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdXaXRoZHJhdztcbiAgcGFyYW1zOiB7IGZyb21BZGRyZXNzOiBzdHJpbmc7IHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7IGFtb3VudDogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ0F1dGhvcml6ZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlN0YWtpbmdBdXRob3JpemU7XG4gIHBhcmFtczoge1xuICAgIHN0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gICAgb2xkQXV0aG9yaXplQWRkcmVzcztcbiAgICBuZXdBdXRob3JpemVBZGRyZXNzOiBzdHJpbmc7XG4gICAgbmV3V2l0aGRyYXdBZGRyZXNzPzogc3RyaW5nO1xuICAgIGN1c3RvZGlhbkFkZHJlc3M/OiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0Q29tcHV0ZVVuaXRMaW1pdCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlNldENvbXB1dGVVbml0TGltaXQ7XG4gIHBhcmFtczoge1xuICAgIHVuaXRzOiBudW1iZXI7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2V0UHJpb3JpdHlGZWUge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TZXRQcmlvcml0eUZlZTtcbiAgcGFyYW1zOiB7XG4gICAgZmVlOiBudW1iZXIgfCBiaWdpbnQ7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXRhSW5pdCB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNyZWF0ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYXRhQWRkcmVzczogc3RyaW5nO1xuICAgIG93bmVyQWRkcmVzczogc3RyaW5nO1xuICAgIHBheWVyQWRkcmVzczogc3RyaW5nO1xuICAgIHRva2VuTmFtZTogc3RyaW5nO1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBUcnVlIHdoZW4gdGhlIG1pbnQgY2FycmllcyBgVHJhbnNmZXJGZWVDb25maWdgLiBUaGUgQVRBIHRoZW4gYWxzbyBuZWVkcyByb29tIGZvciB0aGVcbiAgICAgKiBDb25maWRlbnRpYWxUcmFuc2ZlckZlZUFtb3VudCBleHRlbnNpb24sIHNvIHRoZSBidW5kbGVkIFJlYWxsb2NhdGUgcmVzZXJ2ZXMgaXQuXG4gICAgICovXG4gICAgbWludEhhc1RyYW5zZmVyRmVlQ29uZmlnPzogYm9vbGVhbjtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWFsbG9jYXRlQ29uZmlkZW50aWFsVHJhbnNmZXJBY2NvdW50IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUmVhbGxvY2F0ZUNvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudDtcbiAgcGFyYW1zOiB7XG4gICAgLyoqIFRva2VuLTIwMjIgYWNjb3VudCByZWNlaXZpbmcgdGhlIENvbmZpZGVudGlhbFRyYW5zZmVyQWNjb3VudCBleHRlbnNpb24uICovXG4gICAgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgcGF5ZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBZGRyZXNzOiBzdHJpbmc7XG4gICAgcHJvZ3JhbUlkPzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIFRydWUgd2hlbiB0aGUgbWludCBjYXJyaWVzIGBUcmFuc2ZlckZlZUNvbmZpZ2AuIENvbmZpZ3VyZUFjY291bnQgaW5pdGlhbGl6ZXNcbiAgICAgKiBDb25maWRlbnRpYWxUcmFuc2ZlckZlZUFtb3VudCBmb3Igc3VjaCBtaW50cywgc28gaXRzIDY4IGJ5dGVzIG11c3QgYmUgcmVzZXJ2ZWQgaGVyZS5cbiAgICAgKi9cbiAgICBtaW50SGFzVHJhbnNmZXJGZWVDb25maWc/OiBib29sZWFuO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF0YUNsb3NlIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ2xvc2VBc3NvY2lhdGVkVG9rZW5BY2NvdW50O1xuICBwYXJhbXM6IHtcbiAgICBhY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICAgIGRlc3RpbmF0aW9uQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogU1BMIHRva2VuIHByb2dyYW0gb3duaW5nIHRoZSBBVEE7IG9taXR0ZWQgZm9yIGxlZ2FjeSBUb2tlbiBQcm9ncmFtLiAqL1xuICAgIHByb2dyYW1JZD86IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdGFSZWNvdmVyTmVzdGVkIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuUmVjb3Zlck5lc3RlZEFzc29jaWF0ZWRUb2tlbkFjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIG5lc3RlZEFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgbmVzdGVkTWludEFkZHJlc3M6IHN0cmluZztcbiAgICBkZXN0aW5hdGlvbkFjY291bnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgb3duZXJBY2NvdW50QWRkcmVzczogc3RyaW5nO1xuICAgIG93bmVyTWludEFkZHJlc3M6IHN0cmluZztcbiAgICB3YWxsZXRBZGRyZXNzOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCB0eXBlIFZhbGlkSW5zdHJ1Y3Rpb25UeXBlcyA9XG4gIHwgU3lzdGVtSW5zdHJ1Y3Rpb25UeXBlXG4gIHwgU3Rha2VJbnN0cnVjdGlvblR5cGVcbiAgfCBTdGFrZVBvb2xJbnN0cnVjdGlvblR5cGVcbiAgfCAnTWVtbydcbiAgfCAnSW5pdGlhbGl6ZUFzc29jaWF0ZWRUb2tlbkFjY291bnQnXG4gIHwgJ0Nsb3NlQXNzb2NpYXRlZFRva2VuQWNjb3VudCdcbiAgfCAnUmVjb3Zlck5lc3RlZEFzc29jaWF0ZWRUb2tlbkFjY291bnQnXG4gIHwgRGVjb2RlZENsb3NlQWNjb3VudEluc3RydWN0aW9uXG4gIHwgJ1Rva2VuVHJhbnNmZXInXG4gIHwgJ1NldENvbXB1dGVVbml0TGltaXQnXG4gIHwgJ1NldFByaW9yaXR5RmVlJ1xuICB8ICdNaW50VG8nXG4gIHwgJ0J1cm4nXG4gIHwgJ0FwcHJvdmUnXG4gIHwgJ0N1c3RvbUluc3RydWN0aW9uJ1xuICB8ICdQZXJtaXNzaW9ubGVzc1RoYXdJZGVtcG90ZW50J1xuICB8ICdDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQnXG4gIHwgJ0FwcGx5UGVuZGluZ0JhbGFuY2UnXG4gIHwgJ0NvbmZpZGVudGlhbERlcG9zaXQnXG4gIHwgJ0NvbmZpZGVudGlhbFdpdGhkcmF3J1xuICB8ICdDb25maWRlbnRpYWxUcmFuc2ZlcidcbiAgfCAnVmVyaWZ5UHVia2V5VmFsaWRpdHknXG4gIHwgJ1ZlcmlmeUVxdWFsaXR5UHJvb2YnXG4gIHwgJ1ZlcmlmeVZhbGlkaXR5UHJvb2YnXG4gIHwgJ1ZlcmlmeVJhbmdlUHJvb2YnO1xuXG5leHBvcnQgdHlwZSBTdGFraW5nQXV0aG9yaXplUGFyYW1zID0ge1xuICBzdGFraW5nQWRkcmVzczogc3RyaW5nO1xuICBvbGRXaXRoZHJhd0FkZHJlc3M6IHN0cmluZztcbiAgbmV3V2l0aGRyYXdBZGRyZXNzOiBzdHJpbmc7XG4gIGN1c3RvZGlhbkFkZHJlc3M/OiBzdHJpbmc7XG4gIG9sZFN0YWtpbmdBdXRob3JpdHlBZGRyZXNzPzogc3RyaW5nO1xuICBuZXdTdGFraW5nQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdEZWxlZ2F0ZVBhcmFtcyA9IHtcbiAgc3Rha2luZ0FkZHJlc3M6IHN0cmluZztcbiAgZnJvbUFkZHJlc3M6IHN0cmluZztcbiAgdmFsaWRhdG9yOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbUluc3RydWN0aW9uIHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ3VzdG9tSW5zdHJ1Y3Rpb247XG4gIHBhcmFtczogU29sSW5zdHJ1Y3Rpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyc2lvbmVkQ3VzdG9tSW5zdHJ1Y3Rpb24ge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJzaW9uZWRDdXN0b21JbnN0cnVjdGlvbjtcbiAgcGFyYW1zOiBTb2xWZXJzaW9uZWRJbnN0cnVjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWZXJzaW9uZWRUcmFuc2FjdGlvbkRhdGEge1xuICB2ZXJzaW9uZWRJbnN0cnVjdGlvbnM6IFNvbFZlcnNpb25lZEluc3RydWN0aW9uW107XG4gIGFkZHJlc3NMb29rdXBUYWJsZXM6IEFkZHJlc3NMb29rdXBUYWJsZVtdO1xuICBzdGF0aWNBY2NvdW50S2V5czogc3RyaW5nW107XG4gIG1lc3NhZ2VIZWFkZXI6IHtcbiAgICBudW1SZXF1aXJlZFNpZ25hdHVyZXM6IG51bWJlcjtcbiAgICBudW1SZWFkb25seVNpZ25lZEFjY291bnRzOiBudW1iZXI7XG4gICAgbnVtUmVhZG9ubHlVbnNpZ25lZEFjY291bnRzOiBudW1iZXI7XG4gIH07XG4gIHJlY2VudEJsb2NraGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBZGRyZXNzTG9va3VwVGFibGUge1xuICBhY2NvdW50S2V5OiBzdHJpbmc7XG4gIHdyaXRhYmxlSW5kZXhlczogbnVtYmVyW107XG4gIHJlYWRvbmx5SW5kZXhlczogbnVtYmVyW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgdHlwZTogc3RyaW5nO1xuICBibG9ja2hhc2g6IEJsb2NraGFzaDtcbiAgLy8gb25seSBwb3B1bGF0ZWQgaWYgYmxvY2toYXNoIGlzIGZyb20gYSBub25jZSBhY2NvdW50XG4gIGR1cmFibGVOb25jZT86IER1cmFibGVOb25jZVBhcmFtcztcbiAgbWVtbz86IHN0cmluZztcbiAgc3Rha2luZ0F1dGhvcml6ZT86IFN0YWtpbmdBdXRob3JpemVQYXJhbXM7XG4gIHN0YWtpbmdEZWxlZ2F0ZT86IFN0YWtpbmdEZWxlZ2F0ZVBhcmFtcztcbiAgaW5wdXRzPzogeyBhZGRyZXNzOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmc7IGNvaW4/OiBzdHJpbmcgfVtdO1xuICBmZWVQYXllcj86IHN0cmluZztcbiAgYXRhT3duZXJNYXA/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG4vLyDilIDilIDilIAgQ29uZmlkZW50aWFsIFRyYW5zZmVyIGludGVyZmFjZXMgKFRva2VuLTIwMjIgQ1QgZXh0ZW5zaW9uKSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuLyoqXG4gKiBDb25maWd1cmVzIGEgdG9rZW4gYWNjb3VudCBmb3IgY29uZmlkZW50aWFsIHRyYW5zZmVycy5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bMl0gKyBkZWNyeXB0YWJsZV96ZXJvX2JhbGFuY2UoMzYpICsgbWF4aW11bV9wZW5kaW5nX2JhbGFuY2VfY3JlZGl0X2NvdW50ZXIodTY0KSArIHByb29mX2luc3RydWN0aW9uX29mZnNldChpOCkgPSA0NyBieXRlc1xuICpcbiAqIEFjY291bnRzOiBbdG9rZW4od3JpdGFibGUpLCBtaW50LCBpbnN0cnVjdGlvbnNTeXN2YXJ8Y29udGV4dFN0YXRlLCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqXG4gKiBUaGUgYWNjb3VudCdzIEVsR2FtYWwgcHVia2V5IGlzIG5vdCBwYXJ0IG9mIHRoZSBpbnN0cnVjdGlvbiBkYXRhIOKAlCBUb2tlbi0yMDIyIHRha2VzIGl0XG4gKiBmcm9tIHRoZSBhY2NvbXBhbnlpbmcgVmVyaWZ5UHVia2V5VmFsaWRpdHkgcHJvb2YgY29udGV4dC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWd1cmVDb25maWRlbnRpYWxUcmFuc2ZlckFjY291bnQ7XG4gIHBhcmFtczoge1xuICAgIHRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIG1pbnRBZGRyZXNzOiBzdHJpbmc7XG4gICAgYXV0aG9yaXR5QWRkcmVzczogc3RyaW5nO1xuICAgIC8qKiBJbnN0cnVjdGlvbnMgc3lzdmFyIChpbmxpbmUgcHJvb2YpIG9yIGNvbnRleHQgc3RhdGUgYWNjb3VudCAocHJlLXZlcmlmaWVkIHByb29mKS4gRGVmYXVsdHMgdG8gaW5zdHJ1Y3Rpb25zIHN5c3Zhci4gKi9cbiAgICBpbnN0cnVjdGlvbnNTeXN2YXJPckNvbnRleHRTdGF0ZUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIEFFUy1lbmNyeXB0ZWQgemVybyBiYWxhbmNlICgzNiBieXRlcyBoZXgpLiAqL1xuICAgIGRlY3J5cHRhYmxlWmVyb0JhbGFuY2U6IHN0cmluZztcbiAgICAvKiogTWF4aW11bSBkZXBvc2l0cyArIHRyYW5zZmVycyBiZWZvcmUgQXBwbHlQZW5kaW5nQmFsYW5jZSBpcyByZXF1aXJlZC4gKi9cbiAgICBtYXhpbXVtUGVuZGluZ0JhbGFuY2VDcmVkaXRDb3VudGVyOiBzdHJpbmc7XG4gICAgLyoqIFJlbGF0aXZlIG9mZnNldCB0byB0aGUgVmVyaWZ5UHVia2V5VmFsaWRpdHkgcHJvb2YgaW5zdHJ1Y3Rpb24gKGk4LCBzaWduZWQpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUgYWNjb3VudC4gKi9cbiAgICBwcm9vZkluc3RydWN0aW9uT2Zmc2V0OiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogQXBwbGllcyBwZW5kaW5nIGJhbGFuY2UgdG8gYXZhaWxhYmxlIGJhbGFuY2UuXG4gKlxuICogTGF5b3V0OiBbMjddWzhdICsgZXhwZWN0ZWRfcGVuZGluZ19iYWxhbmNlX2NyZWRpdF9jb3VudGVyKHU2NCkgKyBuZXdfZGVjcnlwdGFibGVfYXZhaWxhYmxlX2JhbGFuY2UoMzYpID0gNDYgYnl0ZXNcbiAqXG4gKiBBY2NvdW50czogW3Rva2VuKHdyaXRhYmxlKSwgYXV0aG9yaXR5KHNpZ25lcildXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbHlQZW5kaW5nQmFsYW5jZSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkFwcGx5UGVuZGluZ0JhbGFuY2U7XG4gIHBhcmFtczoge1xuICAgIHRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogRXhwZWN0ZWQgbnVtYmVyIG9mIHBlbmRpbmcgYmFsYW5jZSBjcmVkaXRzIHNpbmNlIGxhc3QgQXBwbHlQZW5kaW5nQmFsYW5jZS4gKi9cbiAgICBleHBlY3RlZFBlbmRpbmdCYWxhbmNlQ3JlZGl0Q291bnRlcjogc3RyaW5nO1xuICAgIC8qKiBBRVMtZW5jcnlwdGVkIG5ldyBhdmFpbGFibGUgYmFsYW5jZSAoMzYgYnl0ZXMgaGV4KS4gKi9cbiAgICBuZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2U6IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBEZXBvc2l0cyBwdWJsaWMgU1BMIHRva2VucyBpbnRvIGNvbmZpZGVudGlhbCBwZW5kaW5nIGJhbGFuY2UuXG4gKlxuICogTGF5b3V0OiBbMjddWzVdICsgYW1vdW50KHU2NCkgKyBkZWNpbWFscyh1OCkgPSAxMSBieXRlc1xuICpcbiAqIEFjY291bnRzOiBbdG9rZW4od3JpdGFibGUpLCBtaW50LCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWRlbnRpYWxEZXBvc2l0IHtcbiAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuQ29uZmlkZW50aWFsRGVwb3NpdDtcbiAgcGFyYW1zOiB7XG4gICAgdG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBhdXRob3JpdHlBZGRyZXNzOiBzdHJpbmc7XG4gICAgLyoqIEFtb3VudCB0byBkZXBvc2l0IGluIGJhc2UgdW5pdHMuICovXG4gICAgYW1vdW50OiBzdHJpbmc7XG4gICAgLyoqIE51bWJlciBvZiBkZWNpbWFscyBmb3IgdGhlIHRva2VuLiAqL1xuICAgIGRlY2ltYWxzOiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogV2l0aGRyYXdzIHRva2VucyBmcm9tIGNvbmZpZGVudGlhbCBhdmFpbGFibGUgYmFsYW5jZSB0byBwdWJsaWMgYmFsYW5jZS5cbiAqXG4gKiBMYXlvdXQ6IFsyN11bNl0gKyBhbW91bnQodTY0KSArIGRlY2ltYWxzKHU4KSArIG5ld19kZWNyeXB0YWJsZV9hdmFpbGFibGVfYmFsYW5jZSgzNikgKyBlcXVhbGl0eV9wcm9vZl9vZmZzZXQoaTgpICsgcmFuZ2VfcHJvb2Zfb2Zmc2V0KGk4KSA9IDQ5IGJ5dGVzXG4gKlxuICogQWNjb3VudHM6IFt0b2tlbih3cml0YWJsZSksIG1pbnQsIGluc3RydWN0aW9uc1N5c3Zhcj8sIGVxdWFsaXR5Q29udGV4dFN0YXRlPywgcmFuZ2VDb250ZXh0U3RhdGU/LCBhdXRob3JpdHkoc2lnbmVyKV1cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25maWRlbnRpYWxXaXRoZHJhdyB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLkNvbmZpZGVudGlhbFdpdGhkcmF3O1xuICBwYXJhbXM6IHtcbiAgICB0b2tlbkFkZHJlc3M6IHN0cmluZztcbiAgICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogSW5zdHJ1Y3Rpb25zIHN5c3ZhciBhZGRyZXNzIChpZiBwcm9vZnMgYXJlIGlubGluZSkuIE9taXQgaWYgdXNpbmcgY29udGV4dCBzdGF0ZSBhY2NvdW50cy4gKi9cbiAgICBpbnN0cnVjdGlvbnNTeXN2YXJBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBFcXVhbGl0eSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBSYW5nZSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIHJhbmdlUHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBBbW91bnQgdG8gd2l0aGRyYXcgaW4gYmFzZSB1bml0cy4gKi9cbiAgICBhbW91bnQ6IHN0cmluZztcbiAgICAvKiogTnVtYmVyIG9mIGRlY2ltYWxzIGZvciB0aGUgdG9rZW4uICovXG4gICAgZGVjaW1hbHM6IG51bWJlcjtcbiAgICAvKiogQUVTLWVuY3J5cHRlZCBuZXcgYXZhaWxhYmxlIGJhbGFuY2UgYWZ0ZXIgd2l0aGRyYXdhbCAoMzYgYnl0ZXMgaGV4KS4gKi9cbiAgICBuZXdEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2U6IHN0cmluZztcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUNpcGhlcnRleHRDb21taXRtZW50RXF1YWxpdHkgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZJbnN0cnVjdGlvbk9mZnNldDogbnVtYmVyO1xuICAgIC8qKiBSZWxhdGl2ZSBvZmZzZXQgdG8gVmVyaWZ5QmF0Y2hlZFJhbmdlUHJvb2ZVNjQgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIHJhbmdlUHJvb2ZJbnN0cnVjdGlvbk9mZnNldDogbnVtYmVyO1xuICB9O1xufVxuXG4vKipcbiAqIFRyYW5zZmVycyB0b2tlbnMgY29uZmlkZW50aWFsbHkgYmV0d2VlbiB0d28gYWNjb3VudHMuXG4gKlxuICogTGF5b3V0OiBbMjddWzddICsgbmV3X3NvdXJjZV9kZWNyeXB0YWJsZSgzNikgKyBhdWRpdG9yX2N0X2xvKDY0KSArIGF1ZGl0b3JfY3RfaGkoNjQpICsgZXFfb2Zmc2V0KGk4KSArIHZhbGlkaXR5X29mZnNldChpOCkgKyByYW5nZV9vZmZzZXQoaTgpID0gMTY5IGJ5dGVzXG4gKlxuICogQWNjb3VudHM6IFtzb3VyY2Uod3JpdGFibGUpLCBtaW50LCBkZXN0KHdyaXRhYmxlKSwgaW5zdHJ1Y3Rpb25zU3lzdmFyPywgZXFDdHg/LCB2YWxpZGl0eUN0eD8sIHJhbmdlQ3R4PywgYXV0aG9yaXR5KHNpZ25lcildXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29uZmlkZW50aWFsVHJhbnNmZXIge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5Db25maWRlbnRpYWxUcmFuc2ZlcjtcbiAgcGFyYW1zOiB7XG4gICAgc291cmNlVG9rZW5BZGRyZXNzOiBzdHJpbmc7XG4gICAgbWludEFkZHJlc3M6IHN0cmluZztcbiAgICBkZXN0aW5hdGlvblRva2VuQWRkcmVzczogc3RyaW5nO1xuICAgIGF1dGhvcml0eUFkZHJlc3M6IHN0cmluZztcbiAgICAvKiogSW5zdHJ1Y3Rpb25zIHN5c3ZhciBhZGRyZXNzIChpZiBwcm9vZnMgYXJlIGlubGluZSkuIE9taXQgaWYgdXNpbmcgY29udGV4dCBzdGF0ZSBhY2NvdW50cy4gKi9cbiAgICBpbnN0cnVjdGlvbnNTeXN2YXJBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBFcXVhbGl0eSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIGVxdWFsaXR5UHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBDaXBoZXJ0ZXh0IHZhbGlkaXR5IHByb29mIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgcHJlLXZlcmlmaWVkKS4gT21pdCBpZiB1c2luZyBpbmxpbmUgcHJvb2YuICovXG4gICAgY2lwaGVydGV4dFZhbGlkaXR5UHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBSYW5nZSBwcm9vZiBjb250ZXh0IHN0YXRlIGFjY291bnQgKGlmIHByZS12ZXJpZmllZCkuIE9taXQgaWYgdXNpbmcgaW5saW5lIHByb29mLiAqL1xuICAgIHJhbmdlUHJvb2ZDb250ZXh0U3RhdGVBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBBRVMtZW5jcnlwdGVkIG5ldyBzb3VyY2UgZGVjcnlwdGFibGUgYmFsYW5jZSAoMzYgYnl0ZXMgaGV4KS4gKi9cbiAgICBuZXdTb3VyY2VEZWNyeXB0YWJsZUF2YWlsYWJsZUJhbGFuY2U6IHN0cmluZztcbiAgICAvKiogQXVkaXRvciBFbEdhbWFsIGNpcGhlcnRleHQgZm9yIHRyYW5zZmVyIGFtb3VudCBsb3cgMTYgYml0cyAoNjQgYnl0ZXMgaGV4KS4gKi9cbiAgICB0cmFuc2ZlckFtb3VudEF1ZGl0b3JDaXBoZXJ0ZXh0TG86IHN0cmluZztcbiAgICAvKiogQXVkaXRvciBFbEdhbWFsIGNpcGhlcnRleHQgZm9yIHRyYW5zZmVyIGFtb3VudCBoaWdoIGJpdHMgKDY0IGJ5dGVzIGhleCkuICovXG4gICAgdHJhbnNmZXJBbW91bnRBdWRpdG9yQ2lwaGVydGV4dEhpOiBzdHJpbmc7XG4gICAgLyoqIFJlbGF0aXZlIG9mZnNldCB0byBWZXJpZnlDaXBoZXJ0ZXh0Q29tbWl0bWVudEVxdWFsaXR5IHByb29mIChpOCkuIDAgPSB1c2UgY29udGV4dCBzdGF0ZS4gKi9cbiAgICBlcXVhbGl0eVByb29mSW5zdHJ1Y3Rpb25PZmZzZXQ6IG51bWJlcjtcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUJhdGNoZWRHcm91cGVkQ2lwaGVydGV4dDNIYW5kbGVzVmFsaWRpdHkgcHJvb2YgKGk4KS4gMCA9IHVzZSBjb250ZXh0IHN0YXRlLiAqL1xuICAgIGNpcGhlcnRleHRWYWxpZGl0eVByb29mSW5zdHJ1Y3Rpb25PZmZzZXQ6IG51bWJlcjtcbiAgICAvKiogUmVsYXRpdmUgb2Zmc2V0IHRvIFZlcmlmeUJhdGNoZWRSYW5nZVByb29mVTEyOCBwcm9vZiAoaTgpLiAwID0gdXNlIGNvbnRleHQgc3RhdGUuICovXG4gICAgcmFuZ2VQcm9vZkluc3RydWN0aW9uT2Zmc2V0OiBudW1iZXI7XG4gIH07XG59XG5cbi8vIOKUgOKUgOKUgCB6ay1lbGdhbWFsLXByb29mIHZlcmlmaWNhdGlvbiBpbnRlcmZhY2VzIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuXG4vKipcbiAqIFZlcmlmaWVzIHRoZSB2YWxpZGl0eSBvZiBhbiBFbEdhbWFsIHB1YmtleSAodXNlZCB3aXRoIENvbmZpZ3VyZUFjY291bnQpLlxuICpcbiAqIERpc2NyaW1pbmF0b3I6IFs0XSArIHByb29mX2RhdGFcbiAqIFByb2dyYW06IHprLWVsZ2FtYWwtcHJvb2ZcbiAqIEFjY291bnRzOiBbXSAoaW5saW5lIHByb29mKSBvciBbY29udGV4dFN0YXRlKHdyaXRhYmxlKSwgYXV0aG9yaXR5XSAoY29udGV4dCBzdGF0ZSlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWZXJpZnlQdWJrZXlWYWxpZGl0eSB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVB1YmtleVZhbGlkaXR5O1xuICBwYXJhbXM6IHtcbiAgICAvKiogUHJvb2YgZGF0YSBhcyBoZXggc3RyaW5nIChpbmxpbmUgcHJvb2YpLiBJZiBvbWl0dGVkLCB1c2VzIGNvbnRleHQgc3RhdGUgYWNjb3VudCArIG9mZnNldC4gKi9cbiAgICBwcm9vZkRhdGE/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYWNjb3VudCBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUFjY291bnRBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBDb250ZXh0IHN0YXRlIGF1dGhvcml0eSBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUF1dGhvcml0eUFkZHJlc3M/OiBzdHJpbmc7XG4gIH07XG59XG5cbi8qKlxuICogVmVyaWZpZXMgY2lwaGVydGV4dC1jb21taXRtZW50IGVxdWFsaXR5IHByb29mICh1c2VkIHdpdGggVHJhbnNmZXIgYW5kIFdpdGhkcmF3KS5cbiAqXG4gKiBEaXNjcmltaW5hdG9yOiBbM10gKyBwcm9vZl9kYXRhIG9yIFszXSArIG9mZnNldCh1MzIpXG4gKiBQcm9ncmFtOiB6ay1lbGdhbWFsLXByb29mXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZ5RXF1YWxpdHlQcm9vZiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeUVxdWFsaXR5UHJvb2Y7XG4gIHBhcmFtczoge1xuICAgIC8qKiBQcm9vZiBkYXRhIGFzIGhleCBzdHJpbmcgKGlubGluZSBwcm9vZikuIElmIG9taXR0ZWQsIHVzZXMgY29udGV4dCBzdGF0ZSBhY2NvdW50ICsgb2Zmc2V0LiAqL1xuICAgIHByb29mRGF0YT86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhY2NvdW50IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQWNjb3VudEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYXV0aG9yaXR5IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogT2Zmc2V0IGludG8gY29udGV4dCBzdGF0ZSBhY2NvdW50IChpZiB1c2luZyBjb250ZXh0IHN0YXRlKS4gKi9cbiAgICBvZmZzZXQ/OiBudW1iZXI7XG4gIH07XG59XG5cbi8qKlxuICogVmVyaWZpZXMgYmF0Y2hlZCBncm91cGVkIGNpcGhlcnRleHQgMy1oYW5kbGVzIHZhbGlkaXR5IHByb29mICh1c2VkIHdpdGggVHJhbnNmZXIpLlxuICpcbiAqIERpc2NyaW1pbmF0b3I6IFsxMl0gKyBwcm9vZl9kYXRhIG9yIFsxMl0gKyBvZmZzZXQodTMyKVxuICogUHJvZ3JhbTogemstZWxnYW1hbC1wcm9vZlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVZhbGlkaXR5UHJvb2Yge1xuICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5WZXJpZnlWYWxpZGl0eVByb29mO1xuICBwYXJhbXM6IHtcbiAgICAvKiogUHJvb2YgZGF0YSBhcyBoZXggc3RyaW5nIChpbmxpbmUgcHJvb2YpLiBJZiBvbWl0dGVkLCB1c2VzIGNvbnRleHQgc3RhdGUgYWNjb3VudCArIG9mZnNldC4gKi9cbiAgICBwcm9vZkRhdGE/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYWNjb3VudCBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUFjY291bnRBZGRyZXNzPzogc3RyaW5nO1xuICAgIC8qKiBDb250ZXh0IHN0YXRlIGF1dGhvcml0eSBhZGRyZXNzIChpZiBwcmUtdmVyaWZpZWQgcHJvb2YpLiAqL1xuICAgIGNvbnRleHRTdGF0ZUF1dGhvcml0eUFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIE9mZnNldCBpbnRvIGNvbnRleHQgc3RhdGUgYWNjb3VudCAoaWYgdXNpbmcgY29udGV4dCBzdGF0ZSkuICovXG4gICAgb2Zmc2V0PzogbnVtYmVyO1xuICB9O1xufVxuXG4vKipcbiAqIFZlcmlmaWVzIGJhdGNoZWQgcmFuZ2UgcHJvb2YgVTEyOCAodXNlZCB3aXRoIFRyYW5zZmVyKS5cbiAqXG4gKiBEaXNjcmltaW5hdG9yOiBbN10gKyBwcm9vZl9kYXRhIG9yIFs3XSArIG9mZnNldChpMzIpXG4gKiBQcm9ncmFtOiB6ay1lbGdhbWFsLXByb29mXG4gKiBBY2NvdW50czogW10gKGlubGluZSBwcm9vZikgb3IgW2NvbnRleHRTdGF0ZSh3cml0YWJsZSksIGF1dGhvcml0eV0gKGNvbnRleHQgc3RhdGUpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmVyaWZ5UmFuZ2VQcm9vZiB7XG4gIHR5cGU6IEluc3RydWN0aW9uQnVpbGRlclR5cGVzLlZlcmlmeVJhbmdlUHJvb2Y7XG4gIHBhcmFtczoge1xuICAgIC8qKiBQcm9vZiBkYXRhIGFzIGhleCBzdHJpbmcgKGlubGluZSBwcm9vZikuIElmIG9taXR0ZWQsIHVzZXMgY29udGV4dCBzdGF0ZSBhY2NvdW50ICsgb2Zmc2V0LiAqL1xuICAgIHByb29mRGF0YT86IHN0cmluZztcbiAgICAvKiogQ29udGV4dCBzdGF0ZSBhY2NvdW50IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQWNjb3VudEFkZHJlc3M/OiBzdHJpbmc7XG4gICAgLyoqIENvbnRleHQgc3RhdGUgYXV0aG9yaXR5IGFkZHJlc3MgKGlmIHByZS12ZXJpZmllZCBwcm9vZikuICovXG4gICAgY29udGV4dFN0YXRlQXV0aG9yaXR5QWRkcmVzcz86IHN0cmluZztcbiAgICAvKiogT2Zmc2V0IGludG8gY29udGV4dCBzdGF0ZSBhY2NvdW50IChpZiB1c2luZyBjb250ZXh0IHN0YXRlKS4gKi9cbiAgICBvZmZzZXQ/OiBudW1iZXI7XG4gIH07XG59XG5cbmV4cG9ydCBjbGFzcyBUb2tlbkFzc29jaWF0ZVJlY2lwaWVudCB7XG4gIG93bmVyQWRkcmVzczogc3RyaW5nO1xuICB0b2tlbk5hbWU6IHN0cmluZztcbiAgYXRhQWRkcmVzcz86IHN0cmluZztcbiAgdG9rZW5BZGRyZXNzPzogc3RyaW5nO1xuICBwcm9ncmFtSWQ/OiBzdHJpbmc7XG59XG4iXX0=
|