@bitgo-beta/sdk-coin-trx 1.2.3-alpha.504 → 1.2.3-alpha.505

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.
@@ -75,8 +75,10 @@ class TrxToken extends trx_1.Trx {
75
75
  (0, assert_1.default)(txPrebuild.txHex, new Error('missing required tx prebuild property txHex'));
76
76
  if (walletType === 'tss') {
77
77
  // For TSS wallets, TRC20 token transfers are TriggerSmartContract transactions.
78
- // Decode the transaction and validate destination address and amount against
79
- // txParams.recipients before signing to ensure intent matches the prebuild.
78
+ // Always verify structure and ABI decodability. Intent validation (address + amount
79
+ // comparison) is performed only when recipients are present — absent recipients
80
+ // indicates a server-determined transfer (e.g. consolidation) where the server
81
+ // owns the intent.
80
82
  const rawDataHex = this.extractRawDataHex(txPrebuild.txHex);
81
83
  const decodedTx = lib_1.Utils.decodeTransaction(rawDataHex);
82
84
  if (decodedTx.contractType !== lib_1.Enum.ContractType.TriggerSmartContract) {
@@ -88,10 +90,6 @@ class TrxToken extends trx_1.Trx {
88
90
  const triggerContract = decodedTx.contract[0];
89
91
  // data is base64-encoded from protobuf decoding; convert to hex for decodeDataParams
90
92
  const contractData = Buffer.from(triggerContract.parameter.value.data, 'base64').toString('hex');
91
- const recipients = txParams.recipients || txPrebuild.txInfo.recipients;
92
- if (!recipients || recipients.length !== 1) {
93
- throw new Error('missing or invalid required property recipients');
94
- }
95
93
  let recipientHex;
96
94
  let transferAmount;
97
95
  try {
@@ -100,6 +98,14 @@ class TrxToken extends trx_1.Trx {
100
98
  catch (e) {
101
99
  throw new Error(`Failed to decode TRC20 transfer ABI data: ${e instanceof Error ? e.message : String(e)}`);
102
100
  }
101
+ const recipients = txParams.recipients || txPrebuild.txInfo?.recipients;
102
+ if (!recipients || recipients.length === 0) {
103
+ // No recipients — server-determined transfer (e.g. consolidation); structural check above is sufficient.
104
+ return true;
105
+ }
106
+ if (recipients.length !== 1) {
107
+ throw new Error('invalid required property recipients');
108
+ }
103
109
  // recipientHex has '41' hex prefix; convert to base58 for comparison
104
110
  const actualDestination = lib_1.Utils.getBase58AddressFromHex(recipientHex);
105
111
  const actualAmount = transferAmount.toString();
@@ -129,4 +135,4 @@ class TrxToken extends trx_1.Trx {
129
135
  }
130
136
  }
131
137
  exports.TrxToken = TrxToken;
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ4VG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHJ4VG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsK0JBQTRCO0FBRTVCLGlEQUFvRTtBQUNwRSwyQ0FBMkM7QUFFM0Msb0RBQTRCO0FBQzVCLCtCQUErQztBQVUvQyxNQUFhLFFBQVMsU0FBUSxTQUFHO0lBRy9CLFlBQVksS0FBZ0IsRUFBRSxXQUEyQjtRQUN2RCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RixLQUFLLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBc0I7UUFDbEQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUM1QixlQUFpQyxDQUFDLEdBQUcsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLGdCQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFFN0YsTUFBTSxXQUFXLEdBQTJCLEVBQUUsQ0FBQztRQUMvQyxLQUFLLE1BQU0sS0FBSyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pDLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElB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LE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFFL0IsTUFBTSxTQUFTLEdBQUcsSUFBQSxvQkFBVSxFQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRCxNQUFNLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVuQyxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxJQUFLLFVBQVUsQ0FBQyxNQUFxQixDQUFDLFVBQVUsQ0FBQztRQUN2RixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFFRCxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BHLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLDZEQUE2RCxDQUFDLENBQUM7UUFDakYsQ0FBQztJQUNILENBQUM7Q0FDRjtBQTFKRCw0QkEwSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnggfSBmcm9tICcuL3RyeCc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIENvaW5Db25zdHJ1Y3RvciwgTmFtZWRDb2luQ29uc3RydWN0b3IsIFZlcmlmeVRyYW5zYWN0aW9uT3B0aW9ucyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyeFRva2VuQ29uZmlnLCBjb2lucywgdG9rZW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBnZXRCdWlsZGVyIH0gZnJvbSAnLi9saWIvYnVpbGRlcic7XG5pbXBvcnQgeyBSZWNpcGllbnQgfSBmcm9tICcuLi8uLi9zZGstY29yZS9zcmMvYml0Z28vYmFzZUNvaW4vaUJhc2VDb2luJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IEVudW0sIFV0aWxzLCBJbnRlcmZhY2UgfSBmcm9tICcuL2xpYic7XG5cbmV4cG9ydCB7IFRyeFRva2VuQ29uZmlnIH07XG5cbmV4cG9ydCB0eXBlIFRyb25UeEluZm8gPSB7XG4gIHJlY2lwaWVudHM/OiBSZWNpcGllbnRbXTtcbiAgZnJvbT86IHN0cmluZztcbiAgdHhpZD86IHN0cmluZztcbn07XG5cbmV4cG9ydCBjbGFzcyBUcnhUb2tlbiBleHRlbmRzIFRyeCB7XG4gIHB1YmxpYyByZWFkb25seSB0b2tlbkNvbmZpZzogVHJ4VG9rZW5Db25maWc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgdG9rZW5Db25maWc6IFRyeFRva2VuQ29uZmlnKSB7XG4gICAgY29uc3Qgc3RhdGljc0NvaW4gPSB0b2tlbkNvbmZpZy5uZXR3b3JrID09PSAnTWFpbm5ldCcgPyBjb2lucy5nZXQoJ3RyeCcpIDogY29pbnMuZ2V0KCd0dHJ4Jyk7XG4gICAgc3VwZXIoYml0Z28sIHN0YXRpY3NDb2luKTtcbiAgICB0aGlzLnRva2VuQ29uZmlnID0gdG9rZW5Db25maWc7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWc6IFRyeFRva2VuQ29uZmlnKTogQ29pbkNvbnN0cnVjdG9yIHtcbiAgICByZXR1cm4gKGJpdGdvOiBCaXRHb0Jhc2UpID0+IG5ldyBUcnhUb2tlbihiaXRnbywgY29uZmlnKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVUb2tlbkNvbnN0cnVjdG9ycyhcbiAgICB0b2tlbkNvbmZpZ3M6IFRyeFRva2VuQ29uZmlnW10gPSBbLi4udG9rZW5zLmJpdGNvaW4udHJ4LnRva2VucywgLi4udG9rZW5zLnRlc3RuZXQudHJ4LnRva2Vuc11cbiAgKTogTmFtZWRDb2luQ29uc3RydWN0b3JbXSB7XG4gICAgY29uc3QgdG9rZW5zQ3RvcnM6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHRva2VuQ29uZmlncykge1xuICAgICAgY29uc3QgdG9rZW5Db25zdHJ1Y3RvciA9IFRyeFRva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3IodG9rZW4pO1xuICAgICAgdG9rZW5zQ3RvcnMucHVzaCh7IG5hbWU6IHRva2VuLnR5cGUsIGNvaW5Db25zdHJ1Y3RvcjogdG9rZW5Db25zdHJ1Y3RvciB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRva2Vuc0N0b3JzO1xuICB9XG5cbiAgZ2V0IHR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldCBuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLm5hbWU7XG4gIH1cblxuICBnZXQgY29pbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IG5ldHdvcmsoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmV0d29yaztcbiAgfVxuXG4gIGdldCB0b2tlbkNvbnRyYWN0QWRkcmVzcygpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50b2tlbkNvbnRyYWN0QWRkcmVzcztcbiAgfVxuXG4gIGdldCBkZWNpbWFsUGxhY2VzKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXM7XG4gIH1cblxuICBnZXRDaGFpbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50eXBlO1xuICB9XG5cbiAgZ2V0QmFzZUNoYWluKCkge1xuICAgIHJldHVybiB0aGlzLmNvaW47XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpIHtcbiAgICByZXR1cm4gJ1Ryb24gVG9rZW4nO1xuICB9XG5cbiAgZ2V0QmFzZUZhY3RvcigpIHtcbiAgICByZXR1cm4gTWF0aC5wb3coMTAsIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcyk7XG4gIH1cblxuICAvKipcbiAgICogRmxhZyBmb3Igc2VuZGluZyB2YWx1ZSBvZiAwXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIG9rYXkgdG8gc2VuZCAwIHZhbHVlLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIHZhbHVlbGVzc1RyYW5zZmVyQWxsb3dlZCgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogRmxhZyBmb3Igc2VuZGluZyBkYXRhIGFsb25nIHdpdGggdHJhbnNhY3Rpb25zXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIG9rYXkgdG8gc2VuZCB0eCBkYXRhIChFVEgpLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIHRyYW5zYWN0aW9uRGF0YUFsbG93ZWQoKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5VHJhbnNhY3Rpb24ocGFyYW1zOiBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCB7IHR4UHJlYnVpbGQsIHR4UGFyYW1zLCB3YWxsZXRUeXBlIH0gPSBwYXJhbXM7XG4gICAgYXNzZXJ0KHR4UHJlYnVpbGQudHhIZXgsIG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCB0eCBwcmVidWlsZCBwcm9wZXJ0eSB0eEhleCcpKTtcblxuICAgIGlmICh3YWxsZXRUeXBlID09PSAndHNzJykge1xuICAgICAgLy8gRm9yIFRTUyB3YWxsZXRzLCBUUkMyMCB0b2tlbiB0cmFuc2ZlcnMgYXJlIFRyaWdnZXJTbWFydENvbnRyYWN0IHRyYW5zYWN0aW9ucy5cbiAgICAgIC8vIERlY29kZSB0aGUgdHJhbnNhY3Rpb24gYW5kIHZhbGlkYXRlIGRlc3RpbmF0aW9uIGFkZHJlc3MgYW5kIGFtb3VudCBhZ2FpbnN0XG4gICAgICAvLyB0eFBhcmFtcy5yZWNpcGllbnRzIGJlZm9yZSBzaWduaW5nIHRvIGVuc3VyZSBpbnRlbnQgbWF0Y2hlcyB0aGUgcHJlYnVpbGQuXG4gICAgICBjb25zdCByYXdEYXRhSGV4ID0gdGhpcy5leHRyYWN0UmF3RGF0YUhleCh0eFByZWJ1aWxkLnR4SGV4KTtcbiAgICAgIGNvbnN0IGRlY29kZWRUeCA9IFV0aWxzLmRlY29kZVRyYW5zYWN0aW9uKHJhd0RhdGFIZXgpO1xuXG4gICAgICBpZiAoZGVjb2RlZFR4LmNvbnRyYWN0VHlwZSAhPT0gRW51bS5Db250cmFjdFR5cGUuVHJpZ2dlclNtYXJ0Q29udHJhY3QpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBFeHBlY3RlZCBUcmlnZ2VyU21hcnRDb250cmFjdCBmb3IgVFJDMjAgdG9rZW4gdHJhbnNmZXIsIGdvdCBjb250cmFjdCB0eXBlOiAke2RlY29kZWRUeC5jb250cmFjdFR5cGV9YFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpZiAoIUFycmF5LmlzQXJyYXkoZGVjb2RlZFR4LmNvbnRyYWN0KSB8fCBkZWNvZGVkVHguY29udHJhY3QubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBUcmlnZ2VyU21hcnRDb250cmFjdCBzdHJ1Y3R1cmUnKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdHJpZ2dlckNvbnRyYWN0ID0gZGVjb2RlZFR4LmNvbnRyYWN0WzBdIGFzIEludGVyZmFjZS5UcmlnZ2VyU21hcnRDb250cmFjdDtcbiAgICAgIC8vIGRhdGEgaXMgYmFzZTY0LWVuY29kZWQgZnJvbSBwcm90b2J1ZiBkZWNvZGluZzsgY29udmVydCB0byBoZXggZm9yIGRlY29kZURhdGFQYXJhbXNcbiAgICAgIGNvbnN0IGNvbnRyYWN0RGF0YSA9IEJ1ZmZlci5mcm9tKHRyaWdnZXJDb250cmFjdC5wYXJhbWV0ZXIudmFsdWUuZGF0YSwgJ2Jhc2U2NCcpLnRvU3RyaW5nKCdoZXgnKTtcblxuICAgICAgY29uc3QgcmVjaXBpZW50cyA9IHR4UGFyYW1zLnJlY2lwaWVudHMgfHwgKHR4UHJlYnVpbGQudHhJbmZvIGFzIFRyb25UeEluZm8pLnJlY2lwaWVudHM7XG4gICAgICBpZiAoIXJlY2lwaWVudHMgfHwgcmVjaXBpZW50cy5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdtaXNzaW5nIG9yIGludmFsaWQgcmVxdWlyZWQgcHJvcGVydHkgcmVjaXBpZW50cycpO1xuICAgICAgfVxuXG4gICAgICBsZXQgcmVjaXBpZW50SGV4OiBzdHJpbmc7XG4gICAgICBsZXQgdHJhbnNmZXJBbW91bnQ6IHsgdG9TdHJpbmcoKTogc3RyaW5nIH07XG4gICAgICB0cnkge1xuICAgICAgICBbcmVjaXBpZW50SGV4LCB0cmFuc2ZlckFtb3VudF0gPSBVdGlscy5kZWNvZGVEYXRhUGFyYW1zKFsnYWRkcmVzcycsICd1aW50MjU2J10sIGNvbnRyYWN0RGF0YSkgYXMgW1xuICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICB7IHRvU3RyaW5nKCk6IHN0cmluZyB9XG4gICAgICAgIF07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGRlY29kZSBUUkMyMCB0cmFuc2ZlciBBQkkgZGF0YTogJHtlIGluc3RhbmNlb2YgRXJyb3IgPyBlLm1lc3NhZ2UgOiBTdHJpbmcoZSl9YCk7XG4gICAgICB9XG5cbiAgICAgIC8vIHJlY2lwaWVudEhleCBoYXMgJzQxJyBoZXggcHJlZml4OyBjb252ZXJ0IHRvIGJhc2U1OCBmb3IgY29tcGFyaXNvblxuICAgICAgY29uc3QgYWN0dWFsRGVzdGluYXRpb24gPSBVdGlscy5nZXRCYXNlNThBZGRyZXNzRnJvbUhleChyZWNpcGllbnRIZXgpO1xuICAgICAgY29uc3QgYWN0dWFsQW1vdW50ID0gdHJhbnNmZXJBbW91bnQudG9TdHJpbmcoKTtcbiAgICAgIGNvbnN0IGV4cGVjdGVkRGVzdGluYXRpb24gPSByZWNpcGllbnRzWzBdLmFkZHJlc3M7XG4gICAgICBjb25zdCBleHBlY3RlZEFtb3VudCA9IHJlY2lwaWVudHNbMF0uYW1vdW50LnRvU3RyaW5nKCk7XG5cbiAgICAgIGlmIChhY3R1YWxBbW91bnQgIT09IGV4cGVjdGVkQW1vdW50KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndHJhbnNhY3Rpb24gYW1vdW50IGluIHR4UHJlYnVpbGQgZG9lcyBub3QgbWF0Y2ggdGhlIHZhbHVlIGdpdmVuIGJ5IGNsaWVudCcpO1xuICAgICAgfVxuXG4gICAgICBpZiAoZXhwZWN0ZWREZXN0aW5hdGlvbi50b0xvd2VyQ2FzZSgpICE9PSBhY3R1YWxEZXN0aW5hdGlvbi50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignZGVzdGluYXRpb24gYWRkcmVzcyBkb2VzIG5vdCBtYXRjaCB3aXRoIHRoZSByZWNpcGllbnQgYWRkcmVzcycpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBjb25zdCByYXdUeCA9IHR4UHJlYnVpbGQudHhIZXg7XG5cbiAgICBjb25zdCB0eEJ1aWxkZXIgPSBnZXRCdWlsZGVyKHRoaXMuZ2V0Q2hhaW4oKSkuZnJvbShyYXdUeCk7XG4gICAgY29uc3QgdHggPSBhd2FpdCB0eEJ1aWxkZXIuYnVpbGQoKTtcblxuICAgIGNvbnN0IHJlY2lwaWVudHMgPSB0eFBhcmFtcy5yZWNpcGllbnRzIHx8ICh0eFByZWJ1aWxkLnR4SW5mbyBhcyBUcm9uVHhJbmZvKS5yZWNpcGllbnRzO1xuICAgIGlmICghcmVjaXBpZW50cykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdtaXNzaW5nIHJlcXVpcmVkIHByb3BlcnR5IHJlY2lwaWVudHMnKTtcbiAgICB9XG5cbiAgICBpZiAocmVjaXBpZW50c1swXS5hZGRyZXNzID09PSB0eC5vdXRwdXRzWzBdLmFkZHJlc3MgJiYgcmVjaXBpZW50c1swXS5hbW91bnQgPT09IHR4Lm91dHB1dHNbMF0udmFsdWUpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1R4IG91dHB1dHMgZG9lcyBub3QgbWF0Y2ggd2l0aCBleHBlY3RlZCB0eFBhcmFtcyByZWNpcGllbnRzJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJ4VG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHJ4VG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsK0JBQTRCO0FBRTVCLGlEQUFvRTtBQUNwRSwyQ0FBMkM7QUFFM0Msb0RBQTRCO0FBQzVCLCtCQUErQztBQVUvQyxNQUFhLFFBQVMsU0FBUSxTQUFHO0lBRy9CLFlBQVksS0FBZ0IsRUFBRSxXQUEyQjtRQUN2RCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RixLQUFLLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBc0I7UUFDbEQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUM1QixlQUFpQyxDQUFDLEdBQUcsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLGdCQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFFN0YsTUFBTSxXQUFXLEdBQTJCLEVBQUUsQ0FBQztRQUMvQyxLQUFLLE1BQU0sS0FBSyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pDLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElB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QkFBbUIsQ0FBQyxXQUFXLEVBQUUsS0FBSyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO2dCQUMxRSxNQUFNLElBQUksS0FBSyxDQUFDLCtEQUErRCxDQUFDLENBQUM7WUFDbkYsQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFFL0IsTUFBTSxTQUFTLEdBQUcsSUFBQSxvQkFBVSxFQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMxRCxNQUFNLEVBQUUsR0FBRyxNQUFNLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUVuQyxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxJQUFLLFVBQVUsQ0FBQyxNQUFxQixDQUFDLFVBQVUsQ0FBQztRQUN2RixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFFRCxJQUFJLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3BHLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLDZEQUE2RCxDQUFDLENBQUM7UUFDakYsQ0FBQztJQUNILENBQUM7Q0FDRjtBQS9KRCw0QkErSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcnggfSBmcm9tICcuL3RyeCc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIENvaW5Db25zdHJ1Y3RvciwgTmFtZWRDb2luQ29uc3RydWN0b3IsIFZlcmlmeVRyYW5zYWN0aW9uT3B0aW9ucyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyeFRva2VuQ29uZmlnLCBjb2lucywgdG9rZW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBnZXRCdWlsZGVyIH0gZnJvbSAnLi9saWIvYnVpbGRlcic7XG5pbXBvcnQgeyBSZWNpcGllbnQgfSBmcm9tICcuLi8uLi9zZGstY29yZS9zcmMvYml0Z28vYmFzZUNvaW4vaUJhc2VDb2luJztcbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCB7IEVudW0sIFV0aWxzLCBJbnRlcmZhY2UgfSBmcm9tICcuL2xpYic7XG5cbmV4cG9ydCB7IFRyeFRva2VuQ29uZmlnIH07XG5cbmV4cG9ydCB0eXBlIFRyb25UeEluZm8gPSB7XG4gIHJlY2lwaWVudHM/OiBSZWNpcGllbnRbXTtcbiAgZnJvbT86IHN0cmluZztcbiAgdHhpZD86IHN0cmluZztcbn07XG5cbmV4cG9ydCBjbGFzcyBUcnhUb2tlbiBleHRlbmRzIFRyeCB7XG4gIHB1YmxpYyByZWFkb25seSB0b2tlbkNvbmZpZzogVHJ4VG9rZW5Db25maWc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgdG9rZW5Db25maWc6IFRyeFRva2VuQ29uZmlnKSB7XG4gICAgY29uc3Qgc3RhdGljc0NvaW4gPSB0b2tlbkNvbmZpZy5uZXR3b3JrID09PSAnTWFpbm5ldCcgPyBjb2lucy5nZXQoJ3RyeCcpIDogY29pbnMuZ2V0KCd0dHJ4Jyk7XG4gICAgc3VwZXIoYml0Z28sIHN0YXRpY3NDb2luKTtcbiAgICB0aGlzLnRva2VuQ29uZmlnID0gdG9rZW5Db25maWc7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWc6IFRyeFRva2VuQ29uZmlnKTogQ29pbkNvbnN0cnVjdG9yIHtcbiAgICByZXR1cm4gKGJpdGdvOiBCaXRHb0Jhc2UpID0+IG5ldyBUcnhUb2tlbihiaXRnbywgY29uZmlnKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVUb2tlbkNvbnN0cnVjdG9ycyhcbiAgICB0b2tlbkNvbmZpZ3M6IFRyeFRva2VuQ29uZmlnW10gPSBbLi4udG9rZW5zLmJpdGNvaW4udHJ4LnRva2VucywgLi4udG9rZW5zLnRlc3RuZXQudHJ4LnRva2Vuc11cbiAgKTogTmFtZWRDb2luQ29uc3RydWN0b3JbXSB7XG4gICAgY29uc3QgdG9rZW5zQ3RvcnM6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHRva2VuQ29uZmlncykge1xuICAgICAgY29uc3QgdG9rZW5Db25zdHJ1Y3RvciA9IFRyeFRva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3IodG9rZW4pO1xuICAgICAgdG9rZW5zQ3RvcnMucHVzaCh7IG5hbWU6IHRva2VuLnR5cGUsIGNvaW5Db25zdHJ1Y3RvcjogdG9rZW5Db25zdHJ1Y3RvciB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRva2Vuc0N0b3JzO1xuICB9XG5cbiAgZ2V0IHR5cGUoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldCBuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLm5hbWU7XG4gIH1cblxuICBnZXQgY29pbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IG5ldHdvcmsoKSB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcubmV0d29yaztcbiAgfVxuXG4gIGdldCB0b2tlbkNvbnRyYWN0QWRkcmVzcygpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50b2tlbkNvbnRyYWN0QWRkcmVzcztcbiAgfVxuXG4gIGdldCBkZWNpbWFsUGxhY2VzKCkge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmRlY2ltYWxQbGFjZXM7XG4gIH1cblxuICBnZXRDaGFpbigpIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy50eXBlO1xuICB9XG5cbiAgZ2V0QmFzZUNoYWluKCkge1xuICAgIHJldHVybiB0aGlzLmNvaW47XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpIHtcbiAgICByZXR1cm4gJ1Ryb24gVG9rZW4nO1xuICB9XG5cbiAgZ2V0QmFzZUZhY3RvcigpIHtcbiAgICByZXR1cm4gTWF0aC5wb3coMTAsIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcyk7XG4gIH1cblxuICAvKipcbiAgICogRmxhZyBmb3Igc2VuZGluZyB2YWx1ZSBvZiAwXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIG9rYXkgdG8gc2VuZCAwIHZhbHVlLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIHZhbHVlbGVzc1RyYW5zZmVyQWxsb3dlZCgpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogRmxhZyBmb3Igc2VuZGluZyBkYXRhIGFsb25nIHdpdGggdHJhbnNhY3Rpb25zXG4gICAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIG9rYXkgdG8gc2VuZCB0eCBkYXRhIChFVEgpLCBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIHRyYW5zYWN0aW9uRGF0YUFsbG93ZWQoKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgYXN5bmMgdmVyaWZ5VHJhbnNhY3Rpb24ocGFyYW1zOiBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnMpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCB7IHR4UHJlYnVpbGQsIHR4UGFyYW1zLCB3YWxsZXRUeXBlIH0gPSBwYXJhbXM7XG4gICAgYXNzZXJ0KHR4UHJlYnVpbGQudHhIZXgsIG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCB0eCBwcmVidWlsZCBwcm9wZXJ0eSB0eEhleCcpKTtcblxuICAgIGlmICh3YWxsZXRUeXBlID09PSAndHNzJykge1xuICAgICAgLy8gRm9yIFRTUyB3YWxsZXRzLCBUUkMyMCB0b2tlbiB0cmFuc2ZlcnMgYXJlIFRyaWdnZXJTbWFydENvbnRyYWN0IHRyYW5zYWN0aW9ucy5cbiAgICAgIC8vIEFsd2F5cyB2ZXJpZnkgc3RydWN0dXJlIGFuZCBBQkkgZGVjb2RhYmlsaXR5LiBJbnRlbnQgdmFsaWRhdGlvbiAoYWRkcmVzcyArIGFtb3VudFxuICAgICAgLy8gY29tcGFyaXNvbikgaXMgcGVyZm9ybWVkIG9ubHkgd2hlbiByZWNpcGllbnRzIGFyZSBwcmVzZW50IOKAlCBhYnNlbnQgcmVjaXBpZW50c1xuICAgICAgLy8gaW5kaWNhdGVzIGEgc2VydmVyLWRldGVybWluZWQgdHJhbnNmZXIgKGUuZy4gY29uc29saWRhdGlvbikgd2hlcmUgdGhlIHNlcnZlclxuICAgICAgLy8gb3ducyB0aGUgaW50ZW50LlxuICAgICAgY29uc3QgcmF3RGF0YUhleCA9IHRoaXMuZXh0cmFjdFJhd0RhdGFIZXgodHhQcmVidWlsZC50eEhleCk7XG4gICAgICBjb25zdCBkZWNvZGVkVHggPSBVdGlscy5kZWNvZGVUcmFuc2FjdGlvbihyYXdEYXRhSGV4KTtcblxuICAgICAgaWYgKGRlY29kZWRUeC5jb250cmFjdFR5cGUgIT09IEVudW0uQ29udHJhY3RUeXBlLlRyaWdnZXJTbWFydENvbnRyYWN0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgRXhwZWN0ZWQgVHJpZ2dlclNtYXJ0Q29udHJhY3QgZm9yIFRSQzIwIHRva2VuIHRyYW5zZmVyLCBnb3QgY29udHJhY3QgdHlwZTogJHtkZWNvZGVkVHguY29udHJhY3RUeXBlfWBcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmICghQXJyYXkuaXNBcnJheShkZWNvZGVkVHguY29udHJhY3QpIHx8IGRlY29kZWRUeC5jb250cmFjdC5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIFRyaWdnZXJTbWFydENvbnRyYWN0IHN0cnVjdHVyZScpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB0cmlnZ2VyQ29udHJhY3QgPSBkZWNvZGVkVHguY29udHJhY3RbMF0gYXMgSW50ZXJmYWNlLlRyaWdnZXJTbWFydENvbnRyYWN0O1xuICAgICAgLy8gZGF0YSBpcyBiYXNlNjQtZW5jb2RlZCBmcm9tIHByb3RvYnVmIGRlY29kaW5nOyBjb252ZXJ0IHRvIGhleCBmb3IgZGVjb2RlRGF0YVBhcmFtc1xuICAgICAgY29uc3QgY29udHJhY3REYXRhID0gQnVmZmVyLmZyb20odHJpZ2dlckNvbnRyYWN0LnBhcmFtZXRlci52YWx1ZS5kYXRhLCAnYmFzZTY0JykudG9TdHJpbmcoJ2hleCcpO1xuXG4gICAgICBsZXQgcmVjaXBpZW50SGV4OiBzdHJpbmc7XG4gICAgICBsZXQgdHJhbnNmZXJBbW91bnQ6IHsgdG9TdHJpbmcoKTogc3RyaW5nIH07XG4gICAgICB0cnkge1xuICAgICAgICBbcmVjaXBpZW50SGV4LCB0cmFuc2ZlckFtb3VudF0gPSBVdGlscy5kZWNvZGVEYXRhUGFyYW1zKFsnYWRkcmVzcycsICd1aW50MjU2J10sIGNvbnRyYWN0RGF0YSkgYXMgW1xuICAgICAgICAgIHN0cmluZyxcbiAgICAgICAgICB7IHRvU3RyaW5nKCk6IHN0cmluZyB9XG4gICAgICAgIF07XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGRlY29kZSBUUkMyMCB0cmFuc2ZlciBBQkkgZGF0YTogJHtlIGluc3RhbmNlb2YgRXJyb3IgPyBlLm1lc3NhZ2UgOiBTdHJpbmcoZSl9YCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHJlY2lwaWVudHMgPSB0eFBhcmFtcy5yZWNpcGllbnRzIHx8ICh0eFByZWJ1aWxkLnR4SW5mbyBhcyBUcm9uVHhJbmZvIHwgdW5kZWZpbmVkKT8ucmVjaXBpZW50cztcbiAgICAgIGlmICghcmVjaXBpZW50cyB8fCByZWNpcGllbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAvLyBObyByZWNpcGllbnRzIOKAlCBzZXJ2ZXItZGV0ZXJtaW5lZCB0cmFuc2ZlciAoZS5nLiBjb25zb2xpZGF0aW9uKTsgc3RydWN0dXJhbCBjaGVjayBhYm92ZSBpcyBzdWZmaWNpZW50LlxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIGlmIChyZWNpcGllbnRzLmxlbmd0aCAhPT0gMSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgcmVxdWlyZWQgcHJvcGVydHkgcmVjaXBpZW50cycpO1xuICAgICAgfVxuXG4gICAgICAvLyByZWNpcGllbnRIZXggaGFzICc0MScgaGV4IHByZWZpeDsgY29udmVydCB0byBiYXNlNTggZm9yIGNvbXBhcmlzb25cbiAgICAgIGNvbnN0IGFjdHVhbERlc3RpbmF0aW9uID0gVXRpbHMuZ2V0QmFzZTU4QWRkcmVzc0Zyb21IZXgocmVjaXBpZW50SGV4KTtcbiAgICAgIGNvbnN0IGFjdHVhbEFtb3VudCA9IHRyYW5zZmVyQW1vdW50LnRvU3RyaW5nKCk7XG4gICAgICBjb25zdCBleHBlY3RlZERlc3RpbmF0aW9uID0gcmVjaXBpZW50c1swXS5hZGRyZXNzO1xuICAgICAgY29uc3QgZXhwZWN0ZWRBbW91bnQgPSByZWNpcGllbnRzWzBdLmFtb3VudC50b1N0cmluZygpO1xuXG4gICAgICBpZiAoYWN0dWFsQW1vdW50ICE9PSBleHBlY3RlZEFtb3VudCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3RyYW5zYWN0aW9uIGFtb3VudCBpbiB0eFByZWJ1aWxkIGRvZXMgbm90IG1hdGNoIHRoZSB2YWx1ZSBnaXZlbiBieSBjbGllbnQnKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV4cGVjdGVkRGVzdGluYXRpb24udG9Mb3dlckNhc2UoKSAhPT0gYWN0dWFsRGVzdGluYXRpb24udG9Mb3dlckNhc2UoKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Rlc3RpbmF0aW9uIGFkZHJlc3MgZG9lcyBub3QgbWF0Y2ggd2l0aCB0aGUgcmVjaXBpZW50IGFkZHJlc3MnKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgcmF3VHggPSB0eFByZWJ1aWxkLnR4SGV4O1xuXG4gICAgY29uc3QgdHhCdWlsZGVyID0gZ2V0QnVpbGRlcih0aGlzLmdldENoYWluKCkpLmZyb20ocmF3VHgpO1xuICAgIGNvbnN0IHR4ID0gYXdhaXQgdHhCdWlsZGVyLmJ1aWxkKCk7XG5cbiAgICBjb25zdCByZWNpcGllbnRzID0gdHhQYXJhbXMucmVjaXBpZW50cyB8fCAodHhQcmVidWlsZC50eEluZm8gYXMgVHJvblR4SW5mbykucmVjaXBpZW50cztcbiAgICBpZiAoIXJlY2lwaWVudHMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCBwcm9wZXJ0eSByZWNpcGllbnRzJyk7XG4gICAgfVxuXG4gICAgaWYgKHJlY2lwaWVudHNbMF0uYWRkcmVzcyA9PT0gdHgub3V0cHV0c1swXS5hZGRyZXNzICYmIHJlY2lwaWVudHNbMF0uYW1vdW50ID09PSB0eC5vdXRwdXRzWzBdLnZhbHVlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUeCBvdXRwdXRzIGRvZXMgbm90IG1hdGNoIHdpdGggZXhwZWN0ZWQgdHhQYXJhbXMgcmVjaXBpZW50cycpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -178,6 +178,24 @@ export declare const TestRecoverData: {
178
178
  secondReceiveAddress: string;
179
179
  recoveryDestination: string;
180
180
  };
181
+ /**
182
+ * TSS recovery test data.
183
+ *
184
+ * bitgoKey is a compressed secp256k1 public key (66 hex chars) used as the commonKeychain.
185
+ * The wallet address is derived from it via new TronKeyPair({ pub: bitgoKey }).getAddress().
186
+ * userPrvKey is the raw secp256k1 private key hex that the encrypted userKey decrypts to.
187
+ * userKey is a placeholder encrypted blob; tests mock decryptAsync to return userPrvKey directly.
188
+ */
189
+ export declare const TssTestRecoverData: {
190
+ bitgoKey: string;
191
+ walletAddress: string;
192
+ userKey: string;
193
+ backupKey: string;
194
+ encryptedUserKey: string;
195
+ walletPassphrase: string;
196
+ userPrvKey: string;
197
+ recoveryDestination: string;
198
+ };
181
199
  export declare function baseAddressBalance(trxBalance: number, trc20Balances?: any[]): {
182
200
  data: {
183
201
  owner_permission: {
@@ -1 +1 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../test/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../test/resources.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  // There is a file called "trx" in resources directory but it should be
3
3
  // removed in the future and add that data to this file.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.UnsignedInvalidContractBuildTransaction = exports.UnsignedInvalidTimeStampBuildTransaction = exports.UnsignedInvalidExpirationBuildTransaction = exports.UnsignedBuildInvalidIDTransaction = exports.UnsignedBuildEmptyIDTransaction = exports.InvalidIDTransaction = exports.SignedAccountPermissionUpdateContractTx = exports.UnsignedAccountPermissionUpdateContractTx = exports.AccountPermissionUpdateContractPriv = exports.UnsignedTransferContractTx = exports.SecondSigOnBuildTransaction = exports.FirstSigOnBuildTransaction = exports.UnsignedBuildTransaction = exports.SampleRawTokenSendTxn = exports.TestRecoverData = exports.SecondExpectedSig = exports.FirstExpectedSig = exports.SecondExpectedKeyAddress = exports.FirstExpectedKeyAddress = exports.SecondPrivateKey = exports.FirstPrivateKey = exports.ACCOUNT_CREATE_CONTRACT = exports.UNDELEGATE_RESOURCE_CONTRACT = exports.DELEGATE_RESOURCE_CONTRACT = exports.TOKEN_TX_CONTRACT_2 = exports.TOKEN_TX_CONTRACT = exports.VOTE_WITNESS_CONTRACT = exports.WITHDRAW_BALANCE_CONTRACT = exports.WITHDRAW_EXPIRE_UNFREEZE_CONTRACT = exports.UNFREEZE_BALANCE_V2_CONTRACT = exports.FREEZE_BALANCE_V2_CONTRACT = exports.TX_CONTRACT = exports.CONTRACTS = exports.PARTICIPANTS = exports.TOKEN_TXID = exports.TOKEN_TRANSFER_DATA_2 = exports.TOKEN_TRANSFER_RECIPIENT = exports.USDT_CONTRACT_ADDRESS = exports.UNFROZEN_BALANCE = exports.UNDELEGATION_BALANCE = exports.DELEGATION_BALANCE = exports.FROZEN_BALANCE = exports.RESOURCE_BANDWIDTH = exports.RESOURCE_ENERGY = exports.TOKEN_TRANSFER_DATA = exports.EXPIRATION = exports.MINT_CONFIRM_DATA = exports.BLOCK_HASH = exports.BLOCK_NUMBER = exports.FEE_LIMIT = void 0;
6
- exports.validWithdrawUnsignedTx = exports.validUnfreezeUnsignedTx = exports.mockTokenTx = void 0;
5
+ exports.UnsignedInvalidTimeStampBuildTransaction = exports.UnsignedInvalidExpirationBuildTransaction = exports.UnsignedBuildInvalidIDTransaction = exports.UnsignedBuildEmptyIDTransaction = exports.InvalidIDTransaction = exports.SignedAccountPermissionUpdateContractTx = exports.UnsignedAccountPermissionUpdateContractTx = exports.AccountPermissionUpdateContractPriv = exports.UnsignedTransferContractTx = exports.SecondSigOnBuildTransaction = exports.FirstSigOnBuildTransaction = exports.UnsignedBuildTransaction = exports.SampleRawTokenSendTxn = exports.TssTestRecoverData = exports.TestRecoverData = exports.SecondExpectedSig = exports.FirstExpectedSig = exports.SecondExpectedKeyAddress = exports.FirstExpectedKeyAddress = exports.SecondPrivateKey = exports.FirstPrivateKey = exports.ACCOUNT_CREATE_CONTRACT = exports.UNDELEGATE_RESOURCE_CONTRACT = exports.DELEGATE_RESOURCE_CONTRACT = exports.TOKEN_TX_CONTRACT_2 = exports.TOKEN_TX_CONTRACT = exports.VOTE_WITNESS_CONTRACT = exports.WITHDRAW_BALANCE_CONTRACT = exports.WITHDRAW_EXPIRE_UNFREEZE_CONTRACT = exports.UNFREEZE_BALANCE_V2_CONTRACT = exports.FREEZE_BALANCE_V2_CONTRACT = exports.TX_CONTRACT = exports.CONTRACTS = exports.PARTICIPANTS = exports.TOKEN_TXID = exports.TOKEN_TRANSFER_DATA_2 = exports.TOKEN_TRANSFER_RECIPIENT = exports.USDT_CONTRACT_ADDRESS = exports.UNFROZEN_BALANCE = exports.UNDELEGATION_BALANCE = exports.DELEGATION_BALANCE = exports.FROZEN_BALANCE = exports.RESOURCE_BANDWIDTH = exports.RESOURCE_ENERGY = exports.TOKEN_TRANSFER_DATA = exports.EXPIRATION = exports.MINT_CONFIRM_DATA = exports.BLOCK_HASH = exports.BLOCK_NUMBER = exports.FEE_LIMIT = void 0;
6
+ exports.validWithdrawUnsignedTx = exports.validUnfreezeUnsignedTx = exports.mockTokenTx = exports.UnsignedInvalidContractBuildTransaction = void 0;
7
7
  exports.baseAddressBalance = baseAddressBalance;
8
8
  exports.receiveAddressBalance = receiveAddressBalance;
9
9
  exports.creationTransaction = creationTransaction;
@@ -218,6 +218,29 @@ exports.TestRecoverData = {
218
218
  secondReceiveAddress: 'TCeoT36uUTtzatTnPh77veqTy4utYujXW6',
219
219
  recoveryDestination: 'TWkzN4WjxkyoRTmFHaMQ9po77uEerngjyQ',
220
220
  };
221
+ /**
222
+ * TSS recovery test data.
223
+ *
224
+ * bitgoKey is a compressed secp256k1 public key (66 hex chars) used as the commonKeychain.
225
+ * The wallet address is derived from it via new TronKeyPair({ pub: bitgoKey }).getAddress().
226
+ * userPrvKey is the raw secp256k1 private key hex that the encrypted userKey decrypts to.
227
+ * userKey is a placeholder encrypted blob; tests mock decryptAsync to return userPrvKey directly.
228
+ */
229
+ exports.TssTestRecoverData = {
230
+ // compressed pub of PARTICIPANTS.from.pk — used as commonKeychain (bitgoKey)
231
+ bitgoKey: '03f130498035202e4fb73ff376e05817a935de2af8b3a2f12633b1926e47255b13',
232
+ // Tron address derived from bitgoKey via new TronKeyPair({ pub: bitgoKey }).getAddress()
233
+ walletAddress: 'TVYygaQGXRKvc4GBeDXBWh4FRDVSdTeCua',
234
+ // placeholder xpub strings that make getIsUnsignedSweep() return true
235
+ userKey: 'xpub6BvMpt8ke8tCycBBw6uDob6PyNBkHbTyEztaRuwdMZhpiFk1mXpS7P7iv4c4w7XWFFRySMokUuFUqqgpZxK5wLxm6pgjpkNFhKsMaXTJoUN',
236
+ backupKey: 'xpub687kC8LeSJwj1gYQr4Js2BHbLK1nFeLvMzsDmH2LKMNrqAHNfeCw1sp61cbf2WxeY1QssaUBh9EFJbJ9LBuPivv7XDsFPVaFYj19ueCNczT',
237
+ // encrypted userKey JSON (placeholder — tests mock decryptAsync)
238
+ encryptedUserKey: '{"iv":"abc","v":1,"iter":10000,"ks":256,"ts":64,"mode":"ccm","adata":"","cipher":"aes","ct":"xyz"}',
239
+ walletPassphrase: 'testpassphrase123',
240
+ // raw secp256k1 private key hex returned when decryptAsync is called (PARTICIPANTS.custodian.pk)
241
+ userPrvKey: 'c4b3a04836efc2ee2917235f55ccfb2dcf6b8341e5ea0405da5ba10cd526dfed',
242
+ recoveryDestination: 'TWkzN4WjxkyoRTmFHaMQ9po77uEerngjyQ',
243
+ };
221
244
  function baseAddressBalance(trxBalance, trc20Balances = []) {
222
245
  return {
223
246
  data: [
@@ -756,4 +779,4 @@ exports.validWithdrawUnsignedTx = {
756
779
  },
757
780
  raw_data_hex: '0a025b4c2208c989a213a861c2a140c0c1dee8f30d5a66080112620a32747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5769746864726177457870697265556e667265657a65436f6e747261637412280a1541e5e00fc1cdb3921b8340c20b2b65b543c84aa1dd70fde8f3e8f30d',
758
781
  };
759
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9yZXNvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHVFQUF1RTtBQUN2RSx3REFBd0Q7Ozs7QUErT3hELGdEQWtEQztBQUVELHNEQWtDQztBQUVELGtEQTBCQztBQS9WRCw4QkFBOEI7QUFFakIsUUFBQSxTQUFTLEdBQUcsT0FBTyxDQUFDO0FBQ3BCLFFBQUEsWUFBWSxHQUFHLEtBQUssQ0FBQztBQUNyQixRQUFBLFVBQVUsR0FBRyxrRUFBa0UsQ0FBQztBQUNoRixRQUFBLGlCQUFpQixHQUFHLDBFQUEwRSxDQUFDO0FBQy9GLFFBQUEsVUFBVSxHQUFHLEtBQUssQ0FBQztBQUNuQixRQUFBLG1CQUFtQixHQUM5QiwwSUFBMEksQ0FBQztBQUNoSSxRQUFBLGVBQWUsR0FBRyxRQUFRLENBQUM7QUFDM0IsUUFBQSxrQkFBa0IsR0FBRyxXQUFXLENBQUM7QUFDakMsUUFBQSxjQUFjLEdBQUcsU0FBUyxDQUFDO0FBQzNCLFFBQUEsa0JBQWtCLEdBQUcsU0FBUyxDQUFDO0FBQy9CLFFBQUEsb0JBQW9CLEdBQUcsU0FBUyxDQUFDO0FBQ2pDLFFBQUEsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO0FBQzdCLFFBQUEscUJBQXFCLEdBQUcsb0NBQW9DLENBQUM7QUFDN0QsUUFBQSx3QkFBd0IsR0FBRyxvQ0FBb0MsQ0FBQztBQUNoRSxRQUFBLHFCQUFxQixHQUNoQywwSUFBMEksQ0FBQztBQUNoSSxRQUFBLFVBQVUsR0FBRyxrRUFBa0UsQ0FBQztBQUVoRixRQUFBLFlBQVksR0FBRztJQUMxQixJQUFJLEVBQUU7UUFDSixPQUFPLEVBQUUsb0NBQW9DO1FBQzdDLEVBQUUsRUFBRSxrRUFBa0U7S0FDdkU7SUFDRCxTQUFTLEVBQUU7UUFDVCxPQUFPLEVBQUUsb0NBQW9DO1FBQzdDLEVBQUUsRUFBRSxrRUFBa0U7UUFDdEUsY0FBYyxFQUFFLHFDQUFxQztLQUN0RDtJQUNELFFBQVEsRUFBRTtRQUNSLE9BQU8sRUFBRSxvQ0FBb0M7UUFDN0MsRUFBRSxFQUFFLGtFQUFrRTtRQUN0RSxjQUFjLEVBQUUscUNBQXFDO0tBQ3REO0lBQ0QsUUFBUSxFQUFFO1FBQ1IsT0FBTyxFQUFFLG9DQUFvQztRQUM3QyxFQUFFLEVBQUUsa0VBQWtFO0tBQ3ZFO0lBQ0QsRUFBRSxFQUFFO1FBQ0YsT0FBTyxFQUFFLG9DQUFvQztLQUM5QztDQUNGLENBQUM7QUFFVyxRQUFBLFNBQVMsR0FBRztJQUN2QixLQUFLLEVBQUUsb0NBQW9DO0lBQzNDLFVBQVUsRUFBRSxvQ0FBb0M7SUFDaEQsT0FBTyxFQUFFLG9DQUFvQztJQUM3QyxPQUFPLEVBQUUsb0NBQW9DO0NBQzlDLENBQUM7QUFFVyxRQUFBLFdBQVcsR0FBRztJQUN6QjtRQUNFLFNBQVMsRUFBRTtZQUNULEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUseUJBQWlCO2dCQUN2QixhQUFhLEVBQUUsNENBQTRDO2dCQUMzRCxnQkFBZ0IsRUFBRSw0Q0FBNEM7YUFDL0Q7WUFDRCxRQUFRLEVBQUUsbURBQW1EO1NBQzlEO1FBQ0QsSUFBSSxFQUFFLHNCQUFzQjtLQUM3QjtDQUNGLENBQUM7QUFFVyxRQUFBLDBCQUEwQixHQUFHO0lBQ3hDO1FBQ0UsU0FBUyxFQUFFO1lBQ1QsS0FBSyxFQUFFO2dCQUNMLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixjQUFjLEVBQUUsT0FBTztnQkFDdkIsYUFBYSxFQUFFLDRDQUE0QzthQUM1RDtZQUNELFFBQVEsRUFBRSxzREFBc0Q7U0FDakU7UUFDRCxJQUFJLEVBQUUseUJBQXlCO0tBQ2hDO0NBQ0YsQ0FBQztBQUVXLFFBQUEsNEJBQTRCLEdBQUc7SUFDMUM7UUFDRSxTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUU7Z0JBQ0wsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLGdCQUFnQixFQUFFLE9BQU87Z0JBQ3pCLGFBQWEsRUFBRSw0Q0FBNEM7YUFDNUQ7WUFDRCxRQUFRLEVBQUUsd0RBQXdEO1NBQ25FO1FBQ0QsSUFBSSxFQUFFLDJCQUEyQjtLQUNsQztDQUNGLENBQUM7QUFFVyxRQUFBLGlDQUFpQyxHQUFHO0lBQy9DO1FBQ0UsU0FBUyxFQUFFO1lBQ1QsS0FBSyxFQUFFO2dCQUNMLGFBQWEsRUFBRSw0Q0FBNEM7YUFDNUQ7WUFDRCxRQUFRLEVBQUUsNkRBQTZEO1NBQ3hFO1FBQ0QsSUFBSSxFQUFFLGdDQUFnQztLQUN2QztDQUNGLENBQUM7QUFFVyxRQUFBLHlCQUF5QixHQUFHO0lBQ3ZDO1FBQ0UsU0FBUyxFQUFFO1lBQ1QsS0FBSyxFQUFFO2dCQUNMLGFBQWEsRUFBRSw0Q0FBNEM7YUFDNUQ7WUFDRCxRQUFRLEVBQUUsc0RBQXNEO1NBQ2pFO1FBQ0QsSUFBSSxFQUFFLHlCQUF5QjtLQUNoQztDQUNGLENBQUM7QUFFVyxRQUFBLHFCQUFxQixHQUFHO0lBQ25DO1FBQ0UsU0FBUyxFQUFFO1lBQ1QsS0FBSyxFQUFFO2dCQUNMLGFBQWEsRUFBRSw0Q0FBNEM7Z0JBQzNELEtBQUssRUFBRTtvQkFDTDt3QkFDRSxZQUFZLEVBQUUsNENBQTRDO3dCQUMxRCxVQUFVLEVBQUUsSUFBSTtxQkFDakI7b0JBQ0Q7d0JBQ0UsWUFBWSxFQUFFLDRDQUE0Qzt3QkFDMUQsVUFBVSxFQUFFLElBQUk7cUJBQ2pCO2lCQUNGO2FBQ0Y7WUFDRCxRQUFRLEVBQUUsa0RBQWtEO1NBQzdEO1FBQ0QsSUFBSSxFQUFFLHFCQUFxQjtLQUM1QjtDQUNGLENBQUM7QUFFVyxRQUFBLGlCQUFpQixHQUFHO0lBQy9CO1FBQ0UsU0FBUyxFQUFFO1lBQ1QsS0FBSyxFQUFFO2dCQUNMLElBQUksRUFBRSwyQkFBbUI7Z0JBQ3pCLGFBQWEsRUFBRSw0Q0FBNEM7Z0JBQzNELGdCQUFnQixFQUFFLDRDQUE0QzthQUMvRDtZQUNELFFBQVEsRUFBRSxtREFBbUQ7U0FDOUQ7UUFDRCxJQUFJLEVBQUUsc0JBQXNCO0tBQzdCO0NBQ0YsQ0FBQztBQUVXLFFBQUEsbUJBQW1CLEdBQUc7SUFDakM7UUFDRSxTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLDZCQUFxQjtnQkFDM0IsYUFBYSxFQUFFLDRDQUE0QztnQkFDM0QsZ0JBQWdCLEVBQUUsNENBQTRDO2FBQy9EO1lBQ0QsUUFBUSxFQUFFLG1EQUFtRDtTQUM5RDtRQUNELElBQUksRUFBRSxzQkFBc0I7S0FDN0I7Q0FDRixDQUFDO0FBRVcsUUFBQSwwQkFBMEIsR0FBRztJQUN4QztRQUNFLFNBQVMsRUFBRTtZQUNULEtBQUssRUFBRTtnQkFDTCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLGFBQWEsRUFBRSw0Q0FBNEM7Z0JBQzNELGdCQUFnQixFQUFFLDRDQUE0QzthQUMvRDtZQUNELFFBQVEsRUFBRSx1REFBdUQ7U0FDbEU7UUFDRCxJQUFJLEVBQUUsMEJBQTBCO0tBQ2pDO0NBQ0YsQ0FBQztBQUVXLFFBQUEsNEJBQTRCLEdBQUc7SUFDMUM7UUFDRSxTQUFTLEVBQUU7WUFDVCxLQUFLLEVBQUU7Z0JBQ0wsUUFBUSxFQUFFLFFBQVE7Z0JBQ2xCLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixhQUFhLEVBQUUsNENBQTRDO2dCQUMzRCxnQkFBZ0IsRUFBRSw0Q0FBNEM7YUFDL0Q7WUFDRCxRQUFRLEVBQUUseURBQXlEO1NBQ3BFO1FBQ0QsSUFBSSxFQUFFLDRCQUE0QjtLQUNuQztDQUNGLENBQUM7QUFFRiw0R0FBNEc7QUFDL0YsUUFBQSx1QkFBdUIsR0FBRztJQUNyQztRQUNFLFNBQVMsRUFBRTtZQUNULEtBQUssRUFBRTtnQkFDTCxhQUFhLEVBQUUsNENBQTRDO2dCQUMzRCxlQUFlLEVBQUUsNENBQTRDO2FBQzlEO1lBQ0QsUUFBUSxFQUFFLG9EQUFvRDtTQUMvRDtRQUNELElBQUksRUFBRSx1QkFBdUI7S0FDOUI7Q0FDRixDQUFDO0FBRUYsd0NBQXdDO0FBQzNCLFFBQUEsZUFBZSxHQUFHLGtFQUFrRSxDQUFDO0FBQ3JGLFFBQUEsZ0JBQWdCLEdBQUcsa0VBQWtFLENBQUM7QUFFdEYsUUFBQSx1QkFBdUIsR0FBRyxvQ0FBb0MsQ0FBQztBQUMvRCxRQUFBLHdCQUF3QixHQUFHLG9DQUFvQyxDQUFDO0FBRWhFLFFBQUEsZ0JBQWdCLEdBQzNCLG9JQUFvSSxDQUFDO0FBQzFILFFBQUEsaUJBQWlCLEdBQzVCLG9JQUFvSSxDQUFDO0FBRTFILFFBQUEsZUFBZSxHQUFHO0lBQzdCLE9BQU8sRUFDTCxpSEFBaUg7SUFDbkgsU0FBUyxFQUNQLGlIQUFpSDtJQUNuSCxRQUFRLEVBQ04saUhBQWlIO0lBQ25ILFdBQVcsRUFBRSxvQ0FBb0M7SUFDakQsbUJBQW1CLEVBQUUsb0NBQW9DO0lBQ3pELG9CQUFvQixFQUFFLG9DQUFvQztJQUMxRCxtQkFBbUIsRUFBRSxvQ0FBb0M7Q0FDMUQsQ0FBQztBQUVGLFNBQWdCLGtCQUFrQixDQUFDLFVBQWtCLEVBQUUsZ0JBQXVCLEVBQUU7SUFDOUUsT0FBTztRQUNMLElBQUksRUFBRTtZQUNKO2dCQUNFLGdCQUFnQixFQUFFO29CQUNoQixJQUFJLEVBQUU7d0JBQ0o7NEJBQ0UsT0FBTyxFQUFFLG9DQUFvQzs0QkFDN0MsTUFBTSxFQUFFLENBQUM7eUJBQ1Y7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLG9DQUFvQzs0QkFDN0MsTUFBTSxFQUFFLENBQUM7eUJBQ1Y7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLG9DQUFvQzs0QkFDN0MsTUFBTSxFQUFFLENBQUM7eUJBQ1Y7cUJBQ0Y7b0JBQ0QsU0FBUyxFQUFFLENBQUM7b0JBQ1osZUFBZSxFQUFFLE9BQU87aUJBQ3pCO2dCQUNELE9BQU8sRUFBRSxVQUFVO2dCQUNuQixLQUFLLEVBQUUsYUFBYTtnQkFDcEIsaUJBQWlCLEVBQUU7b0JBQ2pCO3dCQUNFLFVBQVUsRUFBRSxrRUFBa0U7d0JBQzlFLElBQUksRUFBRTs0QkFDSjtnQ0FDRSxPQUFPLEVBQUUsb0NBQW9DO2dDQUM3QyxNQUFNLEVBQUUsQ0FBQzs2QkFDVjs0QkFDRDtnQ0FDRSxPQUFPLEVBQUUsb0NBQW9DO2dDQUM3QyxNQUFNLEVBQUUsQ0FBQzs2QkFDVjs0QkFDRDtnQ0FDRSxPQUFPLEVBQUUsb0NBQW9DO2dDQUM3QyxNQUFNLEVBQUUsQ0FBQzs2QkFDVjt5QkFDRjt3QkFDRCxTQUFTLEVBQUUsQ0FBQzt3QkFDWixFQUFFLEVBQUUsQ0FBQzt3QkFDTCxJQUFJLEVBQUUsUUFBUTt3QkFDZCxlQUFlLEVBQUUsU0FBUztxQkFDM0I7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixxQkFBcUIsQ0FBQyxPQUFlLEVBQUUsT0FBZSxFQUFFLGdCQUF1QixFQUFFO0lBQy9GLE9BQU87UUFDTCxJQUFJLEVBQUU7WUFDSjtnQkFDRSxnQkFBZ0IsRUFBRTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNKOzRCQUNFLE9BQU8sRUFBRSxPQUFPOzRCQUNoQixNQUFNLEVBQUUsQ0FBQzt5QkFDVjtxQkFDRjtvQkFDRCxTQUFTLEVBQUUsQ0FBQztvQkFDWixlQUFlLEVBQUUsT0FBTztpQkFDekI7Z0JBQ0QsaUJBQWlCLEVBQUU7b0JBQ2pCO3dCQUNFLFVBQVUsRUFBRSxrRUFBa0U7d0JBQzlFLElBQUksRUFBRTs0QkFDSjtnQ0FDRSxPQUFPLEVBQUUsT0FBTztnQ0FDaEIsTUFBTSxFQUFFLENBQUM7NkJBQ1Y7eUJBQ0Y7d0JBQ0QsU0FBUyxFQUFFLENBQUM7d0JBQ1osRUFBRSxFQUFFLENBQUM7d0JBQ0wsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsZUFBZSxFQUFFLFFBQVE7cUJBQzFCO2lCQUNGO2dCQUNELE9BQU8sRUFBRSxPQUFPO2dCQUNoQixLQUFLLEVBQUUsYUFBYTthQUNyQjtTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixtQkFBbUIsQ0FBQyxXQUFtQixFQUFFLFNBQWlCLEVBQUUsTUFBYztJQUN4RixPQUFPO1FBQ0wsT0FBTyxFQUFFLEtBQUs7UUFDZCxJQUFJLEVBQUUsa0VBQWtFO1FBQ3hFLFFBQVEsRUFBRTtZQUNSLFFBQVEsRUFBRTtnQkFDUjtvQkFDRSxTQUFTLEVBQUU7d0JBQ1QsS0FBSyxFQUFFOzRCQUNMLE1BQU0sRUFBRSxNQUFNOzRCQUNkLGFBQWEsRUFBRSxXQUFXOzRCQUMxQixVQUFVLEVBQUUsU0FBUzt5QkFDdEI7d0JBQ0QsUUFBUSxFQUFFLCtDQUErQztxQkFDMUQ7b0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjtpQkFDekI7YUFDRjtZQUNELGVBQWUsRUFBRSxNQUFNO1lBQ3ZCLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsVUFBVSxFQUFFLGFBQWE7WUFDekIsU0FBUyxFQUFFLGFBQWE7U0FDekI7UUFDRCxZQUFZLEVBQ1YsOFFBQThRO0tBQ2pSLENBQUM7QUFDSixDQUFDO0FBRVksUUFBQSxxQkFBcUIsR0FBRztJQUNuQyxNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsSUFBSTtLQUNiO0lBQ0QsV0FBVyxFQUFFO1FBQ1gsT0FBTyxFQUFFLEtBQUs7UUFDZCxJQUFJLEVBQUUsa0VBQWtFO1FBQ3hFLFFBQVEsRUFBRTtZQUNSLFFBQVEsRUFBRTtnQkFDUjtvQkFDRSxTQUFTLEVBQUU7d0JBQ1QsS0FBSyxFQUFFOzRCQUNMLElBQUksRUFBRSwwSUFBMEk7NEJBQ2hKLGFBQWEsRUFBRSw0Q0FBNEM7NEJBQzNELGdCQUFnQixFQUFFLDRDQUE0Qzt5QkFDL0Q7d0JBQ0QsUUFBUSxFQUFFLG1EQUFtRDtxQkFDOUQ7b0JBQ0QsSUFBSSxFQUFFLHNCQUFzQjtpQkFDN0I7YUFDRjtZQUNELGVBQWUsRUFBRSxNQUFNO1lBQ3ZCLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsVUFBVSxFQUFFLGFBQWE7WUFDekIsU0FBUyxFQUFFLFNBQVM7WUFDcEIsU0FBUyxFQUFFLGFBQWE7U0FDekI7UUFDRCxZQUFZLEVBQ1Ysd2FBQXdhO0tBQzNhO0NBQ0YsQ0FBQztBQUVXLFFBQUEsd0JBQXdCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsTUFBTSxFQUFFLElBQUk7d0JBQ1osYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsVUFBVSxFQUFFLDRDQUE0QztxQkFDekQ7b0JBQ0QsUUFBUSxFQUFFLCtDQUErQztpQkFDMUQ7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDViwwUUFBMFE7Q0FDN1EsQ0FBQztBQUVXLFFBQUEsMEJBQTBCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7SUFDOUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdDQUF3QixDQUFDLENBQUMsQ0FBQztJQUMzRSxhQUFhLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzdCLG9JQUFvSSxDQUNySSxDQUFDO0lBQ0YsT0FBTyxhQUFhLENBQUM7QUFDdkIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUVRLFFBQUEsMkJBQTJCLEdBQUcsQ0FBQyxHQUFHLEVBQUU7SUFDL0MsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGdDQUF3QixDQUFDLENBQUMsQ0FBQztJQUMzRSxhQUFhLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBQ2hDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQzdCLG9JQUFvSSxDQUNySSxDQUFDO0lBQ0YsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDLElBQUksQ0FDN0Isb0lBQW9JLENBQ3JJLENBQUM7SUFDRixPQUFPLGFBQWEsQ0FBQztBQUN2QixDQUFDLENBQUMsRUFBRSxDQUFDO0FBRVEsUUFBQSwwQkFBMEIsR0FBRztJQUN4QyxFQUFFLEVBQUU7UUFDRixPQUFPLEVBQUUsS0FBSztRQUNkLElBQUksRUFBRSxrRUFBa0U7UUFDeEUsUUFBUSxFQUFFO1lBQ1IsUUFBUSxFQUFFO2dCQUNSO29CQUNFLFNBQVMsRUFBRTt3QkFDVCxLQUFLLEVBQUU7NEJBQ0wsTUFBTSxFQUFFLEVBQUU7NEJBQ1YsYUFBYSxFQUFFLDRDQUE0Qzs0QkFDM0QsVUFBVSxFQUFFLDRDQUE0Qzt5QkFDekQ7d0JBQ0QsUUFBUSxFQUFFLCtDQUErQztxQkFDMUQ7b0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjtpQkFDekI7YUFDRjtZQUNELGVBQWUsRUFBRSxNQUFNO1lBQ3ZCLGNBQWMsRUFBRSxrQkFBa0I7WUFDbEMsVUFBVSxFQUFFLGFBQWE7WUFDekIsU0FBUyxFQUFFLGFBQWE7U0FDekI7UUFDRCxZQUFZLEVBQ1Ysd1FBQXdRO1FBQzFRLFNBQVMsRUFBRSxFQUFFO0tBQ2Q7SUFDRCxHQUFHLEVBQUUsb0lBQW9JO0NBQzFJLENBQUM7QUFFVyxRQUFBLG1DQUFtQyxHQUFHLGtFQUFrRSxDQUFDO0FBQ3pHLFFBQUEseUNBQXlDLEdBQUc7SUFDdkQsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFOzRCQUNMLElBQUksRUFBRTtnQ0FDSjtvQ0FDRSxPQUFPLEVBQUUsNENBQTRDO29DQUNyRCxNQUFNLEVBQUUsQ0FBQztpQ0FDVjtnQ0FDRDtvQ0FDRSxPQUFPLEVBQUUsNENBQTRDO29DQUNyRCxNQUFNLEVBQUUsQ0FBQztpQ0FDVjtnQ0FDRDtvQ0FDRSxPQUFPLEVBQUUsNENBQTRDO29DQUNyRCxNQUFNLEVBQUUsQ0FBQztpQ0FDVjs2QkFDRjs0QkFDRCxTQUFTLEVBQUUsQ0FBQzs0QkFDWixlQUFlLEVBQUUsT0FBTzt5QkFDekI7d0JBQ0QsYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsT0FBTyxFQUFFOzRCQUNQO2dDQUNFLFVBQVUsRUFBRSxrRUFBa0U7Z0NBQzlFLElBQUksRUFBRTtvQ0FDSjt3Q0FDRSxPQUFPLEVBQUUsNENBQTRDO3dDQUNyRCxNQUFNLEVBQUUsQ0FBQztxQ0FDVjtvQ0FDRDt3Q0FDRSxPQUFPLEVBQUUsNENBQTRDO3dDQUNyRCxNQUFNLEVBQUUsQ0FBQztxQ0FDVjtvQ0FDRDt3Q0FDRSxPQUFPLEVBQUUsNENBQTRDO3dDQUNyRCxNQUFNLEVBQUUsQ0FBQztxQ0FDVjtpQ0FDRjtnQ0FDRCxTQUFTLEVBQUUsQ0FBQztnQ0FDWixJQUFJLEVBQUUsUUFBUTtnQ0FDZCxlQUFlLEVBQUUsU0FBUzs2QkFDM0I7eUJBQ0Y7cUJBQ0Y7b0JBQ0QsUUFBUSxFQUFFLDhEQUE4RDtpQkFDekU7Z0JBQ0QsSUFBSSxFQUFFLGlDQUFpQzthQUN4QztTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDVix3ckJBQXdyQjtDQUMzckIsQ0FBQztBQUVXLFFBQUEsdUNBQXVDLEdBQUc7SUFDckQsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFOzRCQUNMLElBQUksRUFBRTtnQ0FDSjtvQ0FDRSxPQUFPLEVBQUUsNENBQTRDO29DQUNyRCxNQUFNLEVBQUUsQ0FBQztpQ0FDVjtnQ0FDRDtvQ0FDRSxPQUFPLEVBQUUsNENBQTRDO29DQUNyRCxNQUFNLEVBQUUsQ0FBQztpQ0FDVjtnQ0FDRDtvQ0FDRSxPQUFPLEVBQUUsNENBQTRDO29DQUNyRCxNQUFNLEVBQUUsQ0FBQztpQ0FDVjs2QkFDRjs0QkFDRCxTQUFTLEVBQUUsQ0FBQzs0QkFDWixlQUFlLEVBQUUsT0FBTzt5QkFDekI7d0JBQ0QsYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsT0FBTyxFQUFFOzRCQUNQO2dDQUNFLFVBQVUsRUFBRSxrRUFBa0U7Z0NBQzlFLElBQUksRUFBRTtvQ0FDSjt3Q0FDRSxPQUFPLEVBQUUsNENBQTRDO3dDQUNyRCxNQUFNLEVBQUUsQ0FBQztxQ0FDVjtvQ0FDRDt3Q0FDRSxPQUFPLEVBQUUsNENBQTRDO3dDQUNyRCxNQUFNLEVBQUUsQ0FBQztxQ0FDVjtvQ0FDRDt3Q0FDRSxPQUFPLEVBQUUsNENBQTRDO3dDQUNyRCxNQUFNLEVBQUUsQ0FBQztxQ0FDVjtpQ0FDRjtnQ0FDRCxTQUFTLEVBQUUsQ0FBQztnQ0FDWixJQUFJLEVBQUUsUUFBUTtnQ0FDZCxlQUFlLEVBQUUsU0FBUzs2QkFDM0I7eUJBQ0Y7cUJBQ0Y7b0JBQ0QsUUFBUSxFQUFFLDhEQUE4RDtpQkFDekU7Z0JBQ0QsSUFBSSxFQUFFLGlDQUFpQzthQUN4QztTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDVix3ckJBQXdyQjtJQUMxckIsU0FBUyxFQUFFO1FBQ1Qsb0lBQW9JO0tBQ3JJO0NBQ0YsQ0FBQztBQUNXLFFBQUEsb0JBQW9CLEdBQUc7SUFDbEMsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsTUFBTSxFQUFFLElBQUk7d0JBQ1osYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsVUFBVSxFQUFFLDRDQUE0QztxQkFDekQ7b0JBQ0QsUUFBUSxFQUFFLCtDQUErQztpQkFDMUQ7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDViwwUUFBMFE7Q0FDN1EsQ0FBQztBQUNXLFFBQUEsK0JBQStCLEdBQUc7SUFDN0MsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsRUFBRTtJQUNSLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsTUFBTSxFQUFFLElBQUk7d0JBQ1osYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsVUFBVSxFQUFFLDRDQUE0QztxQkFDekQ7b0JBQ0QsUUFBUSxFQUFFLCtDQUErQztpQkFDMUQ7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDViwwUUFBMFE7Q0FDN1EsQ0FBQztBQUVXLFFBQUEsaUNBQWlDLEdBQUc7SUFDL0MsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsTUFBTSxFQUFFLElBQUk7d0JBQ1osYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsVUFBVSxFQUFFLDRDQUE0QztxQkFDekQ7b0JBQ0QsUUFBUSxFQUFFLCtDQUErQztpQkFDMUQ7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDViwwUUFBMFE7Q0FDN1EsQ0FBQztBQUVXLFFBQUEseUNBQXlDLEdBQUc7SUFDdkQsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsTUFBTSxFQUFFLElBQUk7d0JBQ1osYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsVUFBVSxFQUFFLDRDQUE0QztxQkFDekQ7b0JBQ0QsUUFBUSxFQUFFLCtDQUErQztpQkFDMUQ7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDViwwUUFBMFE7Q0FDN1EsQ0FBQztBQUVXLFFBQUEsd0NBQXdDLEdBQUc7SUFDdEQsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsTUFBTSxFQUFFLElBQUk7d0JBQ1osYUFBYSxFQUFFLDRDQUE0Qzt3QkFDM0QsVUFBVSxFQUFFLDRDQUE0QztxQkFDekQ7b0JBQ0QsUUFBUSxFQUFFLCtDQUErQztpQkFDMUQ7Z0JBQ0QsSUFBSSxFQUFFLGtCQUFrQjthQUN6QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtLQUN6QjtJQUNELFlBQVksRUFDViwwUUFBMFE7Q0FDN1EsQ0FBQztBQUVXLFFBQUEsdUNBQXVDLEdBQUc7SUFDckQsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLGNBQWMsRUFBRSxrQkFBa0I7UUFDbEMsVUFBVSxFQUFFLGFBQWE7UUFDekIsU0FBUyxFQUFFLGFBQWE7S0FDekI7SUFDRCxZQUFZLEVBQ1YsMFFBQTBRO0NBQzdRLENBQUM7QUFFVyxRQUFBLFdBQVcsR0FBRztJQUN6QixTQUFTLEVBQUUsRUFBRTtJQUNiLElBQUksRUFBRSxrRUFBa0U7SUFDeEUsUUFBUSxFQUFFO1FBQ1IsWUFBWSxFQUFFLENBQUM7UUFDZixRQUFRLEVBQUU7WUFDUjtnQkFDRSxTQUFTLEVBQUU7b0JBQ1QsS0FBSyxFQUFFO3dCQUNMLElBQUksRUFBRSwwSUFBMEk7d0JBQ2hKLGFBQWEsRUFBRSw0Q0FBNEM7d0JBQzNELGdCQUFnQixFQUFFLDRDQUE0QztxQkFDL0Q7b0JBQ0QsUUFBUSxFQUFFLG1EQUFtRDtpQkFDOUQ7Z0JBQ0QsSUFBSSxFQUFFLHNCQUFzQjthQUM3QjtTQUNGO1FBQ0QsZUFBZSxFQUFFLE1BQU07UUFDdkIsY0FBYyxFQUFFLGtCQUFrQjtRQUNsQyxVQUFVLEVBQUUsYUFBYTtRQUN6QixTQUFTLEVBQUUsYUFBYTtRQUN4QixTQUFTLEVBQUUsU0FBUztLQUNyQjtJQUNELFlBQVksRUFDVix3YUFBd2E7Q0FDM2EsQ0FBQztBQUVXLFFBQUEsdUJBQXVCLEdBQUc7SUFDckMsT0FBTyxFQUFFLEtBQUs7SUFDZCxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFLFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSO2dCQUNFLFNBQVMsRUFBRTtvQkFDVCxLQUFLLEVBQUU7d0JBQ0wsUUFBUSxFQUFFLFFBQVE7d0JBQ2xCLGFBQWEsRUFBRSw0Q0FBNEM7d0JBQzNELGdCQUFnQixFQUFFLE9BQU87cUJBQzFCO29CQUNELFFBQVEsRUFBRSx3REFBd0Q7aUJBQ25FO2dCQUNELElBQUksRUFBRSwyQkFBMkI7YUFDbEM7U0FDRjtRQUNELGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLGNBQWMsRUFBRSxrQkFBa0I7UUFDbEMsVUFBVSxFQUFFLGFBQWE7UUFDekIsU0FBUyxFQUFFLGFBQWE7S0FDekI7SUFDRCxZQUFZLEVBQ1Ysb1BBQW9QO0NBQ3ZQLENBQUM7QUFFVyxRQUFBLHVCQUF1QixHQUFHO0lBQ3JDLE9BQU8sRUFBRSxLQUFLO0lBQ2QsSUFBSSxFQUFFLGtFQUFrRTtJQUN4RSxRQUFRLEVBQUU7UUFDUixRQUFRLEVBQUU7WUFDUjtnQkFDRSxTQUFTLEVBQUU7b0JBQ1QsS0FBSyxFQUFFO3dCQUNMLGFBQWEsRUFBRSw0Q0FBNEM7cUJBQzVEO29CQUNELFFBQVEsRUFBRSw2REFBNkQ7aUJBQ3hFO2dCQUNELElBQUksRUFBRSxnQ0FBZ0M7YUFDdkM7U0FDRjtRQUNELGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLGNBQWMsRUFBRSxrQkFBa0I7UUFDbEMsVUFBVSxFQUFFLGFBQWE7UUFDekIsU0FBUyxFQUFFLGFBQWE7S0FDekI7SUFDRCxZQUFZLEVBQ1Ysa1BBQWtQO0NBQ3JQLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGVyZSBpcyBhIGZpbGUgY2FsbGVkIFwidHJ4XCIgaW4gcmVzb3VyY2VzIGRpcmVjdG9yeSBidXQgaXQgc2hvdWxkIGJlXG4vLyByZW1vdmVkIGluIHRoZSBmdXR1cmUgYW5kIGFkZCB0aGF0IGRhdGEgdG8gdGhpcyBmaWxlLlxuXG4vLyAjIENvbnRyYWN0IGNhbGwgZGF0YSBmaWVsZHNcblxuZXhwb3J0IGNvbnN0IEZFRV9MSU1JVCA9ICcxMDAwMCc7XG5leHBvcnQgY29uc3QgQkxPQ0tfTlVNQkVSID0gNTE0MDc7XG5leHBvcnQgY29uc3QgQkxPQ0tfSEFTSCA9ICcwMDAwMDAwMDAwYmFkYjBkODkxNzdmZDg0YzVkOTE5NjAyMWNjMTA4NWI5ZTY4OWIzZTlhNjE5NWNhYzhiY2FlJztcbmV4cG9ydCBjb25zdCBNSU5UX0NPTkZJUk1fREFUQSA9ICcyYmY5MGJhYTEyNzMxNDBjM2UxYjU3NTZiMjQyY2M4OGNkN2M0ZGQ4YTYxYmY4NWNiNWMxZGQ1ZjUwYmE2MWUwNjZiNTNhMTUnO1xuZXhwb3J0IGNvbnN0IEVYUElSQVRJT04gPSA2MDAwMDtcbmV4cG9ydCBjb25zdCBUT0tFTl9UUkFOU0ZFUl9EQVRBID1cbiAgJ2E5MDU5Y2JiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDg4Nzk3NGY0MmE3ODllZjZkNGRmYzdiYTI4YjE1ODMyMTk0MzRiMzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM2I5YWNhMDAnO1xuZXhwb3J0IGNvbnN0IFJFU09VUkNFX0VORVJHWSA9ICdFTkVSR1knO1xuZXhwb3J0IGNvbnN0IFJFU09VUkNFX0JBTkRXSURUSCA9ICdCQU5EV0lEVEgnO1xuZXhwb3J0IGNvbnN0IEZST1pFTl9CQUxBTkNFID0gJzEwMDAwMDAnO1xuZXhwb3J0IGNvbnN0IERFTEVHQVRJT05fQkFMQU5DRSA9ICcxMDAwMDAwJztcbmV4cG9ydCBjb25zdCBVTkRFTEVHQVRJT05fQkFMQU5DRSA9ICcxMDAwMDAwJztcbmV4cG9ydCBjb25zdCBVTkZST1pFTl9CQUxBTkNFID0gJzEwMDAwMDAnO1xuZXhwb3J0IGNvbnN0IFVTRFRfQ09OVFJBQ1RfQUREUkVTUyA9ICdURzNYWHlFeEJrUHA5bnpkYWpEWnNvekV1NEJrYVNKb3pzJztcbmV4cG9ydCBjb25zdCBUT0tFTl9UUkFOU0ZFUl9SRUNJUElFTlQgPSAnVEdhaTV1SGdCY29MRVJyekRYTWVwcVpCOEV0N0Q4blY4Syc7XG5leHBvcnQgY29uc3QgVE9LRU5fVFJBTlNGRVJfREFUQV8yID1cbiAgJ2E5MDU5Y2JiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwODQ4MzYxOGNhODVjMzVhOWI5MjNkOThiZWJjYTcxOGY1YTFkYjI3OTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDVmNWUxMDAnO1xuZXhwb3J0IGNvbnN0IFRPS0VOX1RYSUQgPSAnZmUyMWM0OWY0ZmViZDkwODkxMjVlM2EwMDY5NDNjMTQ1NzIxZDhmY2I3YWI4NDEzNmY4YzY2NjNmZjkyZjhlZCc7XG5cbmV4cG9ydCBjb25zdCBQQVJUSUNJUEFOVFMgPSB7XG4gIGZyb206IHtcbiAgICBhZGRyZXNzOiAnVFZZeWdhUUdYUkt2YzRHQmVEWEJXaDRGUkRWU2RUZUN1YScsXG4gICAgcGs6ICdlNzFjMDViODE0ZjQ0YWM1MTliNGI5MDI5MjI3ZmNjYzFkOWJmM2UxNDU2ZjQ4NDBhMmM5YWE4N2Q3ZjZkZDNiJyxcbiAgfSxcbiAgY3VzdG9kaWFuOiB7XG4gICAgYWRkcmVzczogJ1RMV2g2N1A5M0tndG5aTkN0R25FSE0xSDMzTmhxMnV2dk4nLFxuICAgIHBrOiAnYzRiM2EwNDgzNmVmYzJlZTI5MTcyMzVmNTVjY2ZiMmRjZjZiODM0MWU1ZWEwNDA1ZGE1YmExMGNkNTI2ZGZlZCcsXG4gICAgYml0Y29pbkFkZHJlc3M6ICcyTXl0RWhWaERMeUV6bWZlU0E3eUo0NnlmNUdodUtaNmdjZScsXG4gIH0sXG4gIG1lcmNoYW50OiB7XG4gICAgYWRkcmVzczogJ1RCbVRxOHIyMnRmZDRjc0V5eEVjYUtpS1JWZGtoYTVYcjInLFxuICAgIHBrOiAnYmJmNDQ2YjBkM2MwN2E2ZTE5Njc1YWYyNDI0MmY5NzE4YTczNGZkNGQwODBlOGE2MmIxZjZkNmEzMzdiYzE4ZicsXG4gICAgYml0Y29pbkFkZHJlc3M6ICcyTkRqZ1RLbmFrQnlucndTb3lGcFNpbk1zeDlQUGZ1YmQyZScsXG4gIH0sXG4gIG11bHRpc2lnOiB7XG4gICAgYWRkcmVzczogJ1RGZnN4YjJveEd3c3dibWFOd1Z6RlU4djh6ZWN5R3FmeWonLFxuICAgIHBrOiAnNDc3YTlhNTQ5MWEzYmFjMzJlYzVmNDMxZWJhYjkwMTQzZGJjMjUxYmJiYjAxNmE2MjVlOGMwOTZmZDYzNjVkNCcsXG4gIH0sXG4gIHRvOiB7XG4gICAgYWRkcmVzczogJ1RMQlBMR0J1WWhRbWR6UUFFUXZCaHc3TEt6Y3cxVFNTRzknLFxuICB9LFxufTtcblxuZXhwb3J0IGNvbnN0IENPTlRSQUNUUyA9IHtcbiAgdG9rZW46ICdUVUFSWnc0WUJXRjFCRUNaRTd2MzZRWlJReTlNRmp2akg1JyxcbiAgY29udHJvbGxlcjogJ1RYamhFTU0xb0hmU2RQYVhRU1oyVjRDbUM3NnY4RUw4eG8nLFxuICBtZW1iZXJzOiAnVFNEV0dRaWdWRDhhd0ZOZXRwZnBKTFZua0NHQnlEZ2REdCcsXG4gIGZhY3Rvcnk6ICdUUkhzZm9NZGE0QURpU1VQbko5WEwzUGh5Tnc2WDE0VU1pJyxcbn07XG5cbmV4cG9ydCBjb25zdCBUWF9DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgZGF0YTogTUlOVF9DT05GSVJNX0RBVEEsXG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgICBjb250cmFjdF9hZGRyZXNzOiAnNDFhODExYTcwNmM5ZDZlNTA2MjgzNTA2M2MwODE2NWVhNzk5MDkyN2MyJyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ1RyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBGUkVFWkVfQkFMQU5DRV9WMl9DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgcmVzb3VyY2U6ICdFTkVSR1knLFxuICAgICAgICBmcm96ZW5fYmFsYW5jZTogMTAwMDAwMCxcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICB9LFxuICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLkZyZWV6ZUJhbGFuY2VWMkNvbnRyYWN0JyxcbiAgICB9LFxuICAgIHR5cGU6ICdGcmVlemVCYWxhbmNlVjJDb250cmFjdCcsXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgVU5GUkVFWkVfQkFMQU5DRV9WMl9DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgcmVzb3VyY2U6ICdFTkVSR1knLFxuICAgICAgICB1bmZyZWV6ZV9iYWxhbmNlOiAxMDAwMDAwLFxuICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVW5mcmVlemVCYWxhbmNlVjJDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnVW5mcmVlemVCYWxhbmNlVjJDb250cmFjdCcsXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgV0lUSERSQVdfRVhQSVJFX1VORlJFRVpFX0NPTlRSQUNUID0gW1xuICB7XG4gICAgcGFyYW1ldGVyOiB7XG4gICAgICB2YWx1ZToge1xuICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuV2l0aGRyYXdFeHBpcmVVbmZyZWV6ZUNvbnRyYWN0JyxcbiAgICB9LFxuICAgIHR5cGU6ICdXaXRoZHJhd0V4cGlyZVVuZnJlZXplQ29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFdJVEhEUkFXX0JBTEFOQ0VfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5XaXRoZHJhd0JhbGFuY2VDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnV2l0aGRyYXdCYWxhbmNlQ29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFZPVEVfV0lUTkVTU19DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICAgIHZvdGVzOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgdm90ZV9hZGRyZXNzOiAnNDFGMTY0MTJCOUExN0VFOTQwODY0NkUyQTIxRTE2NDc4RjcyRUQxRTk1JyxcbiAgICAgICAgICAgIHZvdGVfY291bnQ6IDEwMDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICB2b3RlX2FkZHJlc3M6ICc0MUNGOUUxMkUwRjQ4NTczQzg0QkM4OEQ4RkY3QzUwNTY3NDg1QUFBMjQnLFxuICAgICAgICAgICAgdm90ZV9jb3VudDogMjAwMCxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5Wb3RlV2l0bmVzc0NvbnRyYWN0JyxcbiAgICB9LFxuICAgIHR5cGU6ICdWb3RlV2l0bmVzc0NvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBUT0tFTl9UWF9DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgZGF0YTogVE9LRU5fVFJBTlNGRVJfREFUQSxcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICAgIGNvbnRyYWN0X2FkZHJlc3M6ICc0MTQyYTFlMzlhZWZhNDkyOTBmMmIzZjllZDY4OGQ3Y2VjZjg2Y2Q2ZTAnLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmlnZ2VyU21hcnRDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFRPS0VOX1RYX0NPTlRSQUNUXzIgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIGRhdGE6IFRPS0VOX1RSQU5TRkVSX0RBVEFfMixcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzUxZmJlZWE3ODkxMGIxNWIxZDNlOGE5YjYyOTE0Y2E5NGQxYTRhYycsXG4gICAgICAgIGNvbnRyYWN0X2FkZHJlc3M6ICc0MTQyYTFlMzlhZWZhNDkyOTBmMmIzZjllZDY4OGQ3Y2VjZjg2Y2Q2ZTAnLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmlnZ2VyU21hcnRDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IERFTEVHQVRFX1JFU09VUkNFX0NPTlRSQUNUID0gW1xuICB7XG4gICAgcGFyYW1ldGVyOiB7XG4gICAgICB2YWx1ZToge1xuICAgICAgICByZXNvdXJjZTogJ0VORVJHWScsXG4gICAgICAgIGJhbGFuY2U6IDEwMDAwMDAsXG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgICByZWNlaXZlcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuRGVsZWdhdGVSZXNvdXJjZUNvbnRyYWN0JyxcbiAgICB9LFxuICAgIHR5cGU6ICdEZWxlZ2F0ZVJlc291cmNlQ29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFVOREVMRUdBVEVfUkVTT1VSQ0VfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIHJlc291cmNlOiAnRU5FUkdZJyxcbiAgICAgICAgYmFsYW5jZTogMTAwMDAwMCxcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICAgIHJlY2VpdmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5VbkRlbGVnYXRlUmVzb3VyY2VDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnVW5EZWxlZ2F0ZVJlc291cmNlQ29udHJhY3QnLFxuICB9LFxuXTtcblxuLy8gb3duZXIgPSBUTFdoNjdQOTNLZ3RuWk5DdEduRUhNMUgzM05ocTJ1dnZOIChjdXN0b2RpYW4pLCBhY2NvdW50ID0gVExCUExHQnVZaFFtZHpRQUVRdkJodzdMS3pjdzFUU1NHOSAodG8pXG5leHBvcnQgY29uc3QgQUNDT1VOVF9DUkVBVEVfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgICBhY2NvdW50X2FkZHJlc3M6ICc0MTZmZmVkZjkzOTIxNTA2YzNlZmRiNTEwZjdjNGYyNTYwMzZjNDhhNmEnLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5BY2NvdW50Q3JlYXRlQ29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ0FjY291bnRDcmVhdGVDb250cmFjdCcsXG4gIH0sXG5dO1xuXG4vLyBETyBOT1QgUkUtVVNFIFRISVMgUFJWIEZPUiBSRUFMIE1PTkVZXG5leHBvcnQgY29uc3QgRmlyc3RQcml2YXRlS2V5ID0gJzJEQkVBQzFDMjI4NDlGNDc1MTQ0NDVBNTZBRUYyRUYxNjQ1MjhBNTAyREU0QkQyODlFMjNFQTFFMkQ0QzRCMDYnO1xuZXhwb3J0IGNvbnN0IFNlY29uZFByaXZhdGVLZXkgPSAnRkIzQUE4ODdFMEJFM0ZBQzlENzVFNjYxREFGRjRBN0ZFMEU5MUFBQjEzREE5Nzc1Q0Q4NTg2RDdDQjlCNzY0MCc7XG5cbmV4cG9ydCBjb25zdCBGaXJzdEV4cGVjdGVkS2V5QWRkcmVzcyA9ICdUVHNHd25UTFE0ZXJ5RkpwRHZKU2Z1R1F4UFhSQ2pYdlp6JztcbmV4cG9ydCBjb25zdCBTZWNvbmRFeHBlY3RlZEtleUFkZHJlc3MgPSAnVER6bTF0Q1hNMllTMVBEYTNHb1hTdnhkeTRBZ3dWYkJQRSc7XG5cbmV4cG9ydCBjb25zdCBGaXJzdEV4cGVjdGVkU2lnID1cbiAgJ2JkMDhlNmNkODc2YmI1NzNkZDAwYTMyODcwYjU4YjcwZWE4Yjc5MDhmNTEzMTY4NjUwMjU4OTk0MWJmYTRmZGRhNzZiOGM4MWJiYmNmYzU0OWJlNmQ0OTg4NjU3Y2VhMTIyZGY3ZGE0NmM3MjA0MWRlZjI2ODNkNmVjYjA0YTc0MDEnO1xuZXhwb3J0IGNvbnN0IFNlY29uZEV4cGVjdGVkU2lnID1cbiAgJ2YzY2FiZTJmNGFlZDEzZTIzNDJjNzhjN2JmNDYyNmVhMzZjZDY1MDlhNDQ0MThjMjQ4NjY4MTRkMzQyNjcwMzY4NmJlOWVmMjFiZDk5MzMyNGM1MjA1NjViZWVlODIwMjAxZjJhNTBhOWFjOTcxNzMyNDEwZDNlYjY5Y2RiMmE2MDAnO1xuXG5leHBvcnQgY29uc3QgVGVzdFJlY292ZXJEYXRhID0ge1xuICB1c2VyS2V5OlxuICAgICd4cHViNkJ2TXB0OGtlOHRDeWNCQnc2dURvYjZQeU5Ca0hiVHlFenRhUnV3ZE1aaHBpRmsxbVhwUzdQN2l2NGM0dzdYV0ZGUnlTTW9rVXVGVXFxZ3BaeEs1d0x4bTZwZ2pwa05GaEtzTWFYVEpvVU4nLFxuICBiYWNrdXBLZXk6XG4gICAgJ3hwdWI2ODdrQzhMZVNKd2oxZ1lRcjRKczJCSGJMSzFuRmVMdk16c0RtSDJMS01OcnFBSE5mZUN3MXNwNjFjYmYyV3hlWTFRc3NhVUJoOUVGSmJKOUxCdVBpdnY3WERzRlBWYUZZajE5dWVDTmN6VCcsXG4gIGJpdGdvS2V5OlxuICAgICd4cHViNjYxTXlNd0FxUmJjRkhDUnlhc1U2N05DQTdWN2dvcVVGUFh2enNFaUpkNFNjaENLeVB0aWdIQUx2dmU1d3RCZHlITVpDV3FwR3pFc3JRdGZ6Nm1FOW01UVhXRGFudGdia211NTZ4dkx3ZTMnLFxuICBiYXNlQWRkcmVzczogJ1RUZ2lzUlA3RUpXTWdwTFh2Yk5Ib0hoNVVvdGtqa0JQb28nLFxuICBmaXJzdFJlY2VpdmVBZGRyZXNzOiAnVFhEM1dpUVpHQ0tUYllqTnl4cHp5YVQ4VHROa2VUcTEyVicsXG4gIHNlY29uZFJlY2VpdmVBZGRyZXNzOiAnVENlb1QzNnVVVHR6YXRUblBoNzd2ZXFUeTR1dFl1alhXNicsXG4gIHJlY292ZXJ5RGVzdGluYXRpb246ICdUV2t6TjRXanhreW9SVG1GSGFNUTlwbzc3dUVlcm5nanlRJyxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBiYXNlQWRkcmVzc0JhbGFuY2UodHJ4QmFsYW5jZTogbnVtYmVyLCB0cmMyMEJhbGFuY2VzOiBhbnlbXSA9IFtdKSB7XG4gIHJldHVybiB7XG4gICAgZGF0YTogW1xuICAgICAge1xuICAgICAgICBvd25lcl9wZXJtaXNzaW9uOiB7XG4gICAgICAgICAga2V5czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBhZGRyZXNzOiAnVFRnaXNSUDdFSldNZ3BMWHZiTkhvSGg1VW90a2prQlBvbycsXG4gICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGFkZHJlc3M6ICdUQkR5OEhBeTh2dmhvcUtjNVYxaEhRYXRmalpITTFNaFBiJyxcbiAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgYWRkcmVzczogJ1RQSFBEZlE4VnMzWXA1VUtETEhyNU1qb1ZVcnI1WTY5bTknLFxuICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGhyZXNob2xkOiAyLFxuICAgICAgICAgIHBlcm1pc3Npb25fbmFtZTogJ293bmVyJyxcbiAgICAgICAgfSxcbiAgICAgICAgYmFsYW5jZTogdHJ4QmFsYW5jZSxcbiAgICAgICAgdHJjMjA6IHRyYzIwQmFsYW5jZXMsXG4gICAgICAgIGFjdGl2ZV9wZXJtaXNzaW9uOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgb3BlcmF0aW9uczogJzdmZmYxZmMwMDM3ZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICAgICAgICAgICAga2V5czogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYWRkcmVzczogJ1RUZ2lzUlA3RUpXTWdwTFh2Yk5Ib0hoNVVvdGtqa0JQb28nLFxuICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGFkZHJlc3M6ICdUQkR5OEhBeTh2dmhvcUtjNVYxaEhRYXRmalpITTFNaFBiJyxcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBhZGRyZXNzOiAnVFBIUERmUThWczNZcDVVS0RMSHI1TWpvVlVycjVZNjltOScsXG4gICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHRocmVzaG9sZDogMixcbiAgICAgICAgICAgIGlkOiAyLFxuICAgICAgICAgICAgdHlwZTogJ0FjdGl2ZScsXG4gICAgICAgICAgICBwZXJtaXNzaW9uX25hbWU6ICdhY3RpdmUwJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICBdLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcmVjZWl2ZUFkZHJlc3NCYWxhbmNlKGJhbGFuY2U6IG51bWJlciwgYWRkcmVzczogc3RyaW5nLCB0cmMyMEJhbGFuY2VzOiBhbnlbXSA9IFtdKSB7XG4gIHJldHVybiB7XG4gICAgZGF0YTogW1xuICAgICAge1xuICAgICAgICBvd25lcl9wZXJtaXNzaW9uOiB7XG4gICAgICAgICAga2V5czogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBhZGRyZXNzOiBhZGRyZXNzLFxuICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgdGhyZXNob2xkOiAxLFxuICAgICAgICAgIHBlcm1pc3Npb25fbmFtZTogJ293bmVyJyxcbiAgICAgICAgfSxcbiAgICAgICAgYWN0aXZlX3Blcm1pc3Npb246IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBvcGVyYXRpb25zOiAnN2ZmZjFmYzAwMzNlYzMwZjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gICAgICAgICAgICBrZXlzOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBhZGRyZXNzOiBhZGRyZXNzLFxuICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB0aHJlc2hvbGQ6IDEsXG4gICAgICAgICAgICBpZDogMixcbiAgICAgICAgICAgIHR5cGU6ICdBY3RpdmUnLFxuICAgICAgICAgICAgcGVybWlzc2lvbl9uYW1lOiAnYWN0aXZlJyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBiYWxhbmNlOiBiYWxhbmNlLFxuICAgICAgICB0cmMyMDogdHJjMjBCYWxhbmNlcyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0aW9uVHJhbnNhY3Rpb24oZnJvbUFkZHJlc3M6IHN0cmluZywgdG9BZGRyZXNzOiBzdHJpbmcsIGFtb3VudDogbnVtYmVyKSB7XG4gIHJldHVybiB7XG4gICAgdmlzaWJsZTogZmFsc2UsXG4gICAgdHhJRDogJ2NjNjc1ZjQ3YjU2Zjg0YzAxMWVlODdjN2MwZGRlNWE1ZmQ2NjJiNDgxMzk4MDVhYWYzYzQ4ODQwOWUzYWFmM2InLFxuICAgIHJhd19kYXRhOiB7XG4gICAgICBjb250cmFjdDogW1xuICAgICAgICB7XG4gICAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgICBhbW91bnQ6IGFtb3VudCxcbiAgICAgICAgICAgICAgb3duZXJfYWRkcmVzczogZnJvbUFkZHJlc3MsXG4gICAgICAgICAgICAgIHRvX2FkZHJlc3M6IHRvQWRkcmVzcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlOiAnVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcmVmX2Jsb2NrX2J5dGVzOiAnMzdkMycsXG4gICAgICByZWZfYmxvY2tfaGFzaDogJ2E0N2QyYWMyMTg5NDg3YjknLFxuICAgICAgZXhwaXJhdGlvbjogMTY5MzQ0MTU0ODAwMCxcbiAgICAgIHRpbWVzdGFtcDogMTY5MzQ0MTQ4OTg1NCxcbiAgICB9LFxuICAgIHJhd19kYXRhX2hleDpcbiAgICAgICcwYTAyMzdkMzIyMDhhNDdkMmFjMjE4OTQ4N2I5NDBlMGJkZWRjN2E0MzE1YTY4MDgwMTEyNjQwYTJkNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2MTZlNzM2NjY1NzI0MzZmNmU3NDcyNjE2Mzc0MTIzMzBhMTU0MWU4Zjg4YjRlMjM5ZTg1YzkyMjU1YjA0MzQ1MGEzNGI2NWEzMjlhNTQxMjE1NDFjMjU0MjAyNTVjMmM1YTJkZDU0ZWY2OWY5MmVmMjYxZTZiZDQyMTZhMTg4MGMyZDcyZjcwYmVmN2U5YzdhNDMxJyxcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IFNhbXBsZVJhd1Rva2VuU2VuZFR4biA9IHtcbiAgcmVzdWx0OiB7XG4gICAgcmVzdWx0OiB0cnVlLFxuICB9LFxuICB0cmFuc2FjdGlvbjoge1xuICAgIHZpc2libGU6IGZhbHNlLFxuICAgIHR4SUQ6ICdmODE3OWNhYWI0Yzc4MTY3NmNiMzM5NDA5NDg1MzNlMjA5ZGM3ZmUyMTM1YmJkNmUwMGY2MDU5Nzg2MmI4NmJlJyxcbiAgICByYXdfZGF0YToge1xuICAgICAgY29udHJhY3Q6IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgICAgZGF0YTogJ2E5MDU5Y2JiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZTQwYjE5YWZjYTNkZGU0Y2U4ZmNiYzU3YWI0MWY4YzMyNmFiMGNmMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDE5MGFiMDAnLFxuICAgICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFjMjU0MjAyNTVjMmM1YTJkZDU0ZWY2OWY5MmVmMjYxZTZiZDQyMTZhJyxcbiAgICAgICAgICAgICAgY29udHJhY3RfYWRkcmVzczogJzQxNDJhMWUzOWFlZmE0OTI5MGYyYjNmOWVkNjg4ZDdjZWNmODZjZDZlMCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGU6ICdUcmlnZ2VyU21hcnRDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcmVmX2Jsb2NrX2J5dGVzOiAnY2JhMycsXG4gICAgICByZWZfYmxvY2tfaGFzaDogJ2UxNGNjNDI1ZGEzY2ZkOTQnLFxuICAgICAgZXhwaXJhdGlvbjogMTY5MzM1NzYyMDAwMCxcbiAgICAgIGZlZV9saW1pdDogMTAwMDAwMDAwLFxuICAgICAgdGltZXN0YW1wOiAxNjkzMzU3NTYxMzM5LFxuICAgIH0sXG4gICAgcmF3X2RhdGFfaGV4OlxuICAgICAgJzBhMDJjYmEzMjIwOGUxNGNjNDI1ZGEzY2ZkOTQ0MGEwZjZlYTlmYTQzMTVhYWUwMTA4MWYxMmE5MDEwYTMxNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2OTY3Njc2NTcyNTM2ZDYxNzI3NDQzNmY2ZTc0NzI2MTYzNzQxMjc0MGExNTQxYzI1NDIwMjU1YzJjNWEyZGQ1NGVmNjlmOTJlZjI2MWU2YmQ0MjE2YTEyMTU0MTQyYTFlMzlhZWZhNDkyOTBmMmIzZjllZDY4OGQ3Y2VjZjg2Y2Q2ZTAyMjQ0YTkwNTljYmIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBlNDBiMTlhZmNhM2RkZTRjZThmY2JjNTdhYjQxZjhjMzI2YWIwY2YyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0MTkwYWIwMDcwZmJhYmU3OWZhNDMxOTAwMTgwYzJkNzJmJyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBVbnNpZ25lZEJ1aWxkVHJhbnNhY3Rpb24gPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnODBiOGI5ZWFlZDUxYzhiYmEzYjQ5ZjdmMGU3Y2M1ZjIxYWM5OWE2ZjNlMjg5M2M2NjNiNTQ0YmYyYzY5NWIxZCcsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIGFtb3VudDogMTcxOCxcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTInLFxuICAgICAgICAgICAgdG9fYWRkcmVzczogJzQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdUcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICc5MGU0JyxcbiAgICByZWZfYmxvY2tfaGFzaDogJ2EwMThiZjk4OTJkZGIxMzgnLFxuICAgIGV4cGlyYXRpb246IDE1NzE4MTE0NjgwMDAsXG4gICAgdGltZXN0YW1wOiAxNTcxODExNDEwODE5LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDI5MGU0MjIwOGEwMThiZjk4OTJkZGIxMzg0MGUwYzU4ZWJhZGYyZDVhNjYwODAxMTI2MjBhMmQ3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjYxNmU3MzY2NjU3MjQzNmY2ZTc0NzI2MTYzNzQxMjMxMGExNTQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MjEyMTU0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWExOGI2MGQ3MDgzODc4YmJhZGYyZCcsXG59O1xuXG5leHBvcnQgY29uc3QgRmlyc3RTaWdPbkJ1aWxkVHJhbnNhY3Rpb24gPSAoKCkgPT4ge1xuICBjb25zdCBtb2RpZmllZEJ1aWxkID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShVbnNpZ25lZEJ1aWxkVHJhbnNhY3Rpb24pKTtcbiAgbW9kaWZpZWRCdWlsZFsnc2lnbmF0dXJlJ10gPSBbXTtcbiAgbW9kaWZpZWRCdWlsZFsnc2lnbmF0dXJlJ10ucHVzaChcbiAgICAnYmQwOGU2Y2Q4NzZiYjU3M2RkMDBhMzI4NzBiNThiNzBlYThiNzkwOGY1MTMxNjg2NTAyNTg5OTQxYmZhNGZkZGE3NmI4YzgxYmJiY2ZjNTQ5YmU2ZDQ5ODg2NTdjZWExMjJkZjdkYTQ2YzcyMDQxZGVmMjY4M2Q2ZWNiMDRhNzQwMSdcbiAgKTtcbiAgcmV0dXJuIG1vZGlmaWVkQnVpbGQ7XG59KSgpO1xuXG5leHBvcnQgY29uc3QgU2Vjb25kU2lnT25CdWlsZFRyYW5zYWN0aW9uID0gKCgpID0+IHtcbiAgY29uc3QgbW9kaWZpZWRCdWlsZCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoVW5zaWduZWRCdWlsZFRyYW5zYWN0aW9uKSk7XG4gIG1vZGlmaWVkQnVpbGRbJ3NpZ25hdHVyZSddID0gW107XG4gIG1vZGlmaWVkQnVpbGRbJ3NpZ25hdHVyZSddLnB1c2goXG4gICAgJ2YzY2FiZTJmNGFlZDEzZTIzNDJjNzhjN2JmNDYyNmVhMzZjZDY1MDlhNDQ0MThjMjQ4NjY4MTRkMzQyNjcwMzY4NmJlOWVmMjFiZDk5MzMyNGM1MjA1NjViZWVlODIwMjAxZjJhNTBhOWFjOTcxNzMyNDEwZDNlYjY5Y2RiMmE2MDAnXG4gICk7XG4gIG1vZGlmaWVkQnVpbGRbJ3NpZ25hdHVyZSddLnB1c2goXG4gICAgJ2JkMDhlNmNkODc2YmI1NzNkZDAwYTMyODcwYjU4YjcwZWE4Yjc5MDhmNTEzMTY4NjUwMjU4OTk0MWJmYTRmZGRhNzZiOGM4MWJiYmNmYzU0OWJlNmQ0OTg4NjU3Y2VhMTIyZGY3ZGE0NmM3MjA0MWRlZjI2ODNkNmVjYjA0YTc0MDEnXG4gICk7XG4gIHJldHVybiBtb2RpZmllZEJ1aWxkO1xufSkoKTtcblxuZXhwb3J0IGNvbnN0IFVuc2lnbmVkVHJhbnNmZXJDb250cmFjdFR4ID0ge1xuICB0eDoge1xuICAgIHZpc2libGU6IGZhbHNlLFxuICAgIHR4SUQ6ICdlZTBiYmY3MmIyMzgzNjE1NzdhOWRjNDFkNzlmN2E3NGY2YmE5ZWZlNDcyYzIxYmZkM2U3ZGM4NTBjOWU5MDIwJyxcbiAgICByYXdfZGF0YToge1xuICAgICAgY29udHJhY3Q6IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgICAgYW1vdW50OiAxMCxcbiAgICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxZTVlMDBmYzFjZGIzOTIxYjgzNDBjMjBiMmI2NWI1NDNjODRhYTFkZCcsXG4gICAgICAgICAgICAgIHRvX2FkZHJlc3M6ICc0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGU6ICdUcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICByZWZfYmxvY2tfYnl0ZXM6ICc1MTIzJyxcbiAgICAgIHJlZl9ibG9ja19oYXNoOiAnNTJhMjZkZWE5NjNhNDdiYycsXG4gICAgICBleHBpcmF0aW9uOiAxNTY5NDYzMzIwMDAwLFxuICAgICAgdGltZXN0YW1wOiAxNTY5NDYzMjYxNjIzLFxuICAgIH0sXG4gICAgcmF3X2RhdGFfaGV4OlxuICAgICAgJzBhMDI1MTIzMjIwODUyYTI2ZGVhOTYzYTQ3YmM0MGMwZmJiNmRhZDYyZDVhNjUwODAxMTI2MTBhMmQ3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjYxNmU3MzY2NjU3MjQzNmY2ZTc0NzI2MTYzNzQxMjMwMGExNTQxZTVlMDBmYzFjZGIzOTIxYjgzNDBjMjBiMmI2NWI1NDNjODRhYTFkZDEyMTU0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcxODBhNzBiN2IzYjNkYWQ2MmQnLFxuICAgIHNpZ25hdHVyZTogW10sXG4gIH0sXG4gIHNpZzogJzBhOTk0NDMxNjkyNGVjN2ZiYTQ4OTVmMWVhMWU3Y2M5NWY5ZTJiODI4YWUyNjhhNDhhOGRiZWRkZWY0MGM2ZjVlMTI3MTcwYTk1YWVkOWYzZjU0MjViMTMwNThkMGNiNmVmMWY1YzIyMTMxOTBlNDgyZTg3MDQzNjkxZjIyZTY4MDAnLFxufTtcblxuZXhwb3J0IGNvbnN0IEFjY291bnRQZXJtaXNzaW9uVXBkYXRlQ29udHJhY3RQcml2ID0gJzg4NDEzNjAxQzI2NzMxNjA0MDQxM0M2OEFBQjM1NjUxRjhDN0FCMDVFQzhGRkVGNDJENDJEREExNkFBMzczMkMnO1xuZXhwb3J0IGNvbnN0IFVuc2lnbmVkQWNjb3VudFBlcm1pc3Npb25VcGRhdGVDb250cmFjdFR4ID0ge1xuICB2aXNpYmxlOiBmYWxzZSxcbiAgdHhJRDogJzdkNTQwN2Q4MWQ0ZTk1ZjRjM2MyOGY4ODQ5OTQ3YjkxZmJmYTljNWIxMDJiZmQ1YjQ4ZmU3N2U2M2M2ODEwN2QnLFxuICByYXdfZGF0YToge1xuICAgIGNvbnRyYWN0OiBbXG4gICAgICB7XG4gICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBvd25lcjoge1xuICAgICAgICAgICAgICBrZXlzOiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxY2E0MmE0OTlhMmVlZTM5NDMyM2JhYTJjMmY3ZDhhNzY0Y2UwNjg5YycsXG4gICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3JyxcbiAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MWUwYzBmNTgxZDdkMDJkNDA4MjZjMWM2Y2JlZTcxZjYyNWQ2MzQ0ZDAnLFxuICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIHRocmVzaG9sZDogMixcbiAgICAgICAgICAgICAgcGVybWlzc2lvbl9uYW1lOiAnb3duZXInLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMnLFxuICAgICAgICAgICAgYWN0aXZlczogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgb3BlcmF0aW9uczogJzdmZmYxZmMwMDM3ZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICAgICAgICAgICAgICAgIGtleXM6IFtcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxY2E0MmE0OTlhMmVlZTM5NDMyM2JhYTJjMmY3ZDhhNzY0Y2UwNjg5YycsXG4gICAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcnLFxuICAgICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDFlMGMwZjU4MWQ3ZDAyZDQwODI2YzFjNmNiZWU3MWY2MjVkNjM0NGQwJyxcbiAgICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMixcbiAgICAgICAgICAgICAgICB0eXBlOiAnQWN0aXZlJyxcbiAgICAgICAgICAgICAgICBwZXJtaXNzaW9uX25hbWU6ICdhY3RpdmUwJyxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuQWNjb3VudFBlcm1pc3Npb25VcGRhdGVDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdBY2NvdW50UGVybWlzc2lvblVwZGF0ZUNvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICdlZWIyJyxcbiAgICByZWZfYmxvY2tfaGFzaDogJzk3OTA0ZTI5MjJkNmI1ZTgnLFxuICAgIGV4cGlyYXRpb246IDE1NzI0NzM1MjkwMDAsXG4gICAgdGltZXN0YW1wOiAxNTcyNDczNDY5MDY1LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDJlZWIyMjIwODk3OTA0ZTI5MjJkNmI1ZTg0MGE4YzVlN2Y1ZTEyZDVhYmMwMjA4MmUxMmI3MDIwYTNjNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTQxNjM2MzZmNzU2ZTc0NTA2NTcyNmQ2OTczNzM2OTZmNmU1NTcwNjQ2MTc0NjU0MzZmNmU3NDcyNjE2Mzc0MTJmNjAxMGExNTQxY2E0MmE0OTlhMmVlZTM5NDMyM2JhYTJjMmY3ZDhhNzY0Y2UwNjg5YzEyNWExYTA1NmY3NzZlNjU3MjIwMDIzYTE5MGExNTQxY2E0MmE0OTlhMmVlZTM5NDMyM2JhYTJjMmY3ZDhhNzY0Y2UwNjg5YzEwMDEzYTE5MGExNTQxMmMyYmE0YTlmZjZjNTMyMDdkYzViNjg2YmZlY2Y3NWVhN2I4MDU3NzEwMDEzYTE5MGExNTQxZTBjMGY1ODFkN2QwMmQ0MDgyNmMxYzZjYmVlNzFmNjI1ZDYzNDRkMDEwMDEyMjgwMDEwODAyMWEwNzYxNjM3NDY5NzY2NTMwMjAwMjMyMjA3ZmZmMWZjMDAzN2UwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM2ExOTBhMTU0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMxMDAxM2ExOTBhMTU0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcxMDAxM2ExOTBhMTU0MWUwYzBmNTgxZDdkMDJkNDA4MjZjMWM2Y2JlZTcxZjYyNWQ2MzQ0ZDAxMDAxNzA4OWYxZTNmNWUxMmQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFNpZ25lZEFjY291bnRQZXJtaXNzaW9uVXBkYXRlQ29udHJhY3RUeCA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc3ZDU0MDdkODFkNGU5NWY0YzNjMjhmODg0OTk0N2I5MWZiZmE5YzViMTAyYmZkNWI0OGZlNzdlNjNjNjgxMDdkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgb3duZXI6IHtcbiAgICAgICAgICAgICAga2V5czogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMnLFxuICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxMmMyYmE0YTlmZjZjNTMyMDdkYzViNjg2YmZlY2Y3NWVhN2I4MDU3NycsXG4gICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDFlMGMwZjU4MWQ3ZDAyZDQwODI2YzFjNmNiZWU3MWY2MjVkNjM0NGQwJyxcbiAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICAgICAgICAgIHBlcm1pc3Npb25fbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljJyxcbiAgICAgICAgICAgIGFjdGl2ZXM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9wZXJhdGlvbnM6ICc3ZmZmMWZjMDAzN2UwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICBrZXlzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMnLFxuICAgICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3JyxcbiAgICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxZTBjMGY1ODFkN2QwMmQ0MDgyNmMxYzZjYmVlNzFmNjI1ZDYzNDRkMCcsXG4gICAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICAgICAgICAgICAgdHlwZTogJ0FjdGl2ZScsXG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbl9uYW1lOiAnYWN0aXZlMCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLkFjY291bnRQZXJtaXNzaW9uVXBkYXRlQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnQWNjb3VudFBlcm1pc3Npb25VcGRhdGVDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnZWViMicsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICc5NzkwNGUyOTIyZDZiNWU4JyxcbiAgICBleHBpcmF0aW9uOiAxNTcyNDczNTI5MDAwLFxuICAgIHRpbWVzdGFtcDogMTU3MjQ3MzQ2OTA2NSxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyZWViMjIyMDg5NzkwNGUyOTIyZDZiNWU4NDBhOGM1ZTdmNWUxMmQ1YWJjMDIwODJlMTJiNzAyMGEzYzc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU0MTYzNjM2Zjc1NmU3NDUwNjU3MjZkNjk3MzczNjk2ZjZlNTU3MDY0NjE3NDY1NDM2ZjZlNzQ3MjYxNjM3NDEyZjYwMTBhMTU0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMxMjVhMWEwNTZmNzc2ZTY1NzIyMDAyM2ExOTBhMTU0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMxMDAxM2ExOTBhMTU0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcxMDAxM2ExOTBhMTU0MWUwYzBmNTgxZDdkMDJkNDA4MjZjMWM2Y2JlZTcxZjYyNWQ2MzQ0ZDAxMDAxMjI4MDAxMDgwMjFhMDc2MTYzNzQ2OTc2NjUzMDIwMDIzMjIwN2ZmZjFmYzAwMzdlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNhMTkwYTE1NDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljMTAwMTNhMTkwYTE1NDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3MTAwMTNhMTkwYTE1NDFlMGMwZjU4MWQ3ZDAyZDQwODI2YzFjNmNiZWU3MWY2MjVkNjM0NGQwMTAwMTcwODlmMWUzZjVlMTJkJyxcbiAgc2lnbmF0dXJlOiBbXG4gICAgJzJiYzUwMzA3MjdkNDJlZDY0MmMyODA2YTNjMWE1YTAzOTM0MDhiMTU5NTQxZjIxNjNkZjRiYTY5MmM1YzEyNDBlMmRkZTVhMmFhZTRlY2FkNDY1NDE0ZTYwYjVhZWNhODUyMmQwYTJiNjYwNmY4OGEzMjY2NTg4MDkxNjEzMzRmMDAnLFxuICBdLFxufTtcbmV4cG9ydCBjb25zdCBJbnZhbGlkSURUcmFuc2FjdGlvbiA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc5MGI4YjllYWVkNTFjOGJiYTNiNDlmN2YwZTdjYzVmMjFhYzk5YTZmM2UyODkzYzY2M2I1NDRiZjJjNjk1YjFkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgYW1vdW50OiAxNzE4LFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MicsXG4gICAgICAgICAgICB0b19hZGRyZXNzOiAnNDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1RyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJzkwZTQnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnYTAxOGJmOTg5MmRkYjEzOCcsXG4gICAgZXhwaXJhdGlvbjogMTU3MTgxMTQ2ODAwMCxcbiAgICB0aW1lc3RhbXA6IDE1NzE4MTE0MTA4MTksXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMjkwZTQyMjA4YTAxOGJmOTg5MmRkYjEzODQwZTBjNThlYmFkZjJkNWE2NjA4MDExMjYyMGEyZDc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjE2ZTczNjY2NTcyNDM2ZjZlNzQ3MjYxNjM3NDEyMzEwYTE1NDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyMTIxNTQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYTE4YjYwZDcwODM4NzhiYmFkZjJkJyxcbn07XG5leHBvcnQgY29uc3QgVW5zaWduZWRCdWlsZEVtcHR5SURUcmFuc2FjdGlvbiA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICcnLFxuICByYXdfZGF0YToge1xuICAgIGNvbnRyYWN0OiBbXG4gICAgICB7XG4gICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBhbW91bnQ6IDE3MTgsXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyJyxcbiAgICAgICAgICAgIHRvX2FkZHJlc3M6ICc0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWEnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnOTBlNCcsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICdhMDE4YmY5ODkyZGRiMTM4JyxcbiAgICBleHBpcmF0aW9uOiAxNTcxODExNDY4MDAwLFxuICAgIHRpbWVzdGFtcDogMTU3MTgxMTQxMDgxOSxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyOTBlNDIyMDhhMDE4YmY5ODkyZGRiMTM4NDBlMGM1OGViYWRmMmQ1YTY2MDgwMTEyNjIwYTJkNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2MTZlNzM2NjY1NzI0MzZmNmU3NDcyNjE2Mzc0MTIzMTBhMTU0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTIxMjE1NDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhMThiNjBkNzA4Mzg3OGJiYWRmMmQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFVuc2lnbmVkQnVpbGRJbnZhbGlkSURUcmFuc2FjdGlvbiA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc4MGI4YjllYmZkNTFjOGJiYTNiNDlmN2YwZTdjYzVmMjFhYzk5YTZmM2UyODkzYzY2M2I1NDRiZjJjNjk1YjFkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgYW1vdW50OiAxNzE4LFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MicsXG4gICAgICAgICAgICB0b19hZGRyZXNzOiAnNDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1RyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJzkwZTQnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnYTAxOGJmOTg5MmRkYjEzOCcsXG4gICAgZXhwaXJhdGlvbjogMTU3MTgxMTQ2ODAwMCxcbiAgICB0aW1lc3RhbXA6IDE1NzE4MTE0MTA4MTksXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMjkwZTQyMjA4YTAxOGJmOTg5MmRkYjEzODQwZTBjNThlYmFkZjJkNWE2NjA4MDExMjYyMGEyZDc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjE2ZTczNjY2NTcyNDM2ZjZlNzQ3MjYxNjM3NDEyMzEwYTE1NDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyMTIxNTQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYTE4YjYwZDcwODM4NzhiYmFkZjJkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBVbnNpZ25lZEludmFsaWRFeHBpcmF0aW9uQnVpbGRUcmFuc2FjdGlvbiA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc4MGI4YjllYWVkNTFjOGJiYTNiNDlmN2YwZTdjYzVmMjFhYzk5YTZmM2UyODkzYzY2M2I1NDRiZjJjNjk1YjFkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgYW1vdW50OiAxNzE4LFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MicsXG4gICAgICAgICAgICB0b19hZGRyZXNzOiAnNDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1RyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJzkwZTQnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnYTAxOGJmOTg5MmRkYjEzOCcsXG4gICAgZXhwaXJhdGlvbjogMTU3MTgxMTQ2ODkwMCxcbiAgICB0aW1lc3RhbXA6IDE1NzE4MTE0MTA4MTksXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMjkwZTQyMjA4YTAxOGJmOTg5MmRkYjEzODQwZTBjNThlYmFkZjJkNWE2NjA4MDExMjYyMGEyZDc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjE2ZTczNjY2NTcyNDM2ZjZlNzQ3MjYxNjM3NDEyMzEwYTE1NDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyMTIxNTQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYTE4YjYwZDcwODM4NzhiYmFkZjJkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBVbnNpZ25lZEludmFsaWRUaW1lU3RhbXBCdWlsZFRyYW5zYWN0aW9uID0ge1xuICB2aXNpYmxlOiBmYWxzZSxcbiAgdHhJRDogJzgwYjhiOWVhZWQ1MWM4YmJhM2I0OWY3ZjBlN2NjNWYyMWFjOTlhNmYzZTI4OTNjNjYzYjU0NGJmMmM2OTViMWQnLFxuICByYXdfZGF0YToge1xuICAgIGNvbnRyYWN0OiBbXG4gICAgICB7XG4gICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBhbW91bnQ6IDE3MTgsXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyJyxcbiAgICAgICAgICAgIHRvX2FkZHJlc3M6ICc0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWEnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnOTBlNCcsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICdhMDE4YmY5ODkyZGRiMTM4JyxcbiAgICBleHBpcmF0aW9uOiAxNTcxODExNDY4MDAwLFxuICAgIHRpbWVzdGFtcDogMTU4MTgxMTQxMDgxOSxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyOTBlNDIyMDhhMDE4YmY5ODkyZGRiMTM4NDBlMGM1OGViYWRmMmQ1YTY2MDgwMTEyNjIwYTJkNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2MTZlNzM2NjY1NzI0MzZmNmU3NDcyNjE2Mzc0MTIzMTBhMTU0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTIxMjE1NDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhMThiNjBkNzA4Mzg3OGJiYWRmMmQnLFxufTtcblxuZXhwb3J0IGNvbnN0IFVuc2lnbmVkSW52YWxpZENvbnRyYWN0QnVpbGRUcmFuc2FjdGlvbiA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc4MGI4YjllYWVkNTFjOGJiYTNiNDlmN2YwZTdjYzVmMjFhYzk5YTZmM2UyODkzYzY2M2I1NDRiZjJjNjk1YjFkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICc5MGU0JyxcbiAgICByZWZfYmxvY2tfaGFzaDogJ2EwMThiZjk4OTJkZGIxMzgnLFxuICAgIGV4cGlyYXRpb246IDE1NzE4MTE0NjgwMDAsXG4gICAgdGltZXN0YW1wOiAxNTcxODExNDEwODE5LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDI5MGU0MjIwOGEwMThiZjk4OTJkZGIxMzg0MGUwYzU4ZWJhZGYyZDVhNjYwODAxMTI2MjBhMmQ3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjYxNmU3MzY2NjU3MjQzNmY2ZTc0NzI2MTYzNzQxMjMxMGExNTQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MjEyMTU0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWExOGI2MGQ3MDgzODc4YmJhZGYyZCcsXG59O1xuXG5leHBvcnQgY29uc3QgbW9ja1Rva2VuVHggPSB7XG4gIHNpZ25hdHVyZTogW10sXG4gIHR4SUQ6ICc2MzZhOTRkODY2MmM1MWNiYzdlMWJkY2NjNmNjYzBkNTMxODI3NTgyYmI3ZDczZjhiYmMwZWVhN2Y4NmRmNTkwJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdFR5cGU6IDIsXG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIGRhdGE6ICdhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ4ODc5NzRmNDJhNzg5ZWY2ZDRkZmM3YmEyOGIxNTgzMjE5NDM0YjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNiOWFjYTAwJyxcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTQ4ODc5NzRmNDJhNzg5ZWY2ZDRkZmM3YmEyOGIxNTgzMjE5NDM0YjMnLFxuICAgICAgICAgICAgY29udHJhY3RfYWRkcmVzczogJzQxNDJhMWUzOWFlZmE0OTI5MGYyYjNmOWVkNjg4ZDdjZWNmODZjZDZlMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJ2M4Y2YnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnODkxNzdmZDg0YzVkOTE5NicsXG4gICAgZXhwaXJhdGlvbjogMTY3MDU0Mzk5MzE2NCxcbiAgICB0aW1lc3RhbXA6IDE2NzA1NDAzOTMxNjQsXG4gICAgZmVlX2xpbWl0OiAxNTAwMDAwMDAsXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMmM4Y2YyMjA4ODkxNzdmZDg0YzVkOTE5NjQwY2NkMmI5YTFjZjMwNWFhZTAxMDgxZjEyYTkwMTBhMzE3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjY5Njc2NzY1NzI1MzZkNjE3Mjc0NDM2ZjZlNzQ3MjYxNjM3NDEyNzQwYTE1NDE0ODg3OTc0ZjQyYTc4OWVmNmQ0ZGZjN2JhMjhiMTU4MzIxOTQzNGIzMTIxNTQxNDJhMWUzOWFlZmE0OTI5MGYyYjNmOWVkNjg4ZDdjZWNmODZjZDZlMDIyNDRhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ4ODc5NzRmNDJhNzg5ZWY2ZDRkZmM3YmEyOGIxNTgzMjE5NDM0YjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNiOWFjYTAwNzBjY2Y1ZGQ5ZmNmMzA5MDAxODBhM2MzNDcnLFxufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkVW5mcmVlemVVbnNpZ25lZFR4ID0ge1xuICB2aXNpYmxlOiBmYWxzZSxcbiAgdHhJRDogJzIyN2I3YzcwMGVhM2JmNTA3YTdkOGIzNjI3YjZlOWRiMWQ3ZTYxMTY2ODFmMmUxMjVjMTZmYzQwZTZhMTkyMzUnLFxuICByYXdfZGF0YToge1xuICAgIGNvbnRyYWN0OiBbXG4gICAgICB7XG4gICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICByZXNvdXJjZTogJ0VORVJHWScsXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFlNWUwMGZjMWNkYjM5MjFiODM0MGMyMGIyYjY1YjU0M2M4NGFhMWRkJyxcbiAgICAgICAgICAgIHVuZnJlZXplX2JhbGFuY2U6IDEwMDAwMDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVW5mcmVlemVCYWxhbmNlVjJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdVbmZyZWV6ZUJhbGFuY2VWMkNvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICc2N2I5JyxcbiAgICByZWZfYmxvY2tfaGFzaDogJzNhZWY4ODAzYzFhY2ViMDMnLFxuICAgIGV4cGlyYXRpb246IDE3NDUzMTI2NzYwMDAsXG4gICAgdGltZXN0YW1wOiAxNzQ1MzEyNjE3OTE3LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDI2N2I5MjIwODNhZWY4ODAzYzFhY2ViMDM0MGEwZjFmN2U1ZTUzMjVhNWIwODM3MTI1NzBhMzY3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTU2ZTY2NzI2NTY1N2E2NTQyNjE2YzYxNmU2MzY1NTYzMjQzNmY2ZTc0NzI2MTYzNzQxMjFkMGExNTQxZTVlMDBmYzFjZGIzOTIxYjgzNDBjMjBiMmI2NWI1NDNjODRhYTFkZDEwYzA4NDNkMTgwMTcwYmRhYmY0ZTVlNTMyJyxcbn07XG5cbmV4cG9ydCBjb25zdCB2YWxpZFdpdGhkcmF3VW5zaWduZWRUeCA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc3YTlkMzc1NDBlNTZmM2Y2MWVkMGY5N2NkOGE1MjEzNjUyYzkwYzRiNzVkYWQ4NzZkYTljMzUyOTFkMjMxMzY3JyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxRTVFMDBGQzFDREIzOTIxQjgzNDBDMjBCMkI2NUI1NDNDODRBQTFERCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuV2l0aGRyYXdFeHBpcmVVbmZyZWV6ZUNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1dpdGhkcmF3RXhwaXJlVW5mcmVlemVDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnNWI0YycsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICdjOTg5YTIxM2E4NjFjMmExJyxcbiAgICBleHBpcmF0aW9uOiAxNzE0MDg4NDAwMDAwLFxuICAgIHRpbWVzdGFtcDogMTcxNDAzMTEyODI1MyxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyNWI0YzIyMDhjOTg5YTIxM2E4NjFjMmExNDBjMGMxZGVlOGYzMGQ1YTY2MDgwMTEyNjIwYTMyNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU3Njk3NDY4NjQ3MjYxNzc0NTc4NzA2OTcyNjU1NTZlNjY3MjY1NjU3YTY1NDM2ZjZlNzQ3MjYxNjM3NDEyMjgwYTE1NDFlNWUwMGZjMWNkYjM5MjFiODM0MGMyMGIyYjY1YjU0M2M4NGFhMWRkNzBmZGU4ZjNlOGYzMGQnLFxufTtcbiJdfQ==
782
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdGVzdC9yZXNvdXJjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHVFQUF1RTtBQUN2RSx3REFBd0Q7Ozs7QUEwUXhELGdEQWtEQztBQUVELHNEQWtDQztBQUVELGtEQTBCQztBQTFYRCw4QkFBOEI7QUFFakIsUUFBQSxTQUFTLEdBQUcsT0FBTyxDQUFDO0FBQ3BCLFFBQUEsWUFBWSxHQUFHLEtBQUssQ0FBQztBQUNyQixRQUFBLFVBQVUsR0FBRyxrRUFBa0UsQ0FBQztBQUNoRixRQUFBLGlCQUFpQixHQUFHLDBFQUEwRSxDQUFDO0FBQy9GLFFBQUEsVUFBVSxHQUFHLEtBQUssQ0FBQztBQUNuQixRQUFBLG1CQUFtQixHQUM5QiwwSUFBMEksQ0FBQztBQUNoSSxRQUFBLGVBQWUsR0FBRyxRQUFRLENBQUM7QUFDM0IsUUFBQSxrQkFBa0IsR0FBRyxXQUFXLENBQUM7QUFDakMsUUFBQSxjQUFjLEdBQUcsU0FBUyxDQUFDO0FBQzNCLFFBQUEsa0JBQWtCLEdBQUcsU0FBUyxDQUFDO0FBQy9CLFFBQUEsb0JBQW9CLEdBQUcsU0FBUyxDQUFDO0FBQ2pDLFFBQUEsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDO0FBQzdCLFFBQUEscUJBQXFCLEdBQUcsb0NBQW9DLENBQUM7QUFDN0QsUUFBQSx3QkFBd0IsR0FBRyxvQ0FBb0MsQ0FBQztBQUNoRSxRQUFBLHFCQUFxQixHQUNoQywwSUFBMEksQ0FBQztBQUNoSSxRQUFBLFVBQVUsR0FBRyxrRUFBa0UsQ0FBQztBQUVoRixRQUFBLFlBQVksR0FBRztJQUMxQixJQUFJLEVBQUU7UUFDSixPQUFPLEVBQUUsb0NBQW9DO1FBQzdDLEVBQUUsRUFBRSxrRUFBa0U7S0FDdkU7SUFDRCxTQUFTLEVBQUU7UUFDVCxPQUFPLEVBQUUsb0NBQW9DO1FBQzdDLEVBQUUsRUFBRSxrRUFBa0U7UUFDdEUsY0FBYyxFQUFFLHFDQUFxQztLQUN0RDtJ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QkFDRCxRQUFRLEVBQUUsd0RBQXdEO2lCQUNuRTtnQkFDRCxJQUFJLEVBQUUsMkJBQTJCO2FBQ2xDO1NBQ0Y7UUFDRCxlQUFlLEVBQUUsTUFBTTtRQUN2QixjQUFjLEVBQUUsa0JBQWtCO1FBQ2xDLFVBQVUsRUFBRSxhQUFhO1FBQ3pCLFNBQVMsRUFBRSxhQUFhO0tBQ3pCO0lBQ0QsWUFBWSxFQUNWLG9QQUFvUDtDQUN2UCxDQUFDO0FBRVcsUUFBQSx1QkFBdUIsR0FBRztJQUNyQyxPQUFPLEVBQUUsS0FBSztJQUNkLElBQUksRUFBRSxrRUFBa0U7SUFDeEUsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFO1lBQ1I7Z0JBQ0UsU0FBUyxFQUFFO29CQUNULEtBQUssRUFBRTt3QkFDTCxhQUFhLEVBQUUsNENBQTRDO3FCQUM1RDtvQkFDRCxRQUFRLEVBQUUsNkRBQTZEO2lCQUN4RTtnQkFDRCxJQUFJLEVBQUUsZ0NBQWdDO2FBQ3ZDO1NBQ0Y7UUFDRCxlQUFlLEVBQUUsTUFBTTtRQUN2QixjQUFjLEVBQUUsa0JBQWtCO1FBQ2xDLFVBQVUsRUFBRSxhQUFhO1FBQ3pCLFNBQVMsRUFBRSxhQUFhO0tBQ3pCO0lBQ0QsWUFBWSxFQUNWLGtQQUFrUDtDQUNyUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVGhlcmUgaXMgYSBmaWxlIGNhbGxlZCBcInRyeFwiIGluIHJlc291cmNlcyBkaXJlY3RvcnkgYnV0IGl0IHNob3VsZCBiZVxuLy8gcmVtb3ZlZCBpbiB0aGUgZnV0dXJlIGFuZCBhZGQgdGhhdCBkYXRhIHRvIHRoaXMgZmlsZS5cblxuLy8gIyBDb250cmFjdCBjYWxsIGRhdGEgZmllbGRzXG5cbmV4cG9ydCBjb25zdCBGRUVfTElNSVQgPSAnMTAwMDAnO1xuZXhwb3J0IGNvbnN0IEJMT0NLX05VTUJFUiA9IDUxNDA3O1xuZXhwb3J0IGNvbnN0IEJMT0NLX0hBU0ggPSAnMDAwMDAwMDAwMGJhZGIwZDg5MTc3ZmQ4NGM1ZDkxOTYwMjFjYzEwODViOWU2ODliM2U5YTYxOTVjYWM4YmNhZSc7XG5leHBvcnQgY29uc3QgTUlOVF9DT05GSVJNX0RBVEEgPSAnMmJmOTBiYWExMjczMTQwYzNlMWI1NzU2YjI0MmNjODhjZDdjNGRkOGE2MWJmODVjYjVjMWRkNWY1MGJhNjFlMDY2YjUzYTE1JztcbmV4cG9ydCBjb25zdCBFWFBJUkFUSU9OID0gNjAwMDA7XG5leHBvcnQgY29uc3QgVE9LRU5fVFJBTlNGRVJfREFUQSA9XG4gICdhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ4ODc5NzRmNDJhNzg5ZWY2ZDRkZmM3YmEyOGIxNTgzMjE5NDM0YjMwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNiOWFjYTAwJztcbmV4cG9ydCBjb25zdCBSRVNPVVJDRV9FTkVSR1kgPSAnRU5FUkdZJztcbmV4cG9ydCBjb25zdCBSRVNPVVJDRV9CQU5EV0lEVEggPSAnQkFORFdJRFRIJztcbmV4cG9ydCBjb25zdCBGUk9aRU5fQkFMQU5DRSA9ICcxMDAwMDAwJztcbmV4cG9ydCBjb25zdCBERUxFR0FUSU9OX0JBTEFOQ0UgPSAnMTAwMDAwMCc7XG5leHBvcnQgY29uc3QgVU5ERUxFR0FUSU9OX0JBTEFOQ0UgPSAnMTAwMDAwMCc7XG5leHBvcnQgY29uc3QgVU5GUk9aRU5fQkFMQU5DRSA9ICcxMDAwMDAwJztcbmV4cG9ydCBjb25zdCBVU0RUX0NPTlRSQUNUX0FERFJFU1MgPSAnVEczWFh5RXhCa1BwOW56ZGFqRFpzb3pFdTRCa2FTSm96cyc7XG5leHBvcnQgY29uc3QgVE9LRU5fVFJBTlNGRVJfUkVDSVBJRU5UID0gJ1RHYWk1dUhnQmNvTEVScnpEWE1lcHFaQjhFdDdEOG5WOEsnO1xuZXhwb3J0IGNvbnN0IFRPS0VOX1RSQU5TRkVSX0RBVEFfMiA9XG4gICdhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDg0ODM2MThjYTg1YzM1YTliOTIzZDk4YmViY2E3MThmNWExZGIyNzkwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA1ZjVlMTAwJztcbmV4cG9ydCBjb25zdCBUT0tFTl9UWElEID0gJ2ZlMjFjNDlmNGZlYmQ5MDg5MTI1ZTNhMDA2OTQzYzE0NTcyMWQ4ZmNiN2FiODQxMzZmOGM2NjYzZmY5MmY4ZWQnO1xuXG5leHBvcnQgY29uc3QgUEFSVElDSVBBTlRTID0ge1xuICBmcm9tOiB7XG4gICAgYWRkcmVzczogJ1RWWXlnYVFHWFJLdmM0R0JlRFhCV2g0RlJEVlNkVGVDdWEnLFxuICAgIHBrOiAnZTcxYzA1YjgxNGY0NGFjNTE5YjRiOTAyOTIyN2ZjY2MxZDliZjNlMTQ1NmY0ODQwYTJjOWFhODdkN2Y2ZGQzYicsXG4gIH0sXG4gIGN1c3RvZGlhbjoge1xuICAgIGFkZHJlc3M6ICdUTFdoNjdQOTNLZ3RuWk5DdEduRUhNMUgzM05ocTJ1dnZOJyxcbiAgICBwazogJ2M0YjNhMDQ4MzZlZmMyZWUyOTE3MjM1ZjU1Y2NmYjJkY2Y2YjgzNDFlNWVhMDQwNWRhNWJhMTBjZDUyNmRmZWQnLFxuICAgIGJpdGNvaW5BZGRyZXNzOiAnMk15dEVoVmhETHlFem1mZVNBN3lKNDZ5ZjVHaHVLWjZnY2UnLFxuICB9LFxuICBtZXJjaGFudDoge1xuICAgIGFkZHJlc3M6ICdUQm1UcThyMjJ0ZmQ0Y3NFeXhFY2FLaUtSVmRraGE1WHIyJyxcbiAgICBwazogJ2JiZjQ0NmIwZDNjMDdhNmUxOTY3NWFmMjQyNDJmOTcxOGE3MzRmZDRkMDgwZThhNjJiMWY2ZDZhMzM3YmMxOGYnLFxuICAgIGJpdGNvaW5BZGRyZXNzOiAnMk5EamdUS25ha0J5bnJ3U295RnBTaW5Nc3g5UFBmdWJkMmUnLFxuICB9LFxuICBtdWx0aXNpZzoge1xuICAgIGFkZHJlc3M6ICdURmZzeGIyb3hHd3N3Ym1hTndWekZVOHY4emVjeUdxZnlqJyxcbiAgICBwazogJzQ3N2E5YTU0OTFhM2JhYzMyZWM1ZjQzMWViYWI5MDE0M2RiYzI1MWJiYmIwMTZhNjI1ZThjMDk2ZmQ2MzY1ZDQnLFxuICB9LFxuICB0bzoge1xuICAgIGFkZHJlc3M6ICdUTEJQTEdCdVloUW1kelFBRVF2Qmh3N0xLemN3MVRTU0c5JyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBDT05UUkFDVFMgPSB7XG4gIHRva2VuOiAnVFVBUlp3NFlCV0YxQkVDWkU3djM2UVpSUXk5TUZqdmpINScsXG4gIGNvbnRyb2xsZXI6ICdUWGpoRU1NMW9IZlNkUGFYUVNaMlY0Q21DNzZ2OEVMOHhvJyxcbiAgbWVtYmVyczogJ1RTRFdHUWlnVkQ4YXdGTmV0cGZwSkxWbmtDR0J5RGdkRHQnLFxuICBmYWN0b3J5OiAnVFJIc2ZvTWRhNEFEaVNVUG5KOVhMM1BoeU53NlgxNFVNaScsXG59O1xuXG5leHBvcnQgY29uc3QgVFhfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIGRhdGE6IE1JTlRfQ09ORklSTV9EQVRBLFxuICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgICAgY29udHJhY3RfYWRkcmVzczogJzQxYTgxMWE3MDZjOWQ2ZTUwNjI4MzUwNjNjMDgxNjVlYTc5OTA5MjdjMicsXG4gICAgICB9LFxuICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgICB9LFxuICAgIHR5cGU6ICdUcmlnZ2VyU21hcnRDb250cmFjdCcsXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgRlJFRVpFX0JBTEFOQ0VfVjJfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIHJlc291cmNlOiAnRU5FUkdZJyxcbiAgICAgICAgZnJvemVuX2JhbGFuY2U6IDEwMDAwMDAsXG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgfSxcbiAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5GcmVlemVCYWxhbmNlVjJDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnRnJlZXplQmFsYW5jZVYyQ29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFVORlJFRVpFX0JBTEFOQ0VfVjJfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIHJlc291cmNlOiAnRU5FUkdZJyxcbiAgICAgICAgdW5mcmVlemVfYmFsYW5jZTogMTAwMDAwMCxcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICB9LFxuICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlVuZnJlZXplQmFsYW5jZVYyQ29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ1VuZnJlZXplQmFsYW5jZVYyQ29udHJhY3QnLFxuICB9LFxuXTtcblxuZXhwb3J0IGNvbnN0IFdJVEhEUkFXX0VYUElSRV9VTkZSRUVaRV9DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgb3duZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICB9LFxuICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLldpdGhkcmF3RXhwaXJlVW5mcmVlemVDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnV2l0aGRyYXdFeHBpcmVVbmZyZWV6ZUNvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBXSVRIRFJBV19CQUxBTkNFX0NPTlRSQUNUID0gW1xuICB7XG4gICAgcGFyYW1ldGVyOiB7XG4gICAgICB2YWx1ZToge1xuICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuV2l0aGRyYXdCYWxhbmNlQ29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ1dpdGhkcmF3QmFsYW5jZUNvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBWT1RFX1dJVE5FU1NfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgICB2b3RlczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHZvdGVfYWRkcmVzczogJzQxRjE2NDEyQjlBMTdFRTk0MDg2NDZFMkEyMUUxNjQ3OEY3MkVEMUU5NScsXG4gICAgICAgICAgICB2b3RlX2NvdW50OiAxMDAwLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdm90ZV9hZGRyZXNzOiAnNDFDRjlFMTJFMEY0ODU3M0M4NEJDODhEOEZGN0M1MDU2NzQ4NUFBQTI0JyxcbiAgICAgICAgICAgIHZvdGVfY291bnQ6IDIwMDAsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVm90ZVdpdG5lc3NDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnVm90ZVdpdG5lc3NDb250cmFjdCcsXG4gIH0sXG5dO1xuXG5leHBvcnQgY29uc3QgVE9LRU5fVFhfQ09OVFJBQ1QgPSBbXG4gIHtcbiAgICBwYXJhbWV0ZXI6IHtcbiAgICAgIHZhbHVlOiB7XG4gICAgICAgIGRhdGE6IFRPS0VOX1RSQU5TRkVSX0RBVEEsXG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgICBjb250cmFjdF9hZGRyZXNzOiAnNDE0MmExZTM5YWVmYTQ5MjkwZjJiM2Y5ZWQ2ODhkN2NlY2Y4NmNkNmUwJyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ1RyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBUT0tFTl9UWF9DT05UUkFDVF8yID0gW1xuICB7XG4gICAgcGFyYW1ldGVyOiB7XG4gICAgICB2YWx1ZToge1xuICAgICAgICBkYXRhOiBUT0tFTl9UUkFOU0ZFUl9EQVRBXzIsXG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWM1MWZiZWVhNzg5MTBiMTViMWQzZThhOWI2MjkxNGNhOTRkMWE0YWMnLFxuICAgICAgICBjb250cmFjdF9hZGRyZXNzOiAnNDE0MmExZTM5YWVmYTQ5MjkwZjJiM2Y5ZWQ2ODhkN2NlY2Y4NmNkNmUwJyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ1RyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBERUxFR0FURV9SRVNPVVJDRV9DT05UUkFDVCA9IFtcbiAge1xuICAgIHBhcmFtZXRlcjoge1xuICAgICAgdmFsdWU6IHtcbiAgICAgICAgcmVzb3VyY2U6ICdFTkVSR1knLFxuICAgICAgICBiYWxhbmNlOiAxMDAwMDAwLFxuICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgICAgcmVjZWl2ZXJfYWRkcmVzczogJzQxNzNhNTk5M2NkMTgyYWUxNTJhZGFkODIwMzE2M2Y3ODBjNjVhOGFhNScsXG4gICAgICB9LFxuICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLkRlbGVnYXRlUmVzb3VyY2VDb250cmFjdCcsXG4gICAgfSxcbiAgICB0eXBlOiAnRGVsZWdhdGVSZXNvdXJjZUNvbnRyYWN0JyxcbiAgfSxcbl07XG5cbmV4cG9ydCBjb25zdCBVTkRFTEVHQVRFX1JFU09VUkNFX0NPTlRSQUNUID0gW1xuICB7XG4gICAgcGFyYW1ldGVyOiB7XG4gICAgICB2YWx1ZToge1xuICAgICAgICByZXNvdXJjZTogJ0VORVJHWScsXG4gICAgICAgIGJhbGFuY2U6IDEwMDAwMDAsXG4gICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MTczYTU5OTNjZDE4MmFlMTUyYWRhZDgyMDMxNjNmNzgwYzY1YThhYTUnLFxuICAgICAgICByZWNlaXZlcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVW5EZWxlZ2F0ZVJlc291cmNlQ29udHJhY3QnLFxuICAgIH0sXG4gICAgdHlwZTogJ1VuRGVsZWdhdGVSZXNvdXJjZUNvbnRyYWN0JyxcbiAgfSxcbl07XG5cbi8vIG93bmVyID0gVExXaDY3UDkzS2d0blpOQ3RHbkVITTFIMzNOaHEydXZ2TiAoY3VzdG9kaWFuKSwgYWNjb3VudCA9IFRMQlBMR0J1WWhRbWR6UUFFUXZCaHc3TEt6Y3cxVFNTRzkgKHRvKVxuZXhwb3J0IGNvbnN0IEFDQ09VTlRfQ1JFQVRFX0NPTlRSQUNUID0gW1xuICB7XG4gICAgcGFyYW1ldGVyOiB7XG4gICAgICB2YWx1ZToge1xuICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE3M2E1OTkzY2QxODJhZTE1MmFkYWQ4MjAzMTYzZjc4MGM2NWE4YWE1JyxcbiAgICAgICAgYWNjb3VudF9hZGRyZXNzOiAnNDE2ZmZlZGY5MzkyMTUwNmMzZWZkYjUxMGY3YzRmMjU2MDM2YzQ4YTZhJyxcbiAgICAgIH0sXG4gICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuQWNjb3VudENyZWF0ZUNvbnRyYWN0JyxcbiAgICB9LFxuICAgIHR5cGU6ICdBY2NvdW50Q3JlYXRlQ29udHJhY3QnLFxuICB9LFxuXTtcblxuLy8gRE8gTk9UIFJFLVVTRSBUSElTIFBSViBGT1IgUkVBTCBNT05FWVxuZXhwb3J0IGNvbnN0IEZpcnN0UHJpdmF0ZUtleSA9ICcyREJFQUMxQzIyODQ5RjQ3NTE0NDQ1QTU2QUVGMkVGMTY0NTI4QTUwMkRFNEJEMjg5RTIzRUExRTJENEM0QjA2JztcbmV4cG9ydCBjb25zdCBTZWNvbmRQcml2YXRlS2V5ID0gJ0ZCM0FBODg3RTBCRTNGQUM5RDc1RTY2MURBRkY0QTdGRTBFOTFBQUIxM0RBOTc3NUNEODU4NkQ3Q0I5Qjc2NDAnO1xuXG5leHBvcnQgY29uc3QgRmlyc3RFeHBlY3RlZEtleUFkZHJlc3MgPSAnVFRzR3duVExRNGVyeUZKcER2SlNmdUdReFBYUkNqWHZaeic7XG5leHBvcnQgY29uc3QgU2Vjb25kRXhwZWN0ZWRLZXlBZGRyZXNzID0gJ1REem0xdENYTTJZUzFQRGEzR29YU3Z4ZHk0QWd3VmJCUEUnO1xuXG5leHBvcnQgY29uc3QgRmlyc3RFeHBlY3RlZFNpZyA9XG4gICdiZDA4ZTZjZDg3NmJiNTczZGQwMGEzMjg3MGI1OGI3MGVhOGI3OTA4ZjUxMzE2ODY1MDI1ODk5NDFiZmE0ZmRkYTc2YjhjODFiYmJjZmM1NDliZTZkNDk4ODY1N2NlYTEyMmRmN2RhNDZjNzIwNDFkZWYyNjgzZDZlY2IwNGE3NDAxJztcbmV4cG9ydCBjb25zdCBTZWNvbmRFeHBlY3RlZFNpZyA9XG4gICdmM2NhYmUyZjRhZWQxM2UyMzQyYzc4YzdiZjQ2MjZlYTM2Y2Q2NTA5YTQ0NDE4YzI0ODY2ODE0ZDM0MjY3MDM2ODZiZTllZjIxYmQ5OTMzMjRjNTIwNTY1YmVlZTgyMDIwMWYyYTUwYTlhYzk3MTczMjQxMGQzZWI2OWNkYjJhNjAwJztcblxuZXhwb3J0IGNvbnN0IFRlc3RSZWNvdmVyRGF0YSA9IHtcbiAgdXNlcktleTpcbiAgICAneHB1YjZCdk1wdDhrZTh0Q3ljQkJ3NnVEb2I2UHlOQmtIYlR5RXp0YVJ1d2RNWmhwaUZrMW1YcFM3UDdpdjRjNHc3WFdGRlJ5U01va1V1RlVxcWdwWnhLNXdMeG02cGdqcGtORmhLc01hWFRKb1VOJyxcbiAgYmFja3VwS2V5OlxuICAgICd4cHViNjg3a0M4TGVTSndqMWdZUXI0SnMyQkhiTEsxbkZlTHZNenNEbUgyTEtNTnJxQUhOZmVDdzFzcDYxY2JmMld4ZVkxUXNzYVVCaDlFRkpiSjlMQnVQaXZ2N1hEc0ZQVmFGWWoxOXVlQ05jelQnLFxuICBiaXRnb0tleTpcbiAgICAneHB1YjY2MU15TXdBcVJiY0ZIQ1J5YXNVNjdOQ0E3Vjdnb3FVRlBYdnpzRWlKZDRTY2hDS3lQdGlnSEFMdnZlNXd0QmR5SE1aQ1dxcEd6RXNyUXRmejZtRTltNVFYV0RhbnRnYmttdTU2eHZMd2UzJyxcbiAgYmFzZUFkZHJlc3M6ICdUVGdpc1JQN0VKV01ncExYdmJOSG9IaDVVb3RramtCUG9vJyxcbiAgZmlyc3RSZWNlaXZlQWRkcmVzczogJ1RYRDNXaVFaR0NLVGJZak55eHB6eWFUOFR0TmtlVHExMlYnLFxuICBzZWNvbmRSZWNlaXZlQWRkcmVzczogJ1RDZW9UMzZ1VVR0emF0VG5QaDc3dmVxVHk0dXRZdWpYVzYnLFxuICByZWNvdmVyeURlc3RpbmF0aW9uOiAnVFdrek40V2p4a3lvUlRtRkhhTVE5cG83N3VFZXJuZ2p5UScsXG59O1xuXG4vKipcbiAqIFRTUyByZWNvdmVyeSB0ZXN0IGRhdGEuXG4gKlxuICogYml0Z29LZXkgaXMgYSBjb21wcmVzc2VkIHNlY3AyNTZrMSBwdWJsaWMga2V5ICg2NiBoZXggY2hhcnMpIHVzZWQgYXMgdGhlIGNvbW1vbktleWNoYWluLlxuICogVGhlIHdhbGxldCBhZGRyZXNzIGlzIGRlcml2ZWQgZnJvbSBpdCB2aWEgbmV3IFRyb25LZXlQYWlyKHsgcHViOiBiaXRnb0tleSB9KS5nZXRBZGRyZXNzKCkuXG4gKiB1c2VyUHJ2S2V5IGlzIHRoZSByYXcgc2VjcDI1NmsxIHByaXZhdGUga2V5IGhleCB0aGF0IHRoZSBlbmNyeXB0ZWQgdXNlcktleSBkZWNyeXB0cyB0by5cbiAqIHVzZXJLZXkgaXMgYSBwbGFjZWhvbGRlciBlbmNyeXB0ZWQgYmxvYjsgdGVzdHMgbW9jayBkZWNyeXB0QXN5bmMgdG8gcmV0dXJuIHVzZXJQcnZLZXkgZGlyZWN0bHkuXG4gKi9cbmV4cG9ydCBjb25zdCBUc3NUZXN0UmVjb3ZlckRhdGEgPSB7XG4gIC8vIGNvbXByZXNzZWQgcHViIG9mIFBBUlRJQ0lQQU5UUy5mcm9tLnBrIOKAlCB1c2VkIGFzIGNvbW1vbktleWNoYWluIChiaXRnb0tleSlcbiAgYml0Z29LZXk6ICcwM2YxMzA0OTgwMzUyMDJlNGZiNzNmZjM3NmUwNTgxN2E5MzVkZTJhZjhiM2EyZjEyNjMzYjE5MjZlNDcyNTViMTMnLFxuICAvLyBUcm9uIGFkZHJlc3MgZGVyaXZlZCBmcm9tIGJpdGdvS2V5IHZpYSBuZXcgVHJvbktleVBhaXIoeyBwdWI6IGJpdGdvS2V5IH0pLmdldEFkZHJlc3MoKVxuICB3YWxsZXRBZGRyZXNzOiAnVFZZeWdhUUdYUkt2YzRHQmVEWEJXaDRGUkRWU2RUZUN1YScsXG4gIC8vIHBsYWNlaG9sZGVyIHhwdWIgc3RyaW5ncyB0aGF0IG1ha2UgZ2V0SXNVbnNpZ25lZFN3ZWVwKCkgcmV0dXJuIHRydWVcbiAgdXNlcktleTpcbiAgICAneHB1YjZCdk1wdDhrZTh0Q3ljQkJ3NnVEb2I2UHlOQmtIYlR5RXp0YVJ1d2RNWmhwaUZrMW1YcFM3UDdpdjRjNHc3WFdGRlJ5U01va1V1RlVxcWdwWnhLNXdMeG02cGdqcGtORmhLc01hWFRKb1VOJyxcbiAgYmFja3VwS2V5OlxuICAgICd4cHViNjg3a0M4TGVTSndqMWdZUXI0SnMyQkhiTEsxbkZlTHZNenNEbUgyTEtNTnJxQUhOZmVDdzFzcDYxY2JmMld4ZVkxUXNzYVVCaDlFRkpiSjlMQnVQaXZ2N1hEc0ZQVmFGWWoxOXVlQ05jelQnLFxuICAvLyBlbmNyeXB0ZWQgdXNlcktleSBKU09OIChwbGFjZWhvbGRlciDigJQgdGVzdHMgbW9jayBkZWNyeXB0QXN5bmMpXG4gIGVuY3J5cHRlZFVzZXJLZXk6XG4gICAgJ3tcIml2XCI6XCJhYmNcIixcInZcIjoxLFwiaXRlclwiOjEwMDAwLFwia3NcIjoyNTYsXCJ0c1wiOjY0LFwibW9kZVwiOlwiY2NtXCIsXCJhZGF0YVwiOlwiXCIsXCJjaXBoZXJcIjpcImFlc1wiLFwiY3RcIjpcInh5elwifScsXG4gIHdhbGxldFBhc3NwaHJhc2U6ICd0ZXN0cGFzc3BocmFzZTEyMycsXG4gIC8vIHJhdyBzZWNwMjU2azEgcHJpdmF0ZSBrZXkgaGV4IHJldHVybmVkIHdoZW4gZGVjcnlwdEFzeW5jIGlzIGNhbGxlZCAoUEFSVElDSVBBTlRTLmN1c3RvZGlhbi5waylcbiAgdXNlclBydktleTogJ2M0YjNhMDQ4MzZlZmMyZWUyOTE3MjM1ZjU1Y2NmYjJkY2Y2YjgzNDFlNWVhMDQwNWRhNWJhMTBjZDUyNmRmZWQnLFxuICByZWNvdmVyeURlc3RpbmF0aW9uOiAnVFdrek40V2p4a3lvUlRtRkhhTVE5cG83N3VFZXJuZ2p5UScsXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gYmFzZUFkZHJlc3NCYWxhbmNlKHRyeEJhbGFuY2U6IG51bWJlciwgdHJjMjBCYWxhbmNlczogYW55W10gPSBbXSkge1xuICByZXR1cm4ge1xuICAgIGRhdGE6IFtcbiAgICAgIHtcbiAgICAgICAgb3duZXJfcGVybWlzc2lvbjoge1xuICAgICAgICAgIGtleXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgYWRkcmVzczogJ1RUZ2lzUlA3RUpXTWdwTFh2Yk5Ib0hoNVVvdGtqa0JQb28nLFxuICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBhZGRyZXNzOiAnVEJEeThIQXk4dnZob3FLYzVWMWhIUWF0ZmpaSE0xTWhQYicsXG4gICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGFkZHJlc3M6ICdUUEhQRGZROFZzM1lwNVVLRExIcjVNam9WVXJyNVk2OW05JyxcbiAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHRocmVzaG9sZDogMixcbiAgICAgICAgICBwZXJtaXNzaW9uX25hbWU6ICdvd25lcicsXG4gICAgICAgIH0sXG4gICAgICAgIGJhbGFuY2U6IHRyeEJhbGFuY2UsXG4gICAgICAgIHRyYzIwOiB0cmMyMEJhbGFuY2VzLFxuICAgICAgICBhY3RpdmVfcGVybWlzc2lvbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG9wZXJhdGlvbnM6ICc3ZmZmMWZjMDAzN2UwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAgICAgICAgIGtleXM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGFkZHJlc3M6ICdUVGdpc1JQN0VKV01ncExYdmJOSG9IaDVVb3RramtCUG9vJyxcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBhZGRyZXNzOiAnVEJEeThIQXk4dnZob3FLYzVWMWhIUWF0ZmpaSE0xTWhQYicsXG4gICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYWRkcmVzczogJ1RQSFBEZlE4VnMzWXA1VUtETEhyNU1qb1ZVcnI1WTY5bTknLFxuICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICAgICAgICBpZDogMixcbiAgICAgICAgICAgIHR5cGU6ICdBY3RpdmUnLFxuICAgICAgICAgICAgcGVybWlzc2lvbl9uYW1lOiAnYWN0aXZlMCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgXSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlY2VpdmVBZGRyZXNzQmFsYW5jZShiYWxhbmNlOiBudW1iZXIsIGFkZHJlc3M6IHN0cmluZywgdHJjMjBCYWxhbmNlczogYW55W10gPSBbXSkge1xuICByZXR1cm4ge1xuICAgIGRhdGE6IFtcbiAgICAgIHtcbiAgICAgICAgb3duZXJfcGVybWlzc2lvbjoge1xuICAgICAgICAgIGtleXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgYWRkcmVzczogYWRkcmVzcyxcbiAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHRocmVzaG9sZDogMSxcbiAgICAgICAgICBwZXJtaXNzaW9uX25hbWU6ICdvd25lcicsXG4gICAgICAgIH0sXG4gICAgICAgIGFjdGl2ZV9wZXJtaXNzaW9uOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgb3BlcmF0aW9uczogJzdmZmYxZmMwMDMzZWMzMGYwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAnLFxuICAgICAgICAgICAga2V5czogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgYWRkcmVzczogYWRkcmVzcyxcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgdGhyZXNob2xkOiAxLFxuICAgICAgICAgICAgaWQ6IDIsXG4gICAgICAgICAgICB0eXBlOiAnQWN0aXZlJyxcbiAgICAgICAgICAgIHBlcm1pc3Npb25fbmFtZTogJ2FjdGl2ZScsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgYmFsYW5jZTogYmFsYW5jZSxcbiAgICAgICAgdHJjMjA6IHRyYzIwQmFsYW5jZXMsXG4gICAgICB9LFxuICAgIF0sXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGlvblRyYW5zYWN0aW9uKGZyb21BZGRyZXNzOiBzdHJpbmcsIHRvQWRkcmVzczogc3RyaW5nLCBhbW91bnQ6IG51bWJlcikge1xuICByZXR1cm4ge1xuICAgIHZpc2libGU6IGZhbHNlLFxuICAgIHR4SUQ6ICdjYzY3NWY0N2I1NmY4NGMwMTFlZTg3YzdjMGRkZTVhNWZkNjYyYjQ4MTM5ODA1YWFmM2M0ODg0MDllM2FhZjNiJyxcbiAgICByYXdfZGF0YToge1xuICAgICAgY29udHJhY3Q6IFtcbiAgICAgICAge1xuICAgICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgICAgYW1vdW50OiBhbW91bnQsXG4gICAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6IGZyb21BZGRyZXNzLFxuICAgICAgICAgICAgICB0b19hZGRyZXNzOiB0b0FkZHJlc3MsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZTogJ1RyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHJlZl9ibG9ja19ieXRlczogJzM3ZDMnLFxuICAgICAgcmVmX2Jsb2NrX2hhc2g6ICdhNDdkMmFjMjE4OTQ4N2I5JyxcbiAgICAgIGV4cGlyYXRpb246IDE2OTM0NDE1NDgwMDAsXG4gICAgICB0aW1lc3RhbXA6IDE2OTM0NDE0ODk4NTQsXG4gICAgfSxcbiAgICByYXdfZGF0YV9oZXg6XG4gICAgICAnMGEwMjM3ZDMyMjA4YTQ3ZDJhYzIxODk0ODdiOTQwZTBiZGVkYzdhNDMxNWE2ODA4MDExMjY0MGEyZDc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjE2ZTczNjY2NTcyNDM2ZjZlNzQ3MjYxNjM3NDEyMzMwYTE1NDFlOGY4OGI0ZTIzOWU4NWM5MjI1NWIwNDM0NTBhMzRiNjVhMzI5YTU0MTIxNTQxYzI1NDIwMjU1YzJjNWEyZGQ1NGVmNjlmOTJlZjI2MWU2YmQ0MjE2YTE4ODBjMmQ3MmY3MGJlZjdlOWM3YTQzMScsXG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBTYW1wbGVSYXdUb2tlblNlbmRUeG4gPSB7XG4gIHJlc3VsdDoge1xuICAgIHJlc3VsdDogdHJ1ZSxcbiAgfSxcbiAgdHJhbnNhY3Rpb246IHtcbiAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICB0eElEOiAnZjgxNzljYWFiNGM3ODE2NzZjYjMzOTQwOTQ4NTMzZTIwOWRjN2ZlMjEzNWJiZDZlMDBmNjA1OTc4NjJiODZiZScsXG4gICAgcmF3X2RhdGE6IHtcbiAgICAgIGNvbnRyYWN0OiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgIGRhdGE6ICdhOTA1OWNiYjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMGU0MGIxOWFmY2EzZGRlNGNlOGZjYmM1N2FiNDFmOGMzMjZhYjBjZjIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQxOTBhYjAwJyxcbiAgICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzI1NDIwMjU1YzJjNWEyZGQ1NGVmNjlmOTJlZjI2MWU2YmQ0MjE2YScsXG4gICAgICAgICAgICAgIGNvbnRyYWN0X2FkZHJlc3M6ICc0MTQyYTFlMzlhZWZhNDkyOTBmMmIzZjllZDY4OGQ3Y2VjZjg2Y2Q2ZTAnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmlnZ2VyU21hcnRDb250cmFjdCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlOiAnVHJpZ2dlclNtYXJ0Q29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHJlZl9ibG9ja19ieXRlczogJ2NiYTMnLFxuICAgICAgcmVmX2Jsb2NrX2hhc2g6ICdlMTRjYzQyNWRhM2NmZDk0JyxcbiAgICAgIGV4cGlyYXRpb246IDE2OTMzNTc2MjAwMDAsXG4gICAgICBmZWVfbGltaXQ6IDEwMDAwMDAwMCxcbiAgICAgIHRpbWVzdGFtcDogMTY5MzM1NzU2MTMzOSxcbiAgICB9LFxuICAgIHJhd19kYXRhX2hleDpcbiAgICAgICcwYTAyY2JhMzIyMDhlMTRjYzQyNWRhM2NmZDk0NDBhMGY2ZWE5ZmE0MzE1YWFlMDEwODFmMTJhOTAxMGEzMTc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjk2NzY3NjU3MjUzNmQ2MTcyNzQ0MzZmNmU3NDcyNjE2Mzc0MTI3NDBhMTU0MWMyNTQyMDI1NWMyYzVhMmRkNTRlZjY5ZjkyZWYyNjFlNmJkNDIxNmExMjE1NDE0MmExZTM5YWVmYTQ5MjkwZjJiM2Y5ZWQ2ODhkN2NlY2Y4NmNkNmUwMjI0NGE5MDU5Y2JiMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwZTQwYjE5YWZjYTNkZGU0Y2U4ZmNiYzU3YWI0MWY4YzMyNmFiMGNmMjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwNDE5MGFiMDA3MGZiYWJlNzlmYTQzMTkwMDE4MGMyZDcyZicsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgVW5zaWduZWRCdWlsZFRyYW5zYWN0aW9uID0ge1xuICB2aXNpYmxlOiBmYWxzZSxcbiAgdHhJRDogJzgwYjhiOWVhZWQ1MWM4YmJhM2I0OWY3ZjBlN2NjNWYyMWFjOTlhNmYzZTI4OTNjNjYzYjU0NGJmMmM2OTViMWQnLFxuICByYXdfZGF0YToge1xuICAgIGNvbnRyYWN0OiBbXG4gICAgICB7XG4gICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBhbW91bnQ6IDE3MTgsXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyJyxcbiAgICAgICAgICAgIHRvX2FkZHJlc3M6ICc0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWEnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnOTBlNCcsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICdhMDE4YmY5ODkyZGRiMTM4JyxcbiAgICBleHBpcmF0aW9uOiAxNTcxODExNDY4MDAwLFxuICAgIHRpbWVzdGFtcDogMTU3MTgxMTQxMDgxOSxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyOTBlNDIyMDhhMDE4YmY5ODkyZGRiMTM4NDBlMGM1OGViYWRmMmQ1YTY2MDgwMTEyNjIwYTJkNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2MTZlNzM2NjY1NzI0MzZmNmU3NDcyNjE2Mzc0MTIzMTBhMTU0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTIxMjE1NDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhMThiNjBkNzA4Mzg3OGJiYWRmMmQnLFxufTtcblxuZXhwb3J0IGNvbnN0IEZpcnN0U2lnT25CdWlsZFRyYW5zYWN0aW9uID0gKCgpID0+IHtcbiAgY29uc3QgbW9kaWZpZWRCdWlsZCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoVW5zaWduZWRCdWlsZFRyYW5zYWN0aW9uKSk7XG4gIG1vZGlmaWVkQnVpbGRbJ3NpZ25hdHVyZSddID0gW107XG4gIG1vZGlmaWVkQnVpbGRbJ3NpZ25hdHVyZSddLnB1c2goXG4gICAgJ2JkMDhlNmNkODc2YmI1NzNkZDAwYTMyODcwYjU4YjcwZWE4Yjc5MDhmNTEzMTY4NjUwMjU4OTk0MWJmYTRmZGRhNzZiOGM4MWJiYmNmYzU0OWJlNmQ0OTg4NjU3Y2VhMTIyZGY3ZGE0NmM3MjA0MWRlZjI2ODNkNmVjYjA0YTc0MDEnXG4gICk7XG4gIHJldHVybiBtb2RpZmllZEJ1aWxkO1xufSkoKTtcblxuZXhwb3J0IGNvbnN0IFNlY29uZFNpZ09uQnVpbGRUcmFuc2FjdGlvbiA9ICgoKSA9PiB7XG4gIGNvbnN0IG1vZGlmaWVkQnVpbGQgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KFVuc2lnbmVkQnVpbGRUcmFuc2FjdGlvbikpO1xuICBtb2RpZmllZEJ1aWxkWydzaWduYXR1cmUnXSA9IFtdO1xuICBtb2RpZmllZEJ1aWxkWydzaWduYXR1cmUnXS5wdXNoKFxuICAgICdmM2NhYmUyZjRhZWQxM2UyMzQyYzc4YzdiZjQ2MjZlYTM2Y2Q2NTA5YTQ0NDE4YzI0ODY2ODE0ZDM0MjY3MDM2ODZiZTllZjIxYmQ5OTMzMjRjNTIwNTY1YmVlZTgyMDIwMWYyYTUwYTlhYzk3MTczMjQxMGQzZWI2OWNkYjJhNjAwJ1xuICApO1xuICBtb2RpZmllZEJ1aWxkWydzaWduYXR1cmUnXS5wdXNoKFxuICAgICdiZDA4ZTZjZDg3NmJiNTczZGQwMGEzMjg3MGI1OGI3MGVhOGI3OTA4ZjUxMzE2ODY1MDI1ODk5NDFiZmE0ZmRkYTc2YjhjODFiYmJjZmM1NDliZTZkNDk4ODY1N2NlYTEyMmRmN2RhNDZjNzIwNDFkZWYyNjgzZDZlY2IwNGE3NDAxJ1xuICApO1xuICByZXR1cm4gbW9kaWZpZWRCdWlsZDtcbn0pKCk7XG5cbmV4cG9ydCBjb25zdCBVbnNpZ25lZFRyYW5zZmVyQ29udHJhY3RUeCA9IHtcbiAgdHg6IHtcbiAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICB0eElEOiAnZWUwYmJmNzJiMjM4MzYxNTc3YTlkYzQxZDc5ZjdhNzRmNmJhOWVmZTQ3MmMyMWJmZDNlN2RjODUwYzllOTAyMCcsXG4gICAgcmF3X2RhdGE6IHtcbiAgICAgIGNvbnRyYWN0OiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICAgIGFtb3VudDogMTAsXG4gICAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWU1ZTAwZmMxY2RiMzkyMWI4MzQwYzIwYjJiNjViNTQzYzg0YWExZGQnLFxuICAgICAgICAgICAgICB0b19hZGRyZXNzOiAnNDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlOiAnVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgcmVmX2Jsb2NrX2J5dGVzOiAnNTEyMycsXG4gICAgICByZWZfYmxvY2tfaGFzaDogJzUyYTI2ZGVhOTYzYTQ3YmMnLFxuICAgICAgZXhwaXJhdGlvbjogMTU2OTQ2MzMyMDAwMCxcbiAgICAgIHRpbWVzdGFtcDogMTU2OTQ2MzI2MTYyMyxcbiAgICB9LFxuICAgIHJhd19kYXRhX2hleDpcbiAgICAgICcwYTAyNTEyMzIyMDg1MmEyNmRlYTk2M2E0N2JjNDBjMGZiYjZkYWQ2MmQ1YTY1MDgwMTEyNjEwYTJkNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2MTZlNzM2NjY1NzI0MzZmNmU3NDcyNjE2Mzc0MTIzMDBhMTU0MWU1ZTAwZmMxY2RiMzkyMWI4MzQwYzIwYjJiNjViNTQzYzg0YWExZGQxMjE1NDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3MTgwYTcwYjdiM2IzZGFkNjJkJyxcbiAgICBzaWduYXR1cmU6IFtdLFxuICB9LFxuICBzaWc6ICcwYTk5NDQzMTY5MjRlYzdmYmE0ODk1ZjFlYTFlN2NjOTVmOWUyYjgyOGFlMjY4YTQ4YThkYmVkZGVmNDBjNmY1ZTEyNzE3MGE5NWFlZDlmM2Y1NDI1YjEzMDU4ZDBjYjZlZjFmNWMyMjEzMTkwZTQ4MmU4NzA0MzY5MWYyMmU2ODAwJyxcbn07XG5cbmV4cG9ydCBjb25zdCBBY2NvdW50UGVybWlzc2lvblVwZGF0ZUNvbnRyYWN0UHJpdiA9ICc4ODQxMzYwMUMyNjczMTYwNDA0MTNDNjhBQUIzNTY1MUY4QzdBQjA1RUM4RkZFRjQyRDQyRERBMTZBQTM3MzJDJztcbmV4cG9ydCBjb25zdCBVbnNpZ25lZEFjY291bnRQZXJtaXNzaW9uVXBkYXRlQ29udHJhY3RUeCA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc3ZDU0MDdkODFkNGU5NWY0YzNjMjhmODg0OTk0N2I5MWZiZmE5YzViMTAyYmZkNWI0OGZlNzdlNjNjNjgxMDdkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgb3duZXI6IHtcbiAgICAgICAgICAgICAga2V5czogW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMnLFxuICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxMmMyYmE0YTlmZjZjNTMyMDdkYzViNjg2YmZlY2Y3NWVhN2I4MDU3NycsXG4gICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDFlMGMwZjU4MWQ3ZDAyZDQwODI2YzFjNmNiZWU3MWY2MjVkNjM0NGQwJyxcbiAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICAgICAgICAgIHBlcm1pc3Npb25fbmFtZTogJ293bmVyJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljJyxcbiAgICAgICAgICAgIGFjdGl2ZXM6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG9wZXJhdGlvbnM6ICc3ZmZmMWZjMDAzN2UwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwJyxcbiAgICAgICAgICAgICAgICBrZXlzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMnLFxuICAgICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3JyxcbiAgICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxZTBjMGY1ODFkN2QwMmQ0MDgyNmMxYzZjYmVlNzFmNjI1ZDYzNDRkMCcsXG4gICAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgICB0aHJlc2hvbGQ6IDIsXG4gICAgICAgICAgICAgICAgdHlwZTogJ0FjdGl2ZScsXG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbl9uYW1lOiAnYWN0aXZlMCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLkFjY291bnRQZXJtaXNzaW9uVXBkYXRlQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnQWNjb3VudFBlcm1pc3Npb25VcGRhdGVDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnZWViMicsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICc5NzkwNGUyOTIyZDZiNWU4JyxcbiAgICBleHBpcmF0aW9uOiAxNTcyNDczNTI5MDAwLFxuICAgIHRpbWVzdGFtcDogMTU3MjQ3MzQ2OTA2NSxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyZWViMjIyMDg5NzkwNGUyOTIyZDZiNWU4NDBhOGM1ZTdmNWUxMmQ1YWJjMDIwODJlMTJiNzAyMGEzYzc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU0MTYzNjM2Zjc1NmU3NDUwNjU3MjZkNjk3MzczNjk2ZjZlNTU3MDY0NjE3NDY1NDM2ZjZlNzQ3MjYxNjM3NDEyZjYwMTBhMTU0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMxMjVhMWEwNTZmNzc2ZTY1NzIyMDAyM2ExOTBhMTU0MWNhNDJhNDk5YTJlZWUzOTQzMjNiYWEyYzJmN2Q4YTc2NGNlMDY4OWMxMDAxM2ExOTBhMTU0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcxMDAxM2ExOTBhMTU0MWUwYzBmNTgxZDdkMDJkNDA4MjZjMWM2Y2JlZTcxZjYyNWQ2MzQ0ZDAxMDAxMjI4MDAxMDgwMjFhMDc2MTYzNzQ2OTc2NjUzMDIwMDIzMjIwN2ZmZjFmYzAwMzdlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDNhMTkwYTE1NDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljMTAwMTNhMTkwYTE1NDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3MTAwMTNhMTkwYTE1NDFlMGMwZjU4MWQ3ZDAyZDQwODI2YzFjNmNiZWU3MWY2MjVkNjM0NGQwMTAwMTcwODlmMWUzZjVlMTJkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBTaWduZWRBY2NvdW50UGVybWlzc2lvblVwZGF0ZUNvbnRyYWN0VHggPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnN2Q1NDA3ZDgxZDRlOTVmNGMzYzI4Zjg4NDk5NDdiOTFmYmZhOWM1YjEwMmJmZDViNDhmZTc3ZTYzYzY4MTA3ZCcsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIG93bmVyOiB7XG4gICAgICAgICAgICAgIGtleXM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljJyxcbiAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MTJjMmJhNGE5ZmY2YzUzMjA3ZGM1YjY4NmJmZWNmNzVlYTdiODA1NzcnLFxuICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxZTBjMGY1ODFkN2QwMmQ0MDgyNmMxYzZjYmVlNzFmNjI1ZDYzNDRkMCcsXG4gICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgdGhyZXNob2xkOiAyLFxuICAgICAgICAgICAgICBwZXJtaXNzaW9uX25hbWU6ICdvd25lcicsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxY2E0MmE0OTlhMmVlZTM5NDMyM2JhYTJjMmY3ZDhhNzY0Y2UwNjg5YycsXG4gICAgICAgICAgICBhY3RpdmVzOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBvcGVyYXRpb25zOiAnN2ZmZjFmYzAwMzdlMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCcsXG4gICAgICAgICAgICAgICAga2V5czogW1xuICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBhZGRyZXNzOiAnNDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljJyxcbiAgICAgICAgICAgICAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgYWRkcmVzczogJzQxMmMyYmE0YTlmZjZjNTMyMDdkYzViNjg2YmZlY2Y3NWVhN2I4MDU3NycsXG4gICAgICAgICAgICAgICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGFkZHJlc3M6ICc0MWUwYzBmNTgxZDdkMDJkNDA4MjZjMWM2Y2JlZTcxZjYyNWQ2MzQ0ZDAnLFxuICAgICAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAyLFxuICAgICAgICAgICAgICAgIHR5cGU6ICdBY3RpdmUnLFxuICAgICAgICAgICAgICAgIHBlcm1pc3Npb25fbmFtZTogJ2FjdGl2ZTAnLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5BY2NvdW50UGVybWlzc2lvblVwZGF0ZUNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ0FjY291bnRQZXJtaXNzaW9uVXBkYXRlQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJ2VlYjInLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnOTc5MDRlMjkyMmQ2YjVlOCcsXG4gICAgZXhwaXJhdGlvbjogMTU3MjQ3MzUyOTAwMCxcbiAgICB0aW1lc3RhbXA6IDE1NzI0NzM0NjkwNjUsXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMmVlYjIyMjA4OTc5MDRlMjkyMmQ2YjVlODQwYThjNWU3ZjVlMTJkNWFiYzAyMDgyZTEyYjcwMjBhM2M3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNDE2MzYzNmY3NTZlNzQ1MDY1NzI2ZDY5NzM3MzY5NmY2ZTU1NzA2NDYxNzQ2NTQzNmY2ZTc0NzI2MTYzNzQxMmY2MDEwYTE1NDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljMTI1YTFhMDU2Zjc3NmU2NTcyMjAwMjNhMTkwYTE1NDFjYTQyYTQ5OWEyZWVlMzk0MzIzYmFhMmMyZjdkOGE3NjRjZTA2ODljMTAwMTNhMTkwYTE1NDEyYzJiYTRhOWZmNmM1MzIwN2RjNWI2ODZiZmVjZjc1ZWE3YjgwNTc3MTAwMTNhMTkwYTE1NDFlMGMwZjU4MWQ3ZDAyZDQwODI2YzFjNmNiZWU3MWY2MjVkNjM0NGQwMTAwMTIyODAwMTA4MDIxYTA3NjE2Mzc0Njk3NjY1MzAyMDAyMzIyMDdmZmYxZmMwMDM3ZTAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzYTE5MGExNTQxY2E0MmE0OTlhMmVlZTM5NDMyM2JhYTJjMmY3ZDhhNzY0Y2UwNjg5YzEwMDEzYTE5MGExNTQxMmMyYmE0YTlmZjZjNTMyMDdkYzViNjg2YmZlY2Y3NWVhN2I4MDU3NzEwMDEzYTE5MGExNTQxZTBjMGY1ODFkN2QwMmQ0MDgyNmMxYzZjYmVlNzFmNjI1ZDYzNDRkMDEwMDE3MDg5ZjFlM2Y1ZTEyZCcsXG4gIHNpZ25hdHVyZTogW1xuICAgICcyYmM1MDMwNzI3ZDQyZWQ2NDJjMjgwNmEzYzFhNWEwMzkzNDA4YjE1OTU0MWYyMTYzZGY0YmE2OTJjNWMxMjQwZTJkZGU1YTJhYWU0ZWNhZDQ2NTQxNGU2MGI1YWVjYTg1MjJkMGEyYjY2MDZmODhhMzI2NjU4ODA5MTYxMzM0ZjAwJyxcbiAgXSxcbn07XG5leHBvcnQgY29uc3QgSW52YWxpZElEVHJhbnNhY3Rpb24gPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnOTBiOGI5ZWFlZDUxYzhiYmEzYjQ5ZjdmMGU3Y2M1ZjIxYWM5OWE2ZjNlMjg5M2M2NjNiNTQ0YmYyYzY5NWIxZCcsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIGFtb3VudDogMTcxOCxcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTInLFxuICAgICAgICAgICAgdG9fYWRkcmVzczogJzQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdUcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICc5MGU0JyxcbiAgICByZWZfYmxvY2tfaGFzaDogJ2EwMThiZjk4OTJkZGIxMzgnLFxuICAgIGV4cGlyYXRpb246IDE1NzE4MTE0NjgwMDAsXG4gICAgdGltZXN0YW1wOiAxNTcxODExNDEwODE5LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDI5MGU0MjIwOGEwMThiZjk4OTJkZGIxMzg0MGUwYzU4ZWJhZGYyZDVhNjYwODAxMTI2MjBhMmQ3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjYxNmU3MzY2NjU3MjQzNmY2ZTc0NzI2MTYzNzQxMjMxMGExNTQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MjEyMTU0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWExOGI2MGQ3MDgzODc4YmJhZGYyZCcsXG59O1xuZXhwb3J0IGNvbnN0IFVuc2lnbmVkQnVpbGRFbXB0eUlEVHJhbnNhY3Rpb24gPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgYW1vdW50OiAxNzE4LFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MicsXG4gICAgICAgICAgICB0b19hZGRyZXNzOiAnNDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1RyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJzkwZTQnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnYTAxOGJmOTg5MmRkYjEzOCcsXG4gICAgZXhwaXJhdGlvbjogMTU3MTgxMTQ2ODAwMCxcbiAgICB0aW1lc3RhbXA6IDE1NzE4MTE0MTA4MTksXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMjkwZTQyMjA4YTAxOGJmOTg5MmRkYjEzODQwZTBjNThlYmFkZjJkNWE2NjA4MDExMjYyMGEyZDc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjE2ZTczNjY2NTcyNDM2ZjZlNzQ3MjYxNjM3NDEyMzEwYTE1NDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyMTIxNTQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYTE4YjYwZDcwODM4NzhiYmFkZjJkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBVbnNpZ25lZEJ1aWxkSW52YWxpZElEVHJhbnNhY3Rpb24gPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnODBiOGI5ZWJmZDUxYzhiYmEzYjQ5ZjdmMGU3Y2M1ZjIxYWM5OWE2ZjNlMjg5M2M2NjNiNTQ0YmYyYzY5NWIxZCcsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIGFtb3VudDogMTcxOCxcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTInLFxuICAgICAgICAgICAgdG9fYWRkcmVzczogJzQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdUcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICc5MGU0JyxcbiAgICByZWZfYmxvY2tfaGFzaDogJ2EwMThiZjk4OTJkZGIxMzgnLFxuICAgIGV4cGlyYXRpb246IDE1NzE4MTE0NjgwMDAsXG4gICAgdGltZXN0YW1wOiAxNTcxODExNDEwODE5LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDI5MGU0MjIwOGEwMThiZjk4OTJkZGIxMzg0MGUwYzU4ZWJhZGYyZDVhNjYwODAxMTI2MjBhMmQ3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjYxNmU3MzY2NjU3MjQzNmY2ZTc0NzI2MTYzNzQxMjMxMGExNTQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MjEyMTU0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWExOGI2MGQ3MDgzODc4YmJhZGYyZCcsXG59O1xuXG5leHBvcnQgY29uc3QgVW5zaWduZWRJbnZhbGlkRXhwaXJhdGlvbkJ1aWxkVHJhbnNhY3Rpb24gPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnODBiOGI5ZWFlZDUxYzhiYmEzYjQ5ZjdmMGU3Y2M1ZjIxYWM5OWE2ZjNlMjg5M2M2NjNiNTQ0YmYyYzY5NWIxZCcsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIGFtb3VudDogMTcxOCxcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTInLFxuICAgICAgICAgICAgdG9fYWRkcmVzczogJzQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0eXBlX3VybDogJ3R5cGUuZ29vZ2xlYXBpcy5jb20vcHJvdG9jb2wuVHJhbnNmZXJDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdUcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICc5MGU0JyxcbiAgICByZWZfYmxvY2tfaGFzaDogJ2EwMThiZjk4OTJkZGIxMzgnLFxuICAgIGV4cGlyYXRpb246IDE1NzE4MTE0Njg5MDAsXG4gICAgdGltZXN0YW1wOiAxNTcxODExNDEwODE5LFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDI5MGU0MjIwOGEwMThiZjk4OTJkZGIxMzg0MGUwYzU4ZWJhZGYyZDVhNjYwODAxMTI2MjBhMmQ3NDc5NzA2NTJlNjc2ZjZmNjc2YzY1NjE3MDY5NzMyZTYzNmY2ZDJmNzA3MjZmNzQ2ZjYzNmY2YzJlNTQ3MjYxNmU3MzY2NjU3MjQzNmY2ZTc0NzI2MTYzNzQxMjMxMGExNTQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MjEyMTU0MTg5ZmZhZjlkYThjNmZhZTMyMTg5YjJlNmRjZTIyODI0OWIxMTI5YWExOGI2MGQ3MDgzODc4YmJhZGYyZCcsXG59O1xuXG5leHBvcnQgY29uc3QgVW5zaWduZWRJbnZhbGlkVGltZVN0YW1wQnVpbGRUcmFuc2FjdGlvbiA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICc4MGI4YjllYWVkNTFjOGJiYTNiNDlmN2YwZTdjYzVmMjFhYzk5YTZmM2UyODkzYzY2M2I1NDRiZjJjNjk1YjFkJyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgYW1vdW50OiAxNzE4LFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxYzQ1MzBmNmJmYTkwMmI3Mzk4YWM3NzNkYTU2MTA2YTE1YWYxNWY5MicsXG4gICAgICAgICAgICB0b19hZGRyZXNzOiAnNDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhJyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHR5cGVfdXJsOiAndHlwZS5nb29nbGVhcGlzLmNvbS9wcm90b2NvbC5UcmFuc2ZlckNvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1RyYW5zZmVyQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJzkwZTQnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnYTAxOGJmOTg5MmRkYjEzOCcsXG4gICAgZXhwaXJhdGlvbjogMTU3MTgxMTQ2ODAwMCxcbiAgICB0aW1lc3RhbXA6IDE1ODE4MTE0MTA4MTksXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMjkwZTQyMjA4YTAxOGJmOTg5MmRkYjEzODQwZTBjNThlYmFkZjJkNWE2NjA4MDExMjYyMGEyZDc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NDcyNjE2ZTczNjY2NTcyNDM2ZjZlNzQ3MjYxNjM3NDEyMzEwYTE1NDFjNDUzMGY2YmZhOTAyYjczOThhYzc3M2RhNTYxMDZhMTVhZjE1ZjkyMTIxNTQxODlmZmFmOWRhOGM2ZmFlMzIxODliMmU2ZGNlMjI4MjQ5YjExMjlhYTE4YjYwZDcwODM4NzhiYmFkZjJkJyxcbn07XG5cbmV4cG9ydCBjb25zdCBVbnNpZ25lZEludmFsaWRDb250cmFjdEJ1aWxkVHJhbnNhY3Rpb24gPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnODBiOGI5ZWFlZDUxYzhiYmEzYjQ5ZjdmMGU3Y2M1ZjIxYWM5OWE2ZjNlMjg5M2M2NjNiNTQ0YmYyYzY5NWIxZCcsXG4gIHJhd19kYXRhOiB7XG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnOTBlNCcsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICdhMDE4YmY5ODkyZGRiMTM4JyxcbiAgICBleHBpcmF0aW9uOiAxNTcxODExNDY4MDAwLFxuICAgIHRpbWVzdGFtcDogMTU3MTgxMTQxMDgxOSxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyOTBlNDIyMDhhMDE4YmY5ODkyZGRiMTM4NDBlMGM1OGViYWRmMmQ1YTY2MDgwMTEyNjIwYTJkNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2MTZlNzM2NjY1NzI0MzZmNmU3NDcyNjE2Mzc0MTIzMTBhMTU0MWM0NTMwZjZiZmE5MDJiNzM5OGFjNzczZGE1NjEwNmExNWFmMTVmOTIxMjE1NDE4OWZmYWY5ZGE4YzZmYWUzMjE4OWIyZTZkY2UyMjgyNDliMTEyOWFhMThiNjBkNzA4Mzg3OGJiYWRmMmQnLFxufTtcblxuZXhwb3J0IGNvbnN0IG1vY2tUb2tlblR4ID0ge1xuICBzaWduYXR1cmU6IFtdLFxuICB0eElEOiAnNjM2YTk0ZDg2NjJjNTFjYmM3ZTFiZGNjYzZjY2MwZDUzMTgyNzU4MmJiN2Q3M2Y4YmJjMGVlYTdmODZkZjU5MCcsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3RUeXBlOiAyLFxuICAgIGNvbnRyYWN0OiBbXG4gICAgICB7XG4gICAgICAgIHBhcmFtZXRlcjoge1xuICAgICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgICBkYXRhOiAnYTkwNTljYmIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0ODg3OTc0ZjQyYTc4OWVmNmQ0ZGZjN2JhMjhiMTU4MzIxOTQzNGIzMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzYjlhY2EwMCcsXG4gICAgICAgICAgICBvd25lcl9hZGRyZXNzOiAnNDE0ODg3OTc0ZjQyYTc4OWVmNmQ0ZGZjN2JhMjhiMTU4MzIxOTQzNGIzJyxcbiAgICAgICAgICAgIGNvbnRyYWN0X2FkZHJlc3M6ICc0MTQyYTFlMzlhZWZhNDkyOTBmMmIzZjllZDY4OGQ3Y2VjZjg2Y2Q2ZTAnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlRyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgICAgICAgfSxcbiAgICAgICAgdHlwZTogJ1RyaWdnZXJTbWFydENvbnRyYWN0JyxcbiAgICAgIH0sXG4gICAgXSxcbiAgICByZWZfYmxvY2tfYnl0ZXM6ICdjOGNmJyxcbiAgICByZWZfYmxvY2tfaGFzaDogJzg5MTc3ZmQ4NGM1ZDkxOTYnLFxuICAgIGV4cGlyYXRpb246IDE2NzA1NDM5OTMxNjQsXG4gICAgdGltZXN0YW1wOiAxNjcwNTQwMzkzMTY0LFxuICAgIGZlZV9saW1pdDogMTUwMDAwMDAwLFxuICB9LFxuICByYXdfZGF0YV9oZXg6XG4gICAgJzBhMDJjOGNmMjIwODg5MTc3ZmQ4NGM1ZDkxOTY0MGNjZDJiOWExY2YzMDVhYWUwMTA4MWYxMmE5MDEwYTMxNzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU0NzI2OTY3Njc2NTcyNTM2ZDYxNzI3NDQzNmY2ZTc0NzI2MTYzNzQxMjc0MGExNTQxNDg4Nzk3NGY0MmE3ODllZjZkNGRmYzdiYTI4YjE1ODMyMTk0MzRiMzEyMTU0MTQyYTFlMzlhZWZhNDkyOTBmMmIzZjllZDY4OGQ3Y2VjZjg2Y2Q2ZTAyMjQ0YTkwNTljYmIwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0ODg3OTc0ZjQyYTc4OWVmNmQ0ZGZjN2JhMjhiMTU4MzIxOTQzNGIzMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAzYjlhY2EwMDcwY2NmNWRkOWZjZjMwOTAwMTgwYTNjMzQ3Jyxcbn07XG5cbmV4cG9ydCBjb25zdCB2YWxpZFVuZnJlZXplVW5zaWduZWRUeCA9IHtcbiAgdmlzaWJsZTogZmFsc2UsXG4gIHR4SUQ6ICcyMjdiN2M3MDBlYTNiZjUwN2E3ZDhiMzYyN2I2ZTlkYjFkN2U2MTE2NjgxZjJlMTI1YzE2ZmM0MGU2YTE5MjM1JyxcbiAgcmF3X2RhdGE6IHtcbiAgICBjb250cmFjdDogW1xuICAgICAge1xuICAgICAgICBwYXJhbWV0ZXI6IHtcbiAgICAgICAgICB2YWx1ZToge1xuICAgICAgICAgICAgcmVzb3VyY2U6ICdFTkVSR1knLFxuICAgICAgICAgICAgb3duZXJfYWRkcmVzczogJzQxZTVlMDBmYzFjZGIzOTIxYjgzNDBjMjBiMmI2NWI1NDNjODRhYTFkZCcsXG4gICAgICAgICAgICB1bmZyZWV6ZV9iYWxhbmNlOiAxMDAwMDAwLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLlVuZnJlZXplQmFsYW5jZVYyQ29udHJhY3QnLFxuICAgICAgICB9LFxuICAgICAgICB0eXBlOiAnVW5mcmVlemVCYWxhbmNlVjJDb250cmFjdCcsXG4gICAgICB9LFxuICAgIF0sXG4gICAgcmVmX2Jsb2NrX2J5dGVzOiAnNjdiOScsXG4gICAgcmVmX2Jsb2NrX2hhc2g6ICczYWVmODgwM2MxYWNlYjAzJyxcbiAgICBleHBpcmF0aW9uOiAxNzQ1MzEyNjc2MDAwLFxuICAgIHRpbWVzdGFtcDogMTc0NTMxMjYxNzkxNyxcbiAgfSxcbiAgcmF3X2RhdGFfaGV4OlxuICAgICcwYTAyNjdiOTIyMDgzYWVmODgwM2MxYWNlYjAzNDBhMGYxZjdlNWU1MzI1YTViMDgzNzEyNTcwYTM2NzQ3OTcwNjUyZTY3NmY2ZjY3NmM2NTYxNzA2OTczMmU2MzZmNmQyZjcwNzI2Zjc0NmY2MzZmNmMyZTU1NmU2NjcyNjU2NTdhNjU0MjYxNmM2MTZlNjM2NTU2MzI0MzZmNmU3NDcyNjE2Mzc0MTIxZDBhMTU0MWU1ZTAwZmMxY2RiMzkyMWI4MzQwYzIwYjJiNjViNTQzYzg0YWExZGQxMGMwODQzZDE4MDE3MGJkYWJmNGU1ZTUzMicsXG59O1xuXG5leHBvcnQgY29uc3QgdmFsaWRXaXRoZHJhd1Vuc2lnbmVkVHggPSB7XG4gIHZpc2libGU6IGZhbHNlLFxuICB0eElEOiAnN2E5ZDM3NTQwZTU2ZjNmNjFlZDBmOTdjZDhhNTIxMzY1MmM5MGM0Yjc1ZGFkODc2ZGE5YzM1MjkxZDIzMTM2NycsXG4gIHJhd19kYXRhOiB7XG4gICAgY29udHJhY3Q6IFtcbiAgICAgIHtcbiAgICAgICAgcGFyYW1ldGVyOiB7XG4gICAgICAgICAgdmFsdWU6IHtcbiAgICAgICAgICAgIG93bmVyX2FkZHJlc3M6ICc0MUU1RTAwRkMxQ0RCMzkyMUI4MzQwQzIwQjJCNjVCNTQzQzg0QUExREQnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHlwZV91cmw6ICd0eXBlLmdvb2dsZWFwaXMuY29tL3Byb3RvY29sLldpdGhkcmF3RXhwaXJlVW5mcmVlemVDb250cmFjdCcsXG4gICAgICAgIH0sXG4gICAgICAgIHR5cGU6ICdXaXRoZHJhd0V4cGlyZVVuZnJlZXplQ29udHJhY3QnLFxuICAgICAgfSxcbiAgICBdLFxuICAgIHJlZl9ibG9ja19ieXRlczogJzViNGMnLFxuICAgIHJlZl9ibG9ja19oYXNoOiAnYzk4OWEyMTNhODYxYzJhMScsXG4gICAgZXhwaXJhdGlvbjogMTcxNDA4ODQwMDAwMCxcbiAgICB0aW1lc3RhbXA6IDE3MTQwMzExMjgyNTMsXG4gIH0sXG4gIHJhd19kYXRhX2hleDpcbiAgICAnMGEwMjViNGMyMjA4Yzk4OWEyMTNhODYxYzJhMTQwYzBjMWRlZThmMzBkNWE2NjA4MDExMjYyMGEzMjc0Nzk3MDY1MmU2NzZmNmY2NzZjNjU2MTcwNjk3MzJlNjM2ZjZkMmY3MDcyNmY3NDZmNjM2ZjZjMmU1NzY5NzQ2ODY0NzI2MTc3NDU3ODcwNjk3MjY1NTU2ZTY2NzI2NTY1N2E2NTQzNmY2ZTc0NzI2MTYzNzQxMjI4MGExNTQxZTVlMDBmYzFjZGIzOTIxYjgzNDBjMjBiMmI2NWI1NDNjODRhYTFkZDcwZmRlOGYzZThmMzBkJyxcbn07XG4iXX0=