@macedon-technologies/batman 1.21.2 → 1.21.4

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.21.2",
1251
- "fingerprint": "l9yaimEo/MiFyQu40vJplwVVBOz9rpDSg7rcvmJBNlE="
1250
+ "version": "1.21.4",
1251
+ "fingerprint": "6iB3f3ZsGzit5sB0Hrs4Dx96OxKXwvlBsBoyIIwcFT8="
1252
1252
  }
@@ -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.21.2" };
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.21.4" };
16
16
  constructor(options) {
17
17
  super({
18
18
  ...options,
@@ -121,7 +121,22 @@ class BatmanProject extends awscdk_1.AwsCdkTypeScriptApp {
121
121
  exec: 'cdk -a "npx ts-node -P tsconfig.json --prefer-ts-exts src/LocalDevApp.ts"',
122
122
  receiveArgs: true,
123
123
  });
124
+ this.addTask('cdk:dev:hotswap', {
125
+ description: 'Deploys your personal dev stack (src/LocalDevApp.ts) with hotswap-fallback',
126
+ exec: 'cdk -a "npx ts-node -P tsconfig.json --prefer-ts-exts src/LocalDevApp.ts" deploy --hotswap-fallback',
127
+ receiveArgs: true,
128
+ });
129
+ // projen's AwsCdkTypeScriptApp default `watch` task uses bare `--hotswap`,
130
+ // which silently ignores non-hotswappable changes (e.g. the Migrations
131
+ // custom resource) instead of falling back to a full deployment.
132
+ const watch = this.tasks.tryFind('watch');
133
+ if (watch) {
134
+ watch.reset();
135
+ watch.description = 'Watches changes in your source code and rebuilds and deploys to the current account';
136
+ watch.exec('cdk deploy --hotswap-fallback');
137
+ watch.exec('cdk watch');
138
+ }
124
139
  }
125
140
  }
126
141
  exports.BatmanProject = BatmanProject;
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmF0bWFuUHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9CYXRtYW5Qcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw4Q0FBb0Y7QUFDcEYsOENBQXNEO0FBQ3RELCtDQUEwRTtBQUMxRSxxREFBa0Q7QUFDbEQsMkRBQXdEO0FBQ3hELHVEQUFvRDtBQUNwRCxpRUFBOEQ7QUFDOUQsbUNBQXlDO0FBQ3pDLHlEQUFzRDtBQXNEdEQsTUFBYSxhQUFjLFNBQVEsNEJBQW1COztJQUNwRCxZQUFZLE9BQTZCO1FBQ3ZDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixJQUFJLE1BQU07WUFDNUQsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLElBQUksRUFBRTtnQkFDSixtQkFBbUI7Z0JBQ25CLGdCQUFnQjtnQkFDaEIsV0FBVztnQkFDWCxJQUFJO2dCQUNKLHFCQUFxQjtnQkFDckIsc0JBQXNCO2dCQUN0QiwyQkFBMkI7Z0JBQzNCLDBCQUEwQjtnQkFDMUIsbUNBQW1DO2dCQUNuQyxjQUFjO2dCQUNkLGlDQUFpQztnQkFDakMsU0FBUztnQkFDVCxpQkFBaUI7Z0JBQ2pCLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFO2FBQ3RCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLHFCQUFxQjtnQkFDckIsU0FBUztnQkFDVCxjQUFjO2dCQUNkLHFDQUFxQztnQkFDckMsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUU7YUFDekI7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsbURBQW1EO2dCQUNuRCxjQUFjO2dCQUNkLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFO2FBQzNCO1lBQ0QsUUFBUSxF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Q3RCLElBQUksRUFBRSwyRUFBMkU7WUFDakYsV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FBQyxDQUFDO0lBR0wsQ0FBQzs7QUE3SEgsc0NBOEhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCwgQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBHaXRodWJDcmVkZW50aWFscyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uLCBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnIH0gZnJvbSAnLi9BcHBsaWNhdGlvbic7XG5pbXBvcnQgeyBDb2RlT3duZXJzRmlsZSB9IGZyb20gJy4vQ29kZU93bmVyc0ZpbGUnO1xuaW1wb3J0IHsgRGF0YURvZ0FzcGVjdEZpbGUgfSBmcm9tICcuL0RhdGFEb2dBc3BlY3RGaWxlJztcbmltcG9ydCB7IEdpdEh1YlJvbGVzRmlsZSB9IGZyb20gJy4vR2l0SHViUm9sZXNGaWxlJztcbmltcG9ydCB7IFNvZnR3YXJlRmFjdG9yeUZpbGVzIH0gZnJvbSAnLi9Tb2Z0d2FyZUZhY3RvcnlGaWxlcyc7XG5pbXBvcnQgeyByZWFkbWVDb250ZW50cyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgVml0ZVJlYWN0UHJvamVjdCB9IGZyb20gJy4vVml0ZVJlYWN0UHJvamVjdCc7XG5pbXBvcnQgeyBXb3JrZmxvd0FjdGlvblZlcnNpb25zIH0gZnJvbSAnLi9Xb3JrZmxvd0FjdGlvblZlcnNpb25zJztcblxuZXhwb3J0IGludGVyZmFjZSBCYXRtYW5Qcm9qZWN0T3B0aW9ucyBleHRlbmRzIEF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIHtcblxuICAvKipcbiAgICogRGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGV2OiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuXG4gIC8qKlxuICAgKiBEZXZlbG9wbWVudCBlbnZpcm9ubWVudCBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBzdGFnaW5nOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuXG4gIC8qKlxuICAgKiBQcm9kdWN0aW9uIGVudmlyb25tZW50IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHByb2Q6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgdGFncyB0byBhcHBseSB0byBhbGwgc3RhY2tzXG4gICAqL1xuICByZWFkb25seSBhZGRpdGlvbmFsVGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBuOG4gd29ya2Zsb3cgYXV0by1kaXNjb3ZlcnkgYW5kIFdvcmtmbG93UHJvdmlkZXIgZ2VuZXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgbjhuV29ya2Zsb3dzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBjb2RlIG93bmVycyB0byBhZGQgdG8gdGhlIENPREVPV05FUlMgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbENvZGVPd25lcnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogV2Vic2l0ZSBkZXBlbmRlbmNpZXNcbiAgICovXG4gIHJlYWRvbmx5IHdlYnNpdGVEZXBzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIHBpbm5lZCBhY3Rpb24gdmVyc2lvbnMgdXNlZCBieSB0aGUgZ2VuZXJhdGVkIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cy5cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvblZlcnNpb25zPzogV29ya2Zsb3dBY3Rpb25WZXJzaW9ucztcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIHRoZSBwaW5uZWQgUzMgb2JqZWN0IHZlcnNpb24gb2YgdGhlIGNsZXJrLWF1dGhvcml6ZXIgTGFtYmRhIGRlcGxveW1lbnQgcGFja2FnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB0aGUgZGVmYXVsdCBwaW5uZWQgaW4gQXBpQ29uc3RydWN0RmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yaXplck9iamVjdFZlcnNpb24/OiBzdHJpbmc7XG59XG5cblxuZXhwb3J0IGNsYXNzIEJhdG1hblByb2plY3QgZXh0ZW5kcyBBd3NDZGtUeXBlU2NyaXB0QXBwIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogQmF0bWFuUHJvamVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uIHx8ICcyLjIyNC4wJyxcbiAgICAgIGRlZmF1bHRSZWxlYXNlQnJhbmNoOiBvcHRpb25zLmRlZmF1bHRSZWxlYXNlQnJhbmNoIHx8ICdtYWluJyxcbiAgICAgIG5hbWU6IG9wdGlvbnMubmFtZSxcbiAgICAgIHByb2plbnJjVHM6IHRydWUsXG4gICAgICBidWlsZFdvcmtmbG93OiBmYWxzZSxcbiAgICAgIGRlcHM6IFtcbiAgICAgICAgJ0B0eXBlcy9hd3MtbGFtYmRhJyxcbiAgICAgICAgJ0B0eXBlcy9leHByZXNzJyxcbiAgICAgICAgJ0B0eXBlcy9wZycsXG4gICAgICAgICdwZycsXG4gICAgICAgICdAYXdzLXNkay9yZHMtc2lnbmVyJyxcbiAgICAgICAgJ0BtYXR0aGV3Ym9uaWcvc2VjcmV0JyxcbiAgICAgICAgJ2RhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjInLFxuICAgICAgICAnQGNka2xhYnMvYXdzLWxhbWJkYS1ydXN0JyxcbiAgICAgICAgJ0Bhd3MtbGFtYmRhLXBvd2VydG9vbHMvcGFyYW1ldGVycycsXG4gICAgICAgICdqc29ud2VidG9rZW4nLFxuICAgICAgICAnQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlcicsXG4gICAgICAgICdleHByZXNzJyxcbiAgICAgICAgJ3NlcnZlcmxlc3MtaHR0cCcsXG4gICAgICAgIC4uLm9wdGlvbnMuZGVwcyB8fCBbXSxcbiAgICAgIF0sXG4gICAgICBkZXZEZXBzOiBbXG4gICAgICAgICdAdHlwZXMvanNvbndlYnRva2VuJyxcbiAgICAgICAgJ25vZGVtb24nLFxuICAgICAgICAnY29uY3VycmVudGx5JyxcbiAgICAgICAgJ0BtYWNlZG9uLXRlY2hub2xvZ2llcy9iYXRtYW5AXjEuMC4wJyxcbiAgICAgICAgLi4ub3B0aW9ucy5kZXZEZXBzIHx8IFtdLFxuICAgICAgXSxcbiAgICAgIGdpdGlnbm9yZTogW1xuICAgICAgICAnc3JjL2NvbnN0cnVjdHMvaGFuZGxlci9jbGVyay1hdXRob3JpemVyL3RhcmdldC8qKicsXG4gICAgICAgICcqKi8uRFNfU3RvcmUnLFxuICAgICAgICAuLi5vcHRpb25zLmdpdGlnbm9yZSB8fCBbXSxcbiAgICAgIF0sXG4gICAgICB0c2NvbmZpZzoge1xuICAgICAgICAuLi5vcHRpb25zLnRzY29uZmlnLFxuICAgICAgICBjb21waWxlck9wdGlvbnM6IHtcbiAgICAgICAgICAuLi5vcHRpb25zLnRzY29uZmlnPy5jb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgaXNvbGF0ZWRNb2R1bGVzOiB0cnVlLFxuICAgICAgICAgIGFsbG93SW1wb3J0aW5nVHNFeHRlbnNpb25zOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHNhbXBsZUNvZGU6IGZhbHNlLFxuICAgICAgbWluTm9kZVZlcnNpb246IG9wdGlvbnMubWluTm9kZVZlcnNpb24gfHwgJzIyJyxcbiAgICAgIGRlcHNVcGdyYWRlT3B0aW9uczoge1xuICAgICAgICB3b3JrZmxvd09wdGlvbnM6IHtcbiAgICAgICAgICBwcm9qZW5DcmVkZW50aWFsczogR2l0aHViQ3JlZGVudGlhbHMuZnJvbVBlcnNvbmFsQWNjZXNzVG9rZW4oe1xuICAgICAgICAgICAgc2VjcmV0OiAnR0lUSFVCX1RPS0VOJyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICByZWFkbWU6IHtcbiAgICAgICAgY29udGVudHM6IHJlYWRtZUNvbnRlbnRzKG9wdGlvbnMubmFtZSksXG4gICAgICB9LFxuICAgIH0pO1xuXG5cbiAgICAvLyBDcmVhdGUgc3RhbmRhcmQgcHJvamVjdCBmaWxlc1xuICAgIGNvbnN0IFBSSU1BUllfQUNDT1VOVCA9ICcwMTU5NTU4MTcyNjMnO1xuICAgIGNvbnN0IFBSSU1BUllfUkVHSU9OID0gJ3VzLWVhc3QtMSc7XG5cbiAgICBuZXcgQXBwbGljYXRpb24odGhpcywge1xuICAgICAgZ2l0aHViUmVwb3NpdG9yeTogYG1hY2Vkb24tdGVjaG5vbG9naWVzLyR7b3B0aW9ucy5uYW1lfWAsXG4gICAgICBkZXY6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5kZXYsXG4gICAgICB9LFxuICAgICAgc3RhZ2luZzoge1xuICAgICAgICAuLi5vcHRpb25zLnN0YWdpbmcsXG4gICAgICB9LFxuICAgICAgcHJvZDoge1xuICAgICAgICAuLi5vcHRpb25zLmRldixcbiAgICAgIH0sXG4gICAgICBhZGRpdGlvbmFsVGFnczogb3B0aW9ucy5hZGRpdGlvbmFsVGFncyxcbiAgICAgIG44bldvcmtmbG93czogb3B0aW9ucy5uOG5Xb3JrZmxvd3MsXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICAgIGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uOiBvcHRpb25zLmF1dGhvcml6ZXJPYmplY3RWZXJzaW9uLFxuICAgIH0pO1xuXG4gICAgbmV3IEdpdEh1YlJvbGVzRmlsZSh0aGlzLCB7XG4gICAgICBhY2NvdW50OiBQUklNQVJZX0FDQ09VTlQsXG4gICAgICBwcmltYXJ5UmVnaW9uOiBQUklNQVJZX1JFR0lPTixcbiAgICB9KTtcblxuICAgIG5ldyBDb2RlT3duZXJzRmlsZSh0aGlzLCB7XG4gICAgICBhZGRpdGlvbmFsT3duZXJzOiBvcHRpb25zLmFkZGl0aW9uYWxDb2RlT3duZXJzLFxuICAgIH0pO1xuXG4gICAgbmV3IERhdGFEb2dBc3BlY3RGaWxlKHRoaXMpO1xuXG4gICAgbmV3IFNvZnR3YXJlRmFjdG9yeUZpbGVzKHRoaXMsIHtcbiAgICAgIHJlcG9OYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBiYXNlQnJhbmNoOiBvcHRpb25zLmRlZmF1bHRSZWxlYXNlQnJhbmNoLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBjb25zdCB2aXRlUmVhY3QgPSBuZXcgVml0ZVJlYWN0UHJvamVjdCh7XG4gICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogJ21haW4nLFxuICAgICAgcGFyZW50OiB0aGlzLFxuICAgICAgb3V0ZGlyOiAnd2ViJyxcbiAgICAgIGRlcHM6IG9wdGlvbnMud2Vic2l0ZURlcHMsXG4gICAgfSk7XG4gICAgdml0ZVJlYWN0LmFkZENvbmZpZ0ZpZWxkKCdzb21ldGhpbmcnLCAnbnVtYmVyJyk7XG4gICAgdml0ZVJlYWN0LmFkZENvbmZpZ0ZpZWxkKCdzb21ldGhpbmdFbHNlJywgJ3N0cmluZycpO1xuXG4gICAgY29uc3QgY29uY3VycmVudGx5ID0gKC4uLmFyZ3M6IHN0cmluZ1tdKSA9PiB7XG4gICAgICByZXR1cm4gYGNvbmN1cnJlbnRseSAke2FyZ3MubWFwKGEgPT4gYFwiJHthfVwiYCkuam9pbignICcpfWA7XG4gICAgfTtcblxuICAgIHRoaXMuYWRkVGFzaygnZGV2Jywge1xuICAgICAgZXhlYzogY29uY3VycmVudGx5KFxuICAgICAgICAnbm9kZW1vbiAtLXdhdGNoIC4vc3JjL2NvbnN0cnVjdHMvaGFuZGxlciAtLXdhdGNoIC4vbG9jYWwvZGV2LnRzIC4vbG9jYWwvZGV2LnRzJyxcbiAgICAgICAgdml0ZVJlYWN0LmRldkNvbW1hbmQsXG4gICAgICApLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hZGRUYXNrKCdjZGs6ZGV2Jywge1xuICAgICAgZXhlYzogJ2NkayAtYSBcIm5weCB0cy1ub2RlIC1QIHRzY29uZmlnLmpzb24gLS1wcmVmZXItdHMtZXh0cyBzcmMvTG9jYWxEZXZBcHAudHNcIicsXG4gICAgICByZWNlaXZlQXJnczogdHJ1ZSxcbiAgICB9KTtcblxuXG4gIH1cbn1cbiJdfQ==
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmF0bWFuUHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9CYXRtYW5Qcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw4Q0FBb0Y7QUFDcEYsOENBQXNEO0FBQ3RELCtDQUEwRTtBQUMxRSxxREFBa0Q7QUFDbEQsMkRBQXdEO0FBQ3hELHVEQUFvRDtBQUNwRCxpRUFBOEQ7QUFDOUQsbUNBQXlDO0FBQ3pDLHlEQUFzRDtBQXNEdEQsTUFBYSxhQUFjLFNBQVEsNEJBQW1COztJQUNwRCxZQUFZLE9BQTZCO1FBQ3ZDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixJQUFJLE1BQU07WUFDNUQsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLElBQUksRUFBRTtnQkFDSixtQkFBbUI7Z0JBQ25CLGdCQUFnQjtnQkFDaEIsV0FBVztnQkFDWCxJQUFJO2dCQUNKLHFCQUFxQjtnQkFDckIsc0JBQXNCO2dCQUN0QiwyQkFBMkI7Z0JBQzNCLDBCQUEwQjtnQkFDMUIsbUNBQW1DO2dCQUNuQyxjQUFjO2dCQUNkLGlDQUFpQztnQkFDakMsU0FBUztnQkFDVCxpQkFBaUI7Z0JBQ2pCLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFO2FBQ3RCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLHFCQUFxQjtnQkFDckIsU0FBUztnQkFDVCxjQUFjO2dCQUNkLHFDQUFxQztnQkFDckMsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUU7YUFDekI7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsbURBQW1EO2dCQUNuRCxjQUFjO2dCQUNkLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFO2FBQzNCO1lBQ0QsUUFBUSxF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Q3RCLElBQUksRUFBRSwyRUFBMkU7WUFDakYsV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRTtZQUM5QixXQUFXLEVBQUUsNEVBQTRFO1lBQ3pGLElBQUksRUFBRSxxR0FBcUc7WUFDM0csV0FBVyxFQUFFLElBQUk7U0FDbEIsQ0FBQyxDQUFDO1FBRUgsMkVBQTJFO1FBQzNFLHVFQUF1RTtRQUN2RSxpRUFBaUU7UUFDakUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNkLEtBQUssQ0FBQyxXQUFXLEdBQUcscUZBQXFGLENBQUM7WUFDMUcsS0FBSyxDQUFDLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1lBQzVDLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUIsQ0FBQztJQUVILENBQUM7O0FBN0lILHNDQThJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAsIEF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuaW1wb3J0IHsgR2l0aHViQ3JlZGVudGlhbHMgfSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yic7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbiwgQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZyB9IGZyb20gJy4vQXBwbGljYXRpb24nO1xuaW1wb3J0IHsgQ29kZU93bmVyc0ZpbGUgfSBmcm9tICcuL0NvZGVPd25lcnNGaWxlJztcbmltcG9ydCB7IERhdGFEb2dBc3BlY3RGaWxlIH0gZnJvbSAnLi9EYXRhRG9nQXNwZWN0RmlsZSc7XG5pbXBvcnQgeyBHaXRIdWJSb2xlc0ZpbGUgfSBmcm9tICcuL0dpdEh1YlJvbGVzRmlsZSc7XG5pbXBvcnQgeyBTb2Z0d2FyZUZhY3RvcnlGaWxlcyB9IGZyb20gJy4vU29mdHdhcmVGYWN0b3J5RmlsZXMnO1xuaW1wb3J0IHsgcmVhZG1lQ29udGVudHMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFZpdGVSZWFjdFByb2plY3QgfSBmcm9tICcuL1ZpdGVSZWFjdFByb2plY3QnO1xuaW1wb3J0IHsgV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyB9IGZyb20gJy4vV29ya2Zsb3dBY3Rpb25WZXJzaW9ucyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmF0bWFuUHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBBd3NDZGtUeXBlU2NyaXB0QXBwT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIERldmVsb3BtZW50IGVudmlyb25tZW50IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRldjogQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZztcblxuICAvKipcbiAgICogRGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgc3RhZ2luZzogQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZztcblxuICAvKipcbiAgICogUHJvZHVjdGlvbiBlbnZpcm9ubWVudCBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBwcm9kOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIHRhZ3MgdG8gYXBwbHkgdG8gYWxsIHN0YWNrc1xuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbFRhZ3M/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKlxuICAgKiBFbmFibGUgbjhuIHdvcmtmbG93IGF1dG8tZGlzY292ZXJ5IGFuZCBXb3JrZmxvd1Byb3ZpZGVyIGdlbmVyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IG44bldvcmtmbG93cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgY29kZSBvd25lcnMgdG8gYWRkIHRvIHRoZSBDT0RFT1dORVJTIGZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxDb2RlT3duZXJzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFdlYnNpdGUgZGVwZW5kZW5jaWVzXG4gICAqL1xuICByZWFkb25seSB3ZWJzaXRlRGVwcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgZm9yIHRoZSBwaW5uZWQgYWN0aW9uIHZlcnNpb25zIHVzZWQgYnkgdGhlIGdlbmVyYXRlZCBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvd3MuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25WZXJzaW9ucz86IFdvcmtmbG93QWN0aW9uVmVyc2lvbnM7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyB0aGUgcGlubmVkIFMzIG9iamVjdCB2ZXJzaW9uIG9mIHRoZSBjbGVyay1hdXRob3JpemVyIExhbWJkYSBkZXBsb3ltZW50IHBhY2thZ2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdGhlIGRlZmF1bHQgcGlubmVkIGluIEFwaUNvbnN0cnVjdEZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uPzogc3RyaW5nO1xufVxuXG5cbmV4cG9ydCBjbGFzcyBCYXRtYW5Qcm9qZWN0IGV4dGVuZHMgQXdzQ2RrVHlwZVNjcmlwdEFwcCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEJhdG1hblByb2plY3RPcHRpb25zKSB7XG4gICAgc3VwZXIoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIGNka1ZlcnNpb246IG9wdGlvbnMuY2RrVmVyc2lvbiB8fCAnMi4yMjQuMCcsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCB8fCAnbWFpbicsXG4gICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBwcm9qZW5yY1RzOiB0cnVlLFxuICAgICAgYnVpbGRXb3JrZmxvdzogZmFsc2UsXG4gICAgICBkZXBzOiBbXG4gICAgICAgICdAdHlwZXMvYXdzLWxhbWJkYScsXG4gICAgICAgICdAdHlwZXMvZXhwcmVzcycsXG4gICAgICAgICdAdHlwZXMvcGcnLFxuICAgICAgICAncGcnLFxuICAgICAgICAnQGF3cy1zZGsvcmRzLXNpZ25lcicsXG4gICAgICAgICdAbWF0dGhld2JvbmlnL3NlY3JldCcsXG4gICAgICAgICdkYXRhZG9nLWNkay1jb25zdHJ1Y3RzLXYyJyxcbiAgICAgICAgJ0BjZGtsYWJzL2F3cy1sYW1iZGEtcnVzdCcsXG4gICAgICAgICdAYXdzLWxhbWJkYS1wb3dlcnRvb2xzL3BhcmFtZXRlcnMnLFxuICAgICAgICAnanNvbndlYnRva2VuJyxcbiAgICAgICAgJ0Bhd3Mtc2RrL2NsaWVudC1zZWNyZXRzLW1hbmFnZXInLFxuICAgICAgICAnZXhwcmVzcycsXG4gICAgICAgICdzZXJ2ZXJsZXNzLWh0dHAnLFxuICAgICAgICAuLi5vcHRpb25zLmRlcHMgfHwgW10sXG4gICAgICBdLFxuICAgICAgZGV2RGVwczogW1xuICAgICAgICAnQHR5cGVzL2pzb253ZWJ0b2tlbicsXG4gICAgICAgICdub2RlbW9uJyxcbiAgICAgICAgJ2NvbmN1cnJlbnRseScsXG4gICAgICAgICdAbWFjZWRvbi10ZWNobm9sb2dpZXMvYmF0bWFuQF4xLjAuMCcsXG4gICAgICAgIC4uLm9wdGlvbnMuZGV2RGVwcyB8fCBbXSxcbiAgICAgIF0sXG4gICAgICBnaXRpZ25vcmU6IFtcbiAgICAgICAgJ3NyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvY2xlcmstYXV0aG9yaXplci90YXJnZXQvKionLFxuICAgICAgICAnKiovLkRTX1N0b3JlJyxcbiAgICAgICAgLi4ub3B0aW9ucy5naXRpZ25vcmUgfHwgW10sXG4gICAgICBdLFxuICAgICAgdHNjb25maWc6IHtcbiAgICAgICAgLi4ub3B0aW9ucy50c2NvbmZpZyxcbiAgICAgICAgY29tcGlsZXJPcHRpb25zOiB7XG4gICAgICAgICAgLi4ub3B0aW9ucy50c2NvbmZpZz8uY29tcGlsZXJPcHRpb25zLFxuICAgICAgICAgIGlzb2xhdGVkTW9kdWxlczogdHJ1ZSxcbiAgICAgICAgICBhbGxvd0ltcG9ydGluZ1RzRXh0ZW5zaW9uczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzYW1wbGVDb2RlOiBmYWxzZSxcbiAgICAgIG1pbk5vZGVWZXJzaW9uOiBvcHRpb25zLm1pbk5vZGVWZXJzaW9uIHx8ICcyMicsXG4gICAgICBkZXBzVXBncmFkZU9wdGlvbnM6IHtcbiAgICAgICAgd29ya2Zsb3dPcHRpb25zOiB7XG4gICAgICAgICAgcHJvamVuQ3JlZGVudGlhbHM6IEdpdGh1YkNyZWRlbnRpYWxzLmZyb21QZXJzb25hbEFjY2Vzc1Rva2VuKHtcbiAgICAgICAgICAgIHNlY3JldDogJ0dJVEhVQl9UT0tFTicsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgcmVhZG1lOiB7XG4gICAgICAgIGNvbnRlbnRzOiByZWFkbWVDb250ZW50cyhvcHRpb25zLm5hbWUpLFxuICAgICAgfSxcbiAgICB9KTtcblxuXG4gICAgLy8gQ3JlYXRlIHN0YW5kYXJkIHByb2plY3QgZmlsZXNcbiAgICBjb25zdCBQUklNQVJZX0FDQ09VTlQgPSAnMDE1OTU1ODE3MjYzJztcbiAgICBjb25zdCBQUklNQVJZX1JFR0lPTiA9ICd1cy1lYXN0LTEnO1xuXG4gICAgbmV3IEFwcGxpY2F0aW9uKHRoaXMsIHtcbiAgICAgIGdpdGh1YlJlcG9zaXRvcnk6IGBtYWNlZG9uLXRlY2hub2xvZ2llcy8ke29wdGlvbnMubmFtZX1gLFxuICAgICAgZGV2OiB7XG4gICAgICAgIC4uLm9wdGlvbnMuZGV2LFxuICAgICAgfSxcbiAgICAgIHN0YWdpbmc6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5zdGFnaW5nLFxuICAgICAgfSxcbiAgICAgIHByb2Q6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5kZXYsXG4gICAgICB9LFxuICAgICAgYWRkaXRpb25hbFRhZ3M6IG9wdGlvbnMuYWRkaXRpb25hbFRhZ3MsXG4gICAgICBuOG5Xb3JrZmxvd3M6IG9wdGlvbnMubjhuV29ya2Zsb3dzLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgICBhdXRob3JpemVyT2JqZWN0VmVyc2lvbjogb3B0aW9ucy5hdXRob3JpemVyT2JqZWN0VmVyc2lvbixcbiAgICB9KTtcblxuICAgIG5ldyBHaXRIdWJSb2xlc0ZpbGUodGhpcywge1xuICAgICAgYWNjb3VudDogUFJJTUFSWV9BQ0NPVU5ULFxuICAgICAgcHJpbWFyeVJlZ2lvbjogUFJJTUFSWV9SRUdJT04sXG4gICAgfSk7XG5cbiAgICBuZXcgQ29kZU93bmVyc0ZpbGUodGhpcywge1xuICAgICAgYWRkaXRpb25hbE93bmVyczogb3B0aW9ucy5hZGRpdGlvbmFsQ29kZU93bmVycyxcbiAgICB9KTtcblxuICAgIG5ldyBEYXRhRG9nQXNwZWN0RmlsZSh0aGlzKTtcblxuICAgIG5ldyBTb2Z0d2FyZUZhY3RvcnlGaWxlcyh0aGlzLCB7XG4gICAgICByZXBvTmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgYmFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgdml0ZVJlYWN0ID0gbmV3IFZpdGVSZWFjdFByb2plY3Qoe1xuICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6ICdtYWluJyxcbiAgICAgIHBhcmVudDogdGhpcyxcbiAgICAgIG91dGRpcjogJ3dlYicsXG4gICAgICBkZXBzOiBvcHRpb25zLndlYnNpdGVEZXBzLFxuICAgIH0pO1xuICAgIHZpdGVSZWFjdC5hZGRDb25maWdGaWVsZCgnc29tZXRoaW5nJywgJ251bWJlcicpO1xuICAgIHZpdGVSZWFjdC5hZGRDb25maWdGaWVsZCgnc29tZXRoaW5nRWxzZScsICdzdHJpbmcnKTtcblxuICAgIGNvbnN0IGNvbmN1cnJlbnRseSA9ICguLi5hcmdzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgcmV0dXJuIGBjb25jdXJyZW50bHkgJHthcmdzLm1hcChhID0+IGBcIiR7YX1cImApLmpvaW4oJyAnKX1gO1xuICAgIH07XG5cbiAgICB0aGlzLmFkZFRhc2soJ2RldicsIHtcbiAgICAgIGV4ZWM6IGNvbmN1cnJlbnRseShcbiAgICAgICAgJ25vZGVtb24gLS13YXRjaCAuL3NyYy9jb25zdHJ1Y3RzL2hhbmRsZXIgLS13YXRjaCAuL2xvY2FsL2Rldi50cyAuL2xvY2FsL2Rldi50cycsXG4gICAgICAgIHZpdGVSZWFjdC5kZXZDb21tYW5kLFxuICAgICAgKSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkVGFzaygnY2RrOmRldicsIHtcbiAgICAgIGV4ZWM6ICdjZGsgLWEgXCJucHggdHMtbm9kZSAtUCB0c2NvbmZpZy5qc29uIC0tcHJlZmVyLXRzLWV4dHMgc3JjL0xvY2FsRGV2QXBwLnRzXCInLFxuICAgICAgcmVjZWl2ZUFyZ3M6IHRydWUsXG4gICAgfSk7XG5cbiAgICB0aGlzLmFkZFRhc2soJ2NkazpkZXY6aG90c3dhcCcsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVwbG95cyB5b3VyIHBlcnNvbmFsIGRldiBzdGFjayAoc3JjL0xvY2FsRGV2QXBwLnRzKSB3aXRoIGhvdHN3YXAtZmFsbGJhY2snLFxuICAgICAgZXhlYzogJ2NkayAtYSBcIm5weCB0cy1ub2RlIC1QIHRzY29uZmlnLmpzb24gLS1wcmVmZXItdHMtZXh0cyBzcmMvTG9jYWxEZXZBcHAudHNcIiBkZXBsb3kgLS1ob3Rzd2FwLWZhbGxiYWNrJyxcbiAgICAgIHJlY2VpdmVBcmdzOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgLy8gcHJvamVuJ3MgQXdzQ2RrVHlwZVNjcmlwdEFwcCBkZWZhdWx0IGB3YXRjaGAgdGFzayB1c2VzIGJhcmUgYC0taG90c3dhcGAsXG4gICAgLy8gd2hpY2ggc2lsZW50bHkgaWdub3JlcyBub24taG90c3dhcHBhYmxlIGNoYW5nZXMgKGUuZy4gdGhlIE1pZ3JhdGlvbnNcbiAgICAvLyBjdXN0b20gcmVzb3VyY2UpIGluc3RlYWQgb2YgZmFsbGluZyBiYWNrIHRvIGEgZnVsbCBkZXBsb3ltZW50LlxuICAgIGNvbnN0IHdhdGNoID0gdGhpcy50YXNrcy50cnlGaW5kKCd3YXRjaCcpO1xuICAgIGlmICh3YXRjaCkge1xuICAgICAgd2F0Y2gucmVzZXQoKTtcbiAgICAgIHdhdGNoLmRlc2NyaXB0aW9uID0gJ1dhdGNoZXMgY2hhbmdlcyBpbiB5b3VyIHNvdXJjZSBjb2RlIGFuZCByZWJ1aWxkcyBhbmQgZGVwbG95cyB0byB0aGUgY3VycmVudCBhY2NvdW50JztcbiAgICAgIHdhdGNoLmV4ZWMoJ2NkayBkZXBsb3kgLS1ob3Rzd2FwLWZhbGxiYWNrJyk7XG4gICAgICB3YXRjaC5leGVjKCdjZGsgd2F0Y2gnKTtcbiAgICB9XG5cbiAgfVxufVxuIl19
@@ -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.21.2" };
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.21.4" };
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.21.2" };
7
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.21.4" };
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.21.2" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.21.4" };
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.21.2" };
34
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.SoftwareFactoryFiles", version: "1.21.4" };
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.21.2" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.21.4" };
11
11
  constructor(project, options) {
12
12
  const packageManager = project.package.packageManager;
13
13
  const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
@@ -24,6 +24,8 @@ class StaticWebsiteConstructFile extends projen_1.SampleFile {
24
24
  super(project, 'src/constructs/StaticWebsite.ts', {
25
25
  contents: `import * as path from 'path';
26
26
  import { createHash } from 'crypto';
27
+ import { execSync } from 'child_process';
28
+ import { cpSync, readFileSync, writeFileSync } from 'fs';
27
29
  import { DockerImage, Duration, RemovalPolicy } from 'aws-cdk-lib';
28
30
  import { RestApi } from 'aws-cdk-lib/aws-apigateway';
29
31
  import { Certificate, CertificateValidation } from 'aws-cdk-lib/aws-certificatemanager';
@@ -205,8 +207,9 @@ export class StaticWebsite extends Construct {
205
207
  }
206
208
 
207
209
  protected createBucketDeployment() {
210
+ const webDir = path.join(__dirname, '../../web');
208
211
  this.bucketDeployment = new BucketDeployment(this, 'BucketDeployment', {
209
- sources: [Source.asset(path.join(__dirname, '../../web'), {
212
+ sources: [Source.asset(webDir, {
210
213
  bundling: {
211
214
  image: DockerImage.fromRegistry('node:24-alpine'),
212
215
  environment: {
@@ -224,6 +227,24 @@ export class StaticWebsite extends Construct {
224
227
  'cp -r dist/* /asset-output/',
225
228
  ].join(' && '),
226
229
  ],
230
+ local: {
231
+ tryBundle: (outputDir: string): boolean => {
232
+ try {
233
+ execSync('${install}', { cwd: webDir, stdio: 'inherit' });
234
+ execSync('${build}', { cwd: webDir, stdio: 'inherit' });
235
+ const configPath = path.join(webDir, 'dist', 'config.json');
236
+ const config = readFileSync(configPath, 'utf-8');
237
+ writeFileSync(
238
+ configPath,
239
+ config.replace(/"apiBaseUrl": "[^"]*"/, \`"apiBaseUrl": "https://\${this.hostname}/api"\`),
240
+ );
241
+ cpSync(path.join(webDir, 'dist'), outputDir, { recursive: true });
242
+ return true;
243
+ } catch {
244
+ return false;
245
+ }
246
+ },
247
+ },
227
248
  },
228
249
  })],
229
250
  destinationBucket: this.bucket,
@@ -238,4 +259,4 @@ export class StaticWebsite extends Construct {
238
259
  }
239
260
  }
240
261
  exports.StaticWebsiteConstructFile = StaticWebsiteConstructFile;
241
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW9DO0FBRXBDLHNEQUEyRDtBQUUzRDs7OztHQUlHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxjQUFrQztJQUMxRCxRQUFRLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssK0JBQWtCLENBQUMsR0FBRztZQUN6QixPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUM7UUFDdkQsS0FBSywrQkFBa0IsQ0FBQyxJQUFJO1lBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsS0FBSyxFQUFFLHFCQUFxQixFQUFFLENBQUM7UUFDOUY7WUFDRSxPQUFPLEVBQUUsT0FBTyxFQUFFLG1FQUFtRSxFQUFFLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0lBQzFILENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBYSwwQkFBMkIsU0FBUSxtQkFBVTtJQUN4RCxZQUFZLE9BQTRCO1FBQ3RDLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQkFvTUMsT0FBTztpQkFDUCxLQUFLOzs7Ozs7Ozs7Ozs7OztDQWNyQjtTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTFORCxnRUEwTkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIgfSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgdGhlIGluc3RhbGwvYnVpbGQgY29tbWFuZHMgdXNlZCBpbnNpZGUgdGhlIGJ1Y2tldC1kZXBsb3ltZW50IGJ1bmRsaW5nIGNvbnRhaW5lci5cbiAqIFRoZSBjb250YWluZXIgb25seSBoYXMgbm9kZSwgbnBtLCBhbmQgY29yZXBhY2sgYmFrZWQgaW4gKG5vIHByZS1pbnN0YWxsZWQgeWFybi9wbnBtIGJpbmFyaWVzKSxcbiAqIHNvIHlhcm4gYW5kIHBucG0gbXVzdCBiZSBpbnZva2VkIHRocm91Z2ggY29yZXBhY2suXG4gKi9cbmZ1bmN0aW9uIGJ1bmRsaW5nQ29tbWFuZHMocGFja2FnZU1hbmFnZXI6IE5vZGVQYWNrYWdlTWFuYWdlcik6IHsgaW5zdGFsbDogc3RyaW5nOyBidWlsZDogc3RyaW5nIH0ge1xuICBzd2l0Y2ggKHBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgY2FzZSBOb2RlUGFja2FnZU1hbmFnZXIuTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ25wbSBjaScsIGJ1aWxkOiAnbnBtIHJ1biBidWlsZCcgfTtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5QTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHBucG0gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZScsIGJ1aWxkOiAnY29yZXBhY2sgcG5wbSBidWlsZCcgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAtLWNhY2hlLWZvbGRlciAvdG1wLy55YXJuJywgYnVpbGQ6ICdjb3JlcGFjayB5YXJuIGJ1aWxkJyB9O1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSBleHRlbmRzIFNhbXBsZUZpbGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtUeXBlU2NyaXB0QXBwKSB7XG4gICAgY29uc3QgeyBpbnN0YWxsLCBidWlsZCB9ID0gYnVuZGxpbmdDb21tYW5kcyhwcm9qZWN0LnBhY2thZ2UucGFja2FnZU1hbmFnZXIpO1xuICAgIHN1cGVyKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9TdGF0aWNXZWJzaXRlLnRzJywge1xuICAgICAgY29udGVudHM6IGBpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBEb2NrZXJJbWFnZSwgRHVyYXRpb24sIFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBSZXN0QXBpIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXknO1xuaW1wb3J0IHsgQ2VydGlmaWNhdGUsIENlcnRpZmljYXRlVmFsaWRhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0IHtcbiAgQWxsb3dlZE1ldGhvZHMsXG4gIENhY2hlSGVhZGVyQmVoYXZpb3IsXG4gIENhY2hlUG9saWN5LFxuICBEaXN0cmlidXRpb24sXG4gIFZpZXdlclByb3RvY29sUG9saWN5LFxufSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udCc7XG5pbXBvcnQgeyBSZXN0QXBpT3JpZ2luLCBTM0J1Y2tldE9yaWdpbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnMnO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBTZXJ2aWNlUHJpbmNpcGFsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBBUmVjb3JkLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0IHsgQ2xvdWRGcm9udFRhcmdldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHMnO1xuaW1wb3J0IHsgQmxvY2tQdWJsaWNBY2Nlc3MsIEJ1Y2tldCwgQnVja2V0QWNjZXNzQ29udHJvbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBCdWNrZXREZXBsb3ltZW50LCBTb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMtZGVwbG95bWVudCc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBTYW5pdGl6ZXMgYW4gYXJiaXRyYXJ5IHN0cmluZyAoZS5nLiBhIGdpdCBicmFuY2ggbmFtZSkgaW50byBhIHZhbHVlIHRoYXQgaXMgc2FmZSB0byB1c2VcbiAqIGFzIGEgRE5TIGxhYmVsIGFuZCBzaG9ydCBlbm91Z2ggdGhhdCBcXGBcXCR7aG9zdG5hbWV9LlxcJHt6b25lTmFtZX1cXGAgc3RheXMgd2l0aGluIHRoZSA2NFxuICogY2hhcmFjdGVyIGRvbWFpbiBuYW1lIGxpbWl0IGVuZm9yY2VkIGJ5IEFDTSBjZXJ0aWZpY2F0ZXMuXG4gKi9cbmZ1bmN0aW9uIHNhbml0aXplSG9zdG5hbWUocmF3SG9zdG5hbWU6IHN0cmluZywgem9uZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSByYXdIb3N0bmFtZVxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnJlcGxhY2UoL1teYS16MC05LV0rL2csICctJylcbiAgICAucmVwbGFjZSgvLXsyLH0vZywgJy0nKVxuICAgIC5yZXBsYWNlKC9eLSt8LSskL2csICcnKSB8fCAnaG9zdCc7XG5cbiAgY29uc3QgbWF4TGVuZ3RoID0gNjMgLSB6b25lTmFtZS5sZW5ndGg7XG4gIGlmIChub3JtYWxpemVkLmxlbmd0aCA8PSBtYXhMZW5ndGgpIHtcbiAgICByZXR1cm4gbm9ybWFsaXplZDtcbiAgfVxuXG4gIGNvbnN0IGhhc2ggPSBjcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUocmF3SG9zdG5hbWUpLmRpZ2VzdCgnaGV4Jykuc2xpY2UoMCwgOCk7XG4gIGNvbnN0IHByZWZpeExlbmd0aCA9IE1hdGgubWF4KG1heExlbmd0aCAtIGhhc2gubGVuZ3RoIC0gMSwgMCk7XG4gIGNvbnN0IHByZWZpeCA9IG5vcm1hbGl6ZWQuc2xpY2UoMCwgcHJlZml4TGVuZ3RoKS5yZXBsYWNlKC8tKyQvLCAnJyk7XG4gIHJldHVybiBwcmVmaXggPyBcXGBcXCR7cHJlZml4fS1cXCR7aGFzaH1cXGAgOiBoYXNoO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpY1dlYnNpdGVQcm9wcyB7XG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGhvc3RlZFpvbmU6IElIb3N0ZWRab25lO1xuICByZWFkb25seSBhcGk6IFJlc3RBcGk7XG4gIHJlYWRvbmx5IGhvc3RuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU3RhdGljV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBidWNrZXQ6IEJ1Y2tldDtcbiAgcHVibGljIGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICBwdWJsaWMgY2VydGlmaWNhdGU6IENlcnRpZmljYXRlO1xuXG4gIHByaXZhdGUgYXBpQ2FjaGVQb2xpY3k6IENhY2hlUG9saWN5O1xuICBwcml2YXRlIGFSZWNvcmQ6IEFSZWNvcmQ7XG4gIHByaXZhdGUgYnVja2V0RGVwbG95bWVudDogQnVja2V0RGVwbG95bWVudDtcbiAgcHVibGljIHJlYWRvbmx5IGhvc3RuYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJpdmF0ZSBwcm9wczogU3RhdGljV2Vic2l0ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGRvbWFpbk5hbWUgPSBwcm9wcy5ob3N0ZWRab25lLnpvbmVOYW1lO1xuICAgIGNvbnN0IGhvc3RuYW1lID0gc2FuaXRpemVIb3N0bmFtZShwcm9wcy5ob3N0bmFtZSB8fCAnbXZwJywgZG9tYWluTmFtZSk7XG4gICAgdGhpcy5ob3N0bmFtZSA9IFxcYFxcJHtob3N0bmFtZX0uXFwke2RvbWFpbk5hbWV9XFxgO1xuXG4gICAgdGhpcy5jcmVhdGVDZXJ0aWZpY2F0ZSgpO1xuICAgIGlmICghdGhpcy5jZXJ0aWZpY2F0ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGNlcnRpZmljYXRlJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVCdWNrZXQoKTtcbiAgICBpZiAoIXRoaXMuYnVja2V0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgYnVja2V0Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVBcGlDYWNoZVBvbGljeSgpO1xuICAgIGlmICghdGhpcy5hcGlDYWNoZVBvbGljeSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIEFQSSBjYWNoZSBwb2xpY3knKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZURpc3RyaWJ1dGlvbigpO1xuICAgIGlmICghdGhpcy5kaXN0cmlidXRpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBkaXN0cmlidXRpb24nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZURuc1JlY29yZCgpO1xuICAgIGlmICghdGhpcy5hUmVjb3JkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgRE5TIEEgcmVjb3JkJyk7XG4gICAgfVxuXG4gICAgdGhpcy5hZGRCdWNrZXRQb2xpY3koKTtcbiAgICB0aGlzLmNyZWF0ZUJ1Y2tldERlcGxveW1lbnQoKTtcbiAgICBpZiAoIXRoaXMuYnVja2V0RGVwbG95bWVudCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGJ1Y2tldCBkZXBsb3ltZW50Jyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNlcnRpZmljYXRlKCkge1xuICAgIHRoaXMuY2VydGlmaWNhdGUgPSBuZXcgQ2VydGlmaWNhdGUodGhpcywgJ0NlcnRpZmljYXRlJywge1xuICAgICAgZG9tYWluTmFtZTogdGhpcy5ob3N0bmFtZSxcbiAgICAgIHZhbGlkYXRpb246IENlcnRpZmljYXRlVmFsaWRhdGlvbi5mcm9tRG5zKHRoaXMucHJvcHMuaG9zdGVkWm9uZSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQnVja2V0KCkge1xuICAgIHRoaXMuYnVja2V0ID0gbmV3IEJ1Y2tldCh0aGlzLCAnQnVja2V0Jywge1xuICAgICAgYmxvY2tQdWJsaWNBY2Nlc3M6IEJsb2NrUHVibGljQWNjZXNzLkJMT0NLX0FMTCxcbiAgICAgIGFjY2Vzc0NvbnRyb2w6IEJ1Y2tldEFjY2Vzc0NvbnRyb2wuUFJJVkFURSxcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICAgIGF1dG9EZWxldGVPYmplY3RzOiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUFwaUNhY2hlUG9saWN5KCkge1xuICAgIHRoaXMuYXBpQ2FjaGVQb2xpY3kgPSBuZXcgQ2FjaGVQb2xpY3kodGhpcywgJ0FwaUNhY2hlUG9saWN5Jywge1xuICAgICAgY29tbWVudDogJ0NhY2hlIHBvbGljeSBmb3IgQVBJIEdhdGV3YXkgd2l0aCBkeW5hbWljIGNvbnRlbnQnLFxuICAgICAgZGVmYXVsdFR0bDogRHVyYXRpb24uc2Vjb25kcygwKSxcbiAgICAgIG1heFR0bDogRHVyYXRpb24uc2Vjb25kcygxKSxcbiAgICAgIG1pblR0bDogRHVyYXRpb24uc2Vjb25kcygwKSxcbiAgICAgIGVuYWJsZUFjY2VwdEVuY29kaW5nQnJvdGxpOiB0cnVlLFxuICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdHemlwOiB0cnVlLFxuICAgICAgaGVhZGVyQmVoYXZpb3I6IENhY2hlSGVhZGVyQmVoYXZpb3IuYWxsb3dMaXN0KCdBdXRob3JpemF0aW9uJyksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRGlzdHJpYnV0aW9uKCkge1xuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gbmV3IERpc3RyaWJ1dGlvbih0aGlzLCAnRGlzdHJpYnV0aW9uJywge1xuICAgICAgZG9tYWluTmFtZXM6IFt0aGlzLmhvc3RuYW1lXSxcbiAgICAgIGNlcnRpZmljYXRlOiB0aGlzLmNlcnRpZmljYXRlLFxuICAgICAgZGVmYXVsdEJlaGF2aW9yOiB7XG4gICAgICAgIG9yaWdpbjogUzNCdWNrZXRPcmlnaW4ud2l0aE9yaWdpbkFjY2Vzc0NvbnRyb2wodGhpcy5idWNrZXQpLFxuICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICB9LFxuICAgICAgYWRkaXRpb25hbEJlaGF2aW9yczoge1xuICAgICAgICAnL2FwaS8qJzoge1xuICAgICAgICAgIG9yaWdpbjogbmV3IFJlc3RBcGlPcmlnaW4odGhpcy5wcm9wcy5hcGkpLFxuICAgICAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBWaWV3ZXJQcm90b2NvbFBvbGljeS5SRURJUkVDVF9UT19IVFRQUyxcbiAgICAgICAgICBhbGxvd2VkTWV0aG9kczogQWxsb3dlZE1ldGhvZHMuQUxMT1dfQUxMLFxuICAgICAgICAgIGNhY2hlUG9saWN5OiB0aGlzLmFwaUNhY2hlUG9saWN5LFxuXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVmYXVsdFJvb3RPYmplY3Q6ICdpbmRleC5odG1sJyxcbiAgICAgIGVycm9yUmVzcG9uc2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDQsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGh0dHBTdGF0dXM6IDQwMyxcbiAgICAgICAgICByZXNwb25zZVBhZ2VQYXRoOiAnL2luZGV4Lmh0bWwnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVEbnNSZWNvcmQoKSB7XG4gICAgdGhpcy5hUmVjb3JkID0gbmV3IEFSZWNvcmQodGhpcywgJ0FSZWNvcmQnLCB7XG4gICAgICB6b25lOiB0aGlzLnByb3BzLmhvc3RlZFpvbmUsXG4gICAgICByZWNvcmROYW1lOiB0aGlzLmhvc3RuYW1lLFxuICAgICAgdGFyZ2V0OiBSZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyBDbG91ZEZyb250VGFyZ2V0KHRoaXMuZGlzdHJpYnV0aW9uKSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWRkQnVja2V0UG9saWN5KCkge1xuICAgIHRoaXMuYnVja2V0LmFkZFRvUmVzb3VyY2VQb2xpY3koXG4gICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgc2lkOiAnQWxsb3dDbG91ZEZyb250U2VydmljZVByaW5jaXBhbCcsXG4gICAgICAgIGFjdGlvbnM6IFsnczM6R2V0T2JqZWN0J10sXG4gICAgICAgIHJlc291cmNlczogW1xcYFxcJHt0aGlzLmJ1Y2tldC5idWNrZXRBcm59LypcXGBdLFxuICAgICAgICBwcmluY2lwYWxzOiBbbmV3IFNlcnZpY2VQcmluY2lwYWwoJ2Nsb3VkZnJvbnQuYW1hem9uYXdzLmNvbScpXSxcbiAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgIFN0cmluZ0VxdWFsczoge1xuICAgICAgICAgICAgJ0FXUzpTb3VyY2VBcm4nOiBcXGBhcm46YXdzOmNsb3VkZnJvbnQ6OlxcJHt0aGlzLmJ1Y2tldC5zdGFjay5hY2NvdW50fTpkaXN0cmlidXRpb24vXFwke3RoaXMuZGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbklkfVxcYCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVCdWNrZXREZXBsb3ltZW50KCkge1xuICAgIHRoaXMuYnVja2V0RGVwbG95bWVudCA9IG5ldyBCdWNrZXREZXBsb3ltZW50KHRoaXMsICdCdWNrZXREZXBsb3ltZW50Jywge1xuICAgICAgc291cmNlczogW1NvdXJjZS5hc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vd2ViJyksIHtcbiAgICAgICAgYnVuZGxpbmc6IHtcbiAgICAgICAgICBpbWFnZTogRG9ja2VySW1hZ2UuZnJvbVJlZ2lzdHJ5KCdub2RlOjI0LWFscGluZScpLFxuICAgICAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgICAgICBucG1fY29uZmlnX2NhY2hlOiAnL3RtcC8ubnBtJyxcbiAgICAgICAgICAgIEhPTUU6ICcvdG1wJyxcbiAgICAgICAgICAgIENJOiAndHJ1ZScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBjb21tYW5kOiBbXG4gICAgICAgICAgICAnc2gnLFxuICAgICAgICAgICAgJy1jJyxcbiAgICAgICAgICAgIFtcbiAgICAgICAgICAgICAgJyR7aW5zdGFsbH0nLFxuICAgICAgICAgICAgICAnJHtidWlsZH0nLFxuICAgICAgICAgICAgICBcXGBzZWQgLWkgJ3N8XCJhcGlCYXNlVXJsXCI6IFwiW15cIl0qXCJ8XCJhcGlCYXNlVXJsXCI6IFwiaHR0cHM6Ly9cXCR7dGhpcy5ob3N0bmFtZX0vYXBpXCJ8ZycgZGlzdC9jb25maWcuanNvblxcYCxcbiAgICAgICAgICAgICAgJ2NwIC1yIGRpc3QvKiAvYXNzZXQtb3V0cHV0LycsXG4gICAgICAgICAgICBdLmpvaW4oJyAmJiAnKSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgfSldLFxuICAgICAgZGVzdGluYXRpb25CdWNrZXQ6IHRoaXMuYnVja2V0LFxuICAgICAgZGlzdHJpYnV0aW9uOiB0aGlzLmRpc3RyaWJ1dGlvbixcbiAgICAgIGRpc3RyaWJ1dGlvblBhdGhzOiBbJy8qJ10sXG4gICAgICBtZW1vcnlMaW1pdDogMjU2XG4gICAgfSk7XG4gIH1cbn1cbmAsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
262
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQW9DO0FBRXBDLHNEQUEyRDtBQUUzRDs7OztHQUlHO0FBQ0gsU0FBUyxnQkFBZ0IsQ0FBQyxjQUFrQztJQUMxRCxRQUFRLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLEtBQUssK0JBQWtCLENBQUMsR0FBRztZQUN6QixPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUM7UUFDdkQsS0FBSywrQkFBa0IsQ0FBQyxJQUFJO1lBQzFCLE9BQU8sRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsS0FBSyxFQUFFLHFCQUFxQixFQUFFLENBQUM7UUFDOUY7WUFDRSxPQUFPLEVBQUUsT0FBTyxFQUFFLG1FQUFtRSxFQUFFLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxDQUFDO0lBQzFILENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBYSwwQkFBMkIsU0FBUSxtQkFBVTtJQUN4RCxZQUFZLE9BQTRCO1FBQ3RDLE1BQU0sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsT0FBTyxFQUFFLGlDQUFpQyxFQUFFO1lBQ2hELFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztpQkF1TUMsT0FBTztpQkFDUCxLQUFLOzs7Ozs7Ozs0QkFRTSxPQUFPOzRCQUNQLEtBQUs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBdUJoQztTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQS9PRCxnRUErT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIgfSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgdGhlIGluc3RhbGwvYnVpbGQgY29tbWFuZHMgdXNlZCBpbnNpZGUgdGhlIGJ1Y2tldC1kZXBsb3ltZW50IGJ1bmRsaW5nIGNvbnRhaW5lci5cbiAqIFRoZSBjb250YWluZXIgb25seSBoYXMgbm9kZSwgbnBtLCBhbmQgY29yZXBhY2sgYmFrZWQgaW4gKG5vIHByZS1pbnN0YWxsZWQgeWFybi9wbnBtIGJpbmFyaWVzKSxcbiAqIHNvIHlhcm4gYW5kIHBucG0gbXVzdCBiZSBpbnZva2VkIHRocm91Z2ggY29yZXBhY2suXG4gKi9cbmZ1bmN0aW9uIGJ1bmRsaW5nQ29tbWFuZHMocGFja2FnZU1hbmFnZXI6IE5vZGVQYWNrYWdlTWFuYWdlcik6IHsgaW5zdGFsbDogc3RyaW5nOyBidWlsZDogc3RyaW5nIH0ge1xuICBzd2l0Y2ggKHBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgY2FzZSBOb2RlUGFja2FnZU1hbmFnZXIuTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ25wbSBjaScsIGJ1aWxkOiAnbnBtIHJ1biBidWlsZCcgfTtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5QTlBNOlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHBucG0gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZScsIGJ1aWxkOiAnY29yZXBhY2sgcG5wbSBidWlsZCcgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHsgaW5zdGFsbDogJ2NvcmVwYWNrIHlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAtLWNhY2hlLWZvbGRlciAvdG1wLy55YXJuJywgYnVpbGQ6ICdjb3JlcGFjayB5YXJuIGJ1aWxkJyB9O1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSBleHRlbmRzIFNhbXBsZUZpbGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtUeXBlU2NyaXB0QXBwKSB7XG4gICAgY29uc3QgeyBpbnN0YWxsLCBidWlsZCB9ID0gYnVuZGxpbmdDb21tYW5kcyhwcm9qZWN0LnBhY2thZ2UucGFja2FnZU1hbmFnZXIpO1xuICAgIHN1cGVyKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9TdGF0aWNXZWJzaXRlLnRzJywge1xuICAgICAgY29udGVudHM6IGBpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBleGVjU3luYyB9IGZyb20gJ2NoaWxkX3Byb2Nlc3MnO1xuaW1wb3J0IHsgY3BTeW5jLCByZWFkRmlsZVN5bmMsIHdyaXRlRmlsZVN5bmMgfSBmcm9tICdmcyc7XG5pbXBvcnQgeyBEb2NrZXJJbWFnZSwgRHVyYXRpb24sIFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBSZXN0QXBpIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXknO1xuaW1wb3J0IHsgQ2VydGlmaWNhdGUsIENlcnRpZmljYXRlVmFsaWRhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jZXJ0aWZpY2F0ZW1hbmFnZXInO1xuaW1wb3J0IHtcbiAgQWxsb3dlZE1ldGhvZHMsXG4gIENhY2hlSGVhZGVyQmVoYXZpb3IsXG4gIENhY2hlUG9saWN5LFxuICBEaXN0cmlidXRpb24sXG4gIFZpZXdlclByb3RvY29sUG9saWN5LFxufSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udCc7XG5pbXBvcnQgeyBSZXN0QXBpT3JpZ2luLCBTM0J1Y2tldE9yaWdpbiB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZGZyb250LW9yaWdpbnMnO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBTZXJ2aWNlUHJpbmNpcGFsIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBBUmVjb3JkLCBJSG9zdGVkWm9uZSwgUmVjb3JkVGFyZ2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXJvdXRlNTMnO1xuaW1wb3J0IHsgQ2xvdWRGcm9udFRhcmdldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1yb3V0ZTUzLXRhcmdldHMnO1xuaW1wb3J0IHsgQmxvY2tQdWJsaWNBY2Nlc3MsIEJ1Y2tldCwgQnVja2V0QWNjZXNzQ29udHJvbCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBCdWNrZXREZXBsb3ltZW50LCBTb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMtZGVwbG95bWVudCc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBTYW5pdGl6ZXMgYW4gYXJiaXRyYXJ5IHN0cmluZyAoZS5nLiBhIGdpdCBicmFuY2ggbmFtZSkgaW50byBhIHZhbHVlIHRoYXQgaXMgc2FmZSB0byB1c2VcbiAqIGFzIGEgRE5TIGxhYmVsIGFuZCBzaG9ydCBlbm91Z2ggdGhhdCBcXGBcXCR7aG9zdG5hbWV9LlxcJHt6b25lTmFtZX1cXGAgc3RheXMgd2l0aGluIHRoZSA2NFxuICogY2hhcmFjdGVyIGRvbWFpbiBuYW1lIGxpbWl0IGVuZm9yY2VkIGJ5IEFDTSBjZXJ0aWZpY2F0ZXMuXG4gKi9cbmZ1bmN0aW9uIHNhbml0aXplSG9zdG5hbWUocmF3SG9zdG5hbWU6IHN0cmluZywgem9uZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSByYXdIb3N0bmFtZVxuICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgLnJlcGxhY2UoL1teYS16MC05LV0rL2csICctJylcbiAgICAucmVwbGFjZSgvLXsyLH0vZywgJy0nKVxuICAgIC5yZXBsYWNlKC9eLSt8LSskL2csICcnKSB8fCAnaG9zdCc7XG5cbiAgY29uc3QgbWF4TGVuZ3RoID0gNjMgLSB6b25lTmFtZS5sZW5ndGg7XG4gIGlmIChub3JtYWxpemVkLmxlbmd0aCA8PSBtYXhMZW5ndGgpIHtcbiAgICByZXR1cm4gbm9ybWFsaXplZDtcbiAgfVxuXG4gIGNvbnN0IGhhc2ggPSBjcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUocmF3SG9zdG5hbWUpLmRpZ2VzdCgnaGV4Jykuc2xpY2UoMCwgOCk7XG4gIGNvbnN0IHByZWZpeExlbmd0aCA9IE1hdGgubWF4KG1heExlbmd0aCAtIGhhc2gubGVuZ3RoIC0gMSwgMCk7XG4gIGNvbnN0IHByZWZpeCA9IG5vcm1hbGl6ZWQuc2xpY2UoMCwgcHJlZml4TGVuZ3RoKS5yZXBsYWNlKC8tKyQvLCAnJyk7XG4gIHJldHVybiBwcmVmaXggPyBcXGBcXCR7cHJlZml4fS1cXCR7aGFzaH1cXGAgOiBoYXNoO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXRpY1dlYnNpdGVQcm9wcyB7XG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGhvc3RlZFpvbmU6IElIb3N0ZWRab25lO1xuICByZWFkb25seSBhcGk6IFJlc3RBcGk7XG4gIHJlYWRvbmx5IGhvc3RuYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU3RhdGljV2Vic2l0ZSBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBidWNrZXQ6IEJ1Y2tldDtcbiAgcHVibGljIGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICBwdWJsaWMgY2VydGlmaWNhdGU6IENlcnRpZmljYXRlO1xuXG4gIHByaXZhdGUgYXBpQ2FjaGVQb2xpY3k6IENhY2hlUG9saWN5O1xuICBwcml2YXRlIGFSZWNvcmQ6IEFSZWNvcmQ7XG4gIHByaXZhdGUgYnVja2V0RGVwbG95bWVudDogQnVja2V0RGVwbG95bWVudDtcbiAgcHVibGljIHJlYWRvbmx5IGhvc3RuYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJpdmF0ZSBwcm9wczogU3RhdGljV2Vic2l0ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGRvbWFpbk5hbWUgPSBwcm9wcy5ob3N0ZWRab25lLnpvbmVOYW1lO1xuICAgIGNvbnN0IGhvc3RuYW1lID0gc2FuaXRpemVIb3N0bmFtZShwcm9wcy5ob3N0bmFtZSB8fCAnbXZwJywgZG9tYWluTmFtZSk7XG4gICAgdGhpcy5ob3N0bmFtZSA9IFxcYFxcJHtob3N0bmFtZX0uXFwke2RvbWFpbk5hbWV9XFxgO1xuXG4gICAgdGhpcy5jcmVhdGVDZXJ0aWZpY2F0ZSgpO1xuICAgIGlmICghdGhpcy5jZXJ0aWZpY2F0ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGNlcnRpZmljYXRlJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVCdWNrZXQoKTtcbiAgICBpZiAoIXRoaXMuYnVja2V0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgYnVja2V0Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVBcGlDYWNoZVBvbGljeSgpO1xuICAgIGlmICghdGhpcy5hcGlDYWNoZVBvbGljeSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIEFQSSBjYWNoZSBwb2xpY3knKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZURpc3RyaWJ1dGlvbigpO1xuICAgIGlmICghdGhpcy5kaXN0cmlidXRpb24pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBkaXN0cmlidXRpb24nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZURuc1JlY29yZCgpO1xuICAgIGlmICghdGhpcy5hUmVjb3JkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZhaWxlZCB0byBjcmVhdGUgRE5TIEEgcmVjb3JkJyk7XG4gICAgfVxuXG4gICAgdGhpcy5hZGRCdWNrZXRQb2xpY3koKTtcbiAgICB0aGlzLmNyZWF0ZUJ1Y2tldERlcGxveW1lbnQoKTtcbiAgICBpZiAoIXRoaXMuYnVja2V0RGVwbG95bWVudCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGJ1Y2tldCBkZXBsb3ltZW50Jyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUNlcnRpZmljYXRlKCkge1xuICAgIHRoaXMuY2VydGlmaWNhdGUgPSBuZXcgQ2VydGlmaWNhdGUodGhpcywgJ0NlcnRpZmljYXRlJywge1xuICAgICAgZG9tYWluTmFtZTogdGhpcy5ob3N0bmFtZSxcbiAgICAgIHZhbGlkYXRpb246IENlcnRpZmljYXRlVmFsaWRhdGlvbi5mcm9tRG5zKHRoaXMucHJvcHMuaG9zdGVkWm9uZSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQnVja2V0KCkge1xuICAgIHRoaXMuYnVja2V0ID0gbmV3IEJ1Y2tldCh0aGlzLCAnQnVja2V0Jywge1xuICAgICAgYmxvY2tQdWJsaWNBY2Nlc3M6IEJsb2NrUHVibGljQWNjZXNzLkJMT0NLX0FMTCxcbiAgICAgIGFjY2Vzc0NvbnRyb2w6IEJ1Y2tldEFjY2Vzc0NvbnRyb2wuUFJJVkFURSxcbiAgICAgIHJlbW92YWxQb2xpY3k6IFJlbW92YWxQb2xpY3kuREVTVFJPWSxcbiAgICAgIGF1dG9EZWxldGVPYmplY3RzOiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUFwaUNhY2hlUG9saWN5KCkge1xuICAgIHRoaXMuYXBpQ2FjaGVQb2xpY3kgPSBuZXcgQ2FjaGVQb2xpY3kodGhpcywgJ0FwaUNhY2hlUG9saWN5Jywge1xuICAgICAgY29tbWVudDogJ0NhY2hlIHBvbGljeSBmb3IgQVBJIEdhdGV3YXkgd2l0aCBkeW5hbWljIGNvbnRlbnQnLFxuICAgICAgZGVmYXVsdFR0bDogRHVyYXRpb24uc2Vjb25kcygwKSxcbiAgICAgIG1heFR0bDogRHVyYXRpb24uc2Vjb25kcygxKSxcbiAgICAgIG1pblR0bDogRHVyYXRpb24uc2Vjb25kcygwKSxcbiAgICAgIGVuYWJsZUFjY2VwdEVuY29kaW5nQnJvdGxpOiB0cnVlLFxuICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdHemlwOiB0cnVlLFxuICAgICAgaGVhZGVyQmVoYXZpb3I6IENhY2hlSGVhZGVyQmVoYXZpb3IuYWxsb3dMaXN0KCdBdXRob3JpemF0aW9uJyksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlRGlzdHJpYnV0aW9uKCkge1xuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gbmV3IERpc3RyaWJ1dGlvbih0aGlzLCAnRGlzdHJpYnV0aW9uJywge1xuICAgICAgZG9tYWluTmFtZXM6IFt0aGlzLmhvc3RuYW1lXSxcbiAgICAgIGNlcnRpZmljYXRlOiB0aGlzLmNlcnRpZmljYXRlLFxuICAgICAgZGVmYXVsdEJlaGF2aW9yOiB7XG4gICAgICAgIG9yaWdpbjogUzNCdWNrZXRPcmlnaW4ud2l0aE9yaWdpbkFjY2Vzc0NvbnRyb2wodGhpcy5idWNrZXQpLFxuICAgICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICB9LFxuICAgICAgYWRkaXRpb25hbEJlaGF2aW9yczoge1xuICAgICAgICAnL2FwaS8qJzoge1xuICAgICAgICAgIG9yaWdpbjogbmV3IFJlc3RBcGlPcmlnaW4odGhpcy5wcm9wcy5hcGkpLFxuICAgICAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBWaWV3ZXJQcm90b2NvbFBvbGljeS5SRURJUkVDVF9UT19IVFRQUyxcbiAgICAgICAgICBhbGxvd2VkTWV0aG9kczogQWxsb3dlZE1ldGhvZHMuQUxMT1dfQUxMLFxuICAgICAgICAgIGNhY2hlUG9saWN5OiB0aGlzLmFwaUNhY2hlUG9saWN5LFxuXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgZGVmYXVsdFJvb3RPYmplY3Q6ICdpbmRleC5odG1sJyxcbiAgICAgIGVycm9yUmVzcG9uc2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBodHRwU3RhdHVzOiA0MDQsXG4gICAgICAgICAgcmVzcG9uc2VQYWdlUGF0aDogJy9pbmRleC5odG1sJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIGh0dHBTdGF0dXM6IDQwMyxcbiAgICAgICAgICByZXNwb25zZVBhZ2VQYXRoOiAnL2luZGV4Lmh0bWwnLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVEbnNSZWNvcmQoKSB7XG4gICAgdGhpcy5hUmVjb3JkID0gbmV3IEFSZWNvcmQodGhpcywgJ0FSZWNvcmQnLCB7XG4gICAgICB6b25lOiB0aGlzLnByb3BzLmhvc3RlZFpvbmUsXG4gICAgICByZWNvcmROYW1lOiB0aGlzLmhvc3RuYW1lLFxuICAgICAgdGFyZ2V0OiBSZWNvcmRUYXJnZXQuZnJvbUFsaWFzKG5ldyBDbG91ZEZyb250VGFyZ2V0KHRoaXMuZGlzdHJpYnV0aW9uKSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWRkQnVja2V0UG9saWN5KCkge1xuICAgIHRoaXMuYnVja2V0LmFkZFRvUmVzb3VyY2VQb2xpY3koXG4gICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgc2lkOiAnQWxsb3dDbG91ZEZyb250U2VydmljZVByaW5jaXBhbCcsXG4gICAgICAgIGFjdGlvbnM6IFsnczM6R2V0T2JqZWN0J10sXG4gICAgICAgIHJlc291cmNlczogW1xcYFxcJHt0aGlzLmJ1Y2tldC5idWNrZXRBcm59LypcXGBdLFxuICAgICAgICBwcmluY2lwYWxzOiBbbmV3IFNlcnZpY2VQcmluY2lwYWwoJ2Nsb3VkZnJvbnQuYW1hem9uYXdzLmNvbScpXSxcbiAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgIFN0cmluZ0VxdWFsczoge1xuICAgICAgICAgICAgJ0FXUzpTb3VyY2VBcm4nOiBcXGBhcm46YXdzOmNsb3VkZnJvbnQ6OlxcJHt0aGlzLmJ1Y2tldC5zdGFjay5hY2NvdW50fTpkaXN0cmlidXRpb24vXFwke3RoaXMuZGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbklkfVxcYCxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVCdWNrZXREZXBsb3ltZW50KCkge1xuICAgIGNvbnN0IHdlYkRpciA9IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi8uLi93ZWInKTtcbiAgICB0aGlzLmJ1Y2tldERlcGxveW1lbnQgPSBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCAnQnVja2V0RGVwbG95bWVudCcsIHtcbiAgICAgIHNvdXJjZXM6IFtTb3VyY2UuYXNzZXQod2ViRGlyLCB7XG4gICAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnbm9kZToyNC1hbHBpbmUnKSxcbiAgICAgICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICAgICAgbnBtX2NvbmZpZ19jYWNoZTogJy90bXAvLm5wbScsXG4gICAgICAgICAgICBIT01FOiAnL3RtcCcsXG4gICAgICAgICAgICBDSTogJ3RydWUnLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY29tbWFuZDogW1xuICAgICAgICAgICAgJ3NoJyxcbiAgICAgICAgICAgICctYycsXG4gICAgICAgICAgICBbXG4gICAgICAgICAgICAgICcke2luc3RhbGx9JyxcbiAgICAgICAgICAgICAgJyR7YnVpbGR9JyxcbiAgICAgICAgICAgICAgXFxgc2VkIC1pICdzfFwiYXBpQmFzZVVybFwiOiBcIlteXCJdKlwifFwiYXBpQmFzZVVybFwiOiBcImh0dHBzOi8vXFwke3RoaXMuaG9zdG5hbWV9L2FwaVwifGcnIGRpc3QvY29uZmlnLmpzb25cXGAsXG4gICAgICAgICAgICAgICdjcCAtciBkaXN0LyogL2Fzc2V0LW91dHB1dC8nLFxuICAgICAgICAgICAgXS5qb2luKCcgJiYgJyksXG4gICAgICAgICAgXSxcbiAgICAgICAgICBsb2NhbDoge1xuICAgICAgICAgICAgdHJ5QnVuZGxlOiAob3V0cHV0RGlyOiBzdHJpbmcpOiBib29sZWFuID0+IHtcbiAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBleGVjU3luYygnJHtpbnN0YWxsfScsIHsgY3dkOiB3ZWJEaXIsIHN0ZGlvOiAnaW5oZXJpdCcgfSk7XG4gICAgICAgICAgICAgICAgZXhlY1N5bmMoJyR7YnVpbGR9JywgeyBjd2Q6IHdlYkRpciwgc3RkaW86ICdpbmhlcml0JyB9KTtcbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWdQYXRoID0gcGF0aC5qb2luKHdlYkRpciwgJ2Rpc3QnLCAnY29uZmlnLmpzb24nKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWcgPSByZWFkRmlsZVN5bmMoY29uZmlnUGF0aCwgJ3V0Zi04Jyk7XG4gICAgICAgICAgICAgICAgd3JpdGVGaWxlU3luYyhcbiAgICAgICAgICAgICAgICAgIGNvbmZpZ1BhdGgsXG4gICAgICAgICAgICAgICAgICBjb25maWcucmVwbGFjZSgvXCJhcGlCYXNlVXJsXCI6IFwiW15cIl0qXCIvLCBcXGBcImFwaUJhc2VVcmxcIjogXCJodHRwczovL1xcJHt0aGlzLmhvc3RuYW1lfS9hcGlcIlxcYCksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICBjcFN5bmMocGF0aC5qb2luKHdlYkRpciwgJ2Rpc3QnKSwgb3V0cHV0RGlyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgfSBjYXRjaCB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9KV0sXG4gICAgICBkZXN0aW5hdGlvbkJ1Y2tldDogdGhpcy5idWNrZXQsXG4gICAgICBkaXN0cmlidXRpb246IHRoaXMuZGlzdHJpYnV0aW9uLFxuICAgICAgZGlzdHJpYnV0aW9uUGF0aHM6IFsnLyonXSxcbiAgICAgIG1lbW9yeUxpbWl0OiAyNTZcbiAgICB9KTtcbiAgfVxufVxuYCxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -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.21.2" };
42
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.21.4" };
43
43
  constructor(project) {
44
44
  super(project);
45
45
  }
package/lib/utils.js CHANGED
@@ -213,6 +213,11 @@ function readmeContents(projectName) {
213
213
  '# Deploy a personal dev stack to AWS as an alternative to local development, provides more thorough end-to-end testing',
214
214
  'yarn cdk:dev --context local-dev-prefix=your-handle deploy',
215
215
  '',
216
+ '# Redeploy your personal dev stack fast: after the first deploy above, keep',
217
+ "# reusing the same stack (don't delete it between branches) and iterate with",
218
+ '# hotswap-fallback instead of a full CloudFormation deployment',
219
+ 'yarn cdk:dev:hotswap --context local-dev-prefix=your-handle',
220
+ '',
216
221
  '# Run tests',
217
222
  'yarn test',
218
223
  '',
@@ -220,6 +225,10 @@ function readmeContents(projectName) {
220
225
  'npx projen',
221
226
  '```',
222
227
  '',
228
+ '> [!IMPORTANT]',
229
+ '> `--hotswap-fallback` (used by `cdk:dev:hotswap` and the `watch` task) is for',
230
+ '> personal dev stacks only — never run it against staging or prod.',
231
+ '',
223
232
  '---',
224
233
  '',
225
234
  '## Upgrading Batman',
@@ -232,4 +241,4 @@ function readmeContents(projectName) {
232
241
  'This updates all managed files to the latest Batman standards. Your editable sample files are never touched.',
233
242
  ].join('\n');
234
243
  }
235
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFLQSw0Q0FZQztBQU1ELHdDQVdDO0FBV0QsNERBT0M7QUFFRCxrQ0FnQkM7QUFFRCx3Q0E2SkM7QUFyT0Qsc0RBQTJEO0FBRTNEOztHQUVHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsY0FBa0MsRUFBRSxNQUFjO0lBQ2pGLFFBQVEsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSywrQkFBa0IsQ0FBQyxHQUFHO1lBQ3pCLE9BQU8sV0FBVyxNQUFNLEVBQUUsQ0FBQztRQUM3QixLQUFLLCtCQUFrQixDQUFDLEdBQUc7WUFDekIsT0FBTyxXQUFXLE1BQU0sRUFBRSxDQUFDO1FBQzdCLEtBQUssK0JBQWtCLENBQUMsSUFBSTtZQUMxQixPQUFPLFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDMUI7WUFDRSxvRkFBb0Y7WUFDcEYsT0FBTyxRQUFRLE1BQU0sRUFBRSxDQUFDO0lBQzVCLENBQUM7QUFDSCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLGNBQWtDO0lBQy9ELFFBQVEsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSywrQkFBa0IsQ0FBQyxHQUFHO1lBQ3pCLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLEtBQUssK0JBQWtCLENBQUMsR0FBRztZQUN6QixPQUFPLCtCQUErQixDQUFDO1FBQ3pDLEtBQUssK0JBQWtCLENBQUMsSUFBSTtZQUMxQixPQUFPLGdDQUFnQyxDQUFDO1FBQzFDO1lBQ0UsT0FBTyxnQ0FBZ0MsQ0FBQztJQUM1QyxDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0Isd0JBQXdCO0lBQ3RDLE9BQU87UUFDTCxtR0FBbUc7UUFDbkcsb0RBQW9EO1FBQ3BELCtDQUErQztRQUMvQyxJQUFJO0tBQ0wsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixXQUFXLENBQUMsS0FBVSxFQUFFLEtBQUssR0FBRyxDQUFDO0lBQy9DLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDeEMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQUUsT0FBTyxJQUFJLEtBQUssR0FBRyxDQUFDO0lBQ25ELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLE9BQU8sS0FBSyxLQUFLLFNBQVM7UUFBRSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN6QixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLEdBQUcsV0FBVyxDQUFDLENBQUMsRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRixPQUFPLE1BQU0sS0FBSyxNQUFNLEdBQUcsR0FBRyxDQUFDO0lBQ2pDLENBQUM7SUFDRCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDaEQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7YUFDbEMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsUUFBUSxHQUFHLENBQUMsS0FBSyxXQUFXLENBQUMsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQ2hFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNmLE9BQU8sTUFBTSxPQUFPLE1BQU0sR0FBRyxHQUFHLENBQUM7SUFDbkMsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMvQixDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLFdBQW1CO0lBQ2hELE9BQU87UUFDTCxLQUFLLFdBQVcsRUFBRTtRQUNsQixFQUFFO1FBQ0YsdUdBQXVHO1FBQ3ZHLEVBQUU7UUFDRix3QkFBd0I7UUFDeEIsRUFBRTtRQUNGLGlDQUFpQztRQUNqQyxFQUFFO1FBQ0Ysd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixtR0FBbUc7UUFDbkcscUlBQXFJO1FBQ3JJLGdHQUFnRztRQUNoRyx3RkFBd0Y7UUFDeEYscUhBQXFIO1FBQ3JILDhGQUE4RjtRQUM5Rix3RkFBd0Y7UUFDeEYsb0ZBQW9GO1FBQ3BGLDZIQUE2SDtRQUM3SCw0RkFBNEY7UUFDNUYsRUFBRTtRQUNGLHVCQUF1QjtRQUN2QixFQUFFO1FBQ0Ysd0JBQXdCO1FBQ3hCLHdCQUF3QjtRQUN4QixxRkFBcUY7UUFDckYsb0RBQW9EO1FBQ3BELGtGQUFrRjtRQUNsRix3RkFBd0Y7UUFDeEYseUZBQXlGO1FBQ3pGLDhFQUE4RTtRQUM5RSxxRkFBcUY7UUFDckYsRUFBRTtRQUNGLHFEQUFxRDtRQUNyRCxFQUFFO1FBQ0Ysb0JBQW9CO1FBQ3BCLG9CQUFvQjtRQUNwQixnRkFBZ0Y7UUFDaEYsZ0ZBQWdGO1FBQ2hGLG1FQUFtRTtRQUNuRSwwRUFBMEU7UUFDMUUsRUFBRTtRQUNGLEtBQUs7UUFDTCxFQUFFO1FBQ0YsdUJBQXVCO1FBQ3ZCLEVBQUU7UUFDRixxRkFBcUY7UUFDckYsRUFBRTtRQUNGLCtCQUErQjtRQUMvQiwrQkFBK0I7UUFDL0IsOElBQThJO1FBQzlJLHdHQUF3RztRQUN4RyxrSEFBa0g7UUFDbEgsNENBQTRDO1FBQzVDLHNFQUFzRTtRQUN0RSxnRUFBZ0U7UUFDaEUsMEVBQTBFO1FBQzFFLGtGQUFrRjtRQUNsRixFQUFFO1FBQ0YsMEJBQTBCO1FBQzFCLEVBQUU7UUFDRixpS0FBaUs7UUFDakssRUFBRTtRQUNGLGdCQUFnQjtRQUNoQiwyRkFBMkY7UUFDM0YsK0hBQStIO1FBQy9ILEVBQUU7UUFDRiw4QkFBOEI7UUFDOUIsNEJBQTRCO1FBQzVCLDZGQUE2RjtRQUM3Rix5REFBeUQ7UUFDekQsK0NBQStDO1FBQy9DLG1EQUFtRDtRQUNuRCxnRUFBZ0U7UUFDaEUseUNBQXlDO1FBQ3pDLHlHQUF5RztRQUN6RyxzREFBc0Q7UUFDdEQsZ0ZBQWdGO1FBQ2hGLHVFQUF1RTtRQUN2RSxrREFBa0Q7UUFDbEQscURBQXFEO1FBQ3JELDRGQUE0RjtRQUM1Rix3RkFBd0Y7UUFDeEYsK0ZBQStGO1FBQy9GLDZFQUE2RTtRQUM3RSxFQUFFO1FBQ0YsbUlBQW1JO1FBQ25JLEVBQUU7UUFDRixtRUFBbUU7UUFDbkUsRUFBRTtRQUNGLDJFQUEyRTtRQUMzRSwwRUFBMEU7UUFDMUUsaUVBQWlFO1FBQ2pFLDZFQUE2RTtRQUM3RSx1RUFBdUU7UUFDdkUsNEVBQTRFO1FBQzVFLGlEQUFpRDtRQUNqRCxFQUFFO1FBQ0YsNkVBQTZFO1FBQzdFLDZFQUE2RTtRQUM3RSx1RUFBdUU7UUFDdkUsZUFBZTtRQUNmLEVBQUU7UUFDRixTQUFTO1FBQ1Qsd0VBQXdFO1FBQ3hFLGlCQUFpQjtRQUNqQiw0QkFBNEI7UUFDNUIsRUFBRTtRQUNGLDJEQUEyRDtRQUMzRCw0RUFBNEU7UUFDNUUsS0FBSztRQUNMLEVBQUU7UUFDRixLQUFLO1FBQ0wsRUFBRTtRQUNGLG1CQUFtQjtRQUNuQixFQUFFO1FBQ0YsZ01BQWdNO1FBQ2hNLEVBQUU7UUFDRixpSUFBaUk7UUFDakksRUFBRTtRQUNGLDRGQUE0RjtRQUM1RixFQUFFO1FBQ0YsaUlBQWlJO1FBQ2pJLEtBQUs7UUFDTCxFQUFFO1FBQ0YseUJBQXlCO1FBQ3pCLEVBQUU7UUFDRixTQUFTO1FBQ1Qsd0JBQXdCO1FBQ3hCLGNBQWM7UUFDZCxFQUFFO1FBQ0YsdUVBQXVFO1FBQ3ZFLFVBQVU7UUFDVixFQUFFO1FBQ0Ysd0hBQXdIO1FBQ3hILDREQUE0RDtRQUM1RCxFQUFFO1FBQ0YsYUFBYTtRQUNiLFdBQVc7UUFDWCxFQUFFO1FBQ0YsMERBQTBEO1FBQzFELFlBQVk7UUFDWixLQUFLO1FBQ0wsRUFBRTtRQUNGLEtBQUs7UUFDTCxFQUFFO1FBQ0YscUJBQXFCO1FBQ3JCLEVBQUU7UUFDRixTQUFTO1FBQ1QsOENBQThDO1FBQzlDLFlBQVk7UUFDWixLQUFLO1FBQ0wsRUFBRTtRQUNGLDhHQUE4RztLQUMvRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIgfSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgdGhlIGNvbW1hbmQgdXNlZCB0byBydW4gYSBwYWNrYWdlLmpzb24gc2NyaXB0IGZvciB0aGUgZ2l2ZW4gcGFja2FnZSBtYW5hZ2VyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcnVuU2NyaXB0Q29tbWFuZChwYWNrYWdlTWFuYWdlcjogTm9kZVBhY2thZ2VNYW5hZ2VyLCBzY3JpcHQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIHN3aXRjaCAocGFja2FnZU1hbmFnZXIpIHtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5OUE06XG4gICAgICByZXR1cm4gYG5wbSBydW4gJHtzY3JpcHR9YDtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5CVU46XG4gICAgICByZXR1cm4gYGJ1biBydW4gJHtzY3JpcHR9YDtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5QTlBNOlxuICAgICAgcmV0dXJuIGBwbnBtICR7c2NyaXB0fWA7XG4gICAgZGVmYXVsdDpcbiAgICAgIC8vIGFsbCB5YXJuIHZhcmlhbnRzICh5YXJuLCB5YXJuMiwgeWFybl9jbGFzc2ljLCB5YXJuX2JlcnJ5KSBzaGFyZSB0aGUgYHlhcm5gIGJpbmFyeVxuICAgICAgcmV0dXJuIGB5YXJuICR7c2NyaXB0fWA7XG4gIH1cbn1cblxuLyoqXG4gKiBSZW5kZXJzIHRoZSBjb21tYW5kIHVzZWQgdG8gZG8gYSBjbGVhbiwgcmVwcm9kdWNpYmxlIGRlcGVuZGVuY3kgaW5zdGFsbCAoZS5nLiBmb3IgQ0kpXG4gKiBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgbWFuYWdlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluc3RhbGxDb21tYW5kKHBhY2thZ2VNYW5hZ2VyOiBOb2RlUGFja2FnZU1hbmFnZXIpOiBzdHJpbmcge1xuICBzd2l0Y2ggKHBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgY2FzZSBOb2RlUGFja2FnZU1hbmFnZXIuTlBNOlxuICAgICAgcmV0dXJuICducG0gY2knO1xuICAgIGNhc2UgTm9kZVBhY2thZ2VNYW5hZ2VyLkJVTjpcbiAgICAgIHJldHVybiAnYnVuIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUnO1xuICAgIGNhc2UgTm9kZVBhY2thZ2VNYW5hZ2VyLlBOUE06XG4gICAgICByZXR1cm4gJ3BucG0gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAneWFybiBpbnN0YWxsIC0tZnJvemVuLWxvY2tmaWxlJztcbiAgfVxufVxuXG4vKipcbiAqIEJhc2ggbGluZXMgdGhhdCBzYW5pdGl6ZSBhIGBDTEVBTl9CUkFOQ0hfTkFNRWAgdmFyaWFibGUgKGFscmVhZHkgc3RyaXBwZWQgb2YgYW55XG4gKiBjb252ZW50aW9uYWwtY29tbWl0IHByZWZpeCkgaW50byBhIHZhbHVlIHNhZmUgdG8gdXNlIGFzIGEgQ2xvdWRGb3JtYXRpb24gc3RhY2stbmFtZVxuICogZnJhZ21lbnQ6IGNvbGxhcHNlcyBydW5zIG9mIG5vbi1hbHBoYW51bWVyaWMgY2hhcmFjdGVycyB0byBgLWAsIHRyaW1zIGxlYWRpbmcvdHJhaWxpbmdcbiAqIGAtYCwgYW5kIHByZWZpeGVzIHdpdGggYHByLWAgaWYgdGhlIHJlc3VsdCB3b3VsZCBub3Qgc3RhcnQgd2l0aCBhIGxldHRlciAob3IgaXMgZW1wdHkpLlxuICpcbiAqIFNoYXJlZCBieSBQckRlcGxveVdvcmtmbG93IGFuZCBQckNsZWFudXBXb3JrZmxvdyBzbyBib3RoIGRlcml2ZSB0aGUgaWRlbnRpY2FsIHN0YWNrXG4gKiBuYW1lIGZvciBhIGdpdmVuIGJyYW5jaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplQnJhbmNoTmFtZVNjcmlwdCgpOiBzdHJpbmdbXSB7XG4gIHJldHVybiBbXG4gICAgJ0NMRUFOX0JSQU5DSF9OQU1FPSQoZWNobyBcIiRDTEVBTl9CUkFOQ0hfTkFNRVwiIHwgc2VkIC1FIFxcJ3MvW15BLVphLXowLTldKy8tL2c7IHMvXi0rLy87IHMvLSskLy9cXCcpJyxcbiAgICAnaWYgW1sgISBcIiRDTEVBTl9CUkFOQ0hfTkFNRVwiID1+IF5bQS1aYS16XSBdXTsgdGhlbicsXG4gICAgJyAgQ0xFQU5fQlJBTkNIX05BTUU9XCJwci0ke0NMRUFOX0JSQU5DSF9OQU1FfVwiJyxcbiAgICAnZmknLFxuICBdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplVHModmFsdWU6IGFueSwgZGVwdGggPSAxKTogc3RyaW5nIHtcbiAgY29uc3QgcGFkID0gJyAgJy5yZXBlYXQoZGVwdGgpO1xuICBjb25zdCBpbm5lclBhZCA9ICcgICcucmVwZWF0KGRlcHRoICsgMSk7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSByZXR1cm4gYCcke3ZhbHVlfSdgO1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyB8fCB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIGNvbnN0IGl0ZW1zID0gdmFsdWUubWFwKHYgPT4gYCR7aW5uZXJQYWR9JHtzZXJpYWxpemVUcyh2LCBkZXB0aCArIDEpfWApLmpvaW4oJyxcXG4nKTtcbiAgICByZXR1cm4gYFtcXG4ke2l0ZW1zfSxcXG4ke3BhZH1dYDtcbiAgfVxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyh2YWx1ZSlcbiAgICAgIC5tYXAoKFtrLCB2XSkgPT4gYCR7aW5uZXJQYWR9JHtrfTogJHtzZXJpYWxpemVUcyh2LCBkZXB0aCArIDEpfWApXG4gICAgICAuam9pbignLFxcbicpO1xuICAgIHJldHVybiBge1xcbiR7ZW50cmllc30sXFxuJHtwYWR9fWA7XG4gIH1cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRtZUNvbnRlbnRzKHByb2plY3ROYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIFtcbiAgICBgIyAke3Byb2plY3ROYW1lfWAsXG4gICAgJycsXG4gICAgJ1RoaXMgcHJvamVjdCB3YXMgYm9vdHN0cmFwcGVkIHdpdGggW0JhdG1hbl0oaHR0cHM6Ly9naXRodWIuY29tL21hY2Vkb24tdGVjaG5vbG9naWVzL3BsYXRmb3JtLWNvbW1vbikuJyxcbiAgICAnJyxcbiAgICAnIyMgV2hhdCBCYXRtYW4gQ3JlYXRlZCcsXG4gICAgJycsXG4gICAgJyMjIyBDREsgSW5mcmFzdHJ1Y3R1cmUgKGBzcmMvYCknLFxuICAgICcnLFxuICAgICd8IEZpbGUgfCBEZXNjcmlwdGlvbiB8JyxcbiAgICAnfC0tLS0tLXwtLS0tLS0tLS0tLS0tfCcsXG4gICAgJ3wgYHNyYy9tYWluLnRzYCB8IENESyBhcHAgZW50cnkgcG9pbnQg4oCUIGluc3RhbnRpYXRlcyBkZXYsIHN0YWdpbmcsIGFuZCBwcm9kIGBBcHBsaWNhdGlvblN0YWNrYHMgfCcsXG4gICAgJ3wgYHNyYy9Mb2NhbERldkFwcC50c2AgfCBMb2NhbCBkZXZlbG9wbWVudCBDREsgYXBwIOKAlCB1c2VkIGJ5IGB5YXJuIGNkazpkZXZgIC0gZGVwbG95cyB0byBBV1MgZm9yIHNsb3dlciBidXQgbW9yZSB0aG9yb3VnaCB0ZXN0aW5nIHwnLFxuICAgICd8IGBzcmMvR2l0SHViUm9sZXMudHNgIHwgQ0RLIGFwcCBmb3IgZGVwbG95aW5nIHRoZSBHaXRIdWIgT0lEQyBJQU0gcm9sZSAob25lLXRpbWUgYm9vdHN0cmFwKSB8JyxcbiAgICAnfCBgc3JjL3N0YWNrcy9BcHBsaWNhdGlvblN0YWNrLnRzYCB8IFlvdXIgcHJpbWFyeSBzdGFjayDigJQgZXh0ZW5kIGl0IHRvIGFkZCByZXNvdXJjZXMgfCcsXG4gICAgJ3wgYHNyYy9zdGFja3MvQmFzZUFwcGxpY2F0aW9uU3RhY2sudHNgIHwgQmFzZSBzdGFjayB3aXRoIFZQQywgQVBJLCBzdGF0aWMgd2Vic2l0ZSwgRGF0YWRvZywgYW5kIFJvdXRlIDUzIHdpcmVkIHVwIHwnLFxuICAgICd8IGBzcmMvc3RhY2tzL0dpdEh1YlJvbGVzU3RhY2sudHNgIHwgSUFNIHJvbGUgc3RhY2sgZm9yIEdpdEh1YiBBY3Rpb25zIE9JREMgYXV0aGVudGljYXRpb24gfCcsXG4gICAgJ3wgYHNyYy9jb25zdHJ1Y3RzL0FwaS50c2AgfCBBUEkgR2F0ZXdheSArIExhbWJkYSBjb25zdHJ1Y3Qgd2l0aCBDbGVyayBKV1QgYXV0aG9yaXplciB8JyxcbiAgICAnfCBgc3JjL2NvbnN0cnVjdHMvU3RhdGljV2Vic2l0ZS50c2AgfCBDbG91ZEZyb250ICsgUzMgKyBBQ00gKyBSb3V0ZSA1MyBjb25zdHJ1Y3QgfCcsXG4gICAgJ3wgYHNyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvQXBpLkZ1bmN0aW9uLnRzYCB8IExhbWJkYSBoYW5kbGVyIGVudHJ5IHBvaW50LCBiYXNpYyB3cmFwcGVyIGFyb3VuZCBFeHByZXNzLWNvbXBhdGlibGUgYXBwIGNvZGUgfCcsXG4gICAgJ3wgYHNyYy9hc3BlY3RzL0RhdGFEb2dBc3BlY3QudHNgIHwgQ0RLIGFzcGVjdCB0aGF0IHdpcmVzIGFsbCBMYW1iZGEgZnVuY3Rpb25zIHRvIERhdGFkb2cgfCcsXG4gICAgJycsXG4gICAgJyMjIyBGcm9udGVuZCAoYHdlYi9gKScsXG4gICAgJycsXG4gICAgJ3wgRmlsZSB8IERlc2NyaXB0aW9uIHwnLFxuICAgICd8LS0tLS0tfC0tLS0tLS0tLS0tLS18JyxcbiAgICAnfCBgd2ViL3NyYy9tYWluLnRzeGAgfCBSZWFjdCBhcHAgZW50cnkgcG9pbnQgd2l0aCBDbGVyayBhbmQgUmVhY3QgUXVlcnkgcHJvdmlkZXJzIHwnLFxuICAgICd8IGB3ZWIvc3JjL0FwcC50c3hgIHwgUm9vdCBhcHBsaWNhdGlvbiBjb21wb25lbnQgfCcsXG4gICAgJ3wgYHdlYi9zcmMvQXBwLmNzc2AgLyBgd2ViL3NyYy9pbmRleC5jc3NgIHwgQmFzZSBzdHlsZXNoZWV0cyAoVGFpbHdpbmQgQ1NTIHY0KSB8JyxcbiAgICAnfCBgd2ViL3NyYy9jb25maWcudHNgIHwgYHVzZUNvbmZpZygpYCBob29rIOKAlCBsb2FkcyBydW50aW1lIGNvbmZpZyBmcm9tIGBjb25maWcuanNvbmAgfCcsXG4gICAgJ3wgYHdlYi9zcmMvc2VydmljZXMvQmFzZVNlcnZpY2UudHNgIHwgYHVzZUJhc2VRdWVyeSgpYCDigJQgYXV0aGVudGljYXRlZCBBUEkgZmV0Y2ggaG9vayB8JyxcbiAgICAnfCBgd2ViL3NyYy9zZXJ2aWNlcy9Sb290U2VydmljZS50c2AgfCBFeGFtcGxlIHNlcnZpY2UgdXNpbmcgYHVzZUJhc2VRdWVyeWAgfCcsXG4gICAgJ3wgYHdlYi9wdWJsaWMvY29uZmlnLmpzb25gIHwgUnVudGltZSBjb25maWcgKEFQSSBiYXNlIFVSTCwgQ2xlcmsgcHVibGlzaGFibGUga2V5KSB8JyxcbiAgICAnJyxcbiAgICAnIyMjIEdpdEh1YiBBY3Rpb25zIFdvcmtmbG93cyAoYC5naXRodWIvd29ya2Zsb3dzL2ApJyxcbiAgICAnJyxcbiAgICAnfCBGaWxlIHwgVHJpZ2dlciB8JyxcbiAgICAnfC0tLS0tLXwtLS0tLS0tLS18JyxcbiAgICAnfCBgcHItZGVwbG95LnltbGAgfCBPbiBwdWxsIHJlcXVlc3Qgb3Blbi91cGRhdGUg4oCUIGRlcGxveXMgYSBwZXItUFIgZGV2IHN0YWNrIHwnLFxuICAgICd8IGBwci1jbGVhbnVwLnltbGAgfCBPbiBwdWxsIHJlcXVlc3QgY2xvc2Ug4oCUIHRlYXJzIGRvd24gdGhlIHBlci1QUiBkZXYgc3RhY2sgfCcsXG4gICAgJ3wgYHN0YWdpbmctZGVwbG95LnltbGAgfCBPbiBwdXNoIHRvIGBtYWluYCDigJQgZGVwbG95cyB0byBzdGFnaW5nIHwnLFxuICAgICd8IGBwcm9kdWN0aW9uLWRlcGxveS55bWxgIHwgTWFudWFsbHkgdHJpZ2dlcmVkIOKAlCBkZXBsb3lzIHRvIHByb2R1Y3Rpb24gfCcsXG4gICAgJycsXG4gICAgJy0tLScsXG4gICAgJycsXG4gICAgJyMjIEZpbGVzIFlvdSBDYW4gRWRpdCcsXG4gICAgJycsXG4gICAgJ1RoZXNlIGZpbGVzIGFyZSBnZW5lcmF0ZWQgb25jZSBhbmQgbmV2ZXIgb3ZlcndyaXR0ZW4gYnkgQmF0bWFuLiBNb2RpZnkgdGhlbSBmcmVlbHkuJyxcbiAgICAnJyxcbiAgICAnfCBGaWxlIHwgV2hhdCB0byBkbyB3aXRoIGl0IHwnLFxuICAgICd8LS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tfCcsXG4gICAgJ3wgYC5wcm9qZW5yYy50cyB8IFRoZSBtYWluIFByb2plbiBjb25maWd1cmF0aW9uIGZpbGUuIEFkZGl0aW9uYWwgZGVwZW5kZW5jaWVzIGZvciBlaXRoZXIgdGhlIEFQSSBvciB0aGUgV2ViIGZyb250ZW5kIG5lZWQgdG8gYmUgYWRkZWQgaGVyZSB8JyxcbiAgICAnfCBgc3JjL3N0YWNrcy9BcHBsaWNhdGlvblN0YWNrLnRzYCB8ICoqU3RhcnQgaGVyZS4qKiBBZGQgQ0RLIGNvbnN0cnVjdHMgdG8gYnVpbGQgeW91ciBpbmZyYXN0cnVjdHVyZSB8JyxcbiAgICAnfCBgc3JjL2NvbnN0cnVjdHMvaGFuZGxlci9hcHAudHMgfCBUaGUgbWFpbiBtb25vbGl0aGljIEFQSSBSRVNUIHNlcnZlciBmaWxlLiBNYWluIGZpbGUgeW91IHNob3VsZCBiZSBtb2RpZnlpbmcgfCcsXG4gICAgJ3wgYHdlYi9zcmMvQXBwLnRzeGAgfCBCdWlsZCB5b3VyIFVJIGhlcmUgfCcsXG4gICAgJ3wgYHdlYi9zcmMvQXBwLmNzc2AgLyBgd2ViL3NyYy9pbmRleC5jc3NgIHwgU3R5bGUgeW91ciBhcHBsaWNhdGlvbiB8JyxcbiAgICAnfCBgd2ViL3NyYy9tYWluLnRzeGAgfCBBZGp1c3QgdG9wLWxldmVsIHByb3ZpZGVycyBvciByb3V0aW5nIHwnLFxuICAgICd8IGB3ZWIvc3JjL3NlcnZpY2VzL1Jvb3RTZXJ2aWNlLnRzYCB8IEFkZCBvciByZXBsYWNlIEFQSSBzZXJ2aWNlIGhvb2tzIHwnLFxuICAgICd8IGB3ZWIvcHVibGljL2NvbmZpZy5qc29uYCB8IFVwZGF0ZSBmb3IgbG9jYWwgZGV2ZWxvcG1lbnQgKEFQSSBVUkwsIENsZXJrIGtleSkgfCcsXG4gICAgJycsXG4gICAgJyMjIEZpbGVzIFlvdSBDYW5ub3QgRWRpdCcsXG4gICAgJycsXG4gICAgJ1RoZXNlIGZpbGVzIGFyZSAqKm1hbmFnZWQgYnkgQmF0bWFuKiogYW5kIHdpbGwgYmUgb3ZlcndyaXR0ZW4gZXZlcnkgdGltZSBgbnB4IHByb2plbmAgcnVucy4gRG8gbm90IGVkaXQgdGhlbSBkaXJlY3RseSDigJQgbWFrZSBjaGFuZ2VzIGluIGAucHJvamVucmMudHNgIGluc3RlYWQuJyxcbiAgICAnJyxcbiAgICAnPiBbIUlNUE9SVEFOVF0nLFxuICAgICc+IElmIHlvdSBoYXZlIEFOWSBjaGFuZ2VzIHlvdSB3YW50IHRvIG1ha2UgdG8gdGhlc2UgZmlsZXMsIG5vdGlmeSAjdGVhbS1iYXRtYW4gb24gU2xhY2suICcsXG4gICAgJz4gV2UgbWFpbnRhaW4gdGhlc2UgZmlsZXMgYXMgcGFydCBvZiB0aGUgY29yZSBCYXRtYW4gZXhwZXJpZW5jZSwgYW5kIHlvdXIgZmVlZGJhY2sgaXMgY3J1Y2lhbCB0byBlbnN1cmUgdGhleSBtZWV0IHlvdXIgbmVlZHMuJyxcbiAgICAnJyxcbiAgICAnfCBGaWxlIHwgV2h5IGl0XFwncyBtYW5hZ2VkIHwnLFxuICAgICd8LS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tfCcsXG4gICAgJ3wgYHNyYy9zdGFja3MvQmFzZUFwcGxpY2F0aW9uU3RhY2sudHNgIHwgQ29yZSBzdGFjayB3aXJpbmcg4oCUIHVwZGF0ZWQgd2l0aCBCYXRtYW4gcmVsZWFzZXMgfCcsXG4gICAgJ3wgYHNyYy9hc3BlY3RzL0RhdGFEb2dBc3BlY3QudHNgIHwgRGF0YWRvZyBDREsgYXNwZWN0IHwnLFxuICAgICd8IGB3ZWIvdml0ZS5jb25maWcudHNgIHwgVml0ZSBjb25maWd1cmF0aW9uIHwnLFxuICAgICd8IGB3ZWIvZXNsaW50LmNvbmZpZy5qc2AgfCBFU0xpbnQgY29uZmlndXJhdGlvbiB8JyxcbiAgICAnfCBgd2ViL3Bvc3Rjc3MuY29uZmlnLmpzYCB8IFBvc3RDU1MgLyBUYWlsd2luZCBjb25maWd1cmF0aW9uIHwnLFxuICAgICd8IGB3ZWIvaW5kZXguaHRtbGAgfCBIVE1MIGVudHJ5IHBvaW50IHwnLFxuICAgICd8IGB3ZWIvdHNjb25maWcuanNvbmAgLyBgd2ViL3RzY29uZmlnLmFwcC5qc29uYCAvIGB3ZWIvdHNjb25maWcubm9kZS5qc29uYCB8IFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiB8JyxcbiAgICAnfCBgd2ViL3NyYy92aXRlLWVudi5kLnRzYCB8IFZpdGUgdHlwZSBkZWNsYXJhdGlvbnMgfCcsXG4gICAgJ3wgYHdlYi9zcmMvY29uZmlnLnRzYCB8IFJ1bnRpbWUgY29uZmlnIGhvb2sg4oCUIHNoYXBlIGRyaXZlbiBieSBgLnByb2plbnJjLnRzYCB8JyxcbiAgICAnfCBgd2ViL3NyYy9zZXJ2aWNlcy9CYXNlU2VydmljZS50c2AgfCBCYXNlIGF1dGhlbnRpY2F0ZWQgZmV0Y2ggaG9vayB8JyxcbiAgICAnfCBgLmdpdGh1Yi9DT0RFT1dORVJTYCB8IENvZGUgb3duZXJzaGlwIHBvbGljeSB8JyxcbiAgICAnfCBgLmdpdGh1Yi93b3JrZmxvd3MvKi55bWxgIHwgQWxsIENJL0NEIHdvcmtmbG93cyB8JyxcbiAgICAnfCBgYXJjaGl0ZWN0dXJlLXJ1bGVzL2NoZWNrLnRzYCwgYHRzY29uZmlnLmpzb25gLCBgUkVBRE1FLm1kYCB8IEFyY2hpdGVjdHVyZSBydWxlIGVuZ2luZSB8JyxcbiAgICAnfCBgYXR0ZXN0YXRpb24vbWFuaWZlc3QudHNgLCBgdmVyaWZ5LnRzYCwgYHRzY29uZmlnLmpzb25gIHwgUFIgYXR0ZXN0YXRpb24gbWVjaGFuaXNtIHwnLFxuICAgICd8IGBvcGVuc3BlYy1nYXRlcy9jaGVjay10YXNrcy1jb21wbGV0ZS50c2AsIGB0c2NvbmZpZy5qc29uYCB8IE9wZW5TcGVjIHRhc2stY29tcGxldGlvbiBnYXRlIHwnLFxuICAgICd8IGB3b3JrZmxvd3Mvd29ya2Zsb3ctKi55YW1sYCB8IFN3YW1wIHdvcmtmbG93cyB0aGUgc29mdHdhcmUgZmFjdG9yeSBydW5zIHwnLFxuICAgICcnLFxuICAgICc+ICoqVGlwOioqIEZpbGVzIHdpdGggYSBgfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLiB+fmAgaGVhZGVyIGFyZSBtYW5hZ2VkIGZpbGVzLicsXG4gICAgJycsXG4gICAgJyMjIyBTb2Z0d2FyZSBGYWN0b3J5IChgbW9kZWxzL2AsIGBhcmNoaXRlY3R1cmUtcnVsZXMvcnVsZXMuanNvbmApJyxcbiAgICAnJyxcbiAgICAnQmF0bWFuIGFsc28gc2VlZHMgYSBbc3dhbXBdKGh0dHBzOi8vZ2l0aHViLmNvbS9zd2FtcC1jbHViL3N3YW1wKSBzb2Z0d2FyZScsXG4gICAgJ2ZhY3Rvcnkg4oCUIGEgYEBzd2FtcC9zb2Z0d2FyZS1mYWN0b3J5YCBzdGF0ZSBtYWNoaW5lIHRoYXQgZHJpdmVzIGEgR2l0SHViJyxcbiAgICAnaXNzdWUgdGhyb3VnaCBpbnRha2UsIE9wZW5TcGVjIHBsYW5uaW5nLCBpbXBsZW1lbnRhdGlvbiwgcHJlLVBSJyxcbiAgICAndmVyaWZpY2F0aW9uLCBhbmQgYW4gb3BlbmVkIFBSLiBUaGUgc2VlZCBmaWxlcyB1bmRlciBgbW9kZWxzLyoqLyoueWFtbGAgYW5kJyxcbiAgICAnYGFyY2hpdGVjdHVyZS1ydWxlcy9ydWxlcy5qc29uYCBhcmUgZ2VuZXJhdGVkIG9uY2UgKGxpa2UgdGhlIGZpbGVzIGluJyxcbiAgICAnXCJGaWxlcyBZb3UgQ2FuIEVkaXRcIiBhYm92ZSkg4oCUIHR1bmUgdGhlIGZhY3RvcnlcXCdzIHN0YWdlcy9nYXRlcyBvciBhZGQgeW91cicsXG4gICAgJ293biBhcmNoaXRlY3R1cmUgcnVsZXMgZGlyZWN0bHkgaW4gdGhvc2UgZmlsZXMuJyxcbiAgICAnJyxcbiAgICAnYHN3YW1wIGluaXRgIHJ1bnMgYXV0b21hdGljYWxseSBhcyBwYXJ0IG9mIGBpbnN0YWxsYC9gaW5zdGFsbDpjaWAgKGEgc2lsZW50JyxcbiAgICAnbm8tb3AgaWYgYHN3YW1wYCBpc25cXCd0IG9uIFBBVEgsIGUuZy4gaW4gQ0kpLCBzbyB0aGUgcmVwbyBzdGF5cyBpbml0aWFsaXplZCcsXG4gICAgJ3dpdGhvdXQgYSBzZXBhcmF0ZSBzdGVwLiBPbmUtdGltZSBzZXR1cCBiZXlvbmQgdGhhdCwgYWZ0ZXIgeW91ciBmaXJzdCcsXG4gICAgJ2BucHggcHJvamVuYDonLFxuICAgICcnLFxuICAgICdgYGBiYXNoJyxcbiAgICAnIyBQdWxscyB0aGUgc29mdHdhcmUtZmFjdG9yeS9naXRodWIgZXh0ZW5zaW9ucyBhbmQgY3JlYXRlcyB0aGUgcmVwb1xcJ3MnLFxuICAgICcjIHNlY3JldHMgdmF1bHQnLFxuICAgICducHggcHJvamVuIHN3YW1wOmJvb3RzdHJhcCcsXG4gICAgJycsXG4gICAgJyMgVGhlbiBzdG9yZSBhIEdpdEh1YiB0b2tlbiB0aGUgZmFjdG9yeSBjYW4gb3BlbiBQUnMgd2l0aCcsXG4gICAgJ3N3YW1wIHZhdWx0IHB1dCA8cmVwbz4tc2VjcmV0cyBHSVRIVUJfVE9LRU4gLS1yZWZyZXNoLWZyb20gXCJnaCBhdXRoIHRva2VuXCInLFxuICAgICdgYGAnLFxuICAgICcnLFxuICAgICctLS0nLFxuICAgICcnLFxuICAgICcjIyBXaGVyZSB0byBTdGFydCcsXG4gICAgJycsXG4gICAgJzEuICoqYHNyYy9zdGFja3MvQXBwbGljYXRpb25TdGFjay50c2AqKiDigJQgQWRkIHlvdXIgQ0RLIGNvbnN0cnVjdHMgaGVyZS4gVGhlIGJhc2Ugc3RhY2sgYWxyZWFkeSBwcm92aWRlcyBgdGhpcy5hcGlgLCBgdGhpcy52cGNgLCBgdGhpcy5ob3N0ZWRab25lYCwgYW5kIGB0aGlzLmRhdGFkb2dgIGFzIHByb3RlY3RlZCBwcm9wZXJ0aWVzLicsXG4gICAgJycsXG4gICAgJzIuICoqYHdlYi9gKiog4oCUIEJ1aWxkIHlvdXIgZnJvbnRlbmQuIFN0YXJ0IHdpdGggYHdlYi9zcmMvQXBwLnRzeGAgYW5kIGFkZCBzZXJ2aWNlcyBhbG9uZ3NpZGUgYHdlYi9zcmMvc2VydmljZXMvUm9vdFNlcnZpY2UudHNgLicsXG4gICAgJycsXG4gICAgJzMuICoqYHNyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvYXBwLnRzYCoqIOKAlCBJbXBsZW1lbnQgeW91ciBiYWNrZW5kIExhbWJkYSBoYW5kbGVyIGxvZ2ljIGhlcmUuJyxcbiAgICAnJyxcbiAgICAnNC4gKipgLnByb2plbnJjLnRzYCoqIC0gTWFuYWdlcyBwcm9qZWN0IGRlcGVuZGVuY2llcyBhbmQgY29uZmlndXJhdGlvbi4gUnVuIGBucHggcHJvamVuYCBhZnRlciBtYWtpbmcgYW55IGNoYW5nZXMgdG8gdGhpcyBmaWxlLicsXG4gICAgJy0tLScsXG4gICAgJycsXG4gICAgJyMjIERldmVsb3BtZW50IFdvcmtmbG93JyxcbiAgICAnJyxcbiAgICAnYGBgYmFzaCcsXG4gICAgJyMgSW5zdGFsbCBkZXBlbmRlbmNpZXMnLFxuICAgICd5YXJuIGluc3RhbGwnLFxuICAgICcnLFxuICAgICcjIFN0YXJ0IGxvY2FsIGRldiBzZXJ2ZXIgKGJhY2tlbmQgTGFtYmRhICsgVml0ZSBmcm9udGVuZCBpbiBwYXJhbGxlbCknLFxuICAgICd5YXJuIGRldicsXG4gICAgJycsXG4gICAgJyMgRGVwbG95IGEgcGVyc29uYWwgZGV2IHN0YWNrIHRvIEFXUyBhcyBhbiBhbHRlcm5hdGl2ZSB0byBsb2NhbCBkZXZlbG9wbWVudCwgcHJvdmlkZXMgbW9yZSB0aG9yb3VnaCBlbmQtdG8tZW5kIHRlc3RpbmcnLFxuICAgICd5YXJuIGNkazpkZXYgLS1jb250ZXh0IGxvY2FsLWRldi1wcmVmaXg9eW91ci1oYW5kbGUgZGVwbG95JyxcbiAgICAnJyxcbiAgICAnIyBSdW4gdGVzdHMnLFxuICAgICd5YXJuIHRlc3QnLFxuICAgICcnLFxuICAgICcjIFJlLXN5bnRoZXNpemUgcHJvamVjdCBmaWxlcyBhZnRlciBlZGl0aW5nIC5wcm9qZW5yYy50cycsXG4gICAgJ25weCBwcm9qZW4nLFxuICAgICdgYGAnLFxuICAgICcnLFxuICAgICctLS0nLFxuICAgICcnLFxuICAgICcjIyBVcGdyYWRpbmcgQmF0bWFuJyxcbiAgICAnJyxcbiAgICAnYGBgYmFzaCcsXG4gICAgJ3lhcm4gYWRkIEBtYWNlZG9uLXRlY2hub2xvZ2llcy9iYXRtYW5AbGF0ZXN0JyxcbiAgICAnbnB4IHByb2plbicsXG4gICAgJ2BgYCcsXG4gICAgJycsXG4gICAgJ1RoaXMgdXBkYXRlcyBhbGwgbWFuYWdlZCBmaWxlcyB0byB0aGUgbGF0ZXN0IEJhdG1hbiBzdGFuZGFyZHMuIFlvdXIgZWRpdGFibGUgc2FtcGxlIGZpbGVzIGFyZSBuZXZlciB0b3VjaGVkLicsXG4gIF0uam9pbignXFxuJyk7XG59XG4iXX0=
244
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFLQSw0Q0FZQztBQU1ELHdDQVdDO0FBV0QsNERBT0M7QUFFRCxrQ0FnQkM7QUFFRCx3Q0FzS0M7QUE5T0Qsc0RBQTJEO0FBRTNEOztHQUVHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQUMsY0FBa0MsRUFBRSxNQUFjO0lBQ2pGLFFBQVEsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSywrQkFBa0IsQ0FBQyxHQUFHO1lBQ3pCLE9BQU8sV0FBVyxNQUFNLEVBQUUsQ0FBQztRQUM3QixLQUFLLCtCQUFrQixDQUFDLEdBQUc7WUFDekIsT0FBTyxXQUFXLE1BQU0sRUFBRSxDQUFDO1FBQzdCLEtBQUssK0JBQWtCLENBQUMsSUFBSTtZQUMxQixPQUFPLFFBQVEsTUFBTSxFQUFFLENBQUM7UUFDMUI7WUFDRSxvRkFBb0Y7WUFDcEYsT0FBTyxRQUFRLE1BQU0sRUFBRSxDQUFDO0lBQzVCLENBQUM7QUFDSCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsY0FBYyxDQUFDLGNBQWtDO0lBQy9ELFFBQVEsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSywrQkFBa0IsQ0FBQyxHQUFHO1lBQ3pCLE9BQU8sUUFBUSxDQUFDO1FBQ2xCLEtBQUssK0JBQWtCLENBQUMsR0FBRztZQUN6QixPQUFPLCtCQUErQixDQUFDO1FBQ3pDLEtBQUssK0JBQWtCLENBQUMsSUFBSTtZQUMxQixPQUFPLGdDQUFnQyxDQUFDO1FBQzFDO1lBQ0UsT0FBTyxnQ0FBZ0MsQ0FBQztJQUM1QyxDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0Isd0JBQXdCO0lBQ3RDLE9BQU87UUFDTCxtR0FBbUc7UUFDbkcsb0RBQW9EO1FBQ3BELCtDQUErQztRQUMvQyxJQUFJO0tBQ0wsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFnQixXQUFXLENBQUMsS0FB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QUU7UUFDRixhQUFhO1FBQ2IsV0FBVztRQUNYLEVBQUU7UUFDRiwwREFBMEQ7UUFDMUQsWUFBWTtRQUNaLEtBQUs7UUFDTCxFQUFFO1FBQ0YsZ0JBQWdCO1FBQ2hCLGdGQUFnRjtRQUNoRixvRUFBb0U7UUFDcEUsRUFBRTtRQUNGLEtBQUs7UUFDTCxFQUFFO1FBQ0YscUJBQXFCO1FBQ3JCLEVBQUU7UUFDRixTQUFTO1FBQ1QsOENBQThDO1FBQzlDLFlBQVk7UUFDWixLQUFLO1FBQ0wsRUFBRTtRQUNGLDhHQUE4RztLQUMvRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIgfSBmcm9tICdwcm9qZW4vbGliL2phdmFzY3JpcHQnO1xuXG4vKipcbiAqIFJlbmRlcnMgdGhlIGNvbW1hbmQgdXNlZCB0byBydW4gYSBwYWNrYWdlLmpzb24gc2NyaXB0IGZvciB0aGUgZ2l2ZW4gcGFja2FnZSBtYW5hZ2VyLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcnVuU2NyaXB0Q29tbWFuZChwYWNrYWdlTWFuYWdlcjogTm9kZVBhY2thZ2VNYW5hZ2VyLCBzY3JpcHQ6IHN0cmluZyk6IHN0cmluZyB7XG4gIHN3aXRjaCAocGFja2FnZU1hbmFnZXIpIHtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5OUE06XG4gICAgICByZXR1cm4gYG5wbSBydW4gJHtzY3JpcHR9YDtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5CVU46XG4gICAgICByZXR1cm4gYGJ1biBydW4gJHtzY3JpcHR9YDtcbiAgICBjYXNlIE5vZGVQYWNrYWdlTWFuYWdlci5QTlBNOlxuICAgICAgcmV0dXJuIGBwbnBtICR7c2NyaXB0fWA7XG4gICAgZGVmYXVsdDpcbiAgICAgIC8vIGFsbCB5YXJuIHZhcmlhbnRzICh5YXJuLCB5YXJuMiwgeWFybl9jbGFzc2ljLCB5YXJuX2JlcnJ5KSBzaGFyZSB0aGUgYHlhcm5gIGJpbmFyeVxuICAgICAgcmV0dXJuIGB5YXJuICR7c2NyaXB0fWA7XG4gIH1cbn1cblxuLyoqXG4gKiBSZW5kZXJzIHRoZSBjb21tYW5kIHVzZWQgdG8gZG8gYSBjbGVhbiwgcmVwcm9kdWNpYmxlIGRlcGVuZGVuY3kgaW5zdGFsbCAoZS5nLiBmb3IgQ0kpXG4gKiBmb3IgdGhlIGdpdmVuIHBhY2thZ2UgbWFuYWdlci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluc3RhbGxDb21tYW5kKHBhY2thZ2VNYW5hZ2VyOiBOb2RlUGFja2FnZU1hbmFnZXIpOiBzdHJpbmcge1xuICBzd2l0Y2ggKHBhY2thZ2VNYW5hZ2VyKSB7XG4gICAgY2FzZSBOb2RlUGFja2FnZU1hbmFnZXIuTlBNOlxuICAgICAgcmV0dXJuICducG0gY2knO1xuICAgIGNhc2UgTm9kZVBhY2thZ2VNYW5hZ2VyLkJVTjpcbiAgICAgIHJldHVybiAnYnVuIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUnO1xuICAgIGNhc2UgTm9kZVBhY2thZ2VNYW5hZ2VyLlBOUE06XG4gICAgICByZXR1cm4gJ3BucG0gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAneWFybiBpbnN0YWxsIC0tZnJvemVuLWxvY2tmaWxlJztcbiAgfVxufVxuXG4vKipcbiAqIEJhc2ggbGluZXMgdGhhdCBzYW5pdGl6ZSBhIGBDTEVBTl9CUkFOQ0hfTkFNRWAgdmFyaWFibGUgKGFscmVhZHkgc3RyaXBwZWQgb2YgYW55XG4gKiBjb252ZW50aW9uYWwtY29tbWl0IHByZWZpeCkgaW50byBhIHZhbHVlIHNhZmUgdG8gdXNlIGFzIGEgQ2xvdWRGb3JtYXRpb24gc3RhY2stbmFtZVxuICogZnJhZ21lbnQ6IGNvbGxhcHNlcyBydW5zIG9mIG5vbi1hbHBoYW51bWVyaWMgY2hhcmFjdGVycyB0byBgLWAsIHRyaW1zIGxlYWRpbmcvdHJhaWxpbmdcbiAqIGAtYCwgYW5kIHByZWZpeGVzIHdpdGggYHByLWAgaWYgdGhlIHJlc3VsdCB3b3VsZCBub3Qgc3RhcnQgd2l0aCBhIGxldHRlciAob3IgaXMgZW1wdHkpLlxuICpcbiAqIFNoYXJlZCBieSBQckRlcGxveVdvcmtmbG93IGFuZCBQckNsZWFudXBXb3JrZmxvdyBzbyBib3RoIGRlcml2ZSB0aGUgaWRlbnRpY2FsIHN0YWNrXG4gKiBuYW1lIGZvciBhIGdpdmVuIGJyYW5jaC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplQnJhbmNoTmFtZVNjcmlwdCgpOiBzdHJpbmdbXSB7XG4gIHJldHVybiBbXG4gICAgJ0NMRUFOX0JSQU5DSF9OQU1FPSQoZWNobyBcIiRDTEVBTl9CUkFOQ0hfTkFNRVwiIHwgc2VkIC1FIFxcJ3MvW15BLVphLXowLTldKy8tL2c7IHMvXi0rLy87IHMvLSskLy9cXCcpJyxcbiAgICAnaWYgW1sgISBcIiRDTEVBTl9CUkFOQ0hfTkFNRVwiID1+IF5bQS1aYS16XSBdXTsgdGhlbicsXG4gICAgJyAgQ0xFQU5fQlJBTkNIX05BTUU9XCJwci0ke0NMRUFOX0JSQU5DSF9OQU1FfVwiJyxcbiAgICAnZmknLFxuICBdO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplVHModmFsdWU6IGFueSwgZGVwdGggPSAxKTogc3RyaW5nIHtcbiAgY29uc3QgcGFkID0gJyAgJy5yZXBlYXQoZGVwdGgpO1xuICBjb25zdCBpbm5lclBhZCA9ICcgICcucmVwZWF0KGRlcHRoICsgMSk7XG4gIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSByZXR1cm4gYCcke3ZhbHVlfSdgO1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyB8fCB0eXBlb2YgdmFsdWUgPT09ICdib29sZWFuJykgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIGNvbnN0IGl0ZW1zID0gdmFsdWUubWFwKHYgPT4gYCR7aW5uZXJQYWR9JHtzZXJpYWxpemVUcyh2LCBkZXB0aCArIDEpfWApLmpvaW4oJyxcXG4nKTtcbiAgICByZXR1cm4gYFtcXG4ke2l0ZW1zfSxcXG4ke3BhZH1dYDtcbiAgfVxuICBpZiAodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyh2YWx1ZSlcbiAgICAgIC5tYXAoKFtrLCB2XSkgPT4gYCR7aW5uZXJQYWR9JHtrfTogJHtzZXJpYWxpemVUcyh2LCBkZXB0aCArIDEpfWApXG4gICAgICAuam9pbignLFxcbicpO1xuICAgIHJldHVybiBge1xcbiR7ZW50cmllc30sXFxuJHtwYWR9fWA7XG4gIH1cbiAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRtZUNvbnRlbnRzKHByb2plY3ROYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIFtcbiAgICBgIyAke3Byb2plY3ROYW1lfWAsXG4gICAgJycsXG4gICAgJ1RoaXMgcHJvamVjdCB3YXMgYm9vdHN0cmFwcGVkIHdpdGggW0JhdG1hbl0oaHR0cHM6Ly9naXRodWIuY29tL21hY2Vkb24tdGVjaG5vbG9naWVzL3BsYXRmb3JtLWNvbW1vbikuJyxcbiAgICAnJyxcbiAgICAnIyMgV2hhdCBCYXRtYW4gQ3JlYXRlZCcsXG4gICAgJycsXG4gICAgJyMjIyBDREsgSW5mcmFzdHJ1Y3R1cmUgKGBzcmMvYCknLFxuICAgICcnLFxuICAgICd8IEZpbGUgfCBEZXNjcmlwdGlvbiB8JyxcbiAgICAnfC0tLS0tLXwtLS0tLS0tLS0tLS0tfCcsXG4gICAgJ3wgYHNyYy9tYWluLnRzYCB8IENESyBhcHAgZW50cnkgcG9pbnQg4oCUIGluc3RhbnRpYXRlcyBkZXYsIHN0YWdpbmcsIGFuZCBwcm9kIGBBcHBsaWNhdGlvblN0YWNrYHMgfCcsXG4gICAgJ3wgYHNyYy9Mb2NhbERldkFwcC50c2AgfCBMb2NhbCBkZXZlbG9wbWVudCBDREsgYXBwIOKAlCB1c2VkIGJ5IGB5YXJuIGNkazpkZXZgIC0gZGVwbG95cyB0byBBV1MgZm9yIHNsb3dlciBidXQgbW9yZSB0aG9yb3VnaCB0ZXN0aW5nIHwnLFxuICAgICd8IGBzcmMvR2l0SHViUm9sZXMudHNgIHwgQ0RLIGFwcCBmb3IgZGVwbG95aW5nIHRoZSBHaXRIdWIgT0lEQyBJQU0gcm9sZSAob25lLXRpbWUgYm9vdHN0cmFwKSB8JyxcbiAgICAnfCBgc3JjL3N0YWNrcy9BcHBsaWNhdGlvblN0YWNrLnRzYCB8IFlvdXIgcHJpbWFyeSBzdGFjayDigJQgZXh0ZW5kIGl0IHRvIGFkZCByZXNvdXJjZXMgfCcsXG4gICAgJ3wgYHNyYy9zdGFja3MvQmFzZUFwcGxpY2F0aW9uU3RhY2sudHNgIHwgQmFzZSBzdGFjayB3aXRoIFZQQywgQVBJLCBzdGF0aWMgd2Vic2l0ZSwgRGF0YWRvZywgYW5kIFJvdXRlIDUzIHdpcmVkIHVwIHwnLFxuICAgICd8IGBzcmMvc3RhY2tzL0dpdEh1YlJvbGVzU3RhY2sudHNgIHwgSUFNIHJvbGUgc3RhY2sgZm9yIEdpdEh1YiBBY3Rpb25zIE9JREMgYXV0aGVudGljYXRpb24gfCcsXG4gICAgJ3wgYHNyYy9jb25zdHJ1Y3RzL0FwaS50c2AgfCBBUEkgR2F0ZXdheSArIExhbWJkYSBjb25zdHJ1Y3Qgd2l0aCBDbGVyayBKV1QgYXV0aG9yaXplciB8JyxcbiAgICAnfCBgc3JjL2NvbnN0cnVjdHMvU3RhdGljV2Vic2l0ZS50c2AgfCBDbG91ZEZyb250ICsgUzMgKyBBQ00gKyBSb3V0ZSA1MyBjb25zdHJ1Y3QgfCcsXG4gICAgJ3wgYHNyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvQXBpLkZ1bmN0aW9uLnRzYCB8IExhbWJkYSBoYW5kbGVyIGVudHJ5IHBvaW50LCBiYXNpYyB3cmFwcGVyIGFyb3VuZCBFeHByZXNzLWNvbXBhdGlibGUgYXBwIGNvZGUgfCcsXG4gICAgJ3wgYHNyYy9hc3BlY3RzL0RhdGFEb2dBc3BlY3QudHNgIHwgQ0RLIGFzcGVjdCB0aGF0IHdpcmVzIGFsbCBMYW1iZGEgZnVuY3Rpb25zIHRvIERhdGFkb2cgfCcsXG4gICAgJycsXG4gICAgJyMjIyBGcm9udGVuZCAoYHdlYi9gKScsXG4gICAgJycsXG4gICAgJ3wgRmlsZSB8IERlc2NyaXB0aW9uIHwnLFxuICAgICd8LS0tLS0tfC0tLS0tLS0tLS0tLS18JyxcbiAgICAnfCBgd2ViL3NyYy9tYWluLnRzeGAgfCBSZWFjdCBhcHAgZW50cnkgcG9pbnQgd2l0aCBDbGVyayBhbmQgUmVhY3QgUXVlcnkgcHJvdmlkZXJzIHwnLFxuICAgICd8IGB3ZWIvc3JjL0FwcC50c3hgIHwgUm9vdCBhcHBsaWNhdGlvbiBjb21wb25lbnQgfCcsXG4gICAgJ3wgYHdlYi9zcmMvQXBwLmNzc2AgLyBgd2ViL3NyYy9pbmRleC5jc3NgIHwgQmFzZSBzdHlsZXNoZWV0cyAoVGFpbHdpbmQgQ1NTIHY0KSB8JyxcbiAgICAnfCBgd2ViL3NyYy9jb25maWcudHNgIHwgYHVzZUNvbmZpZygpYCBob29rIOKAlCBsb2FkcyBydW50aW1lIGNvbmZpZyBmcm9tIGBjb25maWcuanNvbmAgfCcsXG4gICAgJ3wgYHdlYi9zcmMvc2VydmljZXMvQmFzZVNlcnZpY2UudHNgIHwgYHVzZUJhc2VRdWVyeSgpYCDigJQgYXV0aGVudGljYXRlZCBBUEkgZmV0Y2ggaG9vayB8JyxcbiAgICAnfCBgd2ViL3NyYy9zZXJ2aWNlcy9Sb290U2VydmljZS50c2AgfCBFeGFtcGxlIHNlcnZpY2UgdXNpbmcgYHVzZUJhc2VRdWVyeWAgfCcsXG4gICAgJ3wgYHdlYi9wdWJsaWMvY29uZmlnLmpzb25gIHwgUnVudGltZSBjb25maWcgKEFQSSBiYXNlIFVSTCwgQ2xlcmsgcHVibGlzaGFibGUga2V5KSB8JyxcbiAgICAnJyxcbiAgICAnIyMjIEdpdEh1YiBBY3Rpb25zIFdvcmtmbG93cyAoYC5naXRodWIvd29ya2Zsb3dzL2ApJyxcbiAgICAnJyxcbiAgICAnfCBGaWxlIHwgVHJpZ2dlciB8JyxcbiAgICAnfC0tLS0tLXwtLS0tLS0tLS18JyxcbiAgICAnfCBgcHItZGVwbG95LnltbGAgfCBPbiBwdWxsIHJlcXVlc3Qgb3Blbi91cGRhdGUg4oCUIGRlcGxveXMgYSBwZXItUFIgZGV2IHN0YWNrIHwnLFxuICAgICd8IGBwci1jbGVhbnVwLnltbGAgfCBPbiBwdWxsIHJlcXVlc3QgY2xvc2Ug4oCUIHRlYXJzIGRvd24gdGhlIHBlci1QUiBkZXYgc3RhY2sgfCcsXG4gICAgJ3wgYHN0YWdpbmctZGVwbG95LnltbGAgfCBPbiBwdXNoIHRvIGBtYWluYCDigJQgZGVwbG95cyB0byBzdGFnaW5nIHwnLFxuICAgICd8IGBwcm9kdWN0aW9uLWRlcGxveS55bWxgIHwgTWFudWFsbHkgdHJpZ2dlcmVkIOKAlCBkZXBsb3lzIHRvIHByb2R1Y3Rpb24gfCcsXG4gICAgJycsXG4gICAgJy0tLScsXG4gICAgJycsXG4gICAgJyMjIEZpbGVzIFlvdSBDYW4gRWRpdCcsXG4gICAgJycsXG4gICAgJ1RoZXNlIGZpbGVzIGFyZSBnZW5lcmF0ZWQgb25jZSBhbmQgbmV2ZXIgb3ZlcndyaXR0ZW4gYnkgQmF0bWFuLiBNb2RpZnkgdGhlbSBmcmVlbHkuJyxcbiAgICAnJyxcbiAgICAnfCBGaWxlIHwgV2hhdCB0byBkbyB3aXRoIGl0IHwnLFxuICAgICd8LS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tfCcsXG4gICAgJ3wgYC5wcm9qZW5yYy50cyB8IFRoZSBtYWluIFByb2plbiBjb25maWd1cmF0aW9uIGZpbGUuIEFkZGl0aW9uYWwgZGVwZW5kZW5jaWVzIGZvciBlaXRoZXIgdGhlIEFQSSBvciB0aGUgV2ViIGZyb250ZW5kIG5lZWQgdG8gYmUgYWRkZWQgaGVyZSB8JyxcbiAgICAnfCBgc3JjL3N0YWNrcy9BcHBsaWNhdGlvblN0YWNrLnRzYCB8ICoqU3RhcnQgaGVyZS4qKiBBZGQgQ0RLIGNvbnN0cnVjdHMgdG8gYnVpbGQgeW91ciBpbmZyYXN0cnVjdHVyZSB8JyxcbiAgICAnfCBgc3JjL2NvbnN0cnVjdHMvaGFuZGxlci9hcHAudHMgfCBUaGUgbWFpbiBtb25vbGl0aGljIEFQSSBSRVNUIHNlcnZlciBmaWxlLiBNYWluIGZpbGUgeW91IHNob3VsZCBiZSBtb2RpZnlpbmcgfCcsXG4gICAgJ3wgYHdlYi9zcmMvQXBwLnRzeGAgfCBCdWlsZCB5b3VyIFVJIGhlcmUgfCcsXG4gICAgJ3wgYHdlYi9zcmMvQXBwLmNzc2AgLyBgd2ViL3NyYy9pbmRleC5jc3NgIHwgU3R5bGUgeW91ciBhcHBsaWNhdGlvbiB8JyxcbiAgICAnfCBgd2ViL3NyYy9tYWluLnRzeGAgfCBBZGp1c3QgdG9wLWxldmVsIHByb3ZpZGVycyBvciByb3V0aW5nIHwnLFxuICAgICd8IGB3ZWIvc3JjL3NlcnZpY2VzL1Jvb3RTZXJ2aWNlLnRzYCB8IEFkZCBvciByZXBsYWNlIEFQSSBzZXJ2aWNlIGhvb2tzIHwnLFxuICAgICd8IGB3ZWIvcHVibGljL2NvbmZpZy5qc29uYCB8IFVwZGF0ZSBmb3IgbG9jYWwgZGV2ZWxvcG1lbnQgKEFQSSBVUkwsIENsZXJrIGtleSkgfCcsXG4gICAgJycsXG4gICAgJyMjIEZpbGVzIFlvdSBDYW5ub3QgRWRpdCcsXG4gICAgJycsXG4gICAgJ1RoZXNlIGZpbGVzIGFyZSAqKm1hbmFnZWQgYnkgQmF0bWFuKiogYW5kIHdpbGwgYmUgb3ZlcndyaXR0ZW4gZXZlcnkgdGltZSBgbnB4IHByb2plbmAgcnVucy4gRG8gbm90IGVkaXQgdGhlbSBkaXJlY3RseSDigJQgbWFrZSBjaGFuZ2VzIGluIGAucHJvamVucmMudHNgIGluc3RlYWQuJyxcbiAgICAnJyxcbiAgICAnPiBbIUlNUE9SVEFOVF0nLFxuICAgICc+IElmIHlvdSBoYXZlIEFOWSBjaGFuZ2VzIHlvdSB3YW50IHRvIG1ha2UgdG8gdGhlc2UgZmlsZXMsIG5vdGlmeSAjdGVhbS1iYXRtYW4gb24gU2xhY2suICcsXG4gICAgJz4gV2UgbWFpbnRhaW4gdGhlc2UgZmlsZXMgYXMgcGFydCBvZiB0aGUgY29yZSBCYXRtYW4gZXhwZXJpZW5jZSwgYW5kIHlvdXIgZmVlZGJhY2sgaXMgY3J1Y2lhbCB0byBlbnN1cmUgdGhleSBtZWV0IHlvdXIgbmVlZHMuJyxcbiAgICAnJyxcbiAgICAnfCBGaWxlIHwgV2h5IGl0XFwncyBtYW5hZ2VkIHwnLFxuICAgICd8LS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tfCcsXG4gICAgJ3wgYHNyYy9zdGFja3MvQmFzZUFwcGxpY2F0aW9uU3RhY2sudHNgIHwgQ29yZSBzdGFjayB3aXJpbmcg4oCUIHVwZGF0ZWQgd2l0aCBCYXRtYW4gcmVsZWFzZXMgfCcsXG4gICAgJ3wgYHNyYy9hc3BlY3RzL0RhdGFEb2dBc3BlY3QudHNgIHwgRGF0YWRvZyBDREsgYXNwZWN0IHwnLFxuICAgICd8IGB3ZWIvdml0ZS5jb25maWcudHNgIHwgVml0ZSBjb25maWd1cmF0aW9uIHwnLFxuICAgICd8IGB3ZWIvZXNsaW50LmNvbmZpZy5qc2AgfCBFU0xpbnQgY29uZmlndXJhdGlvbiB8JyxcbiAgICAnfCBgd2ViL3Bvc3Rjc3MuY29uZmlnLmpzYCB8IFBvc3RDU1MgLyBUYWlsd2luZCBjb25maWd1cmF0aW9uIHwnLFxuICAgICd8IGB3ZWIvaW5kZXguaHRtbGAgfCBIVE1MIGVudHJ5IHBvaW50IHwnLFxuICAgICd8IGB3ZWIvdHNjb25maWcuanNvbmAgLyBgd2ViL3RzY29uZmlnLmFwcC5qc29uYCAvIGB3ZWIvdHNjb25maWcubm9kZS5qc29uYCB8IFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiB8JyxcbiAgICAnfCBgd2ViL3NyYy92aXRlLWVudi5kLnRzYCB8IFZpdGUgdHlwZSBkZWNsYXJhdGlvbnMgfCcsXG4gICAgJ3wgYHdlYi9zcmMvY29uZmlnLnRzYCB8IFJ1bnRpbWUgY29uZmlnIGhvb2sg4oCUIHNoYXBlIGRyaXZlbiBieSBgLnByb2plbnJjLnRzYCB8JyxcbiAgICAnfCBgd2ViL3NyYy9zZXJ2aWNlcy9CYXNlU2VydmljZS50c2AgfCBCYXNlIGF1dGhlbnRpY2F0ZWQgZmV0Y2ggaG9vayB8JyxcbiAgICAnfCBgLmdpdGh1Yi9DT0RFT1dORVJTYCB8IENvZGUgb3duZXJzaGlwIHBvbGljeSB8JyxcbiAgICAnfCBgLmdpdGh1Yi93b3JrZmxvd3MvKi55bWxgIHwgQWxsIENJL0NEIHdvcmtmbG93cyB8JyxcbiAgICAnfCBgYXJjaGl0ZWN0dXJlLXJ1bGVzL2NoZWNrLnRzYCwgYHRzY29uZmlnLmpzb25gLCBgUkVBRE1FLm1kYCB8IEFyY2hpdGVjdHVyZSBydWxlIGVuZ2luZSB8JyxcbiAgICAnfCBgYXR0ZXN0YXRpb24vbWFuaWZlc3QudHNgLCBgdmVyaWZ5LnRzYCwgYHRzY29uZmlnLmpzb25gIHwgUFIgYXR0ZXN0YXRpb24gbWVjaGFuaXNtIHwnLFxuICAgICd8IGBvcGVuc3BlYy1nYXRlcy9jaGVjay10YXNrcy1jb21wbGV0ZS50c2AsIGB0c2NvbmZpZy5qc29uYCB8IE9wZW5TcGVjIHRhc2stY29tcGxldGlvbiBnYXRlIHwnLFxuICAgICd8IGB3b3JrZmxvd3Mvd29ya2Zsb3ctKi55YW1sYCB8IFN3YW1wIHdvcmtmbG93cyB0aGUgc29mdHdhcmUgZmFjdG9yeSBydW5zIHwnLFxuICAgICcnLFxuICAgICc+ICoqVGlwOioqIEZpbGVzIHdpdGggYSBgfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLiB+fmAgaGVhZGVyIGFyZSBtYW5hZ2VkIGZpbGVzLicsXG4gICAgJycsXG4gICAgJyMjIyBTb2Z0d2FyZSBGYWN0b3J5IChgbW9kZWxzL2AsIGBhcmNoaXRlY3R1cmUtcnVsZXMvcnVsZXMuanNvbmApJyxcbiAgICAnJyxcbiAgICAnQmF0bWFuIGFsc28gc2VlZHMgYSBbc3dhbXBdKGh0dHBzOi8vZ2l0aHViLmNvbS9zd2FtcC1jbHViL3N3YW1wKSBzb2Z0d2FyZScsXG4gICAgJ2ZhY3Rvcnkg4oCUIGEgYEBzd2FtcC9zb2Z0d2FyZS1mYWN0b3J5YCBzdGF0ZSBtYWNoaW5lIHRoYXQgZHJpdmVzIGEgR2l0SHViJyxcbiAgICAnaXNzdWUgdGhyb3VnaCBpbnRha2UsIE9wZW5TcGVjIHBsYW5uaW5nLCBpbXBsZW1lbnRhdGlvbiwgcHJlLVBSJyxcbiAgICAndmVyaWZpY2F0aW9uLCBhbmQgYW4gb3BlbmVkIFBSLiBUaGUgc2VlZCBmaWxlcyB1bmRlciBgbW9kZWxzLyoqLyoueWFtbGAgYW5kJyxcbiAgICAnYGFyY2hpdGVjdHVyZS1ydWxlcy9ydWxlcy5qc29uYCBhcmUgZ2VuZXJhdGVkIG9uY2UgKGxpa2UgdGhlIGZpbGVzIGluJyxcbiAgICAnXCJGaWxlcyBZb3UgQ2FuIEVkaXRcIiBhYm92ZSkg4oCUIHR1bmUgdGhlIGZhY3RvcnlcXCdzIHN0YWdlcy9nYXRlcyBvciBhZGQgeW91cicsXG4gICAgJ293biBhcmNoaXRlY3R1cmUgcnVsZXMgZGlyZWN0bHkgaW4gdGhvc2UgZmlsZXMuJyxcbiAgICAnJyxcbiAgICAnYHN3YW1wIGluaXRgIHJ1bnMgYXV0b21hdGljYWxseSBhcyBwYXJ0IG9mIGBpbnN0YWxsYC9gaW5zdGFsbDpjaWAgKGEgc2lsZW50JyxcbiAgICAnbm8tb3AgaWYgYHN3YW1wYCBpc25cXCd0IG9uIFBBVEgsIGUuZy4gaW4gQ0kpLCBzbyB0aGUgcmVwbyBzdGF5cyBpbml0aWFsaXplZCcsXG4gICAgJ3dpdGhvdXQgYSBzZXBhcmF0ZSBzdGVwLiBPbmUtdGltZSBzZXR1cCBiZXlvbmQgdGhhdCwgYWZ0ZXIgeW91ciBmaXJzdCcsXG4gICAgJ2BucHggcHJvamVuYDonLFxuICAgICcnLFxuICAgICdgYGBiYXNoJyxcbiAgICAnIyBQdWxscyB0aGUgc29mdHdhcmUtZmFjdG9yeS9naXRodWIgZXh0ZW5zaW9ucyBhbmQgY3JlYXRlcyB0aGUgcmVwb1xcJ3MnLFxuICAgICcjIHNlY3JldHMgdmF1bHQnLFxuICAgICducHggcHJvamVuIHN3YW1wOmJvb3RzdHJhcCcsXG4gICAgJycsXG4gICAgJyMgVGhlbiBzdG9yZSBhIEdpdEh1YiB0b2tlbiB0aGUgZmFjdG9yeSBjYW4gb3BlbiBQUnMgd2l0aCcsXG4gICAgJ3N3YW1wIHZhdWx0IHB1dCA8cmVwbz4tc2VjcmV0cyBHSVRIVUJfVE9LRU4gLS1yZWZyZXNoLWZyb20gXCJnaCBhdXRoIHRva2VuXCInLFxuICAgICdgYGAnLFxuICAgICcnLFxuICAgICctLS0nLFxuICAgICcnLFxuICAgICcjIyBXaGVyZSB0byBTdGFydCcsXG4gICAgJycsXG4gICAgJzEuICoqYHNyYy9zdGFja3MvQXBwbGljYXRpb25TdGFjay50c2AqKiDigJQgQWRkIHlvdXIgQ0RLIGNvbnN0cnVjdHMgaGVyZS4gVGhlIGJhc2Ugc3RhY2sgYWxyZWFkeSBwcm92aWRlcyBgdGhpcy5hcGlgLCBgdGhpcy52cGNgLCBgdGhpcy5ob3N0ZWRab25lYCwgYW5kIGB0aGlzLmRhdGFkb2dgIGFzIHByb3RlY3RlZCBwcm9wZXJ0aWVzLicsXG4gICAgJycsXG4gICAgJzIuICoqYHdlYi9gKiog4oCUIEJ1aWxkIHlvdXIgZnJvbnRlbmQuIFN0YXJ0IHdpdGggYHdlYi9zcmMvQXBwLnRzeGAgYW5kIGFkZCBzZXJ2aWNlcyBhbG9uZ3NpZGUgYHdlYi9zcmMvc2VydmljZXMvUm9vdFNlcnZpY2UudHNgLicsXG4gICAgJycsXG4gICAgJzMuICoqYHNyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvYXBwLnRzYCoqIOKAlCBJbXBsZW1lbnQgeW91ciBiYWNrZW5kIExhbWJkYSBoYW5kbGVyIGxvZ2ljIGhlcmUuJyxcbiAgICAnJyxcbiAgICAnNC4gKipgLnByb2plbnJjLnRzYCoqIC0gTWFuYWdlcyBwcm9qZWN0IGRlcGVuZGVuY2llcyBhbmQgY29uZmlndXJhdGlvbi4gUnVuIGBucHggcHJvamVuYCBhZnRlciBtYWtpbmcgYW55IGNoYW5nZXMgdG8gdGhpcyBmaWxlLicsXG4gICAgJy0tLScsXG4gICAgJycsXG4gICAgJyMjIERldmVsb3BtZW50IFdvcmtmbG93JyxcbiAgICAnJyxcbiAgICAnYGBgYmFzaCcsXG4gICAgJyMgSW5zdGFsbCBkZXBlbmRlbmNpZXMnLFxuICAgICd5YXJuIGluc3RhbGwnLFxuICAgICcnLFxuICAgICcjIFN0YXJ0IGxvY2FsIGRldiBzZXJ2ZXIgKGJhY2tlbmQgTGFtYmRhICsgVml0ZSBmcm9udGVuZCBpbiBwYXJhbGxlbCknLFxuICAgICd5YXJuIGRldicsXG4gICAgJycsXG4gICAgJyMgRGVwbG95IGEgcGVyc29uYWwgZGV2IHN0YWNrIHRvIEFXUyBhcyBhbiBhbHRlcm5hdGl2ZSB0byBsb2NhbCBkZXZlbG9wbWVudCwgcHJvdmlkZXMgbW9yZSB0aG9yb3VnaCBlbmQtdG8tZW5kIHRlc3RpbmcnLFxuICAgICd5YXJuIGNkazpkZXYgLS1jb250ZXh0IGxvY2FsLWRldi1wcmVmaXg9eW91ci1oYW5kbGUgZGVwbG95JyxcbiAgICAnJyxcbiAgICAnIyBSZWRlcGxveSB5b3VyIHBlcnNvbmFsIGRldiBzdGFjayBmYXN0OiBhZnRlciB0aGUgZmlyc3QgZGVwbG95IGFib3ZlLCBrZWVwJyxcbiAgICBcIiMgcmV1c2luZyB0aGUgc2FtZSBzdGFjayAoZG9uJ3QgZGVsZXRlIGl0IGJldHdlZW4gYnJhbmNoZXMpIGFuZCBpdGVyYXRlIHdpdGhcIixcbiAgICAnIyBob3Rzd2FwLWZhbGxiYWNrIGluc3RlYWQgb2YgYSBmdWxsIENsb3VkRm9ybWF0aW9uIGRlcGxveW1lbnQnLFxuICAgICd5YXJuIGNkazpkZXY6aG90c3dhcCAtLWNvbnRleHQgbG9jYWwtZGV2LXByZWZpeD15b3VyLWhhbmRsZScsXG4gICAgJycsXG4gICAgJyMgUnVuIHRlc3RzJyxcbiAgICAneWFybiB0ZXN0JyxcbiAgICAnJyxcbiAgICAnIyBSZS1zeW50aGVzaXplIHByb2plY3QgZmlsZXMgYWZ0ZXIgZWRpdGluZyAucHJvamVucmMudHMnLFxuICAgICducHggcHJvamVuJyxcbiAgICAnYGBgJyxcbiAgICAnJyxcbiAgICAnPiBbIUlNUE9SVEFOVF0nLFxuICAgICc+IGAtLWhvdHN3YXAtZmFsbGJhY2tgICh1c2VkIGJ5IGBjZGs6ZGV2OmhvdHN3YXBgIGFuZCB0aGUgYHdhdGNoYCB0YXNrKSBpcyBmb3InLFxuICAgICc+IHBlcnNvbmFsIGRldiBzdGFja3Mgb25seSDigJQgbmV2ZXIgcnVuIGl0IGFnYWluc3Qgc3RhZ2luZyBvciBwcm9kLicsXG4gICAgJycsXG4gICAgJy0tLScsXG4gICAgJycsXG4gICAgJyMjIFVwZ3JhZGluZyBCYXRtYW4nLFxuICAgICcnLFxuICAgICdgYGBiYXNoJyxcbiAgICAneWFybiBhZGQgQG1hY2Vkb24tdGVjaG5vbG9naWVzL2JhdG1hbkBsYXRlc3QnLFxuICAgICducHggcHJvamVuJyxcbiAgICAnYGBgJyxcbiAgICAnJyxcbiAgICAnVGhpcyB1cGRhdGVzIGFsbCBtYW5hZ2VkIGZpbGVzIHRvIHRoZSBsYXRlc3QgQmF0bWFuIHN0YW5kYXJkcy4gWW91ciBlZGl0YWJsZSBzYW1wbGUgZmlsZXMgYXJlIG5ldmVyIHRvdWNoZWQuJyxcbiAgXS5qb2luKCdcXG4nKTtcbn1cbiJdfQ==
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.21.2",
52
+ "version": "1.21.4",
53
53
  "jest": {
54
54
  "coverageProvider": "v8",
55
55
  "testMatch": [