@macedon-technologies/batman 1.19.0 → 1.19.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.jsii CHANGED
@@ -1247,6 +1247,6 @@
1247
1247
  "symbolId": "src/WorkflowAutoDiscover:WorkflowAutoDiscover"
1248
1248
  }
1249
1249
  },
1250
- "version": "1.19.0",
1251
- "fingerprint": "YK8nux4A48pjRN5mPgxLQhHVdw6KIrDgV+mum9WI91Y="
1250
+ "version": "1.19.1",
1251
+ "fingerprint": "hsCJ7FjeHZGtG1ANnVIs99/2pLhPhduL6dJn2LXps48="
1252
1252
  }
@@ -97,7 +97,7 @@ export class Api extends Construct {
97
97
 
98
98
  protected createLambdaFunction() {
99
99
  this.lambdaFunction = new NodejsFunction(this, 'Function', {
100
- runtime: Runtime.NODEJS_20_X,
100
+ runtime: Runtime.NODEJS_24_X,
101
101
  timeout: Duration.seconds(30),
102
102
  entry: join(__dirname, 'handler/Api.Function.ts'),
103
103
  vpc: this.props.vpc,
@@ -178,4 +178,4 @@ export class Api extends Construct {
178
178
  }
179
179
  }
180
180
  exports.ApiConstructFile = ApiConstructFile;
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpQ29uc3RydWN0RmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9BcGlDb25zdHJ1Y3RGaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFvQztBQUd2QixRQUFBLGlDQUFpQyxHQUFHLGtDQUFrQyxDQUFDO0FBV3BGLE1BQWEsZ0JBQWlCLFNBQVEsbUJBQVU7SUFDOUMsWUFBWSxPQUE0QixFQUFFLFVBQW1DLEVBQUU7UUFDN0UsTUFBTSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsdUJBQXVCLElBQUkseUNBQWlDLENBQUM7UUFDckcsS0FBSyxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRTtZQUN0QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzRCQTBFWSx1QkFBdUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBNEZsRDtTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTdLRCw0Q0E2S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0FVVEhPUklaRVJfT0JKRUNUX1ZFUlNJT04gPSAnc2thT290ZnBLOGw4QmJRZ29OeVRZTzNNWjVhQS4zeGwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUNvbnN0cnVjdEZpbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBTMyBvYmplY3QgdmVyc2lvbiBvZiB0aGUgY2xlcmstYXV0aG9yaXplciBMYW1iZGEgZGVwbG95bWVudCBwYWNrYWdlIHRvIHBpbi5cbiAgICpcbiAgICogQGRlZmF1bHQgJ3NrYU9vdGZwSzhsOEJiUWdvTnlUWU8zTVo1YUEuM3hsJ1xuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yaXplck9iamVjdFZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBBcGlDb25zdHJ1Y3RGaWxlIGV4dGVuZHMgU2FtcGxlRmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsIG9wdGlvbnM6IEFwaUNvbnN0cnVjdEZpbGVPcHRpb25zID0ge30pIHtcbiAgICBjb25zdCBhdXRob3JpemVyT2JqZWN0VmVyc2lvbiA9IG9wdGlvbnMuYXV0aG9yaXplck9iamVjdFZlcnNpb24gPz8gREVGQVVMVF9BVVRIT1JJWkVSX09CSkVDVF9WRVJTSU9OO1xuICAgIHN1cGVyKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9BcGkudHMnLCB7XG4gICAgICBjb250ZW50czogYGltcG9ydCB7IGpvaW4gfSBmcm9tICdwYXRoJztcbmltcG9ydCB7IFJ1c3RGdW5jdGlvbiB9IGZyb20gJ0BjZGtsYWJzL2F3cy1sYW1iZGEtcnVzdCc7XG5pbXBvcnQgeyBTZWNyZXQgfSBmcm9tICdAbWF0dGhld2JvbmlnL3NlY3JldCc7XG5pbXBvcnQgeyBEdXJhdGlvbiwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBFbmRwb2ludFR5cGUsIExhbWJkYUludGVncmF0aW9uLCBSZXN0QXBpLCBUb2tlbkF1dGhvcml6ZXIgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheSc7XG5pbXBvcnQgeyBJVnBjIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgeyBBbnlQcmluY2lwYWwsIEVmZmVjdCwgUG9saWN5RG9jdW1lbnQsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgQXJjaGl0ZWN0dXJlLCBTM0NvZGVWMiwgRnVuY3Rpb24gYXMgTGFtYmRhRnVuY3Rpb24sIFJ1bnRpbWUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IE5vZGVqc0Z1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanMnO1xuaW1wb3J0IHsgQnVja2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBOOE5fRU5EUE9JTlQsIE44Tl9KV1RfS0VZIH0gZnJvbSAnLi9oYW5kbGVyL0FwaS5GdW5jdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBpUHJvcHMge1xuICByZWFkb25seSBjbG91ZEZyb250T3JpZ2luUmVxdWVzdFBvbGljeUlkPzogc3RyaW5nO1xuICByZWFkb25seSB2cGM6IElWcGM7XG4gIHJlYWRvbmx5IGNsZXJrSndrc1VybDogc3RyaW5nO1xuICByZWFkb25seSBuOG5FbmRwb2ludDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXBpIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlc3RBcGk6IFJlc3RBcGk7XG4gIHB1YmxpYyBsYW1iZGFGdW5jdGlvbjogTGFtYmRhRnVuY3Rpb247XG5cbiAgcHJpdmF0ZSBhdXRob3JpemVyRnVuY3Rpb246IFJ1c3RGdW5jdGlvbjtcbiAgcHJpdmF0ZSBuOG5Kd3RLZXlTZWNyZXQ6IFNlY3JldDtcbiAgcHJpdmF0ZSBhdXRob3JpemVyOiBUb2tlbkF1dGhvcml6ZXI7XG4gIHByaXZhdGUgY2xlcmtBdXRoU2VjcmV0OiBTZWNyZXQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJpdmF0ZSBwcm9wczogQXBpUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG5cbiAgICB0aGlzLmNyZWF0ZU44Tkp3dFNlY3JldCgpO1xuICAgIGlmICghdGhpcy5uOG5Kd3RLZXlTZWNyZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBuOG4gSldUIGtleSBzZWNyZXQnKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZUNsZXJrQXV0aFNlY3JldCgpO1xuICAgIGlmICghdGhpcy5jbGVya0F1dGhTZWNyZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBDbGVyayBhdXRoIHNlY3JldCcpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlTGFtYmRhRnVuY3Rpb24oKTtcbiAgICBpZiAoIXRoaXMubGFtYmRhRnVuY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBsYW1iZGEgZnVuY3Rpb24nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZUF1dGhvcml6ZXJGdW5jdGlvbigpO1xuICAgIGlmICghdGhpcy5hdXRob3JpemVyRnVuY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBhdXRob3JpemVyIGZ1bmN0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVSZXN0QXBpKCk7XG4gICAgaWYgKCF0aGlzLnJlc3RBcGkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBSRVNUIEFQSScpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQXV0aG9yaXplcigpO1xuICAgIGlmICghdGhpcy5hdXRob3JpemVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgYXV0aG9yaXplcicpO1xuICAgIH1cblxuICAgIHRoaXMuc2V0dXBBcGlJbnRlZ3JhdGlvbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUF1dGhvcml6ZXJGdW5jdGlvbigpIHtcbiAgICB0aGlzLmF1dGhvcml6ZXJGdW5jdGlvbiA9IG5ldyBMYW1iZGFGdW5jdGlvbih0aGlzLCAnQ2xlcmtBdXRob3JpemVySGFuZGxlcicsIHtcbiAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuUFJPVklERURfQUwyMDIzLFxuICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcygxMCksXG4gICAgICBjb2RlOiBTM0NvZGVWMi5mcm9tQnVja2V0VjIoXG4gICAgICAgIEJ1Y2tldC5mcm9tQnVja2V0TmFtZSh0aGlzLCAnTWFjZWRvblBsYXRmb3JtQnVja2V0JywgJ21hY2Vkb24tcGxhdGZvcm0tY29tbW9uLTAxNTk1NTgxNzI2MycpLFxuICAgICAgICAnbGFtYmRhL2NsZXJrLWF1dGhvcml6ZXItYXJtNjQtbGF0ZXN0LnppcCcsXG4gICAgICAgIHsgb2JqZWN0VmVyc2lvbjogJyR7YXV0aG9yaXplck9iamVjdFZlcnNpb259JyB9LFxuICAgICAgKSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIENMRVJLX0pXS1NfVVJMOiB0aGlzLnByb3BzLmNsZXJrSndrc1VybCxcbiAgICAgIH0sXG4gICAgICBoYW5kbGVyOiAnaXRzcnVzdGJhYnknLFxuICAgICAgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZU44Tkp3dFNlY3JldCgpIHtcbiAgICB0aGlzLm44bkp3dEtleVNlY3JldCA9IG5ldyBTZWNyZXQodGhpcywgJ044bkp3dEtleVNlY3JldCcsIHt9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVMYW1iZGFGdW5jdGlvbigpIHtcbiAgICB0aGlzLmxhbWJkYUZ1bmN0aW9uID0gbmV3IE5vZGVqc0Z1bmN0aW9uKHRoaXMsICdGdW5jdGlvbicsIHtcbiAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuTk9ERUpTXzIwX1gsXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDMwKSxcbiAgICAgIGVudHJ5OiBqb2luKF9fZGlybmFtZSwgJ2hhbmRsZXIvQXBpLkZ1bmN0aW9uLnRzJyksXG4gICAgICB2cGM6IHRoaXMucHJvcHMudnBjLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgW044Tl9KV1RfS0VZXTogdGhpcy5uOG5Kd3RLZXlTZWNyZXQuc2VjcmV0TmFtZSxcbiAgICAgICAgW044Tl9FTkRQT0lOVF06IHRoaXMucHJvcHMubjhuRW5kcG9pbnQsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHRoaXMubjhuSnd0S2V5U2VjcmV0LmdyYW50UmVhZCh0aGlzLmxhbWJkYUZ1bmN0aW9uKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVSZXN0QXBpKCkge1xuICAgIHRoaXMucmVzdEFwaSA9IG5ldyBSZXN0QXBpKHRoaXMsICdSZXN0QXBpJywge1xuICAgICAgcmVzdEFwaU5hbWU6ICdtdnAtdWktYXBpJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQVBJIGZvciBNVlAgVUkgYXBwbGljYXRpb24nLFxuICAgICAgZW5kcG9pbnRUeXBlczogW0VuZHBvaW50VHlwZS5SRUdJT05BTF0sXG4gICAgICBwb2xpY3k6IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGVmZmVjdDogRWZmZWN0LkRFTlksXG4gICAgICAgICAgICBwcmluY2lwYWxzOiBbbmV3IEFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBTdHJpbmdOb3RFcXVhbHM6IHtcbiAgICAgICAgICAgICAgICAnYXdzOnVzZXJhZ2VudCc6ICdBbWF6b24gQ2xvdWRGcm9udCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICAgICAgICBwcmluY2lwYWxzOiBbbmV3IEFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAgICAgICAnYXdzOnVzZXJhZ2VudCc6ICdBbWF6b24gQ2xvdWRGcm9udCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQXV0aG9yaXplcigpIHtcbiAgICB0aGlzLmF1dGhvcml6ZXIgPSBuZXcgVG9rZW5BdXRob3JpemVyKHRoaXMsICdDbGVya0F1dGhvcml6ZXInLCB7XG4gICAgICBoYW5kbGVyOiB0aGlzLmF1dGhvcml6ZXJGdW5jdGlvbixcbiAgICAgIGlkZW50aXR5U291cmNlOiAnbWV0aG9kLnJlcXVlc3QuaGVhZGVyLkF1dGhvcml6YXRpb24nLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldHVwQXBpSW50ZWdyYXRpb24oKSB7XG4gICAgY29uc3QgaW50ZWdyYXRpb24gPSBuZXcgTGFtYmRhSW50ZWdyYXRpb24odGhpcy5sYW1iZGFGdW5jdGlvbik7XG4gICAgdGhpcy5yZXN0QXBpLnJvb3QuYWRkUHJveHkoe1xuICAgICAgZGVmYXVsdEludGVncmF0aW9uOiBpbnRlZ3JhdGlvbixcbiAgICAgIGFueU1ldGhvZDogdHJ1ZSxcbiAgICAgIGRlZmF1bHRNZXRob2RPcHRpb25zOiB7XG4gICAgICAgIGF1dGhvcml6ZXI6IHRoaXMuYXV0aG9yaXplcixcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNsZXJrQXV0aFNlY3JldCgpIHtcbiAgICB0aGlzLmNsZXJrQXV0aFNlY3JldCA9IG5ldyBTZWNyZXQodGhpcywgJ0NsZXJrQXV0aFNlY3JldCcsIHtcbiAgICAgIGdlbmVyYXRlU2VjcmV0U3RyaW5nOiB7XG4gICAgICAgIHNlY3JldFN0cmluZ1RlbXBsYXRlOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogJycsXG4gICAgICAgICAgY2xlcmtKd2tzVXJsOiAnJyxcbiAgICAgICAgfSksXG4gICAgICAgIGdlbmVyYXRlU3RyaW5nS2V5OiAnY2xlcmtQdWJsaXNoYWJsZUtleScsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpQ29uc3RydWN0RmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9BcGlDb25zdHJ1Y3RGaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFvQztBQUd2QixRQUFBLGlDQUFpQyxHQUFHLGtDQUFrQyxDQUFDO0FBV3BGLE1BQWEsZ0JBQWlCLFNBQVEsbUJBQVU7SUFDOUMsWUFBWSxPQUE0QixFQUFFLFVBQW1DLEVBQUU7UUFDN0UsTUFBTSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsdUJBQXVCLElBQUkseUNBQWlDLENBQUM7UUFDckcsS0FBSyxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRTtZQUN0QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzRCQTBFWSx1QkFBdUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBNEZsRDtTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTdLRCw0Q0E2S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0FVVEhPUklaRVJfT0JKRUNUX1ZFUlNJT04gPSAnc2thT290ZnBLOGw4QmJRZ29OeVRZTzNNWjVhQS4zeGwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUNvbnN0cnVjdEZpbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBTMyBvYmplY3QgdmVyc2lvbiBvZiB0aGUgY2xlcmstYXV0aG9yaXplciBMYW1iZGEgZGVwbG95bWVudCBwYWNrYWdlIHRvIHBpbi5cbiAgICpcbiAgICogQGRlZmF1bHQgJ3NrYU9vdGZwSzhsOEJiUWdvTnlUWU8zTVo1YUEuM3hsJ1xuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yaXplck9iamVjdFZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBBcGlDb25zdHJ1Y3RGaWxlIGV4dGVuZHMgU2FtcGxlRmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsIG9wdGlvbnM6IEFwaUNvbnN0cnVjdEZpbGVPcHRpb25zID0ge30pIHtcbiAgICBjb25zdCBhdXRob3JpemVyT2JqZWN0VmVyc2lvbiA9IG9wdGlvbnMuYXV0aG9yaXplck9iamVjdFZlcnNpb24gPz8gREVGQVVMVF9BVVRIT1JJWkVSX09CSkVDVF9WRVJTSU9OO1xuICAgIHN1cGVyKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9BcGkudHMnLCB7XG4gICAgICBjb250ZW50czogYGltcG9ydCB7IGpvaW4gfSBmcm9tICdwYXRoJztcbmltcG9ydCB7IFJ1c3RGdW5jdGlvbiB9IGZyb20gJ0BjZGtsYWJzL2F3cy1sYW1iZGEtcnVzdCc7XG5pbXBvcnQgeyBTZWNyZXQgfSBmcm9tICdAbWF0dGhld2JvbmlnL3NlY3JldCc7XG5pbXBvcnQgeyBEdXJhdGlvbiwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBFbmRwb2ludFR5cGUsIExhbWJkYUludGVncmF0aW9uLCBSZXN0QXBpLCBUb2tlbkF1dGhvcml6ZXIgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheSc7XG5pbXBvcnQgeyBJVnBjIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgeyBBbnlQcmluY2lwYWwsIEVmZmVjdCwgUG9saWN5RG9jdW1lbnQsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgQXJjaGl0ZWN0dXJlLCBTM0NvZGVWMiwgRnVuY3Rpb24gYXMgTGFtYmRhRnVuY3Rpb24sIFJ1bnRpbWUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IE5vZGVqc0Z1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanMnO1xuaW1wb3J0IHsgQnVja2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBOOE5fRU5EUE9JTlQsIE44Tl9KV1RfS0VZIH0gZnJvbSAnLi9oYW5kbGVyL0FwaS5GdW5jdGlvbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBpUHJvcHMge1xuICByZWFkb25seSBjbG91ZEZyb250T3JpZ2luUmVxdWVzdFBvbGljeUlkPzogc3RyaW5nO1xuICByZWFkb25seSB2cGM6IElWcGM7XG4gIHJlYWRvbmx5IGNsZXJrSndrc1VybDogc3RyaW5nO1xuICByZWFkb25seSBuOG5FbmRwb2ludDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXBpIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHJlc3RBcGk6IFJlc3RBcGk7XG4gIHB1YmxpYyBsYW1iZGFGdW5jdGlvbjogTGFtYmRhRnVuY3Rpb247XG5cbiAgcHJpdmF0ZSBhdXRob3JpemVyRnVuY3Rpb246IFJ1c3RGdW5jdGlvbjtcbiAgcHJpdmF0ZSBuOG5Kd3RLZXlTZWNyZXQ6IFNlY3JldDtcbiAgcHJpdmF0ZSBhdXRob3JpemVyOiBUb2tlbkF1dGhvcml6ZXI7XG4gIHByaXZhdGUgY2xlcmtBdXRoU2VjcmV0OiBTZWNyZXQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJpdmF0ZSBwcm9wczogQXBpUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG5cbiAgICB0aGlzLmNyZWF0ZU44Tkp3dFNlY3JldCgpO1xuICAgIGlmICghdGhpcy5uOG5Kd3RLZXlTZWNyZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBuOG4gSldUIGtleSBzZWNyZXQnKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZUNsZXJrQXV0aFNlY3JldCgpO1xuICAgIGlmICghdGhpcy5jbGVya0F1dGhTZWNyZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBDbGVyayBhdXRoIHNlY3JldCcpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlTGFtYmRhRnVuY3Rpb24oKTtcbiAgICBpZiAoIXRoaXMubGFtYmRhRnVuY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBsYW1iZGEgZnVuY3Rpb24nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZUF1dGhvcml6ZXJGdW5jdGlvbigpO1xuICAgIGlmICghdGhpcy5hdXRob3JpemVyRnVuY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBhdXRob3JpemVyIGZ1bmN0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVSZXN0QXBpKCk7XG4gICAgaWYgKCF0aGlzLnJlc3RBcGkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBSRVNUIEFQSScpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQXV0aG9yaXplcigpO1xuICAgIGlmICghdGhpcy5hdXRob3JpemVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgYXV0aG9yaXplcicpO1xuICAgIH1cblxuICAgIHRoaXMuc2V0dXBBcGlJbnRlZ3JhdGlvbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUF1dGhvcml6ZXJGdW5jdGlvbigpIHtcbiAgICB0aGlzLmF1dGhvcml6ZXJGdW5jdGlvbiA9IG5ldyBMYW1iZGFGdW5jdGlvbih0aGlzLCAnQ2xlcmtBdXRob3JpemVySGFuZGxlcicsIHtcbiAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuUFJPVklERURfQUwyMDIzLFxuICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcygxMCksXG4gICAgICBjb2RlOiBTM0NvZGVWMi5mcm9tQnVja2V0VjIoXG4gICAgICAgIEJ1Y2tldC5mcm9tQnVja2V0TmFtZSh0aGlzLCAnTWFjZWRvblBsYXRmb3JtQnVja2V0JywgJ21hY2Vkb24tcGxhdGZvcm0tY29tbW9uLTAxNTk1NTgxNzI2MycpLFxuICAgICAgICAnbGFtYmRhL2NsZXJrLWF1dGhvcml6ZXItYXJtNjQtbGF0ZXN0LnppcCcsXG4gICAgICAgIHsgb2JqZWN0VmVyc2lvbjogJyR7YXV0aG9yaXplck9iamVjdFZlcnNpb259JyB9LFxuICAgICAgKSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIENMRVJLX0pXS1NfVVJMOiB0aGlzLnByb3BzLmNsZXJrSndrc1VybCxcbiAgICAgIH0sXG4gICAgICBoYW5kbGVyOiAnaXRzcnVzdGJhYnknLFxuICAgICAgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUuQVJNXzY0LFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZU44Tkp3dFNlY3JldCgpIHtcbiAgICB0aGlzLm44bkp3dEtleVNlY3JldCA9IG5ldyBTZWNyZXQodGhpcywgJ044bkp3dEtleVNlY3JldCcsIHt9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVMYW1iZGFGdW5jdGlvbigpIHtcbiAgICB0aGlzLmxhbWJkYUZ1bmN0aW9uID0gbmV3IE5vZGVqc0Z1bmN0aW9uKHRoaXMsICdGdW5jdGlvbicsIHtcbiAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuTk9ERUpTXzI0X1gsXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDMwKSxcbiAgICAgIGVudHJ5OiBqb2luKF9fZGlybmFtZSwgJ2hhbmRsZXIvQXBpLkZ1bmN0aW9uLnRzJyksXG4gICAgICB2cGM6IHRoaXMucHJvcHMudnBjLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgW044Tl9KV1RfS0VZXTogdGhpcy5uOG5Kd3RLZXlTZWNyZXQuc2VjcmV0TmFtZSxcbiAgICAgICAgW044Tl9FTkRQT0lOVF06IHRoaXMucHJvcHMubjhuRW5kcG9pbnQsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHRoaXMubjhuSnd0S2V5U2VjcmV0LmdyYW50UmVhZCh0aGlzLmxhbWJkYUZ1bmN0aW9uKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVSZXN0QXBpKCkge1xuICAgIHRoaXMucmVzdEFwaSA9IG5ldyBSZXN0QXBpKHRoaXMsICdSZXN0QXBpJywge1xuICAgICAgcmVzdEFwaU5hbWU6ICdtdnAtdWktYXBpJyxcbiAgICAgIGRlc2NyaXB0aW9uOiAnQVBJIGZvciBNVlAgVUkgYXBwbGljYXRpb24nLFxuICAgICAgZW5kcG9pbnRUeXBlczogW0VuZHBvaW50VHlwZS5SRUdJT05BTF0sXG4gICAgICBwb2xpY3k6IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGVmZmVjdDogRWZmZWN0LkRFTlksXG4gICAgICAgICAgICBwcmluY2lwYWxzOiBbbmV3IEFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBTdHJpbmdOb3RFcXVhbHM6IHtcbiAgICAgICAgICAgICAgICAnYXdzOnVzZXJhZ2VudCc6ICdBbWF6b24gQ2xvdWRGcm9udCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICAgICAgICBwcmluY2lwYWxzOiBbbmV3IEFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAgICAgICAnYXdzOnVzZXJhZ2VudCc6ICdBbWF6b24gQ2xvdWRGcm9udCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQXV0aG9yaXplcigpIHtcbiAgICB0aGlzLmF1dGhvcml6ZXIgPSBuZXcgVG9rZW5BdXRob3JpemVyKHRoaXMsICdDbGVya0F1dGhvcml6ZXInLCB7XG4gICAgICBoYW5kbGVyOiB0aGlzLmF1dGhvcml6ZXJGdW5jdGlvbixcbiAgICAgIGlkZW50aXR5U291cmNlOiAnbWV0aG9kLnJlcXVlc3QuaGVhZGVyLkF1dGhvcml6YXRpb24nLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldHVwQXBpSW50ZWdyYXRpb24oKSB7XG4gICAgY29uc3QgaW50ZWdyYXRpb24gPSBuZXcgTGFtYmRhSW50ZWdyYXRpb24odGhpcy5sYW1iZGFGdW5jdGlvbik7XG4gICAgdGhpcy5yZXN0QXBpLnJvb3QuYWRkUHJveHkoe1xuICAgICAgZGVmYXVsdEludGVncmF0aW9uOiBpbnRlZ3JhdGlvbixcbiAgICAgIGFueU1ldGhvZDogdHJ1ZSxcbiAgICAgIGRlZmF1bHRNZXRob2RPcHRpb25zOiB7XG4gICAgICAgIGF1dGhvcml6ZXI6IHRoaXMuYXV0aG9yaXplcixcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNsZXJrQXV0aFNlY3JldCgpIHtcbiAgICB0aGlzLmNsZXJrQXV0aFNlY3JldCA9IG5ldyBTZWNyZXQodGhpcywgJ0NsZXJrQXV0aFNlY3JldCcsIHtcbiAgICAgIGdlbmVyYXRlU2VjcmV0U3RyaW5nOiB7XG4gICAgICAgIHNlY3JldFN0cmluZ1RlbXBsYXRlOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogJycsXG4gICAgICAgICAgY2xlcmtKd2tzVXJsOiAnJyxcbiAgICAgICAgfSksXG4gICAgICAgIGdlbmVyYXRlU3RyaW5nS2V5OiAnY2xlcmtQdWJsaXNoYWJsZUtleScsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -12,7 +12,7 @@ const SoftwareFactoryFiles_1 = require("./SoftwareFactoryFiles");
12
12
  const utils_1 = require("./utils");
13
13
  const ViteReactProject_1 = require("./ViteReactProject");
14
14
  class BatmanProject extends awscdk_1.AwsCdkTypeScriptApp {
15
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.19.0" };
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.19.1" };
16
16
  constructor(options) {
17
17
  super({
18
18
  ...options,
@@ -12,7 +12,7 @@ const SoftwareFactoryFiles_1 = require("./SoftwareFactoryFiles");
12
12
  const utils_1 = require("./utils");
13
13
  const ViteReactProject_1 = require("./ViteReactProject");
14
14
  class BootcampProject extends awscdk_1.AwsCdkTypeScriptApp {
15
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.19.0" };
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.19.1" };
16
16
  constructor(options) {
17
17
  super({
18
18
  ...options,
@@ -4,7 +4,7 @@ exports.CodeOwnersFile = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const projen_1 = require("projen");
6
6
  class CodeOwnersFile extends projen_1.TextFile {
7
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.19.0" };
7
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.19.1" };
8
8
  constructor(project, options = {}) {
9
9
  const defaultOwners = ['* @macedon-technologies/platform', '* @macedon-technologies/ai-development-team'];
10
10
  const allOwners = [...defaultOwners, ...(options.additionalOwners || [])];
@@ -7,7 +7,7 @@ const javascript_1 = require("projen/lib/javascript");
7
7
  const utils_1 = require("./utils");
8
8
  const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
9
9
  class ProductionDeployWorkflow extends projen_1.YamlFile {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.19.0" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.19.1" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -31,7 +31,7 @@ const GITHUB_OWNER = 'macedon-technologies';
31
31
  * workflows that wire them together) is templated.
32
32
  */
33
33
  class SoftwareFactoryFiles {
34
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.SoftwareFactoryFiles", version: "1.19.0" };
34
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.SoftwareFactoryFiles", version: "1.19.1" };
35
35
  constructor(project, options) {
36
36
  const { repoName, actionVersions } = options;
37
37
  const baseBranch = options.baseBranch || 'main';
@@ -7,7 +7,7 @@ const javascript_1 = require("projen/lib/javascript");
7
7
  const utils_1 = require("./utils");
8
8
  const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
9
9
  class StagingDeployWorkflow extends projen_1.YamlFile {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.19.0" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.19.1" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -39,7 +39,7 @@ const fs = __importStar(require("fs"));
39
39
  const path = __importStar(require("path"));
40
40
  const projen_1 = require("projen");
41
41
  class WorkflowAutoDiscover extends projen_1.Component {
42
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.19.0" };
42
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.19.1" };
43
43
  constructor(project) {
44
44
  super(project);
45
45
  }
@@ -79,7 +79,7 @@ class WorkflowProviderFile extends projen_1.TextFile {
79
79
  '',
80
80
  '',
81
81
  " const lambda = this.handler = new Function(this, 'Handler', {",
82
- ' runtime: Runtime.NODEJS_22_X,',
82
+ ' runtime: Runtime.NODEJS_24_X,',
83
83
  " handler: 'index.handler',",
84
84
  ' timeout: Duration.minutes(5),',
85
85
  ' code: Code.fromInline(`',
@@ -305,4 +305,4 @@ class WorkflowProviderFile extends projen_1.TextFile {
305
305
  }
306
306
  }
307
307
  exports.WorkflowProviderFile = WorkflowProviderFile;
308
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29ya2Zsb3dQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Xb3JrZmxvd1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFrQztBQUdsQyxNQUFhLG9CQUFxQixTQUFRLGlCQUFRO0lBQ2hELFlBQVksT0FBNEI7UUFDdEMsS0FBSyxDQUFDLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRTtZQUNuRCxNQUFNLEVBQUUsSUFBSTtZQUNaLFFBQVEsRUFBRSxJQUFJO1lBQ2QsS0FBSyxFQUFFO2dCQUNMLG9DQUFvQztnQkFDcEMsOEJBQThCO2dCQUM5QiwyRkFBMkY7Z0JBQzNGLGdFQUFnRTtnQkFDaEUsbUVBQW1FO2dCQUNuRSwyREFBMkQ7Z0JBQzNELDBEQUEwRDtnQkFDMUQseUNBQXlDO2dCQUN6QywyQ0FBMkM7Z0JBQzNDLEVBQUU7Z0JBQ0YsZ0NBQWdDO2dCQUNoQyxPQUFPO2dCQUNQLDJFQUEyRTtnQkFDM0UsT0FBTztnQkFDUCw4QkFBOEI7Z0JBQzlCLEVBQUU7Z0JBQ0YsT0FBTztnQkFDUCxvREFBb0Q7Z0JBQ3BELE9BQU87Z0JBQ1AsMEJBQTBCO2dCQUMxQixFQUFFO2dCQUNGLE9BQU87Z0JBQ1Asd0NBQXdDO2dCQUN4QyxPQUFPO2dCQUNQLDJCQUEyQjtnQkFDM0IsR0FBRztnQkFDSCxFQUFFO2dCQUNGLDBDQUEwQztnQkFDMUMsT0FBTztnQkFDUCxnRUFBZ0U7Z0JBQ2hFLE9BQU87Z0JBQ1Asc0NBQXNDO2dCQUN0QyxFQUFFO2dCQUNGLE9BQU87Z0JBQ1AsMkRBQTJEO2dCQUMzRCxRQUFRO2dCQUNSLGdEQUFnRDtnQkFDaEQscUNBQXFDO2dCQUNyQyxRQUFRO2dCQUNSLE9BQU87Z0JBQ1AsNkJBQTZCO2dCQUM3QixFQUFFO2dCQUNGLE9BQU87Z0JBQ1AsK0dBQStHO2dCQUMvRyxpREFBaUQ7Z0JBQ2pELE9BQU87Z0JBQ1AsMENBQTBDO2dCQUMxQyxHQUFHO2dCQUNILEVBQUU7Z0JBQ0Ys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cEMsK0ZBQStGO2dCQUMvRixTQUFTO2dCQUNULEtBQUs7Z0JBQ0wsRUFBRTtnQkFDRixFQUFFO2dCQUNGLEdBQUc7Z0JBQ0gsRUFBRTtnQkFDRix5Q0FBeUM7Z0JBQ3pDLGlDQUFpQztnQkFDakMscUJBQXFCO2dCQUNyQixrRkFBa0Y7Z0JBQ2xGLHNCQUFzQjtnQkFDdEIsV0FBVztnQkFDWCw0QkFBNEI7Z0JBQzVCLGdEQUFnRDtnQkFDaEQsZ0JBQWdCO2dCQUNoQiwwQkFBMEI7Z0JBQzFCLE9BQU87Z0JBQ1AsRUFBRTtnQkFDRiwrQkFBK0I7Z0JBQy9CLGdEQUFnRDtnQkFDaEQsS0FBSztnQkFDTCxHQUFHO2dCQUNILEVBQUU7Z0JBQ0YsNEVBQTRFO2dCQUM1RSxvQ0FBb0M7Z0JBQ3BDLHNCQUFzQjtnQkFDdEIsK0NBQStDO2dCQUMvQyxpQ0FBaUM7Z0JBQ2pDLEtBQUs7Z0JBQ0wsMkNBQTJDO2dCQUMzQyxHQUFHO2dCQUNILEVBQUU7YUFDSDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTdTRCxvREE2U0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXh0RmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuXG5leHBvcnQgY2xhc3MgV29ya2Zsb3dQcm92aWRlckZpbGUgZXh0ZW5kcyBUZXh0RmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHApIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvV29ya2Zsb3dQcm92aWRlci50cycsIHtcbiAgICAgIG1hcmtlcjogdHJ1ZSxcbiAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgbGluZXM6IFtcbiAgICAgICAgXCJpbXBvcnQgeyByZWFkRmlsZVN5bmMgfSBmcm9tICdmcyc7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgam9pbiB9IGZyb20gJ3BhdGgnO1wiLFxuICAgICAgICBcImltcG9ydCB7IEFybiwgQ2ZuT3V0cHV0LCBDdXN0b21SZXNvdXJjZSwgRHVyYXRpb24sIFJlZmVyZW5jZSwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgRWZmZWN0LCBQb2xpY3lTdGF0ZW1lbnQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcIixcbiAgICAgICAgXCJpbXBvcnQgeyBDb2RlLCBGdW5jdGlvbiwgUnVudGltZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1wiLFxuICAgICAgICBcImltcG9ydCB7IElTZWNyZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXInO1wiLFxuICAgICAgICBcImltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgSlNPTlBhdGggfSBmcm9tICdqc29ucGF0aC1wbHVzJztcIixcbiAgICAgICAgJycsXG4gICAgICAgICdleHBvcnQgaW50ZXJmYWNlIFJlcGxhY2VtZW50IHsnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICBcIiAgICogVGhlICduYW1lJyBmcm9tIHRoZSAnbm9kZScgdGhhdCB5b3UnZCBsaWtlIHRvIG1ha2UgYSByZXBsYWNlbWVudCBvbi5cIixcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgbm9kZU5hbWU6IHN0cmluZzsnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgLyoqJyxcbiAgICAgICAgJyAgICogQSBkb3RwYXRoIHRvIHRoZSBmaWVsZCBvbiB0aGUgbm9kZSB0byBjaGFuZ2UuJyxcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgcGF0aDogc3RyaW5nOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICAnICAgKiBUaGUgdmFsdWUgdG8gY2hhbmdlIHRoZSBmaWVsZCB0by4nLFxuICAgICAgICAnICAgKi8nLFxuICAgICAgICAnICByZWFkb25seSB2YWx1ZTogc3RyaW5nOycsXG4gICAgICAgICd9JyxcbiAgICAgICAgJycsXG4gICAgICAgICdleHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93UHJvdmlkZXJQcm9wcyB7JyxcbiAgICAgICAgJyAgLyoqJyxcbiAgICAgICAgJyAgICogVGhlIGZ1bGwgcGF0aCB0byB0aGUgd29ya2Zsb3cgLkpTT04gZmlsZSB5b3Ugd2FudCB0byBhZGQuJyxcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgd29ya2Zsb3dGaWxlUGF0aDogc3RyaW5nOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICAnICAgKiBBbiBBV1MgU2VjcmV0IHRoYXQgaGFzIHRoZSBmb2xsb3dpbmcgSlNPTiBzdHJ1Y3R1cmU6JyxcbiAgICAgICAgJyAgICogeycsXG4gICAgICAgICcgICAqICAgXCJ1cmxcIjogXCJodHRwczovL3lvdXItbjhuLWluc3RhbmNlLmNvbVwiLCcsXG4gICAgICAgICcgICAqICAgXCJhcGlLZXlcIjogXCJ5b3VyLW44bi1hcGkta2V5XCInLFxuICAgICAgICAnICAgKiB9JyxcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgc2VjcmV0OiBJU2VjcmV0OycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICAnICAgKiBBbiBhcnJheSBvZiBSZXBsYWNlbWVudHMgdG8gbWFrZSBhZ2FpbnN0IHRoZSB3b3JrZmxvdy4gVXNlIHRoaXMgdG8gdXBkYXRlIExhbWJkYSBmdW5jdGlvbiBBUk5zIGFuZCBvdGhlcicsXG4gICAgICAgICcgICAqIEFXUy1jb250cm9sbGVkIHJlc291cmNlcyBpbiB5b3VyIHdvcmtmbG93LicsXG4gICAgICAgICcgICAqLycsXG4gICAgICAgICcgIHJlYWRvbmx5IHJlcGxhY2VtZW50cz86IFJlcGxhY2VtZW50W107JyxcbiAgICAgICAgJ30nLFxuICAgICAgICAnJyxcbiAgICAgICAgJ2V4cG9ydCBjbGFzcyBXb3JrZmxvd1Byb3ZpZGVyIGV4dGVuZHMgQ29uc3RydWN0IHsnLFxuICAgICAgICAnICBwdWJsaWMgaGFuZGxlcjogRnVuY3Rpb247JyxcbiAgICAgICAgJyAgcHVibGljIHdlYmhvb2tQYXRoOiBSZWZlcmVuY2U7JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBXb3JrZmxvd1Byb3ZpZGVyUHJvcHMpIHsnLFxuICAgICAgICAnICAgIHN1cGVyKHNjb3BlLCBpZCk7JyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiICAgIGNvbnN0IHdvcmtmbG93Q29udGVudHMgPSByZWFkRmlsZVN5bmMoam9pbihfX2Rpcm5hbWUsICcuLi93b3JrZmxvd3MvYWxmcmVkLmpzb24nKSk7XCIsXG4gICAgICAgIFwiICAgIGNvbnN0IHdvcmtmbG93ID0gSlNPTi5wYXJzZSh3b3JrZmxvd0NvbnRlbnRzLnRvU3RyaW5nKCd1dGY4JykpO1wiLFxuICAgICAgICAnICAgIGxldCBuZXdDb250ZW50czogc3RyaW5nID0gd29ya2Zsb3c7JyxcbiAgICAgICAgJyAgICBpZiAocHJvcHMucmVwbGFjZW1lbnRzKSB7JyxcbiAgICAgICAgJyAgICAgIG5ld0NvbnRlbnRzID0gSlNPTi5zdHJpbmdpZnkocHJvcHMucmVwbGFjZW1lbnRzJyxcbiAgICAgICAgJyAgICAgICAgLnJlZHVjZSgocDogYW55LCBjOiBSZXBsYWNlbWVudCkgPT4geycsXG4gICAgICAgICcgICAgICAgICAgcmVwbGFjZUZpZWxkQnlOb2RlTmFtZShwLCBjLm5vZGVOYW1lLCBjLnBhdGgsIGMudmFsdWUpOycsXG4gICAgICAgICcgICAgICAgICAgcmV0dXJuIHA7JyxcbiAgICAgICAgJyAgICAgICAgfSwgd29ya2Zsb3cpLCcsXG4gICAgICAgICcgICAgICBudWxsLCcsXG4gICAgICAgICcgICAgICAyKTsnLFxuICAgICAgICAnICAgIH0nLFxuICAgICAgICAnJyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiICAgIGNvbnN0IGxhbWJkYSA9IHRoaXMuaGFuZGxlciA9IG5ldyBGdW5jdGlvbih0aGlzLCAnSGFuZGxlcicsIHtcIixcbiAgICAgICAgJyAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuTk9ERUpTXzIyX1gsJyxcbiAgICAgICAgXCIgICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXCIsXG4gICAgICAgICcgICAgICB0aW1lb3V0OiBEdXJhdGlvbi5taW51dGVzKDUpLCcsXG4gICAgICAgICcgICAgICBjb2RlOiBDb2RlLmZyb21JbmxpbmUoYCcsXG4gICAgICAgIFwiY29uc3QgeyBTZWNyZXRzTWFuYWdlckNsaWVudCwgR2V0U2VjcmV0VmFsdWVDb21tYW5kIH0gPSByZXF1aXJlKCdAYXdzLXNkay9jbGllbnQtc2VjcmV0cy1tYW5hZ2VyJyk7XCIsXG4gICAgICAgICcnLFxuICAgICAgICAnZXhwb3J0cy5oYW5kbGVyID0gYXN5bmMgKGV2ZW50KSA9PiB7JyxcbiAgICAgICAgXCIgIGNvbnNvbGUubG9nKCdFdmVudDonLCBKU09OLnN0cmluZ2lmeShldmVudCwgbnVsbCwgMikpO1wiLFxuICAgICAgICAnICAnLFxuICAgICAgICBcIiAgaWYgKGV2ZW50LlJlcXVlc3RUeXBlID09PSAnRGVsZXRlJykge1wiLFxuICAgICAgICBcIiAgICByZXR1cm4geyBQaHlzaWNhbFJlc291cmNlSWQ6IGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCB8fCAnd29ya2Zsb3ctdXBsb2FkZXInIH07XCIsXG4gICAgICAgICcgIH0nLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgdHJ5IHsnLFxuICAgICAgICAnICAgIC8vIEdldCBzZWNyZXQnLFxuICAgICAgICAnICAgIGNvbnN0IHNlY3JldHNDbGllbnQgPSBuZXcgU2VjcmV0c01hbmFnZXJDbGllbnQoe30pOycsXG4gICAgICAgICcgICAgY29uc3Qgc2VjcmV0Q29tbWFuZCA9IG5ldyBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQoeyBTZWNyZXRJZDogcHJvY2Vzcy5lbnYuU0VDUkVUX0FSTiB9KTsnLFxuICAgICAgICAnICAgIGNvbnN0IHNlY3JldFJlc3BvbnNlID0gYXdhaXQgc2VjcmV0c0NsaWVudC5zZW5kKHNlY3JldENvbW1hbmQpOycsXG4gICAgICAgICcgICAgJyxcbiAgICAgICAgJyAgICBjb25zdCBzZWNyZXQgPSBKU09OLnBhcnNlKHNlY3JldFJlc3BvbnNlLlNlY3JldFN0cmluZyk7JyxcbiAgICAgICAgJyAgICBjb25zdCB7IHVybCwgYXBpS2V5IH0gPSBzZWNyZXQ7JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIGNvbnN0IHdvcmtmbG93Q29udGVudCA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5Db250ZW50OycsXG4gICAgICAgICcgICAgY29uc3QgeyBuYW1lLCBub2RlcywgY29ubmVjdGlvbnMsIHNldHRpbmdzIH0gPSBKU09OLnBhcnNlKHdvcmtmbG93Q29udGVudCk7JyxcbiAgICAgICAgJyAgICBjb25zdCB3b3JrZmxvd0RhdGEgPSB7JyxcbiAgICAgICAgJyAgICAgIG5hbWUsJyxcbiAgICAgICAgJyAgICAgIG5vZGVzLCcsXG4gICAgICAgICcgICAgICBjb25uZWN0aW9ucywnLFxuICAgICAgICAnICAgICAgc2V0dGluZ3MsJyxcbiAgICAgICAgJyAgICB9OycsXG4gICAgICAgICcgICAgZGVsZXRlIHdvcmtmbG93RGF0YS5zZXR0aW5ncy5iaW5hcnlNb2RlOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAgIGNvbnN0IGhlYWRlcnMgPSB7JyxcbiAgICAgICAgXCIgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFwiLFxuICAgICAgICBcIiAgICAgICdYLU44Ti1BUEktS0VZJzogYXBpS2V5LFwiLFxuICAgICAgICAnICAgIH07JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIGxldCB3b3JrZmxvd0lkID0gZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkOycsXG4gICAgICAgICcgICAgbGV0IGlzVXBkYXRlID0gZmFsc2U7JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIC8vIFRyeSB0byBnZXQgZXhpc3Rpbmcgd29ya2Zsb3cgaWYgd2UgaGF2ZSBhIHBoeXNpY2FsUmVzb3VyY2VJZCcsXG4gICAgICAgIFwiICAgIGlmICh3b3JrZmxvd0lkICYmIHdvcmtmbG93SWQgIT09ICd3b3JrZmxvdy11cGxvYWRlcicpIHtcIixcbiAgICAgICAgJyAgICAgIHRyeSB7JyxcbiAgICAgICAgJyAgICAgICAgY29uc3QgZ2V0UmVzcG9uc2UgPSBhd2FpdCBmZXRjaChcXFxcYFxcXFwke3VybH0vYXBpL3YxL3dvcmtmbG93cy9cXFxcJHt3b3JrZmxvd0lkfVxcXFxgLCB7JyxcbiAgICAgICAgXCIgICAgICAgICAgbWV0aG9kOiAnR0VUJyxcIixcbiAgICAgICAgJyAgICAgICAgICBoZWFkZXJzLCcsXG4gICAgICAgICcgICAgICAgIH0pOycsXG4gICAgICAgICcgICAgICAgICcsXG4gICAgICAgICcgICAgICAgIGlmIChnZXRSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICAgICAgaXNVcGRhdGUgPSB0cnVlOycsXG4gICAgICAgIFwiICAgICAgICAgIGNvbnNvbGUubG9nKCdGb3VuZCBleGlzdGluZyB3b3JrZmxvdywgd2lsbCB1cGRhdGUnKTtcIixcbiAgICAgICAgJyAgICAgICAgfScsXG4gICAgICAgICcgICAgICB9IGNhdGNoIChlcnJvcikgeycsXG4gICAgICAgIFwiICAgICAgICBjb25zb2xlLmxvZygnV29ya2Zsb3cgbm90IGZvdW5kLCB3aWxsIGNyZWF0ZSBuZXcgb25lJyk7XCIsXG4gICAgICAgICcgICAgICB9JyxcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIGxldCByZXN1bHQ7JyxcbiAgICAgICAgJyAgICBpZiAoaXNVcGRhdGUpIHsnLFxuICAgICAgICAnICAgICAgLy8gVXBkYXRlIGV4aXN0aW5nIHdvcmtmbG93JyxcbiAgICAgICAgJyAgICAgIGNvbnN0IHVwZGF0ZVJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXFxcXGBcXFxcJHt1cmx9L2FwaS92MS93b3JrZmxvd3MvXFxcXCR7d29ya2Zsb3dJZH1cXFxcYCwgeycsXG4gICAgICAgIFwiICAgICAgICBtZXRob2Q6ICdQVVQnLFwiLFxuICAgICAgICAnICAgICAgICBoZWFkZXJzLCcsXG4gICAgICAgICcgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHdvcmtmbG93RGF0YSksJyxcbiAgICAgICAgJyAgICAgIH0pOycsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgaWYgKCF1cGRhdGVSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICAgIHRocm93IG5ldyBFcnJvcihcXFxcYFVwZGF0ZSBmYWlsZWQ6IFxcXFwke3VwZGF0ZVJlc3BvbnNlLnN0YXR1c30gXFxcXCR7dXBkYXRlUmVzcG9uc2Uuc3RhdHVzVGV4dH1cXFxcYCk7JyxcbiAgICAgICAgJyAgICAgIH0nLFxuICAgICAgICAnICAgICAgJyxcbiAgICAgICAgJyAgICAgIHJlc3VsdCA9IGF3YWl0IHVwZGF0ZVJlc3BvbnNlLmpzb24oKTsnLFxuICAgICAgICBcIiAgICAgIGNvbnNvbGUubG9nKCdXb3JrZmxvdyB1cGRhdGVkIHN1Y2Nlc3NmdWxseScpO1wiLFxuICAgICAgICAnICAgIH0gZWxzZSB7JyxcbiAgICAgICAgJyAgICAgIC8vIENyZWF0ZSBuZXcgd29ya2Zsb3cnLFxuICAgICAgICAnICAgICAgY29uc3QgY3JlYXRlUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChcXFxcYFxcXFwke3VybH0vYXBpL3YxL3dvcmtmbG93c1xcXFxgLCB7JyxcbiAgICAgICAgXCIgICAgICAgIG1ldGhvZDogJ1BPU1QnLFwiLFxuICAgICAgICAnICAgICAgICBoZWFkZXJzLCcsXG4gICAgICAgICcgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHdvcmtmbG93RGF0YSksJyxcbiAgICAgICAgJyAgICAgIH0pOycsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgaWYgKCFjcmVhdGVSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICAgIGxldCByZXN1bHQgPSB7fTsnLFxuICAgICAgICAnICAgICAgICBpZiAoY3JlYXRlUmVzcG9uc2Uuc3RhdHVzID09PSA0MDApIHsnLFxuICAgICAgICAnICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGNyZWF0ZVJlc3BvbnNlLmpzb24oKTsgICcsXG4gICAgICAgICcgICAgICAgIH0nLFxuICAgICAgICAnICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXFxcXGBDcmVhdGUgZmFpbGVkOiBcXFxcJHtjcmVhdGVSZXNwb25zZS5zdGF0dXN9IFxcXFwke2NyZWF0ZVJlc3BvbnNlLnN0YXR1c1RleHR9IFxcXFwke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9IFxcXFxgKTsnLFxuICAgICAgICAnICAgICAgfScsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgcmVzdWx0ID0gYXdhaXQgY3JlYXRlUmVzcG9uc2UuanNvbigpOycsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgJyxcbiAgICAgICAgJyAgICAgIHdvcmtmbG93SWQgPSByZXN1bHQuaWQ7JyxcbiAgICAgICAgXCIgICAgICBjb25zb2xlLmxvZygnV29ya2Zsb3cgY3JlYXRlZCBzdWNjZXNzZnVsbHknKTtcIixcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIC8vIEFjdGl2YXRlIHRoZSB3b3JrZmxvdycsXG4gICAgICAgICcgICAgY29uc3QgYWN0aXZhdGVSZXNwb25zZSA9IGF3YWl0IGZldGNoKFxcXFxgXFxcXCR7dXJsfS9hcGkvdjEvd29ya2Zsb3dzL1xcXFwke3dvcmtmbG93SWR9L2FjdGl2YXRlXFxcXGAsIHsnLFxuICAgICAgICBcIiAgICAgIG1ldGhvZDogJ1BPU1QnLFwiLFxuICAgICAgICAnICAgICAgaGVhZGVycywnLFxuICAgICAgICAnICAgIH0pOycsXG4gICAgICAgICcgICAgJyxcbiAgICAgICAgJyAgICBpZiAoIWFjdGl2YXRlUmVzcG9uc2Uub2spIHsnLFxuICAgICAgICAnICAgIGxldCByZXN1bHQgPSB7fTsnLFxuICAgICAgICAnICAgICAgaWYgKGFjdGl2YXRlUmVzcG9uc2Uuc3RhdHVzID09PSA0MDApIHsnLFxuICAgICAgICAnICAgICAgICByZXN1bHQgPSBhd2FpdCBhY3RpdmF0ZVJlc3BvbnNlLmpzb24oKTsnLFxuICAgICAgICAnICAgICAgfScsXG4gICAgICAgICcgICAgICBjb25zb2xlLndhcm4oXFxcXGBBY3RpdmF0aW9uIGZhaWxlZDogXFxcXCR7YWN0aXZhdGVSZXNwb25zZS5zdGF0dXN9IFxcXFwke2FjdGl2YXRlUmVzcG9uc2Uuc3RhdHVzVGV4dH1cXFxcXFxcXCBcXFxcJHtKU09OLnN0cmluZ2lmeShyZXN1bHQpfSBcXFxcYCk7JyxcbiAgICAgICAgJyAgICB9IGVsc2UgeycsXG4gICAgICAgIFwiICAgICAgY29uc29sZS5sb2coJ1dvcmtmbG93IGFjdGl2YXRlZCBzdWNjZXNzZnVsbHknKTtcIixcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgLy8gRmV0Y2ggdGhlIHdvcmtmbG93IHRvIGV4dHJhY3Qgd2ViaG9vayBwYXRoJyxcbiAgICAgICAgXCIgICAgbGV0IHdlYmhvb2tQYXRoID0gXFxcXCdcXFxcJztcIixcbiAgICAgICAgJyAgICBjb25zdCBnZXRXb3JrZmxvd1Jlc3BvbnNlID0gYXdhaXQgZmV0Y2goXFxcXGBcXFxcJHt1cmx9L2FwaS92MS93b3JrZmxvd3MvXFxcXCR7d29ya2Zsb3dJZH1cXFxcYCwgeycsXG4gICAgICAgIFwiICAgICAgbWV0aG9kOiAnR0VUJyxcIixcbiAgICAgICAgJyAgICAgIGhlYWRlcnMsJyxcbiAgICAgICAgJyAgICB9KTsnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgICBpZiAoZ2V0V29ya2Zsb3dSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICBjb25zdCB3b3JrZmxvdyA9IGF3YWl0IGdldFdvcmtmbG93UmVzcG9uc2UuanNvbigpOycsXG4gICAgICAgIFwiICAgICAgY29uc3Qgd2ViaG9va05vZGUgPSAod29ya2Zsb3cubm9kZXMgfHwgW10pLmZpbmQobiA9PiBuLnR5cGUgPT09ICduOG4tbm9kZXMtYmFzZS53ZWJob29rJyk7XCIsXG4gICAgICAgICcgICAgICBpZiAod2ViaG9va05vZGUgJiYgd2ViaG9va05vZGUucGFyYW1ldGVycyAmJiB3ZWJob29rTm9kZS5wYXJhbWV0ZXJzLnBhdGgpIHsnLFxuICAgICAgICAnICAgICAgICB3ZWJob29rUGF0aCA9IHdlYmhvb2tOb2RlLnBhcmFtZXRlcnMucGF0aDsnLFxuICAgICAgICAnICAgICAgICBjb25zb2xlLmxvZyhcXFxcYEZvdW5kIHdlYmhvb2sgcGF0aDogXFxcXCR7d2ViaG9va1BhdGh9XFxcXGApOycsXG4gICAgICAgICcgICAgICB9JyxcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgcmV0dXJuIHsnLFxuICAgICAgICAnICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiB3b3JrZmxvd0lkLCcsXG4gICAgICAgICcgICAgICBEYXRhOiB7IFdvcmtmbG93SWQ6IHdvcmtmbG93SWQsIFdlYmhvb2tQYXRoOiB3ZWJob29rUGF0aCB9JyxcbiAgICAgICAgJyAgICB9OycsXG4gICAgICAgICcgIH0gY2F0Y2ggKGVycm9yKSB7JyxcbiAgICAgICAgXCIgICAgY29uc29sZS5lcnJvcignRXJyb3I6JywgZXJyb3IpO1wiLFxuICAgICAgICAnICAgIHJldHVybiB7JyxcbiAgICAgICAgXCIgICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiBldmVudC5QaHlzaWNhbFJlc291cmNlSWQgfHwgJ3dvcmtmbG93LXVwbG9hZGVyJyxcIixcbiAgICAgICAgXCIgICAgICAgRGF0YTogeyBFcnJvcjogU3RyaW5nKGVycm9yKSwgV2ViaG9va1BhdGg6ICd1bmF2YWlsYWJsZScgfVwiLFxuICAgICAgICAnICAgIH07JyxcbiAgICAgICAgJyAgfScsXG4gICAgICAgICd9OycsXG4gICAgICAgICcgICAgICBgKSwnLFxuICAgICAgICAnICAgICAgZW52aXJvbm1lbnQ6IHsnLFxuICAgICAgICAnICAgICAgICBTRUNSRVRfQVJOOiBwcm9wcy5zZWNyZXQuc2VjcmV0QXJuLCcsXG4gICAgICAgICcgICAgICB9LCcsXG4gICAgICAgICcgICAgfSk7JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgcHJvcHMuc2VjcmV0LmdyYW50UmVhZChsYW1iZGEpOycsXG4gICAgICAgICcnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgICAvLyBHcmFudCBLTVMgZGVjcnlwdCBwZXJtaXNzaW9ucyBmb3IgdGhlIHNlY3JldCcsXG4gICAgICAgICcgICAgaWYgKHByb3BzLnNlY3JldC5lbmNyeXB0aW9uS2V5KSB7JyxcbiAgICAgICAgXCIgICAgICBjb25zb2xlLmxvZygnZW5jcnlwdGlvbiBrZXkgZm91bmQsIGdyYW50aW5nIGRlY3J5cHQgcGVybWlzc2lvbnMnKTtcIixcbiAgICAgICAgJyAgICAgIHByb3BzLnNlY3JldC5lbmNyeXB0aW9uS2V5LmdyYW50RGVjcnlwdChsYW1iZGEpOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAgIH0gZWxzZSB7JyxcbiAgICAgICAgJyAgICAgIGxhbWJkYS5yb2xlPy5hZGRUb1ByaW5jaXBhbFBvbGljeShuZXcgUG9saWN5U3RhdGVtZW50KHsnLFxuICAgICAgICAnICAgICAgICBlZmZlY3Q6IEVmZmVjdC5BTExPVywnLFxuICAgICAgICAnICAgICAgICBhY3Rpb25zOiBbJyxcbiAgICAgICAgXCIgICAgICAgICAgJ2ttczpEZWNyeXB0JyxcIixcbiAgICAgICAgXCIgICAgICAgICAgJ2ttczpEZXNjcmliZUtleScsXCIsXG4gICAgICAgICcgICAgICAgIF0sJyxcbiAgICAgICAgJyAgICAgICAgcmVzb3VyY2VzOiBbQXJuLmZvcm1hdCh7JyxcbiAgICAgICAgXCIgICAgICAgICAgc2VydmljZTogJ2ttcycsXCIsXG4gICAgICAgIFwiICAgICAgICAgIHJlc291cmNlOiAna2V5JyxcIixcbiAgICAgICAgXCIgICAgICAgICAgcmVzb3VyY2VOYW1lOiAnYTY5OWY4NTMtMDQ3NS00ZDRkLWI4YWItYmU4ODFkNjY2MjRmJyxcIixcbiAgICAgICAgXCIgICAgICAgICAgcGFydGl0aW9uOiAnYXdzJyxcIixcbiAgICAgICAgJyAgICAgICAgICByZWdpb246IFN0YWNrLm9mKHRoaXMpLnJlZ2lvbiwnLFxuICAgICAgICBcIiAgICAgICAgICBhY2NvdW50OiAnNTgxNTE0NjcyMzY3JyxcIixcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgICAgIH0pXSwnLFxuICAgICAgICAnICAgICAgfSkpOycsXG4gICAgICAgICcgICAgfScsXG4gICAgICAgICcnLFxuICAgICAgICBcIiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBQcm92aWRlcih0aGlzLCAnUHJvdmlkZXInLCB7XCIsXG4gICAgICAgICcgICAgICBvbkV2ZW50SGFuZGxlcjogbGFtYmRhLCcsXG4gICAgICAgICcgICAgfSk7JyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiICAgIGNvbnN0IGN1c3RvbVJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcIixcbiAgICAgICAgJyAgICAgIHNlcnZpY2VUb2tlbjogcHJvdmlkZXIuc2VydmljZVRva2VuLCcsXG4gICAgICAgICcgICAgICBwcm9wZXJ0aWVzOiB7JyxcbiAgICAgICAgJyAgICAgICAgQ29udGVudDogbmV3Q29udGVudHMsJyxcbiAgICAgICAgJyAgICAgIH0sJyxcbiAgICAgICAgJyAgICB9KTsnLFxuICAgICAgICAnJyxcbiAgICAgICAgXCIgICAgdGhpcy53ZWJob29rUGF0aCA9IGN1c3RvbVJlc291cmNlLmdldEF0dCgnV2ViaG9va1BhdGgnKTtcIixcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgLy8gT3V0cHV0IHRoZSBMYW1iZGEgZXhlY3V0aW9uIHJvbGUgQVJOIGZvciBjcm9zcy1hY2NvdW50IEtNUyBwZXJtaXNzaW9ucycsXG4gICAgICAgIFwiICAgIG5ldyBDZm5PdXRwdXQodGhpcywgJ0xhbWJkYUV4ZWN1dGlvblJvbGVBcm4nLCB7XCIsXG4gICAgICAgICcgICAgICB2YWx1ZTogbGFtYmRhLnJvbGUhLnJvbGVBcm4sJyxcbiAgICAgICAgXCIgICAgICBkZXNjcmlwdGlvbjogJ0xhbWJkYSBleGVjdXRpb24gcm9sZSBBUk4gLSBhZGQgdGhpcyB0byBLTVMga2V5IHBvbGljeSBpbiBvdGhlciBhY2NvdW50JyxcIixcbiAgICAgICAgJyAgICB9KTsnLFxuICAgICAgICAnICB9JyxcbiAgICAgICAgJycsXG4gICAgICAgICcnLFxuICAgICAgICAnfScsXG4gICAgICAgICcnLFxuICAgICAgICAnZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VGaWVsZEJ5Tm9kZU5hbWUoJyxcbiAgICAgICAgJyAgb2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwnLFxuICAgICAgICAnICBub2RlTmFtZTogc3RyaW5nLCcsXG4gICAgICAgICcgIGZpZWxkUGF0aDogc3RyaW5nLCAvLyBkb3Qtbm90YXRpb24gcmVsYXRpdmUgdG8gdGhlIG5vZGUsIGUuZy4gXCJwYXJhbWV0ZXJzLnVybFwiJyxcbiAgICAgICAgJyAgbmV3VmFsdWU6IHVua25vd24sJyxcbiAgICAgICAgJyk6IHZvaWQgeycsXG4gICAgICAgICcgIGNvbnN0IG5vZGVzID0gSlNPTlBhdGgoeycsXG4gICAgICAgIFwiICAgIHBhdGg6IGAkLm5vZGVzWz8oQC5uYW1lPT0nJHtub2RlTmFtZX0nKV1gLFwiLFxuICAgICAgICAnICAgIGpzb246IG9iaiwnLFxuICAgICAgICBcIiAgICByZXN1bHRUeXBlOiAndmFsdWUnLFwiLFxuICAgICAgICAnICB9KTsnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgZm9yIChjb25zdCBub2RlIG9mIG5vZGVzKSB7JyxcbiAgICAgICAgJyAgICBzZXROZXN0ZWRWYWx1ZShub2RlLCBmaWVsZFBhdGgsIG5ld1ZhbHVlKTsnLFxuICAgICAgICAnICB9JyxcbiAgICAgICAgJ30nLFxuICAgICAgICAnJyxcbiAgICAgICAgJ2Z1bmN0aW9uIHNldE5lc3RlZFZhbHVlKG9iajogYW55LCBkb3RQYXRoOiBzdHJpbmcsIHZhbHVlOiB1bmtub3duKTogdm9pZCB7JyxcbiAgICAgICAgXCIgIGNvbnN0IGtleXMgPSBkb3RQYXRoLnNwbGl0KCcuJyk7XCIsXG4gICAgICAgICcgIGxldCBjdXJyZW50ID0gb2JqOycsXG4gICAgICAgICcgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5cy5sZW5ndGggLSAxOyBpKyspIHsnLFxuICAgICAgICAnICAgIGN1cnJlbnQgPSBjdXJyZW50W2tleXNbaV1dOycsXG4gICAgICAgICcgIH0nLFxuICAgICAgICAnICBjdXJyZW50W2tleXNba2V5cy5sZW5ndGggLSAxXV0gPSB2YWx1ZTsnLFxuICAgICAgICAnfScsXG4gICAgICAgICcnLFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxufVxuIl19
308
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29ya2Zsb3dQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Xb3JrZmxvd1Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFrQztBQUdsQyxNQUFhLG9CQUFxQixTQUFRLGlCQUFRO0lBQ2hELFlBQVksT0FBNEI7UUFDdEMsS0FBSyxDQUFDLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRTtZQUNuRCxNQUFNLEVBQUUsSUFBSTtZQUNaLFFBQVEsRUFBRSxJQUFJO1lBQ2QsS0FBSyxFQUFFO2dCQUNMLG9DQUFvQztnQkFDcEMsOEJBQThCO2dCQUM5QiwyRkFBMkY7Z0JBQzNGLGdFQUFnRTtnQkFDaEUsbUVBQW1FO2dCQUNuRSwyREFBMkQ7Z0JBQzNELDBEQUEwRDtnQkFDMUQseUNBQXlDO2dCQUN6QywyQ0FBMkM7Z0JBQzNDLEVBQUU7Z0JBQ0YsZ0NBQWdDO2dCQUNoQyxPQUFPO2dCQUNQLDJFQUEyRTtnQkFDM0UsT0FBTztnQkFDUCw4QkFBOEI7Z0JBQzlCLEVBQUU7Z0JBQ0YsT0FBTztnQkFDUCxvREFBb0Q7Z0JBQ3BELE9BQU87Z0JBQ1AsMEJBQTBCO2dCQUMxQixFQUFFO2dCQUNGLE9BQU87Z0JBQ1Asd0NBQXdDO2dCQUN4QyxPQUFPO2dCQUNQLDJCQUEyQjtnQkFDM0IsR0FBRztnQkFDSCxFQUFFO2dCQUNGLDBDQUEwQztnQkFDMUMsT0FBTztnQkFDUCxnRUFBZ0U7Z0JBQ2hFLE9BQU87Z0JBQ1Asc0NBQXNDO2dCQUN0QyxFQUFFO2dCQUNGLE9BQU87Z0JBQ1AsMkRBQTJEO2dCQUMzRCxRQUFRO2dCQUNSLGdEQUFnRDtnQkFDaEQscUNBQXFDO2dCQUNyQyxRQUFRO2dCQUNSLE9BQU87Z0JBQ1AsNkJBQTZCO2dCQUM3QixFQUFFO2dCQUNGLE9BQU87Z0JBQ1AsK0dBQStHO2dCQUMvRyxpREFBaUQ7Z0JBQ2pELE9BQU87Z0JBQ1AsMENBQTBDO2dCQUMxQyxHQUFHO2dCQUNILEVBQUU7Z0JBQ0Ys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cEMsK0ZBQStGO2dCQUMvRixTQUFTO2dCQUNULEtBQUs7Z0JBQ0wsRUFBRTtnQkFDRixFQUFFO2dCQUNGLEdBQUc7Z0JBQ0gsRUFBRTtnQkFDRix5Q0FBeUM7Z0JBQ3pDLGlDQUFpQztnQkFDakMscUJBQXFCO2dCQUNyQixrRkFBa0Y7Z0JBQ2xGLHNCQUFzQjtnQkFDdEIsV0FBVztnQkFDWCw0QkFBNEI7Z0JBQzVCLGdEQUFnRDtnQkFDaEQsZ0JBQWdCO2dCQUNoQiwwQkFBMEI7Z0JBQzFCLE9BQU87Z0JBQ1AsRUFBRTtnQkFDRiwrQkFBK0I7Z0JBQy9CLGdEQUFnRDtnQkFDaEQsS0FBSztnQkFDTCxHQUFHO2dCQUNILEVBQUU7Z0JBQ0YsNEVBQTRFO2dCQUM1RSxvQ0FBb0M7Z0JBQ3BDLHNCQUFzQjtnQkFDdEIsK0NBQStDO2dCQUMvQyxpQ0FBaUM7Z0JBQ2pDLEtBQUs7Z0JBQ0wsMkNBQTJDO2dCQUMzQyxHQUFHO2dCQUNILEVBQUU7YUFDSDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTdTRCxvREE2U0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZXh0RmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuXG5leHBvcnQgY2xhc3MgV29ya2Zsb3dQcm92aWRlckZpbGUgZXh0ZW5kcyBUZXh0RmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHApIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvV29ya2Zsb3dQcm92aWRlci50cycsIHtcbiAgICAgIG1hcmtlcjogdHJ1ZSxcbiAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgbGluZXM6IFtcbiAgICAgICAgXCJpbXBvcnQgeyByZWFkRmlsZVN5bmMgfSBmcm9tICdmcyc7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgam9pbiB9IGZyb20gJ3BhdGgnO1wiLFxuICAgICAgICBcImltcG9ydCB7IEFybiwgQ2ZuT3V0cHV0LCBDdXN0b21SZXNvdXJjZSwgRHVyYXRpb24sIFJlZmVyZW5jZSwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgRWZmZWN0LCBQb2xpY3lTdGF0ZW1lbnQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcIixcbiAgICAgICAgXCJpbXBvcnQgeyBDb2RlLCBGdW5jdGlvbiwgUnVudGltZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1wiLFxuICAgICAgICBcImltcG9ydCB7IElTZWNyZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc2VjcmV0c21hbmFnZXInO1wiLFxuICAgICAgICBcImltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XCIsXG4gICAgICAgIFwiaW1wb3J0IHsgSlNPTlBhdGggfSBmcm9tICdqc29ucGF0aC1wbHVzJztcIixcbiAgICAgICAgJycsXG4gICAgICAgICdleHBvcnQgaW50ZXJmYWNlIFJlcGxhY2VtZW50IHsnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICBcIiAgICogVGhlICduYW1lJyBmcm9tIHRoZSAnbm9kZScgdGhhdCB5b3UnZCBsaWtlIHRvIG1ha2UgYSByZXBsYWNlbWVudCBvbi5cIixcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgbm9kZU5hbWU6IHN0cmluZzsnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgLyoqJyxcbiAgICAgICAgJyAgICogQSBkb3RwYXRoIHRvIHRoZSBmaWVsZCBvbiB0aGUgbm9kZSB0byBjaGFuZ2UuJyxcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgcGF0aDogc3RyaW5nOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICAnICAgKiBUaGUgdmFsdWUgdG8gY2hhbmdlIHRoZSBmaWVsZCB0by4nLFxuICAgICAgICAnICAgKi8nLFxuICAgICAgICAnICByZWFkb25seSB2YWx1ZTogc3RyaW5nOycsXG4gICAgICAgICd9JyxcbiAgICAgICAgJycsXG4gICAgICAgICdleHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93UHJvdmlkZXJQcm9wcyB7JyxcbiAgICAgICAgJyAgLyoqJyxcbiAgICAgICAgJyAgICogVGhlIGZ1bGwgcGF0aCB0byB0aGUgd29ya2Zsb3cgLkpTT04gZmlsZSB5b3Ugd2FudCB0byBhZGQuJyxcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgd29ya2Zsb3dGaWxlUGF0aDogc3RyaW5nOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICAnICAgKiBBbiBBV1MgU2VjcmV0IHRoYXQgaGFzIHRoZSBmb2xsb3dpbmcgSlNPTiBzdHJ1Y3R1cmU6JyxcbiAgICAgICAgJyAgICogeycsXG4gICAgICAgICcgICAqICAgXCJ1cmxcIjogXCJodHRwczovL3lvdXItbjhuLWluc3RhbmNlLmNvbVwiLCcsXG4gICAgICAgICcgICAqICAgXCJhcGlLZXlcIjogXCJ5b3VyLW44bi1hcGkta2V5XCInLFxuICAgICAgICAnICAgKiB9JyxcbiAgICAgICAgJyAgICovJyxcbiAgICAgICAgJyAgcmVhZG9ubHkgc2VjcmV0OiBJU2VjcmV0OycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAvKionLFxuICAgICAgICAnICAgKiBBbiBhcnJheSBvZiBSZXBsYWNlbWVudHMgdG8gbWFrZSBhZ2FpbnN0IHRoZSB3b3JrZmxvdy4gVXNlIHRoaXMgdG8gdXBkYXRlIExhbWJkYSBmdW5jdGlvbiBBUk5zIGFuZCBvdGhlcicsXG4gICAgICAgICcgICAqIEFXUy1jb250cm9sbGVkIHJlc291cmNlcyBpbiB5b3VyIHdvcmtmbG93LicsXG4gICAgICAgICcgICAqLycsXG4gICAgICAgICcgIHJlYWRvbmx5IHJlcGxhY2VtZW50cz86IFJlcGxhY2VtZW50W107JyxcbiAgICAgICAgJ30nLFxuICAgICAgICAnJyxcbiAgICAgICAgJ2V4cG9ydCBjbGFzcyBXb3JrZmxvd1Byb3ZpZGVyIGV4dGVuZHMgQ29uc3RydWN0IHsnLFxuICAgICAgICAnICBwdWJsaWMgaGFuZGxlcjogRnVuY3Rpb247JyxcbiAgICAgICAgJyAgcHVibGljIHdlYmhvb2tQYXRoOiBSZWZlcmVuY2U7JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBXb3JrZmxvd1Byb3ZpZGVyUHJvcHMpIHsnLFxuICAgICAgICAnICAgIHN1cGVyKHNjb3BlLCBpZCk7JyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiICAgIGNvbnN0IHdvcmtmbG93Q29udGVudHMgPSByZWFkRmlsZVN5bmMoam9pbihfX2Rpcm5hbWUsICcuLi93b3JrZmxvd3MvYWxmcmVkLmpzb24nKSk7XCIsXG4gICAgICAgIFwiICAgIGNvbnN0IHdvcmtmbG93ID0gSlNPTi5wYXJzZSh3b3JrZmxvd0NvbnRlbnRzLnRvU3RyaW5nKCd1dGY4JykpO1wiLFxuICAgICAgICAnICAgIGxldCBuZXdDb250ZW50czogc3RyaW5nID0gd29ya2Zsb3c7JyxcbiAgICAgICAgJyAgICBpZiAocHJvcHMucmVwbGFjZW1lbnRzKSB7JyxcbiAgICAgICAgJyAgICAgIG5ld0NvbnRlbnRzID0gSlNPTi5zdHJpbmdpZnkocHJvcHMucmVwbGFjZW1lbnRzJyxcbiAgICAgICAgJyAgICAgICAgLnJlZHVjZSgocDogYW55LCBjOiBSZXBsYWNlbWVudCkgPT4geycsXG4gICAgICAgICcgICAgICAgICAgcmVwbGFjZUZpZWxkQnlOb2RlTmFtZShwLCBjLm5vZGVOYW1lLCBjLnBhdGgsIGMudmFsdWUpOycsXG4gICAgICAgICcgICAgICAgICAgcmV0dXJuIHA7JyxcbiAgICAgICAgJyAgICAgICAgfSwgd29ya2Zsb3cpLCcsXG4gICAgICAgICcgICAgICBudWxsLCcsXG4gICAgICAgICcgICAgICAyKTsnLFxuICAgICAgICAnICAgIH0nLFxuICAgICAgICAnJyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiICAgIGNvbnN0IGxhbWJkYSA9IHRoaXMuaGFuZGxlciA9IG5ldyBGdW5jdGlvbih0aGlzLCAnSGFuZGxlcicsIHtcIixcbiAgICAgICAgJyAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuTk9ERUpTXzI0X1gsJyxcbiAgICAgICAgXCIgICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXCIsXG4gICAgICAgICcgICAgICB0aW1lb3V0OiBEdXJhdGlvbi5taW51dGVzKDUpLCcsXG4gICAgICAgICcgICAgICBjb2RlOiBDb2RlLmZyb21JbmxpbmUoYCcsXG4gICAgICAgIFwiY29uc3QgeyBTZWNyZXRzTWFuYWdlckNsaWVudCwgR2V0U2VjcmV0VmFsdWVDb21tYW5kIH0gPSByZXF1aXJlKCdAYXdzLXNkay9jbGllbnQtc2VjcmV0cy1tYW5hZ2VyJyk7XCIsXG4gICAgICAgICcnLFxuICAgICAgICAnZXhwb3J0cy5oYW5kbGVyID0gYXN5bmMgKGV2ZW50KSA9PiB7JyxcbiAgICAgICAgXCIgIGNvbnNvbGUubG9nKCdFdmVudDonLCBKU09OLnN0cmluZ2lmeShldmVudCwgbnVsbCwgMikpO1wiLFxuICAgICAgICAnICAnLFxuICAgICAgICBcIiAgaWYgKGV2ZW50LlJlcXVlc3RUeXBlID09PSAnRGVsZXRlJykge1wiLFxuICAgICAgICBcIiAgICByZXR1cm4geyBQaHlzaWNhbFJlc291cmNlSWQ6IGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCB8fCAnd29ya2Zsb3ctdXBsb2FkZXInIH07XCIsXG4gICAgICAgICcgIH0nLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgdHJ5IHsnLFxuICAgICAgICAnICAgIC8vIEdldCBzZWNyZXQnLFxuICAgICAgICAnICAgIGNvbnN0IHNlY3JldHNDbGllbnQgPSBuZXcgU2VjcmV0c01hbmFnZXJDbGllbnQoe30pOycsXG4gICAgICAgICcgICAgY29uc3Qgc2VjcmV0Q29tbWFuZCA9IG5ldyBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQoeyBTZWNyZXRJZDogcHJvY2Vzcy5lbnYuU0VDUkVUX0FSTiB9KTsnLFxuICAgICAgICAnICAgIGNvbnN0IHNlY3JldFJlc3BvbnNlID0gYXdhaXQgc2VjcmV0c0NsaWVudC5zZW5kKHNlY3JldENvbW1hbmQpOycsXG4gICAgICAgICcgICAgJyxcbiAgICAgICAgJyAgICBjb25zdCBzZWNyZXQgPSBKU09OLnBhcnNlKHNlY3JldFJlc3BvbnNlLlNlY3JldFN0cmluZyk7JyxcbiAgICAgICAgJyAgICBjb25zdCB7IHVybCwgYXBpS2V5IH0gPSBzZWNyZXQ7JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIGNvbnN0IHdvcmtmbG93Q29udGVudCA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5Db250ZW50OycsXG4gICAgICAgICcgICAgY29uc3QgeyBuYW1lLCBub2RlcywgY29ubmVjdGlvbnMsIHNldHRpbmdzIH0gPSBKU09OLnBhcnNlKHdvcmtmbG93Q29udGVudCk7JyxcbiAgICAgICAgJyAgICBjb25zdCB3b3JrZmxvd0RhdGEgPSB7JyxcbiAgICAgICAgJyAgICAgIG5hbWUsJyxcbiAgICAgICAgJyAgICAgIG5vZGVzLCcsXG4gICAgICAgICcgICAgICBjb25uZWN0aW9ucywnLFxuICAgICAgICAnICAgICAgc2V0dGluZ3MsJyxcbiAgICAgICAgJyAgICB9OycsXG4gICAgICAgICcgICAgZGVsZXRlIHdvcmtmbG93RGF0YS5zZXR0aW5ncy5iaW5hcnlNb2RlOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAgIGNvbnN0IGhlYWRlcnMgPSB7JyxcbiAgICAgICAgXCIgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFwiLFxuICAgICAgICBcIiAgICAgICdYLU44Ti1BUEktS0VZJzogYXBpS2V5LFwiLFxuICAgICAgICAnICAgIH07JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIGxldCB3b3JrZmxvd0lkID0gZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkOycsXG4gICAgICAgICcgICAgbGV0IGlzVXBkYXRlID0gZmFsc2U7JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIC8vIFRyeSB0byBnZXQgZXhpc3Rpbmcgd29ya2Zsb3cgaWYgd2UgaGF2ZSBhIHBoeXNpY2FsUmVzb3VyY2VJZCcsXG4gICAgICAgIFwiICAgIGlmICh3b3JrZmxvd0lkICYmIHdvcmtmbG93SWQgIT09ICd3b3JrZmxvdy11cGxvYWRlcicpIHtcIixcbiAgICAgICAgJyAgICAgIHRyeSB7JyxcbiAgICAgICAgJyAgICAgICAgY29uc3QgZ2V0UmVzcG9uc2UgPSBhd2FpdCBmZXRjaChcXFxcYFxcXFwke3VybH0vYXBpL3YxL3dvcmtmbG93cy9cXFxcJHt3b3JrZmxvd0lkfVxcXFxgLCB7JyxcbiAgICAgICAgXCIgICAgICAgICAgbWV0aG9kOiAnR0VUJyxcIixcbiAgICAgICAgJyAgICAgICAgICBoZWFkZXJzLCcsXG4gICAgICAgICcgICAgICAgIH0pOycsXG4gICAgICAgICcgICAgICAgICcsXG4gICAgICAgICcgICAgICAgIGlmIChnZXRSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICAgICAgaXNVcGRhdGUgPSB0cnVlOycsXG4gICAgICAgIFwiICAgICAgICAgIGNvbnNvbGUubG9nKCdGb3VuZCBleGlzdGluZyB3b3JrZmxvdywgd2lsbCB1cGRhdGUnKTtcIixcbiAgICAgICAgJyAgICAgICAgfScsXG4gICAgICAgICcgICAgICB9IGNhdGNoIChlcnJvcikgeycsXG4gICAgICAgIFwiICAgICAgICBjb25zb2xlLmxvZygnV29ya2Zsb3cgbm90IGZvdW5kLCB3aWxsIGNyZWF0ZSBuZXcgb25lJyk7XCIsXG4gICAgICAgICcgICAgICB9JyxcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIGxldCByZXN1bHQ7JyxcbiAgICAgICAgJyAgICBpZiAoaXNVcGRhdGUpIHsnLFxuICAgICAgICAnICAgICAgLy8gVXBkYXRlIGV4aXN0aW5nIHdvcmtmbG93JyxcbiAgICAgICAgJyAgICAgIGNvbnN0IHVwZGF0ZVJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXFxcXGBcXFxcJHt1cmx9L2FwaS92MS93b3JrZmxvd3MvXFxcXCR7d29ya2Zsb3dJZH1cXFxcYCwgeycsXG4gICAgICAgIFwiICAgICAgICBtZXRob2Q6ICdQVVQnLFwiLFxuICAgICAgICAnICAgICAgICBoZWFkZXJzLCcsXG4gICAgICAgICcgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHdvcmtmbG93RGF0YSksJyxcbiAgICAgICAgJyAgICAgIH0pOycsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgaWYgKCF1cGRhdGVSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICAgIHRocm93IG5ldyBFcnJvcihcXFxcYFVwZGF0ZSBmYWlsZWQ6IFxcXFwke3VwZGF0ZVJlc3BvbnNlLnN0YXR1c30gXFxcXCR7dXBkYXRlUmVzcG9uc2Uuc3RhdHVzVGV4dH1cXFxcYCk7JyxcbiAgICAgICAgJyAgICAgIH0nLFxuICAgICAgICAnICAgICAgJyxcbiAgICAgICAgJyAgICAgIHJlc3VsdCA9IGF3YWl0IHVwZGF0ZVJlc3BvbnNlLmpzb24oKTsnLFxuICAgICAgICBcIiAgICAgIGNvbnNvbGUubG9nKCdXb3JrZmxvdyB1cGRhdGVkIHN1Y2Nlc3NmdWxseScpO1wiLFxuICAgICAgICAnICAgIH0gZWxzZSB7JyxcbiAgICAgICAgJyAgICAgIC8vIENyZWF0ZSBuZXcgd29ya2Zsb3cnLFxuICAgICAgICAnICAgICAgY29uc3QgY3JlYXRlUmVzcG9uc2UgPSBhd2FpdCBmZXRjaChcXFxcYFxcXFwke3VybH0vYXBpL3YxL3dvcmtmbG93c1xcXFxgLCB7JyxcbiAgICAgICAgXCIgICAgICAgIG1ldGhvZDogJ1BPU1QnLFwiLFxuICAgICAgICAnICAgICAgICBoZWFkZXJzLCcsXG4gICAgICAgICcgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHdvcmtmbG93RGF0YSksJyxcbiAgICAgICAgJyAgICAgIH0pOycsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgaWYgKCFjcmVhdGVSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICAgIGxldCByZXN1bHQgPSB7fTsnLFxuICAgICAgICAnICAgICAgICBpZiAoY3JlYXRlUmVzcG9uc2Uuc3RhdHVzID09PSA0MDApIHsnLFxuICAgICAgICAnICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGNyZWF0ZVJlc3BvbnNlLmpzb24oKTsgICcsXG4gICAgICAgICcgICAgICAgIH0nLFxuICAgICAgICAnICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXFxcXGBDcmVhdGUgZmFpbGVkOiBcXFxcJHtjcmVhdGVSZXNwb25zZS5zdGF0dXN9IFxcXFwke2NyZWF0ZVJlc3BvbnNlLnN0YXR1c1RleHR9IFxcXFwke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9IFxcXFxgKTsnLFxuICAgICAgICAnICAgICAgfScsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgcmVzdWx0ID0gYXdhaXQgY3JlYXRlUmVzcG9uc2UuanNvbigpOycsXG4gICAgICAgICcgICAgICAnLFxuICAgICAgICAnICAgICAgJyxcbiAgICAgICAgJyAgICAgIHdvcmtmbG93SWQgPSByZXN1bHQuaWQ7JyxcbiAgICAgICAgXCIgICAgICBjb25zb2xlLmxvZygnV29ya2Zsb3cgY3JlYXRlZCBzdWNjZXNzZnVsbHknKTtcIixcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJyAgICAnLFxuICAgICAgICAnICAgIC8vIEFjdGl2YXRlIHRoZSB3b3JrZmxvdycsXG4gICAgICAgICcgICAgY29uc3QgYWN0aXZhdGVSZXNwb25zZSA9IGF3YWl0IGZldGNoKFxcXFxgXFxcXCR7dXJsfS9hcGkvdjEvd29ya2Zsb3dzL1xcXFwke3dvcmtmbG93SWR9L2FjdGl2YXRlXFxcXGAsIHsnLFxuICAgICAgICBcIiAgICAgIG1ldGhvZDogJ1BPU1QnLFwiLFxuICAgICAgICAnICAgICAgaGVhZGVycywnLFxuICAgICAgICAnICAgIH0pOycsXG4gICAgICAgICcgICAgJyxcbiAgICAgICAgJyAgICBpZiAoIWFjdGl2YXRlUmVzcG9uc2Uub2spIHsnLFxuICAgICAgICAnICAgIGxldCByZXN1bHQgPSB7fTsnLFxuICAgICAgICAnICAgICAgaWYgKGFjdGl2YXRlUmVzcG9uc2Uuc3RhdHVzID09PSA0MDApIHsnLFxuICAgICAgICAnICAgICAgICByZXN1bHQgPSBhd2FpdCBhY3RpdmF0ZVJlc3BvbnNlLmpzb24oKTsnLFxuICAgICAgICAnICAgICAgfScsXG4gICAgICAgICcgICAgICBjb25zb2xlLndhcm4oXFxcXGBBY3RpdmF0aW9uIGZhaWxlZDogXFxcXCR7YWN0aXZhdGVSZXNwb25zZS5zdGF0dXN9IFxcXFwke2FjdGl2YXRlUmVzcG9uc2Uuc3RhdHVzVGV4dH1cXFxcXFxcXCBcXFxcJHtKU09OLnN0cmluZ2lmeShyZXN1bHQpfSBcXFxcYCk7JyxcbiAgICAgICAgJyAgICB9IGVsc2UgeycsXG4gICAgICAgIFwiICAgICAgY29uc29sZS5sb2coJ1dvcmtmbG93IGFjdGl2YXRlZCBzdWNjZXNzZnVsbHknKTtcIixcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgLy8gRmV0Y2ggdGhlIHdvcmtmbG93IHRvIGV4dHJhY3Qgd2ViaG9vayBwYXRoJyxcbiAgICAgICAgXCIgICAgbGV0IHdlYmhvb2tQYXRoID0gXFxcXCdcXFxcJztcIixcbiAgICAgICAgJyAgICBjb25zdCBnZXRXb3JrZmxvd1Jlc3BvbnNlID0gYXdhaXQgZmV0Y2goXFxcXGBcXFxcJHt1cmx9L2FwaS92MS93b3JrZmxvd3MvXFxcXCR7d29ya2Zsb3dJZH1cXFxcYCwgeycsXG4gICAgICAgIFwiICAgICAgbWV0aG9kOiAnR0VUJyxcIixcbiAgICAgICAgJyAgICAgIGhlYWRlcnMsJyxcbiAgICAgICAgJyAgICB9KTsnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgICBpZiAoZ2V0V29ya2Zsb3dSZXNwb25zZS5vaykgeycsXG4gICAgICAgICcgICAgICBjb25zdCB3b3JrZmxvdyA9IGF3YWl0IGdldFdvcmtmbG93UmVzcG9uc2UuanNvbigpOycsXG4gICAgICAgIFwiICAgICAgY29uc3Qgd2ViaG9va05vZGUgPSAod29ya2Zsb3cubm9kZXMgfHwgW10pLmZpbmQobiA9PiBuLnR5cGUgPT09ICduOG4tbm9kZXMtYmFzZS53ZWJob29rJyk7XCIsXG4gICAgICAgICcgICAgICBpZiAod2ViaG9va05vZGUgJiYgd2ViaG9va05vZGUucGFyYW1ldGVycyAmJiB3ZWJob29rTm9kZS5wYXJhbWV0ZXJzLnBhdGgpIHsnLFxuICAgICAgICAnICAgICAgICB3ZWJob29rUGF0aCA9IHdlYmhvb2tOb2RlLnBhcmFtZXRlcnMucGF0aDsnLFxuICAgICAgICAnICAgICAgICBjb25zb2xlLmxvZyhcXFxcYEZvdW5kIHdlYmhvb2sgcGF0aDogXFxcXCR7d2ViaG9va1BhdGh9XFxcXGApOycsXG4gICAgICAgICcgICAgICB9JyxcbiAgICAgICAgJyAgICB9JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgcmV0dXJuIHsnLFxuICAgICAgICAnICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiB3b3JrZmxvd0lkLCcsXG4gICAgICAgICcgICAgICBEYXRhOiB7IFdvcmtmbG93SWQ6IHdvcmtmbG93SWQsIFdlYmhvb2tQYXRoOiB3ZWJob29rUGF0aCB9JyxcbiAgICAgICAgJyAgICB9OycsXG4gICAgICAgICcgIH0gY2F0Y2ggKGVycm9yKSB7JyxcbiAgICAgICAgXCIgICAgY29uc29sZS5lcnJvcignRXJyb3I6JywgZXJyb3IpO1wiLFxuICAgICAgICAnICAgIHJldHVybiB7JyxcbiAgICAgICAgXCIgICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiBldmVudC5QaHlzaWNhbFJlc291cmNlSWQgfHwgJ3dvcmtmbG93LXVwbG9hZGVyJyxcIixcbiAgICAgICAgXCIgICAgICAgRGF0YTogeyBFcnJvcjogU3RyaW5nKGVycm9yKSwgV2ViaG9va1BhdGg6ICd1bmF2YWlsYWJsZScgfVwiLFxuICAgICAgICAnICAgIH07JyxcbiAgICAgICAgJyAgfScsXG4gICAgICAgICd9OycsXG4gICAgICAgICcgICAgICBgKSwnLFxuICAgICAgICAnICAgICAgZW52aXJvbm1lbnQ6IHsnLFxuICAgICAgICAnICAgICAgICBTRUNSRVRfQVJOOiBwcm9wcy5zZWNyZXQuc2VjcmV0QXJuLCcsXG4gICAgICAgICcgICAgICB9LCcsXG4gICAgICAgICcgICAgfSk7JyxcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgcHJvcHMuc2VjcmV0LmdyYW50UmVhZChsYW1iZGEpOycsXG4gICAgICAgICcnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgICAvLyBHcmFudCBLTVMgZGVjcnlwdCBwZXJtaXNzaW9ucyBmb3IgdGhlIHNlY3JldCcsXG4gICAgICAgICcgICAgaWYgKHByb3BzLnNlY3JldC5lbmNyeXB0aW9uS2V5KSB7JyxcbiAgICAgICAgXCIgICAgICBjb25zb2xlLmxvZygnZW5jcnlwdGlvbiBrZXkgZm91bmQsIGdyYW50aW5nIGRlY3J5cHQgcGVybWlzc2lvbnMnKTtcIixcbiAgICAgICAgJyAgICAgIHByb3BzLnNlY3JldC5lbmNyeXB0aW9uS2V5LmdyYW50RGVjcnlwdChsYW1iZGEpOycsXG4gICAgICAgICcnLFxuICAgICAgICAnICAgIH0gZWxzZSB7JyxcbiAgICAgICAgJyAgICAgIGxhbWJkYS5yb2xlPy5hZGRUb1ByaW5jaXBhbFBvbGljeShuZXcgUG9saWN5U3RhdGVtZW50KHsnLFxuICAgICAgICAnICAgICAgICBlZmZlY3Q6IEVmZmVjdC5BTExPVywnLFxuICAgICAgICAnICAgICAgICBhY3Rpb25zOiBbJyxcbiAgICAgICAgXCIgICAgICAgICAgJ2ttczpEZWNyeXB0JyxcIixcbiAgICAgICAgXCIgICAgICAgICAgJ2ttczpEZXNjcmliZUtleScsXCIsXG4gICAgICAgICcgICAgICAgIF0sJyxcbiAgICAgICAgJyAgICAgICAgcmVzb3VyY2VzOiBbQXJuLmZvcm1hdCh7JyxcbiAgICAgICAgXCIgICAgICAgICAgc2VydmljZTogJ2ttcycsXCIsXG4gICAgICAgIFwiICAgICAgICAgIHJlc291cmNlOiAna2V5JyxcIixcbiAgICAgICAgXCIgICAgICAgICAgcmVzb3VyY2VOYW1lOiAnYTY5OWY4NTMtMDQ3NS00ZDRkLWI4YWItYmU4ODFkNjY2MjRmJyxcIixcbiAgICAgICAgXCIgICAgICAgICAgcGFydGl0aW9uOiAnYXdzJyxcIixcbiAgICAgICAgJyAgICAgICAgICByZWdpb246IFN0YWNrLm9mKHRoaXMpLnJlZ2lvbiwnLFxuICAgICAgICBcIiAgICAgICAgICBhY2NvdW50OiAnNTgxNTE0NjcyMzY3JyxcIixcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgICAgIH0pXSwnLFxuICAgICAgICAnICAgICAgfSkpOycsXG4gICAgICAgICcgICAgfScsXG4gICAgICAgICcnLFxuICAgICAgICBcIiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBQcm92aWRlcih0aGlzLCAnUHJvdmlkZXInLCB7XCIsXG4gICAgICAgICcgICAgICBvbkV2ZW50SGFuZGxlcjogbGFtYmRhLCcsXG4gICAgICAgICcgICAgfSk7JyxcbiAgICAgICAgJycsXG4gICAgICAgIFwiICAgIGNvbnN0IGN1c3RvbVJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcIixcbiAgICAgICAgJyAgICAgIHNlcnZpY2VUb2tlbjogcHJvdmlkZXIuc2VydmljZVRva2VuLCcsXG4gICAgICAgICcgICAgICBwcm9wZXJ0aWVzOiB7JyxcbiAgICAgICAgJyAgICAgICAgQ29udGVudDogbmV3Q29udGVudHMsJyxcbiAgICAgICAgJyAgICAgIH0sJyxcbiAgICAgICAgJyAgICB9KTsnLFxuICAgICAgICAnJyxcbiAgICAgICAgXCIgICAgdGhpcy53ZWJob29rUGF0aCA9IGN1c3RvbVJlc291cmNlLmdldEF0dCgnV2ViaG9va1BhdGgnKTtcIixcbiAgICAgICAgJycsXG4gICAgICAgICcgICAgLy8gT3V0cHV0IHRoZSBMYW1iZGEgZXhlY3V0aW9uIHJvbGUgQVJOIGZvciBjcm9zcy1hY2NvdW50IEtNUyBwZXJtaXNzaW9ucycsXG4gICAgICAgIFwiICAgIG5ldyBDZm5PdXRwdXQodGhpcywgJ0xhbWJkYUV4ZWN1dGlvblJvbGVBcm4nLCB7XCIsXG4gICAgICAgICcgICAgICB2YWx1ZTogbGFtYmRhLnJvbGUhLnJvbGVBcm4sJyxcbiAgICAgICAgXCIgICAgICBkZXNjcmlwdGlvbjogJ0xhbWJkYSBleGVjdXRpb24gcm9sZSBBUk4gLSBhZGQgdGhpcyB0byBLTVMga2V5IHBvbGljeSBpbiBvdGhlciBhY2NvdW50JyxcIixcbiAgICAgICAgJyAgICB9KTsnLFxuICAgICAgICAnICB9JyxcbiAgICAgICAgJycsXG4gICAgICAgICcnLFxuICAgICAgICAnfScsXG4gICAgICAgICcnLFxuICAgICAgICAnZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VGaWVsZEJ5Tm9kZU5hbWUoJyxcbiAgICAgICAgJyAgb2JqOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwnLFxuICAgICAgICAnICBub2RlTmFtZTogc3RyaW5nLCcsXG4gICAgICAgICcgIGZpZWxkUGF0aDogc3RyaW5nLCAvLyBkb3Qtbm90YXRpb24gcmVsYXRpdmUgdG8gdGhlIG5vZGUsIGUuZy4gXCJwYXJhbWV0ZXJzLnVybFwiJyxcbiAgICAgICAgJyAgbmV3VmFsdWU6IHVua25vd24sJyxcbiAgICAgICAgJyk6IHZvaWQgeycsXG4gICAgICAgICcgIGNvbnN0IG5vZGVzID0gSlNPTlBhdGgoeycsXG4gICAgICAgIFwiICAgIHBhdGg6IGAkLm5vZGVzWz8oQC5uYW1lPT0nJHtub2RlTmFtZX0nKV1gLFwiLFxuICAgICAgICAnICAgIGpzb246IG9iaiwnLFxuICAgICAgICBcIiAgICByZXN1bHRUeXBlOiAndmFsdWUnLFwiLFxuICAgICAgICAnICB9KTsnLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgZm9yIChjb25zdCBub2RlIG9mIG5vZGVzKSB7JyxcbiAgICAgICAgJyAgICBzZXROZXN0ZWRWYWx1ZShub2RlLCBmaWVsZFBhdGgsIG5ld1ZhbHVlKTsnLFxuICAgICAgICAnICB9JyxcbiAgICAgICAgJ30nLFxuICAgICAgICAnJyxcbiAgICAgICAgJ2Z1bmN0aW9uIHNldE5lc3RlZFZhbHVlKG9iajogYW55LCBkb3RQYXRoOiBzdHJpbmcsIHZhbHVlOiB1bmtub3duKTogdm9pZCB7JyxcbiAgICAgICAgXCIgIGNvbnN0IGtleXMgPSBkb3RQYXRoLnNwbGl0KCcuJyk7XCIsXG4gICAgICAgICcgIGxldCBjdXJyZW50ID0gb2JqOycsXG4gICAgICAgICcgIGZvciAobGV0IGkgPSAwOyBpIDwga2V5cy5sZW5ndGggLSAxOyBpKyspIHsnLFxuICAgICAgICAnICAgIGN1cnJlbnQgPSBjdXJyZW50W2tleXNbaV1dOycsXG4gICAgICAgICcgIH0nLFxuICAgICAgICAnICBjdXJyZW50W2tleXNba2V5cy5sZW5ndGggLSAxXV0gPSB2YWx1ZTsnLFxuICAgICAgICAnfScsXG4gICAgICAgICcnLFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -49,7 +49,7 @@
49
49
  "main": "lib/index.js",
50
50
  "license": "Apache-2.0",
51
51
  "stability": "stable",
52
- "version": "1.19.0",
52
+ "version": "1.19.1",
53
53
  "jest": {
54
54
  "coverageProvider": "v8",
55
55
  "testMatch": [