@aws-cdk/region-info 2.246.0 → 2.247.0

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/lib/default.js CHANGED
@@ -10,7 +10,7 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
10
10
  * @deprecated - Service principals are now globally `<SERVICE>.amazonaws.com`, use iam.ServicePrincipal instead.
11
11
  */
12
12
  class Default {
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.Default", version: "2.246.0" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.Default", version: "2.247.0" };
14
14
  /**
15
15
  * The default value for a VPC Endpoint Service name prefix, useful if you do
16
16
  * not have a synthesize-time region literal available (all you have is
package/lib/fact.js CHANGED
@@ -20,7 +20,7 @@ class RegionFactError extends Error {
20
20
  * A database of regional information.
21
21
  */
22
22
  class Fact {
23
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.Fact", version: "2.246.0" };
23
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.Fact", version: "2.247.0" };
24
24
  /**
25
25
  * @returns the list of names of AWS Regions for which there is at least one registered fact. This
26
26
  * includes Regions defined in AWS_REGIONS plus custom defined regions.
@@ -86,7 +86,7 @@ class Fact {
86
86
  }
87
87
  throw error;
88
88
  }
89
- const regionFacts = this.database[fact.region] || (this.database[fact.region] = {});
89
+ const regionFacts = this.database[fact.region] || (this.database[fact.region] = Object.create(null));
90
90
  if (fact.name in regionFacts && regionFacts[fact.name] !== fact.value && !allowReplacing) {
91
91
  throw new RegionFactError(`Region ${fact.region} already has a fact ${fact.name}, with value ${regionFacts[fact.name]}`);
92
92
  }
@@ -102,13 +102,13 @@ class Fact {
102
102
  * current stored value).
103
103
  */
104
104
  static unregister(region, name, value) {
105
- const regionFacts = this.database[region] || {};
105
+ const regionFacts = this.database[region] || Object.create(null);
106
106
  if (name in regionFacts && value && regionFacts[name] !== value) {
107
107
  throw new RegionFactError(`Attempted to remove ${name} from ${region} with value ${value}, but the fact's value is ${regionFacts[name]}`);
108
108
  }
109
109
  delete regionFacts[name];
110
110
  }
111
- static database = {};
111
+ static database = Object.create(null); // Prevent prototype pollution
112
112
  constructor() {
113
113
  // this should never happen, so throw a regular error here
114
114
  /* eslint-disable-next-line @cdklabs/no-throw-default-error */
@@ -120,7 +120,7 @@ exports.Fact = Fact;
120
120
  * All standardized fact names.
121
121
  */
122
122
  class FactName {
123
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.FactName", version: "2.246.0" };
123
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.FactName", version: "2.247.0" };
124
124
  /**
125
125
  * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
126
126
  */
@@ -245,4 +245,4 @@ class FactName {
245
245
  }
246
246
  }
247
247
  exports.FactName = FactName;
248
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpREFBNkM7QUFFN0MsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUM7QUFFMUU7O0dBRUc7QUFDSCxNQUFNLGVBQWdCLFNBQVEsS0FBSztJQUNqQyxZQUFZLEdBQVc7UUFDckIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1gsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztLQUMvQjtDQUNGO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLElBQUk7O0lBQ2Y7OztPQUdHO0lBQ0ksTUFBTSxLQUFLLE9BQU87UUFDdkIseUVBQXlFO1FBQ3pFLE9BQU8sQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRywwQkFBVyxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDdEU7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxLQUFLLEtBQUs7UUFDckIsT0FBTyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNwRztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxNQUFNLENBQUMsT0FB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QUMsT0FBZSxFQUFFLElBQWE7UUFDdEUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxJQUFJLElBQUksUUFBUSxFQUFFLENBQUM7UUFDckUsT0FBTywwQkFBMEIsTUFBTSxFQUFFLENBQUM7S0FDM0M7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFlOzs7Ozs7Ozs7O1FBQzVDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLDBCQUEwQixFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztLQUMzRTtJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBWSxFQUFFLE9BQWUsRUFBRSxZQUFvQjtRQUMvRSxNQUFNLE1BQU0sR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxZQUFZLENBQUM7UUFDOUUsT0FBTyxxQkFBcUIsTUFBTSxFQUFFLENBQUM7S0FDdEM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxPQUFlLEVBQUUsWUFBb0I7UUFDN0UsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqRSxPQUFPLDRCQUE0QixNQUFNLEVBQUUsQ0FBQztLQUM3Qzs7QUFuSUgsNEJBb0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVdTX1JFR0lPTlMgfSBmcm9tICcuL2F3cy1lbnRpdGllcyc7XG5cbmNvbnN0IENPTlNUUlVDVF9FUlJPUl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdAYXdzLWNkay9jb3JlLlN5bnRoZXNpc0Vycm9yJyk7XG5cbi8qKlxuICogQW4gZXJyb3IgdGhyb3duIHdoZW4gYSByZWdpb24gZmFjdCBvcGVyYXRpb24gZmFpbHMuXG4gKi9cbmNsYXNzIFJlZ2lvbkZhY3RFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobXNnOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtc2cpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBSZWdpb25GYWN0RXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgQ09OU1RSVUNUX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgICB0aGlzLm5hbWUgPSAnUmVnaW9uRmFjdEVycm9yJztcbiAgfVxufVxuXG4vKipcbiAqIEEgZGF0YWJhc2Ugb2YgcmVnaW9uYWwgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBGYWN0IHtcbiAgLyoqXG4gICAqIEByZXR1cm5zIHRoZSBsaXN0IG9mIG5hbWVzIG9mIEFXUyBSZWdpb25zIGZvciB3aGljaCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgcmVnaXN0ZXJlZCBmYWN0LiBUaGlzXG4gICAqICAgICAgICAgIGluY2x1ZGVzIFJlZ2lvbnMgZGVmaW5lZCBpbiBBV1NfUkVHSU9OUyBwbHVzIGN1c3RvbSBkZWZpbmVkIHJlZ2lvbnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldCByZWdpb25zKCk6IHN0cmluZ1tdIHtcbiAgICAvLyBSZXR1cm4gdGhlIHVuaW9uIG9mIHJlZ2lvbnMgaW4gQVdTX1JFR0lPTlMgYW5kIGN1c3RvbSBkZWZpbmVkIHJlZ2lvbnMuXG4gICAgcmV0dXJuIFsuLi5uZXcgU2V0KFsuLi5BV1NfUkVHSU9OUywgLi4uT2JqZWN0LmtleXModGhpcy5kYXRhYmFzZSldKV07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbGlzdCBvZiBuYW1lcyBvZiByZWdpc3RlcmVkIGZhY3RzLlxuICAgKlxuICAgKiBBbGwgZmFjdHMgd2lsbCBiZSBwcmVzZW50IGluIGF0IGxlYXN0IG9uZSByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldCBuYW1lcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi5uZXcgU2V0KE9iamVjdC52YWx1ZXModGhpcy5kYXRhYmFzZSkuZmxhdE1hcChyZWdpb25GYWN0cyA9PiBPYmplY3Qua2V5cyhyZWdpb25GYWN0cykpKV07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGFsbCBwYWlycyBvZiAocmVnaW9uLCBmYWN0TmFtZSkgdGhhdCBhcmUgZGVmaW5lZFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBkZWZpbmVkRmFjdHMoKTogQXJyYXk8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXModGhpcy5kYXRhYmFzZSlcbiAgICAgIC5mbGF0TWFwKChbcmVnaW9uTmFtZSwgcmVnaW9uRmFjdHNdKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyhyZWdpb25GYWN0cykubWFwKChmYWN0TmFtZSkgPT5cbiAgICAgICAgICBbcmVnaW9uTmFtZSwgZmFjdE5hbWVdIHNhdGlzZmllcyBbc3RyaW5nLCBzdHJpbmddKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgZmFjdCBmcm9tIHRoaXMgRmFjdCBkYXRhYmFzZS5cbiAgICpcbiAgICogQHBhcmFtIHJlZ2lvbiB0aGUgbmFtZSBvZiB0aGUgcmVnaW9uIChlLmc6IGB1cy1lYXN0LTFgKVxuICAgKiBAcGFyYW0gbmFtZSAgIHRoZSBuYW1lIG9mIHRoZSBmYWN0IGJlaW5nIGxvb2tlZCB1cCAoc2VlIHRoZSBgRmFjdE5hbWVgIGNsYXNzIGZvciBkZXRhaWxzKVxuICAgKlxuICAgKiBAcmV0dXJucyB0aGUgZmFjdCB2YWx1ZSBpZiBpdCBpcyBrbm93biwgYW5kIGB1bmRlZmluZWRgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZmluZChyZWdpb246IHN0cmluZywgbmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCByZWdpb25GYWN0cyA9IHRoaXMuZGF0YWJhc2VbcmVnaW9uXTtcbiAgICByZXR1cm4gcmVnaW9uRmFjdHMgJiYgcmVnaW9uRmFjdHNbbmFtZV07XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgYSBmYWN0IGZyb20gdGhlIEZhY3QgZGF0YWJhc2UuIChyZXRyaWV2YWwgd2lsbCBmYWlsIGlmIHRoZSBzcGVjaWZpZWQgcmVnaW9uIG9yXG4gICAqIGZhY3QgbmFtZSBkb2VzIG5vdCBleGlzdC4pXG4gICAqXG4gICAqIEBwYXJhbSByZWdpb24gdGhlIG5hbWUgb2YgdGhlIHJlZ2lvbiAoZS5nOiBgdXMtZWFzdC0xYClcbiAgICogQHBhcmFtIG5hbWUgdGhlIG5hbWUgb2YgdGhlIGZhY3QgYmVpbmcgbG9va2VkIHVwIChzZWUgdGhlIGBGYWN0TmFtZWAgY2xhc3MgZm9yIGRldGFpbHMpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlcXVpcmVGYWN0KHJlZ2lvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGZvdW5kRmFjdCA9IHRoaXMuZmluZChyZWdpb24sIG5hbWUpO1xuXG4gICAgaWYgKCFmb3VuZEZhY3QpIHtcbiAgICAgIHRocm93IG5ldyBSZWdpb25GYWN0RXJyb3IoYE5vIGZhY3QgJHtuYW1lfSBjb3VsZCBiZSBmb3VuZCBmb3IgcmVnaW9uOiAke3JlZ2lvbn0gYW5kIG5hbWU6ICR7bmFtZX0uYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdW5kRmFjdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBuZXcgZmFjdCBpbiB0aGlzIEZhY3QgZGF0YWJhc2UuXG4gICAqXG4gICAqIEBwYXJhbSBmYWN0ICAgICAgICAgICB0aGUgbmV3IGZhY3QgdG8gYmUgcmVnaXN0ZXJlZC5cbiAgICogQHBhcmFtIGFsbG93UmVwbGFjaW5nIHdoZXRoZXIgbmV3IGZhY3RzIGNhbiByZXBsYWNlIGV4aXN0aW5nIGZhY3RzIG9yIG5vdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXIoZmFjdDogSUZhY3QsIGFsbG93UmVwbGFjaW5nID0gZmFsc2UpOiB2b2lkIHtcbiAgICBjb25zdCByZWdpb25GYWN0cyA9IHRoaXMuZGF0YWJhc2VbZmFjdC5yZWdpb25dIHx8ICh0aGlzLmRhdGFiYXNlW2ZhY3QucmVnaW9uXSA9IHt9KTtcbiAgICBpZiAoZmFjdC5uYW1lIGluIHJlZ2lvbkZhY3RzICYmIHJlZ2lvbkZhY3RzW2ZhY3QubmFtZV0gIT09IGZhY3QudmFsdWUgJiYgIWFsbG93UmVwbGFjaW5nKSB7XG4gICAgICB0aHJvdyBuZXcgUmVnaW9uRmFjdEVycm9yKGBSZWdpb24gJHtmYWN0LnJlZ2lvbn0gYWxyZWFkeSBoYXMgYSBmYWN0ICR7ZmFjdC5uYW1lfSwgd2l0aCB2YWx1ZSAke3JlZ2lvbkZhY3RzW2ZhY3QubmFtZV19YCk7XG4gICAgfVxuICAgIGlmIChmYWN0LnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlZ2lvbkZhY3RzW2ZhY3QubmFtZV0gPSBmYWN0LnZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIGEgZmFjdCBmcm9tIHRoZSBkYXRhYmFzZS5cbiAgICogQHBhcmFtIHJlZ2lvbiB0aGUgcmVnaW9uIGZvciB3aGljaCB0aGUgZmFjdCBpcyB0byBiZSByZW1vdmVkLlxuICAgKiBAcGFyYW0gbmFtZSAgIHRoZSBuYW1lIG9mIHRoZSBmYWN0IHRvIHJlbW92ZS5cbiAgICogQHBhcmFtIHZhbHVlICB0aGUgdmFsdWUgdGhhdCBzaG91bGQgYmUgcmVtb3ZlZCAocmVtb3ZhbCB3aWxsIGZhaWwgaWYgdGhlIHZhbHVlIGlzIHNwZWNpZmllZCwgYnV0IGRvZXMgbm90IG1hdGNoIHRoZVxuICAgKiAgICAgICAgICAgICAgIGN1cnJlbnQgc3RvcmVkIHZhbHVlKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdW5yZWdpc3RlcihyZWdpb246IHN0cmluZywgbmFtZTogc3RyaW5nLCB2YWx1ZT86IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHJlZ2lvbkZhY3RzID0gdGhpcy5kYXRhYmFzZVtyZWdpb25dIHx8IHt9O1xuICAgIGlmIChuYW1lIGluIHJlZ2lvbkZhY3RzICYmIHZhbHVlICYmIHJlZ2lvbkZhY3RzW25hbWVdICE9PSB2YWx1ZSkge1xuICAgICAgdGhyb3cgbmV3IFJlZ2lvbkZhY3RFcnJvcihgQXR0ZW1wdGVkIHRvIHJlbW92ZSAke25hbWV9IGZyb20gJHtyZWdpb259IHdpdGggdmFsdWUgJHt2YWx1ZX0sIGJ1dCB0aGUgZmFjdCdzIHZhbHVlIGlzICR7cmVnaW9uRmFjdHNbbmFtZV19YCk7XG4gICAgfVxuICAgIGRlbGV0ZSByZWdpb25GYWN0c1tuYW1lXTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IGRhdGFiYXNlOiB7IFtyZWdpb246IHN0cmluZ106IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB9IH0gPSB7fTtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIHRoaXMgc2hvdWxkIG5ldmVyIGhhcHBlbiwgc28gdGhyb3cgYSByZWd1bGFyIGVycm9yIGhlcmVcbiAgICAvKiBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGNka2xhYnMvbm8tdGhyb3ctZGVmYXVsdC1lcnJvciAqL1xuICAgIHRocm93IG5ldyBFcnJvcignVXNlIHRoZSBzdGF0aWMgbWV0aG9kcyBvZiBGYWN0IGluc3RlYWQhJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBBIGZhY3QgdGhhdCBjYW4gYmUgcmVnaXN0ZXJlZCBhYm91dCBhIHBhcnRpY3VsYXIgcmVnaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElGYWN0IHtcbiAgLyoqXG4gICAqIFRoZSByZWdpb24gZm9yIHdoaWNoIHRoaXMgZmFjdCBhcHBsaWVzLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoaXMgZmFjdC4gU3RhbmRhcmRpemVkIHZhbHVlcyBhcmUgcHJvdmlkZWQgYnkgdGhlIGBGYWN0c2AgY2xhc3MuXG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGlzIGZhY3QuXG4gICAqL1xuICByZWFkb25seSB2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIEFsbCBzdGFuZGFyZGl6ZWQgZmFjdCBuYW1lcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEZhY3ROYW1lIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBwYXJ0aXRpb24gZm9yIGEgcmVnaW9uIChlLmc6ICdhd3MnLCAnYXdzLWNuJywgLi4uKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQQVJUSVRJT04gPSAncGFydGl0aW9uJztcblxuICAvKipcbiAgICogVGhlIGRvbWFpbiBzdWZmaXggZm9yIGEgcmVnaW9uIChlLmc6ICdhbWF6b25hd3MuY29tYClcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRE9NQUlOX1NVRkZJWCA9ICdkb21haW5TdWZmaXgnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBBV1M6OkNESzo6TWV0YWRhdGEgQ2xvdWRGb3JtYXRpb24gUmVzb3VyY2UgaXMgYXZhaWxhYmxlIGluLXJlZ2lvbiBvciBub3QuIFRoZSB2YWx1ZSBpcyBhIGJvb2xlYW5cbiAgICogbW9kZWxsZWQgYXMgYFlFU2Agb3IgYE5PYC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0RLX01FVEFEQVRBX1JFU09VUkNFX0FWQUlMQUJMRSA9ICdjZGs6bWV0YWRhdGEtcmVzb3VyY2U6YXZhaWxhYmxlJztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ2l2ZW4gcmVnaW9uIGlzIGFuIG9wdC1pbiByZWdpb24gb3Igbm90LiBUaGUgdmFsdWUgaXMgYSBib29sZWFuXG4gICAqIG1vZGVsbGVkIGFzIGBZRVNgIG9yIGBOT2AuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IElTX09QVF9JTl9SRUdJT04gPSAnYXdzOmlzLW9wdC1pbi1yZWdpb24nO1xuXG4gIC8qKlxuICAgKiBUaGUgZW5kcG9pbnQgdXNlZCBmb3IgaG9zdGluZyBTMyBzdGF0aWMgd2Vic2l0ZXNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUzNfU1RBVElDX1dFQlNJVEVfRU5EUE9JTlQgPSAnczMtc3RhdGljLXdlYnNpdGU6ZW5kcG9pbnQnO1xuXG4gIC8qKlxuICAgKiBUaGUgZW5kcG9pbnQgdXNlZCBmb3IgYWxpYXNpbmcgUzMgc3RhdGljIHdlYnNpdGVzIGluIFJvdXRlIDUzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFMzX1NUQVRJQ19XRUJTSVRFX1pPTkVfNTNfSE9TVEVEX1pPTkVfSUQgPSAnczMtc3RhdGljLXdlYnNpdGU6cm91dGUtNTMtaG9zdGVkLXpvbmUtaWQnO1xuXG4gIC8qKlxuICAgKiBUaGUgaG9zdGVkIHpvbmUgSUQgdXNlZCBieSBSb3V0ZSA1MyB0byBhbGlhcyBhIEVCUyBlbnZpcm9ubWVudCBlbmRwb2ludCBpbiB0aGlzIHJlZ2lvbiAoZS5nOiBaMk8xRU1STzlLNUdMWClcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRUJTX0VOVl9FTkRQT0lOVF9IT1NURURfWk9ORV9JRCA9ICdlYnMtZW52aXJvbm1lbnQ6cm91dGUtNTMtaG9zdGVkLXpvbmUtaWQnO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IGZvciBWUEMgRW5kcG9pbnQgU2VydmljZSBuYW1lcyxcbiAgICogY24uY29tLmFtYXpvbmF3cy52cGNlIGZvciBDaGluYSByZWdpb25zLFxuICAgKiBjb20uYW1hem9uYXdzLnZwY2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBWUENfRU5EUE9JTlRfU0VSVklDRV9OQU1FX1BSRUZJWCA9ICd2cGNFbmRwb2ludFNlcnZpY2VOYW1lUHJlZml4JztcblxuICAvKipcbiAgICogVGhlIGFjY291bnQgZm9yIEVMQnYyIGluIHRoaXMgcmVnaW9uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEVMQlYyX0FDQ09VTlQgPSAnZWxidjJBY2NvdW50JztcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBBV1MgYWNjb3VudCB0aGF0IG93bnMgdGhlIHB1YmxpYyBFQ1IgcmVwb3NpdG9yeSB0aGF0IGNvbnRhaW5zIHRoZVxuICAgKiBBV1MgRGVlcCBMZWFybmluZyBDb250YWluZXJzIGltYWdlcyBpbiBhIGdpdmVuIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRExDX1JFUE9TSVRPUllfQUNDT1VOVCA9ICdkbGNSZXBvc2l0b3J5QWNjb3VudCc7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgdGhhdCBjb250YWlucyB0aGVcbiAgICogQVdTIEFwcCBNZXNoIEVudm95IFByb3h5IGltYWdlcyBpbiBhIGdpdmVuIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQVBQTUVTSF9FQ1JfQUNDT1VOVCA9ICdhcHBNZXNoUmVwb3NpdG9yeUFjY291bnQnO1xuXG4gIC8qKlxuICAgKiBUaGUgQ0lEUiBibG9jayB1c2VkIGJ5IEFtYXpvbiBEYXRhIEZpcmVob3NlIHNlcnZlcnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEZJUkVIT1NFX0NJRFJfQkxPQ0sgPSAnZmlyZWhvc2VDaWRyQmxvY2snO1xuXG4gIC8qKlxuICAgKiBUaGUgU0FNTCBTaWduIE9uIFVSTCBmb3IgcGFydGl0aW9uIHVzZWQgYnkgSUFNIFNBTUwgUHJpbmNpcGFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNBTUxfU0lHTl9PTl9VUkwgPSAnc2FtbFNpZ25PblVybCc7XG5cbiAgLyoqXG4gICAqIFRoZSBsYXRlc3QgTGFtYmRhIE5vZGVKUyBydW50aW1lIGF2YWlsYWJsZSBpbiBhIGdpdmVuIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTEFURVNUX05PREVfUlVOVElNRSA9ICdsYXRlc3ROb2RlUnVudGltZSc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgQ2xvdWRXYXRjaCBMYW1iZGEgSW5zaWdodHMgZm9yIGEgdmVyc2lvbiAoZS5nLiAxLjAuOTguMClcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY2xvdWR3YXRjaExhbWJkYUluc2lnaHRzVmVyc2lvbih2ZXJzaW9uOiBzdHJpbmcsIGFyY2g/OiBzdHJpbmcpIHtcbiAgICAvLyBpZiB3ZSBhcmUgcHJvdmlkZWQgYW4gYXJjaGl0ZWN0dXJlIHVzZSB0aGF0LCBvdGhlcndpc2VcbiAgICAvLyBkZWZhdWx0IHRvIHg4Nl82NCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICBjb25zdCBzdWZmaXggPSB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgYF8ke2FyY2ggPz8gJ3g4Nl82NCd9YDtcbiAgICByZXR1cm4gYGNsb3Vkd2F0Y2gtbGFtYmRhLWluc2lnaHRzLXZlcnNpb246JHtzdWZmaXh9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIEFwcENvbmZpZyBMYW1iZGEgTGF5ZXIgZm9yIGEgZ2l2ZW4gdmVyc2lvbiAoZS5nLiAyLjAuMTgxKVxuICAgKiBAcGFyYW0gdmVyc2lvbiBUaGUgbGF5ZXIgdmVyc2lvbi5cbiAgICogQHBhcmFtIGFyY2ggVGhlIGFyY2hpdGVjdHVyZSAob3B0aW9uYWwpLCBkZWZhdWx0cyB0byB4ODZfNjQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFwcENvbmZpZ0xhbWJkYUxheWVyVmVyc2lvbih2ZXJzaW9uOiBzdHJpbmcsIGFyY2g/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBzdWZmaXggPSB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgYF8ke2FyY2ggPz8gJ3g4Nl82NCd9YDtcbiAgICByZXR1cm4gYGFwcGNvbmZpZy1sYW1iZGEtbGF5ZXI6JHtzdWZmaXh9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcmVnaW9uYWwgc2VydmljZSBwcmluY2lwYWwgZm9yIGEgZ2l2ZW4gc2VydmljZS5cbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2UgdGhlIHNlcnZpY2UgbmFtZSwgZWl0aGVyIHNpbXBsZSAoZS5nOiBgczNgLCBgY29kZWRlcGxveWApIG9yIHF1YWxpZmllZCAoZS5nOiBgczMuYW1hem9uYXdzLmNvbWApLlxuICAgKiAgICAgICAgICAgICAgICBUaGUgYC5hbWF6b25hd3MuY29tYCBhbmQgYC5hbWF6b25hd3MuY29tLmNuYCBkb21haW5zIGFyZSBzdHJpcHBlZCBmcm9tIHNlcnZpY2UgbmFtZXMsIHNvIHRoZXkgYXJlXG4gICAqICAgICAgICAgICAgICAgIGNhbm9uaWNhbGl6ZWQgaW4gdGhhdCByZXNwZWN0LlxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCAtIFVzZSBgaWFtLlNlcnZpY2VQcmluY2lwYWwuc2VydmljZVByaW5jaXBhbE5hbWUoKWAgaW5zdGVhZC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc2VydmljZVByaW5jaXBhbChzZXJ2aWNlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHtzZXJ2aWNlLnJlcGxhY2UoL1xcLmFtYXpvbmF3c1xcLmNvbShcXC5jbik/JC8sICcnKX0uYW1hem9uYXdzLmNvbWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiBvZiBBbWF6b24gRGlzdHJvIGZvciBPcGVuVGVsZW1ldHJ5IChBRE9UKSBMYW1iZGEgbGF5ZXIgZm9yIGEgZ2l2ZW4gbGFtYmRhIHR5cGUsIHZlcnNpb24gYW5kIGFyY2hpdGVjdHVyZS5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgdGhlIHR5cGUgb2YgdGhlIEFET1QgbGFtYmRhIGxheWVyXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFkb3RMYW1iZGFMYXllcih0eXBlOiBzdHJpbmcsIHZlcnNpb246IHN0cmluZywgYXJjaGl0ZWN0dXJlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHN1ZmZpeCA9IHR5cGUgKyAnXycgKyB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgJ18nICsgYXJjaGl0ZWN0dXJlO1xuICAgIHJldHVybiBgYWRvdC1sYW1iZGEtbGF5ZXI6JHtzdWZmaXh9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIFBhcmFtZXRlcnMgYW5kIFNlY3JldHMgTGFtYmRhIGxheWVyIGZvciBhIGdpdmVuIGxhbWJkYSBhcmNoaXRlY3R1cmUuXG4gICAqXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgdGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JylcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcGFyYW1zQW5kU2VjcmV0c0xhbWJkYUxheWVyKHZlcnNpb246IHN0cmluZywgYXJjaGl0ZWN0dXJlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHN1ZmZpeCA9IHZlcnNpb24uc3BsaXQoJy4nKS5qb2luKCdfJykgKyBgXyR7YXJjaGl0ZWN0dXJlfWA7XG4gICAgcmV0dXJuIGBwYXJhbXMtYW5kLXNlY3JldHMtbGF5ZXI6JHtzdWZmaXh9YDtcbiAgfVxufVxuIl19
248
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxpREFBNkM7QUFFN0MsTUFBTSxzQkFBc0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUM7QUFFMUU7O0dBRUc7QUFDSCxNQUFNLGVBQWdCLFNBQVEsS0FBSztJQUNqQyxZQUFZLEdBQVc7UUFDckIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ1gsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDckUsSUFBSSxDQUFDLElBQUksR0FBRyxpQkFBaUIsQ0FBQztLQUMvQjtDQUNGO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLElBQUk7O0lBQ2Y7OztPQUdHO0lBQ0ksTUFBTSxLQUFLLE9BQU87UUFDdkIseUVBQXlFO1FBQ3pFLE9BQU8sQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRywwQkFBVyxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDdEU7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxLQUFLLEtBQUs7UUFDckIsT0FBTyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNwRztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxNQUFNLENBQUMsT0FB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LEVBQUUsQ0FBQztRQUNyRSxPQUFPLHNDQUFzQyxNQUFNLEVBQUUsQ0FBQztLQUN2RDtJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsMkJBQTJCLENBQUMsT0FBZSxFQUFFLElBQWE7UUFDdEUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxJQUFJLElBQUksUUFBUSxFQUFFLENBQUM7UUFDckUsT0FBTywwQkFBMEIsTUFBTSxFQUFFLENBQUM7S0FDM0M7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFlOzs7Ozs7Ozs7O1FBQzVDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLDBCQUEwQixFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztLQUMzRTtJQUVEOzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBWSxFQUFFLE9BQWUsRUFBRSxZQUFvQjtRQUMvRSxNQUFNLE1BQU0sR0FBRyxJQUFJLEdBQUcsR0FBRyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxZQUFZLENBQUM7UUFDOUUsT0FBTyxxQkFBcUIsTUFBTSxFQUFFLENBQUM7S0FDdEM7SUFFRDs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxPQUFlLEVBQUUsWUFBb0I7UUFDN0UsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNqRSxPQUFPLDRCQUE0QixNQUFNLEVBQUUsQ0FBQztLQUM3Qzs7QUFuSUgsNEJBb0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVdTX1JFR0lPTlMgfSBmcm9tICcuL2F3cy1lbnRpdGllcyc7XG5cbmNvbnN0IENPTlNUUlVDVF9FUlJPUl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdAYXdzLWNkay9jb3JlLlN5bnRoZXNpc0Vycm9yJyk7XG5cbi8qKlxuICogQW4gZXJyb3IgdGhyb3duIHdoZW4gYSByZWdpb24gZmFjdCBvcGVyYXRpb24gZmFpbHMuXG4gKi9cbmNsYXNzIFJlZ2lvbkZhY3RFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobXNnOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtc2cpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBSZWdpb25GYWN0RXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgQ09OU1RSVUNUX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgICB0aGlzLm5hbWUgPSAnUmVnaW9uRmFjdEVycm9yJztcbiAgfVxufVxuXG4vKipcbiAqIEEgZGF0YWJhc2Ugb2YgcmVnaW9uYWwgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBGYWN0IHtcbiAgLyoqXG4gICAqIEByZXR1cm5zIHRoZSBsaXN0IG9mIG5hbWVzIG9mIEFXUyBSZWdpb25zIGZvciB3aGljaCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgcmVnaXN0ZXJlZCBmYWN0LiBUaGlzXG4gICAqICAgICAgICAgIGluY2x1ZGVzIFJlZ2lvbnMgZGVmaW5lZCBpbiBBV1NfUkVHSU9OUyBwbHVzIGN1c3RvbSBkZWZpbmVkIHJlZ2lvbnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldCByZWdpb25zKCk6IHN0cmluZ1tdIHtcbiAgICAvLyBSZXR1cm4gdGhlIHVuaW9uIG9mIHJlZ2lvbnMgaW4gQVdTX1JFR0lPTlMgYW5kIGN1c3RvbSBkZWZpbmVkIHJlZ2lvbnMuXG4gICAgcmV0dXJuIFsuLi5uZXcgU2V0KFsuLi5BV1NfUkVHSU9OUywgLi4uT2JqZWN0LmtleXModGhpcy5kYXRhYmFzZSldKV07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgbGlzdCBvZiBuYW1lcyBvZiByZWdpc3RlcmVkIGZhY3RzLlxuICAgKlxuICAgKiBBbGwgZmFjdHMgd2lsbCBiZSBwcmVzZW50IGluIGF0IGxlYXN0IG9uZSByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldCBuYW1lcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi5uZXcgU2V0KE9iamVjdC52YWx1ZXModGhpcy5kYXRhYmFzZSkuZmxhdE1hcChyZWdpb25GYWN0cyA9PiBPYmplY3Qua2V5cyhyZWdpb25GYWN0cykpKV07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIGFsbCBwYWlycyBvZiAocmVnaW9uLCBmYWN0TmFtZSkgdGhhdCBhcmUgZGVmaW5lZFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBkZWZpbmVkRmFjdHMoKTogQXJyYXk8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXModGhpcy5kYXRhYmFzZSlcbiAgICAgIC5mbGF0TWFwKChbcmVnaW9uTmFtZSwgcmVnaW9uRmFjdHNdKSA9PlxuICAgICAgICBPYmplY3Qua2V5cyhyZWdpb25GYWN0cykubWFwKChmYWN0TmFtZSkgPT5cbiAgICAgICAgICBbcmVnaW9uTmFtZSwgZmFjdE5hbWVdIHNhdGlzZmllcyBbc3RyaW5nLCBzdHJpbmddKSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgZmFjdCBmcm9tIHRoaXMgRmFjdCBkYXRhYmFzZS5cbiAgICpcbiAgICogQHBhcmFtIHJlZ2lvbiB0aGUgbmFtZSBvZiB0aGUgcmVnaW9uIChlLmc6IGB1cy1lYXN0LTFgKVxuICAgKiBAcGFyYW0gbmFtZSAgIHRoZSBuYW1lIG9mIHRoZSBmYWN0IGJlaW5nIGxvb2tlZCB1cCAoc2VlIHRoZSBgRmFjdE5hbWVgIGNsYXNzIGZvciBkZXRhaWxzKVxuICAgKlxuICAgKiBAcmV0dXJucyB0aGUgZmFjdCB2YWx1ZSBpZiBpdCBpcyBrbm93biwgYW5kIGB1bmRlZmluZWRgIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZmluZChyZWdpb246IHN0cmluZywgbmFtZTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCByZWdpb25GYWN0cyA9IHRoaXMuZGF0YWJhc2VbcmVnaW9uXTtcbiAgICByZXR1cm4gcmVnaW9uRmFjdHMgJiYgcmVnaW9uRmFjdHNbbmFtZV07XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmUgYSBmYWN0IGZyb20gdGhlIEZhY3QgZGF0YWJhc2UuIChyZXRyaWV2YWwgd2lsbCBmYWlsIGlmIHRoZSBzcGVjaWZpZWQgcmVnaW9uIG9yXG4gICAqIGZhY3QgbmFtZSBkb2VzIG5vdCBleGlzdC4pXG4gICAqXG4gICAqIEBwYXJhbSByZWdpb24gdGhlIG5hbWUgb2YgdGhlIHJlZ2lvbiAoZS5nOiBgdXMtZWFzdC0xYClcbiAgICogQHBhcmFtIG5hbWUgdGhlIG5hbWUgb2YgdGhlIGZhY3QgYmVpbmcgbG9va2VkIHVwIChzZWUgdGhlIGBGYWN0TmFtZWAgY2xhc3MgZm9yIGRldGFpbHMpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlcXVpcmVGYWN0KHJlZ2lvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGZvdW5kRmFjdCA9IHRoaXMuZmluZChyZWdpb24sIG5hbWUpO1xuXG4gICAgaWYgKCFmb3VuZEZhY3QpIHtcbiAgICAgIHRocm93IG5ldyBSZWdpb25GYWN0RXJyb3IoYE5vIGZhY3QgJHtuYW1lfSBjb3VsZCBiZSBmb3VuZCBmb3IgcmVnaW9uOiAke3JlZ2lvbn0gYW5kIG5hbWU6ICR7bmFtZX0uYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdW5kRmFjdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBuZXcgZmFjdCBpbiB0aGlzIEZhY3QgZGF0YWJhc2UuXG4gICAqXG4gICAqIEBwYXJhbSBmYWN0ICAgICAgICAgICB0aGUgbmV3IGZhY3QgdG8gYmUgcmVnaXN0ZXJlZC5cbiAgICogQHBhcmFtIGFsbG93UmVwbGFjaW5nIHdoZXRoZXIgbmV3IGZhY3RzIGNhbiByZXBsYWNlIGV4aXN0aW5nIGZhY3RzIG9yIG5vdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXIoZmFjdDogSUZhY3QsIGFsbG93UmVwbGFjaW5nID0gZmFsc2UpOiB2b2lkIHtcbiAgICBjb25zdCByZWdpb25GYWN0cyA9IHRoaXMuZGF0YWJhc2VbZmFjdC5yZWdpb25dIHx8ICh0aGlzLmRhdGFiYXNlW2ZhY3QucmVnaW9uXSA9IE9iamVjdC5jcmVhdGUobnVsbCkpO1xuICAgIGlmIChmYWN0Lm5hbWUgaW4gcmVnaW9uRmFjdHMgJiYgcmVnaW9uRmFjdHNbZmFjdC5uYW1lXSAhPT0gZmFjdC52YWx1ZSAmJiAhYWxsb3dSZXBsYWNpbmcpIHtcbiAgICAgIHRocm93IG5ldyBSZWdpb25GYWN0RXJyb3IoYFJlZ2lvbiAke2ZhY3QucmVnaW9ufSBhbHJlYWR5IGhhcyBhIGZhY3QgJHtmYWN0Lm5hbWV9LCB3aXRoIHZhbHVlICR7cmVnaW9uRmFjdHNbZmFjdC5uYW1lXX1gKTtcbiAgICB9XG4gICAgaWYgKGZhY3QudmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVnaW9uRmFjdHNbZmFjdC5uYW1lXSA9IGZhY3QudmFsdWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBmYWN0IGZyb20gdGhlIGRhdGFiYXNlLlxuICAgKiBAcGFyYW0gcmVnaW9uIHRoZSByZWdpb24gZm9yIHdoaWNoIHRoZSBmYWN0IGlzIHRvIGJlIHJlbW92ZWQuXG4gICAqIEBwYXJhbSBuYW1lICAgdGhlIG5hbWUgb2YgdGhlIGZhY3QgdG8gcmVtb3ZlLlxuICAgKiBAcGFyYW0gdmFsdWUgIHRoZSB2YWx1ZSB0aGF0IHNob3VsZCBiZSByZW1vdmVkIChyZW1vdmFsIHdpbGwgZmFpbCBpZiB0aGUgdmFsdWUgaXMgc3BlY2lmaWVkLCBidXQgZG9lcyBub3QgbWF0Y2ggdGhlXG4gICAqICAgICAgICAgICAgICAgY3VycmVudCBzdG9yZWQgdmFsdWUpLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB1bnJlZ2lzdGVyKHJlZ2lvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHZhbHVlPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcmVnaW9uRmFjdHMgPSB0aGlzLmRhdGFiYXNlW3JlZ2lvbl0gfHwgT2JqZWN0LmNyZWF0ZShudWxsKTtcbiAgICBpZiAobmFtZSBpbiByZWdpb25GYWN0cyAmJiB2YWx1ZSAmJiByZWdpb25GYWN0c1tuYW1lXSAhPT0gdmFsdWUpIHtcbiAgICAgIHRocm93IG5ldyBSZWdpb25GYWN0RXJyb3IoYEF0dGVtcHRlZCB0byByZW1vdmUgJHtuYW1lfSBmcm9tICR7cmVnaW9ufSB3aXRoIHZhbHVlICR7dmFsdWV9LCBidXQgdGhlIGZhY3QncyB2YWx1ZSBpcyAke3JlZ2lvbkZhY3RzW25hbWVdfWApO1xuICAgIH1cbiAgICBkZWxldGUgcmVnaW9uRmFjdHNbbmFtZV07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBkYXRhYmFzZTogeyBbcmVnaW9uOiBzdHJpbmddOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSB9ID0gT2JqZWN0LmNyZWF0ZShudWxsKTsgLy8gUHJldmVudCBwcm90b3R5cGUgcG9sbHV0aW9uXG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyB0aGlzIHNob3VsZCBuZXZlciBoYXBwZW4sIHNvIHRocm93IGEgcmVndWxhciBlcnJvciBoZXJlXG4gICAgLyogZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBjZGtsYWJzL25vLXRocm93LWRlZmF1bHQtZXJyb3IgKi9cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VzZSB0aGUgc3RhdGljIG1ldGhvZHMgb2YgRmFjdCBpbnN0ZWFkIScpO1xuICB9XG59XG5cbi8qKlxuICogQSBmYWN0IHRoYXQgY2FuIGJlIHJlZ2lzdGVyZWQgYWJvdXQgYSBwYXJ0aWN1bGFyIHJlZ2lvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRmFjdCB7XG4gIC8qKlxuICAgKiBUaGUgcmVnaW9uIGZvciB3aGljaCB0aGlzIGZhY3QgYXBwbGllcy5cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGlzIGZhY3QuIFN0YW5kYXJkaXplZCB2YWx1ZXMgYXJlIHByb3ZpZGVkIGJ5IHRoZSBgRmFjdHNgIGNsYXNzLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhpcyBmYWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBBbGwgc3RhbmRhcmRpemVkIGZhY3QgbmFtZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBGYWN0TmFtZSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcGFydGl0aW9uIGZvciBhIHJlZ2lvbiAoZS5nOiAnYXdzJywgJ2F3cy1jbicsIC4uLilcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEFSVElUSU9OID0gJ3BhcnRpdGlvbic7XG5cbiAgLyoqXG4gICAqIFRoZSBkb21haW4gc3VmZml4IGZvciBhIHJlZ2lvbiAoZS5nOiAnYW1hem9uYXdzLmNvbWApXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERPTUFJTl9TVUZGSVggPSAnZG9tYWluU3VmZml4JztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgQVdTOjpDREs6Ok1ldGFkYXRhIENsb3VkRm9ybWF0aW9uIFJlc291cmNlIGlzIGF2YWlsYWJsZSBpbi1yZWdpb24gb3Igbm90LiBUaGUgdmFsdWUgaXMgYSBib29sZWFuXG4gICAqIG1vZGVsbGVkIGFzIGBZRVNgIG9yIGBOT2AuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENES19NRVRBREFUQV9SRVNPVVJDRV9BVkFJTEFCTEUgPSAnY2RrOm1ldGFkYXRhLXJlc291cmNlOmF2YWlsYWJsZSc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGdpdmVuIHJlZ2lvbiBpcyBhbiBvcHQtaW4gcmVnaW9uIG9yIG5vdC4gVGhlIHZhbHVlIGlzIGEgYm9vbGVhblxuICAgKiBtb2RlbGxlZCBhcyBgWUVTYCBvciBgTk9gLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJU19PUFRfSU5fUkVHSU9OID0gJ2F3czppcy1vcHQtaW4tcmVnaW9uJztcblxuICAvKipcbiAgICogVGhlIGVuZHBvaW50IHVzZWQgZm9yIGhvc3RpbmcgUzMgc3RhdGljIHdlYnNpdGVzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFMzX1NUQVRJQ19XRUJTSVRFX0VORFBPSU5UID0gJ3MzLXN0YXRpYy13ZWJzaXRlOmVuZHBvaW50JztcblxuICAvKipcbiAgICogVGhlIGVuZHBvaW50IHVzZWQgZm9yIGFsaWFzaW5nIFMzIHN0YXRpYyB3ZWJzaXRlcyBpbiBSb3V0ZSA1M1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTM19TVEFUSUNfV0VCU0lURV9aT05FXzUzX0hPU1RFRF9aT05FX0lEID0gJ3MzLXN0YXRpYy13ZWJzaXRlOnJvdXRlLTUzLWhvc3RlZC16b25lLWlkJztcblxuICAvKipcbiAgICogVGhlIGhvc3RlZCB6b25lIElEIHVzZWQgYnkgUm91dGUgNTMgdG8gYWxpYXMgYSBFQlMgZW52aXJvbm1lbnQgZW5kcG9pbnQgaW4gdGhpcyByZWdpb24gKGUuZzogWjJPMUVNUk85SzVHTFgpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEVCU19FTlZfRU5EUE9JTlRfSE9TVEVEX1pPTkVfSUQgPSAnZWJzLWVudmlyb25tZW50OnJvdXRlLTUzLWhvc3RlZC16b25lLWlkJztcblxuICAvKipcbiAgICogVGhlIHByZWZpeCBmb3IgVlBDIEVuZHBvaW50IFNlcnZpY2UgbmFtZXMsXG4gICAqIGNuLmNvbS5hbWF6b25hd3MudnBjZSBmb3IgQ2hpbmEgcmVnaW9ucyxcbiAgICogY29tLmFtYXpvbmF3cy52cGNlIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVlBDX0VORFBPSU5UX1NFUlZJQ0VfTkFNRV9QUkVGSVggPSAndnBjRW5kcG9pbnRTZXJ2aWNlTmFtZVByZWZpeCc7XG5cbiAgLyoqXG4gICAqIFRoZSBhY2NvdW50IGZvciBFTEJ2MiBpbiB0aGlzIHJlZ2lvblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFTEJWMl9BQ0NPVU5UID0gJ2VsYnYyQWNjb3VudCc7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgdGhhdCBjb250YWlucyB0aGVcbiAgICogQVdTIERlZXAgTGVhcm5pbmcgQ29udGFpbmVycyBpbWFnZXMgaW4gYSBnaXZlbiByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERMQ19SRVBPU0lUT1JZX0FDQ09VTlQgPSAnZGxjUmVwb3NpdG9yeUFjY291bnQnO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIEFXUyBhY2NvdW50IHRoYXQgb3ducyB0aGUgcHVibGljIEVDUiByZXBvc2l0b3J5IHRoYXQgY29udGFpbnMgdGhlXG4gICAqIEFXUyBBcHAgTWVzaCBFbnZveSBQcm94eSBpbWFnZXMgaW4gYSBnaXZlbiByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEFQUE1FU0hfRUNSX0FDQ09VTlQgPSAnYXBwTWVzaFJlcG9zaXRvcnlBY2NvdW50JztcblxuICAvKipcbiAgICogVGhlIENJRFIgYmxvY2sgdXNlZCBieSBBbWF6b24gRGF0YSBGaXJlaG9zZSBzZXJ2ZXJzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBGSVJFSE9TRV9DSURSX0JMT0NLID0gJ2ZpcmVob3NlQ2lkckJsb2NrJztcblxuICAvKipcbiAgICogVGhlIFNBTUwgU2lnbiBPbiBVUkwgZm9yIHBhcnRpdGlvbiB1c2VkIGJ5IElBTSBTQU1MIFByaW5jaXBhbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTQU1MX1NJR05fT05fVVJMID0gJ3NhbWxTaWduT25VcmwnO1xuXG4gIC8qKlxuICAgKiBUaGUgbGF0ZXN0IExhbWJkYSBOb2RlSlMgcnVudGltZSBhdmFpbGFibGUgaW4gYSBnaXZlbiByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IExBVEVTVF9OT0RFX1JVTlRJTUUgPSAnbGF0ZXN0Tm9kZVJ1bnRpbWUnO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIENsb3VkV2F0Y2ggTGFtYmRhIEluc2lnaHRzIGZvciBhIHZlcnNpb24gKGUuZy4gMS4wLjk4LjApXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGNsb3Vkd2F0Y2hMYW1iZGFJbnNpZ2h0c1ZlcnNpb24odmVyc2lvbjogc3RyaW5nLCBhcmNoPzogc3RyaW5nKSB7XG4gICAgLy8gaWYgd2UgYXJlIHByb3ZpZGVkIGFuIGFyY2hpdGVjdHVyZSB1c2UgdGhhdCwgb3RoZXJ3aXNlXG4gICAgLy8gZGVmYXVsdCB0byB4ODZfNjQgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG4gICAgY29uc3Qgc3VmZml4ID0gdmVyc2lvbi5zcGxpdCgnLicpLmpvaW4oJ18nKSArIGBfJHthcmNoID8/ICd4ODZfNjQnfWA7XG4gICAgcmV0dXJuIGBjbG91ZHdhdGNoLWxhbWJkYS1pbnNpZ2h0cy12ZXJzaW9uOiR7c3VmZml4fWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiBvZiBBcHBDb25maWcgTGFtYmRhIExheWVyIGZvciBhIGdpdmVuIHZlcnNpb24gKGUuZy4gMi4wLjE4MSlcbiAgICogQHBhcmFtIHZlcnNpb24gVGhlIGxheWVyIHZlcnNpb24uXG4gICAqIEBwYXJhbSBhcmNoIFRoZSBhcmNoaXRlY3R1cmUgKG9wdGlvbmFsKSwgZGVmYXVsdHMgdG8geDg2XzY0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBhcHBDb25maWdMYW1iZGFMYXllclZlcnNpb24odmVyc2lvbjogc3RyaW5nLCBhcmNoPzogc3RyaW5nKSB7XG4gICAgY29uc3Qgc3VmZml4ID0gdmVyc2lvbi5zcGxpdCgnLicpLmpvaW4oJ18nKSArIGBfJHthcmNoID8/ICd4ODZfNjQnfWA7XG4gICAgcmV0dXJuIGBhcHBjb25maWctbGFtYmRhLWxheWVyOiR7c3VmZml4fWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJlZ2lvbmFsIHNlcnZpY2UgcHJpbmNpcGFsIGZvciBhIGdpdmVuIHNlcnZpY2UuXG4gICAqXG4gICAqIEBwYXJhbSBzZXJ2aWNlIHRoZSBzZXJ2aWNlIG5hbWUsIGVpdGhlciBzaW1wbGUgKGUuZzogYHMzYCwgYGNvZGVkZXBsb3lgKSBvciBxdWFsaWZpZWQgKGUuZzogYHMzLmFtYXpvbmF3cy5jb21gKS5cbiAgICogICAgICAgICAgICAgICAgVGhlIGAuYW1hem9uYXdzLmNvbWAgYW5kIGAuYW1hem9uYXdzLmNvbS5jbmAgZG9tYWlucyBhcmUgc3RyaXBwZWQgZnJvbSBzZXJ2aWNlIG5hbWVzLCBzbyB0aGV5IGFyZVxuICAgKiAgICAgICAgICAgICAgICBjYW5vbmljYWxpemVkIGluIHRoYXQgcmVzcGVjdC5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgLSBVc2UgYGlhbS5TZXJ2aWNlUHJpbmNpcGFsLnNlcnZpY2VQcmluY2lwYWxOYW1lKClgIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHNlcnZpY2VQcmluY2lwYWwoc2VydmljZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7c2VydmljZS5yZXBsYWNlKC9cXC5hbWF6b25hd3NcXC5jb20oXFwuY24pPyQvLCAnJyl9LmFtYXpvbmF3cy5jb21gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgQW1hem9uIERpc3RybyBmb3IgT3BlblRlbGVtZXRyeSAoQURPVCkgTGFtYmRhIGxheWVyIGZvciBhIGdpdmVuIGxhbWJkYSB0eXBlLCB2ZXJzaW9uIGFuZCBhcmNoaXRlY3R1cmUuXG4gICAqXG4gICAqIEBwYXJhbSB0eXBlIHRoZSB0eXBlIG9mIHRoZSBBRE9UIGxhbWJkYSBsYXllclxuICAgKiBAcGFyYW0gdmVyc2lvbiB0aGUgbGF5ZXIgdmVyc2lvbi5cbiAgICogQHBhcmFtIGFyY2hpdGVjdHVyZSB0aGUgTGFtYmRhIEZ1bmN0aW9uIGFyY2hpdGVjdHVyZSAoZS5nLiAneDg2XzY0JyBvciAnYXJtNjQnKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBhZG90TGFtYmRhTGF5ZXIodHlwZTogc3RyaW5nLCB2ZXJzaW9uOiBzdHJpbmcsIGFyY2hpdGVjdHVyZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdWZmaXggPSB0eXBlICsgJ18nICsgdmVyc2lvbi5zcGxpdCgnLicpLmpvaW4oJ18nKSArICdfJyArIGFyY2hpdGVjdHVyZTtcbiAgICByZXR1cm4gYGFkb3QtbGFtYmRhLWxheWVyOiR7c3VmZml4fWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiBvZiBQYXJhbWV0ZXJzIGFuZCBTZWNyZXRzIExhbWJkYSBsYXllciBmb3IgYSBnaXZlbiBsYW1iZGEgYXJjaGl0ZWN0dXJlLlxuICAgKlxuICAgKiBAcGFyYW0gdmVyc2lvbiB0aGUgbGF5ZXIgdmVyc2lvblxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHBhcmFtc0FuZFNlY3JldHNMYW1iZGFMYXllcih2ZXJzaW9uOiBzdHJpbmcsIGFyY2hpdGVjdHVyZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBzdWZmaXggPSB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgYF8ke2FyY2hpdGVjdHVyZX1gO1xuICAgIHJldHVybiBgcGFyYW1zLWFuZC1zZWNyZXRzLWxheWVyOiR7c3VmZml4fWA7XG4gIH1cbn1cbiJdfQ==
@@ -10,7 +10,7 @@ const fact_1 = require("./fact");
10
10
  */
11
11
  class RegionInfo {
12
12
  name;
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.RegionInfo", version: "2.246.0" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/region-info.RegionInfo", version: "2.247.0" };
14
14
  /**
15
15
  * @returns the list of names of AWS regions for which there is at least one registered fact. This
16
16
  * may not be an exaustive list of all available AWS regions.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-cdk/region-info",
3
- "version": "2.246.0",
3
+ "version": "2.247.0",
4
4
  "description": "AWS region information, such as service principal names",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -81,9 +81,9 @@
81
81
  },
82
82
  "license": "Apache-2.0",
83
83
  "devDependencies": {
84
- "@aws-cdk/cdk-build-tools": "2.246.0-alpha.0",
85
- "@aws-cdk/pkglint": "2.246.0-alpha.0",
86
- "aws-cdk-lib": "2.246.0",
84
+ "@aws-cdk/cdk-build-tools": "2.247.0-alpha.0",
85
+ "@aws-cdk/pkglint": "2.247.0-alpha.0",
86
+ "aws-cdk-lib": "2.247.0",
87
87
  "@types/fs-extra": "^9.0.13",
88
88
  "@types/jest": "^29.5.14",
89
89
  "fs-extra": "^9.1.0"