PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/@bitgo/sdk-core/dist/src/bitgo
Просмотр файла: environments.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Environments = exports.AliasEnvironments = exports.hardcodedPublicKeys = void 0;
exports.hardcodedPublicKeys = Object.freeze({
serverXpub: {
prod: 'xpub661MyMwAqRbcEtUgu9HF8ai4ipuVKKHBzUqks4jSFypW8dwwQL1zygLgQx99NmC7zJJznSiwKG6RQfVjAKMtCsx8VjR6kQW8x7HrkXFZdnQ',
test: 'xpub661MyMwAqRbcErFqVXGiUFv9YeoPbhN72UiNCUdj9nj3T6M8h7iKNmbCYpMVWVZP7LA2ma3HWcPngz1gRTm4FPdtm9mHfrNvU93MCoszsGL',
},
hsmXpub: {
prod: 'xpub661MyMwAqRbcGEtTFgMAoxMFoqsRdDaiaR63byNfZdV7cBZFvovQSNJ5bpyeoQtuKVgXBk6sFQ7TtvyWqadt41DnKwveYgM5KoU2EKYjdY2',
test: 'xpub661MyMwAqRbcGFKe4Bqvk4Sgric4gNFC8pUbw4tUkVjZxubjCA522gPzc1YaXb3bQVmDWc7CjG8AGNWRpcdAU38RETBh8n2bnqEU4kbV4oK',
dev: 'xpub661MyMwAqRbcFWzoz8qnYRDYEFQpPLYwxVFoG6WLy3ck5ZupRGJTG4ju6yGb7Dj3ey6GsC4kstLRER2nKzgjLtmxyPgC4zHy7kVhUt6yfGn',
},
});
// alias environments are environment names which are aliases of a supported environment
exports.AliasEnvironments = {
production: 'prod',
msProd: 'prod',
msTest: 'test',
msDev: 'dev',
};
const mainnetBase = {
network: 'bitcoin',
signingAddress: '1BitGo3gxRZ6mQSEH52dvCKSUgVCAH4Rja',
serverXpub: exports.hardcodedPublicKeys.serverXpub.prod,
hsmXpub: exports.hardcodedPublicKeys.hsmXpub.prod,
btcExplorerBaseUrl: 'https://blockstream.info/api',
etherscanBaseUrl: 'https://api.etherscan.io/v2',
etherscanApiToken: process.env.ETHERSCAN_API_TOKEN,
avaxcNetworkBaseUrl: 'https://api.avax.network',
eth2ExplorerBaseUrl: 'https://beaconscan.com/api',
ethwFullNodeRPCBaseUrl: 'https://mainnet.ethereumpow.org',
bscscanBaseUrl: 'https://api.etherscan.io/v2',
bscscanApiToken: process.env.BSC_API_TOKEN,
polygonscanBaseUrl: 'https://api.etherscan.io/v2',
polygonscanApiToken: process.env.POLYGONSCAN_API_TOKEN,
arbiscanBaseUrl: 'https://api.etherscan.io/v2',
arbiscanApiToken: process.env.ARBISCAN_API_TOKEN,
optimisticEtherscanBaseUrl: 'https://api.etherscan.io/v2',
optimisticEtherscanApiToken: process.env.OPTIMISTIC_ETHERSCAN_API_TOKEN,
zksyncExplorerBaseUrl: 'https://block-explorer-api.mainnet.zksync.io',
zksyncExplorerApiToken: process.env.ZKSYNC_EXPLORER_API_TOKEN,
baseethExplorerUrl: 'https://api.basescan.org', //BaseETH explorer api url
baseethApiToken: process.env.BASESCAN_API_TOKEN,
eosNodeUrls: ['https://bp.cryptolions.io', 'https://api.eosnewyork.io', 'https://api.eosdetroit.io'],
nearNodeUrls: ['https://api.fastnear.com'],
solNodeUrl: 'https://api.mainnet-beta.solana.com',
solAlchemyNodeUrl: 'https://solana-mainnet.g.alchemy.com/v2',
adaNodeUrl: 'https://api.koios.rest/api/v1',
hashNodeUrl: 'https://api.provenance.io',
injNodeUrl: 'https://sentry.lcd.injective.network', // reference https://docs.injective.network/develop/public-endpoints/
atomNodeUrl: 'https://rest.cosmos.directory/cosmoshub/',
osmoNodeUrl: 'https://lcd.osmosis.zone',
tiaNodeUrl: 'https://public-celestia-lcd.numia.xyz', // reference https://docs.celestia.org/nodes/mainnet#api-endpoints
seiNodeUrl: 'https://sei-api.polkachu.com',
bldNodeUrl: 'https://agoric-api.polkachu.com',
beraNodeUrl: '', // TODO(WIN-693): update url when mainnet goes live
zetaNodeUrl: 'https://zetachain.blockpi.network', // reference https://www.zetachain.com/docs/reference/api/
coreumNodeUrl: 'https://full-node.mainnet-1.coreum.dev:1317',
runeNodeUrl: 'https://thornode.ninerealms.com',
babyNodeUrl: 'https://babylon.nodes.guru/api/',
islmNodeUrl: 'https://rest.cosmos.haqq.network',
mantraNodeUrl: 'https://mantra-rest.publicnode.com/',
cronosNodeUrl: 'https://cronos-pos-rest.publicnode.com/',
initiaNodeUrl: 'https://rest.initia.xyz/',
asiNodeUrl: 'https://rest-fetchhub.fetch.ai/',
dotNodeUrls: ['wss://rpc.polkadot.io'],
substrateNodeUrls: ['wss://entrypoint-finney.opentensor.ai'],
polymeshNodeUrls: ['wss://mainnet-rpc.polymesh.network'],
tronNodes: {
full: 'https://api.trongrid.io',
solidity: 'https://api.trongrid.io',
},
hmacVerificationEnforced: true,
tonNodeUrl: 'https://toncenter.com/api/v2/jsonRPC',
suiNodeUrl: 'https://fullnode.mainnet.sui.io',
etcNodeUrl: 'https://etc.blockscout.com',
coredaoExplorerBaseUrl: 'https://openapi.coredao.org',
oasExplorerBaseUrl: 'https://explorer.oasys.games',
flrExplorerBaseUrl: 'https://flare-explorer.flare.network',
xdcExplorerBaseUrl: 'https://api.etherscan.io/v2',
wemixExplorerBaseUrl: 'https://api.etherscan.io/v2',
sgbExplorerBaseUrl: 'https://songbird-explorer.flare.network',
evm: {
phrs: {
baseUrl: 'https://testnet.dplabs-internal.com', // TODO: WIN-5787 add mainnet url when its available
},
ctc: {
baseUrl: 'https://mainnet3.creditcoin.network',
},
hypeevm: {
baseUrl: 'https://rpc.hyperliquid.xyz/evm',
},
og: {
baseUrl: 'https://chainscan.0g.ai/open/api',
},
xpl: {
baseUrl: 'https://rpc.plasma.to',
},
sonic: {
baseUrl: 'https://rpc.soniclabs.com',
},
seievm: {
baseUrl: 'https://evm-rpc.sei-apis.com',
},
kaia: {
baseUrl: 'https://public-en.node.kaia.io',
},
irys: {
baseUrl: 'https://testnet-rpc.irys.xyz/v1/execution-rpc', //TODO: WIN-6191 add mainnet url when available
},
mon: {
baseUrl: 'https://api.etherscan.io/v2',
},
lineaeth: {
baseUrl: 'https://api.etherscan.io/v2',
},
ip: {
baseUrl: 'https://api.storyscan.app/',
},
somi: {
baseUrl: 'https://mainnet.somnia.w3us.site/',
},
baseeth: {
baseUrl: 'https://api.etherscan.io/v2',
},
},
icpNodeUrl: 'https://ic0.app',
worldExplorerBaseUrl: 'https://worldscan.org/',
somniaExplorerBaseUrl: 'https://mainnet.somnia.w3us.site/',
soneiumExplorerBaseUrl: 'https://soneium.blockscout.com',
monExplorerBaseUrl: 'https://api.etherscan.io/v2',
stxNodeUrl: 'https://api.hiro.so',
vetNodeUrl: 'https://rpc-mainnet.vechain.energy',
xtzExplorerBaseUrl: 'https://api.tzkt.io',
xtzRpcUrl: 'https://rpc.tzkt.io/mainnet',
};
const testnetBase = {
network: 'testnet',
signingAddress: 'msignBdFXteehDEgB6DNm7npRt7AcEZJP3',
serverXpub: exports.hardcodedPublicKeys.serverXpub.test,
hsmXpub: exports.hardcodedPublicKeys.hsmXpub.test,
btcExplorerBaseUrl: 'https://blockstream.info/testnet/api',
etherscanBaseUrl: 'https://api.etherscan.io/v2',
etherscanApiToken: process.env.ETHERSCAN_API_TOKEN,
avaxcNetworkBaseUrl: 'https://api.avax-test.network',
eth2ExplorerBaseUrl: 'https://beaconscan.com/api',
ethwFullNodeRPCBaseUrl: 'https://mainnet.ethereumpow.org',
polygonscanBaseUrl: 'https://api.etherscan.io/v2',
polygonscanApiToken: process.env.POLYGONSCAN_API_TOKEN,
bscscanBaseUrl: 'https://api.etherscan.io/v2',
bscscanApiToken: process.env.BSC_API_TOKEN,
arbiscanBaseUrl: 'https://api.etherscan.io/v2',
arbiscanApiToken: process.env.ARBISCAN_API_TOKEN,
optimisticEtherscanBaseUrl: 'https://api.etherscan.io/v2',
optimisticEtherscanApiToken: process.env.OPTIMISTIC_ETHERSCAN_API_TOKEN,
zksyncExplorerBaseUrl: 'https://block-explorer-api.sepolia.zksync.dev',
zksyncExplorerApiToken: process.env.ZKSYNC_EXPLORER_API_TOKEN,
baseethExplorerUrl: 'https://api-sepolia.basescan.org',
baseethApiToken: process.env.BASESCAN_API_TOKEN,
// kylin eos endpoints found here
// https://github.com/cryptokylin/CryptoKylin-Testnet#http-api-list
// https://docs.liquidapps.io/liquidapps-documentation/eosio-guides/testnet-creation-guides/creating-cryptokylin-account#setup
eosNodeUrls: ['https://kylin.eosn.io', 'https://api.kylin.alohaeos.com'],
nearNodeUrls: ['https://test.rpc.fastnear.com'],
solNodeUrl: 'https://api.devnet.solana.com',
solAlchemyNodeUrl: 'https://solana-devnet.g.alchemy.com/v2',
adaNodeUrl: 'https://preprod.koios.rest/api/v1',
hashNodeUrl: 'https://api.test.provenance.io',
injNodeUrl: 'https://testnet.sentry.lcd.injective.network', // COIN-1219 : reference https://docs.injective.network/develop/public-endpoints/#testnet
atomNodeUrl: 'https://rest.provider-sentry-02.ics-testnet.polypore.xyz/',
osmoNodeUrl: 'https://lcd.osmotest5.osmosis.zone',
tiaNodeUrl: 'https://api-mocha.pops.one',
seiNodeUrl: 'https://rest.atlantic-2.seinetwork.io',
bldNodeUrl: 'https://devnet.api.agoric.net',
beraNodeUrl: '', // TODO(WIN-693): update url when testnet goes live
zetaNodeUrl: 'https://rest.nodejumper.io/zetachaintestnet', // reference : https://www.zetachain.com/docs/reference/api/
coreumNodeUrl: 'https://full-node.testnet-1.coreum.dev:1317',
runeNodeUrl: 'https://stagenet-thornode.ninerealms.com',
babyNodeUrl: 'https://babylon-testnet-api.nodes.guru/',
islmNodeUrl: 'https://rest.cosmos.testedge2.haqq.network ',
mantraNodeUrl: 'https://mantra-testnet-rest.publicnode.com/',
cronosNodeUrl: 'https://testnet-croeseid-4.crypto.org:1317/',
initiaNodeUrl: 'https://rest.testnet.initia.xyz/',
asiNodeUrl: 'https://rest-dorado.fetch.ai/',
dotNodeUrls: ['wss://westend-rpc.polkadot.io'],
substrateNodeUrls: ['wss://test.finney.opentensor.ai'],
polymeshNodeUrls: ['wss://testnet-rpc.polymesh.live'],
tronNodes: {
full: 'https://api.shasta.trongrid.io',
solidity: 'https://api.shasta.trongrid.io',
},
hmacVerificationEnforced: false,
tonNodeUrl: 'https://testnet.toncenter.com/api/v2/jsonRPC',
suiNodeUrl: 'https://fullnode.testnet.sui.io',
etcNodeUrl: 'https://etc-mordor.blockscout.com',
coredaoExplorerBaseUrl: 'https://api.test2.btcs.network',
oasExplorerBaseUrl: 'https://explorer.testnet.oasys.games',
wemixExplorerBaseUrl: 'https://api.etherscan.io/v2',
flrExplorerBaseUrl: 'https://coston2-explorer.flare.network',
xdcExplorerBaseUrl: 'https://api.etherscan.io/v2',
sgbExplorerBaseUrl: 'https://coston-explorer.flare.network',
icpNodeUrl: 'https://exchanges.testnet.dfinity.network',
monExplorerBaseUrl: 'https://api.etherscan.io/v2',
worldExplorerBaseUrl: 'https://sepolia.worldscan.org/',
somniaExplorerBaseUrl: 'https://shannon-explorer.somnia.network/',
soneiumExplorerBaseUrl: 'https://soneium-minato.blockscout.com',
evm: {
phrs: {
baseUrl: 'https://testnet.dplabs-internal.com',
},
ctc: {
baseUrl: 'https://rpc.cc3-testnet.creditcoin.network',
},
hypeevm: {
baseUrl: 'https://rpc.hyperliquid-testnet.xyz/evm',
},
og: {
baseUrl: 'https://chainscan-test.0g.ai/open/api',
},
xpl: {
baseUrl: 'https://testnet-rpc.plasma.to',
},
sonic: {
baseUrl: 'https://rpc.blaze.soniclabs.com',
},
seievm: {
baseUrl: 'https://evm-rpc-testnet.sei-apis.com',
},
kaia: {
baseUrl: 'https://public-en-kairos.node.kaia.io',
},
irys: {
baseUrl: 'https://testnet-rpc.irys.xyz/v1/execution-rpc',
},
mon: {
baseUrl: 'https://api.etherscan.io/v2',
},
lineaeth: {
baseUrl: 'https://api.etherscan.io/v2',
},
ip: {
baseUrl: 'https://api.storyscan.app/',
},
tbaseeth: {
baseUrl: 'https://api.etherscan.io/v2',
},
},
stxNodeUrl: 'https://api.testnet.hiro.so',
vetNodeUrl: 'https://rpc-testnet.vechain.energy',
xtzExplorerBaseUrl: 'https://api.ghostnet.tzkt.io',
xtzRpcUrl: 'https://rpc.tzkt.io/ghostnet',
};
const devBase = Object.assign({}, testnetBase, {
hsmXpub: exports.hardcodedPublicKeys.hsmXpub.dev,
hmacVerificationEnforced: false,
});
// eslint-disable-next-line no-redeclare
exports.Environments = {
prod: Object.assign({}, mainnetBase, {
uri: 'https://app.bitgo.com',
stellarFederationServerUrl: 'https://app.bitgo.com/api/v2/xlm/federation',
}),
test: Object.assign({}, testnetBase, {
uri: 'https://app.bitgo-test.com',
stellarFederationServerUrl: 'https://app.bitgo-test.com/api/v2/txlm/federation',
}),
dev: Object.assign({}, devBase, {
uri: 'https://app.bitgo-dev.com',
stellarFederationServerUrl: 'https://app.bitgo-dev.com/api/v2/txlm/federation',
}),
staging: Object.assign({}, testnetBase, {
uri: 'https://app.bitgo-staging.com',
stellarFederationServerUrl: 'https://app.bitgo-staging.com/api/v2/txlm/federation',
}),
local: Object.assign({}, devBase, {
uri: 'https://localhost:3000',
stellarFederationServerUrl: 'https://localhost:3000/api/v2/txlm/federation',
}),
localNonSecure: Object.assign({}, devBase, {
uri: 'http://localhost:3000',
stellarFederationServerUrl: 'http://localhost:3000/api/v2/txlm/federation',
}),
mock: Object.assign({}, devBase, {
uri: 'https://bitgo.fakeurl',
stellarFederationServerUrl: 'https://bitgo.fakeurl/api/v2/txlm/federation',
etherscanBaseUrl: 'https://api-hoodi.etherscan.fakeurl',
etherscanApiToken: process.env.ETHERSCAN_API_TOKEN,
avaxcNetworkBaseUrl: 'https://api.avax-test.network.fakeurl',
eth2ExplorerBaseUrl: 'https://beaconscan.com/api',
}),
adminProd: Object.assign({}, mainnetBase, {
uri: 'https://admin.bitgo.com',
stellarFederationServerUrl: 'https://admin.bitgo.com/api/v2/xlm/federation',
}),
adminTest: Object.assign({}, testnetBase, {
uri: 'https://admin.bitgo-test.com',
stellarFederationServerUrl: 'https://admin.bitgo-test.com/api/v2/txlm/federation',
}),
adminDev: Object.assign({}, devBase, {
uri: 'https://admin.bitgo-dev.com',
stellarFederationServerUrl: 'https://admin.bitgo-dev.com/api/v2/txlm/federation',
}),
adminStaging: Object.assign({}, testnetBase, {
uri: 'https://admin.bitgo-staging.com',
stellarFederationServerUrl: 'https://admin.bitgo-staging.com/api/v2/xlm/federation',
}),
custom: Object.assign({}, mainnetBase, {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
uri: process.env.BITGO_CUSTOM_ROOT_URI,
network: process.env.BITGO_CUSTOM_BITCOIN_NETWORK,
hsmXpub: process.env.NODE_ENV === 'production' ? exports.hardcodedPublicKeys.hsmXpub.prod : exports.hardcodedPublicKeys.hsmXpub.test,
btcExplorerBaseUrl: process.env.BITGO_CUSTOM_BITCOIN_NETWORK !== 'bitcoin'
? 'https://blockstream.info/testnet/api'
: 'https://blockstream.info/api',
etherscanBaseUrl: process.env.BITGO_CUSTOM_ETHEREUM_NETWORK !== 'ethereum'
? 'https://api-hoodi.etherscan.io'
: 'https://api.etherscan.io',
stellarFederationServerUrl: process.env.BITGO_CUSTOM_STELLAR_NETWORK !== 'stellar'
? `https://${process.env.BITGO_CUSTOM_ROOT_URI}/api/v2/txlm/federation`
: `https://${process.env.BITGO_CUSTOM_ROOT_URI}/api/v2/xlm/federation`,
serverXpub: process.env.BITGO_CUSTOM_BITCOIN_NETWORK !== 'bitcoin'
? exports.hardcodedPublicKeys.serverXpub.test
: exports.hardcodedPublicKeys.serverXpub.prod,
}),
branch: Object.assign({}, devBase, {
uri: 'https://app.bitgo-dev.com',
stellarFederationServerUrl: 'https://app.bitgo-dev.com/api/v2/txlm/federation',
}),
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vudmlyb25tZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFnSGEsUUFBQSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO0lBQy9DLFVBQVUsRUFBRTtRQUNWLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtLQUN4SDtJQUNELE9BQU8sRUFBRTtRQUNQLElBQUksRUFBRSxpSEFBaUg7UUFDdkgsSUFBSSxFQUFFLGlIQUFpSDtRQUN2SCxHQUFHLEVBQUUsaUhBQWlIO0tBQ3ZIO0NBQ0YsQ0FBQyxDQUFDO0FBcUJILHdGQUF3RjtBQUMzRSxRQUFBLGlCQUFpQixHQUFxRDtJQUNqRixVQUFVLEVBQUUsTUFBTTtJQUNsQixNQUFNLEVBQUUsTUFBTTtJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEtBQUs7Q0FDYixDQUFDO0FBRUYsTUFBTSxXQUFXLEdBQXdCO0lBQ3ZDLE9BQU8sRUFBRSxTQUFzQjtJQUMvQixjQUFjLEVBQUUsb0NBQW9DO0lBQ3BELFVBQVUsRUFBRSwyQkFBbUIsQ0FBQyxVQUFVLENBQUMsSUFBSTtJQUMvQyxPQUFPLEVBQUUsMkJBQW1CLENBQUMsT0FBTyxDQUFDLElBQUk7SUFDekMsa0JBQWtCLEVBQUUsOEJBQThCO0lBQ2xELGdCQUFnQixFQUFFLDZCQUE2QjtJQUMvQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtJQUNsRCxtQkFBbUIsRUFBRSwwQkFBMEI7SUFDL0MsbUJBQW1CLEVBQUUsNEJBQTRCO0lBQ2pELHNCQUFzQixFQUFFLGlDQUFpQztJQUN6RCxjQUFjLEVBQUUsNkJBQTZCO0lBQzdDLGVBQWUsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWE7SUFDMUMsa0JBQWtCLEVBQUUsNkJBQTZCO0lBQ2pELG1CQUFtQixFQUFF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UUFDaEMsMEJBQTBCLEVBQUUsa0RBQWtEO0tBQy9FLENBQUM7Q0FDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgVjFOZXR3b3JrIH0gZnJvbSAnLi90eXBlcyc7XG5cbmludGVyZmFjZSBFbnZpcm9ubWVudFRlbXBsYXRlIHtcbiAgdXJpPzogc3RyaW5nO1xuICBuZXR3b3JrOiBWMU5ldHdvcms7XG4gIHNpZ25pbmdBZGRyZXNzOiBzdHJpbmc7XG4gIHNlcnZlclhwdWI6IHN0cmluZztcbiAgaHNtWHB1Yjogc3RyaW5nO1xuICBidGNFeHBsb3JlckJhc2VVcmw6IHN0cmluZztcbiAgZXRoZXJzY2FuQmFzZVVybDogc3RyaW5nO1xuICBldGhlcnNjYW5BcGlUb2tlbj86IHN0cmluZztcbiAgYXZheGNOZXR3b3JrQmFzZVVybDogc3RyaW5nO1xuICBldGgyRXhwbG9yZXJCYXNlVXJsOiBzdHJpbmc7XG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6IHN0cmluZztcbiAgcG9seWdvbnNjYW5CYXNlVXJsPzogc3RyaW5nO1xuICBic2NzY2FuQmFzZVVybD86IHN0cmluZztcbiAgYnNjc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBwb2x5Z29uc2NhbkFwaVRva2VuPzogc3RyaW5nO1xuICBhcGVjaGFpbkV4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGFwZWNoYWluRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBhcmJpc2NhbkJhc2VVcmw/OiBzdHJpbmc7XG4gIGFyYmlzY2FuQXBpVG9rZW4/OiBzdHJpbmc7XG4gIG9hc0V4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIG9hc0V4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkJhc2VVcmw/OiBzdHJpbmc7XG4gIG9wdGltaXN0aWNFdGhlcnNjYW5BcGlUb2tlbj86IHN0cmluZztcbiAgemtzeW5jRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICB6a3N5bmNFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBiZXJhRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBiZXJhRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgYmFzZWV0aEV4cGxvcmVyVXJsPzogc3RyaW5nO1xuICBiYXNlZXRoQXBpVG9rZW4/OiBzdHJpbmc7XG4gIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsPzogc3RyaW5nO1xuICBlb3NOb2RlVXJsczogc3RyaW5nW107XG4gIG5lYXJOb2RlVXJsczogc3RyaW5nW107XG4gIHNvbE5vZGVVcmw6IHN0cmluZztcbiAgc29sQWxjaGVteU5vZGVVcmw6IHN0cmluZztcbiAgYWRhTm9kZVVybDogc3RyaW5nO1xuICBoYXNoTm9kZVVybDogc3RyaW5nO1xuICBpbmpOb2RlVXJsOiBzdHJpbmc7XG4gIGF0b21Ob2RlVXJsOiBzdHJpbmc7XG4gIG9zbW9Ob2RlVXJsOiBzdHJpbmc7XG4gIHRpYU5vZGVVcmw6IHN0cmluZztcbiAgc2VpTm9kZVVybDogc3RyaW5nO1xuICBibGROb2RlVXJsOiBzdHJpbmc7XG4gIGJlcmFOb2RlVXJsOiBzdHJpbmc7XG4gIHpldGFOb2RlVXJsOiBzdHJpbmc7XG4gIGNvcmV1bU5vZGVVcmw6IHN0cmluZztcbiAgcnVuZU5vZGVVcmw6IHN0cmluZztcbiAgYmFieU5vZGVVcmw6IHN0cmluZztcbiAgbWFudHJhTm9kZVVybDogc3RyaW5nO1xuICBjcm9ub3NOb2RlVXJsOiBzdHJpbmc7XG4gIGluaXRpYU5vZGVVcmw6IHN0cmluZztcbiAgYXNpTm9kZVVybDogc3RyaW5nO1xuICBpc2xtTm9kZVVybDogc3RyaW5nO1xuICBkb3ROb2RlVXJsczogc3RyaW5nW107XG4gIHN1YnN0cmF0ZU5vZGVVcmxzOiBzdHJpbmdbXTtcbiAgcG9seW1lc2hOb2RlVXJsczogc3RyaW5nW107XG4gIHRyb25Ob2Rlczoge1xuICAgIGZ1bGw6IHN0cmluZztcbiAgICBzb2xpZGl0eTogc3RyaW5nO1xuICB9O1xuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IGJvb2xlYW47XG4gIHRvbk5vZGVVcmw6IHN0cmluZztcbiAgc3VpTm9kZVVybDogc3RyaW5nO1xuICBldGNOb2RlVXJsOiBzdHJpbmc7XG4gIGNvcmVkYW9FeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIGNvcmVkYW9FeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICB4ZGNFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHhkY0V4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIGZsckV4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgZmxyRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgc2diRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBzZ2JFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBpY3BOb2RlVXJsOiBzdHJpbmc7XG4gIHdlbWl4RXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICB3ZW1peEV4cGxvcmVyQXBpVG9rZW4/OiBzdHJpbmc7XG4gIG1vbkV4cGxvcmVyQmFzZVVybD86IHN0cmluZztcbiAgbW9uRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgd29ybGRFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHdvcmxkRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgc29tbmlhRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBzb21uaWFFeHBsb3JlckFwaVRva2VuPzogc3RyaW5nO1xuICBzb25laXVtRXhwbG9yZXJCYXNlVXJsPzogc3RyaW5nO1xuICBzb25laXVtRXhwbG9yZXJBcGlUb2tlbj86IHN0cmluZztcbiAgc3R4Tm9kZVVybDogc3RyaW5nO1xuICB2ZXROb2RlVXJsOiBzdHJpbmc7XG4gIC8vIFRoZSBrZXkgaGVyZSBpcyBjb2luTmFtZSBhbmQgaXQgd2lsbCBiZSBzYW1lIGZvciBib3RoIG1haW5uZXQgYW5kIHRlc3RuZXQgKGVnOiAncGhycycpXG4gIGV2bT86IHtcbiAgICBba2V5OiBzdHJpbmddOiB7XG4gICAgICBiYXNlVXJsOiBzdHJpbmc7XG4gICAgICBhcGlUb2tlbj86IHN0cmluZztcbiAgICB9O1xuICB9O1xuICAvLyBUaGUga2V5IGhlcmUgaXMgY29pbkZhbWlseSBhbmQgaXQgd2lsbCBiZSBzYW1lIGZvciBib3RoIG1haW5uZXQgYW5kIHRlc3RuZXQgKGVnOiAnY3Jvbm9zJylcbiAgY29zbW9zPzoge1xuICAgIFtrZXk6IHN0cmluZ106IHtcbiAgICAgIG5vZGVVcmw6IHN0cmluZztcbiAgICB9O1xuICB9O1xuICB4dHpFeHBsb3JlckJhc2VVcmw/OiBzdHJpbmc7XG4gIHh0elJwY1VybD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCBleHRlbmRzIEVudmlyb25tZW50VGVtcGxhdGUge1xuICB1cmk6IHN0cmluZztcbiAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IGhhcmRjb2RlZFB1YmxpY0tleXMgPSBPYmplY3QuZnJlZXplKHtcbiAgc2VydmVyWHB1Yjoge1xuICAgIHByb2Q6ICd4cHViNjYxTXlNd0FxUmJjRXRVZ3U5SEY4YWk0aXB1VktLSEJ6VXFrczRqU0Z5cFc4ZHd3UUwxenlnTGdReDk5Tm1DN3pKSnpuU2l3S0c2UlFmVmpBS010Q3N4OFZqUjZrUVc4eDdIcmtYRlpkblEnLFxuICAgIHRlc3Q6ICd4cHViNjYxTXlNd0FxUmJjRXJGcVZYR2lVRnY5WWVvUGJoTjcyVWlOQ1VkajluajNUNk04aDdpS05tYkNZcE1WV1ZaUDdMQTJtYTNIV2NQbmd6MWdSVG00RlBkdG05bUhmck52VTkzTUNvc3pzR0wnLFxuICB9LFxuICBoc21YcHViOiB7XG4gICAgcHJvZDogJ3hwdWI2NjFNeU13QXFSYmNHRXRURmdNQW94TUZvcXNSZERhaWFSNjNieU5mWmRWN2NCWkZ2b3ZRU05KNWJweWVvUXR1S1ZnWEJrNnNGUTdUdHZ5V3FhZHQ0MURuS3d2ZVlnTTVLb1UyRUtZamRZMicsXG4gICAgdGVzdDogJ3hwdWI2NjFNeU13QXFSYmNHRktlNEJxdms0U2dyaWM0Z05GQzhwVWJ3NHRVa1ZqWnh1YmpDQTUyMmdQemMxWWFYYjNiUVZtRFdjN0NqRzhBR05XUnBjZEFVMzhSRVRCaDhuMmJucUVVNGtiVjRvSycsXG4gICAgZGV2OiAneHB1YjY2MU15TXdBcVJiY0ZXem96OHFuWVJEWUVGUXBQTFl3eFZGb0c2V0x5M2NrNVp1cFJHSlRHNGp1NnlHYjdEajNleTZHc0M0a3N0TFJFUjJuS3pnakx0bXh5UGdDNHpIeTdrVmhVdDZ5ZkduJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgdHlwZSBFbnZpcm9ubWVudE5hbWUgPVxuICB8ICdwcm9kJ1xuICB8ICdzdGFnaW5nJ1xuICB8ICd0ZXN0J1xuICB8ICdkZXYnXG4gIHwgJ2xvY2FsJ1xuICB8ICdsb2NhbE5vblNlY3VyZSdcbiAgfCAnbW9jaydcbiAgfCAnYWRtaW5Qcm9kJ1xuICB8ICdhZG1pblRlc3QnXG4gIHwgJ2FkbWluU3RhZ2luZydcbiAgfCAnYWRtaW5EZXYnXG4gIHwgJ2N1c3RvbSdcbiAgfCAnYnJhbmNoJztcblxuZXhwb3J0IHR5cGUgQWxpYXNFbnZpcm9ubWVudE5hbWUgPSAncHJvZHVjdGlvbicgfCAnbXNQcm9kJyB8ICdtc1Rlc3QnIHwgJ21zRGV2JztcblxuZXhwb3J0IHR5cGUgRW52aXJvbm1lbnRzID0geyBbayBpbiBFbnZpcm9ubWVudE5hbWVdOiBFbnZpcm9ubWVudCB9O1xuXG4vLyBhbGlhcyBlbnZpcm9ubWVudHMgYXJlIGVudmlyb25tZW50IG5hbWVzIHdoaWNoIGFyZSBhbGlhc2VzIG9mIGEgc3VwcG9ydGVkIGVudmlyb25tZW50XG5leHBvcnQgY29uc3QgQWxpYXNFbnZpcm9ubWVudHM6IHsgW2sgaW4gQWxpYXNFbnZpcm9ubWVudE5hbWVdOiBFbnZpcm9ubWVudE5hbWUgfSA9IHtcbiAgcHJvZHVjdGlvbjogJ3Byb2QnLFxuICBtc1Byb2Q6ICdwcm9kJyxcbiAgbXNUZXN0OiAndGVzdCcsXG4gIG1zRGV2OiAnZGV2Jyxcbn07XG5cbmNvbnN0IG1haW5uZXRCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0ge1xuICBuZXR3b3JrOiAnYml0Y29pbicgYXMgVjFOZXR3b3JrLFxuICBzaWduaW5nQWRkcmVzczogJzFCaXRHbzNneFJaNm1RU0VINTJkdkNLU1VnVkNBSDRSamEnLFxuICBzZXJ2ZXJYcHViOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLnByb2QsXG4gIGJ0Y0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gIGF2YXhjTmV0d29ya0Jhc2VVcmw6ICdodHRwczovL2FwaS5hdmF4Lm5ldHdvcmsnLFxuICBldGgyRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9iZWFjb25zY2FuLmNvbS9hcGknLFxuICBldGh3RnVsbE5vZGVSUENCYXNlVXJsOiAnaHR0cHM6Ly9tYWlubmV0LmV0aGVyZXVtcG93Lm9yZycsXG4gIGJzY3NjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgYnNjc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5CU0NfQVBJX1RPS0VOLFxuICBwb2x5Z29uc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBwb2x5Z29uc2NhbkFwaVRva2VuOiBwcm9jZXNzLmVudi5QT0xZR09OU0NBTl9BUElfVE9LRU4sXG4gIGFyYmlzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGFyYmlzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkFSQklTQ0FOX0FQSV9UT0tFTixcbiAgb3B0aW1pc3RpY0V0aGVyc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBvcHRpbWlzdGljRXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52Lk9QVElNSVNUSUNfRVRIRVJTQ0FOX0FQSV9UT0tFTixcbiAgemtzeW5jRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9ibG9jay1leHBsb3Jlci1hcGkubWFpbm5ldC56a3N5bmMuaW8nLFxuICB6a3N5bmNFeHBsb3JlckFwaVRva2VuOiBwcm9jZXNzLmVudi5aS1NZTkNfRVhQTE9SRVJfQVBJX1RPS0VOLFxuICBiYXNlZXRoRXhwbG9yZXJVcmw6ICdodHRwczovL2FwaS5iYXNlc2Nhbi5vcmcnLCAvL0Jhc2VFVEggZXhwbG9yZXIgYXBpIHVybFxuICBiYXNlZXRoQXBpVG9rZW46IHByb2Nlc3MuZW52LkJBU0VTQ0FOX0FQSV9UT0tFTixcbiAgZW9zTm9kZVVybHM6IFsnaHR0cHM6Ly9icC5jcnlwdG9saW9ucy5pbycsICdodHRwczovL2FwaS5lb3NuZXd5b3JrLmlvJywgJ2h0dHBzOi8vYXBpLmVvc2RldHJvaXQuaW8nXSxcbiAgbmVhck5vZGVVcmxzOiBbJ2h0dHBzOi8vYXBpLmZhc3RuZWFyLmNvbSddLFxuICBzb2xOb2RlVXJsOiAnaHR0cHM6Ly9hcGkubWFpbm5ldC1iZXRhLnNvbGFuYS5jb20nLFxuICBzb2xBbGNoZW15Tm9kZVVybDogJ2h0dHBzOi8vc29sYW5hLW1haW5uZXQuZy5hbGNoZW15LmNvbS92MicsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL2FwaS5rb2lvcy5yZXN0L2FwaS92MScsXG4gIGhhc2hOb2RlVXJsOiAnaHR0cHM6Ly9hcGkucHJvdmVuYW5jZS5pbycsXG4gIGluak5vZGVVcmw6ICdodHRwczovL3NlbnRyeS5sY2QuaW5qZWN0aXZlLm5ldHdvcmsnLCAvLyByZWZlcmVuY2UgaHR0cHM6Ly9kb2NzLmluamVjdGl2ZS5uZXR3b3JrL2RldmVsb3AvcHVibGljLWVuZHBvaW50cy9cbiAgYXRvbU5vZGVVcmw6ICdodHRwczovL3Jlc3QuY29zbW9zLmRpcmVjdG9yeS9jb3Ntb3NodWIvJyxcbiAgb3Ntb05vZGVVcmw6ICdodHRwczovL2xjZC5vc21vc2lzLnpvbmUnLFxuICB0aWFOb2RlVXJsOiAnaHR0cHM6Ly9wdWJsaWMtY2VsZXN0aWEtbGNkLm51bWlhLnh5eicsIC8vIHJlZmVyZW5jZSBodHRwczovL2RvY3MuY2VsZXN0aWEub3JnL25vZGVzL21haW5uZXQjYXBpLWVuZHBvaW50c1xuICBzZWlOb2RlVXJsOiAnaHR0cHM6Ly9zZWktYXBpLnBvbGthY2h1LmNvbScsXG4gIGJsZE5vZGVVcmw6ICdodHRwczovL2Fnb3JpYy1hcGkucG9sa2FjaHUuY29tJyxcbiAgYmVyYU5vZGVVcmw6ICcnLCAvLyBUT0RPKFdJTi02OTMpOiB1cGRhdGUgdXJsIHdoZW4gbWFpbm5ldCBnb2VzIGxpdmVcbiAgemV0YU5vZGVVcmw6ICdodHRwczovL3pldGFjaGFpbi5ibG9ja3BpLm5ldHdvcmsnLCAvLyByZWZlcmVuY2UgaHR0cHM6Ly93d3cuemV0YWNoYWluLmNvbS9kb2NzL3JlZmVyZW5jZS9hcGkvXG4gIGNvcmV1bU5vZGVVcmw6ICdodHRwczovL2Z1bGwtbm9kZS5tYWlubmV0LTEuY29yZXVtLmRldjoxMzE3JyxcbiAgcnVuZU5vZGVVcmw6ICdodHRwczovL3Rob3Jub2RlLm5pbmVyZWFsbXMuY29tJyxcbiAgYmFieU5vZGVVcmw6ICdodHRwczovL2JhYnlsb24ubm9kZXMuZ3VydS9hcGkvJyxcbiAgaXNsbU5vZGVVcmw6ICdodHRwczovL3Jlc3QuY29zbW9zLmhhcXEubmV0d29yaycsXG4gIG1hbnRyYU5vZGVVcmw6ICdodHRwczovL21hbnRyYS1yZXN0LnB1YmxpY25vZGUuY29tLycsXG4gIGNyb25vc05vZGVVcmw6ICdodHRwczovL2Nyb25vcy1wb3MtcmVzdC5wdWJsaWNub2RlLmNvbS8nLFxuICBpbml0aWFOb2RlVXJsOiAnaHR0cHM6Ly9yZXN0LmluaXRpYS54eXovJyxcbiAgYXNpTm9kZVVybDogJ2h0dHBzOi8vcmVzdC1mZXRjaGh1Yi5mZXRjaC5haS8nLFxuICBkb3ROb2RlVXJsczogWyd3c3M6Ly9ycGMucG9sa2Fkb3QuaW8nXSxcbiAgc3Vic3RyYXRlTm9kZVVybHM6IFsnd3NzOi8vZW50cnlwb2ludC1maW5uZXkub3BlbnRlbnNvci5haSddLFxuICBwb2x5bWVzaE5vZGVVcmxzOiBbJ3dzczovL21haW5uZXQtcnBjLnBvbHltZXNoLm5ldHdvcmsnXSxcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogJ2h0dHBzOi8vYXBpLnRyb25ncmlkLmlvJyxcbiAgICBzb2xpZGl0eTogJ2h0dHBzOi8vYXBpLnRyb25ncmlkLmlvJyxcbiAgfSxcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiB0cnVlLFxuICB0b25Ob2RlVXJsOiAnaHR0cHM6Ly90b25jZW50ZXIuY29tL2FwaS92Mi9qc29uUlBDJyxcbiAgc3VpTm9kZVVybDogJ2h0dHBzOi8vZnVsbG5vZGUubWFpbm5ldC5zdWkuaW8nLFxuICBldGNOb2RlVXJsOiAnaHR0cHM6Ly9ldGMuYmxvY2tzY291dC5jb20nLFxuICBjb3JlZGFvRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9vcGVuYXBpLmNvcmVkYW8ub3JnJyxcbiAgb2FzRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci5vYXN5cy5nYW1lcycsXG4gIGZsckV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vZmxhcmUtZXhwbG9yZXIuZmxhcmUubmV0d29yaycsXG4gIHhkY0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIHdlbWl4RXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgc2diRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9zb25nYmlyZC1leHBsb3Jlci5mbGFyZS5uZXR3b3JrJyxcbiAgZXZtOiB7XG4gICAgcGhyczoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vdGVzdG5ldC5kcGxhYnMtaW50ZXJuYWwuY29tJywgLy8gVE9ETzogV0lOLTU3ODcgYWRkIG1haW5uZXQgdXJsIHdoZW4gaXRzIGF2YWlsYWJsZVxuICAgIH0sXG4gICAgY3RjOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9tYWlubmV0My5jcmVkaXRjb2luLm5ldHdvcmsnLFxuICAgIH0sXG4gICAgaHlwZWV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vcnBjLmh5cGVybGlxdWlkLnh5ei9ldm0nLFxuICAgIH0sXG4gICAgb2c6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL2NoYWluc2Nhbi4wZy5haS9vcGVuL2FwaScsXG4gICAgfSxcbiAgICB4cGw6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3JwYy5wbGFzbWEudG8nLFxuICAgIH0sXG4gICAgc29uaWM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3JwYy5zb25pY2xhYnMuY29tJyxcbiAgICB9LFxuICAgIHNlaWV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXZtLXJwYy5zZWktYXBpcy5jb20nLFxuICAgIH0sXG4gICAga2FpYToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vcHVibGljLWVuLm5vZGUua2FpYS5pbycsXG4gICAgfSxcbiAgICBpcnlzOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LXJwYy5pcnlzLnh5ei92MS9leGVjdXRpb24tcnBjJywgLy9UT0RPOiBXSU4tNjE5MSBhZGQgbWFpbm5ldCB1cmwgd2hlbiBhdmFpbGFibGVcbiAgICB9LFxuICAgIG1vbjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBsaW5lYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBpcDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnN0b3J5c2Nhbi5hcHAvJyxcbiAgICB9LFxuICAgIHNvbWk6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL21haW5uZXQuc29tbmlhLnczdXMuc2l0ZS8nLFxuICAgIH0sXG4gICAgYmFzZWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgfSxcbiAgaWNwTm9kZVVybDogJ2h0dHBzOi8vaWMwLmFwcCcsXG4gIHdvcmxkRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly93b3JsZHNjYW4ub3JnLycsXG4gIHNvbW5pYUV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vbWFpbm5ldC5zb21uaWEudzN1cy5zaXRlLycsXG4gIHNvbmVpdW1FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL3NvbmVpdW0uYmxvY2tzY291dC5jb20nLFxuICBtb25FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBzdHhOb2RlVXJsOiAnaHR0cHM6Ly9hcGkuaGlyby5zbycsXG4gIHZldE5vZGVVcmw6ICdodHRwczovL3JwYy1tYWlubmV0LnZlY2hhaW4uZW5lcmd5JyxcbiAgeHR6RXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkudHprdC5pbycsXG4gIHh0elJwY1VybDogJ2h0dHBzOi8vcnBjLnR6a3QuaW8vbWFpbm5ldCcsXG59O1xuXG5jb25zdCB0ZXN0bmV0QmFzZTogRW52aXJvbm1lbnRUZW1wbGF0ZSA9IHtcbiAgbmV0d29yazogJ3Rlc3RuZXQnIGFzIFYxTmV0d29yayxcbiAgc2lnbmluZ0FkZHJlc3M6ICdtc2lnbkJkRlh0ZWVoREVnQjZETm03bnBSdDdBY0VaSlAzJyxcbiAgc2VydmVyWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3QsXG4gIGhzbVhwdWI6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICBidGNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknLFxuICBldGhlcnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gIGF2YXhjTmV0d29ya0Jhc2VVcmw6ICdodHRwczovL2FwaS5hdmF4LXRlc3QubmV0d29yaycsXG4gIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIGV0aHdGdWxsTm9kZVJQQ0Jhc2VVcmw6ICdodHRwczovL21haW5uZXQuZXRoZXJldW1wb3cub3JnJyxcbiAgcG9seWdvbnNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgcG9seWdvbnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuUE9MWUdPTlNDQU5fQVBJX1RPS0VOLFxuICBic2NzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIGJzY3NjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuQlNDX0FQSV9UT0tFTixcbiAgYXJiaXNjYW5CYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgYXJiaXNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuQVJCSVNDQU5fQVBJX1RPS0VOLFxuICBvcHRpbWlzdGljRXRoZXJzY2FuQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIG9wdGltaXN0aWNFdGhlcnNjYW5BcGlUb2tlbjogcHJvY2Vzcy5lbnYuT1BUSU1JU1RJQ19FVEhFUlNDQU5fQVBJX1RPS0VOLFxuICB6a3N5bmNFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Jsb2NrLWV4cGxvcmVyLWFwaS5zZXBvbGlhLnprc3luYy5kZXYnLFxuICB6a3N5bmNFeHBsb3JlckFwaVRva2VuOiBwcm9jZXNzLmVudi5aS1NZTkNfRVhQTE9SRVJfQVBJX1RPS0VOLFxuICBiYXNlZXRoRXhwbG9yZXJVcmw6ICdodHRwczovL2FwaS1zZXBvbGlhLmJhc2VzY2FuLm9yZycsXG4gIGJhc2VldGhBcGlUb2tlbjogcHJvY2Vzcy5lbnYuQkFTRVNDQU5fQVBJX1RPS0VOLFxuICAvLyBreWxpbiBlb3MgZW5kcG9pbnRzIGZvdW5kIGhlcmVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2NyeXB0b2t5bGluL0NyeXB0b0t5bGluLVRlc3RuZXQjaHR0cC1hcGktbGlzdFxuICAvLyBodHRwczovL2RvY3MubGlxdWlkYXBwcy5pby9saXF1aWRhcHBzLWRvY3VtZW50YXRpb24vZW9zaW8tZ3VpZGVzL3Rlc3RuZXQtY3JlYXRpb24tZ3VpZGVzL2NyZWF0aW5nLWNyeXB0b2t5bGluLWFjY291bnQjc2V0dXBcbiAgZW9zTm9kZVVybHM6IFsnaHR0cHM6Ly9reWxpbi5lb3NuLmlvJywgJ2h0dHBzOi8vYXBpLmt5bGluLmFsb2hhZW9zLmNvbSddLFxuICBuZWFyTm9kZVVybHM6IFsnaHR0cHM6Ly90ZXN0LnJwYy5mYXN0bmVhci5jb20nXSxcbiAgc29sTm9kZVVybDogJ2h0dHBzOi8vYXBpLmRldm5ldC5zb2xhbmEuY29tJyxcbiAgc29sQWxjaGVteU5vZGVVcmw6ICdodHRwczovL3NvbGFuYS1kZXZuZXQuZy5hbGNoZW15LmNvbS92MicsXG4gIGFkYU5vZGVVcmw6ICdodHRwczovL3ByZXByb2Qua29pb3MucmVzdC9hcGkvdjEnLFxuICBoYXNoTm9kZVVybDogJ2h0dHBzOi8vYXBpLnRlc3QucHJvdmVuYW5jZS5pbycsXG4gIGluak5vZGVVcmw6ICdodHRwczovL3Rlc3RuZXQuc2VudHJ5LmxjZC5pbmplY3RpdmUubmV0d29yaycsIC8vIENPSU4tMTIxOSA6IHJlZmVyZW5jZSAgaHR0cHM6Ly9kb2NzLmluamVjdGl2ZS5uZXR3b3JrL2RldmVsb3AvcHVibGljLWVuZHBvaW50cy8jdGVzdG5ldFxuICBhdG9tTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5wcm92aWRlci1zZW50cnktMDIuaWNzLXRlc3RuZXQucG9seXBvcmUueHl6LycsXG4gIG9zbW9Ob2RlVXJsOiAnaHR0cHM6Ly9sY2Qub3Ntb3Rlc3Q1Lm9zbW9zaXMuem9uZScsXG4gIHRpYU5vZGVVcmw6ICdodHRwczovL2FwaS1tb2NoYS5wb3BzLm9uZScsXG4gIHNlaU5vZGVVcmw6ICdodHRwczovL3Jlc3QuYXRsYW50aWMtMi5zZWluZXR3b3JrLmlvJyxcbiAgYmxkTm9kZVVybDogJ2h0dHBzOi8vZGV2bmV0LmFwaS5hZ29yaWMubmV0JyxcbiAgYmVyYU5vZGVVcmw6ICcnLCAvLyBUT0RPKFdJTi02OTMpOiB1cGRhdGUgdXJsIHdoZW4gdGVzdG5ldCBnb2VzIGxpdmVcbiAgemV0YU5vZGVVcmw6ICdodHRwczovL3Jlc3Qubm9kZWp1bXBlci5pby96ZXRhY2hhaW50ZXN0bmV0JywgLy8gcmVmZXJlbmNlIDogaHR0cHM6Ly93d3cuemV0YWNoYWluLmNvbS9kb2NzL3JlZmVyZW5jZS9hcGkvXG4gIGNvcmV1bU5vZGVVcmw6ICdodHRwczovL2Z1bGwtbm9kZS50ZXN0bmV0LTEuY29yZXVtLmRldjoxMzE3JyxcbiAgcnVuZU5vZGVVcmw6ICdodHRwczovL3N0YWdlbmV0LXRob3Jub2RlLm5pbmVyZWFsbXMuY29tJyxcbiAgYmFieU5vZGVVcmw6ICdodHRwczovL2JhYnlsb24tdGVzdG5ldC1hcGkubm9kZXMuZ3VydS8nLFxuICBpc2xtTm9kZVVybDogJ2h0dHBzOi8vcmVzdC5jb3Ntb3MudGVzdGVkZ2UyLmhhcXEubmV0d29yayAnLFxuICBtYW50cmFOb2RlVXJsOiAnaHR0cHM6Ly9tYW50cmEtdGVzdG5ldC1yZXN0LnB1YmxpY25vZGUuY29tLycsXG4gIGNyb25vc05vZGVVcmw6ICdodHRwczovL3Rlc3RuZXQtY3JvZXNlaWQtNC5jcnlwdG8ub3JnOjEzMTcvJyxcbiAgaW5pdGlhTm9kZVVybDogJ2h0dHBzOi8vcmVzdC50ZXN0bmV0LmluaXRpYS54eXovJyxcbiAgYXNpTm9kZVVybDogJ2h0dHBzOi8vcmVzdC1kb3JhZG8uZmV0Y2guYWkvJyxcbiAgZG90Tm9kZVVybHM6IFsnd3NzOi8vd2VzdGVuZC1ycGMucG9sa2Fkb3QuaW8nXSxcbiAgc3Vic3RyYXRlTm9kZVVybHM6IFsnd3NzOi8vdGVzdC5maW5uZXkub3BlbnRlbnNvci5haSddLFxuICBwb2x5bWVzaE5vZGVVcmxzOiBbJ3dzczovL3Rlc3RuZXQtcnBjLnBvbHltZXNoLmxpdmUnXSxcbiAgdHJvbk5vZGVzOiB7XG4gICAgZnVsbDogJ2h0dHBzOi8vYXBpLnNoYXN0YS50cm9uZ3JpZC5pbycsXG4gICAgc29saWRpdHk6ICdodHRwczovL2FwaS5zaGFzdGEudHJvbmdyaWQuaW8nLFxuICB9LFxuICBobWFjVmVyaWZpY2F0aW9uRW5mb3JjZWQ6IGZhbHNlLFxuICB0b25Ob2RlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LnRvbmNlbnRlci5jb20vYXBpL3YyL2pzb25SUEMnLFxuICBzdWlOb2RlVXJsOiAnaHR0cHM6Ly9mdWxsbm9kZS50ZXN0bmV0LnN1aS5pbycsXG4gIGV0Y05vZGVVcmw6ICdodHRwczovL2V0Yy1tb3Jkb3IuYmxvY2tzY291dC5jb20nLFxuICBjb3JlZGFvRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9hcGkudGVzdDIuYnRjcy5uZXR3b3JrJyxcbiAgb2FzRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9leHBsb3Jlci50ZXN0bmV0Lm9hc3lzLmdhbWVzJyxcbiAgd2VtaXhFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICBmbHJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2Nvc3RvbjItZXhwbG9yZXIuZmxhcmUubmV0d29yaycsXG4gIHhkY0V4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gIHNnYkV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vY29zdG9uLWV4cGxvcmVyLmZsYXJlLm5ldHdvcmsnLFxuICBpY3BOb2RlVXJsOiAnaHR0cHM6Ly9leGNoYW5nZXMudGVzdG5ldC5kZmluaXR5Lm5ldHdvcmsnLFxuICBtb25FeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5ldGhlcnNjYW4uaW8vdjInLFxuICB3b3JsZEV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vc2Vwb2xpYS53b3JsZHNjYW4ub3JnLycsXG4gIHNvbW5pYUV4cGxvcmVyQmFzZVVybDogJ2h0dHBzOi8vc2hhbm5vbi1leHBsb3Jlci5zb21uaWEubmV0d29yay8nLFxuICBzb25laXVtRXhwbG9yZXJCYXNlVXJsOiAnaHR0cHM6Ly9zb25laXVtLW1pbmF0by5ibG9ja3Njb3V0LmNvbScsXG4gIGV2bToge1xuICAgIHBocnM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3Rlc3RuZXQuZHBsYWJzLWludGVybmFsLmNvbScsXG4gICAgfSxcbiAgICBjdGM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3JwYy5jYzMtdGVzdG5ldC5jcmVkaXRjb2luLm5ldHdvcmsnLFxuICAgIH0sXG4gICAgaHlwZWV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vcnBjLmh5cGVybGlxdWlkLXRlc3RuZXQueHl6L2V2bScsXG4gICAgfSxcbiAgICBvZzoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vY2hhaW5zY2FuLXRlc3QuMGcuYWkvb3Blbi9hcGknLFxuICAgIH0sXG4gICAgeHBsOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LXJwYy5wbGFzbWEudG8nLFxuICAgIH0sXG4gICAgc29uaWM6IHtcbiAgICAgIGJhc2VVcmw6ICdodHRwczovL3JwYy5ibGF6ZS5zb25pY2xhYnMuY29tJyxcbiAgICB9LFxuICAgIHNlaWV2bToge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vZXZtLXJwYy10ZXN0bmV0LnNlaS1hcGlzLmNvbScsXG4gICAgfSxcbiAgICBrYWlhOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9wdWJsaWMtZW4ta2Fpcm9zLm5vZGUua2FpYS5pbycsXG4gICAgfSxcbiAgICBpcnlzOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly90ZXN0bmV0LXJwYy5pcnlzLnh5ei92MS9leGVjdXRpb24tcnBjJyxcbiAgICB9LFxuICAgIG1vbjoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBsaW5lYWV0aDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pby92MicsXG4gICAgfSxcbiAgICBpcDoge1xuICAgICAgYmFzZVVybDogJ2h0dHBzOi8vYXBpLnN0b3J5c2Nhbi5hcHAvJyxcbiAgICB9LFxuICAgIHRiYXNlZXRoOiB7XG4gICAgICBiYXNlVXJsOiAnaHR0cHM6Ly9hcGkuZXRoZXJzY2FuLmlvL3YyJyxcbiAgICB9LFxuICB9LFxuICBzdHhOb2RlVXJsOiAnaHR0cHM6Ly9hcGkudGVzdG5ldC5oaXJvLnNvJyxcbiAgdmV0Tm9kZVVybDogJ2h0dHBzOi8vcnBjLXRlc3RuZXQudmVjaGFpbi5lbmVyZ3knLFxuICB4dHpFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2FwaS5naG9zdG5ldC50emt0LmlvJyxcbiAgeHR6UnBjVXJsOiAnaHR0cHM6Ly9ycGMudHprdC5pby9naG9zdG5ldCcsXG59O1xuXG5jb25zdCBkZXZCYXNlOiBFbnZpcm9ubWVudFRlbXBsYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgaHNtWHB1YjogaGFyZGNvZGVkUHVibGljS2V5cy5oc21YcHViLmRldixcbiAgaG1hY1ZlcmlmaWNhdGlvbkVuZm9yY2VkOiBmYWxzZSxcbn0pO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVkZWNsYXJlXG5leHBvcnQgY29uc3QgRW52aXJvbm1lbnRzOiBFbnZpcm9ubWVudHMgPSB7XG4gIHByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28uY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYXBwLmJpdGdvLmNvbS9hcGkvdjIveGxtL2ZlZGVyYXRpb24nLFxuICB9KSxcbiAgdGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FwcC5iaXRnby10ZXN0LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIHN0YWdpbmc6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hcHAuYml0Z28tc3RhZ2luZy5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tc3RhZ2luZy5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBsb2NhbDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vbG9jYWxob3N0OjMwMDAnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9sb2NhbGhvc3Q6MzAwMC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGxvY2FsTm9uU2VjdXJlOiBPYmplY3QuYXNzaWduKHt9LCBkZXZCYXNlLCB7XG4gICAgdXJpOiAnaHR0cDovL2xvY2FsaG9zdDozMDAwJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMC9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIG1vY2s6IE9iamVjdC5hc3NpZ24oe30sIGRldkJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2JpdGdvLmZha2V1cmwnLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9iaXRnby5mYWtldXJsL2FwaS92Mi90eGxtL2ZlZGVyYXRpb24nLFxuICAgIGV0aGVyc2NhbkJhc2VVcmw6ICdodHRwczovL2FwaS1ob29kaS5ldGhlcnNjYW4uZmFrZXVybCcsXG4gICAgZXRoZXJzY2FuQXBpVG9rZW46IHByb2Nlc3MuZW52LkVUSEVSU0NBTl9BUElfVE9LRU4sXG4gICAgYXZheGNOZXR3b3JrQmFzZVVybDogJ2h0dHBzOi8vYXBpLmF2YXgtdGVzdC5uZXR3b3JrLmZha2V1cmwnLFxuICAgIGV0aDJFeHBsb3JlckJhc2VVcmw6ICdodHRwczovL2JlYWNvbnNjYW4uY29tL2FwaScsXG4gIH0pLFxuICBhZG1pblByb2Q6IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby5jb20vYXBpL3YyL3hsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG4gIGFkbWluVGVzdDogT2JqZWN0LmFzc2lnbih7fSwgdGVzdG5ldEJhc2UsIHtcbiAgICB1cmk6ICdodHRwczovL2FkbWluLmJpdGdvLXRlc3QuY29tJyxcbiAgICBzdGVsbGFyRmVkZXJhdGlvblNlcnZlclVybDogJ2h0dHBzOi8vYWRtaW4uYml0Z28tdGVzdC5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pbkRldjogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYWRtaW4uYml0Z28tZGV2LmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLWRldi5jb20vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBhZG1pblN0YWdpbmc6IE9iamVjdC5hc3NpZ24oe30sIHRlc3RuZXRCYXNlLCB7XG4gICAgdXJpOiAnaHR0cHM6Ly9hZG1pbi5iaXRnby1zdGFnaW5nLmNvbScsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6ICdodHRwczovL2FkbWluLmJpdGdvLXN0YWdpbmcuY29tL2FwaS92Mi94bG0vZmVkZXJhdGlvbicsXG4gIH0pLFxuICBjdXN0b206IE9iamVjdC5hc3NpZ24oe30sIG1haW5uZXRCYXNlLCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cbiAgICB1cmk6IHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSSEsXG4gICAgbmV0d29yazogcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyBhcyBWMU5ldHdvcmssXG4gICAgaHNtWHB1YjpcbiAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgPyBoYXJkY29kZWRQdWJsaWNLZXlzLmhzbVhwdWIucHJvZCA6IGhhcmRjb2RlZFB1YmxpY0tleXMuaHNtWHB1Yi50ZXN0LFxuICAgIGJ0Y0V4cGxvcmVyQmFzZVVybDpcbiAgICAgIHByb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9CSVRDT0lOX05FVFdPUksgIT09ICdiaXRjb2luJ1xuICAgICAgICA/ICdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknXG4gICAgICAgIDogJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknLFxuICAgIGV0aGVyc2NhbkJhc2VVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fRVRIRVJFVU1fTkVUV09SSyAhPT0gJ2V0aGVyZXVtJ1xuICAgICAgICA/ICdodHRwczovL2FwaS1ob29kaS5ldGhlcnNjYW4uaW8nXG4gICAgICAgIDogJ2h0dHBzOi8vYXBpLmV0aGVyc2Nhbi5pbycsXG4gICAgc3RlbGxhckZlZGVyYXRpb25TZXJ2ZXJVcmw6XG4gICAgICBwcm9jZXNzLmVudi5CSVRHT19DVVNUT01fU1RFTExBUl9ORVRXT1JLICE9PSAnc3RlbGxhcidcbiAgICAgICAgPyBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3R4bG0vZmVkZXJhdGlvbmBcbiAgICAgICAgOiBgaHR0cHM6Ly8ke3Byb2Nlc3MuZW52LkJJVEdPX0NVU1RPTV9ST09UX1VSSX0vYXBpL3YyL3hsbS9mZWRlcmF0aW9uYCxcbiAgICBzZXJ2ZXJYcHViOlxuICAgICAgcHJvY2Vzcy5lbnYuQklUR09fQ1VTVE9NX0JJVENPSU5fTkVUV09SSyAhPT0gJ2JpdGNvaW4nXG4gICAgICAgID8gaGFyZGNvZGVkUHVibGljS2V5cy5zZXJ2ZXJYcHViLnRlc3RcbiAgICAgICAgOiBoYXJkY29kZWRQdWJsaWNLZXlzLnNlcnZlclhwdWIucHJvZCxcbiAgfSksXG4gIGJyYW5jaDogT2JqZWN0LmFzc2lnbih7fSwgZGV2QmFzZSwge1xuICAgIHVyaTogJ2h0dHBzOi8vYXBwLmJpdGdvLWRldi5jb20nLFxuICAgIHN0ZWxsYXJGZWRlcmF0aW9uU2VydmVyVXJsOiAnaHR0cHM6Ly9hcHAuYml0Z28tZGV2LmNvbS9hcGkvdjIvdHhsbS9mZWRlcmF0aW9uJyxcbiAgfSksXG59O1xuIl19Выполнить команду
Для локальной разработки. Не используйте в интернете!