@aws-cdk/region-info 2.149.0 → 2.151.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.d.ts CHANGED
@@ -1,11 +1,16 @@
1
1
  /**
2
2
  * Provides default values for certain regional information points.
3
+ * This class is no longer needed because service principals are no longer needed except in very specific cases
4
+ * that are handled in the IAM ServicePrincipal class.
5
+ * @deprecated - Service principals are now globally `<SERVICE>.amazonaws.com`, use iam.ServicePrincipal instead.
3
6
  */
4
7
  export declare class Default {
5
8
  /**
6
9
  * The default value for a VPC Endpoint Service name prefix, useful if you do
7
10
  * not have a synthesize-time region literal available (all you have is
8
11
  * `{ "Ref": "AWS::Region" }`)
12
+ *
13
+ * @deprecated - Use VpceEndpointService.DEFAULT_PREFIX instead
9
14
  */
10
15
  static readonly VPC_ENDPOINT_SERVICE_NAME_PREFIX = "com.amazonaws.vpce";
11
16
  /**
@@ -17,6 +22,8 @@ export declare class Default {
17
22
  * @param serviceFqn the name of the service (s3, s3.amazonaws.com, ...)
18
23
  * @param region the region in which the service principal is needed.
19
24
  * @param urlSuffix deprecated and ignored.
25
+ *
26
+ * @deprecated - Service principals are now globally `<SERVICE>.amazonaws.com`, use iam.ServicePrincipal instead.
20
27
  */
21
28
  static servicePrincipal(serviceFqn: string, region: string, urlSuffix: string): string;
22
29
  private constructor();
package/lib/default.js CHANGED
@@ -2,9 +2,13 @@
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.Default = void 0;
5
+ const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
5
6
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
7
  /**
7
8
  * Provides default values for certain regional information points.
9
+ * This class is no longer needed because service principals are no longer needed except in very specific cases
10
+ * that are handled in the IAM ServicePrincipal class.
11
+ * @deprecated - Service principals are now globally `<SERVICE>.amazonaws.com`, use iam.ServicePrincipal instead.
8
12
  */
9
13
  class Default {
10
14
  /**
@@ -16,15 +20,24 @@ class Default {
16
20
  * @param serviceFqn the name of the service (s3, s3.amazonaws.com, ...)
17
21
  * @param region the region in which the service principal is needed.
18
22
  * @param urlSuffix deprecated and ignored.
23
+ *
24
+ * @deprecated - Service principals are now globally `<SERVICE>.amazonaws.com`, use iam.ServicePrincipal instead.
19
25
  */
20
26
  static servicePrincipal(serviceFqn, region, urlSuffix) {
27
+ try {
28
+ jsiiDeprecationWarnings.print("@aws-cdk/region-info.Default#servicePrincipal", "- Service principals are now globally `<SERVICE>.amazonaws.com`, use iam.ServicePrincipal instead.");
29
+ }
30
+ catch (error) {
31
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
32
+ Error.captureStackTrace(error, this.servicePrincipal);
33
+ }
34
+ throw error;
35
+ }
21
36
  // NOTE: this whole method is deprecated, and should not be used or updated anymore. The global service
22
37
  // principal is always correct, when referenced from within a region.
23
38
  // (As a note, regional principals (`<SERVICE>.<REGION>.amazonaws.com`) are required in
24
39
  // case of a cross-region reference to an opt-in region, but that's the only case, and that is not
25
40
  // controlled here).
26
- //
27
- // (It cannot be actually @deprecated since many of our tests use it :D)
28
41
  const serviceName = extractSimpleName(serviceFqn);
29
42
  if (!serviceName) {
30
43
  // Return "service" if it does not look like any of the following:
@@ -104,15 +117,17 @@ class Default {
104
117
  }
105
118
  exports.Default = Default;
106
119
  _a = JSII_RTTI_SYMBOL_1;
107
- Default[_a] = { fqn: "@aws-cdk/region-info.Default", version: "2.149.0" };
120
+ Default[_a] = { fqn: "@aws-cdk/region-info.Default", version: "2.151.0" };
108
121
  /**
109
122
  * The default value for a VPC Endpoint Service name prefix, useful if you do
110
123
  * not have a synthesize-time region literal available (all you have is
111
124
  * `{ "Ref": "AWS::Region" }`)
125
+ *
126
+ * @deprecated - Use VpceEndpointService.DEFAULT_PREFIX instead
112
127
  */
113
128
  Default.VPC_ENDPOINT_SERVICE_NAME_PREFIX = 'com.amazonaws.vpce';
114
129
  function extractSimpleName(serviceFqn) {
115
130
  const matches = serviceFqn.match(/^([^.]+)(?:(?:\.amazonaws\.com(?:\.cn)?)|(?:\.c2s\.ic\.gov)|(?:\.sc2s\.sgov\.gov))?$/);
116
131
  return matches ? matches[1] : undefined;
117
132
  }
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImRlZmF1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQTs7R0FFRztBQUNILE1BQWEsT0FBTztJQVNsQjs7Ozs7Ozs7O09BU0c7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsVUFBa0IsRUFBRSxNQUFjLEVBQUUsU0FBaUI7UUFDbEYsdUdBQXVHO1FBQ3ZHLHFFQUFxRTtRQUNyRSx1RkFBdUY7UUFDdkYsa0dBQWtHO1FBQ2xHLG9CQUFvQjtRQUNwQixFQUFFO1FBQ0Ysd0VBQXdFO1FBRXhFLE1BQU0sV0FBVyxHQUFHLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNqQixrRUFBa0U7WUFDbEUsT0FBTztZQUNQLHFCQUFxQjtZQUNyQix3QkFBd0I7WUFDeEIsa0JBQWtCO1lBQ2xCLHFCQUFxQjtZQUNyQixPQUFPLFVBQVUsQ0FBQztRQUNwQixDQUFDO1FBRUQsU0FBUyxzQkFBc0IsQ0FBQyxPQUFlO1lBQzdDLFNBQVMsU0FBUyxDQUFDLENBQVMsSUFBSSxPQUFPLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7WUFDOUQsU0FBUyxXQUFXLENBQUMsQ0FBUyxFQUFFLENBQVMsRUFBRSxDQUFTLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDN0UsU0FBUyxRQUFRLENBQUMsQ0FBUyxFQUFFLENBQVMsSUFBSSxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1lBQzdFLFNBQVMsbUJBQW1CLENBQUMsQ0FBUyxFQUFFLENBQVMsRUFBRSxDQUFTLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBRTFGLGdEQUFnRDtZQUNoRCxNQUFNLGlCQUFpQixHQUFHLElBQUksR0FBRyxDQUFDO2dCQUNoQyxVQUFVO2dCQUNWLFFBQVE7Z0JBQ1IsUUFBUTtnQkFDUixZQUFZO2FBQ2IsQ0FBQyxDQUFDO1lBRUgscUVBQXFFO1lBQ3JFLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDbkUsUUFBUSxPQUFPLEVBQUUsQ0FBQztvQkFDaEIsb0NBQW9DO29CQUNwQyxLQUFLLENBQUMsUUFBUSxDQUFDO3dCQUNiLE9BQU8sU0FBUyxDQUFDO29CQUVuQix3Q0FBd0M7b0JBQ3hDO3dCQUNFLE9BQU8sV0FBVyxDQUFDO2dCQUN2QixDQUFDO1lBQ0gsQ0FBQztZQUVELGlEQUFpRDtZQUNqRCxNQUFNLGtCQUFrQixHQUFHLElBQUksR0FBRyxDQUFDO2dCQUNqQyxLQUFLO2dCQUNMLFFBQVE7YUFDVCxDQUFDLENBQUM7WUFFSCxzRUFBc0U7WUFDdEUsSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxJQUFJLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO2dCQUNyRSxRQUFRLE9BQU8sRUFBRSxDQUFDO29CQUNoQixvQ0FBb0M7b0JBQ3BDLEtBQUssQ0FBQyxRQUFRLENBQUM7d0JBQ2IsT0FBTyxTQUFTLENBQUM7b0JBRW5CLHdDQUF3QztvQkFDeEM7d0JBQ0UsT0FBTyxXQUFXLENBQUM7Z0JBQ3ZCLENBQUM7WUFDSCxDQUFDO1lBRUQsUUFBUSxPQUFPLEVBQUUsQ0FBQztnQkFDaEIsMEVBQTBFO2dCQUMxRSxLQUFLLFlBQVk7b0JBQ2YsT0FBTyxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQzt3QkFDN0IsQ0FBQyxDQUFDLG1CQUFtQjt3QkFDckIsMERBQTBEO3dCQUMxRCxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUUzRCxxREFBcUQ7Z0JBQ3JELEtBQUssTUFBTTtvQkFDVCxPQUFPLG1CQUFtQixDQUFDO2dCQUU3QixxQ0FBcUM7Z0JBQ3JDLEtBQUssUUFBUTtvQkFDWCxPQUFPLFFBQVEsQ0FBQztnQkFFbEIsS0FBSyxrQkFBa0I7b0JBQ3JCLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7d0JBQzdCLENBQUMsQ0FBQyxXQUFXO3dCQUNiLENBQUMsQ0FBQyxTQUFTLENBQUM7Z0JBRWhCLHVGQUF1RjtnQkFDdkY7b0JBQ0UsT0FBTyxTQUFTLENBQUM7WUFFckIsQ0FBQztRQUNILENBQUM7UUFBQSxDQUFDO1FBRUYsTUFBTSxhQUFhLEdBQUcsc0JBQXNCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUQsT0FBTyxhQUFhLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztLQUN0RDtJQUVELGlCQUF5Qjs7QUFySDNCLDBCQXNIQzs7O0FBcEhDOzs7O0dBSUc7QUFDb0Isd0NBQWdDLEdBQUcsb0JBQW9CLENBQUM7QUFpSGpGLFNBQVMsaUJBQWlCLENBQUMsVUFBa0I7SUFDM0MsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxzRkFBc0YsQ0FBQyxDQUFDO0lBQ3pILE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUMxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBQcm92aWRlcyBkZWZhdWx0IHZhbHVlcyBmb3IgY2VydGFpbiByZWdpb25hbCBpbmZvcm1hdGlvbiBwb2ludHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEZWZhdWx0IHtcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgdmFsdWUgZm9yIGEgVlBDIEVuZHBvaW50IFNlcnZpY2UgbmFtZSBwcmVmaXgsIHVzZWZ1bCBpZiB5b3UgZG9cbiAgICogbm90IGhhdmUgYSBzeW50aGVzaXplLXRpbWUgcmVnaW9uIGxpdGVyYWwgYXZhaWxhYmxlIChhbGwgeW91IGhhdmUgaXNcbiAgICogYHsgXCJSZWZcIjogXCJBV1M6OlJlZ2lvblwiIH1gKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBWUENfRU5EUE9JTlRfU0VSVklDRV9OQU1FX1BSRUZJWCA9ICdjb20uYW1hem9uYXdzLnZwY2UnO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlcyBhIFwic3RhbmRhcmRcIiBBV1MgU2VydmljZSBwcmluY2lwYWwgZm9yIGEgZ2l2ZW4gc2VydmljZSwgcmVnaW9uIGFuZCBzdWZmaXguIFRoaXMgaXMgdXNlZnVsIGZvciBleGFtcGxlIHdoZW5cbiAgICogeW91IG5lZWQgdG8gY29tcHV0ZSBhIHNlcnZpY2UgcHJpbmNpcGFsIG5hbWUsIGJ1dCB5b3UgZG8gbm90IGhhdmUgYSBzeW50aGVzaXplLXRpbWUgcmVnaW9uIGxpdGVyYWwgYXZhaWxhYmxlIChzb1xuICAgKiBhbGwgeW91IGhhdmUgaXMgYHsgXCJSZWZcIjogXCJBV1M6OlJlZ2lvblwiIH1gKS4gVGhpcyB3YXkgeW91IGdldCB0aGUgc2FtZSBkZWZhdWx0aW5nIGJlaGF2aW9yIHRoYXQgaXMgbm9ybWFsbHkgdXNlZFxuICAgKiBmb3IgYnVpbHQtaW4gZGF0YS5cbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2VGcW4gdGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgKHMzLCBzMy5hbWF6b25hd3MuY29tLCAuLi4pXG4gICAqIEBwYXJhbSByZWdpb24gICAgdGhlIHJlZ2lvbiBpbiB3aGljaCB0aGUgc2VydmljZSBwcmluY2lwYWwgaXMgbmVlZGVkLlxuICAgKiBAcGFyYW0gdXJsU3VmZml4IGRlcHJlY2F0ZWQgYW5kIGlnbm9yZWQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHNlcnZpY2VQcmluY2lwYWwoc2VydmljZUZxbjogc3RyaW5nLCByZWdpb246IHN0cmluZywgdXJsU3VmZml4OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIC8vIE5PVEU6IHRoaXMgd2hvbGUgbWV0aG9kIGlzIGRlcHJlY2F0ZWQsIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgb3IgdXBkYXRlZCBhbnltb3JlLiBUaGUgZ2xvYmFsIHNlcnZpY2VcbiAgICAvLyBwcmluY2lwYWwgaXMgYWx3YXlzIGNvcnJlY3QsIHdoZW4gcmVmZXJlbmNlZCBmcm9tIHdpdGhpbiBhIHJlZ2lvbi5cbiAgICAvLyAoQXMgYSBub3RlLCByZWdpb25hbCBwcmluY2lwYWxzIChgPFNFUlZJQ0U+LjxSRUdJT04+LmFtYXpvbmF3cy5jb21gKSBhcmUgcmVxdWlyZWQgaW5cbiAgICAvLyBjYXNlIG9mIGEgY3Jvc3MtcmVnaW9uIHJlZmVyZW5jZSB0byBhbiBvcHQtaW4gcmVnaW9uLCBidXQgdGhhdCdzIHRoZSBvbmx5IGNhc2UsIGFuZCB0aGF0IGlzIG5vdFxuICAgIC8vIGNvbnRyb2xsZWQgaGVyZSkuXG4gICAgLy9cbiAgICAvLyAoSXQgY2Fubm90IGJlIGFjdHVhbGx5IEBkZXByZWNhdGVkIHNpbmNlIG1hbnkgb2Ygb3VyIHRlc3RzIHVzZSBpdCA6RClcblxuICAgIGNvbnN0IHNlcnZpY2VOYW1lID0gZXh0cmFjdFNpbXBsZU5hbWUoc2VydmljZUZxbik7XG4gICAgaWYgKCFzZXJ2aWNlTmFtZSkge1xuICAgICAgLy8gUmV0dXJuIFwic2VydmljZVwiIGlmIGl0IGRvZXMgbm90IGxvb2sgbGlrZSBhbnkgb2YgdGhlIGZvbGxvd2luZzpcbiAgICAgIC8vIC0gczNcbiAgICAgIC8vIC0gczMuYW1hem9uYXdzLmNvbVxuICAgICAgLy8gLSBzMy5hbWF6b25hd3MuY29tLmNuXG4gICAgICAvLyAtIHMzLmMycy5pYy5nb3ZcbiAgICAgIC8vIC0gczMuc2Mycy5zZ292LmdvdlxuICAgICAgcmV0dXJuIHNlcnZpY2VGcW47XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gZGV0ZXJtaW5lQ29uZmlndXJhdGlvbihzZXJ2aWNlOiBzdHJpbmcpOiAoc2VydmljZTogc3RyaW5nLCByZWdpb246IHN0cmluZywgdXJsU3VmZml4OiBzdHJpbmcpID0+IHN0cmluZyB7XG4gICAgICBmdW5jdGlvbiB1bml2ZXJzYWwoczogc3RyaW5nKSB7IHJldHVybiBgJHtzfS5hbWF6b25hd3MuY29tYDsgfVxuICAgICAgZnVuY3Rpb24gcGFydGl0aW9uYWwoczogc3RyaW5nLCBfOiBzdHJpbmcsIHU6IHN0cmluZykgeyByZXR1cm4gYCR7c30uJHt1fWA7IH1cbiAgICAgIGZ1bmN0aW9uIHJlZ2lvbmFsKHM6IHN0cmluZywgcjogc3RyaW5nKSB7IHJldHVybiBgJHtzfS4ke3J9LmFtYXpvbmF3cy5jb21gOyB9XG4gICAgICBmdW5jdGlvbiByZWdpb25hbFBhcnRpdGlvbmFsKHM6IHN0cmluZywgcjogc3RyaW5nLCB1OiBzdHJpbmcpIHsgcmV0dXJuIGAke3N9LiR7cn0uJHt1fWA7IH1cblxuICAgICAgLy8gRXhjZXB0aW9ucyBmb3IgU2VydmljZSBQcmluY2lwYWxzIGluIHVzLWlzby0qXG4gICAgICBjb25zdCBVU19JU09fRVhDRVBUSU9OUyA9IG5ldyBTZXQoW1xuICAgICAgICAnY2xvdWRoc20nLFxuICAgICAgICAnY29uZmlnJyxcbiAgICAgICAgJ3N0YXRlcycsXG4gICAgICAgICd3b3Jrc3BhY2VzJyxcbiAgICAgIF0pO1xuXG4gICAgICAvLyBBY2NvdW50IGZvciBpZGlvc3luY3JhdGljIFNlcnZpY2UgUHJpbmNpcGFscyBpbiBgdXMtaXNvLSpgIHJlZ2lvbnNcbiAgICAgIGlmIChyZWdpb24uc3RhcnRzV2l0aCgndXMtaXNvLScpICYmIFVTX0lTT19FWENFUFRJT05TLmhhcyhzZXJ2aWNlKSkge1xuICAgICAgICBzd2l0Y2ggKHNlcnZpY2UpIHtcbiAgICAgICAgICAvLyBTZXJ2aWNlcyB3aXRoIHVuaXZlcnNhbCBwcmluY2lwYWxcbiAgICAgICAgICBjYXNlICgnc3RhdGVzJyk6XG4gICAgICAgICAgICByZXR1cm4gdW5pdmVyc2FsO1xuXG4gICAgICAgICAgLy8gU2VydmljZXMgd2l0aCBhIHBhcnRpdGlvbmFsIHByaW5jaXBhbFxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gcGFydGl0aW9uYWw7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gRXhjZXB0aW9ucyBmb3IgU2VydmljZSBQcmluY2lwYWxzIGluIHVzLWlzb2ItKlxuICAgICAgY29uc3QgVVNfSVNPQl9FWENFUFRJT05TID0gbmV3IFNldChbXG4gICAgICAgICdkbXMnLFxuICAgICAgICAnc3RhdGVzJyxcbiAgICAgIF0pO1xuXG4gICAgICAvLyBBY2NvdW50IGZvciBpZGlvc3luY3JhdGljIFNlcnZpY2UgUHJpbmNpcGFscyBpbiBgdXMtaXNvYi0qYCByZWdpb25zXG4gICAgICBpZiAocmVnaW9uLnN0YXJ0c1dpdGgoJ3VzLWlzb2ItJykgJiYgVVNfSVNPQl9FWENFUFRJT05TLmhhcyhzZXJ2aWNlKSkge1xuICAgICAgICBzd2l0Y2ggKHNlcnZpY2UpIHtcbiAgICAgICAgICAvLyBTZXJ2aWNlcyB3aXRoIHVuaXZlcnNhbCBwcmluY2lwYWxcbiAgICAgICAgICBjYXNlICgnc3RhdGVzJyk6XG4gICAgICAgICAgICByZXR1cm4gdW5pdmVyc2FsO1xuXG4gICAgICAgICAgLy8gU2VydmljZXMgd2l0aCBhIHBhcnRpdGlvbmFsIHByaW5jaXBhbFxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gcGFydGl0aW9uYWw7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3dpdGNoIChzZXJ2aWNlKSB7XG4gICAgICAgIC8vIENvZGVEZXBsb3kgaXMgcmVnaW9uYWwrcGFydGl0aW9uYWwgaW4gQ04sIG9ubHkgcmVnaW9uYWwgZXZlcnl3aGVyZSBlbHNlXG4gICAgICAgIGNhc2UgJ2NvZGVkZXBsb3knOlxuICAgICAgICAgIHJldHVybiByZWdpb24uc3RhcnRzV2l0aCgnY24tJylcbiAgICAgICAgICAgID8gcmVnaW9uYWxQYXJ0aXRpb25hbFxuICAgICAgICAgICAgLy8gLi4uZXhjZXB0IGluIHRoZSBpc29sYXRlZCByZWdpb25zLCB3aGVyZSBpdCdzIHVuaXZlcnNhbFxuICAgICAgICAgICAgOiAocmVnaW9uLnN0YXJ0c1dpdGgoJ3VzLWlzbycpID8gdW5pdmVyc2FsIDogcmVnaW9uYWwpO1xuXG4gICAgICAgIC8vIFNlcnZpY2VzIHdpdGggYSByZWdpb25hbCBBTkQgcGFydGl0aW9uYWwgcHJpbmNpcGFsXG4gICAgICAgIGNhc2UgJ2xvZ3MnOlxuICAgICAgICAgIHJldHVybiByZWdpb25hbFBhcnRpdGlvbmFsO1xuXG4gICAgICAgIC8vIFNlcnZpY2VzIHdpdGggYSByZWdpb25hbCBwcmluY2lwYWxcbiAgICAgICAgY2FzZSAnc3RhdGVzJzpcbiAgICAgICAgICByZXR1cm4gcmVnaW9uYWw7XG5cbiAgICAgICAgY2FzZSAnZWxhc3RpY21hcHJlZHVjZSc6XG4gICAgICAgICAgcmV0dXJuIHJlZ2lvbi5zdGFydHNXaXRoKCdjbi0nKVxuICAgICAgICAgICAgPyBwYXJ0aXRpb25hbFxuICAgICAgICAgICAgOiB1bml2ZXJzYWw7XG5cbiAgICAgICAgLy8gU2VydmljZXMgd2l0aCBhIHVuaXZlcnNhbCBwcmluY2lwYWwgYWNyb3NzIGFsbCByZWdpb25zL3BhcnRpdGlvbnMgKHRoZSBkZWZhdWx0IGNhc2UpXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIHVuaXZlcnNhbDtcblxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCBjb25maWd1cmF0aW9uID0gZGV0ZXJtaW5lQ29uZmlndXJhdGlvbihzZXJ2aWNlTmFtZSk7XG4gICAgcmV0dXJuIGNvbmZpZ3VyYXRpb24oc2VydmljZU5hbWUsIHJlZ2lvbiwgdXJsU3VmZml4KTtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoKSB7IH1cbn1cblxuZnVuY3Rpb24gZXh0cmFjdFNpbXBsZU5hbWUoc2VydmljZUZxbjogc3RyaW5nKSB7XG4gIGNvbnN0IG1hdGNoZXMgPSBzZXJ2aWNlRnFuLm1hdGNoKC9eKFteLl0rKSg/Oig/OlxcLmFtYXpvbmF3c1xcLmNvbSg/OlxcLmNuKT8pfCg/OlxcLmMyc1xcLmljXFwuZ292KXwoPzpcXC5zYzJzXFwuc2dvdlxcLmdvdikpPyQvKTtcbiAgcmV0dXJuIG1hdGNoZXMgPyBtYXRjaGVzWzFdIDogdW5kZWZpbmVkO1xufVxuIl19
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImRlZmF1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7Ozs7O0dBS0c7QUFDSCxNQUFhLE9BQU87SUFXbEI7Ozs7Ozs7Ozs7O09BV0c7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsVUFBa0IsRUFBRSxNQUFjLEVBQUUsU0FBaUI7Ozs7Ozs7Ozs7UUFDbEYsdUdBQXVHO1FBQ3ZHLHFFQUFxRTtRQUNyRSx1RkFBdUY7UUFDdkYsa0dBQWtHO1FBQ2xHLG9CQUFvQjtRQUVwQixNQUFNLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsa0VBQWtFO1lBQ2xFLE9BQU87WUFDUCxxQkFBcUI7WUFDckIsd0JBQXdCO1lBQ3hCLGtCQUFrQjtZQUNsQixxQkFBcUI7WUFDckIsT0FBTyxVQUFVLENBQUM7UUFDcEIsQ0FBQztRQUVELFNBQVMsc0JBQXNCLENBQUMsT0FBZTtZQUM3QyxTQUFTLFNBQVMsQ0FBQyxDQUFTLElBQUksT0FBTyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDO1lBQzlELFNBQVMsV0FBVyxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsQ0FBUyxJQUFJLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdFLFNBQVMsUUFBUSxDQUFDLENBQVMsRUFBRSxDQUFTLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQztZQUM3RSxTQUFTLG1CQUFtQixDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsQ0FBUyxJQUFJLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUUxRixnREFBZ0Q7WUFDaEQsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsQ0FBQztnQkFDaEMsVUFBVTtnQkFDVixRQUFRO2dCQUNSLFFBQVE7Z0JBQ1IsWUFBWTthQUNiLENBQUMsQ0FBQztZQUVILHFFQUFxRTtZQUNyRSxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLElBQUksaUJBQWlCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ25FLFFBQVEsT0FBTyxFQUFFLENBQUM7b0JBQ2hCLG9DQUFvQztvQkFDcEMsS0FBSyxDQUFDLFFBQVEsQ0FBQzt3QkFDYixPQUFPLFNBQVMsQ0FBQztvQkFFbkIsd0NBQXdDO29CQUN4Qzt3QkFDRSxPQUFPLFdBQVcsQ0FBQztnQkFDdkIsQ0FBQztZQUNILENBQUM7WUFFRCxpREFBaUQ7WUFDakQsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsQ0FBQztnQkFDakMsS0FBSztnQkFDTCxRQUFRO2FBQ1QsQ0FBQyxDQUFDO1lBRUgsc0VBQXNFO1lBQ3RFLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDckUsUUFBUSxPQUFPLEVBQUUsQ0FBQztvQkFDaEIsb0NBQW9DO29CQUNwQyxLQUFLLENBQUMsUUFBUSxDQUFDO3dCQUNiLE9BQU8sU0FBUyxDQUFDO29CQUVuQix3Q0FBd0M7b0JBQ3hDO3dCQUNFLE9BQU8sV0FBVyxDQUFDO2dCQUN2QixDQUFDO1lBQ0gsQ0FBQztZQUVELFFBQVEsT0FBTyxFQUFFLENBQUM7Z0JBQ2hCLDBFQUEwRTtnQkFDMUUsS0FBSyxZQUFZO29CQUNmLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7d0JBQzdCLENBQUMsQ0FBQyxtQkFBbUI7d0JBQ3JCLDBEQUEwRDt3QkFDMUQsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFFM0QscURBQXFEO2dCQUNyRCxLQUFLLE1BQU07b0JBQ1QsT0FBTyxtQkFBbUIsQ0FBQztnQkFFN0IscUNBQXFDO2dCQUNyQyxLQUFLLFFBQVE7b0JBQ1gsT0FBTyxRQUFRLENBQUM7Z0JBRWxCLEtBQUssa0JBQWtCO29CQUNyQixPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDO3dCQUM3QixDQUFDLENBQUMsV0FBVzt3QkFDYixDQUFDLENBQUMsU0FBUyxDQUFDO2dCQUVoQix1RkFBdUY7Z0JBQ3ZGO29CQUNFLE9BQU8sU0FBUyxDQUFDO1lBRXJCLENBQUM7UUFDSCxDQUFDO1FBQUEsQ0FBQztRQUVGLE1BQU0sYUFBYSxHQUFHLHNCQUFzQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFELE9BQU8sYUFBYSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUM7S0FDdEQ7SUFFRCxpQkFBeUI7O0FBdkgzQiwwQkF3SEM7OztBQXRIQzs7Ozs7O0dBTUc7QUFDb0Isd0NBQWdDLEdBQUcsb0JBQW9CLENBQUM7QUFpSGpGLFNBQVMsaUJBQWlCLENBQUMsVUFBa0I7SUFDM0MsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxzRkFBc0YsQ0FBQyxDQUFDO0lBQ3pILE9BQU8sT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUMxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBQcm92aWRlcyBkZWZhdWx0IHZhbHVlcyBmb3IgY2VydGFpbiByZWdpb25hbCBpbmZvcm1hdGlvbiBwb2ludHMuXG4gKiBUaGlzIGNsYXNzIGlzIG5vIGxvbmdlciBuZWVkZWQgYmVjYXVzZSBzZXJ2aWNlIHByaW5jaXBhbHMgYXJlIG5vIGxvbmdlciBuZWVkZWQgZXhjZXB0IGluIHZlcnkgc3BlY2lmaWMgY2FzZXNcbiAqIHRoYXQgYXJlIGhhbmRsZWQgaW4gdGhlIElBTSBTZXJ2aWNlUHJpbmNpcGFsIGNsYXNzLlxuICogQGRlcHJlY2F0ZWQgLSBTZXJ2aWNlIHByaW5jaXBhbHMgYXJlIG5vdyBnbG9iYWxseSBgPFNFUlZJQ0U+LmFtYXpvbmF3cy5jb21gLCB1c2UgaWFtLlNlcnZpY2VQcmluY2lwYWwgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGNsYXNzIERlZmF1bHQge1xuXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgYSBWUEMgRW5kcG9pbnQgU2VydmljZSBuYW1lIHByZWZpeCwgdXNlZnVsIGlmIHlvdSBkb1xuICAgKiBub3QgaGF2ZSBhIHN5bnRoZXNpemUtdGltZSByZWdpb24gbGl0ZXJhbCBhdmFpbGFibGUgKGFsbCB5b3UgaGF2ZSBpc1xuICAgKiBgeyBcIlJlZlwiOiBcIkFXUzo6UmVnaW9uXCIgfWApXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIC0gVXNlIFZwY2VFbmRwb2ludFNlcnZpY2UuREVGQVVMVF9QUkVGSVggaW5zdGVhZFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBWUENfRU5EUE9JTlRfU0VSVklDRV9OQU1FX1BSRUZJWCA9ICdjb20uYW1hem9uYXdzLnZwY2UnO1xuXG4gIC8qKlxuICAgKiBDb21wdXRlcyBhIFwic3RhbmRhcmRcIiBBV1MgU2VydmljZSBwcmluY2lwYWwgZm9yIGEgZ2l2ZW4gc2VydmljZSwgcmVnaW9uIGFuZCBzdWZmaXguIFRoaXMgaXMgdXNlZnVsIGZvciBleGFtcGxlIHdoZW5cbiAgICogeW91IG5lZWQgdG8gY29tcHV0ZSBhIHNlcnZpY2UgcHJpbmNpcGFsIG5hbWUsIGJ1dCB5b3UgZG8gbm90IGhhdmUgYSBzeW50aGVzaXplLXRpbWUgcmVnaW9uIGxpdGVyYWwgYXZhaWxhYmxlIChzb1xuICAgKiBhbGwgeW91IGhhdmUgaXMgYHsgXCJSZWZcIjogXCJBV1M6OlJlZ2lvblwiIH1gKS4gVGhpcyB3YXkgeW91IGdldCB0aGUgc2FtZSBkZWZhdWx0aW5nIGJlaGF2aW9yIHRoYXQgaXMgbm9ybWFsbHkgdXNlZFxuICAgKiBmb3IgYnVpbHQtaW4gZGF0YS5cbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2VGcW4gdGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgKHMzLCBzMy5hbWF6b25hd3MuY29tLCAuLi4pXG4gICAqIEBwYXJhbSByZWdpb24gICAgdGhlIHJlZ2lvbiBpbiB3aGljaCB0aGUgc2VydmljZSBwcmluY2lwYWwgaXMgbmVlZGVkLlxuICAgKiBAcGFyYW0gdXJsU3VmZml4IGRlcHJlY2F0ZWQgYW5kIGlnbm9yZWQuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIC0gU2VydmljZSBwcmluY2lwYWxzIGFyZSBub3cgZ2xvYmFsbHkgYDxTRVJWSUNFPi5hbWF6b25hd3MuY29tYCwgdXNlIGlhbS5TZXJ2aWNlUHJpbmNpcGFsIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHNlcnZpY2VQcmluY2lwYWwoc2VydmljZUZxbjogc3RyaW5nLCByZWdpb246IHN0cmluZywgdXJsU3VmZml4OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIC8vIE5PVEU6IHRoaXMgd2hvbGUgbWV0aG9kIGlzIGRlcHJlY2F0ZWQsIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgb3IgdXBkYXRlZCBhbnltb3JlLiBUaGUgZ2xvYmFsIHNlcnZpY2VcbiAgICAvLyBwcmluY2lwYWwgaXMgYWx3YXlzIGNvcnJlY3QsIHdoZW4gcmVmZXJlbmNlZCBmcm9tIHdpdGhpbiBhIHJlZ2lvbi5cbiAgICAvLyAoQXMgYSBub3RlLCByZWdpb25hbCBwcmluY2lwYWxzIChgPFNFUlZJQ0U+LjxSRUdJT04+LmFtYXpvbmF3cy5jb21gKSBhcmUgcmVxdWlyZWQgaW5cbiAgICAvLyBjYXNlIG9mIGEgY3Jvc3MtcmVnaW9uIHJlZmVyZW5jZSB0byBhbiBvcHQtaW4gcmVnaW9uLCBidXQgdGhhdCdzIHRoZSBvbmx5IGNhc2UsIGFuZCB0aGF0IGlzIG5vdFxuICAgIC8vIGNvbnRyb2xsZWQgaGVyZSkuXG5cbiAgICBjb25zdCBzZXJ2aWNlTmFtZSA9IGV4dHJhY3RTaW1wbGVOYW1lKHNlcnZpY2VGcW4pO1xuICAgIGlmICghc2VydmljZU5hbWUpIHtcbiAgICAgIC8vIFJldHVybiBcInNlcnZpY2VcIiBpZiBpdCBkb2VzIG5vdCBsb29rIGxpa2UgYW55IG9mIHRoZSBmb2xsb3dpbmc6XG4gICAgICAvLyAtIHMzXG4gICAgICAvLyAtIHMzLmFtYXpvbmF3cy5jb21cbiAgICAgIC8vIC0gczMuYW1hem9uYXdzLmNvbS5jblxuICAgICAgLy8gLSBzMy5jMnMuaWMuZ292XG4gICAgICAvLyAtIHMzLnNjMnMuc2dvdi5nb3ZcbiAgICAgIHJldHVybiBzZXJ2aWNlRnFuO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGRldGVybWluZUNvbmZpZ3VyYXRpb24oc2VydmljZTogc3RyaW5nKTogKHNlcnZpY2U6IHN0cmluZywgcmVnaW9uOiBzdHJpbmcsIHVybFN1ZmZpeDogc3RyaW5nKSA9PiBzdHJpbmcge1xuICAgICAgZnVuY3Rpb24gdW5pdmVyc2FsKHM6IHN0cmluZykgeyByZXR1cm4gYCR7c30uYW1hem9uYXdzLmNvbWA7IH1cbiAgICAgIGZ1bmN0aW9uIHBhcnRpdGlvbmFsKHM6IHN0cmluZywgXzogc3RyaW5nLCB1OiBzdHJpbmcpIHsgcmV0dXJuIGAke3N9LiR7dX1gOyB9XG4gICAgICBmdW5jdGlvbiByZWdpb25hbChzOiBzdHJpbmcsIHI6IHN0cmluZykgeyByZXR1cm4gYCR7c30uJHtyfS5hbWF6b25hd3MuY29tYDsgfVxuICAgICAgZnVuY3Rpb24gcmVnaW9uYWxQYXJ0aXRpb25hbChzOiBzdHJpbmcsIHI6IHN0cmluZywgdTogc3RyaW5nKSB7IHJldHVybiBgJHtzfS4ke3J9LiR7dX1gOyB9XG5cbiAgICAgIC8vIEV4Y2VwdGlvbnMgZm9yIFNlcnZpY2UgUHJpbmNpcGFscyBpbiB1cy1pc28tKlxuICAgICAgY29uc3QgVVNfSVNPX0VYQ0VQVElPTlMgPSBuZXcgU2V0KFtcbiAgICAgICAgJ2Nsb3VkaHNtJyxcbiAgICAgICAgJ2NvbmZpZycsXG4gICAgICAgICdzdGF0ZXMnLFxuICAgICAgICAnd29ya3NwYWNlcycsXG4gICAgICBdKTtcblxuICAgICAgLy8gQWNjb3VudCBmb3IgaWRpb3N5bmNyYXRpYyBTZXJ2aWNlIFByaW5jaXBhbHMgaW4gYHVzLWlzby0qYCByZWdpb25zXG4gICAgICBpZiAocmVnaW9uLnN0YXJ0c1dpdGgoJ3VzLWlzby0nKSAmJiBVU19JU09fRVhDRVBUSU9OUy5oYXMoc2VydmljZSkpIHtcbiAgICAgICAgc3dpdGNoIChzZXJ2aWNlKSB7XG4gICAgICAgICAgLy8gU2VydmljZXMgd2l0aCB1bml2ZXJzYWwgcHJpbmNpcGFsXG4gICAgICAgICAgY2FzZSAoJ3N0YXRlcycpOlxuICAgICAgICAgICAgcmV0dXJuIHVuaXZlcnNhbDtcblxuICAgICAgICAgIC8vIFNlcnZpY2VzIHdpdGggYSBwYXJ0aXRpb25hbCBwcmluY2lwYWxcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHBhcnRpdGlvbmFsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEV4Y2VwdGlvbnMgZm9yIFNlcnZpY2UgUHJpbmNpcGFscyBpbiB1cy1pc29iLSpcbiAgICAgIGNvbnN0IFVTX0lTT0JfRVhDRVBUSU9OUyA9IG5ldyBTZXQoW1xuICAgICAgICAnZG1zJyxcbiAgICAgICAgJ3N0YXRlcycsXG4gICAgICBdKTtcblxuICAgICAgLy8gQWNjb3VudCBmb3IgaWRpb3N5bmNyYXRpYyBTZXJ2aWNlIFByaW5jaXBhbHMgaW4gYHVzLWlzb2ItKmAgcmVnaW9uc1xuICAgICAgaWYgKHJlZ2lvbi5zdGFydHNXaXRoKCd1cy1pc29iLScpICYmIFVTX0lTT0JfRVhDRVBUSU9OUy5oYXMoc2VydmljZSkpIHtcbiAgICAgICAgc3dpdGNoIChzZXJ2aWNlKSB7XG4gICAgICAgICAgLy8gU2VydmljZXMgd2l0aCB1bml2ZXJzYWwgcHJpbmNpcGFsXG4gICAgICAgICAgY2FzZSAoJ3N0YXRlcycpOlxuICAgICAgICAgICAgcmV0dXJuIHVuaXZlcnNhbDtcblxuICAgICAgICAgIC8vIFNlcnZpY2VzIHdpdGggYSBwYXJ0aXRpb25hbCBwcmluY2lwYWxcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIHBhcnRpdGlvbmFsO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHN3aXRjaCAoc2VydmljZSkge1xuICAgICAgICAvLyBDb2RlRGVwbG95IGlzIHJlZ2lvbmFsK3BhcnRpdGlvbmFsIGluIENOLCBvbmx5IHJlZ2lvbmFsIGV2ZXJ5d2hlcmUgZWxzZVxuICAgICAgICBjYXNlICdjb2RlZGVwbG95JzpcbiAgICAgICAgICByZXR1cm4gcmVnaW9uLnN0YXJ0c1dpdGgoJ2NuLScpXG4gICAgICAgICAgICA/IHJlZ2lvbmFsUGFydGl0aW9uYWxcbiAgICAgICAgICAgIC8vIC4uLmV4Y2VwdCBpbiB0aGUgaXNvbGF0ZWQgcmVnaW9ucywgd2hlcmUgaXQncyB1bml2ZXJzYWxcbiAgICAgICAgICAgIDogKHJlZ2lvbi5zdGFydHNXaXRoKCd1cy1pc28nKSA/IHVuaXZlcnNhbCA6IHJlZ2lvbmFsKTtcblxuICAgICAgICAvLyBTZXJ2aWNlcyB3aXRoIGEgcmVnaW9uYWwgQU5EIHBhcnRpdGlvbmFsIHByaW5jaXBhbFxuICAgICAgICBjYXNlICdsb2dzJzpcbiAgICAgICAgICByZXR1cm4gcmVnaW9uYWxQYXJ0aXRpb25hbDtcblxuICAgICAgICAvLyBTZXJ2aWNlcyB3aXRoIGEgcmVnaW9uYWwgcHJpbmNpcGFsXG4gICAgICAgIGNhc2UgJ3N0YXRlcyc6XG4gICAgICAgICAgcmV0dXJuIHJlZ2lvbmFsO1xuXG4gICAgICAgIGNhc2UgJ2VsYXN0aWNtYXByZWR1Y2UnOlxuICAgICAgICAgIHJldHVybiByZWdpb24uc3RhcnRzV2l0aCgnY24tJylcbiAgICAgICAgICAgID8gcGFydGl0aW9uYWxcbiAgICAgICAgICAgIDogdW5pdmVyc2FsO1xuXG4gICAgICAgIC8vIFNlcnZpY2VzIHdpdGggYSB1bml2ZXJzYWwgcHJpbmNpcGFsIGFjcm9zcyBhbGwgcmVnaW9ucy9wYXJ0aXRpb25zICh0aGUgZGVmYXVsdCBjYXNlKVxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHJldHVybiB1bml2ZXJzYWw7XG5cbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9IGRldGVybWluZUNvbmZpZ3VyYXRpb24oc2VydmljZU5hbWUpO1xuICAgIHJldHVybiBjb25maWd1cmF0aW9uKHNlcnZpY2VOYW1lLCByZWdpb24sIHVybFN1ZmZpeCk7XG4gIH1cblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKCkgeyB9XG59XG5cbmZ1bmN0aW9uIGV4dHJhY3RTaW1wbGVOYW1lKHNlcnZpY2VGcW46IHN0cmluZykge1xuICBjb25zdCBtYXRjaGVzID0gc2VydmljZUZxbi5tYXRjaCgvXihbXi5dKykoPzooPzpcXC5hbWF6b25hd3NcXC5jb20oPzpcXC5jbik/KXwoPzpcXC5jMnNcXC5pY1xcLmdvdil8KD86XFwuc2Myc1xcLnNnb3ZcXC5nb3YpKT8kLyk7XG4gIHJldHVybiBtYXRjaGVzID8gbWF0Y2hlc1sxXSA6IHVuZGVmaW5lZDtcbn1cbiJdfQ==
package/lib/fact.d.ts CHANGED
@@ -151,6 +151,8 @@ export declare class FactName {
151
151
  * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
152
152
  * The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
153
153
  * canonicalized in that respect.
154
+ *
155
+ * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
154
156
  */
155
157
  static servicePrincipal(service: string): string;
156
158
  /**
package/lib/fact.js CHANGED
@@ -102,7 +102,7 @@ class Fact {
102
102
  }
103
103
  exports.Fact = Fact;
104
104
  _a = JSII_RTTI_SYMBOL_1;
105
- Fact[_a] = { fqn: "@aws-cdk/region-info.Fact", version: "2.149.0" };
105
+ Fact[_a] = { fqn: "@aws-cdk/region-info.Fact", version: "2.151.0" };
106
106
  Fact.database = {};
107
107
  /**
108
108
  * All standardized fact names.
@@ -132,9 +132,20 @@ class FactName {
132
132
  * @param service the service name, either simple (e.g: `s3`, `codedeploy`) or qualified (e.g: `s3.amazonaws.com`).
133
133
  * The `.amazonaws.com` and `.amazonaws.com.cn` domains are stripped from service names, so they are
134
134
  * canonicalized in that respect.
135
+ *
136
+ * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
135
137
  */
136
138
  static servicePrincipal(service) {
137
- return `service-principal:${service.replace(/\.amazonaws\.com(\.cn)?$/, '')}`;
139
+ try {
140
+ jsiiDeprecationWarnings.print("@aws-cdk/region-info.FactName#servicePrincipal", "- Use `iam.ServicePrincipal.servicePrincipalName()` instead.");
141
+ }
142
+ catch (error) {
143
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
144
+ Error.captureStackTrace(error, this.servicePrincipal);
145
+ }
146
+ throw error;
147
+ }
148
+ return `${service.replace(/\.amazonaws\.com(\.cn)?$/, '')}.amazonaws.com`;
138
149
  }
139
150
  /**
140
151
  * The ARN of Amazon Distro for OpenTelemetry (ADOT) Lambda layer for a given lambda type, version and architecture.
@@ -160,7 +171,7 @@ class FactName {
160
171
  }
161
172
  exports.FactName = FactName;
162
173
  _b = JSII_RTTI_SYMBOL_1;
163
- FactName[_b] = { fqn: "@aws-cdk/region-info.FactName", version: "2.149.0" };
174
+ FactName[_b] = { fqn: "@aws-cdk/region-info.FactName", version: "2.151.0" };
164
175
  /**
165
176
  * The name of the partition for a region (e.g: 'aws', 'aws-cn', ...)
166
177
  */
@@ -223,4 +234,4 @@ FactName.SAML_SIGN_ON_URL = 'samlSignOnUrl';
223
234
  * The latest Lambda NodeJS runtime available in a given region.
224
235
  */
225
236
  FactName.LATEST_NODE_RUNTIME = 'latestNodeRuntime';
226
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaURBQTZDO0FBRTdDOztHQUVHO0FBQ0gsTUFBYSxJQUFJO0lBQ2Y7OztPQUdHO0lBQ0ksTUFBTSxLQUFLLE9BQU87UUFDdkIseUVBQXlFO1FBQ3pFLE9BQU8sQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRywwQkFBVyxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDdEU7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxLQUFLLEtBQUs7UUFDckIsT0FBTyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNwRztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDakMsT0FBTyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUNyQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3hDLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBNEIsQ0FBQyxDQUFDLENBQUM7S0FDM0Q7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFjLEVBQUUsSUFBWTtRQUM3QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLE9BQU8sV0FBVyxJ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O0FBQ29CLHNCQUFhLEdBQUcsY0FBYyxDQUFDO0FBRXREOzs7R0FHRztBQUNvQiwrQkFBc0IsR0FBRyxzQkFBc0IsQ0FBQztBQUV2RTs7O0dBR0c7QUFDb0IsNEJBQW1CLEdBQUcsMEJBQTBCLENBQUM7QUFFeEU7O0dBRUc7QUFDb0IsNEJBQW1CLEdBQUcsbUJBQW1CLENBQUM7QUFFakU7O0dBRUc7QUFDb0IseUJBQWdCLEdBQUcsZUFBZSxDQUFDO0FBRTFEOztHQUVHO0FBQ29CLDRCQUFtQixHQUFHLG1CQUFtQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVdTX1JFR0lPTlMgfSBmcm9tICcuL2F3cy1lbnRpdGllcyc7XG5cbi8qKlxuICogQSBkYXRhYmFzZSBvZiByZWdpb25hbCBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIEZhY3Qge1xuICAvKipcbiAgICogQHJldHVybnMgdGhlIGxpc3Qgb2YgbmFtZXMgb2YgQVdTIFJlZ2lvbnMgZm9yIHdoaWNoIHRoZXJlIGlzIGF0IGxlYXN0IG9uZSByZWdpc3RlcmVkIGZhY3QuIFRoaXNcbiAgICogICAgICAgICAgaW5jbHVkZXMgUmVnaW9ucyBkZWZpbmVkIGluIEFXU19SRUdJT05TIHBsdXMgY3VzdG9tIGRlZmluZWQgcmVnaW9ucy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0IHJlZ2lvbnMoKTogc3RyaW5nW10ge1xuICAgIC8vIFJldHVybiB0aGUgdW5pb24gb2YgcmVnaW9ucyBpbiBBV1NfUkVHSU9OUyBhbmQgY3VzdG9tIGRlZmluZWQgcmVnaW9ucy5cbiAgICByZXR1cm4gWy4uLm5ldyBTZXQoWy4uLkFXU19SRUdJT05TLCAuLi5PYmplY3Qua2V5cyh0aGlzLmRhdGFiYXNlKV0pXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBsaXN0IG9mIG5hbWVzIG9mIHJlZ2lzdGVyZWQgZmFjdHMuXG4gICAqXG4gICAqIEFsbCBmYWN0cyB3aWxsIGJlIHByZXNlbnQgaW4gYXQgbGVhc3Qgb25lIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0IG5hbWVzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gWy4uLm5ldyBTZXQoT2JqZWN0LnZhbHVlcyh0aGlzLmRhdGFiYXNlKS5mbGF0TWFwKHJlZ2lvbkZhY3RzID0+IE9iamVjdC5rZXlzKHJlZ2lvbkZhY3RzKSkpXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm4gYWxsIHBhaXJzIG9mIChyZWdpb24sIGZhY3ROYW1lKSB0aGF0IGFyZSBkZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGRlZmluZWRGYWN0cygpOiBBcnJheTxzdHJpbmdbXT4ge1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyh0aGlzLmRhdGFiYXNlKVxuICAgICAgLmZsYXRNYXAoKFtyZWdpb25OYW1lLCByZWdpb25GYWN0c10pID0+XG4gICAgICAgIE9iamVjdC5rZXlzKHJlZ2lvbkZhY3RzKS5tYXAoKGZhY3ROYW1lKSA9PlxuICAgICAgICAgIFtyZWdpb25OYW1lLCBmYWN0TmFtZV0gc2F0aXNmaWVzIFtzdHJpbmcsIHN0cmluZ10pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZXMgYSBmYWN0IGZyb20gdGhpcyBGYWN0IGRhdGFiYXNlLlxuICAgKlxuICAgKiBAcGFyYW0gcmVnaW9uIHRoZSBuYW1lIG9mIHRoZSByZWdpb24gKGUuZzogYHVzLWVhc3QtMWApXG4gICAqIEBwYXJhbSBuYW1lICAgdGhlIG5hbWUgb2YgdGhlIGZhY3QgYmVpbmcgbG9va2VkIHVwIChzZWUgdGhlIGBGYWN0TmFtZWAgY2xhc3MgZm9yIGRldGFpbHMpXG4gICAqXG4gICAqIEByZXR1cm5zIHRoZSBmYWN0IHZhbHVlIGlmIGl0IGlzIGtub3duLCBhbmQgYHVuZGVmaW5lZGAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmaW5kKHJlZ2lvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IHJlZ2lvbkZhY3RzID0gdGhpcy5kYXRhYmFzZVtyZWdpb25dO1xuICAgIHJldHVybiByZWdpb25GYWN0cyAmJiByZWdpb25GYWN0c1tuYW1lXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXRyaWV2ZSBhIGZhY3QgZnJvbSB0aGUgRmFjdCBkYXRhYmFzZS4gKHJldHJpZXZhbCB3aWxsIGZhaWwgaWYgdGhlIHNwZWNpZmllZCByZWdpb24gb3JcbiAgICogZmFjdCBuYW1lIGRvZXMgbm90IGV4aXN0LilcbiAgICpcbiAgICogQHBhcmFtIHJlZ2lvbiB0aGUgbmFtZSBvZiB0aGUgcmVnaW9uIChlLmc6IGB1cy1lYXN0LTFgKVxuICAgKiBAcGFyYW0gbmFtZSB0aGUgbmFtZSBvZiB0aGUgZmFjdCBiZWluZyBsb29rZWQgdXAgKHNlZSB0aGUgYEZhY3ROYW1lYCBjbGFzcyBmb3IgZGV0YWlscylcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVxdWlyZUZhY3QocmVnaW9uOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgZm91bmRGYWN0ID0gdGhpcy5maW5kKHJlZ2lvbiwgbmFtZSk7XG5cbiAgICBpZiAoIWZvdW5kRmFjdCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBmYWN0ICR7bmFtZX0gY291bGQgYmUgZm91bmQgZm9yIHJlZ2lvbjogJHtyZWdpb259IGFuZCBuYW1lOiAke25hbWV9LmApO1xuICAgIH1cblxuICAgIHJldHVybiBmb3VuZEZhY3Q7XG4gIH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgbmV3IGZhY3QgaW4gdGhpcyBGYWN0IGRhdGFiYXNlLlxuICAgKlxuICAgKiBAcGFyYW0gZmFjdCAgICAgICAgICAgdGhlIG5ldyBmYWN0IHRvIGJlIHJlZ2lzdGVyZWQuXG4gICAqIEBwYXJhbSBhbGxvd1JlcGxhY2luZyB3aGV0aGVyIG5ldyBmYWN0cyBjYW4gcmVwbGFjZSBleGlzdGluZyBmYWN0cyBvciBub3QuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlZ2lzdGVyKGZhY3Q6IElGYWN0LCBhbGxvd1JlcGxhY2luZyA9IGZhbHNlKTogdm9pZCB7XG4gICAgY29uc3QgcmVnaW9uRmFjdHMgPSB0aGlzLmRhdGFiYXNlW2ZhY3QucmVnaW9uXSB8fCAodGhpcy5kYXRhYmFzZVtmYWN0LnJlZ2lvbl0gPSB7fSk7XG4gICAgaWYgKGZhY3QubmFtZSBpbiByZWdpb25GYWN0cyAmJiByZWdpb25GYWN0c1tmYWN0Lm5hbWVdICE9PSBmYWN0LnZhbHVlICYmICFhbGxvd1JlcGxhY2luZykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBSZWdpb24gJHtmYWN0LnJlZ2lvbn0gYWxyZWFkeSBoYXMgYSBmYWN0ICR7ZmFjdC5uYW1lfSwgd2l0aCB2YWx1ZSAke3JlZ2lvbkZhY3RzW2ZhY3QubmFtZV19YCk7XG4gICAgfVxuICAgIGlmIChmYWN0LnZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJlZ2lvbkZhY3RzW2ZhY3QubmFtZV0gPSBmYWN0LnZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmVzIGEgZmFjdCBmcm9tIHRoZSBkYXRhYmFzZS5cbiAgICogQHBhcmFtIHJlZ2lvbiB0aGUgcmVnaW9uIGZvciB3aGljaCB0aGUgZmFjdCBpcyB0byBiZSByZW1vdmVkLlxuICAgKiBAcGFyYW0gbmFtZSAgIHRoZSBuYW1lIG9mIHRoZSBmYWN0IHRvIHJlbW92ZS5cbiAgICogQHBhcmFtIHZhbHVlICB0aGUgdmFsdWUgdGhhdCBzaG91bGQgYmUgcmVtb3ZlZCAocmVtb3ZhbCB3aWxsIGZhaWwgaWYgdGhlIHZhbHVlIGlzIHNwZWNpZmllZCwgYnV0IGRvZXMgbm90IG1hdGNoIHRoZVxuICAgKiAgICAgICAgICAgICAgIGN1cnJlbnQgc3RvcmVkIHZhbHVlKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgdW5yZWdpc3RlcihyZWdpb246IHN0cmluZywgbmFtZTogc3RyaW5nLCB2YWx1ZT86IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHJlZ2lvbkZhY3RzID0gdGhpcy5kYXRhYmFzZVtyZWdpb25dIHx8IHt9O1xuICAgIGlmIChuYW1lIGluIHJlZ2lvbkZhY3RzICYmIHZhbHVlICYmIHJlZ2lvbkZhY3RzW25hbWVdICE9PSB2YWx1ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBBdHRlbXB0ZWQgdG8gcmVtb3ZlICR7bmFtZX0gZnJvbSAke3JlZ2lvbn0gd2l0aCB2YWx1ZSAke3ZhbHVlfSwgYnV0IHRoZSBmYWN0J3MgdmFsdWUgaXMgJHtyZWdpb25GYWN0c1tuYW1lXX1gKTtcbiAgICB9XG4gICAgZGVsZXRlIHJlZ2lvbkZhY3RzW25hbWVdO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgZGF0YWJhc2U6IHsgW3JlZ2lvbjogc3RyaW5nXTogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIH0gfSA9IHt9O1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdVc2UgdGhlIHN0YXRpYyBtZXRob2RzIG9mIEZhY3QgaW5zdGVhZCEnKTtcbiAgfVxufVxuXG4vKipcbiAqIEEgZmFjdCB0aGF0IGNhbiBiZSByZWdpc3RlcmVkIGFib3V0IGEgcGFydGljdWxhciByZWdpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUZhY3Qge1xuICAvKipcbiAgICogVGhlIHJlZ2lvbiBmb3Igd2hpY2ggdGhpcyBmYWN0IGFwcGxpZXMuXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhpcyBmYWN0LiBTdGFuZGFyZGl6ZWQgdmFsdWVzIGFyZSBwcm92aWRlZCBieSB0aGUgYEZhY3RzYCBjbGFzcy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoaXMgZmFjdC5cbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQWxsIHN0YW5kYXJkaXplZCBmYWN0IG5hbWVzLlxuICovXG5leHBvcnQgY2xhc3MgRmFjdE5hbWUge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHBhcnRpdGlvbiBmb3IgYSByZWdpb24gKGUuZzogJ2F3cycsICdhd3MtY24nLCAuLi4pXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBBUlRJVElPTiA9ICdwYXJ0aXRpb24nO1xuXG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIHN1ZmZpeCBmb3IgYSByZWdpb24gKGUuZzogJ2FtYXpvbmF3cy5jb21gKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBET01BSU5fU1VGRklYID0gJ2RvbWFpblN1ZmZpeCc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIEFXUzo6Q0RLOjpNZXRhZGF0YSBDbG91ZEZvcm1hdGlvbiBSZXNvdXJjZSBpcyBhdmFpbGFibGUgaW4tcmVnaW9uIG9yIG5vdC4gVGhlIHZhbHVlIGlzIGEgYm9vbGVhblxuICAgKiBtb2RlbGxlZCBhcyBgWUVTYCBvciBgTk9gLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDREtfTUVUQURBVEFfUkVTT1VSQ0VfQVZBSUxBQkxFID0gJ2NkazptZXRhZGF0YS1yZXNvdXJjZTphdmFpbGFibGUnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBnaXZlbiByZWdpb24gaXMgYW4gb3B0LWluIHJlZ2lvbiBvciBub3QuIFRoZSB2YWx1ZSBpcyBhIGJvb2xlYW5cbiAgICogbW9kZWxsZWQgYXMgYFlFU2Agb3IgYE5PYC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgSVNfT1BUX0lOX1JFR0lPTiA9ICdhd3M6aXMtb3B0LWluLXJlZ2lvbic7XG5cbiAgLyoqXG4gICAqIFRoZSBlbmRwb2ludCB1c2VkIGZvciBob3N0aW5nIFMzIHN0YXRpYyB3ZWJzaXRlc1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTM19TVEFUSUNfV0VCU0lURV9FTkRQT0lOVCA9ICdzMy1zdGF0aWMtd2Vic2l0ZTplbmRwb2ludCc7XG5cbiAgLyoqXG4gICAqIFRoZSBlbmRwb2ludCB1c2VkIGZvciBhbGlhc2luZyBTMyBzdGF0aWMgd2Vic2l0ZXMgaW4gUm91dGUgNTNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUzNfU1RBVElDX1dFQlNJVEVfWk9ORV81M19IT1NURURfWk9ORV9JRCA9ICdzMy1zdGF0aWMtd2Vic2l0ZTpyb3V0ZS01My1ob3N0ZWQtem9uZS1pZCc7XG5cbiAgLyoqXG4gICAqIFRoZSBob3N0ZWQgem9uZSBJRCB1c2VkIGJ5IFJvdXRlIDUzIHRvIGFsaWFzIGEgRUJTIGVudmlyb25tZW50IGVuZHBvaW50IGluIHRoaXMgcmVnaW9uIChlLmc6IFoyTzFFTVJPOUs1R0xYKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFQlNfRU5WX0VORFBPSU5UX0hPU1RFRF9aT05FX0lEID0gJ2Vicy1lbnZpcm9ubWVudDpyb3V0ZS01My1ob3N0ZWQtem9uZS1pZCc7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggZm9yIFZQQyBFbmRwb2ludCBTZXJ2aWNlIG5hbWVzLFxuICAgKiBjbi5jb20uYW1hem9uYXdzLnZwY2UgZm9yIENoaW5hIHJlZ2lvbnMsXG4gICAqIGNvbS5hbWF6b25hd3MudnBjZSBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFZQQ19FTkRQT0lOVF9TRVJWSUNFX05BTUVfUFJFRklYID0gJ3ZwY0VuZHBvaW50U2VydmljZU5hbWVQcmVmaXgnO1xuXG4gIC8qKlxuICAgKiBUaGUgYWNjb3VudCBmb3IgRUxCdjIgaW4gdGhpcyByZWdpb25cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRUxCVjJfQUNDT1VOVCA9ICdlbGJ2MkFjY291bnQnO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIEFXUyBhY2NvdW50IHRoYXQgb3ducyB0aGUgcHVibGljIEVDUiByZXBvc2l0b3J5IHRoYXQgY29udGFpbnMgdGhlXG4gICAqIEFXUyBEZWVwIExlYXJuaW5nIENvbnRhaW5lcnMgaW1hZ2VzIGluIGEgZ2l2ZW4gcmVnaW9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBETENfUkVQT1NJVE9SWV9BQ0NPVU5UID0gJ2RsY1JlcG9zaXRvcnlBY2NvdW50JztcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBBV1MgYWNjb3VudCB0aGF0IG93bnMgdGhlIHB1YmxpYyBFQ1IgcmVwb3NpdG9yeSB0aGF0IGNvbnRhaW5zIHRoZVxuICAgKiBBV1MgQXBwIE1lc2ggRW52b3kgUHJveHkgaW1hZ2VzIGluIGEgZ2l2ZW4gcmVnaW9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBBUFBNRVNIX0VDUl9BQ0NPVU5UID0gJ2FwcE1lc2hSZXBvc2l0b3J5QWNjb3VudCc7XG5cbiAgLyoqXG4gICAqIFRoZSBDSURSIGJsb2NrIHVzZWQgYnkgS2luZXNpcyBEYXRhIEZpcmVob3NlIHNlcnZlcnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEZJUkVIT1NFX0NJRFJfQkxPQ0sgPSAnZmlyZWhvc2VDaWRyQmxvY2snO1xuXG4gIC8qKlxuICAgKiBUaGUgU0FNTCBTaWduIE9uIFVSTCBmb3IgcGFydGl0aW9uIHVzZWQgYnkgSUFNIFNBTUwgUHJpbmNpcGFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFNBTUxfU0lHTl9PTl9VUkwgPSAnc2FtbFNpZ25PblVybCc7XG5cbiAgLyoqXG4gICAqIFRoZSBsYXRlc3QgTGFtYmRhIE5vZGVKUyBydW50aW1lIGF2YWlsYWJsZSBpbiBhIGdpdmVuIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTEFURVNUX05PREVfUlVOVElNRSA9ICdsYXRlc3ROb2RlUnVudGltZSc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgQ2xvdWRXYXRjaCBMYW1iZGEgSW5zaWdodHMgZm9yIGEgdmVyc2lvbiAoZS5nLiAxLjAuOTguMClcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY2xvdWR3YXRjaExhbWJkYUluc2lnaHRzVmVyc2lvbih2ZXJzaW9uOiBzdHJpbmcsIGFyY2g/OiBzdHJpbmcpIHtcbiAgICAvLyBpZiB3ZSBhcmUgcHJvdmlkZWQgYW4gYXJjaGl0ZWN0dXJlIHVzZSB0aGF0LCBvdGhlcndpc2VcbiAgICAvLyBkZWZhdWx0IHRvIHg4Nl82NCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICBjb25zdCBzdWZmaXggPSB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgYF8ke2FyY2ggPz8gJ3g4Nl82NCd9YDtcbiAgICByZXR1cm4gYGNsb3Vkd2F0Y2gtbGFtYmRhLWluc2lnaHRzLXZlcnNpb246JHtzdWZmaXh9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIEFwcENvbmZpZyBMYW1iZGEgTGF5ZXIgZm9yIGEgZ2l2ZW4gdmVyc2lvbiAoZS5nLiAyLjAuMTgxKVxuICAgKiBAcGFyYW0gdmVyc2lvbiBUaGUgbGF5ZXIgdmVyc2lvbi5cbiAgICogQHBhcmFtIGFyY2ggVGhlIGFyY2hpdGVjdHVyZSAob3B0aW9uYWwpLCBkZWZhdWx0cyB0byB4ODZfNjQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFwcENvbmZpZ0xhbWJkYUxheWVyVmVyc2lvbih2ZXJzaW9uOiBzdHJpbmcsIGFyY2g/OiBzdHJpbmcpIHtcbiAgICBjb25zdCBzdWZmaXggPSB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgYF8ke2FyY2ggPz8gJ3g4Nl82NCd9YDtcbiAgICByZXR1cm4gYGFwcGNvbmZpZy1sYW1iZGEtbGF5ZXI6JHtzdWZmaXh9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcmVnaW9uYWwgc2VydmljZSBwcmluY2lwYWwgZm9yIGEgZ2l2ZW4gc2VydmljZS5cbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2UgdGhlIHNlcnZpY2UgbmFtZSwgZWl0aGVyIHNpbXBsZSAoZS5nOiBgczNgLCBgY29kZWRlcGxveWApIG9yIHF1YWxpZmllZCAoZS5nOiBgczMuYW1hem9uYXdzLmNvbWApLlxuICAgKiAgICAgICAgICAgICAgICBUaGUgYC5hbWF6b25hd3MuY29tYCBhbmQgYC5hbWF6b25hd3MuY29tLmNuYCBkb21haW5zIGFyZSBzdHJpcHBlZCBmcm9tIHNlcnZpY2UgbmFtZXMsIHNvIHRoZXkgYXJlXG4gICAqICAgICAgICAgICAgICAgIGNhbm9uaWNhbGl6ZWQgaW4gdGhhdCByZXNwZWN0LlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzZXJ2aWNlUHJpbmNpcGFsKHNlcnZpY2U6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBzZXJ2aWNlLXByaW5jaXBhbDoke3NlcnZpY2UucmVwbGFjZSgvXFwuYW1hem9uYXdzXFwuY29tKFxcLmNuKT8kLywgJycpfWA7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiBvZiBBbWF6b24gRGlzdHJvIGZvciBPcGVuVGVsZW1ldHJ5IChBRE9UKSBMYW1iZGEgbGF5ZXIgZm9yIGEgZ2l2ZW4gbGFtYmRhIHR5cGUsIHZlcnNpb24gYW5kIGFyY2hpdGVjdHVyZS5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgdGhlIHR5cGUgb2YgdGhlIEFET1QgbGFtYmRhIGxheWVyXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFkb3RMYW1iZGFMYXllcih0eXBlOiBzdHJpbmcsIHZlcnNpb246IHN0cmluZywgYXJjaGl0ZWN0dXJlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHN1ZmZpeCA9IHR5cGUgKyAnXycgKyB2ZXJzaW9uLnNwbGl0KCcuJykuam9pbignXycpICsgJ18nICsgYXJjaGl0ZWN0dXJlO1xuICAgIHJldHVybiBgYWRvdC1sYW1iZGEtbGF5ZXI6JHtzdWZmaXh9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIFBhcmFtZXRlcnMgYW5kIFNlY3JldHMgTGFtYmRhIGxheWVyIGZvciBhIGdpdmVuIGxhbWJkYSBhcmNoaXRlY3R1cmUuXG4gICAqXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgdGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JylcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcGFyYW1zQW5kU2VjcmV0c0xhbWJkYUxheWVyKHZlcnNpb246IHN0cmluZywgYXJjaGl0ZWN0dXJlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHN1ZmZpeCA9IHZlcnNpb24uc3BsaXQoJy4nKS5qb2luKCdfJykgKyBgXyR7YXJjaGl0ZWN0dXJlfWA7XG4gICAgcmV0dXJuIGBwYXJhbXMtYW5kLXNlY3JldHMtbGF5ZXI6JHtzdWZmaXh9YDtcbiAgfVxufVxuIl19
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaURBQTZDO0FBRTdDOztHQUVHO0FBQ0gsTUFBYSxJQUFJO0lBQ2Y7OztPQUdHO0lBQ0ksTUFBTSxLQUFLLE9BQU87UUFDdkIseUVBQXlFO1FBQ3pFLE9BQU8sQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRywwQkFBVyxFQUFFLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDdEU7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxLQUFLLEtBQUs7UUFDckIsT0FBTyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNwRztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVk7UUFDeEIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDakMsT0FBTyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLEVBQUUsRUFBRSxDQUNyQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3hDLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBNEIsQ0FBQyxDQUFDLENBQUM7S0FDM0Q7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFjLEVBQUUsSUFBWTtRQUM3QyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFDLE9BQU8sV0FBVyxJ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QUFFekY7O0dBRUc7QUFDb0Isc0JBQWEsR0FBRyxjQUFjLENBQUM7QUFFdEQ7OztHQUdHO0FBQ29CLCtCQUFzQixHQUFHLHNCQUFzQixDQUFDO0FBRXZFOzs7R0FHRztBQUNvQiw0QkFBbUIsR0FBRywwQkFBMEIsQ0FBQztBQUV4RTs7R0FFRztBQUNvQiw0QkFBbUIsR0FBRyxtQkFBbUIsQ0FBQztBQUVqRTs7R0FFRztBQUNvQix5QkFBZ0IsR0FBRyxlQUFlLENBQUM7QUFFMUQ7O0dBRUc7QUFDb0IsNEJBQW1CLEdBQUcsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBV1NfUkVHSU9OUyB9IGZyb20gJy4vYXdzLWVudGl0aWVzJztcblxuLyoqXG4gKiBBIGRhdGFiYXNlIG9mIHJlZ2lvbmFsIGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgRmFjdCB7XG4gIC8qKlxuICAgKiBAcmV0dXJucyB0aGUgbGlzdCBvZiBuYW1lcyBvZiBBV1MgUmVnaW9ucyBmb3Igd2hpY2ggdGhlcmUgaXMgYXQgbGVhc3Qgb25lIHJlZ2lzdGVyZWQgZmFjdC4gVGhpc1xuICAgKiAgICAgICAgICBpbmNsdWRlcyBSZWdpb25zIGRlZmluZWQgaW4gQVdTX1JFR0lPTlMgcGx1cyBjdXN0b20gZGVmaW5lZCByZWdpb25zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXQgcmVnaW9ucygpOiBzdHJpbmdbXSB7XG4gICAgLy8gUmV0dXJuIHRoZSB1bmlvbiBvZiByZWdpb25zIGluIEFXU19SRUdJT05TIGFuZCBjdXN0b20gZGVmaW5lZCByZWdpb25zLlxuICAgIHJldHVybiBbLi4ubmV3IFNldChbLi4uQVdTX1JFR0lPTlMsIC4uLk9iamVjdC5rZXlzKHRoaXMuZGF0YWJhc2UpXSldO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGxpc3Qgb2YgbmFtZXMgb2YgcmVnaXN0ZXJlZCBmYWN0cy5cbiAgICpcbiAgICogQWxsIGZhY3RzIHdpbGwgYmUgcHJlc2VudCBpbiBhdCBsZWFzdCBvbmUgcmVnaW9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXQgbmFtZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbLi4ubmV3IFNldChPYmplY3QudmFsdWVzKHRoaXMuZGF0YWJhc2UpLmZsYXRNYXAocmVnaW9uRmFjdHMgPT4gT2JqZWN0LmtleXMocmVnaW9uRmFjdHMpKSldO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiBhbGwgcGFpcnMgb2YgKHJlZ2lvbiwgZmFjdE5hbWUpIHRoYXQgYXJlIGRlZmluZWRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZGVmaW5lZEZhY3RzKCk6IEFycmF5PHN0cmluZ1tdPiB7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHRoaXMuZGF0YWJhc2UpXG4gICAgICAuZmxhdE1hcCgoW3JlZ2lvbk5hbWUsIHJlZ2lvbkZhY3RzXSkgPT5cbiAgICAgICAgT2JqZWN0LmtleXMocmVnaW9uRmFjdHMpLm1hcCgoZmFjdE5hbWUpID0+XG4gICAgICAgICAgW3JlZ2lvbk5hbWUsIGZhY3ROYW1lXSBzYXRpc2ZpZXMgW3N0cmluZywgc3RyaW5nXSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhIGZhY3QgZnJvbSB0aGlzIEZhY3QgZGF0YWJhc2UuXG4gICAqXG4gICAqIEBwYXJhbSByZWdpb24gdGhlIG5hbWUgb2YgdGhlIHJlZ2lvbiAoZS5nOiBgdXMtZWFzdC0xYClcbiAgICogQHBhcmFtIG5hbWUgICB0aGUgbmFtZSBvZiB0aGUgZmFjdCBiZWluZyBsb29rZWQgdXAgKHNlZSB0aGUgYEZhY3ROYW1lYCBjbGFzcyBmb3IgZGV0YWlscylcbiAgICpcbiAgICogQHJldHVybnMgdGhlIGZhY3QgdmFsdWUgaWYgaXQgaXMga25vd24sIGFuZCBgdW5kZWZpbmVkYCBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZpbmQocmVnaW9uOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgcmVnaW9uRmFjdHMgPSB0aGlzLmRhdGFiYXNlW3JlZ2lvbl07XG4gICAgcmV0dXJuIHJlZ2lvbkZhY3RzICYmIHJlZ2lvbkZhY3RzW25hbWVdO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIGEgZmFjdCBmcm9tIHRoZSBGYWN0IGRhdGFiYXNlLiAocmV0cmlldmFsIHdpbGwgZmFpbCBpZiB0aGUgc3BlY2lmaWVkIHJlZ2lvbiBvclxuICAgKiBmYWN0IG5hbWUgZG9lcyBub3QgZXhpc3QuKVxuICAgKlxuICAgKiBAcGFyYW0gcmVnaW9uIHRoZSBuYW1lIG9mIHRoZSByZWdpb24gKGUuZzogYHVzLWVhc3QtMWApXG4gICAqIEBwYXJhbSBuYW1lIHRoZSBuYW1lIG9mIHRoZSBmYWN0IGJlaW5nIGxvb2tlZCB1cCAoc2VlIHRoZSBgRmFjdE5hbWVgIGNsYXNzIGZvciBkZXRhaWxzKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZXF1aXJlRmFjdChyZWdpb246IHN0cmluZywgbmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBmb3VuZEZhY3QgPSB0aGlzLmZpbmQocmVnaW9uLCBuYW1lKTtcblxuICAgIGlmICghZm91bmRGYWN0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGZhY3QgJHtuYW1lfSBjb3VsZCBiZSBmb3VuZCBmb3IgcmVnaW9uOiAke3JlZ2lvbn0gYW5kIG5hbWU6ICR7bmFtZX0uYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZvdW5kRmFjdDtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBuZXcgZmFjdCBpbiB0aGlzIEZhY3QgZGF0YWJhc2UuXG4gICAqXG4gICAqIEBwYXJhbSBmYWN0ICAgICAgICAgICB0aGUgbmV3IGZhY3QgdG8gYmUgcmVnaXN0ZXJlZC5cbiAgICogQHBhcmFtIGFsbG93UmVwbGFjaW5nIHdoZXRoZXIgbmV3IGZhY3RzIGNhbiByZXBsYWNlIGV4aXN0aW5nIGZhY3RzIG9yIG5vdC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVnaXN0ZXIoZmFjdDogSUZhY3QsIGFsbG93UmVwbGFjaW5nID0gZmFsc2UpOiB2b2lkIHtcbiAgICBjb25zdCByZWdpb25GYWN0cyA9IHRoaXMuZGF0YWJhc2VbZmFjdC5yZWdpb25dIHx8ICh0aGlzLmRhdGFiYXNlW2ZhY3QucmVnaW9uXSA9IHt9KTtcbiAgICBpZiAoZmFjdC5uYW1lIGluIHJlZ2lvbkZhY3RzICYmIHJlZ2lvbkZhY3RzW2ZhY3QubmFtZV0gIT09IGZhY3QudmFsdWUgJiYgIWFsbG93UmVwbGFjaW5nKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlZ2lvbiAke2ZhY3QucmVnaW9ufSBhbHJlYWR5IGhhcyBhIGZhY3QgJHtmYWN0Lm5hbWV9LCB3aXRoIHZhbHVlICR7cmVnaW9uRmFjdHNbZmFjdC5uYW1lXX1gKTtcbiAgICB9XG4gICAgaWYgKGZhY3QudmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmVnaW9uRmFjdHNbZmFjdC5uYW1lXSA9IGZhY3QudmFsdWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBmYWN0IGZyb20gdGhlIGRhdGFiYXNlLlxuICAgKiBAcGFyYW0gcmVnaW9uIHRoZSByZWdpb24gZm9yIHdoaWNoIHRoZSBmYWN0IGlzIHRvIGJlIHJlbW92ZWQuXG4gICAqIEBwYXJhbSBuYW1lICAgdGhlIG5hbWUgb2YgdGhlIGZhY3QgdG8gcmVtb3ZlLlxuICAgKiBAcGFyYW0gdmFsdWUgIHRoZSB2YWx1ZSB0aGF0IHNob3VsZCBiZSByZW1vdmVkIChyZW1vdmFsIHdpbGwgZmFpbCBpZiB0aGUgdmFsdWUgaXMgc3BlY2lmaWVkLCBidXQgZG9lcyBub3QgbWF0Y2ggdGhlXG4gICAqICAgICAgICAgICAgICAgY3VycmVudCBzdG9yZWQgdmFsdWUpLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB1bnJlZ2lzdGVyKHJlZ2lvbjogc3RyaW5nLCBuYW1lOiBzdHJpbmcsIHZhbHVlPzogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgcmVnaW9uRmFjdHMgPSB0aGlzLmRhdGFiYXNlW3JlZ2lvbl0gfHwge307XG4gICAgaWYgKG5hbWUgaW4gcmVnaW9uRmFjdHMgJiYgdmFsdWUgJiYgcmVnaW9uRmFjdHNbbmFtZV0gIT09IHZhbHVlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEF0dGVtcHRlZCB0byByZW1vdmUgJHtuYW1lfSBmcm9tICR7cmVnaW9ufSB3aXRoIHZhbHVlICR7dmFsdWV9LCBidXQgdGhlIGZhY3QncyB2YWx1ZSBpcyAke3JlZ2lvbkZhY3RzW25hbWVdfWApO1xuICAgIH1cbiAgICBkZWxldGUgcmVnaW9uRmFjdHNbbmFtZV07XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBkYXRhYmFzZTogeyBbcmVnaW9uOiBzdHJpbmddOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfSB9ID0ge307XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VzZSB0aGUgc3RhdGljIG1ldGhvZHMgb2YgRmFjdCBpbnN0ZWFkIScpO1xuICB9XG59XG5cbi8qKlxuICogQSBmYWN0IHRoYXQgY2FuIGJlIHJlZ2lzdGVyZWQgYWJvdXQgYSBwYXJ0aWN1bGFyIHJlZ2lvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRmFjdCB7XG4gIC8qKlxuICAgKiBUaGUgcmVnaW9uIGZvciB3aGljaCB0aGlzIGZhY3QgYXBwbGllcy5cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGlzIGZhY3QuIFN0YW5kYXJkaXplZCB2YWx1ZXMgYXJlIHByb3ZpZGVkIGJ5IHRoZSBgRmFjdHNgIGNsYXNzLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgb2YgdGhpcyBmYWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBBbGwgc3RhbmRhcmRpemVkIGZhY3QgbmFtZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBGYWN0TmFtZSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgcGFydGl0aW9uIGZvciBhIHJlZ2lvbiAoZS5nOiAnYXdzJywgJ2F3cy1jbicsIC4uLilcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUEFSVElUSU9OID0gJ3BhcnRpdGlvbic7XG5cbiAgLyoqXG4gICAqIFRoZSBkb21haW4gc3VmZml4IGZvciBhIHJlZ2lvbiAoZS5nOiAnYW1hem9uYXdzLmNvbWApXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERPTUFJTl9TVUZGSVggPSAnZG9tYWluU3VmZml4JztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgQVdTOjpDREs6Ok1ldGFkYXRhIENsb3VkRm9ybWF0aW9uIFJlc291cmNlIGlzIGF2YWlsYWJsZSBpbi1yZWdpb24gb3Igbm90LiBUaGUgdmFsdWUgaXMgYSBib29sZWFuXG4gICAqIG1vZGVsbGVkIGFzIGBZRVNgIG9yIGBOT2AuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENES19NRVRBREFUQV9SRVNPVVJDRV9BVkFJTEFCTEUgPSAnY2RrOm1ldGFkYXRhLXJlc291cmNlOmF2YWlsYWJsZSc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGdpdmVuIHJlZ2lvbiBpcyBhbiBvcHQtaW4gcmVnaW9uIG9yIG5vdC4gVGhlIHZhbHVlIGlzIGEgYm9vbGVhblxuICAgKiBtb2RlbGxlZCBhcyBgWUVTYCBvciBgTk9gLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBJU19PUFRfSU5fUkVHSU9OID0gJ2F3czppcy1vcHQtaW4tcmVnaW9uJztcblxuICAvKipcbiAgICogVGhlIGVuZHBvaW50IHVzZWQgZm9yIGhvc3RpbmcgUzMgc3RhdGljIHdlYnNpdGVzXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFMzX1NUQVRJQ19XRUJTSVRFX0VORFBPSU5UID0gJ3MzLXN0YXRpYy13ZWJzaXRlOmVuZHBvaW50JztcblxuICAvKipcbiAgICogVGhlIGVuZHBvaW50IHVzZWQgZm9yIGFsaWFzaW5nIFMzIHN0YXRpYyB3ZWJzaXRlcyBpbiBSb3V0ZSA1M1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTM19TVEFUSUNfV0VCU0lURV9aT05FXzUzX0hPU1RFRF9aT05FX0lEID0gJ3MzLXN0YXRpYy13ZWJzaXRlOnJvdXRlLTUzLWhvc3RlZC16b25lLWlkJztcblxuICAvKipcbiAgICogVGhlIGhvc3RlZCB6b25lIElEIHVzZWQgYnkgUm91dGUgNTMgdG8gYWxpYXMgYSBFQlMgZW52aXJvbm1lbnQgZW5kcG9pbnQgaW4gdGhpcyByZWdpb24gKGUuZzogWjJPMUVNUk85SzVHTFgpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEVCU19FTlZfRU5EUE9JTlRfSE9TVEVEX1pPTkVfSUQgPSAnZWJzLWVudmlyb25tZW50OnJvdXRlLTUzLWhvc3RlZC16b25lLWlkJztcblxuICAvKipcbiAgICogVGhlIHByZWZpeCBmb3IgVlBDIEVuZHBvaW50IFNlcnZpY2UgbmFtZXMsXG4gICAqIGNuLmNvbS5hbWF6b25hd3MudnBjZSBmb3IgQ2hpbmEgcmVnaW9ucyxcbiAgICogY29tLmFtYXpvbmF3cy52cGNlIG90aGVyd2lzZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVlBDX0VORFBPSU5UX1NFUlZJQ0VfTkFNRV9QUkVGSVggPSAndnBjRW5kcG9pbnRTZXJ2aWNlTmFtZVByZWZpeCc7XG5cbiAgLyoqXG4gICAqIFRoZSBhY2NvdW50IGZvciBFTEJ2MiBpbiB0aGlzIHJlZ2lvblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFTEJWMl9BQ0NPVU5UID0gJ2VsYnYyQWNjb3VudCc7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgdGhhdCBjb250YWlucyB0aGVcbiAgICogQVdTIERlZXAgTGVhcm5pbmcgQ29udGFpbmVycyBpbWFnZXMgaW4gYSBnaXZlbiByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERMQ19SRVBPU0lUT1JZX0FDQ09VTlQgPSAnZGxjUmVwb3NpdG9yeUFjY291bnQnO1xuXG4gIC8qKlxuICAgKiBUaGUgSUQgb2YgdGhlIEFXUyBhY2NvdW50IHRoYXQgb3ducyB0aGUgcHVibGljIEVDUiByZXBvc2l0b3J5IHRoYXQgY29udGFpbnMgdGhlXG4gICAqIEFXUyBBcHAgTWVzaCBFbnZveSBQcm94eSBpbWFnZXMgaW4gYSBnaXZlbiByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IEFQUE1FU0hfRUNSX0FDQ09VTlQgPSAnYXBwTWVzaFJlcG9zaXRvcnlBY2NvdW50JztcblxuICAvKipcbiAgICogVGhlIENJRFIgYmxvY2sgdXNlZCBieSBLaW5lc2lzIERhdGEgRmlyZWhvc2Ugc2VydmVycy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgRklSRUhPU0VfQ0lEUl9CTE9DSyA9ICdmaXJlaG9zZUNpZHJCbG9jayc7XG5cbiAgLyoqXG4gICAqIFRoZSBTQU1MIFNpZ24gT24gVVJMIGZvciBwYXJ0aXRpb24gdXNlZCBieSBJQU0gU0FNTCBQcmluY2lwYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgU0FNTF9TSUdOX09OX1VSTCA9ICdzYW1sU2lnbk9uVXJsJztcblxuICAvKipcbiAgICogVGhlIGxhdGVzdCBMYW1iZGEgTm9kZUpTIHJ1bnRpbWUgYXZhaWxhYmxlIGluIGEgZ2l2ZW4gcmVnaW9uLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBMQVRFU1RfTk9ERV9SVU5USU1FID0gJ2xhdGVzdE5vZGVSdW50aW1lJztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiBDbG91ZFdhdGNoIExhbWJkYSBJbnNpZ2h0cyBmb3IgYSB2ZXJzaW9uIChlLmcuIDEuMC45OC4wKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjbG91ZHdhdGNoTGFtYmRhSW5zaWdodHNWZXJzaW9uKHZlcnNpb246IHN0cmluZywgYXJjaD86IHN0cmluZykge1xuICAgIC8vIGlmIHdlIGFyZSBwcm92aWRlZCBhbiBhcmNoaXRlY3R1cmUgdXNlIHRoYXQsIG90aGVyd2lzZVxuICAgIC8vIGRlZmF1bHQgdG8geDg2XzY0IGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuICAgIGNvbnN0IHN1ZmZpeCA9IHZlcnNpb24uc3BsaXQoJy4nKS5qb2luKCdfJykgKyBgXyR7YXJjaCA/PyAneDg2XzY0J31gO1xuICAgIHJldHVybiBgY2xvdWR3YXRjaC1sYW1iZGEtaW5zaWdodHMtdmVyc2lvbjoke3N1ZmZpeH1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgQXBwQ29uZmlnIExhbWJkYSBMYXllciBmb3IgYSBnaXZlbiB2ZXJzaW9uIChlLmcuIDIuMC4xODEpXG4gICAqIEBwYXJhbSB2ZXJzaW9uIFRoZSBsYXllciB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gYXJjaCBUaGUgYXJjaGl0ZWN0dXJlIChvcHRpb25hbCksIGRlZmF1bHRzIHRvIHg4Nl82NC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYXBwQ29uZmlnTGFtYmRhTGF5ZXJWZXJzaW9uKHZlcnNpb246IHN0cmluZywgYXJjaD86IHN0cmluZykge1xuICAgIGNvbnN0IHN1ZmZpeCA9IHZlcnNpb24uc3BsaXQoJy4nKS5qb2luKCdfJykgKyBgXyR7YXJjaCA/PyAneDg2XzY0J31gO1xuICAgIHJldHVybiBgYXBwY29uZmlnLWxhbWJkYS1sYXllcjoke3N1ZmZpeH1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSByZWdpb25hbCBzZXJ2aWNlIHByaW5jaXBhbCBmb3IgYSBnaXZlbiBzZXJ2aWNlLlxuICAgKlxuICAgKiBAcGFyYW0gc2VydmljZSB0aGUgc2VydmljZSBuYW1lLCBlaXRoZXIgc2ltcGxlIChlLmc6IGBzM2AsIGBjb2RlZGVwbG95YCkgb3IgcXVhbGlmaWVkIChlLmc6IGBzMy5hbWF6b25hd3MuY29tYCkuXG4gICAqICAgICAgICAgICAgICAgIFRoZSBgLmFtYXpvbmF3cy5jb21gIGFuZCBgLmFtYXpvbmF3cy5jb20uY25gIGRvbWFpbnMgYXJlIHN0cmlwcGVkIGZyb20gc2VydmljZSBuYW1lcywgc28gdGhleSBhcmVcbiAgICogICAgICAgICAgICAgICAgY2Fub25pY2FsaXplZCBpbiB0aGF0IHJlc3BlY3QuXG4gICAqXG4gICAqIEBkZXByZWNhdGVkIC0gVXNlIGBpYW0uU2VydmljZVByaW5jaXBhbC5zZXJ2aWNlUHJpbmNpcGFsTmFtZSgpYCBpbnN0ZWFkLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBzZXJ2aWNlUHJpbmNpcGFsKHNlcnZpY2U6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3NlcnZpY2UucmVwbGFjZSgvXFwuYW1hem9uYXdzXFwuY29tKFxcLmNuKT8kLywgJycpfS5hbWF6b25hd3MuY29tYDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIEFtYXpvbiBEaXN0cm8gZm9yIE9wZW5UZWxlbWV0cnkgKEFET1QpIExhbWJkYSBsYXllciBmb3IgYSBnaXZlbiBsYW1iZGEgdHlwZSwgdmVyc2lvbiBhbmQgYXJjaGl0ZWN0dXJlLlxuICAgKlxuICAgKiBAcGFyYW0gdHlwZSB0aGUgdHlwZSBvZiB0aGUgQURPVCBsYW1iZGEgbGF5ZXJcbiAgICogQHBhcmFtIHZlcnNpb24gdGhlIGxheWVyIHZlcnNpb24uXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgdGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JylcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYWRvdExhbWJkYUxheWVyKHR5cGU6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3Qgc3VmZml4ID0gdHlwZSArICdfJyArIHZlcnNpb24uc3BsaXQoJy4nKS5qb2luKCdfJykgKyAnXycgKyBhcmNoaXRlY3R1cmU7XG4gICAgcmV0dXJuIGBhZG90LWxhbWJkYS1sYXllcjoke3N1ZmZpeH1gO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgUGFyYW1ldGVycyBhbmQgU2VjcmV0cyBMYW1iZGEgbGF5ZXIgZm9yIGEgZ2l2ZW4gbGFtYmRhIGFyY2hpdGVjdHVyZS5cbiAgICpcbiAgICogQHBhcmFtIHZlcnNpb24gdGhlIGxheWVyIHZlcnNpb25cbiAgICogQHBhcmFtIGFyY2hpdGVjdHVyZSB0aGUgTGFtYmRhIEZ1bmN0aW9uIGFyY2hpdGVjdHVyZSAoZS5nLiAneDg2XzY0JyBvciAnYXJtNjQnKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBwYXJhbXNBbmRTZWNyZXRzTGFtYmRhTGF5ZXIodmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3Qgc3VmZml4ID0gdmVyc2lvbi5zcGxpdCgnLicpLmpvaW4oJ18nKSArIGBfJHthcmNoaXRlY3R1cmV9YDtcbiAgICByZXR1cm4gYHBhcmFtcy1hbmQtc2VjcmV0cy1sYXllcjoke3N1ZmZpeH1gO1xuICB9XG59XG4iXX0=
@@ -76,6 +76,8 @@ export declare class RegionInfo {
76
76
  /**
77
77
  * The name of the service principal for a given service in this region.
78
78
  * @param service the service name (e.g: s3.amazonaws.com)
79
+ *
80
+ * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
79
81
  */
80
82
  servicePrincipal(service: string): string | undefined;
81
83
  /**
@@ -2,6 +2,7 @@
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.RegionInfo = void 0;
5
+ const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
5
6
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
7
  const aws_entities_1 = require("./aws-entities");
7
8
  const fact_1 = require("./fact");
@@ -117,9 +118,20 @@ class RegionInfo {
117
118
  /**
118
119
  * The name of the service principal for a given service in this region.
119
120
  * @param service the service name (e.g: s3.amazonaws.com)
121
+ *
122
+ * @deprecated - Use `iam.ServicePrincipal.servicePrincipalName()` instead.
120
123
  */
121
124
  servicePrincipal(service) {
122
- return fact_1.Fact.find(this.name, fact_1.FactName.servicePrincipal(service));
125
+ try {
126
+ jsiiDeprecationWarnings.print("@aws-cdk/region-info.RegionInfo#servicePrincipal", "- Use `iam.ServicePrincipal.servicePrincipalName()` instead.");
127
+ }
128
+ catch (error) {
129
+ if (process.env.JSII_DEBUG !== "1" && error.name === "DeprecationError") {
130
+ Error.captureStackTrace(error, this.servicePrincipal);
131
+ }
132
+ throw error;
133
+ }
134
+ return `${service.replace(/\.amazonaws\.com(\.cn)?$/, '')}.amazonaws.com`;
123
135
  }
124
136
  /**
125
137
  * The account ID for ELBv2 in this region
@@ -191,5 +203,5 @@ class RegionInfo {
191
203
  }
192
204
  exports.RegionInfo = RegionInfo;
193
205
  _a = JSII_RTTI_SYMBOL_1;
194
- RegionInfo[_a] = { fqn: "@aws-cdk/region-info.RegionInfo", version: "2.149.0" };
195
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJyZWdpb24taW5mby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlEQUFzRDtBQUN0RCxpQ0FBd0M7QUFFeEM7O0dBRUc7QUFDSCxNQUFhLFVBQVU7SUFDckI7OztPQUdHO0lBQ0ksTUFBTSxLQUFLLE9BQU87UUFDdkIsT0FBTyxXQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDekM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFnQjtRQUN0QyxNQUFNLEdBQUcsR0FBaUMsRUFBRSxDQUFDO1FBQzdDLEtBQUssTUFBTSxVQUFVLElBQUksVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzVDLE1BQU0sSUFBSSxHQUFHLFdBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNsRCxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNULEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBQzlCLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7S0FDWjtJQUVEOzs7Ozs7Ozs7T0FTRztJQUNJLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFnQixFQUFFLFVBQW9CO1FBQ25FLE1BQU0sR0FBRyxHQUEyQixFQUFFLENBQUM7UUFDdkMsS0FBSyxNQUFNLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0UsSUFBSSxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUEsbUNBQW9CLEVBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztnQkFDaEUsR0FBRyxDQUFD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SUFBVyx3QkFBd0I7UUFDakMsT0FBTyxXQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsZUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUM7S0FDM0Q7SUFFRDs7T0FFRztJQUNILElBQVcsaUJBQWlCO1FBQzFCLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBQzNEO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksa0JBQWtCLENBQUMsSUFBWSxFQUFFLE9BQWUsRUFBRSxZQUFvQjtRQUMzRSxPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztLQUNwRjtJQUVEOzs7OztPQUtHO0lBQ0ksOEJBQThCLENBQUMsT0FBZSxFQUFFLFlBQW9CO1FBQ3pFLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQywyQkFBMkIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztLQUMxRjtJQUVEOztPQUVHO0lBQ0gsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0tBQ3hEOztBQXZNSCxnQ0F5TUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwYXJ0aXRpb25JbmZvcm1hdGlvbiB9IGZyb20gJy4vYXdzLWVudGl0aWVzJztcbmltcG9ydCB7IEZhY3QsIEZhY3ROYW1lIH0gZnJvbSAnLi9mYWN0JztcblxuLyoqXG4gKiBJbmZvcm1hdGlvbiBwZXJ0YWluaW5nIHRvIGFuIEFXUyByZWdpb24uXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWdpb25JbmZvIHtcbiAgLyoqXG4gICAqIEByZXR1cm5zIHRoZSBsaXN0IG9mIG5hbWVzIG9mIEFXUyByZWdpb25zIGZvciB3aGljaCB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgcmVnaXN0ZXJlZCBmYWN0LiBUaGlzXG4gICAqICAgICAgICAgIG1heSBub3QgYmUgYW4gZXhhdXN0aXZlIGxpc3Qgb2YgYWxsIGF2YWlsYWJsZSBBV1MgcmVnaW9ucy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0IHJlZ2lvbnMoKTogUmVnaW9uSW5mb1tdIHtcbiAgICByZXR1cm4gRmFjdC5yZWdpb25zLm1hcChSZWdpb25JbmZvLmdldCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgY29sbGVjdGlvbiBvZiBhbGwgZmFjdCB2YWx1ZXMgZm9yIGFsbCByZWdpb25zIHRoYXQgZmFjdCBpcyBkZWZpbmVkIGluLlxuICAgKlxuICAgKiBAcGFyYW0gZmFjdE5hbWUgdGhlIG5hbWUgb2YgdGhlIGZhY3QgdG8gcmV0cmlldmUgdmFsdWVzIGZvci5cbiAgICogICBGb3IgYSBsaXN0IG9mIGNvbW1vbiBmYWN0IG5hbWVzLCBzZWUgdGhlIEZhY3ROYW1lIGNsYXNzXG4gICAqIEByZXR1cm5zIGEgbWFwcGluZyB3aXRoIEFXUyByZWdpb24gY29kZXMgYXMgdGhlIGtleXMsXG4gICAqICAgYW5kIHRoZSBmYWN0IGluIHRoZSBnaXZlbiByZWdpb24gYXMgdGhlIHZhbHVlIGZvciB0aGF0IGtleVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWdpb25NYXAoZmFjdE5hbWU6IHN0cmluZyk6IHsgW3JlZ2lvbjogc3RyaW5nXTogc3RyaW5nIH0ge1xuICAgIGNvbnN0IHJldDogeyBbcmVnaW9uOiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuICAgIGZvciAoY29uc3QgcmVnaW9uSW5mbyBvZiBSZWdpb25JbmZvLnJlZ2lvbnMpIHtcbiAgICAgIGNvbnN0IGZhY3QgPSBGYWN0LmZpbmQocmVnaW9uSW5mby5uYW1lLCBmYWN0TmFtZSk7XG4gICAgICBpZiAoZmFjdCkge1xuICAgICAgICByZXRbcmVnaW9uSW5mby5uYW1lXSA9IGZhY3Q7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgY29sbGVjdGlvbiBvZiBhbGwgZmFjdCB2YWx1ZXMgZm9yIGFsbCByZWdpb25zLCBsaW1pdGVkIHRvIHNvbWUgcGFydGl0aW9uc1xuICAgKlxuICAgKiBAcGFyYW0gZmFjdE5hbWUgdGhlIG5hbWUgb2YgdGhlIGZhY3QgdG8gcmV0cmlldmUgdmFsdWVzIGZvci5cbiAgICogICBGb3IgYSBsaXN0IG9mIGNvbW1vbiBmYWN0IG5hbWVzLCBzZWUgdGhlIEZhY3ROYW1lIGNsYXNzXG4gICAqIEBwYXJhbSBwYXJ0aXRpb25zIGxpc3Qgb2YgcGFydGl0aW9ucyB0byByZXRyaWV2ZSBmYWN0cyBmb3IuIERlZmF1bHRzXG4gICAqICAgdG8gYFsnYXdzJywgJ2F3cy1jbiddYC5cbiAgICogQHJldHVybnMgYSBtYXBwaW5nIHdpdGggQVdTIHJlZ2lvbiBjb2RlcyBhcyB0aGUga2V5cyxcbiAgICogICBhbmQgdGhlIGZhY3QgaW4gdGhlIGdpdmVuIHJlZ2lvbiBhcyB0aGUgdmFsdWUgZm9yIHRoYXQga2V5XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGxpbWl0ZWRSZWdpb25NYXAoZmFjdE5hbWU6IHN0cmluZywgcGFydGl0aW9uczogc3RyaW5nW10pOiB7IFtyZWdpb246IHN0cmluZ106IHN0cmluZyB9IHtcbiAgICBjb25zdCByZXQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IFtyZWdpb24sIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhSZWdpb25JbmZvLnJlZ2lvbk1hcChmYWN0TmFtZSkpKSB7XG4gICAgICBpZiAocGFydGl0aW9ucy5pbmNsdWRlcyhwYXJ0aXRpb25JbmZvcm1hdGlvbihyZWdpb24pLnBhcnRpdGlvbikpIHtcbiAgICAgICAgcmV0W3JlZ2lvbl0gPSB2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJldDtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRhaW4gcmVnaW9uIGluZm8gZm9yIGEgZ2l2ZW4gcmVnaW9uIG5hbWUuXG4gICAqXG4gICAqIEBwYXJhbSBuYW1lIHRoZSBuYW1lIG9mIHRoZSByZWdpb24gKGUuZzogdXMtZWFzdC0xKVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXQobmFtZTogc3RyaW5nKTogUmVnaW9uSW5mbyB7XG4gICAgcmV0dXJuIG5ldyBSZWdpb25JbmZvKG5hbWUpO1xuICB9XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgbmFtZTogc3RyaW5nKSB7fVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBgQVdTOjpDREs6Ok1ldGFkYXRhYCBDbG91ZEZvcm1hdGlvbiBSZXNvdXJjZSBpcyBhdmFpbGFibGUgaW4gdGhpcyByZWdpb24gb3Igbm90LlxuICAgKi9cbiAgcHVibGljIGdldCBjZGtNZXRhZGF0YVJlc291cmNlQXZhaWxhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5DREtfTUVUQURBVEFfUkVTT1VSQ0VfQVZBSUxBQkxFKSA9PT0gJ1lFUyc7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ2l2ZW4gcmVnaW9uIGlzIGFuIG9wdC1pbiByZWdpb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaXNPcHRJblJlZ2lvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gRmFjdC5maW5kKHRoaXMubmFtZSwgRmFjdE5hbWUuSVNfT1BUX0lOX1JFR0lPTikgPT09ICdZRVMnO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBkb21haW4gbmFtZSBzdWZmaXggKGUuZzogYW1hem9uYXdzLmNvbSkgZm9yIHRoaXMgcmVnaW9uLlxuICAgKi9cbiAgcHVibGljIGdldCBkb21haW5TdWZmaXgoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gRmFjdC5maW5kKHRoaXMubmFtZSwgRmFjdE5hbWUuRE9NQUlOX1NVRkZJWCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEFSTiBwYXJ0aXRpb24gZm9yIHRoaXMgcmVnaW9uIChlLmc6IGF3cykuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHBhcnRpdGlvbigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5QQVJUSVRJT04pO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBlbmRwb2ludCB1c2VkIGJ5IFMzIHN0YXRpYyB3ZWJzaXRlIGhvc3RpbmcgaW4gdGhpcyByZWdpb24gKGUuZzogczMtc3RhdGljLXdlYnNpdGUtdXMtZWFzdC0xLmFtYXpvbmF3cy5jb20pXG4gICAqL1xuICBwdWJsaWMgZ2V0IHMzU3RhdGljV2Vic2l0ZUVuZHBvaW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLlMzX1NUQVRJQ19XRUJTSVRFX0VORFBPSU5UKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgaG9zdGVkIHpvbmUgSUQgdXNlZCBieSBSb3V0ZSA1MyB0byBhbGlhcyBhIFMzIHN0YXRpYyB3ZWJzaXRlIGluIHRoaXMgcmVnaW9uIChlLmc6IFoyTzFFTVJPOUs1R0xYKVxuICAgKi9cbiAgcHVibGljIGdldCBzM1N0YXRpY1dlYnNpdGVIb3N0ZWRab25lSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gRmFjdC5maW5kKHRoaXMubmFtZSwgRmFjdE5hbWUuUzNfU1RBVElDX1dFQlNJVEVfWk9ORV81M19IT1NURURfWk9ORV9JRCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhvc3RlZCB6b25lIElEIHVzZWQgYnkgUm91dGUgNTMgdG8gYWxpYXMgYSBFQlMgZW52aXJvbm1lbnQgZW5kcG9pbnQgaW4gdGhpcyByZWdpb24gKGUuZzogWjJPMUVNUk85SzVHTFgpXG4gICAqL1xuICBwdWJsaWMgZ2V0IGVic0VudkVuZHBvaW50SG9zdGVkWm9uZUlkKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkVCU19FTlZfRU5EUE9JTlRfSE9TVEVEX1pPTkVfSUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggZm9yIFZQQyBFbmRwb2ludCBTZXJ2aWNlIG5hbWVzLFxuICAgKiBjbi5jb20uYW1hem9uYXdzLnZwY2UgZm9yIENoaW5hIHJlZ2lvbnMsXG4gICAqIGNvbS5hbWF6b25hd3MudnBjZSBvdGhlcndpc2UuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZwY0VuZHBvaW50U2VydmljZU5hbWVQcmVmaXgoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gRmFjdC5maW5kKHRoaXMubmFtZSwgRmFjdE5hbWUuVlBDX0VORFBPSU5UX1NFUlZJQ0VfTkFNRV9QUkVGSVgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBzZXJ2aWNlIHByaW5jaXBhbCBmb3IgYSBnaXZlbiBzZXJ2aWNlIGluIHRoaXMgcmVnaW9uLlxuICAgKiBAcGFyYW0gc2VydmljZSB0aGUgc2VydmljZSBuYW1lIChlLmc6IHMzLmFtYXpvbmF3cy5jb20pXG4gICAqL1xuICBwdWJsaWMgc2VydmljZVByaW5jaXBhbChzZXJ2aWNlOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5zZXJ2aWNlUHJpbmNpcGFsKHNlcnZpY2UpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgYWNjb3VudCBJRCBmb3IgRUxCdjIgaW4gdGhpcyByZWdpb25cbiAgICovXG4gIHB1YmxpYyBnZXQgZWxidjJBY2NvdW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkVMQlYyX0FDQ09VTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgY29udGFpbmluZyB0aGVcbiAgICogQVdTIERlZXAgTGVhcm5pbmcgQ29udGFpbmVycyBpbWFnZXMgaW4gdGhpcyByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRsY1JlcG9zaXRvcnlBY2NvdW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkRMQ19SRVBPU0lUT1JZX0FDQ09VTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIENsb3VkV2F0Y2ggTGFtYmRhIEluc2lnaHRzIGV4dGVuc2lvbiwgZm9yIHRoZSBnaXZlbiB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gaW5zaWdodHNWZXJzaW9uIHRoZSB2ZXJzaW9uIChlLmcuIDEuMC45OC4wKVxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgY2xvdWR3YXRjaExhbWJkYUluc2lnaHRzQXJuKGluc2lnaHRzVmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5jbG91ZHdhdGNoTGFtYmRhSW5zaWdodHNWZXJzaW9uKGluc2lnaHRzVmVyc2lvbiwgYXJjaGl0ZWN0dXJlKSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgQXBwQ29uZmlnIExhbWJkYSBMYXllciwgZm9yIHRoZSBnaXZlbiB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gbGF5ZXJWZXJzaW9uIFRoZSBsYXllciB2ZXJzaW9uIChlLmcuIDIuMC4xODEpXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgVGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JyksIGRlZmF1bHRzIHRvIHg4Nl82NFxuICAgKi9cbiAgcHVibGljIGFwcENvbmZpZ0xhbWJkYUFybihsYXllclZlcnNpb246IHN0cmluZywgYXJjaGl0ZWN0dXJlPzogc3RyaW5nKSA6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLmFwcENvbmZpZ0xhbWJkYUxheWVyVmVyc2lvbihsYXllclZlcnNpb24sIGFyY2hpdGVjdHVyZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgdGhhdCBjb250YWlucyB0aGVcbiAgICogQVdTIEFwcCBNZXNoIEVudm95IFByb3h5IGltYWdlcyBpbiBhIGdpdmVuIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBnZXQgYXBwTWVzaFJlcG9zaXRvcnlBY2NvdW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkFQUE1FU0hfRUNSX0FDQ09VTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDSURSIGJsb2NrIHVzZWQgYnkgS2luZXNpcyBEYXRhIEZpcmVob3NlIHNlcnZlcnMuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGZpcmVob3NlQ2lkckJsb2NrKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkZJUkVIT1NFX0NJRFJfQkxPQ0spO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIEFET1QgTGFtYmRhIGxheWVyLCBmb3IgdGhlIGdpdmVuIGxheWVyIHR5cGUsIHZlcnNpb24gYW5kIGFyY2hpdGVjdHVyZS5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgdGhlIHR5cGUgb2YgdGhlIEFET1QgbGFtYmRhIGxheWVyXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgYWRvdExhbWJkYUxheWVyQXJuKHR5cGU6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLmFkb3RMYW1iZGFMYXllcih0eXBlLCB2ZXJzaW9uLCBhcmNoaXRlY3R1cmUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBQYXJhbWV0ZXJzIGFuZCBTZWNyZXRzIExhbWJkYSBsYXllciBmb3IgdGhlIGdpdmVuIGxhbWJkYSBhcmNoaXRlY3R1cmUuXG4gICAqXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgdGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JylcbiAgICovXG4gIHB1YmxpYyBwYXJhbXNBbmRTZWNyZXRzTGFtYmRhTGF5ZXJBcm4odmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLnBhcmFtc0FuZFNlY3JldHNMYW1iZGFMYXllcih2ZXJzaW9uLCBhcmNoaXRlY3R1cmUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTQU1MIFNpZ24gT24gVVJMIHVzZWQgYnkgSUFNIFNBTUwgUHJpbmNpcGFscy5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2FtbFNpZ25PblVybCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5TQU1MX1NJR05fT05fVVJMKTtcbiAgfVxuXG59XG4iXX0=
206
+ RegionInfo[_a] = { fqn: "@aws-cdk/region-info.RegionInfo", version: "2.151.0" };
207
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLWluZm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJyZWdpb24taW5mby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxpREFBc0Q7QUFDdEQsaUNBQXdDO0FBRXhDOztHQUVHO0FBQ0gsTUFBYSxVQUFVO0lBQ3JCOzs7T0FHRztJQUNJLE1BQU0sS0FBSyxPQUFPO1FBQ3ZCLE9BQU8sV0FBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ3pDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBZ0I7UUFDdEMsTUFBTSxHQUFHLEdBQWlDLEVBQUUsQ0FBQztRQUM3QyxLQUFLLE1BQU0sVUFBVSxJQUFJLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1QyxNQUFNLElBQUksR0FBRyxXQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDbEQsSUFBSSxJQUFJLEVBQUUsQ0FBQztnQkFDVCxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQztZQUM5QixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0tBQ1o7SUFFRDs7Ozs7Ozs7O09BU0c7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBZ0IsRUFBRSxVQUFvQjtRQUNuRSxNQUFNLEdBQUcsR0FBMkIsRUFBRSxDQUFDO1FBQ3ZDLEtBQUssTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdFLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFBLG1DQUFvQixFQUFDLE1BQU0sQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hFLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUM7WUFDdEIsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLEdBQUcsQ0FBQztLQUNaO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBWTtRQUM1QixPQUFPLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzdCO0lBRUQsWUFBb0MsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7S0FBSTtJQUVwRDs7T0FFRztJQUNILElBQVcsNEJBQTRCO1FBQ3JDLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQywrQkFBK0IsQ0FBQyxLQUFLLEtBQUssQ0FBQztLQUNqRjtJQUVEOztPQUVHO0lBQ0gsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEtBQUssQ0FBQztLQUNsRTtJQUVEOztPQUVHO0lBQ0gsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUNyRDtJQUVEOztPQUVHO0lBQ0gsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUNqRDtJQUVEOztPQUVHO0lBQ0gsSUFBVyx1QkFBdUI7UUFDaEMsT0FBTyxXQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsZUFBUSxDQUFDLDBCQUEwQixDQUFDLENBQUM7S0FDbEU7SUFFRDs7T0FFRztJQUNILElBQVcsMkJBQTJCO1FBQ3BDLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0tBQ2hGO0lBRUQ7O09BRUc7SUFDSCxJQUFXLDBCQUEwQjtRQUNuQyxPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsK0JBQStCLENBQUMsQ0FBQztLQUN2RTtJQUVEOzs7O09BSUc7SUFDSCxJQUFXLDRCQUE0QjtRQUNyQyxPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztLQUN4RTtJQUVEOzs7OztPQUtHO0lBQ0ksZ0JBQWdCLENBQUMsT0FBZTs7Ozs7Ozs7OztRQUNyQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUM7S0FDM0U7SUFFRDs7T0FFRztJQUNILElBQVcsWUFBWTtRQUNyQixPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsYUFBYSxDQUFDLENBQUM7S0FDckQ7SUFFRDs7O09BR0c7SUFDSCxJQUFXLG9CQUFvQjtRQUM3QixPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsc0JBQXNCLENBQUMsQ0FBQztLQUM5RDtJQUVEOzs7O09BSUc7SUFDSSwyQkFBMkIsQ0FBQyxlQUF1QixFQUFFLFlBQXFCO1FBQy9FLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQywrQkFBK0IsQ0FBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztLQUN0RztJQUVEOzs7O09BSUc7SUFDSSxrQkFBa0IsQ0FBQyxZQUFvQixFQUFFLFlBQXFCO1FBQ25FLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQywyQkFBMkIsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztLQUMvRjtJQUVEOzs7T0FHRztJQUNILElBQVcsd0JBQXdCO1FBQ2pDLE9BQU8sV0FBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGVBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0tBQzNEO0lBRUQ7O09BRUc7SUFDSCxJQUFXLGlCQUFpQjtRQUMxQixPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQztLQUMzRDtJQUVEOzs7Ozs7T0FNRztJQUNJLGtCQUFrQixDQUFDLElBQVksRUFBRSxPQUFlLEVBQUUsWUFBb0I7UUFDM0UsT0FBTyxXQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsZUFBUSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7S0FDcEY7SUFFRDs7Ozs7T0FLRztJQUNJLDhCQUE4QixDQUFDLE9BQWUsRUFBRSxZQUFvQjtRQUN6RSxPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsMkJBQTJCLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7S0FDMUY7SUFFRDs7T0FFRztJQUNILElBQVcsYUFBYTtRQUN0QixPQUFPLFdBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxlQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQUN4RDs7QUF6TUgsZ0NBMk1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGFydGl0aW9uSW5mb3JtYXRpb24gfSBmcm9tICcuL2F3cy1lbnRpdGllcyc7XG5pbXBvcnQgeyBGYWN0LCBGYWN0TmFtZSB9IGZyb20gJy4vZmFjdCc7XG5cbi8qKlxuICogSW5mb3JtYXRpb24gcGVydGFpbmluZyB0byBhbiBBV1MgcmVnaW9uLlxuICovXG5leHBvcnQgY2xhc3MgUmVnaW9uSW5mbyB7XG4gIC8qKlxuICAgKiBAcmV0dXJucyB0aGUgbGlzdCBvZiBuYW1lcyBvZiBBV1MgcmVnaW9ucyBmb3Igd2hpY2ggdGhlcmUgaXMgYXQgbGVhc3Qgb25lIHJlZ2lzdGVyZWQgZmFjdC4gVGhpc1xuICAgKiAgICAgICAgICBtYXkgbm90IGJlIGFuIGV4YXVzdGl2ZSBsaXN0IG9mIGFsbCBhdmFpbGFibGUgQVdTIHJlZ2lvbnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGdldCByZWdpb25zKCk6IFJlZ2lvbkluZm9bXSB7XG4gICAgcmV0dXJuIEZhY3QucmVnaW9ucy5tYXAoUmVnaW9uSW5mby5nZXQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhIGNvbGxlY3Rpb24gb2YgYWxsIGZhY3QgdmFsdWVzIGZvciBhbGwgcmVnaW9ucyB0aGF0IGZhY3QgaXMgZGVmaW5lZCBpbi5cbiAgICpcbiAgICogQHBhcmFtIGZhY3ROYW1lIHRoZSBuYW1lIG9mIHRoZSBmYWN0IHRvIHJldHJpZXZlIHZhbHVlcyBmb3IuXG4gICAqICAgRm9yIGEgbGlzdCBvZiBjb21tb24gZmFjdCBuYW1lcywgc2VlIHRoZSBGYWN0TmFtZSBjbGFzc1xuICAgKiBAcmV0dXJucyBhIG1hcHBpbmcgd2l0aCBBV1MgcmVnaW9uIGNvZGVzIGFzIHRoZSBrZXlzLFxuICAgKiAgIGFuZCB0aGUgZmFjdCBpbiB0aGUgZ2l2ZW4gcmVnaW9uIGFzIHRoZSB2YWx1ZSBmb3IgdGhhdCBrZXlcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVnaW9uTWFwKGZhY3ROYW1lOiBzdHJpbmcpOiB7IFtyZWdpb246IHN0cmluZ106IHN0cmluZyB9IHtcbiAgICBjb25zdCByZXQ6IHsgW3JlZ2lvbjogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgICBmb3IgKGNvbnN0IHJlZ2lvbkluZm8gb2YgUmVnaW9uSW5mby5yZWdpb25zKSB7XG4gICAgICBjb25zdCBmYWN0ID0gRmFjdC5maW5kKHJlZ2lvbkluZm8ubmFtZSwgZmFjdE5hbWUpO1xuICAgICAgaWYgKGZhY3QpIHtcbiAgICAgICAgcmV0W3JlZ2lvbkluZm8ubmFtZV0gPSBmYWN0O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmV0O1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlcyBhIGNvbGxlY3Rpb24gb2YgYWxsIGZhY3QgdmFsdWVzIGZvciBhbGwgcmVnaW9ucywgbGltaXRlZCB0byBzb21lIHBhcnRpdGlvbnNcbiAgICpcbiAgICogQHBhcmFtIGZhY3ROYW1lIHRoZSBuYW1lIG9mIHRoZSBmYWN0IHRvIHJldHJpZXZlIHZhbHVlcyBmb3IuXG4gICAqICAgRm9yIGEgbGlzdCBvZiBjb21tb24gZmFjdCBuYW1lcywgc2VlIHRoZSBGYWN0TmFtZSBjbGFzc1xuICAgKiBAcGFyYW0gcGFydGl0aW9ucyBsaXN0IG9mIHBhcnRpdGlvbnMgdG8gcmV0cmlldmUgZmFjdHMgZm9yLiBEZWZhdWx0c1xuICAgKiAgIHRvIGBbJ2F3cycsICdhd3MtY24nXWAuXG4gICAqIEByZXR1cm5zIGEgbWFwcGluZyB3aXRoIEFXUyByZWdpb24gY29kZXMgYXMgdGhlIGtleXMsXG4gICAqICAgYW5kIHRoZSBmYWN0IGluIHRoZSBnaXZlbiByZWdpb24gYXMgdGhlIHZhbHVlIGZvciB0aGF0IGtleVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBsaW1pdGVkUmVnaW9uTWFwKGZhY3ROYW1lOiBzdHJpbmcsIHBhcnRpdGlvbnM6IHN0cmluZ1tdKTogeyBbcmVnaW9uOiBzdHJpbmddOiBzdHJpbmcgfSB7XG4gICAgY29uc3QgcmV0OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG4gICAgZm9yIChjb25zdCBbcmVnaW9uLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoUmVnaW9uSW5mby5yZWdpb25NYXAoZmFjdE5hbWUpKSkge1xuICAgICAgaWYgKHBhcnRpdGlvbnMuaW5jbHVkZXMocGFydGl0aW9uSW5mb3JtYXRpb24ocmVnaW9uKS5wYXJ0aXRpb24pKSB7XG4gICAgICAgIHJldFtyZWdpb25dID0gdmFsdWU7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiByZXQ7XG4gIH1cblxuICAvKipcbiAgICogT2J0YWluIHJlZ2lvbiBpbmZvIGZvciBhIGdpdmVuIHJlZ2lvbiBuYW1lLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSB0aGUgbmFtZSBvZiB0aGUgcmVnaW9uIChlLmc6IHVzLWVhc3QtMSlcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0KG5hbWU6IHN0cmluZyk6IFJlZ2lvbkluZm8ge1xuICAgIHJldHVybiBuZXcgUmVnaW9uSW5mbyhuYW1lKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZykge31cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgYEFXUzo6Q0RLOjpNZXRhZGF0YWAgQ2xvdWRGb3JtYXRpb24gUmVzb3VyY2UgaXMgYXZhaWxhYmxlIGluIHRoaXMgcmVnaW9uIG9yIG5vdC5cbiAgICovXG4gIHB1YmxpYyBnZXQgY2RrTWV0YWRhdGFSZXNvdXJjZUF2YWlsYWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gRmFjdC5maW5kKHRoaXMubmFtZSwgRmFjdE5hbWUuQ0RLX01FVEFEQVRBX1JFU09VUkNFX0FWQUlMQUJMRSkgPT09ICdZRVMnO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGdpdmVuIHJlZ2lvbiBpcyBhbiBvcHQtaW4gcmVnaW9uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGlzT3B0SW5SZWdpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLklTX09QVF9JTl9SRUdJT04pID09PSAnWUVTJztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZG9tYWluIG5hbWUgc3VmZml4IChlLmc6IGFtYXpvbmF3cy5jb20pIGZvciB0aGlzIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBnZXQgZG9tYWluU3VmZml4KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkRPTUFJTl9TVUZGSVgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBBUk4gcGFydGl0aW9uIGZvciB0aGlzIHJlZ2lvbiAoZS5nOiBhd3MpLlxuICAgKi9cbiAgcHVibGljIGdldCBwYXJ0aXRpb24oKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gRmFjdC5maW5kKHRoaXMubmFtZSwgRmFjdE5hbWUuUEFSVElUSU9OKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZW5kcG9pbnQgdXNlZCBieSBTMyBzdGF0aWMgd2Vic2l0ZSBob3N0aW5nIGluIHRoaXMgcmVnaW9uIChlLmc6IHMzLXN0YXRpYy13ZWJzaXRlLXVzLWVhc3QtMS5hbWF6b25hd3MuY29tKVxuICAgKi9cbiAgcHVibGljIGdldCBzM1N0YXRpY1dlYnNpdGVFbmRwb2ludCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5TM19TVEFUSUNfV0VCU0lURV9FTkRQT0lOVCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGhvc3RlZCB6b25lIElEIHVzZWQgYnkgUm91dGUgNTMgdG8gYWxpYXMgYSBTMyBzdGF0aWMgd2Vic2l0ZSBpbiB0aGlzIHJlZ2lvbiAoZS5nOiBaMk8xRU1STzlLNUdMWClcbiAgICovXG4gIHB1YmxpYyBnZXQgczNTdGF0aWNXZWJzaXRlSG9zdGVkWm9uZUlkKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLlMzX1NUQVRJQ19XRUJTSVRFX1pPTkVfNTNfSE9TVEVEX1pPTkVfSUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBob3N0ZWQgem9uZSBJRCB1c2VkIGJ5IFJvdXRlIDUzIHRvIGFsaWFzIGEgRUJTIGVudmlyb25tZW50IGVuZHBvaW50IGluIHRoaXMgcmVnaW9uIChlLmc6IFoyTzFFTVJPOUs1R0xYKVxuICAgKi9cbiAgcHVibGljIGdldCBlYnNFbnZFbmRwb2ludEhvc3RlZFpvbmVJZCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5FQlNfRU5WX0VORFBPSU5UX0hPU1RFRF9aT05FX0lEKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcHJlZml4IGZvciBWUEMgRW5kcG9pbnQgU2VydmljZSBuYW1lcyxcbiAgICogY24uY29tLmFtYXpvbmF3cy52cGNlIGZvciBDaGluYSByZWdpb25zLFxuICAgKiBjb20uYW1hem9uYXdzLnZwY2Ugb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIGdldCB2cGNFbmRwb2ludFNlcnZpY2VOYW1lUHJlZml4KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLlZQQ19FTkRQT0lOVF9TRVJWSUNFX05BTUVfUFJFRklYKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgc2VydmljZSBwcmluY2lwYWwgZm9yIGEgZ2l2ZW4gc2VydmljZSBpbiB0aGlzIHJlZ2lvbi5cbiAgICogQHBhcmFtIHNlcnZpY2UgdGhlIHNlcnZpY2UgbmFtZSAoZS5nOiBzMy5hbWF6b25hd3MuY29tKVxuICAgKlxuICAgKiBAZGVwcmVjYXRlZCAtIFVzZSBgaWFtLlNlcnZpY2VQcmluY2lwYWwuc2VydmljZVByaW5jaXBhbE5hbWUoKWAgaW5zdGVhZC5cbiAgICovXG4gIHB1YmxpYyBzZXJ2aWNlUHJpbmNpcGFsKHNlcnZpY2U6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIGAke3NlcnZpY2UucmVwbGFjZSgvXFwuYW1hem9uYXdzXFwuY29tKFxcLmNuKT8kLywgJycpfS5hbWF6b25hd3MuY29tYDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgYWNjb3VudCBJRCBmb3IgRUxCdjIgaW4gdGhpcyByZWdpb25cbiAgICovXG4gIHB1YmxpYyBnZXQgZWxidjJBY2NvdW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkVMQlYyX0FDQ09VTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgY29udGFpbmluZyB0aGVcbiAgICogQVdTIERlZXAgTGVhcm5pbmcgQ29udGFpbmVycyBpbWFnZXMgaW4gdGhpcyByZWdpb24uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRsY1JlcG9zaXRvcnlBY2NvdW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkRMQ19SRVBPU0lUT1JZX0FDQ09VTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIENsb3VkV2F0Y2ggTGFtYmRhIEluc2lnaHRzIGV4dGVuc2lvbiwgZm9yIHRoZSBnaXZlbiB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gaW5zaWdodHNWZXJzaW9uIHRoZSB2ZXJzaW9uIChlLmcuIDEuMC45OC4wKVxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgY2xvdWR3YXRjaExhbWJkYUluc2lnaHRzQXJuKGluc2lnaHRzVmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5jbG91ZHdhdGNoTGFtYmRhSW5zaWdodHNWZXJzaW9uKGluc2lnaHRzVmVyc2lvbiwgYXJjaGl0ZWN0dXJlKSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgQXBwQ29uZmlnIExhbWJkYSBMYXllciwgZm9yIHRoZSBnaXZlbiB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gbGF5ZXJWZXJzaW9uIFRoZSBsYXllciB2ZXJzaW9uIChlLmcuIDIuMC4xODEpXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgVGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JyksIGRlZmF1bHRzIHRvIHg4Nl82NFxuICAgKi9cbiAgcHVibGljIGFwcENvbmZpZ0xhbWJkYUFybihsYXllclZlcnNpb246IHN0cmluZywgYXJjaGl0ZWN0dXJlPzogc3RyaW5nKSA6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLmFwcENvbmZpZ0xhbWJkYUxheWVyVmVyc2lvbihsYXllclZlcnNpb24sIGFyY2hpdGVjdHVyZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgQVdTIGFjY291bnQgdGhhdCBvd25zIHRoZSBwdWJsaWMgRUNSIHJlcG9zaXRvcnkgdGhhdCBjb250YWlucyB0aGVcbiAgICogQVdTIEFwcCBNZXNoIEVudm95IFByb3h5IGltYWdlcyBpbiBhIGdpdmVuIHJlZ2lvbi5cbiAgICovXG4gIHB1YmxpYyBnZXQgYXBwTWVzaFJlcG9zaXRvcnlBY2NvdW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkFQUE1FU0hfRUNSX0FDQ09VTlQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBDSURSIGJsb2NrIHVzZWQgYnkgS2luZXNpcyBEYXRhIEZpcmVob3NlIHNlcnZlcnMuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGZpcmVob3NlQ2lkckJsb2NrKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLkZJUkVIT1NFX0NJRFJfQkxPQ0spO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIEFET1QgTGFtYmRhIGxheWVyLCBmb3IgdGhlIGdpdmVuIGxheWVyIHR5cGUsIHZlcnNpb24gYW5kIGFyY2hpdGVjdHVyZS5cbiAgICpcbiAgICogQHBhcmFtIHR5cGUgdGhlIHR5cGUgb2YgdGhlIEFET1QgbGFtYmRhIGxheWVyXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uLlxuICAgKiBAcGFyYW0gYXJjaGl0ZWN0dXJlIHRoZSBMYW1iZGEgRnVuY3Rpb24gYXJjaGl0ZWN0dXJlIChlLmcuICd4ODZfNjQnIG9yICdhcm02NCcpXG4gICAqL1xuICBwdWJsaWMgYWRvdExhbWJkYUxheWVyQXJuKHR5cGU6IHN0cmluZywgdmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLmFkb3RMYW1iZGFMYXllcih0eXBlLCB2ZXJzaW9uLCBhcmNoaXRlY3R1cmUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBQYXJhbWV0ZXJzIGFuZCBTZWNyZXRzIExhbWJkYSBsYXllciBmb3IgdGhlIGdpdmVuIGxhbWJkYSBhcmNoaXRlY3R1cmUuXG4gICAqXG4gICAqIEBwYXJhbSB2ZXJzaW9uIHRoZSBsYXllciB2ZXJzaW9uXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgdGhlIExhbWJkYSBGdW5jdGlvbiBhcmNoaXRlY3R1cmUgKGUuZy4gJ3g4Nl82NCcgb3IgJ2FybTY0JylcbiAgICovXG4gIHB1YmxpYyBwYXJhbXNBbmRTZWNyZXRzTGFtYmRhTGF5ZXJBcm4odmVyc2lvbjogc3RyaW5nLCBhcmNoaXRlY3R1cmU6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIEZhY3QuZmluZCh0aGlzLm5hbWUsIEZhY3ROYW1lLnBhcmFtc0FuZFNlY3JldHNMYW1iZGFMYXllcih2ZXJzaW9uLCBhcmNoaXRlY3R1cmUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTQU1MIFNpZ24gT24gVVJMIHVzZWQgYnkgSUFNIFNBTUwgUHJpbmNpcGFscy5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2FtbFNpZ25PblVybCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiBGYWN0LmZpbmQodGhpcy5uYW1lLCBGYWN0TmFtZS5TQU1MX1NJR05fT05fVVJMKTtcbiAgfVxuXG59XG4iXX0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-cdk/region-info",
3
- "version": "2.149.0",
3
+ "version": "2.151.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",
@@ -80,9 +80,9 @@
80
80
  },
81
81
  "license": "Apache-2.0",
82
82
  "devDependencies": {
83
- "@aws-cdk/cdk-build-tools": "2.149.0-alpha.0",
84
- "@aws-cdk/pkglint": "2.149.0-alpha.0",
85
- "aws-cdk-lib": "2.149.0",
83
+ "@aws-cdk/cdk-build-tools": "2.151.0-alpha.0",
84
+ "@aws-cdk/pkglint": "2.151.0-alpha.0",
85
+ "aws-cdk-lib": "2.151.0",
86
86
  "@types/fs-extra": "^9.0.13",
87
87
  "@types/jest": "^29.5.12",
88
88
  "fs-extra": "^9.1.0"