@bitgo/sdk-core 37.9.0 → 37.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -1
- package/dist/src/bitgo/address-book/address-book.js +16 -5
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +9 -0
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
- package/dist/src/bitgo/environments.js +2 -2
- package/dist/src/bitgo/internal/keycard.d.ts.map +1 -1
- package/dist/src/bitgo/internal/keycard.js +4 -5
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +7 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +31 -3
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +13 -3
- package/dist/test/unit/bitgo/address-book/address-book.d.ts +2 -0
- package/dist/test/unit/bitgo/address-book/address-book.d.ts.map +1 -0
- package/dist/test/unit/bitgo/address-book/address-book.js +159 -0
- package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.js +84 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -222,7 +222,7 @@ const mainnetBase = {
|
|
|
222
222
|
baseUrl: 'https://unichain.blockscout.com/api',
|
|
223
223
|
},
|
|
224
224
|
hoodeth: {
|
|
225
|
-
baseUrl: 'https://
|
|
225
|
+
baseUrl: 'https://robinhoodchain.blockscout.com/api',
|
|
226
226
|
},
|
|
227
227
|
hppeth: {
|
|
228
228
|
baseUrl: 'https://explorer.hpp.io/api',
|
|
@@ -554,4 +554,4 @@ exports.Environments = {
|
|
|
554
554
|
stellarFederationServerUrl: 'https://app.bitgo-dev.com/api/v2/txlm/federation',
|
|
555
555
|
}),
|
|
556
556
|
};
|
|
557
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1SGEsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBcUJILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7Q0FDYixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDZCQUE2QjtJQUMvQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxtQkFBbUIsRUFBRSwwQkFBMEI7SUFDL0MsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxjQUFjLEVBQUUsNkJBQTZCO0lBQzdDLGVBQWUsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWE7SUFDMUMsa0JBQWtCLEVBQUUsNkJBQTZCO0lBQ2pELG1CQUFtQixFQUFF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cmsgfSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk/OiBzdHJpbmc7XG4gIG5ldHdvcms6IFYxTmV0d29yaztcbiAgc2lnbmluZ0FkZHJlc3M6IHN0cmluZztcbiAgc2VydmVyWHB1Yjogc3RyaW5nO1xuICBoc21YcHViOiBzdHJpbmc7XG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5CYXNlVXJsOiBzdHJpbmc7XG4gIGV0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBhdmF4Y05ldHdvcmtCYXNlVXJsOiBzdHJpbmc7XG4gIGV0aDJFeHBsb3JlckJhc2VVcmw6IHN0cmluZztcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogc3RyaW5nO1xuICBwb2x5Z29uc2NhbkJhc2VVcmw/OiBzdHJpbmc7XG4gIGJzY3NjYW5CYXNlVXJsPzogc3RyaW5nO1xuICBic2NzY2FuQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHBvbHlnb25zY2FuQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGFwZWNoYWluRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgYXBlY2hhaW5FeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIGFyYmlzY2FuQmFzZVVybD86IHN0cmluZztcbiAgYXJiaXNjYW5BcGlUb2tlbj86IHN0cmluZztcbiAgb2FzRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgb2FzRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBvcHRpbWlzdGljRXRoZXJzY2FuQmFzZVVybD86IHN0cmluZztcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICB6a3N5bmNFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHprc3luY0V4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGJlcmFFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIGJlcmFFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBiYXNlZXRoRXhwbG9yZXJVcmw/OiBzdHJpbmc7XG4gIGJhc2VldGhBcGlUb2tlbj86IHN0cmluZztcbiAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw/OiBzdHJpbmc7XG4gIGVvc05vZGVVcmxzOiBzdHJpbmdbXTtcbiAgbmVhck5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgc29sTm9kZVVybDogc3RyaW5nO1xuICBzb2xBbGNoZW15Tm9kZVVybDogc3RyaW5nO1xuICBhZGFOb2RlVXJsOiBzdHJpbmc7XG4gIGhhc2hOb2RlVXJsOiBzdHJpbmc7XG4gIGluak5vZGVVcmw6IHN0cmluZztcbiAgYXRvbU5vZGVVcmw6IHN0cmluZztcbiAgb3Ntb05vZGVVcmw6IHN0cmluZztcbiAgdGlhTm9kZVVybDogc3RyaW5nO1xuICBzZWlOb2RlVXJsOiBzdHJpbmc7XG4gIGJsZE5vZGVVcmw6IHN0cmluZztcbiAgYmVyYU5vZGVVcmw6IHN0cmluZztcbiAgemV0YU5vZGVVcmw6IHN0cmluZztcbiAgY29yZXVtTm9kZVVybDogc3RyaW5nO1xuICBydW5lTm9kZVVybDogc3RyaW5nO1xuICBiYWJ5Tm9kZVVybDogc3RyaW5nO1xuICBtYW50cmFOb2RlVXJsOiBzdHJpbmc7XG4gIGNyb25vc05vZGVVcmw6IHN0cmluZztcbiAgaW5pdGlhTm9kZVVybDogc3RyaW5nO1xuICBhc2lOb2RlVXJsOiBzdHJpbmc7XG4gIGlzbG1Ob2RlVXJsOiBzdHJpbmc7XG4gIGRvdE5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgc3Vic3RyYXRlTm9kZVVybHM6IHN0cmluZ1tdO1xuICBwb2x5bWVzaE5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogc3RyaW5nO1xuICAgIHNvbGlkaXR5OiBzdHJpbmc7XG4gIH07XG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogYm9vbGVhbjtcbiAgdG9uTm9kZVVybDogc3RyaW5nO1xuICBzdWlOb2RlVXJsOiBzdHJpbmc7XG4gIGlvdGFOb2RlVXJsOiBzdHJpbmc7XG4gIGV0Y05vZGVVcmw6IHN0cmluZztcbiAgY29yZWRhb0V4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgY29yZWRhb0V4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHhkY0V4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgeGRjRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgZmxyRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBmbHJFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzZ2JFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHNnYkV4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGljcE5vZGVVcmw6IHN0cmluZztcbiAga2FzcGFOb2RlVXJsOiBzdHJpbmc7XG4gIHN0YXJrbmV0Tm9kZVVybDogc3RyaW5nO1xuICBoeXBlckxpcXVpZE5vZGVVcmw6IHN0cmluZztcbiAgd2VtaXhFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHdlbWl4RXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgbW9uRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBtb25FeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICB3b3JsZEV4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgd29ybGRFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzb21uaWFFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHNvbW5pYUV4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHNvbmVpdW1FeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHNvbmVpdW1FeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzdHhOb2RlVXJsOiBzdHJpbmc7XG4gIHZldE5vZGVVcmw6IHN0cmluZztcbiAgLy8gVGhlIGtleSBoZXJlIGlzIGNvaW5OYW1lIGFuZCBpdCB3aWxsIGJlIHNhbWUgZm9yIGJvdGggbWFpbm5ldCBhbmQgdGVzdG5ldCAoZWc6ICdwaHJzJylcbiAgZXZtPzoge1xuICAgIFtrZXk6IHN0cmluZ106IHtcbiAgICAgIGJhc2VVcmw6IHN0cmluZztcbiAgICAgIGFwaVRva2VuPzogc3RyaW5nO1xuICAgICAgcnBjVXJsPzogc3RyaW5nO1xuICAgICAgdG9rZW5JZD86IG51bWJlcjtcbiAgICAgIHN5c3RlbUFkZHI/OiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgLy8gVGhlIGtleSBoZXJlIGlzIGNvaW5GYW1pbHkgYW5kIGl0IHdpbGwgYmUgc2FtZSBmb3IgYm90aCBtYWlubmV0IGFuZCB0ZXN0bmV0IChlZzogJ2Nyb25vcycpXG4gIGNvc21vcz86IHtcbiAgICBba2V5OiBzdHJpbmddOiB7XG4gICAgICBub2RlVXJsOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgeHR6RXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICB4dHpScGNVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52aXJvbm1lbnQgZXh0ZW5kcyBFbnZpcm9ubWVudFRlbXBsYXRlIHtcbiAgdXJpOiBzdHJpbmc7XG4gIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBoYXJkY29kZWRQdWJsaWNLZXlzID0gT2JqZWN0LmZyZWV6ZSh7XG4gIHNlcnZlclhwdWI6IHtcbiAgICBwcm9kOiAneHB1YjY2MU15TXdBcVJiY0V0VWd1OUhGOGFpNGlwdVZLS0hCelVxa3M0alNGeXBXOGR3d1FMMXp5Z0xnUXg5OU5tQzd6Skp6blNpd0tHNlJRZlZqQUtNdENzeDhWalI2a1FXOHg3SHJrWEZaZG5RJyxcbiAgICB0ZXN0OiAneHB1YjY2MU15TXdBcVJiY0VyRnFWWEdpVUZ2OVllb1BiaE43MlVpTkNVZGo5bmozVDZNOGg3aUtObWJDWXBNVldWWlA3TEEybWEzSFdjUG5nejFnUlRtNEZQZHRtOW1IZnJOdlU5M01Db3N6c0dMJyxcbiAgfSxcbiAgaHNtWHB1Yjoge1xuICAgIHByb2Q6ICd4cHViNjYxTXlNd0FxUmJjR0V0VEZnTUFveE1Gb3FzUmREYWlhUjYzYnlOZlpkVjdjQlpGdm92UVNOSjVicHllb1F0dUtWZ1hCazZzRlE3VHR2eVdxYWR0NDFEbkt3dmVZZ001S29VMkVLWWpkWTInLFxuICAgIHRlc3Q6ICd4cHViNjYxTXlNd0FxUmJjR0ZLZTRCcXZrNFNncmljNGdORkM4cFVidzR0VWtWalp4dWJqQ0E1MjJnUHpjMVlhWGIzYlFWbURXYzdDakc4QUdOV1JwY2RBVTM4UkVUQmg4bjJibnFFVTRrYlY0b0snLFxuICAgIGRldjogJ3hwdWI2NjFNeU13QXFSYmNGV3pvejhxbllSRFlFRlFwUExZd3hWRm9HNldMeTNjazVadXBSR0pURzRqdTZ5R2I3RGozZXk2R3NDNGtzdExSRVIybkt6Z2pMdG14eVBnQzR6SHk3a1ZoVXQ2eWZHbicsXG4gIH0sXG59KTtcblxuZXhwb3J0IHR5cGUgRW52aXJvbm1lbnROYW1lID1cbiAgfCAncHJvZCdcbiAgfCAnc3RhZ2luZydcbiAgfCAndGVzdCdcbiAgfCAnZGV2J1xuICB8ICdsb2NhbCdcbiAgfCAnbG9jYWxOb25TZWN1cmUnXG4gIHwgJ21vY2snXG4gIHwgJ2FkbWluUHJvZCdcbiAgfCAnYWRtaW5UZXN0J1xuICB8ICdhZG1pblN0YWdpbmcnXG4gIHwgJ2FkbWluRGV2J1xuICB8ICdjdXN0b20nXG4gIHwgJ2JyYW5jaCc7XG5cbmV4cG9ydCB0eXBlIEFsaWFzRW52aXJvbm1lbnROYW1lID0gJ3Byb2R1Y3Rpb24nIHwgJ21zUHJvZCcgfCAnbXNUZXN0JyB8ICdtc0Rldic7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50cyA9IHsgW2sgaW4gRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnQgfTtcblxuLy8gYWxpYXMgZW52aXJvbm1lbnRzIGFyZSBlbnZpcm9ubWVudCBuYW1lcyB3aGljaCBhcmUgYWxpYXNlcyBvZiBhIHN1cHBvcnRlZCBlbnZpcm9ubWVudFxuZXhwb3J0IGNvbnN0IEFsaWFzRW52aXJvbm1lbnRzOiB7IFtrIGluIEFsaWFzRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnROYW1lIH0gPSB7XG4gIHByb2R1Y3Rpb246ICdwcm9kJyxcbiAgbXNQcm9kOiAncHJvZCcsXG4gIG1zVGVzdDogJ3Rlc3QnLFxuICBtc0RldjogJ2RldicsXG59O1xuXG5jb25zdCBtYWlubmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ2JpdGNvaW4nIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICcxQml0R28zZ3hSWjZtUVNFSDUyZHZDS1NVZ1ZDQUg0UmphJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnByb2QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5wcm9kLFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vYXBpJyxcbiAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBhdmF4Y05ldHdvcmtCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuYXZheC5uZXR3b3JrJyxcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBic2NzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGJzY3NjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuQlNDX0FQSV9UT0tFTixcbiAgcG9seWdvbnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgcG9seWdvbnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuUE9MWUdPTlNDQU5fQVBJX1RPS0VOLFxuICBhcmJpc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBhcmJpc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5BUkJJU0NBTl9BUElfVE9LRU4sXG4gIG9wdGltaXN0aWNFdGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5PUFRJTUlTVElDX0VUSEVSU0NBTl9BUElfVE9LRU4sXG4gIHprc3luY0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmxvY2stZXhwbG9yZXItYXBpLm1haW5uZXQuemtzeW5jLmlvJyxcbiAgemtzeW5jRXhwbG9yZXJBcGlUb2tlbjogcHJvY2Vzcy5lbnYuWktTWU5DX0VYUExPUkVSX0FQSV9UT0tFTixcbiAgYmFzZWV0aEV4cGxvcmVyVXJsOiAnaHR0cHM6Ly9hcGkuYmFzZXNjYW4ub3JnJywgLy9CYXNlRVRIIGV4cGxvcmVyIGFwaSB1cmxcbiAgYmFzZWV0aEFwaVRva2VuOiBwcm9jZXNzLmVudi5CQVNFU0NBTl9BUElfVE9LRU4sXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8vYnAuY3J5cHRvbGlvbnMuaW8nLCAnaHR0cHM6Ly9hcGkuZW9zbmV3eW9yay5pbycsICdodHRwczovL2FwaS5lb3NkZXRyb2l0LmlvJ10sXG4gIG5lYXJOb2RlVXJsczogWydodHRwczovL2FwaS5mYXN0bmVhci5jb20nXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLm1haW5uZXQtYmV0YS5zb2xhbmEuY29tJyxcbiAgc29sQWxjaGVteU5vZGVVcmw6ICdodHRwczovL3NvbGFuYS1tYWlubmV0LmcuYWxjaGVteS5jb20vdjInLFxuICBhZGFOb2RlVXJsOiAnaHR0cHM6Ly9hcGkua29pb3MucmVzdC9hcGkvdjEnLFxuICBoYXNoTm9kZVVybDogJ2h0dHBzOi8vYXBpLnByb3ZlbmFuY2UuaW8nLFxuICBpbmpOb2RlVXJsOiAnaHR0cHM6Ly9zZW50cnkubGNkLmluamVjdGl2ZS5uZXR3b3JrJywgLy8gcmVmZXJlbmNlIGh0dHBzOi8vZG9jcy5pbmplY3RpdmUubmV0d29yay9kZXZlbG9wL3B1YmxpYy1lbmRwb2ludHMvXG4gIGF0b21Ob2RlVXJsOiAnaHR0cHM6Ly9yZXN0LmNvc21vcy5kaXJlY3RvcnkvY29zbW9zaHViLycsXG4gIG9zbW9Ob2RlVXJsOiAnaHR0cHM6Ly9sY2Qub3Ntb3Npcy56b25lJyxcbiAgdGlhTm9kZVVybDogJ2h0dHBzOi8vcHVibGljLWNlbGVzdGlhLWxjZC5udW1pYS54eXonLCAvLyByZWZlcmVuY2UgaHR0cHM6Ly9kb2NzLmNlbGVzdGlhLm9yZy9ub2Rlcy9tYWlubmV0I2FwaS1lbmRwb2ludHNcbiAgc2VpTm9kZVVybDogJ2h0dHBzOi8vc2VpLWFwaS5wb2xrYWNodS5jb20nLFxuICBibGROb2RlVXJsOiAnaHR0cHM6Ly9hZ29yaWMtYXBpLnBvbGthY2h1LmNvbScsXG4gIGJlcmFOb2RlVXJsOiAnJywgLy8gVE9ETyhXSU4tNjkzKTogdXBkYXRlIHVybCB3aGVuIG1haW5uZXQgZ29lcyBsaXZlXG4gIHpldGFOb2RlVXJsOiAnaHR0cHM6Ly96ZXRhY2hhaW4uYmxvY2twaS5uZXR3b3JrJywgLy8gcmVmZXJlbmNlIGh0dHBzOi8vd3d3LnpldGFjaGFpbi5jb20vZG9jcy9yZWZlcmVuY2UvYXBpL1xuICBjb3JldW1Ob2RlVXJsOiAnaHR0cHM6Ly9mdWxsLW5vZGUubWFpbm5ldC0xLmNvcmV1bS5kZXY6MTMxNycsXG4gIHJ1bmVOb2RlVXJsOiAnaHR0cHM6Ly90aG9ybm9kZS5uaW5lcmVhbG1zLmNvbScsXG4gIGJhYnlOb2RlVXJsOiAnaHR0cHM6Ly9iYWJ5bG9uLm5vZGVzLmd1cnUvYXBpLycsXG4gIGlzbG1Ob2RlVXJsOiAnaHR0cHM6Ly9yZXN0LmNvc21vcy5oYXFxLm5ldHdvcmsnLFxuICBtYW50cmFOb2RlVXJsOiAnaHR0cHM6Ly9tYW50cmEtcmVzdC5wdWJsaWNub2RlLmNvbS8nLFxuICBjcm9ub3NOb2RlVXJsOiAnaHR0cHM6Ly9jcm9ub3MtcG9zLXJlc3QucHVibGljbm9kZS5jb20vJyxcbiAgaW5pdGlhTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5pbml0aWEueHl6LycsXG4gIGFzaU5vZGVVcmw6ICdodHRwczovL3Jlc3QtZmV0Y2hodWIuZmV0Y2guYWkvJyxcbiAgZG90Tm9kZVVybHM6IFsnd3NzOi8vYXNzZXQtaHViLXBvbGthZG90LXJwYy5uLmR3ZWxsaXIuY29tJ10sXG4gIHN1YnN0cmF0ZU5vZGVVcmxzOiBbJ3dzczovL2VudHJ5cG9pbnQtZmlubmV5Lm9wZW50ZW5zb3IuYWknXSxcbiAgcG9seW1lc2hOb2RlVXJsczogWyd3c3M6Ly9tYWlubmV0LXJwYy5wb2x5bWVzaC5uZXR3b3JrJ10sXG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6ICdodHRwczovL2FwaS50cm9uZ3JpZC5pbycsXG4gICAgc29saWRpdHk6ICdodHRwczovL2FwaS50cm9uZ3JpZC5pbycsXG4gIH0sXG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogdHJ1ZSxcbiAgdG9uTm9kZVVybDogJ2h0dHBzOi8vdG9uY2VudGVyLmNvbS9hcGkvdjIvanNvblJQQycsXG4gIHN1aU5vZGVVcmw6ICdodHRwczovL2Z1bGxub2RlLm1haW5uZXQuc3VpLmlvJyxcbiAgaW90YU5vZGVVcmw6ICdodHRwczovL2FwaS5tYWlubmV0LmlvdGEuY2FmZScsXG4gIGV0Y05vZGVVcmw6ICdodHRwczovL2V0Yy5ibG9ja3Njb3V0LmNvbScsXG4gIGNvcmVkYW9FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL29wZW5hcGkuY29yZWRhby5vcmcnLFxuICBvYXNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLm9hc3lzLmdhbWVzJyxcbiAgZmxyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9mbGFyZS1leHBsb3Jlci5mbGFyZS5uZXR3b3JrJyxcbiAgeGRjRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgd2VtaXhFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBzZ2JFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL3NvbmdiaXJkLWV4cGxvcmVyLmZsYXJlLm5ldHdvcmsnLFxuICBldm06IHtcbiAgICBhYnN0cmFjdGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmFic2Nhbi5vcmcvYXBpJyxcbiAgICB9LFxuICAgIGFwZWNoYWluOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICAgIGNoaWxpejoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmNoaWxpc2Nhbi5jb20nLFxuICAgIH0sXG4gICAgY29kZXhldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLmNvZGV4Lnh5ei9hcGknLFxuICAgIH0sXG4gICAgcGhyczoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5kcGxhYnMtaW50ZXJuYWwuY29tJywgLy8gVE9ETzogV0lOLTU3ODcgYWRkIG1haW5uZXQgdXJsIHdoZW4gaXRzIGF2YWlsYWJsZVxuICAgIH0sXG4gICAgY3RjOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9jcmVkaXRjb2luLmJsb2Nrc2NvdXQuY29tJyxcbiAgICB9LFxuICAgIGh5cGVldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgICAgLy8gVGhlc2UgYXJlIHVzZWQgZm9yIEJyaWRnaW5nIGFzc2V0cyBvbiBoeXBlIGNoYWluLlxuICAgICAgdG9rZW5JZDogMTUwLFxuICAgICAgc3lzdGVtQWRkcjogJzB4MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMicsXG4gICAgfSxcbiAgICBvZzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vY2hhaW5zY2FuLjBnLmFpL29wZW4nLFxuICAgIH0sXG4gICAgeHBsOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkucm91dGVzY2FuLmlvL3YyL25ldHdvcmsvbWFpbm5ldC9ldm0vOTc0NS9ldGhlcnNjYW4nLFxuICAgIH0sXG4gICAgc29uaWM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgdXNkdDA6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3N0YWJsZXNjYW4ueHl6L2FwaScsXG4gICAgfSxcbiAgICBzZWlldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAga2FpYToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC1vYXBpLmthaWFzY2FuLmlvJyxcbiAgICB9LFxuICAgIGthdmFldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS52ZXJpZnkubWludHNjYW4uaW8vZXZtL2FwaS8weDhhZScsXG4gICAgfSxcbiAgICBpcnlzOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9ldm0tZXhwbG9yZXIuaXJ5cy54eXovYXBpJyxcbiAgICB9LFxuICAgIG1vbjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBsaW5lYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBpcDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vd3d3LnN0b3J5c2Nhbi5pbycsXG4gICAgfSxcbiAgICBzb21pOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9tYWlubmV0LnNvbW5pYS53M3VzLnNpdGUnLFxuICAgIH0sXG4gICAgYmFzZWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBvcGJuYjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgICBhcGlUb2tlbjogcHJvY2Vzcy5lbnYuRVRIRVJTQ0FOX0FQSV9UT0tFTixcbiAgICB9LFxuICAgIGZhbnRvbToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIuZmFudG9tLm5ldHdvcmsnLFxuICAgICAgcnBjVXJsOiAnaHR0cHM6Ly9ycGNhcGkuZmFudG9tLm5ldHdvcmsvJyxcbiAgICB9LFxuICAgIHh0emV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIuZXRoZXJsaW5rLmNvbS9hcGknLFxuICAgIH0sXG4gICAgZ2FzZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9uZW94c2Nhbi5uZ2QubmV0d29yay9hcGknLFxuICAgIH0sXG4gICAgZmxvdzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXZtLmZsb3dzY2FuLmlvJyxcbiAgICB9LFxuICAgIHBsdW1lOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5wbHVtZS5vcmcnLFxuICAgIH0sXG4gICAgbWVnYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5tZWdhZXRoLmNvbS9ycGMnLFxuICAgIH0sXG4gICAgaGJhcmV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5taXJyb3Jub2RlLmhlZGVyYS5jb20vYXBpL3YxJyxcbiAgICAgIHJwY1VybDogJ2h0dHBzOi8vbWFpbm5ldC5oYXNoaW8uaW8vYXBpJyxcbiAgICB9LFxuICAgIHNjcm9sbGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnNjcm9sbHNjYW4uY29tL2FwaScsXG4gICAgfSxcbiAgICBoZW1pZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5oZW1pLnh5ei9hcGknLFxuICAgIH0sXG4gICAga2F0YW5hZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9rYXRhbmFzY2FuLmNvbS9hcGknLFxuICAgIH0sXG4gICAgaW5rZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5pbmtvbmNoYWluLmNvbS9hcGknLFxuICAgIH0sXG4gICAgcHJpdmlkaXVtZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5wcml2aWRpdW0uemtzeW5jLmRldi9hcGknLCAvLyBUT0RPOiB1cGRhdGUgd2l0aCBtYWlubmV0IFVSTCB3aGVuIGF2YWlsYWJsZVxuICAgIH0sXG4gICAgZmx1ZW50ZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9mbHVlbnRzY2FuLnh5ei9hcGkvJyxcbiAgICB9LFxuICAgIG1hbnRsZToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLm1hbnRsZXNjYW4ueHl6L2FwaScsXG4gICAgfSxcbiAgICBqb3ZheWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnphbi50b3Avbm9kZS92MS9qb3ZheS9tYWlubmV0LycsXG4gICAgfSxcbiAgICBva2J4bGF5ZXI6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3d3dy5va2xpbmsuY29tL2FwaS92NS9leHBsb3Jlci9ibG9jay9ibG9jay1saXN0P2NoYWluU2hvcnROYW1lPXhsYXllcicsXG4gICAgfSxcbiAgICBtb3JwaDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXItYXBpLWhvb2RpLm1vcnBobDIuaW8nLCAvLyBUT0RPOiBXSU4tODEzNCBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIG1vcnBoZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5tb3JwaC5uZXR3b3JrLycsXG4gICAgfSxcbiAgICBkb2dlb3M6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc2NvdXQudGVzdG5ldC5kb2dlb3MuY29tJywgLy9UT0RPOiBXSU4tODA4MiA9PiBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIGFyY3VzZGM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLmFyYy5pby9hcGknLCAvLyBXSU4tODg0NCA9PiBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIHhkYzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICB6a3N5bmNlcmE6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgdW5pZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly91bmljaGFpbi5ibG9ja3Njb3V0LmNvbS9hcGknLFxuICAgIH0sXG4gICAgaG9vZGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vOGNydjR2bXE2dGl1MXlxci5ibG9ja3Njb3V0LmNvbS9hcGknLFxuICAgIH0sXG4gICAgaHBwZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5ocHAuaW8vYXBpJyxcbiAgICB9LFxuICAgIGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2h1bWFuaXR5LW1haW5uZXQuZXhwbG9yZXIuYWxjaGVteS5jb20vYXBpJyxcbiAgICB9LFxuICAgIGJvYmE6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5yb3V0ZXNjYW4uaW8vdjIvbmV0d29yay9tYWlubmV0L2V2bS8yODgvZXRoZXJzY2FuL2FwaScsXG4gICAgfSxcbiAgICB0ZW1wbzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVtcG8tbWFpbm5ldC5nLmFsY2hlbXkuY29tL3YyLycsXG4gICAgfSxcbiAgfSxcbiAgaWNwTm9kZVVybDogJ2h0dHBzOi8vaWMwLmFwcCcsXG4gIGthc3BhTm9kZVVybDogJ2h0dHBzOi8vYXBpLmthc3BhLm9yZycsXG4gIHN0YXJrbmV0Tm9kZVVybDogJ2h0dHBzOi8vc3RhcmtuZXQtbWFpbm5ldC1ycGMucHVibGljbm9kZS5jb20vJyxcbiAgaHlwZXJMaXF1aWROb2RlVXJsOiAnaHR0cHM6Ly9hcGkuaHlwZXJsaXF1aWQueHl6JyxcbiAgd29ybGRFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL3dvcmxkc2Nhbi5vcmcvJyxcbiAgc29tbmlhRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9tYWlubmV0LnNvbW5pYS53M3VzLnNpdGUvJyxcbiAgc29uZWl1bUV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vc29uZWl1bS5ibG9ja3Njb3V0LmNvbScsXG4gIG1vbkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIHN0eE5vZGVVcmw6ICdodHRwczovL2FwaS5oaXJvLnNvJyxcbiAgdmV0Tm9kZVVybDogJ2h0dHBzOi8vc3luYy1tYWlubmV0LnZlY2hhaW4ub3JnJyxcbiAgeHR6RXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkudHprdC5pbycsXG4gIHh0elJwY1VybDogJ2h0dHBzOi8vcnBjLnR6a3QuaW8vbWFpbm5ldCcsXG59O1xuXG5jb25zdCB0ZXN0bmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ3Rlc3RuZXQnIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICdtc2lnbkJkRlh0ZWVoREVnQjZETm03bnBSdDdBY0VaSlAzJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gIGF2YXhjTmV0d29ya0Jhc2VVcmw6ICdodHRwczovL2FwaS5hdmF4LXRlc3QubmV0d29yaycsXG4gIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6ICdodHRwczovL21haW5uZXQuZXRoZXJldW1wb3cub3JnJyxcbiAgcG9seWdvbnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgcG9seWdvbnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuUE9MWUdPTlNDQU5fQVBJX1RPS0VOLFxuICBic2NzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGJzY3NjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuQlNDX0FQSV9UT0tFTixcbiAgYXJiaXNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgYXJiaXNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuQVJCSVNDQU5fQVBJX1RPS0VOLFxuICBvcHRpbWlzdGljRXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIG9wdGltaXN0aWNFdGhlcnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuT1BUSU1JU1RJQ19FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICB6a3N5bmNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2NrLWV4cGxvcmVyLWFwaS5zZXBvbGlhLnprc3luYy5kZXYnLFxuICB6a3N5bmNFeHBsb3JlckFwaVRva2VuOiBwcm9jZXNzLmVudi5aS1NZTkNfRVhQTE9SRVJfQVBJX1RPS0VOLFxuICBiYXNlZXRoRXhwbG9yZXJVcmw6ICdodHRwczovL2FwaS1zZXBvbGlhLmJhc2VzY2FuLm9yZycsXG4gIGJhc2VldGhBcGlUb2tlbjogcHJvY2Vzcy5lbnYuQkFTRVNDQU5fQVBJX1RPS0VOLFxuICAvLyBreWxpbiBlb3MgZW5kcG9pbnRzIGZvdW5kIGhlcmVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2NyeXB0b2t5bGluL0NyeXB0b0t5bGluLVRlc3RuZXQjaHR0cC1hcGktbGlzdFxuICAvLyBodHRwczovL2RvY3MubGlxdWlkYXBwcy5pby9saXF1aWRhcHBzLWRvY3VtZW50YXRpb24vZW9zaW8tZ3VpZGVzL3Rlc3RuZXQtY3JlYXRpb24tZ3VpZGVzL2NyZWF0aW5nLWNyeXB0b2t5bGluLWFjY291bnQjc2V0dXBcbiAgZW9zTm9kZVVybHM6IFsnaHR0cHM6Ly9reWxpbi5lb3NuLmlvJywgJ2h0dHBzOi8vYXBpLmt5bGluLmFsb2hhZW9zLmNvbSddLFxuICBuZWFyTm9kZVVybHM6IFsnaHR0cHM6Ly90ZXN0LnJwYy5mYXN0bmVhci5jb20nXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgc29sQWxjaGVteU5vZGVVcmw6ICdodHRwczovL3NvbGFuYS1kZXZuZXQuZy5hbGNoZW15LmNvbS92MicsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL3ByZXByb2Qua29pb3MucmVzdC9hcGkvdjEnLFxuICBoYXNoTm9kZVVybDogJ2h0dHBzOi8vYXBpLnRlc3QucHJvdmVuYW5jZS5pbycsXG4gIGluak5vZGVVcmw6ICdodHRwczovL3Rlc3RuZXQuc2VudHJ5LmxjZC5pbmplY3RpdmUubmV0d29yaycsIC8vIENPSU4tMTIxOSA6IHJlZmVyZW5jZSAgaHR0cHM6Ly9kb2NzLmluamVjdGl2ZS5uZXR3b3JrL2RldmVsb3AvcHVibGljLWVuZHBvaW50cy8jdGVzdG5ldFxuICBhdG9tTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5wcm92aWRlci1zZW50cnktMDIuaWNzLXRlc3RuZXQucG9seXBvcmUueHl6LycsXG4gIG9zbW9Ob2RlVXJsOiAnaHR0cHM6Ly9sY2Qub3Ntb3Rlc3Q1Lm9zbW9zaXMuem9uZScsXG4gIHRpYU5vZGVVcmw6ICdodHRwczovL2FwaS1tb2NoYS5wb3BzLm9uZScsXG4gIHNlaU5vZGVVcmw6ICdodHRwczovL3Jlc3QuYXRsYW50aWMtMi5zZWluZXR3b3JrLmlvJyxcbiAgYmxkTm9kZVVybDogJ2h0dHBzOi8vZGV2bmV0LmFwaS5hZ29yaWMubmV0JyxcbiAgYmVyYU5vZGVVcmw6ICcnLCAvLyBUT0RPKFdJTi02OTMpOiB1cGRhdGUgdXJsIHdoZW4gdGVzdG5ldCBnb2VzIGxpdmVcbiAgemV0YU5vZGVVcmw6ICdodHRwczovL3Jlc3Qubm9kZWp1bXBlci5pby96ZXRhY2hhaW50ZXN0bmV0JywgLy8gcmVmZXJlbmNlIDogaHR0cHM6Ly93d3cuemV0YWNoYWluLmNvbS9kb2NzL3JlZmVyZW5jZS9hcGkvXG4gIGNvcmV1bU5vZGVVcmw6ICdodHRwczovL2Z1bGwtbm9kZS50ZXN0bmV0LTEuY29yZXVtLmRldjoxMzE3JyxcbiAgcnVuZU5vZGVVcmw6ICdodHRwczovL3N0YWdlbmV0LXRob3Jub2RlLm5pbmVyZWFsbXMuY29tJyxcbiAgYmFieU5vZGVVcmw6ICdodHRwczovL2JhYnlsb24tdGVzdG5ldC1hcGkubm9kZXMuZ3VydS8nLFxuICBpc2xtTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5jb3Ntb3MudGVzdGVkZ2UyLmhhcXEubmV0d29yayAnLFxuICBtYW50cmFOb2RlVXJsOiAnaHR0cHM6Ly9tYW50cmEtdGVzdG5ldC1yZXN0LnB1YmxpY25vZGUuY29tLycsXG4gIGNyb25vc05vZGVVcmw6ICdodHRwczovL3Rlc3RuZXQtY3JvZXNlaWQtNC5jcnlwdG8ub3JnOjEzMTcvJyxcbiAgaW5pdGlhTm9kZVVybDogJ2h0dHBzOi8vcmVzdC50ZXN0bmV0LmluaXRpYS54eXovJyxcbiAgYXNpTm9kZVVybDogJ2h0dHBzOi8vcmVzdC1kb3JhZG8uZmV0Y2guYWkvJyxcbiAgZG90Tm9kZVVybHM6IFsnd3NzOi8vYXNzZXQtaHViLXdlc3RlbmQtcnBjLm4uZHdlbGxpci5jb20nXSxcbiAgc3Vic3RyYXRlTm9kZVVybHM6IFsnd3NzOi8vdGVzdC5maW5uZXkub3BlbnRlbnNvci5haSddLFxuICBwb2x5bWVzaE5vZGVVcmxzOiBbJ3dzczovL3Rlc3RuZXQtcnBjLnBvbHltZXNoLmxpdmUnXSxcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogJ2h0dHBzOi8vYXBpLnNoYXN0YS50cm9uZ3JpZC5pbycsXG4gICAgc29saWRpdHk6ICdodHRwczovL2FwaS5zaGFzdGEudHJvbmdyaWQuaW8nLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IGZhbHNlLFxuICB0b25Ob2RlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LnRvbmNlbnRlci5jb20vYXBpL3YyL2pzb25SUEMnLFxuICBzdWlOb2RlVXJsOiAnaHR0cHM6Ly9mdWxsbm9kZS50ZXN0bmV0LnN1aS5pbycsXG4gIGlvdGFOb2RlVXJsOiAnaHR0cHM6Ly9hcGkudGVzdG5ldC5pb3RhLmNhZmUnLFxuICBldGNOb2RlVXJsOiAnaHR0cHM6Ly9ldGMtbW9yZG9yLmJsb2Nrc2NvdXQuY29tJyxcbiAgY29yZWRhb0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLnRlc3QyLmJ0Y3MubmV0d29yaycsXG4gIG9hc0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIudGVzdG5ldC5vYXN5cy5nYW1lcycsXG4gIHdlbWl4RXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgZmxyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9jb3N0b24yLWV4cGxvcmVyLmZsYXJlLm5ldHdvcmsnLFxuICB4ZGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBzZ2JFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Nvc3Rvbi1leHBsb3Jlci5mbGFyZS5uZXR3b3JrJyxcbiAgaWNwTm9kZVVybDogJ2h0dHBzOi8vaWMwLmFwcCcsXG4gIGthc3BhTm9kZVVybDogJ2h0dHBzOi8vYXBpLXRuMTAua2FzcGEub3JnJyxcbiAgc3RhcmtuZXROb2RlVXJsOiAnaHR0cHM6Ly9zdGFya25ldC1zZXBvbGlhLXJwYy5wdWJsaWNub2RlLmNvbS8nLFxuICBoeXBlckxpcXVpZE5vZGVVcmw6ICdodHRwczovL2FwaS5oeXBlcmxpcXVpZC10ZXN0bmV0Lnh5eicsXG4gIG1vbkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIHdvcmxkRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9zZXBvbGlhLndvcmxkc2Nhbi5vcmcvJyxcbiAgc29tbmlhRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9zaGFubm9uLWV4cGxvcmVyLnNvbW5pYS5uZXR3b3JrLycsXG4gIHNvbmVpdW1FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL3NvbmVpdW0tbWluYXRvLmJsb2Nrc2NvdXQuY29tJyxcbiAgZXZtOiB7XG4gICAgYWJzdHJhY3RldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5zZXBvbGlhLmFic2Nhbi5vcmcvYXBpJyxcbiAgICB9LFxuICAgIGFwZWNoYWluOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICAgIGNoaWxpejoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnRlc3RuZXQuY2hpbGlzY2FuLmNvbScsXG4gICAgfSxcbiAgICBjb2RleGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIuY29kZXgtc3RnLnh5ei9hcGknLFxuICAgIH0sXG4gICAgcGhyczoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5kcGxhYnMtaW50ZXJuYWwuY29tJywgLy8gV3JvbmcgdmFsdWUsIE5vdCBhdmFpbGFibGUgeWV0XG4gICAgfSxcbiAgICBjdGM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2NyZWRpdGNvaW4tdGVzdG5ldC5ibG9ja3Njb3V0LmNvbScsXG4gICAgfSxcbiAgICBoeXBlZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9ycGMuaHlwZXJsaXF1aWQtdGVzdG5ldC54eXovZXZtJywgLy8gTm90IEF2YWlsYWJsZVxuICAgICAgLy8gVGhlc2UgYXJlIHVzZWQgZm9yIEJyaWRnaW5nIGFzc2V0cyBvbiBoeXBlIGNoYWluLlxuICAgICAgdG9rZW5JZDogMTEwNSxcbiAgICAgIHN5c3RlbUFkZHI6ICcweDIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjInLFxuICAgIH0sXG4gICAgb2c6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2NoYWluc2Nhbi10ZXN0LjBnLmFpL29wZW4nLFxuICAgIH0sXG4gICAgeHBsOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkucm91dGVzY2FuLmlvL3YyL25ldHdvcmsvdGVzdG5ldC9ldm0vOTc0Nl81L2V0aGVyc2NhbicsXG4gICAgfSxcbiAgICBzb25pYzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICB1c2R0MDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5zdGFibGVzY2FuLnh5ei9hcGknLFxuICAgIH0sXG4gICAgc2VpZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICAgIGthaWE6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2thaXJvcy1vYXBpLmthaWFzY2FuLmlvJyxcbiAgICB9LFxuICAgIGthdmFldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS52ZXJpZnkubWludHNjYW4uaW8vZXZtL2FwaS8weDhhZCcsXG4gICAgfSxcbiAgICBpcnlzOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9pbnN0LTEuY2xvdWQuYmxvY2tzY291dC5jb20vYXBpJyxcbiAgICB9LFxuICAgIG1vbjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBsaW5lYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBpcDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYWVuZWlkLnN0b3J5c2Nhbi5pbycsXG4gICAgfSxcbiAgICB0YmFzZWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICB0b3BibmI6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgICAgYXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gICAgfSxcbiAgICB4dHpldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3NoYWRvd25ldC5leHBsb3Jlci5ldGhlcmxpbmsuY29tL2FwaScsXG4gICAgfSxcbiAgICB0Z2FzZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9uZW94dDRzY2FuLm5nZC5uZXR3b3JrL2FwaScsXG4gICAgfSxcbiAgICBmbG93OiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9ldm0tdGVzdG5ldC5mbG93c2Nhbi5pbycsXG4gICAgfSxcbiAgICBtZWdhZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9jYXJyb3QubWVnYWV0aC5jb20vcnBjJyxcbiAgICB9LFxuICAgIHBsdW1lOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LWV4cGxvcmVyLnBsdW1lLm9yZycsXG4gICAgfSxcbiAgICBoYmFyZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0Lm1pcnJvcm5vZGUuaGVkZXJhLmNvbS9hcGkvdjEnLFxuICAgICAgcnBjVXJsOiAnaHR0cHM6Ly90ZXN0bmV0Lmhhc2hpby5pby9hcGknLFxuICAgIH0sXG4gICAgdHNjcm9sbGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLXNlcG9saWEuc2Nyb2xsc2Nhbi5jb20vYXBpJyxcbiAgICB9LFxuICAgIGhlbWlldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3Rlc3RuZXQuZXhwbG9yZXIuaGVtaS54eXovYXBpJyxcbiAgICB9LFxuICAgIHRrYXRhbmFldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLWJva3V0by5rYXRhbmFycGMuY29tL2FwaScsXG4gICAgfSxcbiAgICB0aW5rZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci1zZXBvbGlhLmlua29uY2hhaW4uY29tL2FwaScsXG4gICAgfSxcbiAgICBwcml2aWRpdW1ldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLnRlc3RuZXQtcHJpdmlkaXVtLnprc3luYy5kZXYvYXBpJyxcbiAgICB9LFxuICAgIGZsdWVudGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5mbHVlbnRzY2FuLnh5ei9hcGkvJyxcbiAgICB9LFxuICAgIG1hbnRsZToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLXNlcG9saWEubWFudGxlc2Nhbi54eXovYXBpJyxcbiAgICB9LFxuICAgIGpvdmF5ZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuemFuLnRvcC9ub2RlL3YxL2pvdmF5L3Rlc3RuZXQvJyxcbiAgICB9LFxuICAgIG9rYnhsYXllcjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vd3d3Lm9rbGluay5jb20vYXBpL3Y1L2V4cGxvcmVyL2Jsb2NrL2Jsb2NrLWxpc3Q/Y2hhaW5TaG9ydE5hbWU9eGxheWVyX3Rlc3RuZXQnLFxuICAgIH0sXG4gICAgbW9ycGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLWFwaS1ob29kaS5tb3JwaGwyLmlvJyxcbiAgICB9LFxuICAgIG1vcnBoZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci1ob29kaS5tb3JwaC5uZXR3b3JrLycsXG4gICAgfSxcbiAgICBkb2dlb3M6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc2NvdXQudGVzdG5ldC5kb2dlb3MuY29tJyxcbiAgICB9LFxuICAgIGFyY3VzZGM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3Rlc3RuZXQuYXJjc2Nhbi5hcHAvYXBpJywgLy8gV0lOLTg4NDQgPT4gYWRkIG1haW5uZXQgdXJsIHdoZW4gYXZhaWxhYmxlXG4gICAgfSxcbiAgICB4ZGM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgemtzeW5jZXJhOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICAgIHVuaWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdW5pY2hhaW4tc2Vwb2xpYS5ibG9ja3Njb3V0LmNvbS9hcGknLFxuICAgIH0sXG4gICAgaG9vZGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIudGVzdG5ldC5jaGFpbi5yb2Jpbmhvb2QuY29tL2FwaScsXG4gICAgfSxcbiAgICBocHBldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3NlcG9saWEtZXhwbG9yZXIuaHBwLmlvL2FwaScsXG4gICAgfSxcbiAgICBoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9odW1hbml0eS10ZXN0bmV0LmV4cGxvcmVyLmFsY2hlbXkuY29tL2FwaScsXG4gICAgfSxcbiAgICBib2JhOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkucm91dGVzY2FuLmlvL3YyL25ldHdvcmsvdGVzdG5ldC9ldm0vMjg4ODIvZXRoZXJzY2FuL2FwaScsXG4gICAgfSxcbiAgICB0ZW1wbzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVtcG8tbW9kZXJhdG8uZy5hbGNoZW15LmNvbS92Mi8nLFxuICAgIH0sXG4gIH0sXG4gIHN0eE5vZGVVcmw6ICdodHRwczovL2FwaS50ZXN0bmV0Lmhpcm8uc28nLFxuICB2ZXROb2RlVXJsOiAnaHR0cHM6Ly9zeW5jLXRlc3RuZXQudmVjaGFpbi5vcmcnLFxuICB4dHpFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5naG9zdG5ldC50emt0LmlvJyxcbiAgeHR6UnBjVXJsOiAnaHR0cHM6Ly9ycGMudHprdC5pby9naG9zdG5ldCcsXG59O1xuXG5jb25zdCBkZXZCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLmRldixcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBmYWxzZSxcbn0pO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVkZWNsYXJlXG5leHBvcnQgY29uc3QgRW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudHMgPSB7XG4gIHByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIHN0YWdpbmc6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28tc3RhZ2luZy5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tc3RhZ2luZy5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBsb2NhbDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9sb2NhbGhvc3Q6MzAwMC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxvY2FsTm9uU2VjdXJlOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIG1vY2s6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2JpdGdvLmZha2V1cmwnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9iaXRnby5mYWtldXJsL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICAgIGV0aGVyc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS1ob29kaS5ldGhlcnNjYW4uZmFrZXVybCcsXG4gICAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gICAgYXZheGNOZXR3b3JrQmFzZVVybDogJ2h0dHBzOi8vYXBpLmF2YXgtdGVzdC5uZXR3b3JrLmZha2V1cmwnLFxuICAgIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIH0pLFxuICBhZG1pblByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGFkbWluVGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tZGV2LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pblN0YWdpbmc6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby1zdGFnaW5nLmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLXN0YWdpbmcuY29tL2FwaS92Mi94bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBjdXN0b206IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICB1cmk6IHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSSEsXG4gICAgbmV0d29yazogcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyBhcyBWMU5ldHdvcmssXG4gICAgaHNtWHB1YjpcbiAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgPyBoYXJkY29kZWRQdWJsaWNLZXlzLmhzbVhwdWIucHJvZCA6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICAgIGJ0Y0V4cGxvcmVyQmFzZVVybDpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9CSVRDT0lOX05FVFdPUksgIT09ICdiaXRjb2luJ1xuICAgICAgICA/ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknXG4gICAgICAgIDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICAgIGV0aGVyc2NhbkJhc2VVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fRVRIRVJFVU1fTkVUV09SSyAhPT0gJ2V0aGVyZXVtJ1xuICAgICAgICA/ICdodHRwczovL2FwaS1ob29kaS5ldGhlcnNjYW4uaW8nXG4gICAgICAgIDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pbycsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fU1RFTExBUl9ORVRXT1JLICE9PSAnc3RlbGxhcidcbiAgICAgICAgPyBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbmBcbiAgICAgICAgOiBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3hsbS9mZWRlcmF0aW9uYCxcbiAgICBzZXJ2ZXJYcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3RcbiAgICAgICAgOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgfSksXG4gIGJyYW5jaDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG59O1xuIl19
|
|
557
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUF1SGEsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBcUJILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7Q0FDYixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDZCQUE2QjtJQUMvQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxtQkFBbUIsRUFBRSwwQkFBMEI7SUFDL0MsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxjQUFjLEVBQUUsNkJBQTZCO0lBQzdDLGVBQWUsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWE7SUFDMUMsa0JBQWtCLEVBQUUsNkJBQTZCO0lBQ2pELG1CQUFtQixFQUFF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cmsgfSBmcm9tICcuL3R5cGVzJztcblxuaW50ZXJmYWNlIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk/OiBzdHJpbmc7XG4gIG5ldHdvcms6IFYxTmV0d29yaztcbiAgc2lnbmluZ0FkZHJlc3M6IHN0cmluZztcbiAgc2VydmVyWHB1Yjogc3RyaW5nO1xuICBoc21YcHViOiBzdHJpbmc7XG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5CYXNlVXJsOiBzdHJpbmc7XG4gIGV0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBhdmF4Y05ldHdvcmtCYXNlVXJsOiBzdHJpbmc7XG4gIGV0aDJFeHBsb3JlckJhc2VVcmw6IHN0cmluZztcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogc3RyaW5nO1xuICBwb2x5Z29uc2NhbkJhc2VVcmw/OiBzdHJpbmc7XG4gIGJzY3NjYW5CYXNlVXJsPzogc3RyaW5nO1xuICBic2NzY2FuQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHBvbHlnb25zY2FuQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGFwZWNoYWluRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgYXBlY2hhaW5FeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIGFyYmlzY2FuQmFzZVVybD86IHN0cmluZztcbiAgYXJiaXNjYW5BcGlUb2tlbj86IHN0cmluZztcbiAgb2FzRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgb2FzRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBvcHRpbWlzdGljRXRoZXJzY2FuQmFzZVVybD86IHN0cmluZztcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICB6a3N5bmNFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHprc3luY0V4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGJlcmFFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIGJlcmFFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBiYXNlZXRoRXhwbG9yZXJVcmw/OiBzdHJpbmc7XG4gIGJhc2VldGhBcGlUb2tlbj86IHN0cmluZztcbiAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw/OiBzdHJpbmc7XG4gIGVvc05vZGVVcmxzOiBzdHJpbmdbXTtcbiAgbmVhck5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgc29sTm9kZVVybDogc3RyaW5nO1xuICBzb2xBbGNoZW15Tm9kZVVybDogc3RyaW5nO1xuICBhZGFOb2RlVXJsOiBzdHJpbmc7XG4gIGhhc2hOb2RlVXJsOiBzdHJpbmc7XG4gIGluak5vZGVVcmw6IHN0cmluZztcbiAgYXRvbU5vZGVVcmw6IHN0cmluZztcbiAgb3Ntb05vZGVVcmw6IHN0cmluZztcbiAgdGlhTm9kZVVybDogc3RyaW5nO1xuICBzZWlOb2RlVXJsOiBzdHJpbmc7XG4gIGJsZE5vZGVVcmw6IHN0cmluZztcbiAgYmVyYU5vZGVVcmw6IHN0cmluZztcbiAgemV0YU5vZGVVcmw6IHN0cmluZztcbiAgY29yZXVtTm9kZVVybDogc3RyaW5nO1xuICBydW5lTm9kZVVybDogc3RyaW5nO1xuICBiYWJ5Tm9kZVVybDogc3RyaW5nO1xuICBtYW50cmFOb2RlVXJsOiBzdHJpbmc7XG4gIGNyb25vc05vZGVVcmw6IHN0cmluZztcbiAgaW5pdGlhTm9kZVVybDogc3RyaW5nO1xuICBhc2lOb2RlVXJsOiBzdHJpbmc7XG4gIGlzbG1Ob2RlVXJsOiBzdHJpbmc7XG4gIGRvdE5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgc3Vic3RyYXRlTm9kZVVybHM6IHN0cmluZ1tdO1xuICBwb2x5bWVzaE5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogc3RyaW5nO1xuICAgIHNvbGlkaXR5OiBzdHJpbmc7XG4gIH07XG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogYm9vbGVhbjtcbiAgdG9uTm9kZVVybDogc3RyaW5nO1xuICBzdWlOb2RlVXJsOiBzdHJpbmc7XG4gIGlvdGFOb2RlVXJsOiBzdHJpbmc7XG4gIGV0Y05vZGVVcmw6IHN0cmluZztcbiAgY29yZWRhb0V4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgY29yZWRhb0V4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHhkY0V4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgeGRjRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgZmxyRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBmbHJFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzZ2JFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHNnYkV4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGljcE5vZGVVcmw6IHN0cmluZztcbiAga2FzcGFOb2RlVXJsOiBzdHJpbmc7XG4gIHN0YXJrbmV0Tm9kZVVybDogc3RyaW5nO1xuICBoeXBlckxpcXVpZE5vZGVVcmw6IHN0cmluZztcbiAgd2VtaXhFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHdlbWl4RXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgbW9uRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBtb25FeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICB3b3JsZEV4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgd29ybGRFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzb21uaWFFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHNvbW5pYUV4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHNvbmVpdW1FeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHNvbmVpdW1FeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzdHhOb2RlVXJsOiBzdHJpbmc7XG4gIHZldE5vZGVVcmw6IHN0cmluZztcbiAgLy8gVGhlIGtleSBoZXJlIGlzIGNvaW5OYW1lIGFuZCBpdCB3aWxsIGJlIHNhbWUgZm9yIGJvdGggbWFpbm5ldCBhbmQgdGVzdG5ldCAoZWc6ICdwaHJzJylcbiAgZXZtPzoge1xuICAgIFtrZXk6IHN0cmluZ106IHtcbiAgICAgIGJhc2VVcmw6IHN0cmluZztcbiAgICAgIGFwaVRva2VuPzogc3RyaW5nO1xuICAgICAgcnBjVXJsPzogc3RyaW5nO1xuICAgICAgdG9rZW5JZD86IG51bWJlcjtcbiAgICAgIHN5c3RlbUFkZHI/OiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgLy8gVGhlIGtleSBoZXJlIGlzIGNvaW5GYW1pbHkgYW5kIGl0IHdpbGwgYmUgc2FtZSBmb3IgYm90aCBtYWlubmV0IGFuZCB0ZXN0bmV0IChlZzogJ2Nyb25vcycpXG4gIGNvc21vcz86IHtcbiAgICBba2V5OiBzdHJpbmddOiB7XG4gICAgICBub2RlVXJsOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbiAgeHR6RXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICB4dHpScGNVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52aXJvbm1lbnQgZXh0ZW5kcyBFbnZpcm9ubWVudFRlbXBsYXRlIHtcbiAgdXJpOiBzdHJpbmc7XG4gIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBoYXJkY29kZWRQdWJsaWNLZXlzID0gT2JqZWN0LmZyZWV6ZSh7XG4gIHNlcnZlclhwdWI6IHtcbiAgICBwcm9kOiAneHB1YjY2MU15TXdBcVJiY0V0VWd1OUhGOGFpNGlwdVZLS0hCelVxa3M0alNGeXBXOGR3d1FMMXp5Z0xnUXg5OU5tQzd6Skp6blNpd0tHNlJRZlZqQUtNdENzeDhWalI2a1FXOHg3SHJrWEZaZG5RJyxcbiAgICB0ZXN0OiAneHB1YjY2MU15TXdBcVJiY0VyRnFWWEdpVUZ2OVllb1BiaE43MlVpTkNVZGo5bmozVDZNOGg3aUtObWJDWXBNVldWWlA3TEEybWEzSFdjUG5nejFnUlRtNEZQZHRtOW1IZnJOdlU5M01Db3N6c0dMJyxcbiAgfSxcbiAgaHNtWHB1Yjoge1xuICAgIHByb2Q6ICd4cHViNjYxTXlNd0FxUmJjR0V0VEZnTUFveE1Gb3FzUmREYWlhUjYzYnlOZlpkVjdjQlpGdm92UVNOSjVicHllb1F0dUtWZ1hCazZzRlE3VHR2eVdxYWR0NDFEbkt3dmVZZ001S29VMkVLWWpkWTInLFxuICAgIHRlc3Q6ICd4cHViNjYxTXlNd0FxUmJjR0ZLZTRCcXZrNFNncmljNGdORkM4cFVidzR0VWtWalp4dWJqQ0E1MjJnUHpjMVlhWGIzYlFWbURXYzdDakc4QUdOV1JwY2RBVTM4UkVUQmg4bjJibnFFVTRrYlY0b0snLFxuICAgIGRldjogJ3hwdWI2NjFNeU13QXFSYmNGV3pvejhxbllSRFlFRlFwUExZd3hWRm9HNldMeTNjazVadXBSR0pURzRqdTZ5R2I3RGozZXk2R3NDNGtzdExSRVIybkt6Z2pMdG14eVBnQzR6SHk3a1ZoVXQ2eWZHbicsXG4gIH0sXG59KTtcblxuZXhwb3J0IHR5cGUgRW52aXJvbm1lbnROYW1lID1cbiAgfCAncHJvZCdcbiAgfCAnc3RhZ2luZydcbiAgfCAndGVzdCdcbiAgfCAnZGV2J1xuICB8ICdsb2NhbCdcbiAgfCAnbG9jYWxOb25TZWN1cmUnXG4gIHwgJ21vY2snXG4gIHwgJ2FkbWluUHJvZCdcbiAgfCAnYWRtaW5UZXN0J1xuICB8ICdhZG1pblN0YWdpbmcnXG4gIHwgJ2FkbWluRGV2J1xuICB8ICdjdXN0b20nXG4gIHwgJ2JyYW5jaCc7XG5cbmV4cG9ydCB0eXBlIEFsaWFzRW52aXJvbm1lbnROYW1lID0gJ3Byb2R1Y3Rpb24nIHwgJ21zUHJvZCcgfCAnbXNUZXN0JyB8ICdtc0Rldic7XG5cbmV4cG9ydCB0eXBlIEVudmlyb25tZW50cyA9IHsgW2sgaW4gRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnQgfTtcblxuLy8gYWxpYXMgZW52aXJvbm1lbnRzIGFyZSBlbnZpcm9ubWVudCBuYW1lcyB3aGljaCBhcmUgYWxpYXNlcyBvZiBhIHN1cHBvcnRlZCBlbnZpcm9ubWVudFxuZXhwb3J0IGNvbnN0IEFsaWFzRW52aXJvbm1lbnRzOiB7IFtrIGluIEFsaWFzRW52aXJvbm1lbnROYW1lXTogRW52aXJvbm1lbnROYW1lIH0gPSB7XG4gIHByb2R1Y3Rpb246ICdwcm9kJyxcbiAgbXNQcm9kOiAncHJvZCcsXG4gIG1zVGVzdDogJ3Rlc3QnLFxuICBtc0RldjogJ2RldicsXG59O1xuXG5jb25zdCBtYWlubmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ2JpdGNvaW4nIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICcxQml0R28zZ3hSWjZtUVNFSDUyZHZDS1NVZ1ZDQUg0UmphJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnByb2QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5wcm9kLFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vYXBpJyxcbiAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBhdmF4Y05ldHdvcmtCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuYXZheC5uZXR3b3JrJyxcbiAgZXRoMkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmVhY29uc2Nhbi5jb20vYXBpJyxcbiAgZXRod0Z1bGxOb2RlUlBDQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5ldGhlcmV1bXBvdy5vcmcnLFxuICBic2NzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGJzY3NjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuQlNDX0FQSV9UT0tFTixcbiAgcG9seWdvbnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgcG9seWdvbnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuUE9MWUdPTlNDQU5fQVBJX1RPS0VOLFxuICBhcmJpc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBhcmJpc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5BUkJJU0NBTl9BUElfVE9LRU4sXG4gIG9wdGltaXN0aWNFdGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5PUFRJTUlTVElDX0VUSEVSU0NBTl9BUElfVE9LRU4sXG4gIHprc3luY0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmxvY2stZXhwbG9yZXItYXBpLm1haW5uZXQuemtzeW5jLmlvJyxcbiAgemtzeW5jRXhwbG9yZXJBcGlUb2tlbjogcHJvY2Vzcy5lbnYuWktTWU5DX0VYUExPUkVSX0FQSV9UT0tFTixcbiAgYmFzZWV0aEV4cGxvcmVyVXJsOiAnaHR0cHM6Ly9hcGkuYmFzZXNjYW4ub3JnJywgLy9CYXNlRVRIIGV4cGxvcmVyIGFwaSB1cmxcbiAgYmFzZWV0aEFwaVRva2VuOiBwcm9jZXNzLmVudi5CQVNFU0NBTl9BUElfVE9LRU4sXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8vYnAuY3J5cHRvbGlvbnMuaW8nLCAnaHR0cHM6Ly9hcGkuZW9zbmV3eW9yay5pbycsICdodHRwczovL2FwaS5lb3NkZXRyb2l0LmlvJ10sXG4gIG5lYXJOb2RlVXJsczogWydodHRwczovL2FwaS5mYXN0bmVhci5jb20nXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLm1haW5uZXQtYmV0YS5zb2xhbmEuY29tJyxcbiAgc29sQWxjaGVteU5vZGVVcmw6ICdodHRwczovL3NvbGFuYS1tYWlubmV0LmcuYWxjaGVteS5jb20vdjInLFxuICBhZGFOb2RlVXJsOiAnaHR0cHM6Ly9hcGkua29pb3MucmVzdC9hcGkvdjEnLFxuICBoYXNoTm9kZVVybDogJ2h0dHBzOi8vYXBpLnByb3ZlbmFuY2UuaW8nLFxuICBpbmpOb2RlVXJsOiAnaHR0cHM6Ly9zZW50cnkubGNkLmluamVjdGl2ZS5uZXR3b3JrJywgLy8gcmVmZXJlbmNlIGh0dHBzOi8vZG9jcy5pbmplY3RpdmUubmV0d29yay9kZXZlbG9wL3B1YmxpYy1lbmRwb2ludHMvXG4gIGF0b21Ob2RlVXJsOiAnaHR0cHM6Ly9yZXN0LmNvc21vcy5kaXJlY3RvcnkvY29zbW9zaHViLycsXG4gIG9zbW9Ob2RlVXJsOiAnaHR0cHM6Ly9sY2Qub3Ntb3Npcy56b25lJyxcbiAgdGlhTm9kZVVybDogJ2h0dHBzOi8vcHVibGljLWNlbGVzdGlhLWxjZC5udW1pYS54eXonLCAvLyByZWZlcmVuY2UgaHR0cHM6Ly9kb2NzLmNlbGVzdGlhLm9yZy9ub2Rlcy9tYWlubmV0I2FwaS1lbmRwb2ludHNcbiAgc2VpTm9kZVVybDogJ2h0dHBzOi8vc2VpLWFwaS5wb2xrYWNodS5jb20nLFxuICBibGROb2RlVXJsOiAnaHR0cHM6Ly9hZ29yaWMtYXBpLnBvbGthY2h1LmNvbScsXG4gIGJlcmFOb2RlVXJsOiAnJywgLy8gVE9ETyhXSU4tNjkzKTogdXBkYXRlIHVybCB3aGVuIG1haW5uZXQgZ29lcyBsaXZlXG4gIHpldGFOb2RlVXJsOiAnaHR0cHM6Ly96ZXRhY2hhaW4uYmxvY2twaS5uZXR3b3JrJywgLy8gcmVmZXJlbmNlIGh0dHBzOi8vd3d3LnpldGFjaGFpbi5jb20vZG9jcy9yZWZlcmVuY2UvYXBpL1xuICBjb3JldW1Ob2RlVXJsOiAnaHR0cHM6Ly9mdWxsLW5vZGUubWFpbm5ldC0xLmNvcmV1bS5kZXY6MTMxNycsXG4gIHJ1bmVOb2RlVXJsOiAnaHR0cHM6Ly90aG9ybm9kZS5uaW5lcmVhbG1zLmNvbScsXG4gIGJhYnlOb2RlVXJsOiAnaHR0cHM6Ly9iYWJ5bG9uLm5vZGVzLmd1cnUvYXBpLycsXG4gIGlzbG1Ob2RlVXJsOiAnaHR0cHM6Ly9yZXN0LmNvc21vcy5oYXFxLm5ldHdvcmsnLFxuICBtYW50cmFOb2RlVXJsOiAnaHR0cHM6Ly9tYW50cmEtcmVzdC5wdWJsaWNub2RlLmNvbS8nLFxuICBjcm9ub3NOb2RlVXJsOiAnaHR0cHM6Ly9jcm9ub3MtcG9zLXJlc3QucHVibGljbm9kZS5jb20vJyxcbiAgaW5pdGlhTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5pbml0aWEueHl6LycsXG4gIGFzaU5vZGVVcmw6ICdodHRwczovL3Jlc3QtZmV0Y2hodWIuZmV0Y2guYWkvJyxcbiAgZG90Tm9kZVVybHM6IFsnd3NzOi8vYXNzZXQtaHViLXBvbGthZG90LXJwYy5uLmR3ZWxsaXIuY29tJ10sXG4gIHN1YnN0cmF0ZU5vZGVVcmxzOiBbJ3dzczovL2VudHJ5cG9pbnQtZmlubmV5Lm9wZW50ZW5zb3IuYWknXSxcbiAgcG9seW1lc2hOb2RlVXJsczogWyd3c3M6Ly9tYWlubmV0LXJwYy5wb2x5bWVzaC5uZXR3b3JrJ10sXG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6ICdodHRwczovL2FwaS50cm9uZ3JpZC5pbycsXG4gICAgc29saWRpdHk6ICdodHRwczovL2FwaS50cm9uZ3JpZC5pbycsXG4gIH0sXG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogdHJ1ZSxcbiAgdG9uTm9kZVVybDogJ2h0dHBzOi8vdG9uY2VudGVyLmNvbS9hcGkvdjIvanNvblJQQycsXG4gIHN1aU5vZGVVcmw6ICdodHRwczovL2Z1bGxub2RlLm1haW5uZXQuc3VpLmlvJyxcbiAgaW90YU5vZGVVcmw6ICdodHRwczovL2FwaS5tYWlubmV0LmlvdGEuY2FmZScsXG4gIGV0Y05vZGVVcmw6ICdodHRwczovL2V0Yy5ibG9ja3Njb3V0LmNvbScsXG4gIGNvcmVkYW9FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL29wZW5hcGkuY29yZWRhby5vcmcnLFxuICBvYXNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLm9hc3lzLmdhbWVzJyxcbiAgZmxyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9mbGFyZS1leHBsb3Jlci5mbGFyZS5uZXR3b3JrJyxcbiAgeGRjRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgd2VtaXhFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBzZ2JFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL3NvbmdiaXJkLWV4cGxvcmVyLmZsYXJlLm5ldHdvcmsnLFxuICBldm06IHtcbiAgICBhYnN0cmFjdGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmFic2Nhbi5vcmcvYXBpJyxcbiAgICB9LFxuICAgIGFwZWNoYWluOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICAgIGNoaWxpejoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmNoaWxpc2Nhbi5jb20nLFxuICAgIH0sXG4gICAgY29kZXhldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLmNvZGV4Lnh5ei9hcGknLFxuICAgIH0sXG4gICAgcGhyczoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5kcGxhYnMtaW50ZXJuYWwuY29tJywgLy8gVE9ETzogV0lOLTU3ODcgYWRkIG1haW5uZXQgdXJsIHdoZW4gaXRzIGF2YWlsYWJsZVxuICAgIH0sXG4gICAgY3RjOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9jcmVkaXRjb2luLmJsb2Nrc2NvdXQuY29tJyxcbiAgICB9LFxuICAgIGh5cGVldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgICAgLy8gVGhlc2UgYXJlIHVzZWQgZm9yIEJyaWRnaW5nIGFzc2V0cyBvbiBoeXBlIGNoYWluLlxuICAgICAgdG9rZW5JZDogMTUwLFxuICAgICAgc3lzdGVtQWRkcjogJzB4MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMicsXG4gICAgfSxcbiAgICBvZzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vY2hhaW5zY2FuLjBnLmFpL29wZW4nLFxuICAgIH0sXG4gICAgeHBsOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkucm91dGVzY2FuLmlvL3YyL25ldHdvcmsvbWFpbm5ldC9ldm0vOTc0NS9ldGhlcnNjYW4nLFxuICAgIH0sXG4gICAgc29uaWM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgdXNkdDA6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3N0YWJsZXNjYW4ueHl6L2FwaScsXG4gICAgfSxcbiAgICBzZWlldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAga2FpYToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC1vYXBpLmthaWFzY2FuLmlvJyxcbiAgICB9LFxuICAgIGthdmFldm06IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS52ZXJpZnkubWludHNjYW4uaW8vZXZtL2FwaS8weDhhZScsXG4gICAgfSxcbiAgICBpcnlzOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9ldm0tZXhwbG9yZXIuaXJ5cy54eXovYXBpJyxcbiAgICB9LFxuICAgIG1vbjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBsaW5lYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBpcDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vd3d3LnN0b3J5c2Nhbi5pbycsXG4gICAgfSxcbiAgICBzb21pOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9tYWlubmV0LnNvbW5pYS53M3VzLnNpdGUnLFxuICAgIH0sXG4gICAgYmFzZWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBvcGJuYjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgICBhcGlUb2tlbjogcHJvY2Vzcy5lbnYuRVRIRVJTQ0FOX0FQSV9UT0tFTixcbiAgICB9LFxuICAgIGZhbnRvbToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIuZmFudG9tLm5ldHdvcmsnLFxuICAgICAgcnBjVXJsOiAnaHR0cHM6Ly9ycGNhcGkuZmFudG9tLm5ldHdvcmsvJyxcbiAgICB9LFxuICAgIHh0emV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIuZXRoZXJsaW5rLmNvbS9hcGknLFxuICAgIH0sXG4gICAgZ2FzZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9uZW94c2Nhbi5uZ2QubmV0d29yay9hcGknLFxuICAgIH0sXG4gICAgZmxvdzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXZtLmZsb3dzY2FuLmlvJyxcbiAgICB9LFxuICAgIHBsdW1lOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5wbHVtZS5vcmcnLFxuICAgIH0sXG4gICAgbWVnYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5tZWdhZXRoLmNvbS9ycGMnLFxuICAgIH0sXG4gICAgaGJhcmV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5taXJyb3Jub2RlLmhlZGVyYS5jb20vYXBpL3YxJyxcbiAgICAgIHJwY1VybDogJ2h0dHBzOi8vbWFpbm5ldC5oYXNoaW8uaW8vYXBpJyxcbiAgICB9LFxuICAgIHNjcm9sbGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnNjcm9sbHNjYW4uY29tL2FwaScsXG4gICAgfSxcbiAgICBoZW1pZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5oZW1pLnh5ei9hcGknLFxuICAgIH0sXG4gICAga2F0YW5hZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9rYXRhbmFzY2FuLmNvbS9hcGknLFxuICAgIH0sXG4gICAgaW5rZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5pbmtvbmNoYWluLmNvbS9hcGknLFxuICAgIH0sXG4gICAgcHJpdmlkaXVtZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5wcml2aWRpdW0uemtzeW5jLmRldi9hcGknLCAvLyBUT0RPOiB1cGRhdGUgd2l0aCBtYWlubmV0IFVSTCB3aGVuIGF2YWlsYWJsZVxuICAgIH0sXG4gICAgZmx1ZW50ZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9mbHVlbnRzY2FuLnh5ei9hcGkvJyxcbiAgICB9LFxuICAgIG1hbnRsZToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLm1hbnRsZXNjYW4ueHl6L2FwaScsXG4gICAgfSxcbiAgICBqb3ZheWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnphbi50b3Avbm9kZS92MS9qb3ZheS9tYWlubmV0LycsXG4gICAgfSxcbiAgICBva2J4bGF5ZXI6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3d3dy5va2xpbmsuY29tL2FwaS92NS9leHBsb3Jlci9ibG9jay9ibG9jay1saXN0P2NoYWluU2hvcnROYW1lPXhsYXllcicsXG4gICAgfSxcbiAgICBtb3JwaDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXItYXBpLWhvb2RpLm1vcnBobDIuaW8nLCAvLyBUT0RPOiBXSU4tODEzNCBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIG1vcnBoZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5tb3JwaC5uZXR3b3JrLycsXG4gICAgfSxcbiAgICBkb2dlb3M6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc2NvdXQudGVzdG5ldC5kb2dlb3MuY29tJywgLy9UT0RPOiBXSU4tODA4MiA9PiBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIGFyY3VzZGM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLmFyYy5pby9hcGknLCAvLyBXSU4tODg0NCA9PiBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIHhkYzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICB6a3N5bmNlcmE6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgdW5pZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly91bmljaGFpbi5ibG9ja3Njb3V0LmNvbS9hcGknLFxuICAgIH0sXG4gICAgaG9vZGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vcm9iaW5ob29kY2hhaW4uYmxvY2tzY291dC5jb20vYXBpJyxcbiAgICB9LFxuICAgIGhwcGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXIuaHBwLmlvL2FwaScsXG4gICAgfSxcbiAgICBoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9odW1hbml0eS1tYWlubmV0LmV4cGxvcmVyLmFsY2hlbXkuY29tL2FwaScsXG4gICAgfSxcbiAgICBib2JhOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkucm91dGVzY2FuLmlvL3YyL25ldHdvcmsvbWFpbm5ldC9ldm0vMjg4L2V0aGVyc2Nhbi9hcGknLFxuICAgIH0sXG4gICAgdGVtcG86IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3RlbXBvLW1haW5uZXQuZy5hbGNoZW15LmNvbS92Mi8nLFxuICAgIH0sXG4gIH0sXG4gIGljcE5vZGVVcmw6ICdodHRwczovL2ljMC5hcHAnLFxuICBrYXNwYU5vZGVVcmw6ICdodHRwczovL2FwaS5rYXNwYS5vcmcnLFxuICBzdGFya25ldE5vZGVVcmw6ICdodHRwczovL3N0YXJrbmV0LW1haW5uZXQtcnBjLnB1YmxpY25vZGUuY29tLycsXG4gIGh5cGVyTGlxdWlkTm9kZVVybDogJ2h0dHBzOi8vYXBpLmh5cGVybGlxdWlkLnh5eicsXG4gIHdvcmxkRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly93b3JsZHNjYW4ub3JnLycsXG4gIHNvbW5pYUV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5zb21uaWEudzN1cy5zaXRlLycsXG4gIHNvbmVpdW1FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL3NvbmVpdW0uYmxvY2tzY291dC5jb20nLFxuICBtb25FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBzdHhOb2RlVXJsOiAnaHR0cHM6Ly9hcGkuaGlyby5zbycsXG4gIHZldE5vZGVVcmw6ICdodHRwczovL3N5bmMtbWFpbm5ldC52ZWNoYWluLm9yZycsXG4gIHh0ekV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLnR6a3QuaW8nLFxuICB4dHpScGNVcmw6ICdodHRwczovL3JwYy50emt0LmlvL21haW5uZXQnLFxufTtcblxuY29uc3QgdGVzdG5ldEJhc2U6IEVudmlyb25tZW50VGVtcGxhdGUgPSB7XG4gIG5ldHdvcms6ICd0ZXN0bmV0JyBhcyBWMU5ldHdvcmssXG4gIHNpZ25pbmdBZGRyZXNzOiAnbXNpZ25CZEZYdGVlaERFZ0I2RE5tN25wUnQ3QWNFWkpQMycsXG4gIHNlcnZlclhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuc2VydmVyWHB1Yi50ZXN0LFxuICBoc21YcHViOiBoYXJkY29kZWRQdWJsaWNLZXlzLmhzbVhwdWIudGVzdCxcbiAgYnRjRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL3Rlc3RuZXQvYXBpJyxcbiAgZXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICBhdmF4Y05ldHdvcmtCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuYXZheC10ZXN0Lm5ldHdvcmsnLFxuICBldGgyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9iZWFjb25zY2FuLmNvbS9hcGknLFxuICBldGh3RnVsbE5vZGVSUENCYXNlVXJsOiAnaHR0cHM6Ly9tYWlubmV0LmV0aGVyZXVtcG93Lm9yZycsXG4gIHBvbHlnb25zY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIHBvbHlnb25zY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LlBPTFlHT05TQ0FOX0FQSV9UT0tFTixcbiAgYnNjc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBic2NzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkJTQ19BUElfVE9LRU4sXG4gIGFyYmlzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGFyYmlzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkFSQklTQ0FOX0FQSV9UT0tFTixcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBvcHRpbWlzdGljRXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52Lk9QVElNSVNUSUNfRVRIRVJTQ0FOX0FQSV9UT0tFTixcbiAgemtzeW5jRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9ibG9jay1leHBsb3Jlci1hcGkuc2Vwb2xpYS56a3N5bmMuZGV2JyxcbiAgemtzeW5jRXhwbG9yZXJBcGlUb2tlbjogcHJvY2Vzcy5lbnYuWktTWU5DX0VYUExPUkVSX0FQSV9UT0tFTixcbiAgYmFzZWV0aEV4cGxvcmVyVXJsOiAnaHR0cHM6Ly9hcGktc2Vwb2xpYS5iYXNlc2Nhbi5vcmcnLFxuICBiYXNlZXRoQXBpVG9rZW46IHByb2Nlc3MuZW52LkJBU0VTQ0FOX0FQSV9UT0tFTixcbiAgLy8ga3lsaW4gZW9zIGVuZHBvaW50cyBmb3VuZCBoZXJlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9jcnlwdG9reWxpbi9DcnlwdG9LeWxpbi1UZXN0bmV0I2h0dHAtYXBpLWxpc3RcbiAgLy8gaHR0cHM6Ly9kb2NzLmxpcXVpZGFwcHMuaW8vbGlxdWlkYXBwcy1kb2N1bWVudGF0aW9uL2Vvc2lvLWd1aWRlcy90ZXN0bmV0LWNyZWF0aW9uLWd1aWRlcy9jcmVhdGluZy1jcnlwdG9reWxpbi1hY2NvdW50I3NldHVwXG4gIGVvc05vZGVVcmxzOiBbJ2h0dHBzOi8va3lsaW4uZW9zbi5pbycsICdodHRwczovL2FwaS5reWxpbi5hbG9oYWVvcy5jb20nXSxcbiAgbmVhck5vZGVVcmxzOiBbJ2h0dHBzOi8vdGVzdC5ycGMuZmFzdG5lYXIuY29tJ10sXG4gIHNvbE5vZGVVcmw6ICdodHRwczovL2FwaS5kZXZuZXQuc29sYW5hLmNvbScsXG4gIHNvbEFsY2hlbXlOb2RlVXJsOiAnaHR0cHM6Ly9zb2xhbmEtZGV2bmV0LmcuYWxjaGVteS5jb20vdjInLFxuICBhZGFOb2RlVXJsOiAnaHR0cHM6Ly9wcmVwcm9kLmtvaW9zLnJlc3QvYXBpL3YxJyxcbiAgaGFzaE5vZGVVcmw6ICdodHRwczovL2FwaS50ZXN0LnByb3ZlbmFuY2UuaW8nLFxuICBpbmpOb2RlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LnNlbnRyeS5sY2QuaW5qZWN0aXZlLm5ldHdvcmsnLCAvLyBDT0lOLTEyMTkgOiByZWZlcmVuY2UgIGh0dHBzOi8vZG9jcy5pbmplY3RpdmUubmV0d29yay9kZXZlbG9wL3B1YmxpYy1lbmRwb2ludHMvI3Rlc3RuZXRcbiAgYXRvbU5vZGVVcmw6ICdodHRwczovL3Jlc3QucHJvdmlkZXItc2VudHJ5LTAyLmljcy10ZXN0bmV0LnBvbHlwb3JlLnh5ei8nLFxuICBvc21vTm9kZVVybDogJ2h0dHBzOi8vbGNkLm9zbW90ZXN0NS5vc21vc2lzLnpvbmUnLFxuICB0aWFOb2RlVXJsOiAnaHR0cHM6Ly9hcGktbW9jaGEucG9wcy5vbmUnLFxuICBzZWlOb2RlVXJsOiAnaHR0cHM6Ly9yZXN0LmF0bGFudGljLTIuc2VpbmV0d29yay5pbycsXG4gIGJsZE5vZGVVcmw6ICdodHRwczovL2Rldm5ldC5hcGkuYWdvcmljLm5ldCcsXG4gIGJlcmFOb2RlVXJsOiAnJywgLy8gVE9ETyhXSU4tNjkzKTogdXBkYXRlIHVybCB3aGVuIHRlc3RuZXQgZ29lcyBsaXZlXG4gIHpldGFOb2RlVXJsOiAnaHR0cHM6Ly9yZXN0Lm5vZGVqdW1wZXIuaW8vemV0YWNoYWludGVzdG5ldCcsIC8vIHJlZmVyZW5jZSA6IGh0dHBzOi8vd3d3LnpldGFjaGFpbi5jb20vZG9jcy9yZWZlcmVuY2UvYXBpL1xuICBjb3JldW1Ob2RlVXJsOiAnaHR0cHM6Ly9mdWxsLW5vZGUudGVzdG5ldC0xLmNvcmV1bS5kZXY6MTMxNycsXG4gIHJ1bmVOb2RlVXJsOiAnaHR0cHM6Ly9zdGFnZW5ldC10aG9ybm9kZS5uaW5lcmVhbG1zLmNvbScsXG4gIGJhYnlOb2RlVXJsOiAnaHR0cHM6Ly9iYWJ5bG9uLXRlc3RuZXQtYXBpLm5vZGVzLmd1cnUvJyxcbiAgaXNsbU5vZGVVcmw6ICdodHRwczovL3Jlc3QuY29zbW9zLnRlc3RlZGdlMi5oYXFxLm5ldHdvcmsgJyxcbiAgbWFudHJhTm9kZVVybDogJ2h0dHBzOi8vbWFudHJhLXRlc3RuZXQtcmVzdC5wdWJsaWNub2RlLmNvbS8nLFxuICBjcm9ub3NOb2RlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LWNyb2VzZWlkLTQuY3J5cHRvLm9yZzoxMzE3LycsXG4gIGluaXRpYU5vZGVVcmw6ICdodHRwczovL3Jlc3QudGVzdG5ldC5pbml0aWEueHl6LycsXG4gIGFzaU5vZGVVcmw6ICdodHRwczovL3Jlc3QtZG9yYWRvLmZldGNoLmFpLycsXG4gIGRvdE5vZGVVcmxzOiBbJ3dzczovL2Fzc2V0LWh1Yi13ZXN0ZW5kLXJwYy5uLmR3ZWxsaXIuY29tJ10sXG4gIHN1YnN0cmF0ZU5vZGVVcmxzOiBbJ3dzczovL3Rlc3QuZmlubmV5Lm9wZW50ZW5zb3IuYWknXSxcbiAgcG9seW1lc2hOb2RlVXJsczogWyd3c3M6Ly90ZXN0bmV0LXJwYy5wb2x5bWVzaC5saXZlJ10sXG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6ICdodHRwczovL2FwaS5zaGFzdGEudHJvbmdyaWQuaW8nLFxuICAgIHNvbGlkaXR5OiAnaHR0cHM6Ly9hcGkuc2hhc3RhLnRyb25ncmlkLmlvJyxcbiAgfSxcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBmYWxzZSxcbiAgdG9uTm9kZVVybDogJ2h0dHBzOi8vdGVzdG5ldC50b25jZW50ZXIuY29tL2FwaS92Mi9qc29uUlBDJyxcbiAgc3VpTm9kZVVybDogJ2h0dHBzOi8vZnVsbG5vZGUudGVzdG5ldC5zdWkuaW8nLFxuICBpb3RhTm9kZVVybDogJ2h0dHBzOi8vYXBpLnRlc3RuZXQuaW90YS5jYWZlJyxcbiAgZXRjTm9kZVVybDogJ2h0dHBzOi8vZXRjLW1vcmRvci5ibG9ja3Njb3V0LmNvbScsXG4gIGNvcmVkYW9FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS50ZXN0Mi5idGNzLm5ldHdvcmsnLFxuICBvYXNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLnRlc3RuZXQub2FzeXMuZ2FtZXMnLFxuICB3ZW1peEV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGZsckV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vY29zdG9uMi1leHBsb3Jlci5mbGFyZS5uZXR3b3JrJyxcbiAgeGRjRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgc2diRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9jb3N0b24tZXhwbG9yZXIuZmxhcmUubmV0d29yaycsXG4gIGljcE5vZGVVcmw6ICdodHRwczovL2ljMC5hcHAnLFxuICBrYXNwYU5vZGVVcmw6ICdodHRwczovL2FwaS10bjEwLmthc3BhLm9yZycsXG4gIHN0YXJrbmV0Tm9kZVVybDogJ2h0dHBzOi8vc3RhcmtuZXQtc2Vwb2xpYS1ycGMucHVibGljbm9kZS5jb20vJyxcbiAgaHlwZXJMaXF1aWROb2RlVXJsOiAnaHR0cHM6Ly9hcGkuaHlwZXJsaXF1aWQtdGVzdG5ldC54eXonLFxuICBtb25FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICB3b3JsZEV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vc2Vwb2xpYS53b3JsZHNjYW4ub3JnLycsXG4gIHNvbW5pYUV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vc2hhbm5vbi1leHBsb3Jlci5zb21uaWEubmV0d29yay8nLFxuICBzb25laXVtRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9zb25laXVtLW1pbmF0by5ibG9ja3Njb3V0LmNvbScsXG4gIGV2bToge1xuICAgIGFic3RyYWN0ZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuc2Vwb2xpYS5hYnNjYW4ub3JnL2FwaScsXG4gICAgfSxcbiAgICBhcGVjaGFpbjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBjaGlsaXo6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS50ZXN0bmV0LmNoaWxpc2Nhbi5jb20nLFxuICAgIH0sXG4gICAgY29kZXhldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLmNvZGV4LXN0Zy54eXovYXBpJyxcbiAgICB9LFxuICAgIHBocnM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3Rlc3RuZXQuZHBsYWJzLWludGVybmFsLmNvbScsIC8vIFdyb25nIHZhbHVlLCBOb3QgYXZhaWxhYmxlIHlldFxuICAgIH0sXG4gICAgY3RjOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9jcmVkaXRjb2luLXRlc3RuZXQuYmxvY2tzY291dC5jb20nLFxuICAgIH0sXG4gICAgaHlwZWV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vcnBjLmh5cGVybGlxdWlkLXRlc3RuZXQueHl6L2V2bScsIC8vIE5vdCBBdmFpbGFibGVcbiAgICAgIC8vIFRoZXNlIGFyZSB1c2VkIGZvciBCcmlkZ2luZyBhc3NldHMgb24gaHlwZSBjaGFpbi5cbiAgICAgIHRva2VuSWQ6IDExMDUsXG4gICAgICBzeXN0ZW1BZGRyOiAnMHgyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyJyxcbiAgICB9LFxuICAgIG9nOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9jaGFpbnNjYW4tdGVzdC4wZy5haS9vcGVuJyxcbiAgICB9LFxuICAgIHhwbDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnJvdXRlc2Nhbi5pby92Mi9uZXR3b3JrL3Rlc3RuZXQvZXZtLzk3NDZfNS9ldGhlcnNjYW4nLFxuICAgIH0sXG4gICAgc29uaWM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgdXNkdDA6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3Rlc3RuZXQuc3RhYmxlc2Nhbi54eXovYXBpJyxcbiAgICB9LFxuICAgIHNlaWV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBrYWlhOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9rYWlyb3Mtb2FwaS5rYWlhc2Nhbi5pbycsXG4gICAgfSxcbiAgICBrYXZhZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkudmVyaWZ5Lm1pbnRzY2FuLmlvL2V2bS9hcGkvMHg4YWQnLFxuICAgIH0sXG4gICAgaXJ5czoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vaW5zdC0xLmNsb3VkLmJsb2Nrc2NvdXQuY29tL2FwaScsXG4gICAgfSxcbiAgICBtb246IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgbGluZWFldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgaXA6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FlbmVpZC5zdG9yeXNjYW4uaW8nLFxuICAgIH0sXG4gICAgdGJhc2VldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICAgIH0sXG4gICAgdG9wYm5iOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICAgIGFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICAgIH0sXG4gICAgeHR6ZXZtOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9zaGFkb3duZXQuZXhwbG9yZXIuZXRoZXJsaW5rLmNvbS9hcGknLFxuICAgIH0sXG4gICAgdGdhc2V2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vbmVveHQ0c2Nhbi5uZ2QubmV0d29yay9hcGknLFxuICAgIH0sXG4gICAgZmxvdzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXZtLXRlc3RuZXQuZmxvd3NjYW4uaW8nLFxuICAgIH0sXG4gICAgbWVnYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vY2Fycm90Lm1lZ2FldGguY29tL3JwYycsXG4gICAgfSxcbiAgICBwbHVtZToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC1leHBsb3Jlci5wbHVtZS5vcmcnLFxuICAgIH0sXG4gICAgaGJhcmV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5taXJyb3Jub2RlLmhlZGVyYS5jb20vYXBpL3YxJyxcbiAgICAgIHJwY1VybDogJ2h0dHBzOi8vdGVzdG5ldC5oYXNoaW8uaW8vYXBpJyxcbiAgICB9LFxuICAgIHRzY3JvbGxldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS1zZXBvbGlhLnNjcm9sbHNjYW4uY29tL2FwaScsXG4gICAgfSxcbiAgICBoZW1pZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LmV4cGxvcmVyLmhlbWkueHl6L2FwaScsXG4gICAgfSxcbiAgICB0a2F0YW5hZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci1ib2t1dG8ua2F0YW5hcnBjLmNvbS9hcGknLFxuICAgIH0sXG4gICAgdGlua2V0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXItc2Vwb2xpYS5pbmtvbmNoYWluLmNvbS9hcGknLFxuICAgIH0sXG4gICAgcHJpdmlkaXVtZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci50ZXN0bmV0LXByaXZpZGl1bS56a3N5bmMuZGV2L2FwaScsXG4gICAgfSxcbiAgICBmbHVlbnRldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3Rlc3RuZXQuZmx1ZW50c2Nhbi54eXovYXBpLycsXG4gICAgfSxcbiAgICBtYW50bGU6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2FwaS1zZXBvbGlhLm1hbnRsZXNjYW4ueHl6L2FwaScsXG4gICAgfSxcbiAgICBqb3ZheWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnphbi50b3Avbm9kZS92MS9qb3ZheS90ZXN0bmV0LycsXG4gICAgfSxcbiAgICBva2J4bGF5ZXI6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3d3dy5va2xpbmsuY29tL2FwaS92NS9leHBsb3Jlci9ibG9jay9ibG9jay1saXN0P2NoYWluU2hvcnROYW1lPXhsYXllcl90ZXN0bmV0JyxcbiAgICB9LFxuICAgIG1vcnBoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci1hcGktaG9vZGkubW9ycGhsMi5pbycsXG4gICAgfSxcbiAgICBtb3JwaGV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXhwbG9yZXItaG9vZGkubW9ycGgubmV0d29yay8nLFxuICAgIH0sXG4gICAgZG9nZW9zOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9ibG9ja3Njb3V0LnRlc3RuZXQuZG9nZW9zLmNvbScsXG4gICAgfSxcbiAgICBhcmN1c2RjOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LmFyY3NjYW4uYXBwL2FwaScsIC8vIFdJTi04ODQ0ID0+IGFkZCBtYWlubmV0IHVybCB3aGVuIGF2YWlsYWJsZVxuICAgIH0sXG4gICAgeGRjOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICAgIHprc3luY2VyYToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICB1bmlldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3VuaWNoYWluLXNlcG9saWEuYmxvY2tzY291dC5jb20vYXBpJyxcbiAgICB9LFxuICAgIGhvb2RldGg6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2V4cGxvcmVyLnRlc3RuZXQuY2hhaW4ucm9iaW5ob29kLmNvbS9hcGknLFxuICAgIH0sXG4gICAgaHBwZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9zZXBvbGlhLWV4cGxvcmVyLmhwcC5pby9hcGknLFxuICAgIH0sXG4gICAgaDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vaHVtYW5pdHktdGVzdG5ldC5leHBsb3Jlci5hbGNoZW15LmNvbS9hcGknLFxuICAgIH0sXG4gICAgYm9iYToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnJvdXRlc2Nhbi5pby92Mi9uZXR3b3JrL3Rlc3RuZXQvZXZtLzI4ODgyL2V0aGVyc2Nhbi9hcGknLFxuICAgIH0sXG4gICAgdGVtcG86IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3RlbXBvLW1vZGVyYXRvLmcuYWxjaGVteS5jb20vdjIvJyxcbiAgICB9LFxuICB9LFxuICBzdHhOb2RlVXJsOiAnaHR0cHM6Ly9hcGkudGVzdG5ldC5oaXJvLnNvJyxcbiAgdmV0Tm9kZVVybDogJ2h0dHBzOi8vc3luYy10ZXN0bmV0LnZlY2hhaW4ub3JnJyxcbiAgeHR6RXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZ2hvc3RuZXQudHprdC5pbycsXG4gIHh0elJwY1VybDogJ2h0dHBzOi8vcnBjLnR6a3QuaW8vZ2hvc3RuZXQnLFxufTtcblxuY29uc3QgZGV2QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi5kZXYsXG4gIGhtYWNWZXJpZmljYXRpb25FbmZvcmNlZDogZmFsc2UsXG59KTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlZGVjbGFyZVxuZXhwb3J0IGNvbnN0IEVudmlyb25tZW50czogRW52aXJvbm1lbnRzID0ge1xuICBwcm9kOiBPYmplY3QuYXNzaWduKHt9LCBtYWlubmV0QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIHRlc3Q6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28tdGVzdC5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBkZXY6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1kZXYuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBzdGFnaW5nOiBPYmplY3QuYXNzaWduKHt9LCB0ZXN0bmV0QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLXN0YWdpbmcuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLXN0YWdpbmcuY29tL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgbG9jYWw6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2xvY2FsaG9zdDozMDAwJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vbG9jYWxob3N0OjMwMDAvYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBsb2NhbE5vblNlY3VyZTogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMCcsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwOi8vbG9jYWxob3N0OjMwMDAvYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBtb2NrOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9iaXRnby5mYWtldXJsJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYml0Z28uZmFrZXVybC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGktaG9vZGkuZXRoZXJzY2FuLmZha2V1cmwnLFxuICAgIGV0aGVyc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICAgIGF2YXhjTmV0d29ya0Jhc2VVcmw6ICdodHRwczovL2FwaS5hdmF4LXRlc3QubmV0d29yay5mYWtldXJsJyxcbiAgICBldGgyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9iZWFjb25zY2FuLmNvbS9hcGknLFxuICB9KSxcbiAgYWRtaW5Qcm9kOiBPYmplY3QuYXNzaWduKHt9LCBtYWlubmV0QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28uY29tL2FwaS92Mi94bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pblRlc3Q6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgYWRtaW5EZXY6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby1kZXYuY29tL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgYWRtaW5TdGFnaW5nOiBPYmplY3QuYXNzaWduKHt9LCB0ZXN0bmV0QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tc3RhZ2luZy5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby1zdGFnaW5nLmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgY3VzdG9tOiBPYmplY3QuYXNzaWduKHt9LCBtYWlubmV0QmFzZSwge1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgdXJpOiBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fUk9PVF9VUkkhLFxuICAgIG5ldHdvcms6IHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9CSVRDT0lOX05FVFdPUksgYXMgVjFOZXR3b3JrLFxuICAgIGhzbVhwdWI6XG4gICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nID8gaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnByb2QgOiBoYXJkY29kZWRQdWJsaWNLZXlzLmhzbVhwdWIudGVzdCxcbiAgICBidGNFeHBsb3JlckJhc2VVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fQklUQ09JTl9ORVRXT1JLICE9PSAnYml0Y29pbidcbiAgICAgICAgPyAnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL3Rlc3RuZXQvYXBpJ1xuICAgICAgICA6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vYXBpJyxcbiAgICBldGhlcnNjYW5CYXNlVXJsOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0VUSEVSRVVNX05FVFdPUksgIT09ICdldGhlcmV1bSdcbiAgICAgICAgPyAnaHR0cHM6Ly9hcGktaG9vZGkuZXRoZXJzY2FuLmlvJ1xuICAgICAgICA6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX1NURUxMQVJfTkVUV09SSyAhPT0gJ3N0ZWxsYXInXG4gICAgICAgID8gYGh0dHBzOi8vJHtwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fUk9PVF9VUkl9L2FwaS92Mi90eGxtL2ZlZGVyYXRpb25gXG4gICAgICAgIDogYGh0dHBzOi8vJHtwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fUk9PVF9VUkl9L2FwaS92Mi94bG0vZmVkZXJhdGlvbmAsXG4gICAgc2VydmVyWHB1YjpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9CSVRDT0lOX05FVFdPUksgIT09ICdiaXRjb2luJ1xuICAgICAgICA/IGhhcmRjb2RlZFB1YmxpY0tleXMuc2VydmVyWHB1Yi50ZXN0XG4gICAgICAgIDogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnByb2QsXG4gIH0pLFxuICBicmFuY2g6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby1kZXYuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxufTtcbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keycard.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/internal/keycard.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AA2EzE,UAAU,iBAAiB;IACzB,OAAO,EAAE,SAAS,CAAC;IACnB,YAAY,EAAE,QAAQ,CAAC;IACvB,aAAa,EAAE,QAAQ,CAAC;IACxB,cAAc,EAAE,QAAQ,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"keycard.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/internal/keycard.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AA2EzE,UAAU,iBAAiB;IACzB,OAAO,EAAE,SAAS,CAAC;IACnB,YAAY,EAAE,QAAQ,CAAC;IACvB,aAAa,EAAE,QAAQ,CAAC;IACxB,cAAc,EAAE,QAAQ,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAkJD,UAAU,wBAAwB;IAChC,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,EAAE,GAAG,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,kBAAmB,SAAQ,iBAAiB,EAAE,wBAAwB;IAC9E,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,kBAAkB,EAAE,SAAS,CAAC,GAAG;IAC1E,OAAO,EAAE,cAAc,CAAC;IACxB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC,CAAC;AA0JF;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CA+B5D;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,CAkCrF"}
|
|
@@ -98,14 +98,13 @@ function buildKeycardQrData(options, encryptedWalletPasscode) {
|
|
|
98
98
|
data: backupKeychain.encryptedPrv,
|
|
99
99
|
},
|
|
100
100
|
bitgo: {
|
|
101
|
-
title: 'C: BitGo
|
|
102
|
-
desc: 'This is the public part of the key
|
|
103
|
-
'co-sign transactions\r\nwith you on your wallet.',
|
|
101
|
+
title: 'C: BitGo Key',
|
|
102
|
+
desc: 'This is the public part of the key held by BitGo.',
|
|
104
103
|
data: bitgoKeychain.pub,
|
|
105
104
|
},
|
|
106
105
|
passcode: {
|
|
107
106
|
title: 'D: Encrypted Wallet Password',
|
|
108
|
-
desc: 'This is the wallet
|
|
107
|
+
desc: 'This is the wallet password, encrypted client-side ' + 'with a key held by\r\nBitGo.',
|
|
109
108
|
data: encryptedWalletPasscode,
|
|
110
109
|
},
|
|
111
110
|
};
|
|
@@ -362,4 +361,4 @@ async function drawKeycardAsync(options) {
|
|
|
362
361
|
});
|
|
363
362
|
return renderKeycardPdf({ jsPDF, QRCode, activationCode, walletLabel, coinName }, keyData);
|
|
364
363
|
}
|
|
365
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9pbnRlcm5hbC9rZXljYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7QUE2Wkgsa0NBK0JDO0FBU0QsNENBa0NDO0FBcmVEO0dBQ0c7QUFDSCxtQ0FBcUM7QUFJckM7OztHQUdHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO0lBQ3pDLE9BQU87UUFDTDtZQUNFLENBQUMsRUFBRSxzQkFBc0I7WUFDekIsQ0FBQyxFQUFFO2dCQUNELCtFQUErRSxJQUFJLEdBQUc7Z0JBQ3RGLDJEQUEyRCxHQUFHLGdDQUFnQztnQkFDOUYsdUZBQXVGO2FBQ3hGO1NBQ0Y7UUFDRDtZQUNFLENBQUMsRUFBRSwyQkFBMkI7WUFDOUIsQ0FBQyxFQUFFO2dCQUNELCtGQUErRjtnQkFDL0YsbUdBQW1HO2dCQUNuRyxnREFBZ0Q7Z0JBQ2hELEVBQUU7Z0JBQ0YsNkZBQTZGO2dCQUM3RiwrRkFBK0Y7Z0JBQy9GLHNEQUFzRDthQUN2RDtTQUNGO1FBQ0Q7WUFDRSxDQUFDLEVBQUUsZ0NBQWdDO1lBQ25DLENBQUMsRUFBRTtnQkFDRCxnRUFBZ0UsSUFBSSwyQkFBMkI7Z0JBQy9GLCtGQUErRjtnQkFDL0YsdUNBQXVDO2dCQUN2QywwQ0FBMEM7YUFDM0M7U0FDRjtRQUNEO1lBQ0UsQ0FBQyxFQUFFLGtDQUFrQztZQUNyQyxDQUFDLEVBQUU7Z0JBQ0Qsa0dBQWtHO2dCQUNsRyx1RkFBdUY7Z0JBQ3ZGLHNGQUFzRjtnQkFDdEYsNkZBQTZGO2dCQUM3RiwrQ0FBK0M7YUFDaEQ7U0FDRjtRQUNEO1lBQ0UsQ0FBQyxFQUFFLDhDQUE4QztZQUNqRCxDQUFDLEVBQUU7Z0JBQ0Qsd0ZBQXdGO2dCQUN4Riw2RkFBNkY7YUFDOUY7U0FDRjtRQUNEO1lBQ0UsQ0FBQyxFQUFFLDREQUE0RDtZQUMvRCxDQUFDLEVBQUU7Z0JBQ0Qsb0ZBQW9G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Q1IsaUJBQWlCLEdBQ2xCLEdBQUcsT0FBTyxDQUFDO0lBRVosNkNBQTZDO0lBQzdDLE1BQU0sT0FBTyxHQUFHLE1BQU0sZUFBZSxDQUFDO1FBQ3BDLE9BQU87UUFDUCxhQUFhO1FBQ2IsVUFBVTtRQUNWLHNCQUFzQjtRQUN0QixXQUFXO1FBQ1gsV0FBVztRQUNYLFlBQVk7UUFDWixhQUFhO1FBQ2IsY0FBYztRQUNkLGlCQUFpQjtLQUNsQixDQUFDLENBQUM7SUFFSCxPQUFPLGdCQUFnQixDQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQzdGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBoaWRkZW5cbiAqL1xuXG4vKipcbiAqL1xuaW1wb3J0IHsgaXNVbmRlZmluZWQgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgS2V5Y2hhaW4gfSBmcm9tICcuLi9rZXljaGFpbic7XG5pbXBvcnQgeyBFbmNyeXB0Rm4sIEVuY3J5cHRGbkFzeW5jLCBFbmNyeXB0aW9uVmVyc2lvbiB9IGZyb20gJy4uLy4uL2FwaSc7XG5cbi8qKlxuICogUmV0dXJuIHRoZSBsaXN0IG9mIHF1ZXN0aW9ucyB0aGF0IHdpbGwgYXBwZWFyIG9uIHRoZSBzZWNvbmQgcGFnZSBvZiB0aGUga2V5Y2FyZFxuICogQHBhcmFtIGNvaW4gbmFtZSBvZiB0aGUgY29pblxuICovXG5jb25zdCBnZW5lcmF0ZVF1ZXN0aW9ucyA9IChjb2luOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBxOiAnV2hhdCBpcyB0aGUgS2V5Q2FyZD8nLFxuICAgICAgYTogW1xuICAgICAgICBgVGhlIEtleUNhcmQgY29udGFpbnMgaW1wb3J0YW50IGluZm9ybWF0aW9uIHdoaWNoIGNhbiBiZSB1c2VkIHRvIHJlY292ZXIgdGhlICR7Y29pbn0gYCxcbiAgICAgICAgJ2Zyb20geW91ciB3YWxsZXQgaW4gc2V2ZXJhbCBzaXR1YXRpb25zLiBFYWNoIEJpdEdvIHdhbGxldCcgKyAnIGhhcyBpdHMgb3duLCB1bmlxdWUgS2V5Q2FyZC4gJyxcbiAgICAgICAgJ0lmIHlvdSBoYXZlIGNyZWF0ZWQgbXVsdGlwbGUgd2FsbGV0cywgeW91IHNob3VsZCByZXRhaW4gdGhlIEtleUNhcmQgZm9yIGVhY2ggb2YgdGhlbS4nLFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHE6ICdXaGF0IHNob3VsZCBJIGRvIHdpdGggaXQ/JyxcbiAgICAgIGE6IFtcbiAgICAgICAgJ1lvdSBzaG91bGQgcHJpbnQgdGhlIEtleUNhcmQgYW5kL29yIHNhdmUgdGhlIFBERiB0byBhbiBvZmZsaW5lIHN0b3JhZ2UgZGV2aWNlLiBUaGUgcHJpbnQtb3V0ICcsXG4gICAgICAgIFwib3IgVVNCIHN0aWNrIHNob3VsZCBiZSBrZXB0IGluIGEgc2FmZSBwbGFjZSwgc3VjaCBhcyBhIGJhbmsgdmF1bHQgb3IgaG9tZSBzYWZlLiBJdCdzIGEgZ29vZCBpZGVhIFwiLFxuICAgICAgICAndG8ga2VlcCBhIHNlY29uZCBjb3B5IGluIGEgZGlmZmVyZW50IGxvY2F0aW9uLicsXG4gICAgICAgICcnLFxuICAgICAgICBcIkltcG9ydGFudDogSWYgeW91IGhhdmVuJ3QgcHJvdmlkZWQgYW4gZXh0ZXJuYWwgYmFja3VwIGtleSwgdGhlbiB0aGUgb3JpZ2luYWwgUERGIHNob3VsZCBiZSBcIixcbiAgICAgICAgJ2RlbGV0ZWQgZnJvbSBhbnkgbWFjaGluZSB3aGVyZSB0aGUgd2FsbGV0IHdpbGwgYmUgcmVndWxhcmx5IGFjY2Vzc2VkIHRvIHByZXZlbnQgbWFsd2FyZSBmcm9tICcsXG4gICAgICAgICdjYXB0dXJpbmcgYm90aCB0aGUgS2V5Q2FyZCBhbmQgeW91ciB3YWxsZXQgcGFzc2NvZGUuJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBxOiAnV2hhdCBzaG91bGQgSSBkbyBpZiBJIGxvc2UgaXQ/JyxcbiAgICAgIGE6IFtcbiAgICAgICAgYElmIHlvdSBoYXZlIGxvc3Qgb3IgZGFtYWdlZCBhbGwgY29waWVzIG9mIHlvdXIgS2V5Q2FyZCwgeW91ciAke2NvaW59IGlzIHN0aWxsIHNhZmUsIGJ1dCB0aGlzIGAsXG4gICAgICAgICd3YWxsZXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgYXQgcmlzayBmb3IgbG9zcy4gQXMgc29vbiBhcyBpcyBjb252ZW5pZW50LCB5b3Ugc2hvdWxkIHVzZSBCaXRHbyAnLFxuICAgICAgICAndG8gZW1wdHkgdGhlIHdhbGxldCBpbnRvIGEgbmV3IHdhbGxldCcsXG4gICAgICAgICcsIGFuZCBkaXNjb250aW51ZSB1c2Ugb2YgdGhlIG9sZCB3YWxsZXQuJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBxOiAnV2hhdCBpZiBzb21lb25lIHNlZXMgbXkgS2V5Q2FyZD8nLFxuICAgICAgYTogW1xuICAgICAgICBcIkRvbid0IHBhbmljISBBbGwgc2Vuc2l0aXZlIGluZm9ybWF0aW9uIG9uIHRoZSBLZXlDYXJkIGlzIGVuY3J5cHRlZCB3aXRoIHlvdXIgcGFzc2NvZGUsIG9yIHdpdGggYVwiLFxuICAgICAgICAna2V5IHdoaWNoIG9ubHkgQml0R28gaGFzLiBCdXQsIGluIGdlbmVyYWwsIHlvdSBzaG91bGQgbWFrZSBiZXN0IGVmZm9ydHMgdG8ga2VlcCB5b3VyICcsXG4gICAgICAgICdLZXlDYXJkIHByaXZhdGUuIElmIHlvdXIgS2V5Q2FyZCBkb2VzIGdldCBleHBvc2VkIG9yIGNvcGllZCBpbiBhIHdheSB0aGF0IG1ha2VzIHlvdSAnLFxuICAgICAgICAndW5jb21mb3J0YWJsZSwgdGhlIGJlc3QgY291cnNlIG9mIGFjdGlvbiBpcyB0byBlbXB0eSB0aGUgY29ycmVzcG9uZGluZyB3YWxsZXQgaW50byBhbm90aGVyICcsXG4gICAgICAgICd3YWxsZXQgYW5kIGRpc2NvbnRpbnVlIHVzZSBvZiB0aGUgb2xkIHdhbGxldC4nLFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHE6ICdXaGF0IGlmIEkgZm9yZ2V0IG9yIGxvc2UgbXkgd2FsbGV0IHBhc3N3b3JkPycsXG4gICAgICBhOiBbXG4gICAgICAgICdCaXRHbyBjYW4gdXNlIHRoZSBpbmZvcm1hdGlvbiBpbiBRUiBDb2RlIEQgdG8gaGVscCB5b3UgcmVjb3ZlciBhY2Nlc3MgdG8geW91ciB3YWxsZXQuICcsXG4gICAgICAgICdXaXRob3V0IHRoZSBLZXlDYXJkLCBCaXRHbyBpcyBub3QgYWJsZSB0byByZWNvdmVyIGZ1bmRzIGZyb20gYSB3YWxsZXQgd2l0aCBhIGxvc3QgcGFzc3dvcmQuJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBxOiAnV2hhdCBpZiBCaXRHbyBiZWNvbWVzIGluYWNjZXNzaWJsZSBmb3IgYW4gZXh0ZW5kZWQgcGVyaW9kPycsXG4gICAgICBhOiBbXG4gICAgICAgICdZb3VyIEtleUNhcmQgYW5kIHdhbGxldCBwYXNzY29kZSBjYW4gYmUgdXNlZCB0b2dldGhlciB3aXRoIEJpdEdv4oCZcyBwdWJsaXNoZWQgb3BlbiAnLFxuICAgICAgICBgc291cmNlIHRvb2xzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9iaXRnbyB0byByZWNvdmVyIHlvdXIgJHtjb2lufS4gTm90ZTogWW91IHNob3VsZCBuZXZlciBlbnRlciBgLFxuICAgICAgICAnaW5mb3JtYXRpb24gZnJvbSB5b3VyIEtleUNhcmQgaW50byB0b29scyBvdGhlciB0aGFuIHRoZSB0b29scyBCaXRHbyBoYXMgcHVibGlzaGVkLCBvciB5b3VyICcsXG4gICAgICAgICdmdW5kcyBtYXkgYmUgYXQgcmlzayBmb3IgdGhlZnQuJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgICB7XG4gICAgICBxOiAnU2hvdWxkIEkgd3JpdGUgbXkgd2FsbGV0IHBhc3N3b3JkIG9uIG15IEtleUNhcmQ/JyxcbiAgICAgIGE6IFtcbiAgICAgICAgJ05vISBCaXRHb+KAmXMgbXVsdGktc2lnbmF0dXJlIGFwcHJvYWNoIHRvIHNlY3VyaXR5IGRlcGVuZHMgb24gdGhlcmUgbm90IGJlaW5nIGEgc2luZ2xlIHBvaW50ICcsXG4gICAgICAgICdvZiBhdHRhY2suIEJ1dCBpZiB5b3VyIHdhbGxldCBwYXNzd29yZCBpcyBvbiB5b3VyIEtleUNhcmQsIHRoZW4gYW55b25lIHdobyBnYWlucyBhY2Nlc3MgdG8gJyxcbiAgICAgICAgYHlvdXIgS2V5Q2FyZCB3aWxsIGJlIGFibGUgdG8gc3RlYWwgeW91ciAke2NvaW59LiBXZSByZWNvbW1lbmQga2VlcGluZyB5b3VyIHdhbGxldCBwYXNzd29yZCBgLFxuICAgICAgICAnc2FmZSBpbiBhIHNlY3VyZSBwYXNzd29yZCBtYW5hZ2VyIHN1Y2ggYXMgTGFzdFBhc3MsIDFQYXNzd29yZCBvciBLZWVQYXNzLicsXG4gICAgICBdLFxuICAgIH0sXG4gIF07XG59O1xuXG5pbnRlcmZhY2UgR2V0S2V5RGF0YU9wdGlvbnMge1xuICBlbmNyeXB0OiBFbmNyeXB0Rm47XG4gIHVzZXJLZXljaGFpbjogS2V5Y2hhaW47XG4gIGJpdGdvS2V5Y2hhaW46IEtleWNoYWluO1xuICBiYWNrdXBLZXljaGFpbjogS2V5Y2hhaW47XG4gIGNvaW5TaG9ydE5hbWU6IHN0cmluZztcbiAgcGFzc3BocmFzZT86IHN0cmluZztcbiAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZT86IHN0cmluZztcbiAgd2FsbGV0S2V5SUQ/OiBzdHJpbmc7XG4gIGJhY2t1cEtleUlEPzogc3RyaW5nO1xufVxuXG50eXBlIEdldEtleURhdGFBc3luY09wdGlvbnMgPSBPbWl0PEdldEtleURhdGFPcHRpb25zLCAnZW5jcnlwdCc+ICYge1xuICBlbmNyeXB0OiBFbmNyeXB0Rm5Bc3luYztcbiAgZW5jcnlwdGlvblZlcnNpb24/OiBFbmNyeXB0aW9uVmVyc2lvbjtcbn07XG5cbmludGVyZmFjZSBCdWlsZEtleWNhcmRRckRhdGFPcHRpb25zIHtcbiAgdXNlcktleWNoYWluOiBLZXljaGFpbjtcbiAgYml0Z29LZXljaGFpbjogS2V5Y2hhaW47XG4gIGJhY2t1cEtleWNoYWluOiBLZXljaGFpbjtcbiAgY29pblNob3J0TmFtZTogc3RyaW5nO1xuICB3YWxsZXRLZXlJRD86IHN0cmluZztcbiAgYmFja3VwS2V5SUQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQnVpbGQgUVIgY29kZSBwYXlsb2FkIGZvciBlYWNoIGtleWNhcmQgYm94LiBEb2VzIG5vdCBwZXJmb3JtIGVuY3J5cHRpb24uXG4gKi9cbmZ1bmN0aW9uIGJ1aWxkS2V5Y2FyZFFyRGF0YShvcHRpb25zOiBCdWlsZEtleWNhcmRRckRhdGFPcHRpb25zLCBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZTogc3RyaW5nIHwgdW5kZWZpbmVkKTogYW55IHtcbiAgY29uc3QgeyB1c2VyS2V5Y2hhaW4sIGJpdGdvS2V5Y2hhaW4sIGJhY2t1cEtleWNoYWluLCBjb2luU2hvcnROYW1lLCB3YWxsZXRLZXlJRCwgYmFja3VwS2V5SUQgfSA9IG9wdGlvbnM7XG5cbiAgLy8gUERGIFFSIENvZGUgZGF0YVxuICBjb25zdCBxckRhdGE6IGFueSA9IHtcbiAgICB1c2VyOiB7XG4gICAgICB0aXRsZTogJ0E6IFVzZXIgS2V5JyxcbiAgICAgIGRlc2M6ICdUaGlzIGlzIHlvdXIgcHJpdmF0ZSBrZXksIGVuY3J5cHRlZCB3aXRoIHlvdXIgcGFzc2NvZGUuJyxcbiAgICAgIGRhdGE6IHVzZXJLZXljaGFpbi5lbmNyeXB0ZWRQcnYsXG4gICAgfSxcbiAgICBiYWNrdXA6IHtcbiAgICAgIHRpdGxlOiAnQjogQmFja3VwIEtleScsXG4gICAgICBkZXNjOiAnVGhpcyBpcyB5b3VyIGJhY2t1cCBwcml2YXRlIGtleSwgZW5jcnlwdGVkIHdpdGggeW91ciBwYXNzY29kZS4nLFxuICAgICAgZGF0YTogYmFja3VwS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2LFxuICAgIH0sXG4gICAgYml0Z286IHtcbiAgICAgIHRpdGxlOiAnQzogQml0R28gUHVibGljIEtleScsXG4gICAgICBkZXNjOlxuICAgICAgICAnVGhpcyBpcyB0aGUgcHVibGljIHBhcnQgb2YgdGhlIGtleSB0aGF0IEJpdEdvIHdpbGwgdXNlIHRvICcgK1xuICAgICAgICAnY28tc2lnbiB0cmFuc2FjdGlvbnNcXHJcXG53aXRoIHlvdSBvbiB5b3VyIHdhbGxldC4nLFxuICAgICAgZGF0YTogYml0Z29LZXljaGFpbi5wdWIsXG4gICAgfSxcbiAgICBwYXNzY29kZToge1xuICAgICAgdGl0bGU6ICdEOiBFbmNyeXB0ZWQgV2FsbGV0IFBhc3N3b3JkJyxcbiAgICAgIGRlc2M6ICdUaGlzIGlzIHRoZSB3YWxsZXQgIHBhc3N3b3JkLCBlbmNyeXB0ZWQgY2xpZW50LXNpZGUgJyArICd3aXRoIGEga2V5IGhlbGQgYnlcXHJcXG5CaXRHby4nLFxuICAgICAgZGF0YTogZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGUsXG4gICAgfSxcbiAgfTtcblxuICBpZiAod2FsbGV0S2V5SUQpIHtcbiAgICBxckRhdGEudXNlci5rZXlJRCA9IHdhbGxldEtleUlEO1xuICB9XG5cbiAgaWYgKGJhY2t1cEtleUlEKSB7XG4gICAgcXJEYXRhLmJhY2t1cC5rZXlJRCA9IGJhY2t1cEtleUlEO1xuICB9XG5cbiAgaWYgKGlzVW5kZWZpbmVkKHVzZXJLZXljaGFpbi5lbmNyeXB0ZWRQcnYpKSB7XG4gICAgLy8gVXNlciBwcm92aWRlZCB0aGVpciBvd24ga2V5IC0gdGhpcyBpcyBhIGNvbGQgd2FsbGV0XG4gICAgcXJEYXRhLnVzZXIudGl0bGUgPSAnQTogUHJvdmlkZWQgVXNlciBLZXknO1xuICAgIHFyRGF0YS51c2VyLmRlc2MgPSAnVGhpcyBpcyB0aGUgcHVibGljIGtleSB5b3UgcHJvdmlkZWQgZm9yIHlvdXIgd2FsbGV0Lic7XG4gICAgcXJEYXRhLnVzZXIuZGF0YSA9IHVzZXJLZXljaGFpbi5wdWI7XG5cbiAgICAvLyBUaGUgdXNlciBwcm92aWRlZCB0aGVpciBvd24gcHVibGljIGtleSwgd2UgY2FuIHJlbW92ZSBib3ggRFxuICAgIGRlbGV0ZSBxckRhdGEucGFzc2NvZGU7XG4gIH0gZWxzZSBpZiAoaXNVbmRlZmluZWQoZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGUpKSB7XG4gICAgZGVsZXRlIHFyRGF0YS5wYXNzY29kZTtcbiAgfVxuXG4gIGlmICghaXNVbmRlZmluZWQoYmFja3VwS2V5Y2hhaW4ucHJvdmlkZXIpKSB7XG4gICAgY29uc3QgYmFja3VwS2V5UHJvdmlkZXJOYW1lID0gYmFja3VwS2V5Y2hhaW4ucHJvdmlkZXI7XG4gICAgLy8gQmFja3VwIGtleSBoZWxkIHdpdGggS1JTXG4gICAgcXJEYXRhLmJhY2t1cCA9IHtcbiAgICAgIHRpdGxlOiAnQjogQmFja3VwIEtleScsXG4gICAgICBkZXNjOlxuICAgICAgICBgVGhpcyBpcyB0aGUgcHVibGljIGtleSBoZWxkIGF0ICR7YmFja3VwS2V5UHJvdmlkZXJOYW1lfWAgK1xuICAgICAgICBgLCBhbiAke2NvaW5TaG9ydE5hbWV9IHJlY292ZXJ5IHNlcnZpY2UuIElmIHlvdSBsb3NlXFxyXFxueW91ciBrZXksICR7YmFja3VwS2V5UHJvdmlkZXJOYW1lfWAgK1xuICAgICAgICAnIHdpbGwgYmUgYWJsZSB0byBzaWduIHRyYW5zYWN0aW9ucyB0byByZWNvdmVyIGZ1bmRzLicsXG4gICAgICBkYXRhOiBiYWNrdXBLZXljaGFpbi5wdWIsXG4gICAgfTtcbiAgfSBlbHNlIGlmIChpc1VuZGVmaW5lZChiYWNrdXBLZXljaGFpbi5lbmNyeXB0ZWRQcnYpKSB7XG4gICAgLy8gVXNlciBzdXBwbGllZCB0aGUgeHB1YlxuICAgIHFyRGF0YS5iYWNrdXAgPSB7XG4gICAgICB0aXRsZTogJ0I6IEJhY2t1cCBLZXknLFxuICAgICAgZGVzYzogJ1RoaXMgaXMgdGhlIHB1YmxpYyBwb3J0aW9uIG9mIHlvdXIgYmFja3VwIGtleSwgd2hpY2ggeW91IHByb3ZpZGVkLicsXG4gICAgICBkYXRhOiBiYWNrdXBLZXljaGFpbi5wdWIsXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBxckRhdGE7XG59XG5cbi8qKlxuICogVE9ETzogRGVwcmVjYXRlIHRoaXMgZnVuY3Rpb24gaW4gZmF2b3Igb2YgZ2V0S2V5RGF0YUFzeW5jIG9uY2UgdjIgZW5jcnlwdGlvbiBpcyBkZWZhdWx0LlxuICogQ29sbGVjdCBhbGwgZGF0YSB3aGljaCB3aWxsIGdvIG9udG8gdGhlIGtleWNhcmRcbiAqIEBwYXJhbSBvcHRpb25zXG4gKi9cbmZ1bmN0aW9uIGdldEtleURhdGEob3B0aW9uczogR2V0S2V5RGF0YU9wdGlvbnMpOiBhbnkge1xuICBjb25zdCB7IGVuY3J5cHQsIGJhY2t1cEtleWNoYWluLCBwYXNzcGhyYXNlLCBwYXNzY29kZUVuY3J5cHRpb25Db2RlLCAuLi5xck9wdGlvbnMgfSA9IG9wdGlvbnM7XG5cbiAgLy8gV2hlbiB1c2luZyBqdXN0ICdnZW5lcmF0ZVdhbGxldCcsIHdlIGdldCBiYWNrIGFuIHVuZW5jcnlwdGVkIHBydiBmb3IgdGhlIGJhY2t1cCBrZXljaGFpblxuICAvLyBJZiB0aGUgdXNlciBwYXNzZXMgaW4gdGhlaXIgcGFzc3BocmFzZSwgd2UgY2FuIGVuY3J5cHQgaXRcbiAgaWYgKGJhY2t1cEtleWNoYWluLnBydiAmJiBwYXNzcGhyYXNlKSB7XG4gICAgYmFja3VwS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2ID0gZW5jcnlwdCh7XG4gICAgICBpbnB1dDogYmFja3VwS2V5Y2hhaW4ucHJ2LFxuICAgICAgcGFzc3dvcmQ6IHBhc3NwaHJhc2UsXG4gICAgfSk7XG4gIH1cblxuICAvLyBJZiB3ZSBoYXZlIHRoZSBwYXNzY29kZSBlbmNyeXB0aW9uIGNvZGUsIGNyZWF0ZSBhIGJveCBEIHdpdGggdGhlIGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlXG4gIGxldCBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBpZiAocGFzc3BocmFzZSAmJiBwYXNzY29kZUVuY3J5cHRpb25Db2RlKSB7XG4gICAgZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGUgPSBlbmNyeXB0KHtcbiAgICAgIGlucHV0OiBwYXNzcGhyYXNlLFxuICAgICAgcGFzc3dvcmQ6IHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gYnVpbGRLZXljYXJkUXJEYXRhKHsgLi4ucXJPcHRpb25zLCBiYWNrdXBLZXljaGFpbiB9LCBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSk7XG59XG5cbi8qKlxuICogQXN5bmMgdmVyc2lvbiBvZiBnZXRLZXlEYXRhIHdpdGggc3VwcG9ydCBmb3IgdjIgKEFyZ29uMmlkKSBlbmNyeXB0aW9uLlxuICogU2VxdWVudGlhbCBlbmNyeXB0OiBiYWNrdXAga2V5IGZpcnN0LCB0aGVuIHBhc3Njb2RlIChtYXRjaGVzIG9yaWdpbmFsIGdldEtleURhdGFBc3luYykuXG4gKiBAcGFyYW0gb3B0aW9uc1xuICovXG5hc3luYyBmdW5jdGlvbiBnZXRLZXlEYXRhQXN5bmMob3B0aW9uczogR2V0S2V5RGF0YUFzeW5jT3B0aW9ucyk6IFByb21pc2U8YW55PiB7XG4gIGNvbnN0IHsgZW5jcnlwdCwgYmFja3VwS2V5Y2hhaW4sIHBhc3NwaHJhc2UsIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsIGVuY3J5cHRpb25WZXJzaW9uLCAuLi5xck9wdGlvbnMgfSA9IG9wdGlvbnM7XG5cbiAgaWYgKGJhY2t1cEtleWNoYWluLnBydiAmJiBwYXNzcGhyYXNlKSB7XG4gICAgYmFja3VwS2V5Y2hhaW4uZW5jcnlwdGVkUHJ2ID0gYXdhaXQgZW5jcnlwdCh7XG4gICAgICBpbnB1dDogYmFja3VwS2V5Y2hhaW4ucHJ2LFxuICAgICAgcGFzc3dvcmQ6IHBhc3NwaHJhc2UsXG4gICAgICBlbmNyeXB0aW9uVmVyc2lvbixcbiAgICB9KTtcbiAgfVxuXG4gIGxldCBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBpZiAocGFzc3BocmFzZSAmJiBwYXNzY29kZUVuY3J5cHRpb25Db2RlKSB7XG4gICAgZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGUgPSBhd2FpdCBlbmNyeXB0KHtcbiAgICAgIGlucHV0OiBwYXNzcGhyYXNlLFxuICAgICAgcGFzc3dvcmQ6IHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gICAgICBlbmNyeXB0aW9uVmVyc2lvbixcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBidWlsZEtleWNhcmRRckRhdGEoeyAuLi5xck9wdGlvbnMsIGJhY2t1cEtleWNoYWluIH0sIGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlKTtcbn1cblxuaW50ZXJmYWNlIERyYXdLZXljYXJkTGF5b3V0T3B0aW9ucyB7XG4gIGpzUERGOiBhbnk7XG4gIFFSQ29kZTogYW55O1xuICBhY3RpdmF0aW9uQ29kZTogc3RyaW5nO1xuICB3YWxsZXRMYWJlbDogc3RyaW5nO1xuICBjb2luTmFtZTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgRHJhd0tleWNhcmRPcHRpb25zIGV4dGVuZHMgR2V0S2V5RGF0YU9wdGlvbnMsIERyYXdLZXljYXJkTGF5b3V0T3B0aW9ucyB7XG4gIGNvaW5TaG9ydE5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgRHJhd0tleWNhcmRBc3luY09wdGlvbnMgPSBPbWl0PERyYXdLZXljYXJkT3B0aW9ucywgJ2VuY3J5cHQnPiAmIHtcbiAgZW5jcnlwdDogRW5jcnlwdEZuQXN5bmM7XG4gIGVuY3J5cHRpb25WZXJzaW9uPzogRW5jcnlwdGlvblZlcnNpb247XG59O1xuXG4vKipcbiAqIFJlbmRlciBrZXljYXJkIFBERiBwYWdlcyBmcm9tIHByZS1idWlsdCBRUiBkYXRhLlxuICovXG5mdW5jdGlvbiByZW5kZXJLZXljYXJkUGRmKG9wdGlvbnM6IERyYXdLZXljYXJkTGF5b3V0T3B0aW9ucywga2V5RGF0YTogYW55KTogYW55IHtcbiAgY29uc3QgeyBqc1BERiwgUVJDb2RlLCBhY3RpdmF0aW9uQ29kZSwgd2FsbGV0TGFiZWwsIGNvaW5OYW1lIH0gPSBvcHRpb25zO1xuXG4gIGNvbnN0IG1hcmdpbiA9IDMwO1xuXG4gIGNvbnN0IGZvbnQgPSB7XG4gICAgaGVhZGVyOiAyNCxcbiAgICBzdWJoZWFkZXI6IDE1LFxuICAgIGJvZHk6IDEyLFxuICB9O1xuXG4gIGNvbnN0IGNvbG9yID0ge1xuICAgIGJsYWNrOiAnIzAwMDAwMCcsXG4gICAgZGFya2dyYXk6ICcjNGM0YzRjJyxcbiAgICBncmF5OiAnIzliOWI5YicsXG4gICAgcmVkOiAnI2UyMWUxZScsXG4gIH07XG5cbiAgLy8gZG9jdW1lbnQgZGV0YWlsc1xuICBjb25zdCB3aWR0aCA9IDguNSAqIDcyO1xuICBsZXQgeSA9IDA7XG5cbiAgLy8gSGVscGVycyBmb3IgZGF0YSBmb3JtYXR0aW5nIC8gcG9zaXRpb25pbmcgb24gdGhlIHBhcGVyXG4gIGNvbnN0IGxlZnQgPSAoeCkgPT4gbWFyZ2luICsgeDtcbiAgY29uc3QgbW92ZURvd24gPSAoeURlbHRhKSA9PiB7XG4gICAgeSArPSB5RGVsdGE7XG4gIH07XG5cbiAgY29uc3QgZG9jID0gbmV3IGpzUERGKCdwb3J0cmFpdCcsICdwdCcsICdsZXR0ZXInKTtcbiAgZG9jLnNldEZvbnQoJ2hlbHZldGljYScpO1xuXG4gIC8vIFBERiBIZWFkZXIgQXJlYSAtIGluY2x1ZGVzIHRoZSBsb2dvIGFuZCBjb21wYW55IG5hbWVcbiAgLy8gVGhpcyBpcyBkYXRhIGZvciB0aGUgQml0R28gbG9nbyBpbiB0aGUgdG9wIGxlZnQgb2YgdGhlIFBERlxuICBtb3ZlRG93bigzMCk7XG5cbiAgLy8gV2UgZG9uJ3QgY3VycmVudGx5IGFkZCBhbiBpbWFnZSwgc2luY2UgdGhhdCBwYXRoIGlzIGRlcGVuZGVudCBvbiBCaXRHbyBmcm9udGVuZFxuICAvLyBkb2MuYWRkSW1hZ2UoY29pblV0aWxpdHkuZ2V0U2VsZWN0ZWRDb2luT2JqKCkua2V5Q2FyZEltYWdlLCBsZWZ0KDApLCB5ICsgMTApO1xuXG4gIC8vIEFjdGl2YXRpb24gQ29kZVxuICBtb3ZlRG93big4KTtcbiAgZG9jLnNldEZvbnRTaXplKGZvbnQuYm9keSkuc2V0VGV4dENvbG9yKGNvbG9yLmdyYXkpO1xuICBkb2MudGV4dCgnQWN0aXZhdGlvbiBDb2RlJywgbGVmdCg0NjApLCB5KTtcblxuICBkb2Muc2V0Rm9udFNpemUoZm9udC5oZWFkZXIpLnNldFRleHRDb2xvcihjb2xvci5ibGFjayk7XG4gIG1vdmVEb3duKDI1KTtcbiAgZG9jLnRleHQoJ1lvdXIgQml0R28gS2V5Q2FyZCcsIGxlZnQoMTUwKSwgeSk7XG4gIGRvYy5zZXRGb250U2l6ZShmb250LmhlYWRlcikuc2V0VGV4dENvbG9yKGNvbG9yLmdyYXkpO1xuICBkb2MudGV4dChhY3RpdmF0aW9uQ29kZS50b1N0cmluZygpLCBsZWZ0KDQ2MCksIHkpO1xuXG4gIC8vIFN1YmhlYWRlclxuICAvLyB0aXRsZXNcbiAgbW92ZURvd24obWFyZ2luKTtcbiAgZG9jLnNldEZvbnRTaXplKGZvbnQuYm9keSkuc2V0VGV4dENvbG9yKGNvbG9yLmdyYXkpO1xuICBkb2MudGV4dChcbiAgICBgQ3JlYXRlZCBvbiAke25ldyBEYXRlKCkudG9EYXRlU3RyaW5nKCl9IGJ5ICR7d2luZG93LmxvY2F0aW9uLmhvc3RuYW1lfSBmb3Igd2FsbGV0IG5hbWVkICR7d2FsbGV0TGFiZWx9YCxcbiAgICBsZWZ0KDApLFxuICAgIHlcbiAgKTtcbiAgLy8gY29weVxuICBtb3ZlRG93bigyNSk7XG4gIGRvYy5zZXRGb250U2l6ZShmb250LnN1YmhlYWRlcikuc2V0VGV4dENvbG9yKGNvbG9yLmJsYWNrKTtcbiAgZG9jLnRleHQod2FsbGV0TGFiZWwsIGxlZnQoMCksIHkpO1xuICAvLyBSZWQgQmFyXG4gIG1vdmVEb3duKDIwKTtcbiAgZG9jLnNldEZpbGxDb2xvcigyNTUsIDIzMCwgMjMwKTtcbiAgZG9jLnJlY3QobGVmdCgwKSwgeSwgd2lkdGggLSAyICogbWFyZ2luLCAzMiwgJ0YnKTtcblxuICAvLyB3YXJuaW5nIG1lc3NhZ2VcbiAgbW92ZURvd24oMjApO1xuICBkb2Muc2V0Rm9udFNpemUoZm9udC5ib2R5KS5zZXRUZXh0Q29sb3IoY29sb3IucmVkKTtcbiAgZG9jLnRleHQoJ1ByaW50IHRoaXMgZG9jdW1lbnQsIG9yIGtlZXAgaXQgc2VjdXJlbHkgb2ZmbGluZS4gU2VlIHNlY29uZCBwYWdlIGZvciBGQVEuJywgbGVmdCg3NSksIHkpO1xuXG4gIG1vdmVEb3duKDM1KTtcbiAgY29uc3QgcXJTaXplID0gMTMwO1xuXG4gIC8vIERyYXcgZWFjaCBCb3ggd2l0aCBRUiBjb2RlIGFuZCBkZXNjcmlwdGlvblxuICBPYmplY3Qua2V5cyhrZXlEYXRhKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXlUeXBlKSB7XG4gICAgY29uc3Qga2V5ID0ga2V5RGF0YVtrZXlUeXBlXTtcbiAgICBjb25zdCB0b3BZID0geTtcblxuICAgIC8vIERvbid0IGluZGVudCBpZiB3ZSdyZSBub3QgcHJvZHVjaW5nIFFSIGNvZGVzXG4gICAgY29uc3QgdGV4dExlZnQgPSAhIVFSQ29kZSA/IGxlZnQocXJTaXplICsgMTUpIDogbGVmdCgxNSk7XG5cbiAgICAvLyBEcmF3IGEgUVIgY29kZSBpZiBsaWJyYXJ5IGlzIGF2YWlsYWJsZVxuICAgIGlmIChRUkNvZGUpIHtcbiAgICAgIGNvbnN0IGRhdGFVUkwgPSBuZXcgUVJDb2RlKHsgdmFsdWU6IGtleS5kYXRhLCBzaXplOiBxclNpemUgfSkudG9EYXRhVVJMKCdpbWFnZS9qcGVnJyk7XG4gICAgICBkb2MuYWRkSW1hZ2UoZGF0YVVSTCwgbGVmdCgwKSwgeSwgcXJTaXplLCBxclNpemUpO1xuICAgIH1cblxuICAgIGRvYy5zZXRGb250U2l6ZShmb250LnN1YmhlYWRlcikuc2V0VGV4dENvbG9yKGNvbG9yLmJsYWNrKTtcbiAgICBtb3ZlRG93bigxMCk7XG4gICAgZG9jLnRleHQoa2V5LnRpdGxlLCB0ZXh0TGVmdCwgeSk7XG4gICAgbW92ZURvd24oMTUpO1xuICAgIGRvYy5zZXRGb250U2l6ZShmb250LmJvZHkpLnNldFRleHRDb2xvcihjb2xvci5kYXJrZ3JheSk7XG4gICAgZG9jLnRleHQoa2V5LmRlc2MsIHRleHRMZWZ0LCB5KTtcbiAgICBtb3ZlRG93bigzMCk7XG4gICAgZG9jLnNldEZvbnRTaXplKGZvbnQuYm9keSAtIDIpO1xuICAgIGRvYy50ZXh0KCdEYXRhOicsIHRleHRMZWZ0LCB5KTtcbiAgICBtb3ZlRG93bigxNSk7XG4gICAgY29uc3QgaW5uZXJXaWR0aCA9IDcyICogOC41IC0gdGV4dExlZnQgLSAzMDtcbiAgICBkb2Muc2V0Rm9udCgnY291cmllcicpLnNldEZvbnRTaXplKDkpLnNldFRleHRDb2xvcihjb2xvci5ibGFjayk7XG4gICAgY29uc3QgbGluZXMgPSBkb2Muc3BsaXRUZXh0VG9TaXplKGtleS5kYXRhLCBpbm5lcldpZHRoKTtcbiAgICBkb2MudGV4dChsaW5lcywgdGV4dExlZnQsIHkpO1xuXG4gICAgLy8gQWRkIGtleSBJRCAoZGVyaXZhdGlvbiBzdHJpbmcpIGlmIGl0IGV4aXN0c1xuICAgIGlmIChrZXkua2V5SUQpIHtcbiAgICAgIGNvbnN0IHRleHQgPSAnS2V5IElkOiAnICsga2V5LmtleUlEO1xuICAgICAgLy8gR3JheSBiYXJcbiAgICAgIG1vdmVEb3duKDQ1KTtcbiAgICAgIGRvYy5zZXRGaWxsQ29sb3IoMjQ3LCAyNDksIDI0OSk7IC8vIEdyYXkgYmFja2dyb3VuZFxuICAgICAgZG9jLnNldERyYXdDb2xvcigwLCAwLCAwKTsgLy8gQm9yZGVyXG4gICAgICBkb2MucmVjdCh0ZXh0TGVmdCwgeSwgd2lkdGgsIDE1LCAnRkQnKTtcblxuICAgICAgZG9jLnRleHQodGV4dCwgdGV4dExlZnQgKyA1LCB5ICsgMTApO1xuICAgIH1cblxuICAgIGRvYy5zZXRGb250KCdoZWx2ZXRpY2EnKTtcbiAgICAvLyBNb3ZlIGRvd24gdGhlIHNpemUgb2YgdGhlIFFSIGNvZGUgbWludXMgYWNjdW11bGF0ZWQgaGVpZ2h0IG9uIHRoZSByaWdodCBzaWRlLCBwbHVzIGJ1ZmZlclxuICAgIG1vdmVEb3duKHFyU2l6ZSAtICh5IC0gdG9wWSkgKyAxNSk7XG4gIH0pO1xuXG4gIC8vIEFkZCBhIG5ldyBwYWdlIChRICsgQSBwYWdlKVxuICBkb2MuYWRkUGFnZSgpO1xuXG4gIC8vIDJuZCBwYWdlIHRpdGxlXG4gIHkgPSAwO1xuICBtb3ZlRG93big1NSk7XG4gIGRvYy5zZXRGb250U2l6ZShmb250LmhlYWRlcikuc2V0VGV4dENvbG9yKGNvbG9yLmJsYWNrKTtcbiAgZG9jLnRleHQoJ0JpdEdvIEtleUNhcmQgRkFRJywgbGVmdCgwKSwgeSk7XG5cbiAgY29uc3QgcXVlc3Rpb25zID0gZ2VuZXJhdGVRdWVzdGlvbnMoY29pbk5hbWUpO1xuXG4gIC8vIERyYXcgdGhlIFEgKyBBIGRhdGEgb24gdGhlIHNlY29uZCBwYWdlXG4gIG1vdmVEb3duKDMwKTtcbiAgcXVlc3Rpb25zLmZvckVhY2goZnVuY3Rpb24gKHEpIHtcbiAgICBkb2Muc2V0Rm9udFNpemUoZm9udC5zdWJoZWFkZXIpLnNldFRleHRDb2xvcihjb2xvci5ibGFjayk7XG4gICAgZG9jLnRleHQocS5xLCBsZWZ0KDApLCB5KTtcbiAgICBtb3ZlRG93bigyMCk7XG4gICAgZG9jLnNldEZvbnRTaXplKGZvbnQuYm9keSkuc2V0VGV4dENvbG9yKGNvbG9yLmRhcmtncmF5KTtcbiAgICBxLmEuZm9yRWFjaChmdW5jdGlvbiAobGluZSkge1xuICAgICAgZG9jLnRleHQobGluZSwgbGVmdCgwKSwgeSk7XG4gICAgICBtb3ZlRG93bihmb250LmJvZHkgKyAzKTtcbiAgICB9KTtcbiAgICBtb3ZlRG93bigyMik7XG4gIH0pO1xuXG4gIHJldHVybiBkb2M7XG59XG5cbi8qKlxuICogVE9ETzogRGVwcmVjYXRlIHRoaXMgZnVuY3Rpb24gaW4gZmF2b3Igb2YgZHJhd0tleWNhcmRBc3luYyBvbmNlIHYyIGVuY3J5cHRpb24gaXMgZGVmYXVsdC5cbiAqIERyYXcgYSBrZXljYXJkIGludG8gYSBuZXcgcGRmIGRvY3VtZW50IG9iamVjdFxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRyYXdLZXljYXJkKG9wdGlvbnM6IERyYXdLZXljYXJkT3B0aW9ucyk6IGFueSB7XG4gIGNvbnN0IHtcbiAgICBlbmNyeXB0LFxuICAgIHBhc3NwaHJhc2UsXG4gICAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgICB3YWxsZXRLZXlJRCxcbiAgICBiYWNrdXBLZXlJRCxcbiAgICB1c2VyS2V5Y2hhaW4sXG4gICAgYml0Z29LZXljaGFpbixcbiAgICBiYWNrdXBLZXljaGFpbixcbiAgICBjb2luU2hvcnROYW1lLFxuICAgIGpzUERGLFxuICAgIFFSQ29kZSxcbiAgICBhY3RpdmF0aW9uQ29kZSxcbiAgICB3YWxsZXRMYWJlbCxcbiAgICBjb2luTmFtZSxcbiAgfSA9IG9wdGlvbnM7XG5cbiAgY29uc3Qga2V5RGF0YSA9IGdldEtleURhdGEoe1xuICAgIGVuY3J5cHQsXG4gICAgY29pblNob3J0TmFtZSxcbiAgICBwYXNzcGhyYXNlLFxuICAgIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gICAgd2FsbGV0S2V5SUQsXG4gICAgYmFja3VwS2V5SUQsXG4gICAgdXNlcktleWNoYWluLFxuICAgIGJpdGdvS2V5Y2hhaW4sXG4gICAgYmFja3VwS2V5Y2hhaW4sXG4gIH0pO1xuXG4gIHJldHVybiByZW5kZXJLZXljYXJkUGRmKHsganNQREYsIFFSQ29kZSwgYWN0aXZhdGlvbkNvZGUsIHdhbGxldExhYmVsLCBjb2luTmFtZSB9LCBrZXlEYXRhKTtcbn1cblxuLyoqXG4gKiBBc3luYyB2ZXJzaW9uIG9mIGRyYXdLZXljYXJkIHdpdGggc3VwcG9ydCBmb3IgdjIgKEFyZ29uMmlkKSBlbmNyeXB0aW9uLlxuICogVXNlIHRoaXMgd2hlbiB0aGUgZW5jcnlwdCBjYWxsYmFjayBtYXkgcmV0dXJuIGEgUHJvbWlzZSAoZS5nLiBlbmNyeXB0QXN5bmMpLlxuICpcbiAqIERyYXcgYSBrZXljYXJkIGludG8gYSBuZXcgcGRmIGRvY3VtZW50IG9iamVjdFxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRyYXdLZXljYXJkQXN5bmMob3B0aW9uczogRHJhd0tleWNhcmRBc3luY09wdGlvbnMpOiBQcm9taXNlPGFueT4ge1xuICBjb25zdCB7XG4gICAgZW5jcnlwdCxcbiAgICBwYXNzcGhyYXNlLFxuICAgIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gICAgd2FsbGV0S2V5SUQsXG4gICAgYmFja3VwS2V5SUQsXG4gICAgdXNlcktleWNoYWluLFxuICAgIGJpdGdvS2V5Y2hhaW4sXG4gICAgYmFja3VwS2V5Y2hhaW4sXG4gICAgY29pblNob3J0TmFtZSxcbiAgICBqc1BERixcbiAgICBRUkNvZGUsXG4gICAgYWN0aXZhdGlvbkNvZGUsXG4gICAgd2FsbGV0TGFiZWwsXG4gICAgY29pbk5hbWUsXG4gICAgZW5jcnlwdGlvblZlcnNpb24sXG4gIH0gPSBvcHRpb25zO1xuXG4gIC8vIEdldCB0aGUgZGF0YSBmb3IgdGhlIGZpcnN0IHBhZ2UgKHFyIGNvZGVzKVxuICBjb25zdCBrZXlEYXRhID0gYXdhaXQgZ2V0S2V5RGF0YUFzeW5jKHtcbiAgICBlbmNyeXB0LFxuICAgIGNvaW5TaG9ydE5hbWUsXG4gICAgcGFzc3BocmFzZSxcbiAgICBwYXNzY29kZUVuY3J5cHRpb25Db2RlLFxuICAgIHdhbGxldEtleUlELFxuICAgIGJhY2t1cEtleUlELFxuICAgIHVzZXJLZXljaGFpbixcbiAgICBiaXRnb0tleWNoYWluLFxuICAgIGJhY2t1cEtleWNoYWluLFxuICAgIGVuY3J5cHRpb25WZXJzaW9uLFxuICB9KTtcblxuICByZXR1cm4gcmVuZGVyS2V5Y2FyZFBkZih7IGpzUERGLCBRUkNvZGUsIGFjdGl2YXRpb25Db2RlLCB3YWxsZXRMYWJlbCwgY29pbk5hbWUgfSwga2V5RGF0YSk7XG59XG4iXX0=
|
|
364
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5Y2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9pbnRlcm5hbC9rZXljYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRzs7QUEyWkgsa0NBK0JDO0FBU0QsNENBa0NDO0FBbmVEO0dBQ0c7QUFDSCxtQ0FBcUM7QUFJckM7OztHQUdHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO0lBQ3pDLE9BQU87UUFDTDtZQUNFLENBQUMsRUFBRSxzQkFBc0I7WUFDekIsQ0FBQyxFQUFFO2dCQUNELCtFQUErRSxJQUFJLEdBQUc7Z0JBQ3RGLDJEQUEyRCxHQUFHLGdDQUFnQztnQkFDOUYsdUZBQXVGO2FBQ3hGO1NBQ0Y7UUFDRDtZQUNFLENBQUMsRUFBRSwyQkFBMkI7WUFDOUIsQ0FBQyxFQUFFO2dCQUNELCtGQUErRjtnQkFDL0YsbUdBQW1HO2dCQUNuRyxnREFBZ0Q7Z0JBQ2hELEVBQUU7Z0JBQ0YsNkZBQTZGO2dCQUM3RiwrRkFBK0Y7Z0JBQy9GLHNEQUFzRDthQUN2RDtTQUNGO1FBQ0Q7WUFDRSxDQUFDLEVBQUUsZ0NBQWdDO1lBQ25DLENBQUMsRUFBRTtnQkFDRCxnRUFBZ0UsSUFBSSwyQkFBMkI7Z0JBQy9GLCtGQUErRjtnQkFDL0YsdUNBQXVDO2dCQUN2QywwQ0FBMEM7YUFDM0M7U0FDRjtRQUNEO1lBQ0UsQ0FBQyxFQUFFLGtDQUFrQztZQUNyQyxDQUFDLEVBQUU7Z0JBQ0Qsa0dBQWtHO2dCQUNsRyx1RkFBdUY7Z0JBQ3ZGLHNGQUFzRjtnQkFDdEYsNkZBQTZGO2dCQUM3RiwrQ0FBK0M7YUFDaEQ7U0FDRjtRQUNEO1lBQ0UsQ0FBQyxFQUFFLDhDQUE4QztZQUNqRCxDQUFDLEVBQUU7Z0JBQ0Qsd0ZBQXdGO2dCQUN4Riw2RkFBNkY7YUFDOUY7U0FDRjtRQUNEO1lBQ0UsQ0FBQyxFQUFFLDREQUE0RDtZQUMvRCxDQUFDLEVBQUU7Z0JBQ0Qsb0ZBQW9G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R0FBRyxPQUFPLENBQUM7SUFFWiw2Q0FBNkM7SUFDN0MsTUFBTSxPQUFPLEdBQUcsTUFBTSxlQUFlLENBQUM7UUFDcEMsT0FBTztRQUNQLGFBQWE7UUFDYixVQUFVO1FBQ1Ysc0JBQXNCO1FBQ3RCLFdBQVc7UUFDWCxXQUFXO1FBQ1gsWUFBWTtRQUNaLGFBQWE7UUFDYixjQUFjO1FBQ2QsaUJBQWlCO0tBQ2xCLENBQUMsQ0FBQztJQUVILE9BQU8sZ0JBQWdCLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDN0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGhpZGRlblxuICovXG5cbi8qKlxuICovXG5pbXBvcnQgeyBpc1VuZGVmaW5lZCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBLZXljaGFpbiB9IGZyb20gJy4uL2tleWNoYWluJztcbmltcG9ydCB7IEVuY3J5cHRGbiwgRW5jcnlwdEZuQXN5bmMsIEVuY3J5cHRpb25WZXJzaW9uIH0gZnJvbSAnLi4vLi4vYXBpJztcblxuLyoqXG4gKiBSZXR1cm4gdGhlIGxpc3Qgb2YgcXVlc3Rpb25zIHRoYXQgd2lsbCBhcHBlYXIgb24gdGhlIHNlY29uZCBwYWdlIG9mIHRoZSBrZXljYXJkXG4gKiBAcGFyYW0gY29pbiBuYW1lIG9mIHRoZSBjb2luXG4gKi9cbmNvbnN0IGdlbmVyYXRlUXVlc3Rpb25zID0gKGNvaW46IHN0cmluZykgPT4ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIHE6ICdXaGF0IGlzIHRoZSBLZXlDYXJkPycsXG4gICAgICBhOiBbXG4gICAgICAgIGBUaGUgS2V5Q2FyZCBjb250YWlucyBpbXBvcnRhbnQgaW5mb3JtYXRpb24gd2hpY2ggY2FuIGJlIHVzZWQgdG8gcmVjb3ZlciB0aGUgJHtjb2lufSBgLFxuICAgICAgICAnZnJvbSB5b3VyIHdhbGxldCBpbiBzZXZlcmFsIHNpdHVhdGlvbnMuIEVhY2ggQml0R28gd2FsbGV0JyArICcgaGFzIGl0cyBvd24sIHVuaXF1ZSBLZXlDYXJkLiAnLFxuICAgICAgICAnSWYgeW91IGhhdmUgY3JlYXRlZCBtdWx0aXBsZSB3YWxsZXRzLCB5b3Ugc2hvdWxkIHJldGFpbiB0aGUgS2V5Q2FyZCBmb3IgZWFjaCBvZiB0aGVtLicsXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcTogJ1doYXQgc2hvdWxkIEkgZG8gd2l0aCBpdD8nLFxuICAgICAgYTogW1xuICAgICAgICAnWW91IHNob3VsZCBwcmludCB0aGUgS2V5Q2FyZCBhbmQvb3Igc2F2ZSB0aGUgUERGIHRvIGFuIG9mZmxpbmUgc3RvcmFnZSBkZXZpY2UuIFRoZSBwcmludC1vdXQgJyxcbiAgICAgICAgXCJvciBVU0Igc3RpY2sgc2hvdWxkIGJlIGtlcHQgaW4gYSBzYWZlIHBsYWNlLCBzdWNoIGFzIGEgYmFuayB2YXVsdCBvciBob21lIHNhZmUuIEl0J3MgYSBnb29kIGlkZWEgXCIsXG4gICAgICAgICd0byBrZWVwIGEgc2Vjb25kIGNvcHkgaW4gYSBkaWZmZXJlbnQgbG9jYXRpb24uJyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiSW1wb3J0YW50OiBJZiB5b3UgaGF2ZW4ndCBwcm92aWRlZCBhbiBleHRlcm5hbCBiYWNrdXAga2V5LCB0aGVuIHRoZSBvcmlnaW5hbCBQREYgc2hvdWxkIGJlIFwiLFxuICAgICAgICAnZGVsZXRlZCBmcm9tIGFueSBtYWNoaW5lIHdoZXJlIHRoZSB3YWxsZXQgd2lsbCBiZSByZWd1bGFybHkgYWNjZXNzZWQgdG8gcHJldmVudCBtYWx3YXJlIGZyb20gJyxcbiAgICAgICAgJ2NhcHR1cmluZyBib3RoIHRoZSBLZXlDYXJkIGFuZCB5b3VyIHdhbGxldCBwYXNzY29kZS4nLFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHE6ICdXaGF0IHNob3VsZCBJIGRvIGlmIEkgbG9zZSBpdD8nLFxuICAgICAgYTogW1xuICAgICAgICBgSWYgeW91IGhhdmUgbG9zdCBvciBkYW1hZ2VkIGFsbCBjb3BpZXMgb2YgeW91ciBLZXlDYXJkLCB5b3VyICR7Y29pbn0gaXMgc3RpbGwgc2FmZSwgYnV0IHRoaXMgYCxcbiAgICAgICAgJ3dhbGxldCBzaG91bGQgYmUgY29uc2lkZXJlZCBhdCByaXNrIGZvciBsb3NzLiBBcyBzb29uIGFzIGlzIGNvbnZlbmllbnQsIHlvdSBzaG91bGQgdXNlIEJpdEdvICcsXG4gICAgICAgICd0byBlbXB0eSB0aGUgd2FsbGV0IGludG8gYSBuZXcgd2FsbGV0JyxcbiAgICAgICAgJywgYW5kIGRpc2NvbnRpbnVlIHVzZSBvZiB0aGUgb2xkIHdhbGxldC4nLFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHE6ICdXaGF0IGlmIHNvbWVvbmUgc2VlcyBteSBLZXlDYXJkPycsXG4gICAgICBhOiBbXG4gICAgICAgIFwiRG9uJ3QgcGFuaWMhIEFsbCBzZW5zaXRpdmUgaW5mb3JtYXRpb24gb24gdGhlIEtleUNhcmQgaXMgZW5jcnlwdGVkIHdpdGggeW91ciBwYXNzY29kZSwgb3Igd2l0aCBhXCIsXG4gICAgICAgICdrZXkgd2hpY2ggb25seSBCaXRHbyBoYXMuIEJ1dCwgaW4gZ2VuZXJhbCwgeW91IHNob3VsZCBtYWtlIGJlc3QgZWZmb3J0cyB0byBrZWVwIHlvdXIgJyxcbiAgICAgICAgJ0tleUNhcmQgcHJpdmF0ZS4gSWYgeW91ciBLZXlDYXJkIGRvZXMgZ2V0IGV4cG9zZWQgb3IgY29waWVkIGluIGEgd2F5IHRoYXQgbWFrZXMgeW91ICcsXG4gICAgICAgICd1bmNvbWZvcnRhYmxlLCB0aGUgYmVzdCBjb3Vyc2Ugb2YgYWN0aW9uIGlzIHRvIGVtcHR5IHRoZSBjb3JyZXNwb25kaW5nIHdhbGxldCBpbnRvIGFub3RoZXIgJyxcbiAgICAgICAgJ3dhbGxldCBhbmQgZGlzY29udGludWUgdXNlIG9mIHRoZSBvbGQgd2FsbGV0LicsXG4gICAgICBdLFxuICAgIH0sXG4gICAge1xuICAgICAgcTogJ1doYXQgaWYgSSBmb3JnZXQgb3IgbG9zZSBteSB3YWxsZXQgcGFzc3dvcmQ/JyxcbiAgICAgIGE6IFtcbiAgICAgICAgJ0JpdEdvIGNhbiB1c2UgdGhlIGluZm9ybWF0aW9uIGluIFFSIENvZGUgRCB0byBoZWxwIHlvdSByZWNvdmVyIGFjY2VzcyB0byB5b3VyIHdhbGxldC4gJyxcbiAgICAgICAgJ1dpdGhvdXQgdGhlIEtleUNhcmQsIEJpdEdvIGlzIG5vdCBhYmxlIHRvIHJlY292ZXIgZnVuZHMgZnJvbSBhIHdhbGxldCB3aXRoIGEgbG9zdCBwYXNzd29yZC4nLFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHE6ICdXaGF0IGlmIEJpdEdvIGJlY29tZXMgaW5hY2Nlc3NpYmxlIGZvciBhbiBleHRlbmRlZCBwZXJpb2Q/JyxcbiAgICAgIGE6IFtcbiAgICAgICAgJ1lvdXIgS2V5Q2FyZCBhbmQgd2FsbGV0IHBhc3Njb2RlIGNhbiBiZSB1c2VkIHRvZ2V0aGVyIHdpdGggQml0R2/igJlzIHB1Ymxpc2hlZCBvcGVuICcsXG4gICAgICAgIGBzb3VyY2UgdG9vbHMgYXQgaHR0cHM6Ly9naXRodWIuY29tL2JpdGdvIHRvIHJlY292ZXIgeW91ciAke2NvaW59LiBOb3RlOiBZb3Ugc2hvdWxkIG5ldmVyIGVudGVyIGAsXG4gICAgICAgICdpbmZvcm1hdGlvbiBmcm9tIHlvdXIgS2V5Q2FyZCBpbnRvIHRvb2xzIG90aGVyIHRoYW4gdGhlIHRvb2xzIEJpdEdvIGhhcyBwdWJsaXNoZWQsIG9yIHlvdXIgJyxcbiAgICAgICAgJ2Z1bmRzIG1heSBiZSBhdCByaXNrIGZvciB0aGVmdC4nLFxuICAgICAgXSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHE6ICdTaG91bGQgSSB3cml0ZSBteSB3YWxsZXQgcGFzc3dvcmQgb24gbXkgS2V5Q2FyZD8nLFxuICAgICAgYTogW1xuICAgICAgICAnTm8hIEJpdEdv4oCZcyBtdWx0aS1zaWduYXR1cmUgYXBwcm9hY2ggdG8gc2VjdXJpdHkgZGVwZW5kcyBvbiB0aGVyZSBub3QgYmVpbmcgYSBzaW5nbGUgcG9pbnQgJyxcbiAgICAgICAgJ29mIGF0dGFjay4gQnV0IGlmIHlvdXIgd2FsbGV0IHBhc3N3b3JkIGlzIG9uIHlvdXIgS2V5Q2FyZCwgdGhlbiBhbnlvbmUgd2hvIGdhaW5zIGFjY2VzcyB0byAnLFxuICAgICAgICBgeW91ciBLZXlDYXJkIHdpbGwgYmUgYWJsZSB0byBzdGVhbCB5b3VyICR7Y29pbn0uIFdlIHJlY29tbWVuZCBrZWVwaW5nIHlvdXIgd2FsbGV0IHBhc3N3b3JkIGAsXG4gICAgICAgICdzYWZlIGluIGEgc2VjdXJlIHBhc3N3b3JkIG1hbmFnZXIgc3VjaCBhcyBMYXN0UGFzcywgMVBhc3N3b3JkIG9yIEtlZVBhc3MuJyxcbiAgICAgIF0sXG4gICAgfSxcbiAgXTtcbn07XG5cbmludGVyZmFjZSBHZXRLZXlEYXRhT3B0aW9ucyB7XG4gIGVuY3J5cHQ6IEVuY3J5cHRGbjtcbiAgdXNlcktleWNoYWluOiBLZXljaGFpbjtcbiAgYml0Z29LZXljaGFpbjogS2V5Y2hhaW47XG4gIGJhY2t1cEtleWNoYWluOiBLZXljaGFpbjtcbiAgY29pblNob3J0TmFtZTogc3RyaW5nO1xuICBwYXNzcGhyYXNlPzogc3RyaW5nO1xuICBwYXNzY29kZUVuY3J5cHRpb25Db2RlPzogc3RyaW5nO1xuICB3YWxsZXRLZXlJRD86IHN0cmluZztcbiAgYmFja3VwS2V5SUQ/OiBzdHJpbmc7XG59XG5cbnR5cGUgR2V0S2V5RGF0YUFzeW5jT3B0aW9ucyA9IE9taXQ8R2V0S2V5RGF0YU9wdGlvbnMsICdlbmNyeXB0Jz4gJiB7XG4gIGVuY3J5cHQ6IEVuY3J5cHRGbkFzeW5jO1xuICBlbmNyeXB0aW9uVmVyc2lvbj86IEVuY3J5cHRpb25WZXJzaW9uO1xufTtcblxuaW50ZXJmYWNlIEJ1aWxkS2V5Y2FyZFFyRGF0YU9wdGlvbnMge1xuICB1c2VyS2V5Y2hhaW46IEtleWNoYWluO1xuICBiaXRnb0tleWNoYWluOiBLZXljaGFpbjtcbiAgYmFja3VwS2V5Y2hhaW46IEtleWNoYWluO1xuICBjb2luU2hvcnROYW1lOiBzdHJpbmc7XG4gIHdhbGxldEtleUlEPzogc3RyaW5nO1xuICBiYWNrdXBLZXlJRD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBCdWlsZCBRUiBjb2RlIHBheWxvYWQgZm9yIGVhY2gga2V5Y2FyZCBib3guIERvZXMgbm90IHBlcmZvcm0gZW5jcnlwdGlvbi5cbiAqL1xuZnVuY3Rpb24gYnVpbGRLZXljYXJkUXJEYXRhKG9wdGlvbnM6IEJ1aWxkS2V5Y2FyZFFyRGF0YU9wdGlvbnMsIGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBhbnkge1xuICBjb25zdCB7IHVzZXJLZXljaGFpbiwgYml0Z29LZXljaGFpbiwgYmFja3VwS2V5Y2hhaW4sIGNvaW5TaG9ydE5hbWUsIHdhbGxldEtleUlELCBiYWNrdXBLZXlJRCB9ID0gb3B0aW9ucztcblxuICAvLyBQREYgUVIgQ29kZSBkYXRhXG4gIGNvbnN0IHFyRGF0YTogYW55ID0ge1xuICAgIHVzZXI6IHtcbiAgICAgIHRpdGxlOiAnQTogVXNlciBLZXknLFxuICAgICAgZGVzYzogJ1RoaXMgaXMgeW91ciBwcml2YXRlIGtleSwgZW5jcnlwdGVkIHdpdGggeW91ciBwYXNzY29kZS4nLFxuICAgICAgZGF0YTogdXNlcktleWNoYWluLmVuY3J5cHRlZFBydixcbiAgICB9LFxuICAgIGJhY2t1cDoge1xuICAgICAgdGl0bGU6ICdCOiBCYWNrdXAgS2V5JyxcbiAgICAgIGRlc2M6ICdUaGlzIGlzIHlvdXIgYmFja3VwIHByaXZhdGUga2V5LCBlbmNyeXB0ZWQgd2l0aCB5b3VyIHBhc3Njb2RlLicsXG4gICAgICBkYXRhOiBiYWNrdXBLZXljaGFpbi5lbmNyeXB0ZWRQcnYsXG4gICAgfSxcbiAgICBiaXRnbzoge1xuICAgICAgdGl0bGU6ICdDOiBCaXRHbyBLZXknLFxuICAgICAgZGVzYzogJ1RoaXMgaXMgdGhlIHB1YmxpYyBwYXJ0IG9mIHRoZSBrZXkgaGVsZCBieSBCaXRHby4nLFxuICAgICAgZGF0YTogYml0Z29LZXljaGFpbi5wdWIsXG4gICAgfSxcbiAgICBwYXNzY29kZToge1xuICAgICAgdGl0bGU6ICdEOiBFbmNyeXB0ZWQgV2FsbGV0IFBhc3N3b3JkJyxcbiAgICAgIGRlc2M6ICdUaGlzIGlzIHRoZSB3YWxsZXQgcGFzc3dvcmQsIGVuY3J5cHRlZCBjbGllbnQtc2lkZSAnICsgJ3dpdGggYSBrZXkgaGVsZCBieVxcclxcbkJpdEdvLicsXG4gICAgICBkYXRhOiBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSxcbiAgICB9LFxuICB9O1xuXG4gIGlmICh3YWxsZXRLZXlJRCkge1xuICAgIHFyRGF0YS51c2VyLmtleUlEID0gd2FsbGV0S2V5SUQ7XG4gIH1cblxuICBpZiAoYmFja3VwS2V5SUQpIHtcbiAgICBxckRhdGEuYmFja3VwLmtleUlEID0gYmFja3VwS2V5SUQ7XG4gIH1cblxuICBpZiAoaXNVbmRlZmluZWQodXNlcktleWNoYWluLmVuY3J5cHRlZFBydikpIHtcbiAgICAvLyBVc2VyIHByb3ZpZGVkIHRoZWlyIG93biBrZXkgLSB0aGlzIGlzIGEgY29sZCB3YWxsZXRcbiAgICBxckRhdGEudXNlci50aXRsZSA9ICdBOiBQcm92aWRlZCBVc2VyIEtleSc7XG4gICAgcXJEYXRhLnVzZXIuZGVzYyA9ICdUaGlzIGlzIHRoZSBwdWJsaWMga2V5IHlvdSBwcm92aWRlZCBmb3IgeW91ciB3YWxsZXQuJztcbiAgICBxckRhdGEudXNlci5kYXRhID0gdXNlcktleWNoYWluLnB1YjtcblxuICAgIC8vIFRoZSB1c2VyIHByb3ZpZGVkIHRoZWlyIG93biBwdWJsaWMga2V5LCB3ZSBjYW4gcmVtb3ZlIGJveCBEXG4gICAgZGVsZXRlIHFyRGF0YS5wYXNzY29kZTtcbiAgfSBlbHNlIGlmIChpc1VuZGVmaW5lZChlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSkpIHtcbiAgICBkZWxldGUgcXJEYXRhLnBhc3Njb2RlO1xuICB9XG5cbiAgaWYgKCFpc1VuZGVmaW5lZChiYWNrdXBLZXljaGFpbi5wcm92aWRlcikpIHtcbiAgICBjb25zdCBiYWNrdXBLZXlQcm92aWRlck5hbWUgPSBiYWNrdXBLZXljaGFpbi5wcm92aWRlcjtcbiAgICAvLyBCYWNrdXAga2V5IGhlbGQgd2l0aCBLUlNcbiAgICBxckRhdGEuYmFja3VwID0ge1xuICAgICAgdGl0bGU6ICdCOiBCYWNrdXAgS2V5JyxcbiAgICAgIGRlc2M6XG4gICAgICAgIGBUaGlzIGlzIHRoZSBwdWJsaWMga2V5IGhlbGQgYXQgJHtiYWNrdXBLZXlQcm92aWRlck5hbWV9YCArXG4gICAgICAgIGAsIGFuICR7Y29pblNob3J0TmFtZX0gcmVjb3Zlcnkgc2VydmljZS4gSWYgeW91IGxvc2VcXHJcXG55b3VyIGtleSwgJHtiYWNrdXBLZXlQcm92aWRlck5hbWV9YCArXG4gICAgICAgICcgd2lsbCBiZSBhYmxlIHRvIHNpZ24gdHJhbnNhY3Rpb25zIHRvIHJlY292ZXIgZnVuZHMuJyxcbiAgICAgIGRhdGE6IGJhY2t1cEtleWNoYWluLnB1YixcbiAgICB9O1xuICB9IGVsc2UgaWYgKGlzVW5kZWZpbmVkKGJhY2t1cEtleWNoYWluLmVuY3J5cHRlZFBydikpIHtcbiAgICAvLyBVc2VyIHN1cHBsaWVkIHRoZSB4cHViXG4gICAgcXJEYXRhLmJhY2t1cCA9IHtcbiAgICAgIHRpdGxlOiAnQjogQmFja3VwIEtleScsXG4gICAgICBkZXNjOiAnVGhpcyBpcyB0aGUgcHVibGljIHBvcnRpb24gb2YgeW91ciBiYWNrdXAga2V5LCB3aGljaCB5b3UgcHJvdmlkZWQuJyxcbiAgICAgIGRhdGE6IGJhY2t1cEtleWNoYWluLnB1YixcbiAgICB9O1xuICB9XG5cbiAgcmV0dXJuIHFyRGF0YTtcbn1cblxuLyoqXG4gKiBUT0RPOiBEZXByZWNhdGUgdGhpcyBmdW5jdGlvbiBpbiBmYXZvciBvZiBnZXRLZXlEYXRhQXN5bmMgb25jZSB2MiBlbmNyeXB0aW9uIGlzIGRlZmF1bHQuXG4gKiBDb2xsZWN0IGFsbCBkYXRhIHdoaWNoIHdpbGwgZ28gb250byB0aGUga2V5Y2FyZFxuICogQHBhcmFtIG9wdGlvbnNcbiAqL1xuZnVuY3Rpb24gZ2V0S2V5RGF0YShvcHRpb25zOiBHZXRLZXlEYXRhT3B0aW9ucyk6IGFueSB7XG4gIGNvbnN0IHsgZW5jcnlwdCwgYmFja3VwS2V5Y2hhaW4sIHBhc3NwaHJhc2UsIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsIC4uLnFyT3B0aW9ucyB9ID0gb3B0aW9ucztcblxuICAvLyBXaGVuIHVzaW5nIGp1c3QgJ2dlbmVyYXRlV2FsbGV0Jywgd2UgZ2V0IGJhY2sgYW4gdW5lbmNyeXB0ZWQgcHJ2IGZvciB0aGUgYmFja3VwIGtleWNoYWluXG4gIC8vIElmIHRoZSB1c2VyIHBhc3NlcyBpbiB0aGVpciBwYXNzcGhyYXNlLCB3ZSBjYW4gZW5jcnlwdCBpdFxuICBpZiAoYmFja3VwS2V5Y2hhaW4ucHJ2ICYmIHBhc3NwaHJhc2UpIHtcbiAgICBiYWNrdXBLZXljaGFpbi5lbmNyeXB0ZWRQcnYgPSBlbmNyeXB0KHtcbiAgICAgIGlucHV0OiBiYWNrdXBLZXljaGFpbi5wcnYsXG4gICAgICBwYXNzd29yZDogcGFzc3BocmFzZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8vIElmIHdlIGhhdmUgdGhlIHBhc3Njb2RlIGVuY3J5cHRpb24gY29kZSwgY3JlYXRlIGEgYm94IEQgd2l0aCB0aGUgZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGVcbiAgbGV0IGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGlmIChwYXNzcGhyYXNlICYmIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUpIHtcbiAgICBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSA9IGVuY3J5cHQoe1xuICAgICAgaW5wdXQ6IHBhc3NwaHJhc2UsXG4gICAgICBwYXNzd29yZDogcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBidWlsZEtleWNhcmRRckRhdGEoeyAuLi5xck9wdGlvbnMsIGJhY2t1cEtleWNoYWluIH0sIGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlKTtcbn1cblxuLyoqXG4gKiBBc3luYyB2ZXJzaW9uIG9mIGdldEtleURhdGEgd2l0aCBzdXBwb3J0IGZvciB2MiAoQXJnb24yaWQpIGVuY3J5cHRpb24uXG4gKiBTZXF1ZW50aWFsIGVuY3J5cHQ6IGJhY2t1cCBrZXkgZmlyc3QsIHRoZW4gcGFzc2NvZGUgKG1hdGNoZXMgb3JpZ2luYWwgZ2V0S2V5RGF0YUFzeW5jKS5cbiAqIEBwYXJhbSBvcHRpb25zXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGdldEtleURhdGFBc3luYyhvcHRpb25zOiBHZXRLZXlEYXRhQXN5bmNPcHRpb25zKTogUHJvbWlzZTxhbnk+IHtcbiAgY29uc3QgeyBlbmNyeXB0LCBiYWNrdXBLZXljaGFpbiwgcGFzc3BocmFzZSwgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSwgZW5jcnlwdGlvblZlcnNpb24sIC4uLnFyT3B0aW9ucyB9ID0gb3B0aW9ucztcblxuICBpZiAoYmFja3VwS2V5Y2hhaW4ucHJ2ICYmIHBhc3NwaHJhc2UpIHtcbiAgICBiYWNrdXBLZXljaGFpbi5lbmNyeXB0ZWRQcnYgPSBhd2FpdCBlbmNyeXB0KHtcbiAgICAgIGlucHV0OiBiYWNrdXBLZXljaGFpbi5wcnYsXG4gICAgICBwYXNzd29yZDogcGFzc3BocmFzZSxcbiAgICAgIGVuY3J5cHRpb25WZXJzaW9uLFxuICAgIH0pO1xuICB9XG5cbiAgbGV0IGVuY3J5cHRlZFdhbGxldFBhc3Njb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGlmIChwYXNzcGhyYXNlICYmIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUpIHtcbiAgICBlbmNyeXB0ZWRXYWxsZXRQYXNzY29kZSA9IGF3YWl0IGVuY3J5cHQoe1xuICAgICAgaW5wdXQ6IHBhc3NwaHJhc2UsXG4gICAgICBwYXNzd29yZDogcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgICAgIGVuY3J5cHRpb25WZXJzaW9uLFxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGJ1aWxkS2V5Y2FyZFFyRGF0YSh7IC4uLnFyT3B0aW9ucywgYmFja3VwS2V5Y2hhaW4gfSwgZW5jcnlwdGVkV2FsbGV0UGFzc2NvZGUpO1xufVxuXG5pbnRlcmZhY2UgRHJhd0tleWNhcmRMYXlvdXRPcHRpb25zIHtcbiAganNQREY6IGFueTtcbiAgUVJDb2RlOiBhbnk7XG4gIGFjdGl2YXRpb25Db2RlOiBzdHJpbmc7XG4gIHdhbGxldExhYmVsOiBzdHJpbmc7XG4gIGNvaW5OYW1lOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBEcmF3S2V5Y2FyZE9wdGlvbnMgZXh0ZW5kcyBHZXRLZXlEYXRhT3B0aW9ucywgRHJhd0tleWNhcmRMYXlvdXRPcHRpb25zIHtcbiAgY29pblNob3J0TmFtZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBEcmF3S2V5Y2FyZEFzeW5jT3B0aW9ucyA9IE9taXQ8RHJhd0tleWNhcmRPcHRpb25zLCAnZW5jcnlwdCc+ICYge1xuICBlbmNyeXB0OiBFbmNyeXB0Rm5Bc3luYztcbiAgZW5jcnlwdGlvblZlcnNpb24/OiBFbmNyeXB0aW9uVmVyc2lvbjtcbn07XG5cbi8qKlxuICogUmVuZGVyIGtleWNhcmQgUERGIHBhZ2VzIGZyb20gcHJlLWJ1aWx0IFFSIGRhdGEuXG4gKi9cbmZ1bmN0aW9uIHJlbmRlcktleWNhcmRQZGYob3B0aW9uczogRHJhd0tleWNhcmRMYXlvdXRPcHRpb25zLCBrZXlEYXRhOiBhbnkpOiBhbnkge1xuICBjb25zdCB7IGpzUERGLCBRUkNvZGUsIGFjdGl2YXRpb25Db2RlLCB3YWxsZXRMYWJlbCwgY29pbk5hbWUgfSA9IG9wdGlvbnM7XG5cbiAgY29uc3QgbWFyZ2luID0gMzA7XG5cbiAgY29uc3QgZm9udCA9IHtcbiAgICBoZWFkZXI6IDI0LFxuICAgIHN1YmhlYWRlcjogMTUsXG4gICAgYm9keTogMTIsXG4gIH07XG5cbiAgY29uc3QgY29sb3IgPSB7XG4gICAgYmxhY2s6ICcjMDAwMDAwJyxcbiAgICBkYXJrZ3JheTogJyM0YzRjNGMnLFxuICAgIGdyYXk6ICcjOWI5YjliJyxcbiAgICByZWQ6ICcjZTIxZTFlJyxcbiAgfTtcblxuICAvLyBkb2N1bWVudCBkZXRhaWxzXG4gIGNvbnN0IHdpZHRoID0gOC41ICogNzI7XG4gIGxldCB5ID0gMDtcblxuICAvLyBIZWxwZXJzIGZvciBkYXRhIGZvcm1hdHRpbmcgLyBwb3NpdGlvbmluZyBvbiB0aGUgcGFwZXJcbiAgY29uc3QgbGVmdCA9ICh4KSA9PiBtYXJnaW4gKyB4O1xuICBjb25zdCBtb3ZlRG93biA9ICh5RGVsdGEpID0+IHtcbiAgICB5ICs9IHlEZWx0YTtcbiAgfTtcblxuICBjb25zdCBkb2MgPSBuZXcganNQREYoJ3BvcnRyYWl0JywgJ3B0JywgJ2xldHRlcicpO1xuICBkb2Muc2V0Rm9udCgnaGVsdmV0aWNhJyk7XG5cbiAgLy8gUERGIEhlYWRlciBBcmVhIC0gaW5jbHVkZXMgdGhlIGxvZ28gYW5kIGNvbXBhbnkgbmFtZVxuICAvLyBUaGlzIGlzIGRhdGEgZm9yIHRoZSBCaXRHbyBsb2dvIGluIHRoZSB0b3AgbGVmdCBvZiB0aGUgUERGXG4gIG1vdmVEb3duKDMwKTtcblxuICAvLyBXZSBkb24ndCBjdXJyZW50bHkgYWRkIGFuIGltYWdlLCBzaW5jZSB0aGF0IHBhdGggaXMgZGVwZW5kZW50IG9uIEJpdEdvIGZyb250ZW5kXG4gIC8vIGRvYy5hZGRJbWFnZShjb2luVXRpbGl0eS5nZXRTZWxlY3RlZENvaW5PYmooKS5rZXlDYXJkSW1hZ2UsIGxlZnQoMCksIHkgKyAxMCk7XG5cbiAgLy8gQWN0aXZhdGlvbiBDb2RlXG4gIG1vdmVEb3duKDgpO1xuICBkb2Muc2V0Rm9udFNpemUoZm9udC5ib2R5KS5zZXRUZXh0Q29sb3IoY29sb3IuZ3JheSk7XG4gIGRvYy50ZXh0KCdBY3RpdmF0aW9uIENvZGUnLCBsZWZ0KDQ2MCksIHkpO1xuXG4gIGRvYy5zZXRGb250U2l6ZShmb250LmhlYWRlcikuc2V0VGV4dENvbG9yKGNvbG9yLmJsYWNrKTtcbiAgbW92ZURvd24oMjUpO1xuICBkb2MudGV4dCgnWW91ciBCaXRHbyBLZXlDYXJkJywgbGVmdCgxNTApLCB5KTtcbiAgZG9jLnNldEZvbnRTaXplKGZvbnQuaGVhZGVyKS5zZXRUZXh0Q29sb3IoY29sb3IuZ3JheSk7XG4gIGRvYy50ZXh0KGFjdGl2YXRpb25Db2RlLnRvU3RyaW5nKCksIGxlZnQoNDYwKSwgeSk7XG5cbiAgLy8gU3ViaGVhZGVyXG4gIC8vIHRpdGxlc1xuICBtb3ZlRG93bihtYXJnaW4pO1xuICBkb2Muc2V0Rm9udFNpemUoZm9udC5ib2R5KS5zZXRUZXh0Q29sb3IoY29sb3IuZ3JheSk7XG4gIGRvYy50ZXh0KFxuICAgIGBDcmVhdGVkIG9uICR7bmV3IERhdGUoKS50b0RhdGVTdHJpbmcoKX0gYnkgJHt3aW5kb3cubG9jYXRpb24uaG9zdG5hbWV9IGZvciB3YWxsZXQgbmFtZWQgJHt3YWxsZXRMYWJlbH1gLFxuICAgIGxlZnQoMCksXG4gICAgeVxuICApO1xuICAvLyBjb3B5XG4gIG1vdmVEb3duKDI1KTtcbiAgZG9jLnNldEZvbnRTaXplKGZvbnQuc3ViaGVhZGVyKS5zZXRUZXh0Q29sb3IoY29sb3IuYmxhY2spO1xuICBkb2MudGV4dCh3YWxsZXRMYWJlbCwgbGVmdCgwKSwgeSk7XG4gIC8vIFJlZCBCYXJcbiAgbW92ZURvd24oMjApO1xuICBkb2Muc2V0RmlsbENvbG9yKDI1NSwgMjMwLCAyMzApO1xuICBkb2MucmVjdChsZWZ0KDApLCB5LCB3aWR0aCAtIDIgKiBtYXJnaW4sIDMyLCAnRicpO1xuXG4gIC8vIHdhcm5pbmcgbWVzc2FnZVxuICBtb3ZlRG93bigyMCk7XG4gIGRvYy5zZXRGb250U2l6ZShmb250LmJvZHkpLnNldFRleHRDb2xvcihjb2xvci5yZWQpO1xuICBkb2MudGV4dCgnUHJpbnQgdGhpcyBkb2N1bWVudCwgb3Iga2VlcCBpdCBzZWN1cmVseSBvZmZsaW5lLiBTZWUgc2Vjb25kIHBhZ2UgZm9yIEZBUS4nLCBsZWZ0KDc1KSwgeSk7XG5cbiAgbW92ZURvd24oMzUpO1xuICBjb25zdCBxclNpemUgPSAxMzA7XG5cbiAgLy8gRHJhdyBlYWNoIEJveCB3aXRoIFFSIGNvZGUgYW5kIGRlc2NyaXB0aW9uXG4gIE9iamVjdC5rZXlzKGtleURhdGEpLmZvckVhY2goZnVuY3Rpb24gKGtleVR5cGUpIHtcbiAgICBjb25zdCBrZXkgPSBrZXlEYXRhW2tleVR5cGVdO1xuICAgIGNvbnN0IHRvcFkgPSB5O1xuXG4gICAgLy8gRG9uJ3QgaW5kZW50IGlmIHdlJ3JlIG5vdCBwcm9kdWNpbmcgUVIgY29kZXNcbiAgICBjb25zdCB0ZXh0TGVmdCA9ICEhUVJDb2RlID8gbGVmdChxclNpemUgKyAxNSkgOiBsZWZ0KDE1KTtcblxuICAgIC8vIERyYXcgYSBRUiBjb2RlIGlmIGxpYnJhcnkgaXMgYXZhaWxhYmxlXG4gICAgaWYgKFFSQ29kZSkge1xuICAgICAgY29uc3QgZGF0YVVSTCA9IG5ldyBRUkNvZGUoeyB2YWx1ZToga2V5LmRhdGEsIHNpemU6IHFyU2l6ZSB9KS50b0RhdGFVUkwoJ2ltYWdlL2pwZWcnKTtcbiAgICAgIGRvYy5hZGRJbWFnZShkYXRhVVJMLCBsZWZ0KDApLCB5LCBxclNpemUsIHFyU2l6ZSk7XG4gICAgfVxuXG4gICAgZG9jLnNldEZvbnRTaXplKGZvbnQuc3ViaGVhZGVyKS5zZXRUZXh0Q29sb3IoY29sb3IuYmxhY2spO1xuICAgIG1vdmVEb3duKDEwKTtcbiAgICBkb2MudGV4dChrZXkudGl0bGUsIHRleHRMZWZ0LCB5KTtcbiAgICBtb3ZlRG93bigxNSk7XG4gICAgZG9jLnNldEZvbnRTaXplKGZvbnQuYm9keSkuc2V0VGV4dENvbG9yKGNvbG9yLmRhcmtncmF5KTtcbiAgICBkb2MudGV4dChrZXkuZGVzYywgdGV4dExlZnQsIHkpO1xuICAgIG1vdmVEb3duKDMwKTtcbiAgICBkb2Muc2V0Rm9udFNpemUoZm9udC5ib2R5IC0gMik7XG4gICAgZG9jLnRleHQoJ0RhdGE6JywgdGV4dExlZnQsIHkpO1xuICAgIG1vdmVEb3duKDE1KTtcbiAgICBjb25zdCBpbm5lcldpZHRoID0gNzIgKiA4LjUgLSB0ZXh0TGVmdCAtIDMwO1xuICAgIGRvYy5zZXRGb250KCdjb3VyaWVyJykuc2V0Rm9udFNpemUoOSkuc2V0VGV4dENvbG9yKGNvbG9yLmJsYWNrKTtcbiAgICBjb25zdCBsaW5lcyA9IGRvYy5zcGxpdFRleHRUb1NpemUoa2V5LmRhdGEsIGlubmVyV2lkdGgpO1xuICAgIGRvYy50ZXh0KGxpbmVzLCB0ZXh0TGVmdCwgeSk7XG5cbiAgICAvLyBBZGQga2V5IElEIChkZXJpdmF0aW9uIHN0cmluZykgaWYgaXQgZXhpc3RzXG4gICAgaWYgKGtleS5rZXlJRCkge1xuICAgICAgY29uc3QgdGV4dCA9ICdLZXkgSWQ6ICcgKyBrZXkua2V5SUQ7XG4gICAgICAvLyBHcmF5IGJhclxuICAgICAgbW92ZURvd24oNDUpO1xuICAgICAgZG9jLnNldEZpbGxDb2xvcigyNDcsIDI0OSwgMjQ5KTsgLy8gR3JheSBiYWNrZ3JvdW5kXG4gICAgICBkb2Muc2V0RHJhd0NvbG9yKDAsIDAsIDApOyAvLyBCb3JkZXJcbiAgICAgIGRvYy5yZWN0KHRleHRMZWZ0LCB5LCB3aWR0aCwgMTUsICdGRCcpO1xuXG4gICAgICBkb2MudGV4dCh0ZXh0LCB0ZXh0TGVmdCArIDUsIHkgKyAxMCk7XG4gICAgfVxuXG4gICAgZG9jLnNldEZvbnQoJ2hlbHZldGljYScpO1xuICAgIC8vIE1vdmUgZG93biB0aGUgc2l6ZSBvZiB0aGUgUVIgY29kZSBtaW51cyBhY2N1bXVsYXRlZCBoZWlnaHQgb24gdGhlIHJpZ2h0IHNpZGUsIHBsdXMgYnVmZmVyXG4gICAgbW92ZURvd24ocXJTaXplIC0gKHkgLSB0b3BZKSArIDE1KTtcbiAgfSk7XG5cbiAgLy8gQWRkIGEgbmV3IHBhZ2UgKFEgKyBBIHBhZ2UpXG4gIGRvYy5hZGRQYWdlKCk7XG5cbiAgLy8gMm5kIHBhZ2UgdGl0bGVcbiAgeSA9IDA7XG4gIG1vdmVEb3duKDU1KTtcbiAgZG9jLnNldEZvbnRTaXplKGZvbnQuaGVhZGVyKS5zZXRUZXh0Q29sb3IoY29sb3IuYmxhY2spO1xuICBkb2MudGV4dCgnQml0R28gS2V5Q2FyZCBGQVEnLCBsZWZ0KDApLCB5KTtcblxuICBjb25zdCBxdWVzdGlvbnMgPSBnZW5lcmF0ZVF1ZXN0aW9ucyhjb2luTmFtZSk7XG5cbiAgLy8gRHJhdyB0aGUgUSArIEEgZGF0YSBvbiB0aGUgc2Vjb25kIHBhZ2VcbiAgbW92ZURvd24oMzApO1xuICBxdWVzdGlvbnMuZm9yRWFjaChmdW5jdGlvbiAocSkge1xuICAgIGRvYy5zZXRGb250U2l6ZShmb250LnN1YmhlYWRlcikuc2V0VGV4dENvbG9yKGNvbG9yLmJsYWNrKTtcbiAgICBkb2MudGV4dChxLnEsIGxlZnQoMCksIHkpO1xuICAgIG1vdmVEb3duKDIwKTtcbiAgICBkb2Muc2V0Rm9udFNpemUoZm9udC5ib2R5KS5zZXRUZXh0Q29sb3IoY29sb3IuZGFya2dyYXkpO1xuICAgIHEuYS5mb3JFYWNoKGZ1bmN0aW9uIChsaW5lKSB7XG4gICAgICBkb2MudGV4dChsaW5lLCBsZWZ0KDApLCB5KTtcbiAgICAgIG1vdmVEb3duKGZvbnQuYm9keSArIDMpO1xuICAgIH0pO1xuICAgIG1vdmVEb3duKDIyKTtcbiAgfSk7XG5cbiAgcmV0dXJuIGRvYztcbn1cblxuLyoqXG4gKiBUT0RPOiBEZXByZWNhdGUgdGhpcyBmdW5jdGlvbiBpbiBmYXZvciBvZiBkcmF3S2V5Y2FyZEFzeW5jIG9uY2UgdjIgZW5jcnlwdGlvbiBpcyBkZWZhdWx0LlxuICogRHJhdyBhIGtleWNhcmQgaW50byBhIG5ldyBwZGYgZG9jdW1lbnQgb2JqZWN0XG4gKiBAcGFyYW0gb3B0aW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZHJhd0tleWNhcmQob3B0aW9uczogRHJhd0tleWNhcmRPcHRpb25zKTogYW55IHtcbiAgY29uc3Qge1xuICAgIGVuY3J5cHQsXG4gICAgcGFzc3BocmFzZSxcbiAgICBwYXNzY29kZUVuY3J5cHRpb25Db2RlLFxuICAgIHdhbGxldEtleUlELFxuICAgIGJhY2t1cEtleUlELFxuICAgIHVzZXJLZXljaGFpbixcbiAgICBiaXRnb0tleWNoYWluLFxuICAgIGJhY2t1cEtleWNoYWluLFxuICAgIGNvaW5TaG9ydE5hbWUsXG4gICAganNQREYsXG4gICAgUVJDb2RlLFxuICAgIGFjdGl2YXRpb25Db2RlLFxuICAgIHdhbGxldExhYmVsLFxuICAgIGNvaW5OYW1lLFxuICB9ID0gb3B0aW9ucztcblxuICBjb25zdCBrZXlEYXRhID0gZ2V0S2V5RGF0YSh7XG4gICAgZW5jcnlwdCxcbiAgICBjb2luU2hvcnROYW1lLFxuICAgIHBhc3NwaHJhc2UsXG4gICAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgICB3YWxsZXRLZXlJRCxcbiAgICBiYWNrdXBLZXlJRCxcbiAgICB1c2VyS2V5Y2hhaW4sXG4gICAgYml0Z29LZXljaGFpbixcbiAgICBiYWNrdXBLZXljaGFpbixcbiAgfSk7XG5cbiAgcmV0dXJuIHJlbmRlcktleWNhcmRQZGYoeyBqc1BERiwgUVJDb2RlLCBhY3RpdmF0aW9uQ29kZSwgd2FsbGV0TGFiZWwsIGNvaW5OYW1lIH0sIGtleURhdGEpO1xufVxuXG4vKipcbiAqIEFzeW5jIHZlcnNpb24gb2YgZHJhd0tleWNhcmQgd2l0aCBzdXBwb3J0IGZvciB2MiAoQXJnb24yaWQpIGVuY3J5cHRpb24uXG4gKiBVc2UgdGhpcyB3aGVuIHRoZSBlbmNyeXB0IGNhbGxiYWNrIG1heSByZXR1cm4gYSBQcm9taXNlIChlLmcuIGVuY3J5cHRBc3luYykuXG4gKlxuICogRHJhdyBhIGtleWNhcmQgaW50byBhIG5ldyBwZGYgZG9jdW1lbnQgb2JqZWN0XG4gKiBAcGFyYW0gb3B0aW9uc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZHJhd0tleWNhcmRBc3luYyhvcHRpb25zOiBEcmF3S2V5Y2FyZEFzeW5jT3B0aW9ucyk6IFByb21pc2U8YW55PiB7XG4gIGNvbnN0IHtcbiAgICBlbmNyeXB0LFxuICAgIHBhc3NwaHJhc2UsXG4gICAgcGFzc2NvZGVFbmNyeXB0aW9uQ29kZSxcbiAgICB3YWxsZXRLZXlJRCxcbiAgICBiYWNrdXBLZXlJRCxcbiAgICB1c2VyS2V5Y2hhaW4sXG4gICAgYml0Z29LZXljaGFpbixcbiAgICBiYWNrdXBLZXljaGFpbixcbiAgICBjb2luU2hvcnROYW1lLFxuICAgIGpzUERGLFxuICAgIFFSQ29kZSxcbiAgICBhY3RpdmF0aW9uQ29kZSxcbiAgICB3YWxsZXRMYWJlbCxcbiAgICBjb2luTmFtZSxcbiAgICBlbmNyeXB0aW9uVmVyc2lvbixcbiAgfSA9IG9wdGlvbnM7XG5cbiAgLy8gR2V0IHRoZSBkYXRhIGZvciB0aGUgZmlyc3QgcGFnZSAocXIgY29kZXMpXG4gIGNvbnN0IGtleURhdGEgPSBhd2FpdCBnZXRLZXlEYXRhQXN5bmMoe1xuICAgIGVuY3J5cHQsXG4gICAgY29pblNob3J0TmFtZSxcbiAgICBwYXNzcGhyYXNlLFxuICAgIHBhc3Njb2RlRW5jcnlwdGlvbkNvZGUsXG4gICAgd2FsbGV0S2V5SUQsXG4gICAgYmFja3VwS2V5SUQsXG4gICAgdXNlcktleWNoYWluLFxuICAgIGJpdGdvS2V5Y2hhaW4sXG4gICAgYmFja3VwS2V5Y2hhaW4sXG4gICAgZW5jcnlwdGlvblZlcnNpb24sXG4gIH0pO1xuXG4gIHJldHVybiByZW5kZXJLZXljYXJkUGRmKHsganNQREYsIFFSQ29kZSwgYWN0aXZhdGlvbkNvZGUsIHdhbGxldExhYmVsLCBjb2luTmFtZSB9LCBrZXlEYXRhKTtcbn1cbiJdfQ==
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import { EncryptionVersion, IRequestTracer } from '../../../api';
|
|
2
2
|
import * as openpgp from 'openpgp';
|
|
3
3
|
import { Key, SerializedKeyPair } from 'openpgp';
|
|
4
|
-
import { IBaseCoin, KeychainsTriplet } from '../../baseCoin';
|
|
4
|
+
import { IBaseCoin, KeychainsTriplet, TransactionParams } from '../../baseCoin';
|
|
5
5
|
import { BitGoBase } from '../../bitgoBase';
|
|
6
6
|
import { Keychain, WebauthnKeyEncryptionInfo } from '../../keychain';
|
|
7
7
|
import { IWallet } from '../../wallet';
|
|
8
8
|
import { MpcUtils } from '../mpcUtils';
|
|
9
9
|
import { BitgoHeldBackupKeyShare, CommitmentShareRecord, CreateBitGoKeychainParamsBase, CreateKeychainParamsBase, CustomCommitmentGeneratingFunction, CustomEddsaMPCv2SigningRound1GeneratingFunction, CustomEddsaMPCv2SigningRound2GeneratingFunction, CustomEddsaMPCv2SigningRound3GeneratingFunction, CustomGShareGeneratingFunction, CustomKShareGeneratingFunction, CustomMPCv2SigningRound1GeneratingFunction, CustomMPCv2SigningRound2GeneratingFunction, CustomMPCv2SigningRound3GeneratingFunction, CustomMuDeltaShareGeneratingFunction, CustomPaillierModulusGetterFunction, CustomRShareGeneratingFunction, CustomSShareGeneratingFunction, EncryptedSignerShareRecord, IntentOptionsForMessage, IntentOptionsForTypedData, ITssUtils, PrebuildTransactionWithIntentOptions, RequestType, SignatureShareRecord, TSSParams, TSSParamsForMessage, TssSignTxRequestParamsWithPrv, TxRequest, TxRequestVersion } from './baseTypes';
|
|
10
10
|
import { GShare, SignShare } from '../../../account-lib/mpc/tss';
|
|
11
|
+
/**
|
|
12
|
+
* Derives txParams from the persisted intent on a TxRequest for EdDSA MPCv2 signing paths
|
|
13
|
+
* where no SDK-local buildParams is available (PA path and UI re-sign path).
|
|
14
|
+
* Native coin transfers (where symbol equals the chain name) are excluded from tokenName.
|
|
15
|
+
*/
|
|
16
|
+
export declare function txParamsFromIntent(intent: unknown, chainName: string): TransactionParams | undefined;
|
|
11
17
|
/**
|
|
12
18
|
* BaseTssUtil class which different signature schemes have to extend
|
|
13
19
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseTSSUtils.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/utils/tss/baseTSSUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,GAAG,EAAW,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"baseTSSUtils.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/utils/tss/baseTSSUtils.ts"],"names":[],"mappings":"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"}
|