@cdklabs/cdk-appmod-catalog-blueprints 1.17.0 → 1.17.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/.jsii +5 -5
  2. package/lib/document-processing/adapter/queued-s3-adapter.js +39 -5
  3. package/lib/document-processing/agentic-document-processing.js +6 -4
  4. package/lib/document-processing/base-document-processing.js +16 -4
  5. package/lib/document-processing/bedrock-document-processing.js +109 -66
  6. package/lib/document-processing/default-document-processing-config.js +3 -5
  7. package/lib/document-processing/localstack-agentic-document-processing.js +38 -5
  8. package/lib/document-processing/localstack-bedrock-document-processing.js +36 -5
  9. package/lib/document-processing/tests/base-document-processing-nag.test.js +3 -1
  10. package/lib/document-processing/tests/base-document-processing-schema.test.js +6 -1
  11. package/lib/document-processing/tests/base-document-processing.test.js +12 -1
  12. package/lib/document-processing/tests/localstack-agentic-document-processing.test.js +35 -2
  13. package/lib/document-processing/tests/localstack-document-processing.test.js +35 -2
  14. package/lib/document-processing/tests/queued-s3-adapter-nag.test.js +3 -1
  15. package/lib/document-processing/tests/queued-s3-adapter.test.js +3 -1
  16. package/lib/framework/agents/base-agent.js +31 -4
  17. package/lib/framework/agents/batch-agent.js +37 -5
  18. package/lib/framework/agents/default-agent-config.js +3 -5
  19. package/lib/framework/agents/interactive-agent.js +115 -23
  20. package/lib/framework/agents/knowledge-base/base-knowledge-base.js +30 -4
  21. package/lib/framework/agents/knowledge-base/bedrock-knowledge-base.js +81 -5
  22. package/lib/framework/agents/localstack-batch-agent.js +36 -5
  23. package/lib/framework/agents/tests/agent-knowledge-base-nag.test.js +35 -2
  24. package/lib/framework/bedrock/bedrock.js +2 -4
  25. package/lib/framework/custom-resource/default-runtimes.js +20 -22
  26. package/lib/framework/foundation/access-log.js +50 -7
  27. package/lib/framework/foundation/eventbridge-broker.js +5 -4
  28. package/lib/framework/foundation/network.js +4 -4
  29. package/lib/framework/localstack/localstack-config.js +3 -5
  30. package/lib/framework/tests/base-agent-knowledge-base.test.js +35 -2
  31. package/lib/framework/tests/batch-agent.test.js +35 -2
  32. package/lib/framework/tests/framework-nag.test.js +35 -2
  33. package/lib/framework/tests/interactive-agent-nag.test.js +35 -2
  34. package/lib/framework/tests/interactive-agent.test.js +35 -2
  35. package/lib/framework/tests/localstack-batch-agent.test.js +35 -2
  36. package/lib/utilities/data-loader.js +50 -5
  37. package/lib/utilities/lambda-iam-utils.js +38 -7
  38. package/lib/utilities/lambda_layers/data-masking/layer-construct.js +40 -3
  39. package/lib/utilities/observability/bedrock-observability.js +38 -2
  40. package/lib/utilities/observability/cloudfront-distribution-observability-property-injector.js +3 -4
  41. package/lib/utilities/observability/cloudwatch-transaction-search.js +36 -5
  42. package/lib/utilities/observability/default-observability-config.js +6 -8
  43. package/lib/utilities/observability/lambda-observability-property-injector.js +4 -4
  44. package/lib/utilities/observability/log-group-data-protection-utils.js +2 -4
  45. package/lib/utilities/observability/observability.js +47 -6
  46. package/lib/utilities/observability/powertools-config.js +2 -4
  47. package/lib/utilities/observability/state-machine-observability-property-injector.js +4 -4
  48. package/lib/webapp/frontend-construct.js +46 -5
  49. package/lib/webapp/tests/frontend-construct-nag.test.js +36 -3
  50. package/lib/webapp/tests/frontend-construct.test.js +36 -3
  51. package/package.json +60 -61
  52. package/lib/tsconfig.tsbuildinfo +0 -1
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a, _b;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.DefaultRuntimes = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -10,26 +9,25 @@ const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
10
9
  * Runtime versions should be done here.
11
10
  */
12
11
  class DefaultRuntimes {
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.DefaultRuntimes", version: "1.17.1" };
13
+ /**
14
+ * Default runtime for all Lambda functions in the use cases.
15
+ */
16
+ static NODEJS = aws_lambda_1.Runtime.NODEJS_22_X;
17
+ /**
18
+ * Default runtime for Python based Lambda functions.
19
+ */
20
+ static PYTHON = aws_lambda_1.Runtime.PYTHON_3_13;
21
+ /**
22
+ * Default bundling arguments for Python function
23
+ */
24
+ static PYTHON_FUNCTION_BUNDLING = {
25
+ buildArgs: {
26
+ '--platform': 'linux/amd64',
27
+ },
28
+ image: this.PYTHON.bundlingImage,
29
+ };
30
+ static PYTHON_BUNDLING_IMAGE = 'python:3.13.7-bookworm';
13
31
  }
14
32
  exports.DefaultRuntimes = DefaultRuntimes;
15
- _a = DefaultRuntimes, _b = JSII_RTTI_SYMBOL_1;
16
- DefaultRuntimes[_b] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.DefaultRuntimes", version: "1.17.0" };
17
- /**
18
- * Default runtime for all Lambda functions in the use cases.
19
- */
20
- DefaultRuntimes.NODEJS = aws_lambda_1.Runtime.NODEJS_22_X;
21
- /**
22
- * Default runtime for Python based Lambda functions.
23
- */
24
- DefaultRuntimes.PYTHON = aws_lambda_1.Runtime.PYTHON_3_13;
25
- /**
26
- * Default bundling arguments for Python function
27
- */
28
- DefaultRuntimes.PYTHON_FUNCTION_BUNDLING = {
29
- buildArgs: {
30
- '--platform': 'linux/amd64',
31
- },
32
- image: _a.PYTHON.bundlingImage,
33
- };
34
- DefaultRuntimes.PYTHON_BUNDLING_IMAGE = 'python:3.13.7-bookworm';
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1ydW50aW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3VzZS1jYXNlcy9mcmFtZXdvcmsvY3VzdG9tLXJlc291cmNlL2RlZmF1bHQtcnVudGltZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFHQSx1REFBaUQ7QUFFakQ7Ozs7R0FJRztBQUNILE1BQWEsZUFBZTs7QUFBNUIsMENBdUJDOzs7QUFyQkM7O0tBRUs7QUFDa0Isc0JBQU0sR0FBRyxvQkFBTyxDQUFDLFdBQVcsQUFBdEIsQ0FBdUI7QUFFcEQ7O0dBRUc7QUFDb0Isc0JBQU0sR0FBRyxvQkFBTyxDQUFDLFdBQVcsQUFBdEIsQ0FBdUI7QUFFcEQ7O0dBRUc7QUFDb0Isd0NBQXdCLEdBQW9CO0lBQ2pFLFNBQVMsRUFBRTtRQUNULFlBQVksRUFBRSxhQUFhO0tBQzVCO0lBQ0QsS0FBSyxFQUFFLEVBQUksQ0FBQyxNQUFNLENBQUMsYUFBYTtDQUNqQyxBQUw4QyxDQUs3QztBQUVxQixxQ0FBcUIsR0FBRyx3QkFBd0IsQUFBM0IsQ0FBNEIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBCdW5kbGluZ09wdGlvbnMgfSBmcm9tICdAYXdzLWNkay9hd3MtbGFtYmRhLXB5dGhvbi1hbHBoYSc7XG5pbXBvcnQgeyBSdW50aW1lIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYSc7XG5cbi8qKlxuICogQ29udGFpbnMgZGVmYXVsdCBydW50aW1lcyB0aGF0IHdvdWxkIGJlIHJlZmVyZW5jZWRcbiAqIGJ5IExhbWJkYSBmdW5jdGlvbnMgaW4gdGhlIHZhcmlvdXMgdXNlIGNhc2VzLiBVcGRhdGluZyBvZlxuICogUnVudGltZSB2ZXJzaW9ucyBzaG91bGQgYmUgZG9uZSBoZXJlLlxuICovXG5leHBvcnQgY2xhc3MgRGVmYXVsdFJ1bnRpbWVzIHtcblxuICAvKipcbiAgICAgKiBEZWZhdWx0IHJ1bnRpbWUgZm9yIGFsbCBMYW1iZGEgZnVuY3Rpb25zIGluIHRoZSB1c2UgY2FzZXMuXG4gICAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgTk9ERUpTID0gUnVudGltZS5OT0RFSlNfMjJfWDtcblxuICAvKipcbiAgICogRGVmYXVsdCBydW50aW1lIGZvciBQeXRob24gYmFzZWQgTGFtYmRhIGZ1bmN0aW9ucy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUFlUSE9OID0gUnVudGltZS5QWVRIT05fM18xMztcblxuICAvKipcbiAgICogRGVmYXVsdCBidW5kbGluZyBhcmd1bWVudHMgZm9yIFB5dGhvbiBmdW5jdGlvblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQWVRIT05fRlVOQ1RJT05fQlVORExJTkc6IEJ1bmRsaW5nT3B0aW9ucyA9IHtcbiAgICBidWlsZEFyZ3M6IHtcbiAgICAgICctLXBsYXRmb3JtJzogJ2xpbnV4L2FtZDY0JyxcbiAgICB9LFxuICAgIGltYWdlOiB0aGlzLlBZVEhPTi5idW5kbGluZ0ltYWdlLFxuICB9O1xuXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgUFlUSE9OX0JVTkRMSU5HX0lNQUdFID0gJ3B5dGhvbjozLjEzLjctYm9va3dvcm0nO1xufSJdfQ==
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1ydW50aW1lcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3VzZS1jYXNlcy9mcmFtZXdvcmsvY3VzdG9tLXJlc291cmNlL2RlZmF1bHQtcnVudGltZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLHVEQUFpRDtBQUVqRDs7OztHQUlHO0FBQ0gsTUFBYSxlQUFlOztJQUUxQjs7U0FFSztJQUNFLE1BQU0sQ0FBVSxNQUFNLEdBQUcsb0JBQU8sQ0FBQyxXQUFXLENBQUM7SUFFcEQ7O09BRUc7SUFDSSxNQUFNLENBQVUsTUFBTSxHQUFHLG9CQUFPLENBQUMsV0FBVyxDQUFDO0lBRXBEOztPQUVHO0lBQ0ksTUFBTSxDQUFVLHdCQUF3QixHQUFvQjtRQUNqRSxTQUFTLEVBQUU7WUFDVCxZQUFZLEVBQUUsYUFBYTtTQUM1QjtRQUNELEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWE7S0FDakMsQ0FBQztJQUVLLE1BQU0sQ0FBVSxxQkFBcUIsR0FBRyx3QkFBd0IsQ0FBQzs7QUF0QjFFLDBDQXVCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbmltcG9ydCB7IEJ1bmRsaW5nT3B0aW9ucyB9IGZyb20gJ0Bhd3MtY2RrL2F3cy1sYW1iZGEtcHl0aG9uLWFscGhhJztcbmltcG9ydCB7IFJ1bnRpbWUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcblxuLyoqXG4gKiBDb250YWlucyBkZWZhdWx0IHJ1bnRpbWVzIHRoYXQgd291bGQgYmUgcmVmZXJlbmNlZFxuICogYnkgTGFtYmRhIGZ1bmN0aW9ucyBpbiB0aGUgdmFyaW91cyB1c2UgY2FzZXMuIFVwZGF0aW5nIG9mXG4gKiBSdW50aW1lIHZlcnNpb25zIHNob3VsZCBiZSBkb25lIGhlcmUuXG4gKi9cbmV4cG9ydCBjbGFzcyBEZWZhdWx0UnVudGltZXMge1xuXG4gIC8qKlxuICAgICAqIERlZmF1bHQgcnVudGltZSBmb3IgYWxsIExhbWJkYSBmdW5jdGlvbnMgaW4gdGhlIHVzZSBjYXNlcy5cbiAgICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBOT0RFSlMgPSBSdW50aW1lLk5PREVKU18yMl9YO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IHJ1bnRpbWUgZm9yIFB5dGhvbiBiYXNlZCBMYW1iZGEgZnVuY3Rpb25zLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQWVRIT04gPSBSdW50aW1lLlBZVEhPTl8zXzEzO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGJ1bmRsaW5nIGFyZ3VtZW50cyBmb3IgUHl0aG9uIGZ1bmN0aW9uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBZVEhPTl9GVU5DVElPTl9CVU5ETElORzogQnVuZGxpbmdPcHRpb25zID0ge1xuICAgIGJ1aWxkQXJnczoge1xuICAgICAgJy0tcGxhdGZvcm0nOiAnbGludXgvYW1kNjQnLFxuICAgIH0sXG4gICAgaW1hZ2U6IHRoaXMuUFlUSE9OLmJ1bmRsaW5nSW1hZ2UsXG4gIH07XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQWVRIT05fQlVORExJTkdfSU1BR0UgPSAncHl0aG9uOjMuMTMuNy1ib29rd29ybSc7XG59Il19
@@ -1,13 +1,45 @@
1
1
  "use strict";
2
- var _a;
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
3
35
  Object.defineProperty(exports, "__esModule", { value: true });
4
36
  exports.AccessLog = void 0;
5
37
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
38
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
7
39
  // SPDX-License-Identifier: Apache-2.0
8
- const cdk = require("aws-cdk-lib");
9
- const iam = require("aws-cdk-lib/aws-iam");
10
- const s3 = require("aws-cdk-lib/aws-s3");
40
+ const cdk = __importStar(require("aws-cdk-lib"));
41
+ const iam = __importStar(require("aws-cdk-lib/aws-iam"));
42
+ const s3 = __importStar(require("aws-cdk-lib/aws-s3"));
11
43
  const constructs_1 = require("constructs");
12
44
  /**
13
45
  * AccessLog construct that provides a centralized S3 bucket for storing access logs.
@@ -21,6 +53,19 @@ const constructs_1 = require("constructs");
21
53
  * const bucketName = accessLog.bucketName;
22
54
  */
23
55
  class AccessLog extends constructs_1.Construct {
56
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.AccessLog", version: "1.17.1" };
57
+ /**
58
+ * The S3 bucket for storing access logs
59
+ */
60
+ bucket;
61
+ /**
62
+ * The name of the S3 bucket
63
+ */
64
+ bucketName;
65
+ /**
66
+ * The bucket prefix used for organizing access logs
67
+ */
68
+ bucketPrefix;
24
69
  constructor(scope, id, props = {}) {
25
70
  super(scope, id);
26
71
  // Store the bucket prefix
@@ -116,6 +161,4 @@ class AccessLog extends constructs_1.Construct {
116
161
  }
117
162
  }
118
163
  exports.AccessLog = AccessLog;
119
- _a = JSII_RTTI_SYMBOL_1;
120
- AccessLog[_a] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.AccessLog", version: "1.17.0" };
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3VzZS1jYXNlcy9mcmFtZXdvcmsvZm91bmRhdGlvbi9hY2Nlc3MtbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscUVBQXFFO0FBQ3JFLHNDQUFzQztBQUN0QyxtQ0FBbUM7QUFDbkMsMkNBQTJDO0FBQzNDLHlDQUF5QztBQUN6QywyQ0FBdUM7QUErQnZDOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFhLFNBQVUsU0FBUSxzQkFBUztJQWdCdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUF3QixFQUFFO1FBQ2xFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsMEJBQTBCO1FBQzFCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSSxhQUFhLENBQUM7UUFFeEQseUVBQXlFO1FBQ3pFLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUM3QyxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDekMsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLFVBQVUsSUFBSSxhQUFhLENBQUM7UUFDbkQsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLFFBQVEsSUFBSSxTQUFTLElBQUksTUFBTSxFQUFFLENBQUM7UUFFdkQsMEJBQTBCO1FBQzFCLE1BQU0scUJBQXFCLEdBQXVCO1lBQ2hEO2dCQUNFLEVBQUUsRUFBRSxvQkFBb0I7Z0JBQ3hCLE9BQU8sRUFBRSxJQUFJO2dCQUNiLFdBQVcsRUFBRTtvQkFDWDt3QkFDRSxZQUFZLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxpQkFBaUI7d0JBQy9DLGVBQWUsRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLElB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O0lBQzlELENBQUM7O0FBcEhILDhCQXFIQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBzMyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgQWNjZXNzTG9nIGNvbnN0cnVjdFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFjY2Vzc0xvZ1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBTMyBidWNrZXQgZm9yIGFjY2VzcyBsb2dzXG4gICAqIEBkZWZhdWx0ICdhY2Nlc3MtbG9ncydcbiAgICovXG4gIHJlYWRvbmx5IGJ1Y2tldE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpZmVjeWNsZSBydWxlcyBmb3IgdGhlIGFjY2VzcyBsb2dzXG4gICAqIEBkZWZhdWx0IFRyYW5zaXRpb24gdG8gSUEgYWZ0ZXIgMzAgZGF5cywgZGVsZXRlIGFmdGVyIDkwIGRheXNcbiAgICovXG4gIHJlYWRvbmx5IGxpZmVjeWNsZVJ1bGVzPzogczMuTGlmZWN5Y2xlUnVsZVtdO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSB2ZXJzaW9uaW5nIG9uIHRoZSBhY2Nlc3MgbG9ncyBidWNrZXRcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb25lZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBidWNrZXQgcHJlZml4IGZvciBvcmdhbml6aW5nIGFjY2VzcyBsb2dzXG4gICAqIEBkZWZhdWx0ICdhY2Nlc3MtbG9ncydcbiAgICovXG4gIHJlYWRvbmx5IGJ1Y2tldFByZWZpeD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBY2Nlc3NMb2cgY29uc3RydWN0IHRoYXQgcHJvdmlkZXMgYSBjZW50cmFsaXplZCBTMyBidWNrZXQgZm9yIHN0b3JpbmcgYWNjZXNzIGxvZ3MuXG4gKiBUaGlzIGNvbnN0cnVjdCBjcmVhdGVzIGEgc2VjdXJlIFMzIGJ1Y2tldCB3aXRoIGFwcHJvcHJpYXRlIHBvbGljaWVzIGZvciBBV1Mgc2VydmljZXNcbiAqIHRvIGRlbGl2ZXIgYWNjZXNzIGxvZ3MuXG4gKlxuICogVXNhZ2U6XG4gKlxuICogY29uc3QgYWNjZXNzTG9nID0gbmV3IEFjY2Vzc0xvZyh0aGlzLCAnQWNjZXNzTG9nJyk7XG4gKiBjb25zdCBidWNrZXQgPSBhY2Nlc3NMb2cuYnVja2V0O1xuICogY29uc3QgYnVja2V0TmFtZSA9IGFjY2Vzc0xvZy5idWNrZXROYW1lO1xuICovXG5leHBvcnQgY2xhc3MgQWNjZXNzTG9nIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSBTMyBidWNrZXQgZm9yIHN0b3JpbmcgYWNjZXNzIGxvZ3NcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBidWNrZXQ6IHMzLkJ1Y2tldDtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIFMzIGJ1Y2tldFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGJ1Y2tldE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGJ1Y2tldCBwcmVmaXggdXNlZCBmb3Igb3JnYW5pemluZyBhY2Nlc3MgbG9nc1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGJ1Y2tldFByZWZpeDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBY2Nlc3NMb2dQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIC8vIFN0b3JlIHRoZSBidWNrZXQgcHJlZml4XG4gICAgdGhpcy5idWNrZXRQcmVmaXggPSBwcm9wcy5idWNrZXRQcmVmaXggfHwgJ2FjY2Vzcy1sb2dzJztcblxuICAgIC8vIEdlbmVyYXRlIHVuaXF1ZSBidWNrZXQgbmFtZSB3aXRoIGFjY291bnQgYW5kIHJlZ2lvbiB0byBhdm9pZCBjb25mbGljdHNcbiAgICBjb25zdCBhY2NvdW50SWQgPSBjZGsuU3RhY2sub2YodGhpcykuYWNjb3VudDtcbiAgICBjb25zdCByZWdpb24gPSBjZGsuU3RhY2sub2YodGhpcykucmVnaW9uO1xuICAgIGNvbnN0IGJhc2VOYW1lID0gcHJvcHMuYnVja2V0TmFtZSB8fCAnYWNjZXNzLWxvZ3MnO1xuICAgIHRoaXMuYnVja2V0TmFtZSA9IGAke2Jhc2VOYW1lfS0ke2FjY291bnRJZH0tJHtyZWdpb259YDtcblxuICAgIC8vIERlZmF1bHQgbGlmZWN5Y2xlIHJ1bGVzXG4gICAgY29uc3QgZGVmYXVsdExpZmVjeWNsZVJ1bGVzOiBzMy5MaWZlY3ljbGVSdWxlW10gPSBbXG4gICAgICB7XG4gICAgICAgIGlkOiAnQWNjZXNzTG9nTGlmZWN5Y2xlJyxcbiAgICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgdHJhbnNpdGlvbnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBzdG9yYWdlQ2xhc3M6IHMzLlN0b3JhZ2VDbGFzcy5JTkZSRVFVRU5UX0FDQ0VTUyxcbiAgICAgICAgICAgIHRyYW5zaXRpb25BZnRlcjogY2RrLkR1cmF0aW9uLmRheXMoMzApLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgc3RvcmFnZUNsYXNzOiBzMy5TdG9yYWdlQ2xhc3MuR0xBQ0lFUixcbiAgICAgICAgICAgIHRyYW5zaXRpb25BZnRlcjogY2RrLkR1cmF0aW9uLmRheXMoOTApLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGV4cGlyYXRpb246IGNkay5EdXJhdGlvbi5kYXlzKDM2NSksIC8vIERlbGV0ZSBhZnRlciAxIHllYXJcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIC8vIENyZWF0ZSB0aGUgUzMgYnVja2V0IGZvciBhY2Nlc3MgbG9nc1xuICAgIHRoaXMuYnVja2V0ID0gbmV3IHMzLkJ1Y2tldCh0aGlzLCAnQWNjZXNzTG9nQnVja2V0Jywge1xuICAgICAgYnVja2V0TmFtZTogdGhpcy5idWNrZXROYW1lLFxuICAgICAgZW5jcnlwdGlvbjogczMuQnVja2V0RW5jcnlwdGlvbi5TM19NQU5BR0VELFxuICAgICAgdmVyc2lvbmVkOiBwcm9wcy52ZXJzaW9uZWQgfHwgZmFsc2UsXG4gICAgICBibG9ja1B1YmxpY0FjY2VzczogczMuQmxvY2tQdWJsaWNBY2Nlc3MuQkxPQ0tfQUxMLFxuICAgICAgbGlmZWN5Y2xlUnVsZXM6IHByb3BzLmxpZmVjeWNsZVJ1bGVzIHx8IGRlZmF1bHRMaWZlY3ljbGVSdWxlcyxcbiAgICAgIHJlbW92YWxQb2xpY3k6IGNkay5SZW1vdmFsUG9saWN5LlJFVEFJTiwgLy8gUmV0YWluIGxvZ3MgZm9yIGNvbXBsaWFuY2VcbiAgICAgIGVuZm9yY2VTU0w6IHRydWUsIC8vIEVuZm9yY2UgU1NMIGZvciBhbGwgcmVxdWVzdHNcbiAgICAgIGV2ZW50QnJpZGdlRW5hYmxlZDogZmFsc2UsIC8vIERpc2FibGUgRXZlbnRCcmlkZ2UgZm9yIGNvc3Qgb3B0aW1pemF0aW9uXG4gICAgfSk7XG5cbiAgICAvLyBBZGQgYnVja2V0IHBvbGljeSB0byBhbGxvdyBhY2Nlc3MgbG9nIGRlbGl2ZXJ5IGZyb20gQVdTIHNlcnZpY2VzXG4gICAgdGhpcy5idWNrZXQuYWRkVG9SZXNvdXJjZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICBzaWQ6ICdBbGxvd0FjY2Vzc0xvZ0RlbGl2ZXJ5JyxcbiAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgIHByaW5jaXBhbHM6IFtcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdsb2dnaW5nLnMzLmFtYXpvbmF3cy5jb20nKSxcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdkZWxpdmVyeS5sb2dzLmFtYXpvbmF3cy5jb20nKSxcbiAgICAgIF0sXG4gICAgICBhY3Rpb25zOiBbXG4gICAgICAgICdzMzpQdXRPYmplY3QnLFxuICAgICAgICAnczM6R2V0QnVja2V0QWNsJyxcbiAgICAgICAgJ3MzOkxpc3RCdWNrZXQnLFxuICAgICAgXSxcbiAgICAgIHJlc291cmNlczogW1xuICAgICAgICB0aGlzLmJ1Y2tldC5idWNrZXRBcm4sXG4gICAgICAgIGAke3RoaXMuYnVja2V0LmJ1Y2tldEFybn0vKmAsXG4gICAgICBdLFxuICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAnczM6eC1hbXotYWNsJzogJ2J1Y2tldC1vd25lci1mdWxsLWNvbnRyb2wnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KSk7XG5cbiAgICAvLyBBbGxvdyBFTEIgc2VydmljZSB0byB3cml0ZSBhY2Nlc3MgbG9nc1xuICAgIHRoaXMuYnVja2V0LmFkZFRvUmVzb3VyY2VQb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgc2lkOiAnQWxsb3dFTEJBY2Nlc3NMb2dEZWxpdmVyeScsXG4gICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICBwcmluY2lwYWxzOiBbXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZWxhc3RpY2xvYWRiYWxhbmNpbmcuYW1hem9uYXdzLmNvbScpLFxuICAgICAgXSxcbiAgICAgIGFjdGlvbnM6IFsnczM6UHV0T2JqZWN0J10sXG4gICAgICByZXNvdXJjZXM6IFtgJHt0aGlzLmJ1Y2tldC5idWNrZXRBcm59LypgXSxcbiAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBTMyBidWNrZXQgcGF0aCBmb3IgYSBzcGVjaWZpYyBzZXJ2aWNlJ3MgYWNjZXNzIGxvZ3NcbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2VOYW1lIFRoZSBuYW1lIG9mIHRoZSBzZXJ2aWNlIChlLmcuLCAnYWxiJywgJ2Nsb3VkZnJvbnQnLCAnczMnKVxuICAgKiBAcGFyYW0gcmVzb3VyY2VOYW1lIE9wdGlvbmFsIHJlc291cmNlIG5hbWUgZm9yIGZ1cnRoZXIgb3JnYW5pemF0aW9uXG4gICAqIEByZXR1cm5zIFRoZSBTMyBwYXRoIGZvciB0aGUgc2VydmljZSdzIGFjY2VzcyBsb2dzXG4gICAqL1xuICBwdWJsaWMgZ2V0TG9nUGF0aChzZXJ2aWNlTmFtZTogc3RyaW5nLCByZXNvdXJjZU5hbWU/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGJhc2VQYXRoID0gYCR7dGhpcy5idWNrZXROYW1lfS8ke3RoaXMuYnVja2V0UHJlZml4fS8ke3NlcnZpY2VOYW1lfWA7XG4gICAgcmV0dXJuIHJlc291cmNlTmFtZSA/IGAke2Jhc2VQYXRofS8ke3Jlc291cmNlTmFtZX1gIDogYmFzZVBhdGg7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBTMyBVUkkgZm9yIGEgc3BlY2lmaWMgc2VydmljZSdzIGFjY2VzcyBsb2dzXG4gICAqXG4gICAqIEBwYXJhbSBzZXJ2aWNlTmFtZSBUaGUgbmFtZSBvZiB0aGUgc2VydmljZSAoZS5nLiwgJ2FsYicsICdjbG91ZGZyb250JywgJ3MzJylcbiAgICogQHBhcmFtIHJlc291cmNlTmFtZSBPcHRpb25hbCByZXNvdXJjZSBuYW1lIGZvciBmdXJ0aGVyIG9yZ2FuaXphdGlvblxuICAgKiBAcmV0dXJucyBUaGUgUzMgVVJJIGZvciB0aGUgc2VydmljZSdzIGFjY2VzcyBsb2dzXG4gICAqL1xuICBwdWJsaWMgZ2V0TG9nVXJpKHNlcnZpY2VOYW1lOiBzdHJpbmcsIHJlc291cmNlTmFtZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBzMzovLyR7dGhpcy5nZXRMb2dQYXRoKHNlcnZpY2VOYW1lLCByZXNvdXJjZU5hbWUpfWA7XG4gIH1cbn1cbiJdfQ==
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjZXNzLWxvZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3VzZS1jYXNlcy9mcmFtZXdvcmsvZm91bmRhdGlvbi9hY2Nlc3MtbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxRUFBcUU7QUFDckUsc0NBQXNDO0FBQ3RDLGlEQUFtQztBQUNuQyx5REFBMkM7QUFDM0MsdURBQXlDO0FBQ3pDLDJDQUF1QztBQStCdkM7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQWEsU0FBVSxTQUFRLHNCQUFTOztJQUN0Qzs7T0FFRztJQUNhLE1BQU0sQ0FBWTtJQUVsQzs7T0FFRztJQUNhLFVBQVUsQ0FBUztJQUVuQzs7T0FFRztJQUNhLFlBQVksQ0FBUztJQUVyQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXdCLEVBQUU7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQiwwQkFBMEI7UUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxJQUFJLGFBQWEsQ0FBQztRQUV4RCx5RUFBeUU7UUFDekUsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQzdDLE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQztRQUN6QyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsVUFBVSxJQUFJLGFBQWEsQ0FBQztRQUNuRCxJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsUUFBUSxJQUFJLFNBQVMsSUFBSSxNQUFNLEVBQUUsQ0FBQztRQUV2RCwwQkFBMEI7UUFDMUIsTUFBTSxxQkFBcUIsR0FBdUI7WUFDaEQ7Z0JBQ0UsRUFBRSxFQUFFLG9CQUFvQjtnQkFDeEIsT0FBTyxF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O0lBRUQ7Ozs7OztPQU1HO0lBQ0ksU0FBUyxDQUFDLFdBQW1CLEVBQUUsWUFBcUI7UUFDekQsT0FBTyxRQUFRLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxFQUFFLENBQUM7SUFDOUQsQ0FBQzs7QUFwSEgsOEJBcUhDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIHMzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSBBY2Nlc3NMb2cgY29uc3RydWN0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWNjZXNzTG9nUHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIFMzIGJ1Y2tldCBmb3IgYWNjZXNzIGxvZ3NcbiAgICogQGRlZmF1bHQgJ2FjY2Vzcy1sb2dzJ1xuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogTGlmZWN5Y2xlIHJ1bGVzIGZvciB0aGUgYWNjZXNzIGxvZ3NcbiAgICogQGRlZmF1bHQgVHJhbnNpdGlvbiB0byBJQSBhZnRlciAzMCBkYXlzLCBkZWxldGUgYWZ0ZXIgOTAgZGF5c1xuICAgKi9cbiAgcmVhZG9ubHkgbGlmZWN5Y2xlUnVsZXM/OiBzMy5MaWZlY3ljbGVSdWxlW107XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZW5hYmxlIHZlcnNpb25pbmcgb24gdGhlIGFjY2VzcyBsb2dzIGJ1Y2tldFxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbmVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ3VzdG9tIGJ1Y2tldCBwcmVmaXggZm9yIG9yZ2FuaXppbmcgYWNjZXNzIGxvZ3NcbiAgICogQGRlZmF1bHQgJ2FjY2Vzcy1sb2dzJ1xuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0UHJlZml4Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFjY2Vzc0xvZyBjb25zdHJ1Y3QgdGhhdCBwcm92aWRlcyBhIGNlbnRyYWxpemVkIFMzIGJ1Y2tldCBmb3Igc3RvcmluZyBhY2Nlc3MgbG9ncy5cbiAqIFRoaXMgY29uc3RydWN0IGNyZWF0ZXMgYSBzZWN1cmUgUzMgYnVja2V0IHdpdGggYXBwcm9wcmlhdGUgcG9saWNpZXMgZm9yIEFXUyBzZXJ2aWNlc1xuICogdG8gZGVsaXZlciBhY2Nlc3MgbG9ncy5cbiAqXG4gKiBVc2FnZTpcbiAqXG4gKiBjb25zdCBhY2Nlc3NMb2cgPSBuZXcgQWNjZXNzTG9nKHRoaXMsICdBY2Nlc3NMb2cnKTtcbiAqIGNvbnN0IGJ1Y2tldCA9IGFjY2Vzc0xvZy5idWNrZXQ7XG4gKiBjb25zdCBidWNrZXROYW1lID0gYWNjZXNzTG9nLmJ1Y2tldE5hbWU7XG4gKi9cbmV4cG9ydCBjbGFzcyBBY2Nlc3NMb2cgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogVGhlIFMzIGJ1Y2tldCBmb3Igc3RvcmluZyBhY2Nlc3MgbG9nc1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGJ1Y2tldDogczMuQnVja2V0O1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgUzMgYnVja2V0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYnVja2V0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVja2V0IHByZWZpeCB1c2VkIGZvciBvcmdhbml6aW5nIGFjY2VzcyBsb2dzXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYnVja2V0UHJlZml4OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFjY2Vzc0xvZ1Byb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgLy8gU3RvcmUgdGhlIGJ1Y2tldCBwcmVmaXhcbiAgICB0aGlzLmJ1Y2tldFByZWZpeCA9IHByb3BzLmJ1Y2tldFByZWZpeCB8fCAnYWNjZXNzLWxvZ3MnO1xuXG4gICAgLy8gR2VuZXJhdGUgdW5pcXVlIGJ1Y2tldCBuYW1lIHdpdGggYWNjb3VudCBhbmQgcmVnaW9uIHRvIGF2b2lkIGNvbmZsaWN0c1xuICAgIGNvbnN0IGFjY291bnRJZCA9IGNkay5TdGFjay5vZih0aGlzKS5hY2NvdW50O1xuICAgIGNvbnN0IHJlZ2lvbiA9IGNkay5TdGFjay5vZih0aGlzKS5yZWdpb247XG4gICAgY29uc3QgYmFzZU5hbWUgPSBwcm9wcy5idWNrZXROYW1lIHx8ICdhY2Nlc3MtbG9ncyc7XG4gICAgdGhpcy5idWNrZXROYW1lID0gYCR7YmFzZU5hbWV9LSR7YWNjb3VudElkfS0ke3JlZ2lvbn1gO1xuXG4gICAgLy8gRGVmYXVsdCBsaWZlY3ljbGUgcnVsZXNcbiAgICBjb25zdCBkZWZhdWx0TGlmZWN5Y2xlUnVsZXM6IHMzLkxpZmVjeWNsZVJ1bGVbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdBY2Nlc3NMb2dMaWZlY3ljbGUnLFxuICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICB0cmFuc2l0aW9uczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHN0b3JhZ2VDbGFzczogczMuU3RvcmFnZUNsYXNzLklORlJFUVVFTlRfQUNDRVNTLFxuICAgICAgICAgICAgdHJhbnNpdGlvbkFmdGVyOiBjZGsuRHVyYXRpb24uZGF5cygzMCksXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBzdG9yYWdlQ2xhc3M6IHMzLlN0b3JhZ2VDbGFzcy5HTEFDSUVSLFxuICAgICAgICAgICAgdHJhbnNpdGlvbkFmdGVyOiBjZGsuRHVyYXRpb24uZGF5cyg5MCksXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZXhwaXJhdGlvbjogY2RrLkR1cmF0aW9uLmRheXMoMzY1KSwgLy8gRGVsZXRlIGFmdGVyIDEgeWVhclxuICAgICAgfSxcbiAgICBdO1xuXG4gICAgLy8gQ3JlYXRlIHRoZSBTMyBidWNrZXQgZm9yIGFjY2VzcyBsb2dzXG4gICAgdGhpcy5idWNrZXQgPSBuZXcgczMuQnVja2V0KHRoaXMsICdBY2Nlc3NMb2dCdWNrZXQnLCB7XG4gICAgICBidWNrZXROYW1lOiB0aGlzLmJ1Y2tldE5hbWUsXG4gICAgICBlbmNyeXB0aW9uOiBzMy5CdWNrZXRFbmNyeXB0aW9uLlMzX01BTkFHRUQsXG4gICAgICB2ZXJzaW9uZWQ6IHByb3BzLnZlcnNpb25lZCB8fCBmYWxzZSxcbiAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBzMy5CbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgICBsaWZlY3ljbGVSdWxlczogcHJvcHMubGlmZWN5Y2xlUnVsZXMgfHwgZGVmYXVsdExpZmVjeWNsZVJ1bGVzLFxuICAgICAgcmVtb3ZhbFBvbGljeTogY2RrLlJlbW92YWxQb2xpY3kuUkVUQUlOLCAvLyBSZXRhaW4gbG9ncyBmb3IgY29tcGxpYW5jZVxuICAgICAgZW5mb3JjZVNTTDogdHJ1ZSwgLy8gRW5mb3JjZSBTU0wgZm9yIGFsbCByZXF1ZXN0c1xuICAgICAgZXZlbnRCcmlkZ2VFbmFibGVkOiBmYWxzZSwgLy8gRGlzYWJsZSBFdmVudEJyaWRnZSBmb3IgY29zdCBvcHRpbWl6YXRpb25cbiAgICB9KTtcblxuICAgIC8vIEFkZCBidWNrZXQgcG9saWN5IHRvIGFsbG93IGFjY2VzcyBsb2cgZGVsaXZlcnkgZnJvbSBBV1Mgc2VydmljZXNcbiAgICB0aGlzLmJ1Y2tldC5hZGRUb1Jlc291cmNlUG9saWN5KG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgIHNpZDogJ0FsbG93QWNjZXNzTG9nRGVsaXZlcnknLFxuICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgcHJpbmNpcGFsczogW1xuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2xvZ2dpbmcuczMuYW1hem9uYXdzLmNvbScpLFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2RlbGl2ZXJ5LmxvZ3MuYW1hem9uYXdzLmNvbScpLFxuICAgICAgXSxcbiAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgJ3MzOlB1dE9iamVjdCcsXG4gICAgICAgICdzMzpHZXRCdWNrZXRBY2wnLFxuICAgICAgICAnczM6TGlzdEJ1Y2tldCcsXG4gICAgICBdLFxuICAgICAgcmVzb3VyY2VzOiBbXG4gICAgICAgIHRoaXMuYnVja2V0LmJ1Y2tldEFybixcbiAgICAgICAgYCR7dGhpcy5idWNrZXQuYnVja2V0QXJufS8qYCxcbiAgICAgIF0sXG4gICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgIFN0cmluZ0VxdWFsczoge1xuICAgICAgICAgICdzMzp4LWFtei1hY2wnOiAnYnVja2V0LW93bmVyLWZ1bGwtY29udHJvbCcsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pKTtcblxuICAgIC8vIEFsbG93IEVMQiBzZXJ2aWNlIHRvIHdyaXRlIGFjY2VzcyBsb2dzXG4gICAgdGhpcy5idWNrZXQuYWRkVG9SZXNvdXJjZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICBzaWQ6ICdBbGxvd0VMQkFjY2Vzc0xvZ0RlbGl2ZXJ5JyxcbiAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgIHByaW5jaXBhbHM6IFtcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdlbGFzdGljbG9hZGJhbGFuY2luZy5hbWF6b25hd3MuY29tJyksXG4gICAgICBdLFxuICAgICAgYWN0aW9uczogWydzMzpQdXRPYmplY3QnXSxcbiAgICAgIHJlc291cmNlczogW2Ake3RoaXMuYnVja2V0LmJ1Y2tldEFybn0vKmBdLFxuICAgIH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIFMzIGJ1Y2tldCBwYXRoIGZvciBhIHNwZWNpZmljIHNlcnZpY2UncyBhY2Nlc3MgbG9nc1xuICAgKlxuICAgKiBAcGFyYW0gc2VydmljZU5hbWUgVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgKGUuZy4sICdhbGInLCAnY2xvdWRmcm9udCcsICdzMycpXG4gICAqIEBwYXJhbSByZXNvdXJjZU5hbWUgT3B0aW9uYWwgcmVzb3VyY2UgbmFtZSBmb3IgZnVydGhlciBvcmdhbml6YXRpb25cbiAgICogQHJldHVybnMgVGhlIFMzIHBhdGggZm9yIHRoZSBzZXJ2aWNlJ3MgYWNjZXNzIGxvZ3NcbiAgICovXG4gIHB1YmxpYyBnZXRMb2dQYXRoKHNlcnZpY2VOYW1lOiBzdHJpbmcsIHJlc291cmNlTmFtZT86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgYmFzZVBhdGggPSBgJHt0aGlzLmJ1Y2tldE5hbWV9LyR7dGhpcy5idWNrZXRQcmVmaXh9LyR7c2VydmljZU5hbWV9YDtcbiAgICByZXR1cm4gcmVzb3VyY2VOYW1lID8gYCR7YmFzZVBhdGh9LyR7cmVzb3VyY2VOYW1lfWAgOiBiYXNlUGF0aDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIFMzIFVSSSBmb3IgYSBzcGVjaWZpYyBzZXJ2aWNlJ3MgYWNjZXNzIGxvZ3NcbiAgICpcbiAgICogQHBhcmFtIHNlcnZpY2VOYW1lIFRoZSBuYW1lIG9mIHRoZSBzZXJ2aWNlIChlLmcuLCAnYWxiJywgJ2Nsb3VkZnJvbnQnLCAnczMnKVxuICAgKiBAcGFyYW0gcmVzb3VyY2VOYW1lIE9wdGlvbmFsIHJlc291cmNlIG5hbWUgZm9yIGZ1cnRoZXIgb3JnYW5pemF0aW9uXG4gICAqIEByZXR1cm5zIFRoZSBTMyBVUkkgZm9yIHRoZSBzZXJ2aWNlJ3MgYWNjZXNzIGxvZ3NcbiAgICovXG4gIHB1YmxpYyBnZXRMb2dVcmkoc2VydmljZU5hbWU6IHN0cmluZywgcmVzb3VyY2VOYW1lPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHMzOi8vJHt0aGlzLmdldExvZ1BhdGgoc2VydmljZU5hbWUsIHJlc291cmNlTmFtZSl9YDtcbiAgfVxufVxuIl19
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.EventbridgeBroker = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -10,6 +9,10 @@ const aws_stepfunctions_1 = require("aws-cdk-lib/aws-stepfunctions");
10
9
  const aws_stepfunctions_tasks_1 = require("aws-cdk-lib/aws-stepfunctions-tasks");
11
10
  const constructs_1 = require("constructs");
12
11
  class EventbridgeBroker extends constructs_1.Construct {
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBroker", version: "1.17.1" };
13
+ eventSource;
14
+ eventbus;
15
+ kmsKey;
13
16
  constructor(scope, id, props) {
14
17
  super(scope, id);
15
18
  const removalPolicy = props.removalPolicy || aws_cdk_lib_1.RemovalPolicy.DESTROY;
@@ -37,6 +40,4 @@ class EventbridgeBroker extends constructs_1.Construct {
37
40
  }
38
41
  }
39
42
  exports.EventbridgeBroker = EventbridgeBroker;
40
- _a = JSII_RTTI_SYMBOL_1;
41
- EventbridgeBroker[_a] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.EventbridgeBroker", version: "1.17.0" };
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRicmlkZ2UtYnJva2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdXNlLWNhc2VzL2ZyYW1ld29yay9mb3VuZGF0aW9uL2V2ZW50YnJpZGdlLWJyb2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE0QztBQUM1Qyx1REFBa0Q7QUFDbEQsaURBQTBDO0FBQzFDLHFFQUEwRDtBQUMxRCxpRkFBMkU7QUFDM0UsMkNBQXVDO0FBU3ZDLE1BQWEsaUJBQWtCLFNBQVEsc0JBQVM7SUFLOUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE2QjtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLElBQUksMkJBQWEsQ0FBQyxPQUFPLENBQUM7UUFDbkUsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksYUFBRyxDQUFDLElBQUksRUFBRSxtQkFBbUIsRUFBRTtZQUMvRCxpQkFBaUIsRUFBRSxJQUFJO1lBQ3ZCLGFBQWE7U0FDZCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkscUJBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzdDLFlBQVksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxlQUFlLENBQUMsVUFBa0IsRUFBRSxXQUFnQjtRQUN6RCxPQUFPLElBQUksOENBQW9CLENBQUMsSUFBSSxFQUFFLHNCQUFzQixVQUFVLEVBQUUsRUFBRTtZQUN4RSxPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUN2QixNQUFNLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQ3hCLFVBQVU7b0JBQ1YsTUFBTSxFQUFFLDZCQUFTLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQztpQkFDMUM7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBL0JILDhDQWdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBFdmVudEJ1cyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMnO1xuaW1wb3J0IHsgS2V5IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWttcyc7XG5pbXBvcnQgeyBUYXNrSW5wdXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucyc7XG5pbXBvcnQgeyBFdmVudEJyaWRnZVB1dEV2ZW50cyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zdGVwZnVuY3Rpb25zLXRhc2tzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50YnJpZGdlQnJva2VyUHJvcHMge1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBldmVudFNvdXJjZTogc3RyaW5nO1xuICByZWFkb25seSBrbXNLZXk/OiBLZXk7XG4gIHJlYWRvbmx5IHJlbW92YWxQb2xpY3k/OiBSZW1vdmFsUG9saWN5O1xufVxuXG5leHBvcnQgY2xhc3MgRXZlbnRicmlkZ2VCcm9rZXIgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50U291cmNlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGV2ZW50YnVzOiBFdmVudEJ1cztcbiAgcmVhZG9ubHkga21zS2V5OiBLZXk7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEV2ZW50YnJpZGdlQnJva2VyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IHJlbW92YWxQb2xpY3kgPSBwcm9wcy5yZW1vdmFsUG9saWN5IHx8IFJlbW92YWxQb2xpY3kuREVTVFJPWTtcbiAgICB0aGlzLmttc0tleSA9IHByb3BzLmttc0tleSB8fCBuZXcgS2V5KHRoaXMsICdFdmVudEJyb2tlcktNU0tleScsIHtcbiAgICAgIGVuYWJsZUtleVJvdGF0aW9uOiB0cnVlLFxuICAgICAgcmVtb3ZhbFBvbGljeSxcbiAgICB9KTtcbiAgICB0aGlzLmV2ZW50YnVzID0gbmV3IEV2ZW50QnVzKHRoaXMsICdFdmVudEJ1cycsIHtcbiAgICAgIGV2ZW50QnVzTmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGttc0tleTogdGhpcy5rbXNLZXksXG4gICAgfSk7XG5cbiAgICB0aGlzLmV2ZW50U291cmNlID0gcHJvcHMuZXZlbnRTb3VyY2U7XG4gIH1cblxuICBwdWJsaWMgc2VuZFZpYVNmbkNoYWluKGRldGFpbFR5cGU6IHN0cmluZywgZXZlbnREZXRhaWw6IGFueSkge1xuICAgIHJldHVybiBuZXcgRXZlbnRCcmlkZ2VQdXRFdmVudHModGhpcywgYFNmbkViUHV0RXZlbnRDaGFpbi0ke2RldGFpbFR5cGV9YCwge1xuICAgICAgZW50cmllczogW1xuICAgICAgICB7XG4gICAgICAgICAgZXZlbnRCdXM6IHRoaXMuZXZlbnRidXMsXG4gICAgICAgICAgc291cmNlOiB0aGlzLmV2ZW50U291cmNlLFxuICAgICAgICAgIGRldGFpbFR5cGUsXG4gICAgICAgICAgZGV0YWlsOiBUYXNrSW5wdXQuZnJvbU9iamVjdChldmVudERldGFpbCksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG59Il19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRicmlkZ2UtYnJva2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdXNlLWNhc2VzL2ZyYW1ld29yay9mb3VuZGF0aW9uL2V2ZW50YnJpZGdlLWJyb2tlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsNkNBQTRDO0FBQzVDLHVEQUFrRDtBQUNsRCxpREFBMEM7QUFDMUMscUVBQTBEO0FBQzFELGlGQUEyRTtBQUMzRSwyQ0FBdUM7QUFTdkMsTUFBYSxpQkFBa0IsU0FBUSxzQkFBUzs7SUFDN0IsV0FBVyxDQUFTO0lBQzVCLFFBQVEsQ0FBVztJQUNuQixNQUFNLENBQU07SUFFckIsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE2QjtRQUNyRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxhQUFhLElBQUksMkJBQWEsQ0FBQyxPQUFPLENBQUM7UUFDbkUsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxJQUFJLElBQUksYUFBRyxDQUFDLElBQUksRUFBRSxtQkFBbUIsRUFBRTtZQUMvRCxpQkFBaUIsRUFBRSxJQUFJO1lBQ3ZCLGFBQWE7U0FDZCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkscUJBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzdDLFlBQVksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUN4QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxlQUFlLENBQUMsVUFBa0IsRUFBRSxXQUFnQjtRQUN6RCxPQUFPLElBQUksOENBQW9CLENBQUMsSUFBSSxFQUFFLHNCQUFzQixVQUFVLEVBQUUsRUFBRTtZQUN4RSxPQUFPLEVBQUU7Z0JBQ1A7b0JBQ0UsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUN2QixNQUFNLEVBQUUsSUFBSSxDQUFDLFdBQVc7b0JBQ3hCLFVBQVU7b0JBQ1YsTUFBTSxFQUFFLDZCQUFTLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQztpQkFDMUM7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBL0JILDhDQWdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBFdmVudEJ1cyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMnO1xuaW1wb3J0IHsgS2V5IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWttcyc7XG5pbXBvcnQgeyBUYXNrSW5wdXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9ucyc7XG5pbXBvcnQgeyBFdmVudEJyaWRnZVB1dEV2ZW50cyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zdGVwZnVuY3Rpb25zLXRhc2tzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50YnJpZGdlQnJva2VyUHJvcHMge1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBldmVudFNvdXJjZTogc3RyaW5nO1xuICByZWFkb25seSBrbXNLZXk/OiBLZXk7XG4gIHJlYWRvbmx5IHJlbW92YWxQb2xpY3k/OiBSZW1vdmFsUG9saWN5O1xufVxuXG5leHBvcnQgY2xhc3MgRXZlbnRicmlkZ2VCcm9rZXIgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IGV2ZW50U291cmNlOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGV2ZW50YnVzOiBFdmVudEJ1cztcbiAgcmVhZG9ubHkga21zS2V5OiBLZXk7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEV2ZW50YnJpZGdlQnJva2VyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IHJlbW92YWxQb2xpY3kgPSBwcm9wcy5yZW1vdmFsUG9saWN5IHx8IFJlbW92YWxQb2xpY3kuREVTVFJPWTtcbiAgICB0aGlzLmttc0tleSA9IHByb3BzLmttc0tleSB8fCBuZXcgS2V5KHRoaXMsICdFdmVudEJyb2tlcktNU0tleScsIHtcbiAgICAgIGVuYWJsZUtleVJvdGF0aW9uOiB0cnVlLFxuICAgICAgcmVtb3ZhbFBvbGljeSxcbiAgICB9KTtcbiAgICB0aGlzLmV2ZW50YnVzID0gbmV3IEV2ZW50QnVzKHRoaXMsICdFdmVudEJ1cycsIHtcbiAgICAgIGV2ZW50QnVzTmFtZTogcHJvcHMubmFtZSxcbiAgICAgIGttc0tleTogdGhpcy5rbXNLZXksXG4gICAgfSk7XG5cbiAgICB0aGlzLmV2ZW50U291cmNlID0gcHJvcHMuZXZlbnRTb3VyY2U7XG4gIH1cblxuICBwdWJsaWMgc2VuZFZpYVNmbkNoYWluKGRldGFpbFR5cGU6IHN0cmluZywgZXZlbnREZXRhaWw6IGFueSkge1xuICAgIHJldHVybiBuZXcgRXZlbnRCcmlkZ2VQdXRFdmVudHModGhpcywgYFNmbkViUHV0RXZlbnRDaGFpbi0ke2RldGFpbFR5cGV9YCwge1xuICAgICAgZW50cmllczogW1xuICAgICAgICB7XG4gICAgICAgICAgZXZlbnRCdXM6IHRoaXMuZXZlbnRidXMsXG4gICAgICAgICAgc291cmNlOiB0aGlzLmV2ZW50U291cmNlLFxuICAgICAgICAgIGRldGFpbFR5cGUsXG4gICAgICAgICAgZGV0YWlsOiBUYXNrSW5wdXQuZnJvbU9iamVjdChldmVudERldGFpbCksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG59Il19
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.Network = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -8,12 +7,15 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
8
7
  const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
9
8
  const constructs_1 = require("constructs");
10
9
  class Network extends constructs_1.Construct {
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.Network", version: "1.17.1" };
11
11
  static useExistingVPCFromLookup(scope, id, options) {
12
12
  const vpc = aws_ec2_1.Vpc.fromLookup(scope, `${id}-existingVpc`, options);
13
13
  return new Network(scope, id, {
14
14
  existingVpc: vpc,
15
15
  });
16
16
  }
17
+ vpc;
18
+ props;
17
19
  constructor(scope, id, props = {}) {
18
20
  super(scope, id);
19
21
  this.props = props;
@@ -94,6 +96,4 @@ class Network extends constructs_1.Construct {
94
96
  }
95
97
  }
96
98
  exports.Network = Network;
97
- _a = JSII_RTTI_SYMBOL_1;
98
- Network[_a] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.Network", version: "1.17.0" };
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3VzZS1jYXNlcy9mcmFtZXdvcmsvZm91bmRhdGlvbi9uZXR3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEscUVBQXFFO0FBQ3JFLHNDQUFzQztBQUN0QyxpREFBK1M7QUFDL1MsMkNBQXVDO0FBY3ZDLE1BQWEsT0FBUSxTQUFRLHNCQUFTO0lBQzdCLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUF5QjtRQUM1RixNQUFNLEdBQUcsR0FBRyxhQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWhFLE9BQU8sSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUM1QixXQUFXLEVBQUUsR0FBRztTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBS0QsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUFzQixFQUFFO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN2QixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLGFBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFO29CQUM5QixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVcsSUFBSSxxQkFBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7b0JBQ2pFLFdBQVcsRUFBRSxDQUFDO29CQUNkLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtvQkFDcEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO29CQUN0QixtQkFBbUIsRUFBRSxLQUFLLENBQUMsbUJBQW1C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OztBQTlGSCwwQkErRkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5pbXBvcnQgeyBHYXRld2F5VnBjRW5kcG9pbnRBd3NTZXJ2aWNlLCBJSXBBZGRyZXNzZXMsIEludGVyZmFjZVZwY0VuZHBvaW50LCBJbnRlcmZhY2VWcGNFbmRwb2ludEF3c1NlcnZpY2UsIEludGVyZmFjZVZwY0VuZHBvaW50U2VydmljZSwgSXBBZGRyZXNzZXMsIElQZWVyLCBJVnBjLCBOYXRQcm92aWRlciwgUGVlciwgUG9ydCwgU2VjdXJpdHlHcm91cCwgU3VibmV0Q29uZmlndXJhdGlvbiwgU3VibmV0U2VsZWN0aW9uLCBTdWJuZXRUeXBlLCBWcGMsIFZwY0xvb2t1cE9wdGlvbnMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5ldHdvcmtQcm9wcyB7XG4gIHJlYWRvbmx5IGV4aXN0aW5nVnBjPzogSVZwYztcbiAgcmVhZG9ubHkgcHJpdmF0ZT86IGJvb2xlYW47XG4gIHJlYWRvbmx5IGlwQWRkcmVzc2VzPzogSUlwQWRkcmVzc2VzO1xuICByZWFkb25seSBuYXRHYXRld2F5UHJvdmlkZXI/OiBOYXRQcm92aWRlcjtcbiAgcmVhZG9ubHkgbmF0R2F0ZXdheVN1Ym5ldHM/OiBTdWJuZXRTZWxlY3Rpb247XG4gIHJlYWRvbmx5IG5hdEdhdGV3YXlzPzogbnVtYmVyO1xuICByZWFkb25seSBtYXhBenM/OiBudW1iZXI7XG4gIHJlYWRvbmx5IHZwY05hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHN1Ym5ldENvbmZpZ3VyYXRpb24/OiBTdWJuZXRDb25maWd1cmF0aW9uW107XG59XG5cbmV4cG9ydCBjbGFzcyBOZXR3b3JrIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHVibGljIHN0YXRpYyB1c2VFeGlzdGluZ1ZQQ0Zyb21Mb29rdXAoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgb3B0aW9uczogVnBjTG9va3VwT3B0aW9ucyk6IE5ldHdvcmsge1xuICAgIGNvbnN0IHZwYyA9IFZwYy5mcm9tTG9va3VwKHNjb3BlLCBgJHtpZH0tZXhpc3RpbmdWcGNgLCBvcHRpb25zKTtcblxuICAgIHJldHVybiBuZXcgTmV0d29yayhzY29wZSwgaWQsIHtcbiAgICAgIGV4aXN0aW5nVnBjOiB2cGMsXG4gICAgfSk7XG4gIH1cblxuICByZWFkb25seSB2cGM6IElWcGM7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IE5ldHdvcmtQcm9wcztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV0d29ya1Byb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIGlmICghcHJvcHMuZXhpc3RpbmdWcGMpIHtcbiAgICAgIGlmIChwcm9wcy5wcml2YXRlKSB7XG4gICAgICAgIHRoaXMudnBjID0gbmV3IFZwYyh0aGlzLCAnVlBDJywge1xuICAgICAgICAgIGlwQWRkcmVzc2VzOiBwcm9wcy5pcEFkZHJlc3NlcyB8fCBJcEFkZHJlc3Nlcy5jaWRyKCcxMC4wLjAuMC8xNicpLFxuICAgICAgICAgIG5hdEdhdGV3YXlzOiAwLFxuICAgICAgICAgIG1heEF6czogcHJvcHMubWF4QXpzLFxuICAgICAgICAgIHZwY05hbWU6IHByb3BzLnZwY05hbWUsXG4gICAgICAgICAgc3VibmV0Q29uZmlndXJhdGlvbjogcHJvcHMuc3VibmV0Q29uZmlndXJhdGlvbiB8fCBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdJc29sYXRlZCcsXG4gICAgICAgICAgICAgIHN1Ym5ldFR5cGU6IFN1Ym5ldFR5cGUuUFJJVkFURV9JU09MQVRFRCxcbiAgICAgICAgICAgICAgY2lkck1hc2s6IDI0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudnBjID0gbmV3IFZwYyh0aGlzLCAnVlBDJywge1xuICAgICAgICAgIGlwQWRkcmVzc2VzOiBwcm9wcy5pcEFkZHJlc3NlcyB8fCBJcEFkZHJlc3Nlcy5jaWRyKCcxMC4wLjAuMC8xNicpLFxuICAgICAgICAgIG5hdEdhdGV3YXlQcm92aWRlcjogcHJvcHMubmF0R2F0ZXdheVByb3ZpZGVyLFxuICAgICAgICAgIG5hdEdhdGV3YXlTdWJuZXRzOiBwcm9wcy5uYXRHYXRld2F5U3VibmV0cyxcbiAgICAgICAgICBuYXRHYXRld2F5czogcHJvcHMubmF0R2F0ZXdheXMgfHwgMSxcbiAgICAgICAgICBtYXhBenM6IHByb3BzLm1heEF6cyxcbiAgICAgICAgICB2cGNOYW1lOiBwcm9wcy52cGNOYW1lLFxuICAgICAgICAgIHN1Ym5ldENvbmZpZ3VyYXRpb246IHByb3BzLnN1Ym5ldENvbmZpZ3VyYXRpb24gfHwgW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnUHVibGljJyxcbiAgICAgICAgICAgICAgc3VibmV0VHlwZTogU3VibmV0VHlwZS5QVUJMSUMsXG4gICAgICAgICAgICAgIGNpZHJNYXNrOiAyNCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG5hbWU6ICdQcml2YXRlJyxcbiAgICAgICAgICAgICAgc3VibmV0VHlwZTogU3VibmV0VHlwZS5QUklWQVRFX1dJVEhfRUdSRVNTLFxuICAgICAgICAgICAgICBjaWRyTWFzazogMjQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnSXNvbGF0ZWQnLFxuICAgICAgICAgICAgICBzdWJuZXRUeXBlOiBTdWJuZXRUeXBlLlBSSVZBVEVfSVNPTEFURUQsXG4gICAgICAgICAgICAgIGNpZHJNYXNrOiAyNCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudnBjID0gcHJvcHMuZXhpc3RpbmdWcGM7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNyZWF0ZVNlcnZpY2VFbmRwb2ludChpZDogc3RyaW5nLCBzZXJ2aWNlOiBJbnRlcmZhY2VWcGNFbmRwb2ludFNlcnZpY2UsIHBlZXI/OiBJUGVlciwgcHJpdmF0ZURuc0VuYWJsZWQ/OiBib29sZWFuKTogSW50ZXJmYWNlVnBjRW5kcG9pbnQge1xuICAgIGlmIChzZXJ2aWNlID09PSBJbnRlcmZhY2VWcGNFbmRwb2ludEF3c1NlcnZpY2UuUzMpIHtcbiAgICAgIHRoaXMudnBjLmFkZEdhdGV3YXlFbmRwb2ludChgJHtpZH0tZ2F0ZXdheWAsIHtcbiAgICAgICAgc2VydmljZTogR2F0ZXdheVZwY0VuZHBvaW50QXdzU2VydmljZS5TMyxcbiAgICAgICAgc3VibmV0czogW3RoaXMuYXBwbGljYXRpb25TdWJuZXRTZWxlY3Rpb24oKV0sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBzZWN1cml0eUdyb3VwID0gbmV3IFNlY3VyaXR5R3JvdXAodGhpcywgYHNnLWZvci1pbnRlcmZhY2UtZW5kcG9pbnQtJHtpZH1gLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgIH0pO1xuXG4gICAgc2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShwZWVyIHx8IFBlZXIuYW55SXB2NCgpLCBQb3J0LkhUVFBTKTtcblxuICAgIC8vIERlZmF1bHQgdG8gdHJ1ZSBmb3IgcHJpdmF0ZSBWUENzIChpc29sYXRlZCBzdWJuZXRzIGhhdmUgbm8gaW50ZXJuZXRcbiAgICAvLyBhY2Nlc3MsIHNvIHByaXZhdGUgRE5TIGlzIHJlcXVpcmVkIGZvciBBV1MgU0RLIGNhbGxzIHRvIHJlc29sdmUgdG9cbiAgICAvLyB0aGUgVlBDIGVuZHBvaW50KSwgZmFsc2Ugb3RoZXJ3aXNlIHRvIHByZXNlcnZlIGV4aXN0aW5nIGJlaGF2aW91ci5cbiAgICBjb25zdCBlbmFibGVQcml2YXRlRG5zID0gcHJpdmF0ZURuc0VuYWJsZWQgPz8gISF0aGlzLnByb3BzLnByaXZhdGU7XG5cbiAgICByZXR1cm4gdGhpcy52cGMuYWRkSW50ZXJmYWNlRW5kcG9pbnQoYGludGVyZmFjZS1lbmRwb2ludC1mb3ItJHtpZH1gLCB7XG4gICAgICBzZXJ2aWNlLFxuICAgICAgc2VjdXJpdHlHcm91cHM6IFtzZWN1cml0eUdyb3VwXSxcbiAgICAgIHN1Ym5ldHM6IHRoaXMuYXBwbGljYXRpb25TdWJuZXRTZWxlY3Rpb24oKSxcbiAgICAgIHByaXZhdGVEbnNFbmFibGVkOiBlbmFibGVQcml2YXRlRG5zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFwcGxpY2F0aW9uU3VibmV0U2VsZWN0aW9uKCk6IFN1Ym5ldFNlbGVjdGlvbiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHN1Ym5ldFR5cGU6IHRoaXMucHJvcHMucHJpdmF0ZSA/IFN1Ym5ldFR5cGUuUFJJVkFURV9JU09MQVRFRCA6IFN1Ym5ldFR5cGUuUFJJVkFURV9XSVRIX0VHUkVTUyxcbiAgICB9O1xuICB9XG59Il19
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3VzZS1jYXNlcy9mcmFtZXdvcmsvZm91bmRhdGlvbi9uZXR3b3JrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxxRUFBcUU7QUFDckUsc0NBQXNDO0FBQ3RDLGlEQUErUztBQUMvUywyQ0FBdUM7QUFjdkMsTUFBYSxPQUFRLFNBQVEsc0JBQVM7O0lBQzdCLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUF5QjtRQUM1RixNQUFNLEdBQUcsR0FBRyxhQUFHLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWhFLE9BQU8sSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUM1QixXQUFXLEVBQUUsR0FBRztTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRVEsR0FBRyxDQUFPO0lBQ0YsS0FBSyxDQUFlO0lBRXJDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsUUFBc0IsRUFBRTtRQUNoRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdkIsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxhQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtvQkFDOUIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXLElBQUkscUJBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO29CQUNqRSxXQUFXLEVBQUUsQ0FBQztvQkFDZCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07b0JBQ3BCLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztvQkFD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QUFDLG1CQUFtQjtTQUM5RixDQUFDO0lBQ0osQ0FBQzs7QUE5RkgsMEJBK0ZDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuaW1wb3J0IHsgR2F0ZXdheVZwY0VuZHBvaW50QXdzU2VydmljZSwgSUlwQWRkcmVzc2VzLCBJbnRlcmZhY2VWcGNFbmRwb2ludCwgSW50ZXJmYWNlVnBjRW5kcG9pbnRBd3NTZXJ2aWNlLCBJbnRlcmZhY2VWcGNFbmRwb2ludFNlcnZpY2UsIElwQWRkcmVzc2VzLCBJUGVlciwgSVZwYywgTmF0UHJvdmlkZXIsIFBlZXIsIFBvcnQsIFNlY3VyaXR5R3JvdXAsIFN1Ym5ldENvbmZpZ3VyYXRpb24sIFN1Ym5ldFNlbGVjdGlvbiwgU3VibmV0VHlwZSwgVnBjLCBWcGNMb29rdXBPcHRpb25zIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuZXhwb3J0IGludGVyZmFjZSBOZXR3b3JrUHJvcHMge1xuICByZWFkb25seSBleGlzdGluZ1ZwYz86IElWcGM7XG4gIHJlYWRvbmx5IHByaXZhdGU/OiBib29sZWFuO1xuICByZWFkb25seSBpcEFkZHJlc3Nlcz86IElJcEFkZHJlc3NlcztcbiAgcmVhZG9ubHkgbmF0R2F0ZXdheVByb3ZpZGVyPzogTmF0UHJvdmlkZXI7XG4gIHJlYWRvbmx5IG5hdEdhdGV3YXlTdWJuZXRzPzogU3VibmV0U2VsZWN0aW9uO1xuICByZWFkb25seSBuYXRHYXRld2F5cz86IG51bWJlcjtcbiAgcmVhZG9ubHkgbWF4QXpzPzogbnVtYmVyO1xuICByZWFkb25seSB2cGNOYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBzdWJuZXRDb25maWd1cmF0aW9uPzogU3VibmV0Q29uZmlndXJhdGlvbltdO1xufVxuXG5leHBvcnQgY2xhc3MgTmV0d29yayBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyBzdGF0aWMgdXNlRXhpc3RpbmdWUENGcm9tTG9va3VwKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG9wdGlvbnM6IFZwY0xvb2t1cE9wdGlvbnMpOiBOZXR3b3JrIHtcbiAgICBjb25zdCB2cGMgPSBWcGMuZnJvbUxvb2t1cChzY29wZSwgYCR7aWR9LWV4aXN0aW5nVnBjYCwgb3B0aW9ucyk7XG5cbiAgICByZXR1cm4gbmV3IE5ldHdvcmsoc2NvcGUsIGlkLCB7XG4gICAgICBleGlzdGluZ1ZwYzogdnBjLFxuICAgIH0pO1xuICB9XG5cbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xuICBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBOZXR3b3JrUHJvcHM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE5ldHdvcmtQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICBpZiAoIXByb3BzLmV4aXN0aW5nVnBjKSB7XG4gICAgICBpZiAocHJvcHMucHJpdmF0ZSkge1xuICAgICAgICB0aGlzLnZwYyA9IG5ldyBWcGModGhpcywgJ1ZQQycsIHtcbiAgICAgICAgICBpcEFkZHJlc3NlczogcHJvcHMuaXBBZGRyZXNzZXMgfHwgSXBBZGRyZXNzZXMuY2lkcignMTAuMC4wLjAvMTYnKSxcbiAgICAgICAgICBuYXRHYXRld2F5czogMCxcbiAgICAgICAgICBtYXhBenM6IHByb3BzLm1heEF6cyxcbiAgICAgICAgICB2cGNOYW1lOiBwcm9wcy52cGNOYW1lLFxuICAgICAgICAgIHN1Ym5ldENvbmZpZ3VyYXRpb246IHByb3BzLnN1Ym5ldENvbmZpZ3VyYXRpb24gfHwgW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnSXNvbGF0ZWQnLFxuICAgICAgICAgICAgICBzdWJuZXRUeXBlOiBTdWJuZXRUeXBlLlBSSVZBVEVfSVNPTEFURUQsXG4gICAgICAgICAgICAgIGNpZHJNYXNrOiAyNCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZwYyA9IG5ldyBWcGModGhpcywgJ1ZQQycsIHtcbiAgICAgICAgICBpcEFkZHJlc3NlczogcHJvcHMuaXBBZGRyZXNzZXMgfHwgSXBBZGRyZXNzZXMuY2lkcignMTAuMC4wLjAvMTYnKSxcbiAgICAgICAgICBuYXRHYXRld2F5UHJvdmlkZXI6IHByb3BzLm5hdEdhdGV3YXlQcm92aWRlcixcbiAgICAgICAgICBuYXRHYXRld2F5U3VibmV0czogcHJvcHMubmF0R2F0ZXdheVN1Ym5ldHMsXG4gICAgICAgICAgbmF0R2F0ZXdheXM6IHByb3BzLm5hdEdhdGV3YXlzIHx8IDEsXG4gICAgICAgICAgbWF4QXpzOiBwcm9wcy5tYXhBenMsXG4gICAgICAgICAgdnBjTmFtZTogcHJvcHMudnBjTmFtZSxcbiAgICAgICAgICBzdWJuZXRDb25maWd1cmF0aW9uOiBwcm9wcy5zdWJuZXRDb25maWd1cmF0aW9uIHx8IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ1B1YmxpYycsXG4gICAgICAgICAgICAgIHN1Ym5ldFR5cGU6IFN1Ym5ldFR5cGUuUFVCTElDLFxuICAgICAgICAgICAgICBjaWRyTWFzazogMjQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnUHJpdmF0ZScsXG4gICAgICAgICAgICAgIHN1Ym5ldFR5cGU6IFN1Ym5ldFR5cGUuUFJJVkFURV9XSVRIX0VHUkVTUyxcbiAgICAgICAgICAgICAgY2lkck1hc2s6IDI0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ0lzb2xhdGVkJyxcbiAgICAgICAgICAgICAgc3VibmV0VHlwZTogU3VibmV0VHlwZS5QUklWQVRFX0lTT0xBVEVELFxuICAgICAgICAgICAgICBjaWRyTWFzazogMjQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZwYyA9IHByb3BzLmV4aXN0aW5nVnBjO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVTZXJ2aWNlRW5kcG9pbnQoaWQ6IHN0cmluZywgc2VydmljZTogSW50ZXJmYWNlVnBjRW5kcG9pbnRTZXJ2aWNlLCBwZWVyPzogSVBlZXIsIHByaXZhdGVEbnNFbmFibGVkPzogYm9vbGVhbik6IEludGVyZmFjZVZwY0VuZHBvaW50IHtcbiAgICBpZiAoc2VydmljZSA9PT0gSW50ZXJmYWNlVnBjRW5kcG9pbnRBd3NTZXJ2aWNlLlMzKSB7XG4gICAgICB0aGlzLnZwYy5hZGRHYXRld2F5RW5kcG9pbnQoYCR7aWR9LWdhdGV3YXlgLCB7XG4gICAgICAgIHNlcnZpY2U6IEdhdGV3YXlWcGNFbmRwb2ludEF3c1NlcnZpY2UuUzMsXG4gICAgICAgIHN1Ym5ldHM6IFt0aGlzLmFwcGxpY2F0aW9uU3VibmV0U2VsZWN0aW9uKCldLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VjdXJpdHlHcm91cCA9IG5ldyBTZWN1cml0eUdyb3VwKHRoaXMsIGBzZy1mb3ItaW50ZXJmYWNlLWVuZHBvaW50LSR7aWR9YCwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICB9KTtcblxuICAgIHNlY3VyaXR5R3JvdXAuYWRkSW5ncmVzc1J1bGUocGVlciB8fCBQZWVyLmFueUlwdjQoKSwgUG9ydC5IVFRQUyk7XG5cbiAgICAvLyBEZWZhdWx0IHRvIHRydWUgZm9yIHByaXZhdGUgVlBDcyAoaXNvbGF0ZWQgc3VibmV0cyBoYXZlIG5vIGludGVybmV0XG4gICAgLy8gYWNjZXNzLCBzbyBwcml2YXRlIEROUyBpcyByZXF1aXJlZCBmb3IgQVdTIFNESyBjYWxscyB0byByZXNvbHZlIHRvXG4gICAgLy8gdGhlIFZQQyBlbmRwb2ludCksIGZhbHNlIG90aGVyd2lzZSB0byBwcmVzZXJ2ZSBleGlzdGluZyBiZWhhdmlvdXIuXG4gICAgY29uc3QgZW5hYmxlUHJpdmF0ZURucyA9IHByaXZhdGVEbnNFbmFibGVkID8/ICEhdGhpcy5wcm9wcy5wcml2YXRlO1xuXG4gICAgcmV0dXJuIHRoaXMudnBjLmFkZEludGVyZmFjZUVuZHBvaW50KGBpbnRlcmZhY2UtZW5kcG9pbnQtZm9yLSR7aWR9YCwge1xuICAgICAgc2VydmljZSxcbiAgICAgIHNlY3VyaXR5R3JvdXBzOiBbc2VjdXJpdHlHcm91cF0sXG4gICAgICBzdWJuZXRzOiB0aGlzLmFwcGxpY2F0aW9uU3VibmV0U2VsZWN0aW9uKCksXG4gICAgICBwcml2YXRlRG5zRW5hYmxlZDogZW5hYmxlUHJpdmF0ZURucyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhcHBsaWNhdGlvblN1Ym5ldFNlbGVjdGlvbigpOiBTdWJuZXRTZWxlY3Rpb24ge1xuICAgIHJldHVybiB7XG4gICAgICBzdWJuZXRUeXBlOiB0aGlzLnByb3BzLnByaXZhdGUgPyBTdWJuZXRUeXBlLlBSSVZBVEVfSVNPTEFURUQgOiBTdWJuZXRUeXBlLlBSSVZBVEVfV0lUSF9FR1JFU1MsXG4gICAgfTtcbiAgfVxufSJdfQ==
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.LocalStackIntegrationUtils = exports.DEFAULT_LOCALSTACK_OLLAMA_BASE_URL = exports.DEFAULT_LOCALSTACK_SANDBOX_ENDPOINT_URL = exports.DEFAULT_LOCALSTACK_OLLAMA_MODEL_ID = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -16,6 +15,8 @@ exports.DEFAULT_LOCALSTACK_SANDBOX_ENDPOINT_URL = 'http://host.docker.internal:4
16
15
  */
17
16
  exports.DEFAULT_LOCALSTACK_OLLAMA_BASE_URL = 'http://host.docker.internal:11434';
18
17
  class LocalStackIntegrationUtils {
18
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationUtils", version: "1.17.1" };
19
+ static DEFAULT_ENDPOINT_URL = 'http://localhost.localstack.cloud:4566';
19
20
  static resolveConfig(config) {
20
21
  const endpointUrl = config?.endpointUrl || LocalStackIntegrationUtils.DEFAULT_ENDPOINT_URL;
21
22
  return {
@@ -43,7 +44,4 @@ class LocalStackIntegrationUtils {
43
44
  }
44
45
  }
45
46
  exports.LocalStackIntegrationUtils = LocalStackIntegrationUtils;
46
- _a = JSII_RTTI_SYMBOL_1;
47
- LocalStackIntegrationUtils[_a] = { fqn: "@cdklabs/cdk-appmod-catalog-blueprints.LocalStackIntegrationUtils", version: "1.17.0" };
48
- LocalStackIntegrationUtils.DEFAULT_ENDPOINT_URL = 'http://localhost.localstack.cloud:4566';
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxzdGFjay1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi91c2UtY2FzZXMvZnJhbWV3b3JrL2xvY2Fsc3RhY2svbG9jYWxzdGFjay1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFzRUE7O0dBRUc7QUFDVSxRQUFBLGtDQUFrQyxHQUFHLG1CQUFtQixDQUFDO0FBQ3RFOztHQUVHO0FBQ1UsUUFBQSx1Q0FBdUMsR0FBRyxrQ0FBa0MsQ0FBQztBQUMxRjs7R0FFRztBQUNVLFFBQUEsa0NBQWtDLEdBQUcsbUNBQW1DLENBQUM7QUFFdEYsTUFBYSwwQkFBMEI7SUFHOUIsTUFBTSxDQUFDLGFBQWEsQ0FBQyxNQUFvQztRQUM5RCxNQUFNLFdBQVcsR0FBRyxNQUFNLEVBQUUsV0FBVyxJQUFJLDBCQUEwQixDQUFDLG9CQUFvQixDQUFDO1FBRTNGLE9BQU87WUFDTCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sSUFBSSxLQUFLO1lBQ2pDLFdBQVc7WUFDWCxhQUFhLEVBQUUsTUFBTSxFQUFFLGFBQWEsSUFBSSxXQUFXO1lBQ25ELHdCQUF3QixFQUFFLE1BQU0sRUFBRSx3QkFBd0IsSUFBSSxXQUFXO1lBQ3pFLHlCQUF5QixFQUFFLE1BQU0sRUFBRSx5QkFBeUIsSUFBSSxXQUFXO1lBQzNFLDhCQUE4QixFQUFFLE1BQU0sRUFBRSw4QkFBOEIsSUFBSSxXQUFXO1NBQ3RGLENBQUM7SUFDSixDQUFDO0lBRU0sTUFBTSxDQUFDLG1CQUFtQixDQUFDLE1BQW9DO1FBQ3BFLE1BQU0sUUFBUSxHQUFHLDBCQUEwQixDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RCLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUVELE9BQU87WUFDTCxrQkFBa0IsRUFBRSxNQUFNO1lBQzFCLGdCQUFnQixFQUFFLFFBQVEsQ0FBQyxXQUFXO1lBQ3RDLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxhQUFhO1lBQzNDLDhCQUE4QixFQUFFLFFBQVEsQ0FBQyx3QkFBd0I7WUFDakUsZ0NBQWdDLEVBQUUsUUFBUSxDQUFDLHlCQUF5QjtZQUNwRSxzQ0FBc0MsRUFBRSxRQUFRLENBQUMsOEJBQThCO1NBQ2hGLENBQUM7SUFDSixDQUFDOztBQTlCSCxnRUErQkM7OztBQTlCd0IsK0NBQW9CLEdBQUcsd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIExvY2FsU3RhY2tJbnRlZ3JhdGlvbkNvbmZpZyB7XG4gIC8qKlxuICAgKiBFbmFibGUgTG9jYWxTdGFjayBlbmRwb2ludCByb3V0aW5nIGZvciBydW50aW1lIEFXUyBTREsgY2FsbHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGVmYXVsdCBlbmRwb2ludCB1c2VkIHdoZW4gc2VydmljZS1zcGVjaWZpYyBlbmRwb2ludHMgYXJlIG5vdCBwcm92aWRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgaHR0cDovL2xvY2FsaG9zdC5sb2NhbHN0YWNrLmNsb3VkOjQ1NjZcbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBzZXJ2aWNlLXNwZWNpZmljIFMzIGVuZHBvaW50IG92ZXJyaWRlLlxuICAgKi9cbiAgcmVhZG9ubHkgczNFbmRwb2ludFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBTdGVwIEZ1bmN0aW9ucyBlbmRwb2ludCBvdmVycmlkZS5cbiAgICovXG4gIHJlYWRvbmx5IHN0ZXBGdW5jdGlvbnNFbmRwb2ludFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBCZWRyb2NrIFJ1bnRpbWUgZW5kcG9pbnQgb3ZlcnJpZGUuXG4gICAqL1xuICByZWFkb25seSBiZWRyb2NrUnVudGltZUVuZHBvaW50VXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBzZXJ2aWNlLXNwZWNpZmljIEJlZHJvY2sgQWdlbnQgUnVudGltZSBlbmRwb2ludCBvdmVycmlkZS5cbiAgICovXG4gIHJlYWRvbmx5IGJlZHJvY2tBZ2VudFJ1bnRpbWVFbmRwb2ludFVybD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMb2NhbFN0YWNrRW5kcG9pbnRPdmVycmlkZXMge1xuICAvKipcbiAgICogRGVmYXVsdCBlbmRwb2ludCB1c2VkIHdoZW4gc2VydmljZS1zcGVjaWZpYyBlbmRwb2ludHMgYXJlIG5vdCBwcm92aWRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgaHR0cDovL2xvY2FsaG9zdC5sb2NhbHN0YWNrLmNsb3VkOjQ1NjZcbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBTMyBlbmRwb2ludCBvdmVycmlkZS5cbiAgICovXG4gIHJlYWRvbmx5IHMzRW5kcG9pbnRVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBzZXJ2aWNlLXNwZWNpZmljIFN0ZXAgRnVuY3Rpb25zIGVuZHBvaW50IG92ZXJyaWRlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3RlcEZ1bmN0aW9uc0VuZHBvaW50VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBCZWRyb2NrIFJ1bnRpbWUgZW5kcG9pbnQgb3ZlcnJpZGUuXG4gICAqL1xuICByZWFkb25seSBiZWRyb2NrUnVudGltZUVuZHBvaW50VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBCZWRyb2NrIEFnZW50IFJ1bnRpbWUgZW5kcG9pbnQgb3ZlcnJpZGUuXG4gICAqL1xuICByZWFkb25seSBiZWRyb2NrQWdlbnRSdW50aW1lRW5kcG9pbnRVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb2x2ZWRMb2NhbFN0YWNrSW50ZWdyYXRpb25Db25maWcge1xuICByZWFkb25seSBlbmFibGVkOiBib29sZWFuO1xuICByZWFkb25seSBlbmRwb2ludFVybDogc3RyaW5nO1xuICByZWFkb25seSBzM0VuZHBvaW50VXJsOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHN0ZXBGdW5jdGlvbnNFbmRwb2ludFVybDogc3RyaW5nO1xuICByZWFkb25seSBiZWRyb2NrUnVudGltZUVuZHBvaW50VXJsOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGJlZHJvY2tBZ2VudFJ1bnRpbWVFbmRwb2ludFVybDogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmF1bHQgbG9jYWwgbW9kZWwgSUQgdXNlZCBmb3IgTG9jYWxTdGFjay9PbGxhbWEgc2FuZGJveCBleGFtcGxlcyBhbmQgdGVzdHMuXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0xPQ0FMU1RBQ0tfT0xMQU1BX01PREVMX0lEID0gJ29sbGFtYS5xd2VuMy41OjliJztcbi8qKlxuICogTG9jYWxTdGFjayBlZGdlIGVuZHBvaW50IGNvbW1vbmx5IHVzZWQgYnkgY29udGFpbmVyaXplZCBsb2NhbCBydW50aW1lcy5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTE9DQUxTVEFDS19TQU5EQk9YX0VORFBPSU5UX1VSTCA9ICdodHRwOi8vaG9zdC5kb2NrZXIuaW50ZXJuYWw6NDU2Nic7XG4vKipcbiAqIE9sbGFtYSBlbmRwb2ludCBjb21tb25seSB1c2VkIGJ5IGNvbnRhaW5lcml6ZWQgbG9jYWwgcnVudGltZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0xPQ0FMU1RBQ0tfT0xMQU1BX0JBU0VfVVJMID0gJ2h0dHA6Ly9ob3N0LmRvY2tlci5pbnRlcm5hbDoxMTQzNCc7XG5cbmV4cG9ydCBjbGFzcyBMb2NhbFN0YWNrSW50ZWdyYXRpb25VdGlscyB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9FTkRQT0lOVF9VUkwgPSAnaHR0cDovL2xvY2FsaG9zdC5sb2NhbHN0YWNrLmNsb3VkOjQ1NjYnO1xuXG4gIHB1YmxpYyBzdGF0aWMgcmVzb2x2ZUNvbmZpZyhjb25maWc/OiBMb2NhbFN0YWNrSW50ZWdyYXRpb25Db25maWcpOiBSZXNvbHZlZExvY2FsU3RhY2tJbnRlZ3JhdGlvbkNvbmZpZyB7XG4gICAgY29uc3QgZW5kcG9pbnRVcmwgPSBjb25maWc/LmVuZHBvaW50VXJsIHx8IExvY2FsU3RhY2tJbnRlZ3JhdGlvblV0aWxzLkRFRkFVTFRfRU5EUE9JTlRfVVJMO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGVuYWJsZWQ6IGNvbmZpZz8uZW5hYmxlZCA/PyBmYWxzZSxcbiAgICAgIGVuZHBvaW50VXJsLFxuICAgICAgczNFbmRwb2ludFVybDogY29uZmlnPy5zM0VuZHBvaW50VXJsIHx8IGVuZHBvaW50VXJsLFxuICAgICAgc3RlcEZ1bmN0aW9uc0VuZHBvaW50VXJsOiBjb25maWc/LnN0ZXBGdW5jdGlvbnNFbmRwb2ludFVybCB8fCBlbmRwb2ludFVybCxcbiAgICAgIGJlZHJvY2tSdW50aW1lRW5kcG9pbnRVcmw6IGNvbmZpZz8uYmVkcm9ja1J1bnRpbWVFbmRwb2ludFVybCB8fCBlbmRwb2ludFVybCxcbiAgICAgIGJlZHJvY2tBZ2VudFJ1bnRpbWVFbmRwb2ludFVybDogY29uZmlnPy5iZWRyb2NrQWdlbnRSdW50aW1lRW5kcG9pbnRVcmwgfHwgZW5kcG9pbnRVcmwsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgdG9MYW1iZGFFbnZpcm9ubWVudChjb25maWc/OiBMb2NhbFN0YWNrSW50ZWdyYXRpb25Db25maWcpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICBjb25zdCByZXNvbHZlZCA9IExvY2FsU3RhY2tJbnRlZ3JhdGlvblV0aWxzLnJlc29sdmVDb25maWcoY29uZmlnKTtcbiAgICBpZiAoIXJlc29sdmVkLmVuYWJsZWQpIHtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgTE9DQUxTVEFDS19FTkFCTEVEOiAndHJ1ZScsXG4gICAgICBBV1NfRU5EUE9JTlRfVVJMOiByZXNvbHZlZC5lbmRwb2ludFVybCxcbiAgICAgIEFXU19FTkRQT0lOVF9VUkxfUzM6IHJlc29sdmVkLnMzRW5kcG9pbnRVcmwsXG4gICAgICBBV1NfRU5EUE9JTlRfVVJMX1NURVBGVU5DVElPTlM6IHJlc29sdmVkLnN0ZXBGdW5jdGlvbnNFbmRwb2ludFVybCxcbiAgICAgIEFXU19FTkRQT0lOVF9VUkxfQkVEUk9DS19SVU5USU1FOiByZXNvbHZlZC5iZWRyb2NrUnVudGltZUVuZHBvaW50VXJsLFxuICAgICAgQVdTX0VORFBPSU5UX1VSTF9CRURST0NLX0FHRU5UX1JVTlRJTUU6IHJlc29sdmVkLmJlZHJvY2tBZ2VudFJ1bnRpbWVFbmRwb2ludFVybCxcbiAgICB9O1xuICB9XG59XG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxzdGFjay1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi91c2UtY2FzZXMvZnJhbWV3b3JrL2xvY2Fsc3RhY2svbG9jYWxzdGFjay1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQXNFQTs7R0FFRztBQUNVLFFBQUEsa0NBQWtDLEdBQUcsbUJBQW1CLENBQUM7QUFDdEU7O0dBRUc7QUFDVSxRQUFBLHVDQUF1QyxHQUFHLGtDQUFrQyxDQUFDO0FBQzFGOztHQUVHO0FBQ1UsUUFBQSxrQ0FBa0MsR0FBRyxtQ0FBbUMsQ0FBQztBQUV0RixNQUFhLDBCQUEwQjs7SUFDOUIsTUFBTSxDQUFVLG9CQUFvQixHQUFHLHdDQUF3QyxDQUFDO0lBRWhGLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBb0M7UUFDOUQsTUFBTSxXQUFXLEdBQUcsTUFBTSxFQUFFLFdBQVcsSUFBSSwwQkFBMEIsQ0FBQyxvQkFBb0IsQ0FBQztRQUUzRixPQUFPO1lBQ0wsT0FBTyxFQUFFLE1BQU0sRUFBRSxPQUFPLElBQUksS0FBSztZQUNqQyxXQUFXO1lBQ1gsYUFBYSxFQUFFLE1BQU0sRUFBRSxhQUFhLElBQUksV0FBVztZQUNuRCx3QkFBd0IsRUFBRSxNQUFNLEVBQUUsd0JBQXdCLElBQUksV0FBVztZQUN6RSx5QkFBeUIsRUFBRSxNQUFNLEVBQUUseUJBQXlCLElBQUksV0FBVztZQUMzRSw4QkFBOEIsRUFBRSxNQUFNLEVBQUUsOEJBQThCLElBQUksV0FBVztTQUN0RixDQUFDO0lBQ0osQ0FBQztJQUVNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFvQztRQUNwRSxNQUFNLFFBQVEsR0FBRywwQkFBMEIsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN0QixPQUFPLEVBQUUsQ0FBQztRQUNaLENBQUM7UUFFRCxPQUFPO1lBQ0wsa0JBQWtCLEVBQUUsTUFBTTtZQUMxQixnQkFBZ0IsRUFBRSxRQUFRLENBQUMsV0FBVztZQUN0QyxtQkFBbUIsRUFBRSxRQUFRLENBQUMsYUFBYTtZQUMzQyw4QkFBOEIsRUFBRSxRQUFRLENBQUMsd0JBQXdCO1lBQ2pFLGdDQUFnQyxFQUFFLFFBQVEsQ0FBQyx5QkFBeUI7WUFDcEUsc0NBQXNDLEVBQUUsUUFBUSxDQUFDLDhCQUE4QjtTQUNoRixDQUFDO0lBQ0osQ0FBQzs7QUE5QkgsZ0VBK0JDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBMb2NhbFN0YWNrSW50ZWdyYXRpb25Db25maWcge1xuICAvKipcbiAgICogRW5hYmxlIExvY2FsU3RhY2sgZW5kcG9pbnQgcm91dGluZyBmb3IgcnVudGltZSBBV1MgU0RLIGNhbGxzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgZW5kcG9pbnQgdXNlZCB3aGVuIHNlcnZpY2Utc3BlY2lmaWMgZW5kcG9pbnRzIGFyZSBub3QgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGh0dHA6Ly9sb2NhbGhvc3QubG9jYWxzdGFjay5jbG91ZDo0NTY2XG4gICAqL1xuICByZWFkb25seSBlbmRwb2ludFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBTMyBlbmRwb2ludCBvdmVycmlkZS5cbiAgICovXG4gIHJlYWRvbmx5IHMzRW5kcG9pbnRVcmw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNlcnZpY2Utc3BlY2lmaWMgU3RlcCBGdW5jdGlvbnMgZW5kcG9pbnQgb3ZlcnJpZGUuXG4gICAqL1xuICByZWFkb25seSBzdGVwRnVuY3Rpb25zRW5kcG9pbnRVcmw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNlcnZpY2Utc3BlY2lmaWMgQmVkcm9jayBSdW50aW1lIGVuZHBvaW50IG92ZXJyaWRlLlxuICAgKi9cbiAgcmVhZG9ubHkgYmVkcm9ja1J1bnRpbWVFbmRwb2ludFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBCZWRyb2NrIEFnZW50IFJ1bnRpbWUgZW5kcG9pbnQgb3ZlcnJpZGUuXG4gICAqL1xuICByZWFkb25seSBiZWRyb2NrQWdlbnRSdW50aW1lRW5kcG9pbnRVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYWxTdGFja0VuZHBvaW50T3ZlcnJpZGVzIHtcbiAgLyoqXG4gICAqIERlZmF1bHQgZW5kcG9pbnQgdXNlZCB3aGVuIHNlcnZpY2Utc3BlY2lmaWMgZW5kcG9pbnRzIGFyZSBub3QgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGh0dHA6Ly9sb2NhbGhvc3QubG9jYWxzdGFjay5jbG91ZDo0NTY2XG4gICAqL1xuICByZWFkb25seSBlbmRwb2ludFVybD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNlcnZpY2Utc3BlY2lmaWMgUzMgZW5kcG9pbnQgb3ZlcnJpZGUuXG4gICAqL1xuICByZWFkb25seSBzM0VuZHBvaW50VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9uYWwgc2VydmljZS1zcGVjaWZpYyBTdGVwIEZ1bmN0aW9ucyBlbmRwb2ludCBvdmVycmlkZS5cbiAgICovXG4gIHJlYWRvbmx5IHN0ZXBGdW5jdGlvbnNFbmRwb2ludFVybD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNlcnZpY2Utc3BlY2lmaWMgQmVkcm9jayBSdW50aW1lIGVuZHBvaW50IG92ZXJyaWRlLlxuICAgKi9cbiAgcmVhZG9ubHkgYmVkcm9ja1J1bnRpbWVFbmRwb2ludFVybD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHNlcnZpY2Utc3BlY2lmaWMgQmVkcm9jayBBZ2VudCBSdW50aW1lIGVuZHBvaW50IG92ZXJyaWRlLlxuICAgKi9cbiAgcmVhZG9ubHkgYmVkcm9ja0FnZW50UnVudGltZUVuZHBvaW50VXJsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc29sdmVkTG9jYWxTdGFja0ludGVncmF0aW9uQ29uZmlnIHtcbiAgcmVhZG9ubHkgZW5hYmxlZDogYm9vbGVhbjtcbiAgcmVhZG9ubHkgZW5kcG9pbnRVcmw6IHN0cmluZztcbiAgcmVhZG9ubHkgczNFbmRwb2ludFVybDogc3RyaW5nO1xuICByZWFkb25seSBzdGVwRnVuY3Rpb25zRW5kcG9pbnRVcmw6IHN0cmluZztcbiAgcmVhZG9ubHkgYmVkcm9ja1J1bnRpbWVFbmRwb2ludFVybDogc3RyaW5nO1xuICByZWFkb25seSBiZWRyb2NrQWdlbnRSdW50aW1lRW5kcG9pbnRVcmw6IHN0cmluZztcbn1cblxuLyoqXG4gKiBEZWZhdWx0IGxvY2FsIG1vZGVsIElEIHVzZWQgZm9yIExvY2FsU3RhY2svT2xsYW1hIHNhbmRib3ggZXhhbXBsZXMgYW5kIHRlc3RzLlxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9MT0NBTFNUQUNLX09MTEFNQV9NT0RFTF9JRCA9ICdvbGxhbWEucXdlbjMuNTo5Yic7XG4vKipcbiAqIExvY2FsU3RhY2sgZWRnZSBlbmRwb2ludCBjb21tb25seSB1c2VkIGJ5IGNvbnRhaW5lcml6ZWQgbG9jYWwgcnVudGltZXMuXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0xPQ0FMU1RBQ0tfU0FOREJPWF9FTkRQT0lOVF9VUkwgPSAnaHR0cDovL2hvc3QuZG9ja2VyLmludGVybmFsOjQ1NjYnO1xuLyoqXG4gKiBPbGxhbWEgZW5kcG9pbnQgY29tbW9ubHkgdXNlZCBieSBjb250YWluZXJpemVkIGxvY2FsIHJ1bnRpbWVzLlxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9MT0NBTFNUQUNLX09MTEFNQV9CQVNFX1VSTCA9ICdodHRwOi8vaG9zdC5kb2NrZXIuaW50ZXJuYWw6MTE0MzQnO1xuXG5leHBvcnQgY2xhc3MgTG9jYWxTdGFja0ludGVncmF0aW9uVXRpbHMge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfRU5EUE9JTlRfVVJMID0gJ2h0dHA6Ly9sb2NhbGhvc3QubG9jYWxzdGFjay5jbG91ZDo0NTY2JztcblxuICBwdWJsaWMgc3RhdGljIHJlc29sdmVDb25maWcoY29uZmlnPzogTG9jYWxTdGFja0ludGVncmF0aW9uQ29uZmlnKTogUmVzb2x2ZWRMb2NhbFN0YWNrSW50ZWdyYXRpb25Db25maWcge1xuICAgIGNvbnN0IGVuZHBvaW50VXJsID0gY29uZmlnPy5lbmRwb2ludFVybCB8fCBMb2NhbFN0YWNrSW50ZWdyYXRpb25VdGlscy5ERUZBVUxUX0VORFBPSU5UX1VSTDtcblxuICAgIHJldHVybiB7XG4gICAgICBlbmFibGVkOiBjb25maWc/LmVuYWJsZWQgPz8gZmFsc2UsXG4gICAgICBlbmRwb2ludFVybCxcbiAgICAgIHMzRW5kcG9pbnRVcmw6IGNvbmZpZz8uczNFbmRwb2ludFVybCB8fCBlbmRwb2ludFVybCxcbiAgICAgIHN0ZXBGdW5jdGlvbnNFbmRwb2ludFVybDogY29uZmlnPy5zdGVwRnVuY3Rpb25zRW5kcG9pbnRVcmwgfHwgZW5kcG9pbnRVcmwsXG4gICAgICBiZWRyb2NrUnVudGltZUVuZHBvaW50VXJsOiBjb25maWc/LmJlZHJvY2tSdW50aW1lRW5kcG9pbnRVcmwgfHwgZW5kcG9pbnRVcmwsXG4gICAgICBiZWRyb2NrQWdlbnRSdW50aW1lRW5kcG9pbnRVcmw6IGNvbmZpZz8uYmVkcm9ja0FnZW50UnVudGltZUVuZHBvaW50VXJsIHx8IGVuZHBvaW50VXJsLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHRvTGFtYmRhRW52aXJvbm1lbnQoY29uZmlnPzogTG9jYWxTdGFja0ludGVncmF0aW9uQ29uZmlnKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSBMb2NhbFN0YWNrSW50ZWdyYXRpb25VdGlscy5yZXNvbHZlQ29uZmlnKGNvbmZpZyk7XG4gICAgaWYgKCFyZXNvbHZlZC5lbmFibGVkKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIExPQ0FMU1RBQ0tfRU5BQkxFRDogJ3RydWUnLFxuICAgICAgQVdTX0VORFBPSU5UX1VSTDogcmVzb2x2ZWQuZW5kcG9pbnRVcmwsXG4gICAgICBBV1NfRU5EUE9JTlRfVVJMX1MzOiByZXNvbHZlZC5zM0VuZHBvaW50VXJsLFxuICAgICAgQVdTX0VORFBPSU5UX1VSTF9TVEVQRlVOQ1RJT05TOiByZXNvbHZlZC5zdGVwRnVuY3Rpb25zRW5kcG9pbnRVcmwsXG4gICAgICBBV1NfRU5EUE9JTlRfVVJMX0JFRFJPQ0tfUlVOVElNRTogcmVzb2x2ZWQuYmVkcm9ja1J1bnRpbWVFbmRwb2ludFVybCxcbiAgICAgIEFXU19FTkRQT0lOVF9VUkxfQkVEUk9DS19BR0VOVF9SVU5USU1FOiByZXNvbHZlZC5iZWRyb2NrQWdlbnRSdW50aW1lRW5kcG9pbnRVcmwsXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -1,8 +1,41 @@
1
1
  "use strict";
2
2
  // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
3
  // SPDX-License-Identifier: Apache-2.0
4
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5
+ if (k2 === undefined) k2 = k;
6
+ var desc = Object.getOwnPropertyDescriptor(m, k);
7
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
8
+ desc = { enumerable: true, get: function() { return m[k]; } };
9
+ }
10
+ Object.defineProperty(o, k2, desc);
11
+ }) : (function(o, m, k, k2) {
12
+ if (k2 === undefined) k2 = k;
13
+ o[k2] = m[k];
14
+ }));
15
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
16
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
17
+ }) : function(o, v) {
18
+ o["default"] = v;
19
+ });
20
+ var __importStar = (this && this.__importStar) || (function () {
21
+ var ownKeys = function(o) {
22
+ ownKeys = Object.getOwnPropertyNames || function (o) {
23
+ var ar = [];
24
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
25
+ return ar;
26
+ };
27
+ return ownKeys(o);
28
+ };
29
+ return function (mod) {
30
+ if (mod && mod.__esModule) return mod;
31
+ var result = {};
32
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
33
+ __setModuleDefault(result, mod);
34
+ return result;
35
+ };
36
+ })();
4
37
  Object.defineProperty(exports, "__esModule", { value: true });
5
- const path = require("path");
38
+ const path = __importStar(require("path"));
6
39
  const aws_cdk_lib_1 = require("aws-cdk-lib");
7
40
  const assertions_1 = require("aws-cdk-lib/assertions");
8
41
  const aws_bedrock_1 = require("aws-cdk-lib/aws-bedrock");
@@ -282,4 +315,4 @@ describe('BaseAgent Knowledge Base Integration', () => {
282
315
  });
283
316
  });
284
317
  });
285
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1hZ2VudC1rbm93bGVkZ2UtYmFzZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdXNlLWNhc2VzL2ZyYW1ld29yay90ZXN0cy9iYXNlLWFnZW50LWtub3dsZWRnZS1iYXNlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHFFQUFxRTtBQUNyRSxzQ0FBc0M7O0FBRXRDLDZCQUE2QjtBQUM3Qiw2Q0FBeUM7QUFDekMsdURBQXlEO0FBQ3pELHlEQUFvRTtBQUNwRSxpREFBOEQ7QUFDOUQsNkRBQWtEO0FBQ2xELDJEQUEyRDtBQUMzRCx1REFBbUQ7QUFDbkQsNkRBQWdFO0FBRWhFLFFBQVEsQ0FBQyxzQ0FBc0MsRUFBRSxHQUFHLEVBQUU7SUFDcEQsSUFBSSxHQUFRLENBQUM7SUFDYixJQUFJLEtBQVksQ0FBQztJQUNqQixJQUFJLFlBQW1CLENBQUM7SUFDeEIsTUFBTSxTQUFTLEdBQUcsdUNBQXlCLENBQUMsdUNBQXVDLENBQUM7SUFFcEYsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLEdBQUcsR0FBRyxJQUFBLDBCQUFhLEdBQUUsQ0FBQztRQUN0QixLQUFLLEdBQUcsSUFBSSxtQkFBSyxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUU7WUFDbEMsR0FBRyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFO1NBQ3RELENBQUMsQ0FBQztRQUVILFlBQVksR0FBRyxJQUFJLHFCQUFLLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRTtZQUM5QyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsb0RBQW9ELENBQUM7U0FDakYsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO1FBQ3RDLElBQUksQ0FBQywyREFBMkQsRUFBRSxHQUFHLEVBQUU7WUFDckUsSUFBSSx3QkFBVSxDQUFD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LEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFO29CQUN0QyxZQUFZO29CQUNaLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDckI7YUFDRixDQUFDLENBQUM7WUFFSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUUzQywwREFBMEQ7WUFDMUQsUUFBUSxDQUFDLHFCQUFxQixDQUFDLGdCQUFnQixFQUFFO2dCQUMvQyxRQUFRLEVBQUUsa0JBQUssQ0FBQyxTQUFTLENBQUM7b0JBQ3hCLGtCQUFLLENBQUMsVUFBVSxDQUFDO3dCQUNmLFVBQVUsRUFBRSwwQkFBMEI7d0JBQ3RDLGNBQWMsRUFBRTs0QkFDZCxTQUFTLEVBQUUsa0JBQUssQ0FBQyxTQUFTLENBQUM7Z0NBQ3pCLGtCQUFLLENBQUMsVUFBVSxDQUFDO29DQUNmLE1BQU0sRUFBRSx3QkFBd0I7b0NBQ2hDLFFBQVEsRUFBRSwrREFBK0Q7aUNBQzFFLENBQUM7NkJBQ0gsQ0FBQzt5QkFDSDtxQkFDRixDQUFDO2lCQUNILENBQUM7YUFDSCxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBBcHAsIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgVGVtcGxhdGUsIE1hdGNoIH0gZnJvbSAnYXdzLWNkay1saWIvYXNzZXJ0aW9ucyc7XG5pbXBvcnQgeyBGb3VuZGF0aW9uTW9kZWxJZGVudGlmaWVyIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWJlZHJvY2snO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBFZmZlY3QgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCB7IEFzc2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzLWFzc2V0cyc7XG5pbXBvcnQgeyBjcmVhdGVUZXN0QXBwIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL3Rlc3QtdXRpbHMnO1xuaW1wb3J0IHsgQmF0Y2hBZ2VudCB9IGZyb20gJy4uL2FnZW50cy9iYXRjaC1hZ2VudCc7XG5pbXBvcnQgeyBCZWRyb2NrS25vd2xlZGdlQmFzZSB9IGZyb20gJy4uL2FnZW50cy9rbm93bGVkZ2UtYmFzZSc7XG5cbmRlc2NyaWJlKCdCYXNlQWdlbnQgS25vd2xlZGdlIEJhc2UgSW50ZWdyYXRpb24nLCAoKSA9PiB7XG4gIGxldCBhcHA6IEFwcDtcbiAgbGV0IHN0YWNrOiBTdGFjaztcbiAgbGV0IHN5c3RlbVByb21wdDogQXNzZXQ7XG4gIGNvbnN0IHRlc3RNb2RlbCA9IEZvdW5kYXRpb25Nb2RlbElkZW50aWZpZXIuQU5USFJPUElDX0NMQVVERV8zX1NPTk5FVF8yMDI0MDIyOV9WMV8wO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGFwcCA9IGNyZWF0ZVRlc3RBcHAoKTtcbiAgICBzdGFjayA9IG5ldyBTdGFjayhhcHAsICdUZXN0U3RhY2snLCB7XG4gICAgICBlbnY6IHsgYWNjb3VudDogJzEyMzQ1Njc4OTAxMicsIHJlZ2lvbjogJ3VzLWVhc3QtMScgfSxcbiAgICB9KTtcblxuICAgIHN5c3RlbVByb21wdCA9IG5ldyBBc3NldChzdGFjaywgJ1N5c3RlbVByb21wdCcsIHtcbiAgICAgIHBhdGg6IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi9hZ2VudHMvcmVzb3VyY2VzL2RlZmF1bHQtc3RyYW5kcy1hZ2VudC9iYXRjaC5weScpLFxuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnQmFja3dhcmQgQ29tcGF0aWJpbGl0eScsICgpID0+IHtcbiAgICB0ZXN0KCdjcmVhdGVzIGFnZW50IHdpdGhvdXQga25vd2xlZGdlIGJhc2VzIChubyBLQnMgY29uZmlndXJlZCknLCAoKSA9PiB7XG4gICAgICBuZXcgQmF0Y2hBZ2VudChzdGFjaywgJ0FnZW50Jywge1xuICAgICAgICBhZ2VudE5hbWU6ICdUZXN0QWdlbnQnLFxuICAgICAgICBwcm9tcHQ6ICdUZXN0IHByb21wdCcsXG4gICAgICAgIGFnZW50RGVmaW5pdGlvbjoge1xuICAgICAgICAgIGJlZHJvY2tNb2RlbDogeyBmbU1vZGVsSWQ6IHRlc3RNb2RlbCB9LFxuICAgICAgICAgIHN5c3RlbVByb21wdCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgICAgIC8vIEFnZW50IHNob3VsZCBiZSBjcmVhdGVkIHN1Y2Nlc3NmdWxseVxuICAgICAgdGVtcGxhdGUucmVzb3VyY2VDb3VudElzKCdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLCAxKTtcblxuICAgICAgLy8gTm8gS0IgcGVybWlzc2lvbnMgc2hvdWxkIGJlIGFkZGVkIC0gdmVyaWZ5IG5vIEtub3dsZWRnZUJhc2VQZXJtaXNzaW9ucyBpbmxpbmUgcG9saWN5XG4gICAgICBjb25zdCByb2xlcyA9IHRlbXBsYXRlLmZpbmRSZXNvdXJjZXMoJ0FXUzo6SUFNOjpSb2xlJyk7XG4gICAgICBjb25zdCBhZ2VudFJvbGUgPSBPYmplY3QudmFsdWVzKHJvbGVzKS5maW5kKChyb2xlOiBhbnkpID0+XG4gICAgICAgIHJvbGUuUHJvcGVydGllcz8uUm9sZU5hbWU/LmluY2x1ZGVzPy4oJ0FnZW50JykgfHxcbiAgICAgICAgcm9sZS5Qcm9wZXJ0aWVzPy5Bc3N1bWVSb2xlUG9saWN5RG9jdW1lbnQ/LlN0YXRlbWVudD8uc29tZT8uKChzOiBhbnkpID0+XG4gICAgICAgICAgcy5QcmluY2lwYWw/LlNlcnZpY2UgPT09ICdsYW1iZGEuYW1hem9uYXdzLmNvbScsXG4gICAgICAgICksXG4gICAgICApIGFzIGFueTtcblxuICAgICAgLy8gQ2hlY2sgdGhhdCBLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMgcG9saWN5IGRvZXNuJ3QgZXhpc3RcbiAgICAgIGNvbnN0IHBvbGljaWVzID0gYWdlbnRSb2xlPy5Qcm9wZXJ0aWVzPy5Qb2xpY2llcyB8fCBbXTtcbiAgICAgIGNvbnN0IGhhc0tiUG9saWN5ID0gcG9saWNpZXMuc29tZSgocDogYW55KSA9PiBwLlBvbGljeU5hbWUgPT09ICdLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMnKTtcbiAgICAgIGV4cGVjdChoYXNLYlBvbGljeSkudG9CZShmYWxzZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdTaW5nbGUgS25vd2xlZGdlIEJhc2UnLCAoKSA9PiB7XG4gICAgdGVzdCgnY3JlYXRlcyBhZ2VudCB3aXRoIHNpbmdsZSBLQiBhbmQgZ2VuZXJhdGVzIElBTSBwZXJtaXNzaW9ucycsICgpID0+IHtcbiAgICAgIGNvbnN0IGtiID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnUHJvZHVjdERvY3MnLCB7XG4gICAgICAgIG5hbWU6ICdwcm9kdWN0LWRvY3VtZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1Byb2R1Y3QgZG9jdW1lbnRhdGlvbiBhbmQgRkFRcycsXG4gICAgICAgIGtub3dsZWRnZUJhc2VJZDogJ0FCQ0QxMjM0JyxcbiAgICAgIH0pO1xuXG4gICAgICBuZXcgQmF0Y2hBZ2VudChzdGFjaywgJ0FnZW50Jywge1xuICAgICAgICBhZ2VudE5hbWU6ICdUZXN0QWdlbnQnLFxuICAgICAgICBwcm9tcHQ6ICdUZXN0IHByb21wdCcsXG4gICAgICAgIGFnZW50RGVmaW5pdGlvbjoge1xuICAgICAgICAgIGJlZHJvY2tNb2RlbDogeyBmbU1vZGVsSWQ6IHRlc3RNb2RlbCB9LFxuICAgICAgICAgIHN5c3RlbVByb21wdCxcbiAgICAgICAgICBrbm93bGVkZ2VCYXNlczogW2tiXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgICAgIC8vIFZlcmlmeSBLQiBwZXJtaXNzaW9ucyBhcmUgYWRkZWQgYXMgaW5saW5lIHBvbGljeSBvbiB0aGUgcm9sZVxuICAgICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKCdBV1M6OklBTTo6Um9sZScsIHtcbiAgICAgICAgUG9saWNpZXM6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgTWF0Y2gub2JqZWN0TGlrZSh7XG4gICAgICAgICAgICBQb2xpY3lOYW1lOiAnS25vd2xlZGdlQmFzZVBlcm1pc3Npb25zJyxcbiAgICAgICAgICAgIFBvbGljeURvY3VtZW50OiB7XG4gICAgICAgICAgICAgIFN0YXRlbWVudDogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgICAgRWZmZWN0OiAnQWxsb3cnLFxuICAgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICdhcm46YXdzOmJlZHJvY2s6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjprbm93bGVkZ2UtYmFzZS9BQkNEMTIzNCcsXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSksXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NyZWF0ZXMgcmV0cmlldmFsIHRvb2wgYXNzZXQgd2hlbiBLQiBpcyBjb25maWd1cmVkJywgKCkgPT4ge1xuICAgICAgY29uc3Qga2IgPSBuZXcgQmVkcm9ja0tub3dsZWRnZUJhc2Uoc3RhY2ssICdQcm9kdWN0RG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3Byb2R1Y3QtZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvZHVjdCBkb2N1bWVudGF0aW9uIGFuZCBGQVFzJyxcbiAgICAgICAga25vd2xlZGdlQmFzZUlkOiAnQUJDRDEyMzQnLFxuICAgICAgfSk7XG5cbiAgICAgIG5ldyBCYXRjaEFnZW50KHN0YWNrLCAnQWdlbnQnLCB7XG4gICAgICAgIGFnZW50TmFtZTogJ1Rlc3RBZ2VudCcsXG4gICAgICAgIHByb21wdDogJ1Rlc3QgcHJvbXB0JyxcbiAgICAgICAgYWdlbnREZWZpbml0aW9uOiB7XG4gICAgICAgICAgYmVkcm9ja01vZGVsOiB7IGZtTW9kZWxJZDogdGVzdE1vZGVsIH0sXG4gICAgICAgICAgc3lzdGVtUHJvbXB0LFxuICAgICAgICAgIGtub3dsZWRnZUJhc2VzOiBba2JdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICAgICAgLy8gVmVyaWZ5IExhbWJkYSBmdW5jdGlvbiBpcyBjcmVhdGVkIChhZ2VudCBmdW5jdGlvbilcbiAgICAgIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcygnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJywgMSk7XG5cbiAgICAgIC8vIFZlcmlmeSBJQU0gcG9saWNpZXMgZ3JhbnQgUzMgcmVhZCBhY2Nlc3MgZm9yIGFzc2V0c1xuICAgICAgLy8gV2hlbiBLQiBpcyBjb25maWd1cmVkLCB0aGUgcmV0cmlldmFsIHRvb2wgYXNzZXQgc2hvdWxkIGJlIGdyYW50ZWQgcmVhZCBhY2Nlc3NcbiAgICAgIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcygnQVdTOjpJQU06OlBvbGljeScsIHtcbiAgICAgICAgUG9saWN5RG9jdW1lbnQ6IHtcbiAgICAgICAgICBTdGF0ZW1lbnQ6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgQWN0aW9uOiBNYXRjaC5hcnJheVdpdGgoWydzMzpHZXRPYmplY3QqJywgJ3MzOkdldEJ1Y2tldConLCAnczM6TGlzdConXSksXG4gICAgICAgICAgICAgIEVmZmVjdDogJ0FsbG93JyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0pLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdNdWx0aXBsZSBLbm93bGVkZ2UgQmFzZXMnLCAoKSA9PiB7XG4gICAgdGVzdCgnY3JlYXRlcyBhZ2VudCB3aXRoIG11bHRpcGxlIEtCcyBhbmQgZ2VuZXJhdGVzIHBlcm1pc3Npb25zIGZvciBhbGwnLCAoKSA9PiB7XG4gICAgICBjb25zdCBrYjEgPSBuZXcgQmVkcm9ja0tub3dsZWRnZUJhc2Uoc3RhY2ssICdQcm9kdWN0RG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3Byb2R1Y3QtZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvZHVjdCBkb2N1bWVudGF0aW9uJyxcbiAgICAgICAga25vd2xlZGdlQmFzZUlkOiAnS0ItUFJPRFVDVCcsXG4gICAgICB9KTtcblxuICAgICAgY29uc3Qga2IyID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnU3VwcG9ydERvY3MnLCB7XG4gICAgICAgIG5hbWU6ICdzdXBwb3J0LWRvY3VtZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1N1cHBvcnQgZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGtub3dsZWRnZUJhc2VJZDogJ0tCLVNVUFBPUlQnLFxuICAgICAgfSk7XG5cbiAgICAgIG5ldyBCYXRjaEFnZW50KHN0YWNrLCAnQWdlbnQnLCB7XG4gICAgICAgIGFnZW50TmFtZTogJ1Rlc3RBZ2VudCcsXG4gICAgICAgIHByb21wdDogJ1Rlc3QgcHJvbXB0JyxcbiAgICAgICAgYWdlbnREZWZpbml0aW9uOiB7XG4gICAgICAgICAgYmVkcm9ja01vZGVsOiB7IGZtTW9kZWxJZDogdGVzdE1vZGVsIH0sXG4gICAgICAgICAgc3lzdGVtUHJvbXB0LFxuICAgICAgICAgIGtub3dsZWRnZUJhc2VzOiBba2IxLCBrYjJdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICAgICAgLy8gVmVyaWZ5IHBlcm1pc3Npb25zIGZvciBib3RoIEtCcyBhcmUgYWRkZWQgYXMgaW5saW5lIHBvbGljeVxuICAgICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKCdBV1M6OklBTTo6Um9sZScsIHtcbiAgICAgICAgUG9saWNpZXM6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgTWF0Y2gub2JqZWN0TGlrZSh7XG4gICAgICAgICAgICBQb2xpY3lOYW1lOiAnS25vd2xlZGdlQmFzZVBlcm1pc3Npb25zJyxcbiAgICAgICAgICAgIFBvbGljeURvY3VtZW50OiB7XG4gICAgICAgICAgICAgIFN0YXRlbWVudDogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICdhcm46YXdzOmJlZHJvY2s6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjprbm93bGVkZ2UtYmFzZS9LQi1QUk9EVUNUJyxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICdhcm46YXdzOmJlZHJvY2s6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjprbm93bGVkZ2UtYmFzZS9LQi1TVVBQT1JUJyxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICBdKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnQWRkaXRpb25hbCBLQiBQb2xpY3kgU3RhdGVtZW50cycsICgpID0+IHtcbiAgICB0ZXN0KCdhZGRzIGFkZGl0aW9uYWwgS0IgcG9saWN5IHN0YXRlbWVudHMgd2hlbiBwcm92aWRlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGtiID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnUHJvZHVjdERvY3MnLCB7XG4gICAgICAgIG5hbWU6ICdwcm9kdWN0LWRvY3VtZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1Byb2R1Y3QgZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGtub3dsZWRnZUJhc2VJZDogJ0FCQ0QxMjM0JyxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBhZGRpdGlvbmFsU3RhdGVtZW50ID0gbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuICAgICAgICBhY3Rpb25zOiBbJ3MzOkdldE9iamVjdCddLFxuICAgICAgICByZXNvdXJjZXM6IFsnYXJuOmF3czpzMzo6Om15LWN1c3RvbS1idWNrZXQvKiddLFxuICAgICAgfSk7XG5cbiAgICAgIG5ldyBCYXRjaEFnZW50KHN0YWNrLCAnQWdlbnQnLCB7XG4gICAgICAgIGFnZW50TmFtZTogJ1Rlc3RBZ2VudCcsXG4gICAgICAgIHByb21wdDogJ1Rlc3QgcHJvbXB0JyxcbiAgICAgICAgYWdlbnREZWZpbml0aW9uOiB7XG4gICAgICAgICAgYmVkcm9ja01vZGVsOiB7IGZtTW9kZWxJZDogdGVzdE1vZGVsIH0sXG4gICAgICAgICAgc3lzdGVtUHJvbXB0LFxuICAgICAgICAgIGtub3dsZWRnZUJhc2VzOiBba2JdLFxuICAgICAgICAgIGFkZGl0aW9uYWxQb2xpY3lTdGF0ZW1lbnRzRm9yS25vd2xlZGdlQmFzZXM6IFthZGRpdGlvbmFsU3RhdGVtZW50XSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgICAgIC8vIFZlcmlmeSBhZGRpdGlvbmFsIHN0YXRlbWVudCBpcyBpbmNsdWRlZCBpbiB0aGUgS0IgcGVybWlzc2lvbnMgcG9saWN5XG4gICAgICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoJ0FXUzo6SUFNOjpSb2xlJywge1xuICAgICAgICBQb2xpY2llczogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgIFBvbGljeU5hbWU6ICdLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMnLFxuICAgICAgICAgICAgUG9saWN5RG9jdW1lbnQ6IHtcbiAgICAgICAgICAgICAgU3RhdGVtZW50OiBNYXRjaC5hcnJheVdpdGgoW1xuICAgICAgICAgICAgICAgIE1hdGNoLm9iamVjdExpa2Uoe1xuICAgICAgICAgICAgICAgICAgQWN0aW9uOiAnczM6R2V0T2JqZWN0JyxcbiAgICAgICAgICAgICAgICAgIEVmZmVjdDogJ0FsbG93JyxcbiAgICAgICAgICAgICAgICAgIFJlc291cmNlOiAnYXJuOmF3czpzMzo6Om15LWN1c3RvbS1idWNrZXQvKicsXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSksXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NvbWJpbmVzIEtCIHBlcm1pc3Npb25zIHdpdGggYWRkaXRpb25hbCBzdGF0ZW1lbnRzJywgKCkgPT4ge1xuICAgICAgY29uc3Qga2IgPSBuZXcgQmVkcm9ja0tub3dsZWRnZUJhc2Uoc3RhY2ssICdQcm9kdWN0RG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3Byb2R1Y3QtZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvZHVjdCBkb2N1bWVudGF0aW9uJyxcbiAgICAgICAga25vd2xlZGdlQmFzZUlkOiAnQUJDRDEyMzQnLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGFkZGl0aW9uYWxTdGF0ZW1lbnQgPSBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICAgIGFjdGlvbnM6IFsnZHluYW1vZGI6R2V0SXRlbSddLFxuICAgICAgICByZXNvdXJjZXM6IFsnYXJuOmF3czpkeW5hbW9kYjp1cy1lYXN0LTE6MTIzNDU2Nzg5MDEyOnRhYmxlL215LXRhYmxlJ10sXG4gICAgICB9KTtcblxuICAgICAgbmV3IEJhdGNoQWdlbnQoc3RhY2ssICdBZ2VudCcsIHtcbiAgICAgICAgYWdlbnROYW1lOiAnVGVzdEFnZW50JyxcbiAgICAgICAgcHJvbXB0OiAnVGVzdCBwcm9tcHQnLFxuICAgICAgICBhZ2VudERlZmluaXRpb246IHtcbiAgICAgICAgICBiZWRyb2NrTW9kZWw6IHsgZm1Nb2RlbElkOiB0ZXN0TW9kZWwgfSxcbiAgICAgICAgICBzeXN0ZW1Qcm9tcHQsXG4gICAgICAgICAga25vd2xlZGdlQmFzZXM6IFtrYl0sXG4gICAgICAgICAgYWRkaXRpb25hbFBvbGljeVN0YXRlbWVudHNGb3JLbm93bGVkZ2VCYXNlczogW2FkZGl0aW9uYWxTdGF0ZW1lbnRdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICAgICAgLy8gVmVyaWZ5IGJvdGggS0IgcGVybWlzc2lvbnMgYW5kIGFkZGl0aW9uYWwgc3RhdGVtZW50cyBhcmUgcHJlc2VudFxuICAgICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKCdBV1M6OklBTTo6Um9sZScsIHtcbiAgICAgICAgUG9saWNpZXM6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgTWF0Y2gub2JqZWN0TGlrZSh7XG4gICAgICAgICAgICBQb2xpY3lOYW1lOiAnS25vd2xlZGdlQmFzZVBlcm1pc3Npb25zJyxcbiAgICAgICAgICAgIFBvbGljeURvY3VtZW50OiB7XG4gICAgICAgICAgICAgIFN0YXRlbWVudDogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIE1hdGNoLm9iamVjdExpa2Uoe1xuICAgICAgICAgICAgICAgICAgQWN0aW9uOiAnZHluYW1vZGI6R2V0SXRlbScsXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ0d1YXJkcmFpbCBQZXJtaXNzaW9ucycsICgpID0+IHtcbiAgICB0ZXN0KCdhZGRzIGd1YXJkcmFpbCBwZXJtaXNzaW9ucyB3aGVuIEtCIGhhcyBndWFyZHJhaWwgY29uZmlndXJlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGtiID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnU2VjdXJlRG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3NlY3VyZS1kb2N1bWVudGF0aW9uJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdTZWN1cmUgZG9jdW1lbnRhdGlvbiB3aXRoIGd1YXJkcmFpbHMnLFxuICAgICAgICBrbm93bGVkZ2VCYXNlSWQ6ICdBQkNEMTIzNCcsXG4gICAgICAgIGd1YXJkcmFpbDoge1xuICAgICAgICAgIGd1YXJkcmFpbElkOiAnbXktZ3VhcmRyYWlsJyxcbiAgICAgICAgICBndWFyZHJhaWxWZXJzaW9uOiAnMScsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgbmV3IEJhdGNoQWdlbnQoc3RhY2ssICdBZ2VudCcsIHtcbiAgICAgICAgYWdlbnROYW1lOiAnVGVzdEFnZW50JyxcbiAgICAgICAgcHJvbXB0OiAnVGVzdCBwcm9tcHQnLFxuICAgICAgICBhZ2VudERlZmluaXRpb246IHtcbiAgICAgICAgICBiZWRyb2NrTW9kZWw6IHsgZm1Nb2RlbElkOiB0ZXN0TW9kZWwgfSxcbiAgICAgICAgICBzeXN0ZW1Qcm9tcHQsXG4gICAgICAgICAga25vd2xlZGdlQmFzZXM6IFtrYl0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuXG4gICAgICAvLyBWZXJpZnkgZ3VhcmRyYWlsIHBlcm1pc3Npb25zIGFyZSBhZGRlZCBhcyBpbmxpbmUgcG9saWN5XG4gICAgICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoJ0FXUzo6SUFNOjpSb2xlJywge1xuICAgICAgICBQb2xpY2llczogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgIFBvbGljeU5hbWU6ICdLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMnLFxuICAgICAgICAgICAgUG9saWN5RG9jdW1lbnQ6IHtcbiAgICAgICAgICAgICAgU3RhdGVtZW50OiBNYXRjaC5hcnJheVdpdGgoW1xuICAgICAgICAgICAgICAgIE1hdGNoLm9iamVjdExpa2Uoe1xuICAgICAgICAgICAgICAgICAgQWN0aW9uOiAnYmVkcm9jazpBcHBseUd1YXJkcmFpbCcsXG4gICAgICAgICAgICAgICAgICBSZXNvdXJjZTogJ2Fybjphd3M6YmVkcm9jazp1cy1lYXN0LTE6MTIzNDU2Nzg5MDEyOmd1YXJkcmFpbC9teS1ndWFyZHJhaWwnLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSksXG4gICAgICAgIF0pLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
318
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1hZ2VudC1rbm93bGVkZ2UtYmFzZS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdXNlLWNhc2VzL2ZyYW1ld29yay90ZXN0cy9iYXNlLWFnZW50LWtub3dsZWRnZS1iYXNlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHFFQUFxRTtBQUNyRSxzQ0FBc0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRXRDLDJDQUE2QjtBQUM3Qiw2Q0FBeUM7QUFDekMsdURBQXlEO0FBQ3pELHlEQUFvRTtBQUNwRSxpREFBOEQ7QUFDOUQsNkRBQWtEO0FBQ2xELDJEQUEyRDtBQUMzRCx1REFBbUQ7QUFDbkQsNkRBQWdFO0FBRWhFLFFBQVEsQ0FBQyxzQ0FBc0MsRUFBRSxHQUFHLEVBQUU7SUFDcEQsSUFBSSxHQUFRLENBQUM7SUFDYixJQUFJLEtBQVksQ0FBQztJQUNqQixJQUFJLFlBQW1CLENBQUM7SUFDeEIsTUFBTSxTQUFTLEdBQUcsdUNBQXlCLENBQUMsdUNBQXVDLENBQUM7SUFFcEYsVUFBVSxDQUFDLEdBQUcsRUFBRTtRQUNkLEdBQUcsR0FBRyxJQUFBLDBCQUFhLEdBQUUsQ0FBQztRQUN0QixLQUFLLEdBQUcsSUFBSSxtQkFBSyxDQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUU7WUFDbEMsR0FBRyxFQUFFLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFO1NBQ3RELENBQUMsQ0FBQztRQUVILFlBQVksR0FBRyxJQUFJLHFCQUFLLENBQUMsS0FBSyxFQUFFLGNBQWMsRUFBRTtZQUM5QyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsb0RBQW9ELENBQUM7U0FDakYsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxRQUFRLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxFQUFFO1FBQ3RDLElBQUksQ0FBQywyREFBMkQsRUFB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LGFBQWE7Z0JBQ3JCLGVBQWUsRUFBRTtvQkFDZixZQUFZLEVBQUUsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFO29CQUN0QyxZQUFZO29CQUNaLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQztpQkFDckI7YUFDRixDQUFDLENBQUM7WUFFSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUUzQywwREFBMEQ7WUFDMUQsUUFBUSxDQUFDLHFCQUFxQixDQUFDLGdCQUFnQixFQUFFO2dCQUMvQyxRQUFRLEVBQUUsa0JBQUssQ0FBQyxTQUFTLENBQUM7b0JBQ3hCLGtCQUFLLENBQUMsVUFBVSxDQUFDO3dCQUNmLFVBQVUsRUFBRSwwQkFBMEI7d0JBQ3RDLGNBQWMsRUFBRTs0QkFDZCxTQUFTLEVBQUUsa0JBQUssQ0FBQyxTQUFTLENBQUM7Z0NBQ3pCLGtCQUFLLENBQUMsVUFBVSxDQUFDO29DQUNmLE1BQU0sRUFBRSx3QkFBd0I7b0NBQ2hDLFFBQVEsRUFBRSwrREFBK0Q7aUNBQzFFLENBQUM7NkJBQ0gsQ0FBQzt5QkFDSDtxQkFDRixDQUFDO2lCQUNILENBQUM7YUFDSCxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBBcHAsIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgVGVtcGxhdGUsIE1hdGNoIH0gZnJvbSAnYXdzLWNkay1saWIvYXNzZXJ0aW9ucyc7XG5pbXBvcnQgeyBGb3VuZGF0aW9uTW9kZWxJZGVudGlmaWVyIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWJlZHJvY2snO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBFZmZlY3QgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCB7IEFzc2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzLWFzc2V0cyc7XG5pbXBvcnQgeyBjcmVhdGVUZXN0QXBwIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL3Rlc3QtdXRpbHMnO1xuaW1wb3J0IHsgQmF0Y2hBZ2VudCB9IGZyb20gJy4uL2FnZW50cy9iYXRjaC1hZ2VudCc7XG5pbXBvcnQgeyBCZWRyb2NrS25vd2xlZGdlQmFzZSB9IGZyb20gJy4uL2FnZW50cy9rbm93bGVkZ2UtYmFzZSc7XG5cbmRlc2NyaWJlKCdCYXNlQWdlbnQgS25vd2xlZGdlIEJhc2UgSW50ZWdyYXRpb24nLCAoKSA9PiB7XG4gIGxldCBhcHA6IEFwcDtcbiAgbGV0IHN0YWNrOiBTdGFjaztcbiAgbGV0IHN5c3RlbVByb21wdDogQXNzZXQ7XG4gIGNvbnN0IHRlc3RNb2RlbCA9IEZvdW5kYXRpb25Nb2RlbElkZW50aWZpZXIuQU5USFJPUElDX0NMQVVERV8zX1NPTk5FVF8yMDI0MDIyOV9WMV8wO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIGFwcCA9IGNyZWF0ZVRlc3RBcHAoKTtcbiAgICBzdGFjayA9IG5ldyBTdGFjayhhcHAsICdUZXN0U3RhY2snLCB7XG4gICAgICBlbnY6IHsgYWNjb3VudDogJzEyMzQ1Njc4OTAxMicsIHJlZ2lvbjogJ3VzLWVhc3QtMScgfSxcbiAgICB9KTtcblxuICAgIHN5c3RlbVByb21wdCA9IG5ldyBBc3NldChzdGFjaywgJ1N5c3RlbVByb21wdCcsIHtcbiAgICAgIHBhdGg6IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi9hZ2VudHMvcmVzb3VyY2VzL2RlZmF1bHQtc3RyYW5kcy1hZ2VudC9iYXRjaC5weScpLFxuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnQmFja3dhcmQgQ29tcGF0aWJpbGl0eScsICgpID0+IHtcbiAgICB0ZXN0KCdjcmVhdGVzIGFnZW50IHdpdGhvdXQga25vd2xlZGdlIGJhc2VzIChubyBLQnMgY29uZmlndXJlZCknLCAoKSA9PiB7XG4gICAgICBuZXcgQmF0Y2hBZ2VudChzdGFjaywgJ0FnZW50Jywge1xuICAgICAgICBhZ2VudE5hbWU6ICdUZXN0QWdlbnQnLFxuICAgICAgICBwcm9tcHQ6ICdUZXN0IHByb21wdCcsXG4gICAgICAgIGFnZW50RGVmaW5pdGlvbjoge1xuICAgICAgICAgIGJlZHJvY2tNb2RlbDogeyBmbU1vZGVsSWQ6IHRlc3RNb2RlbCB9LFxuICAgICAgICAgIHN5c3RlbVByb21wdCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgICAgIC8vIEFnZW50IHNob3VsZCBiZSBjcmVhdGVkIHN1Y2Nlc3NmdWxseVxuICAgICAgdGVtcGxhdGUucmVzb3VyY2VDb3VudElzKCdBV1M6OkxhbWJkYTo6RnVuY3Rpb24nLCAxKTtcblxuICAgICAgLy8gTm8gS0IgcGVybWlzc2lvbnMgc2hvdWxkIGJlIGFkZGVkIC0gdmVyaWZ5IG5vIEtub3dsZWRnZUJhc2VQZXJtaXNzaW9ucyBpbmxpbmUgcG9saWN5XG4gICAgICBjb25zdCByb2xlcyA9IHRlbXBsYXRlLmZpbmRSZXNvdXJjZXMoJ0FXUzo6SUFNOjpSb2xlJyk7XG4gICAgICBjb25zdCBhZ2VudFJvbGUgPSBPYmplY3QudmFsdWVzKHJvbGVzKS5maW5kKChyb2xlOiBhbnkpID0+XG4gICAgICAgIHJvbGUuUHJvcGVydGllcz8uUm9sZU5hbWU/LmluY2x1ZGVzPy4oJ0FnZW50JykgfHxcbiAgICAgICAgcm9sZS5Qcm9wZXJ0aWVzPy5Bc3N1bWVSb2xlUG9saWN5RG9jdW1lbnQ/LlN0YXRlbWVudD8uc29tZT8uKChzOiBhbnkpID0+XG4gICAgICAgICAgcy5QcmluY2lwYWw/LlNlcnZpY2UgPT09ICdsYW1iZGEuYW1hem9uYXdzLmNvbScsXG4gICAgICAgICksXG4gICAgICApIGFzIGFueTtcblxuICAgICAgLy8gQ2hlY2sgdGhhdCBLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMgcG9saWN5IGRvZXNuJ3QgZXhpc3RcbiAgICAgIGNvbnN0IHBvbGljaWVzID0gYWdlbnRSb2xlPy5Qcm9wZXJ0aWVzPy5Qb2xpY2llcyB8fCBbXTtcbiAgICAgIGNvbnN0IGhhc0tiUG9saWN5ID0gcG9saWNpZXMuc29tZSgocDogYW55KSA9PiBwLlBvbGljeU5hbWUgPT09ICdLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMnKTtcbiAgICAgIGV4cGVjdChoYXNLYlBvbGljeSkudG9CZShmYWxzZSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdTaW5nbGUgS25vd2xlZGdlIEJhc2UnLCAoKSA9PiB7XG4gICAgdGVzdCgnY3JlYXRlcyBhZ2VudCB3aXRoIHNpbmdsZSBLQiBhbmQgZ2VuZXJhdGVzIElBTSBwZXJtaXNzaW9ucycsICgpID0+IHtcbiAgICAgIGNvbnN0IGtiID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnUHJvZHVjdERvY3MnLCB7XG4gICAgICAgIG5hbWU6ICdwcm9kdWN0LWRvY3VtZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1Byb2R1Y3QgZG9jdW1lbnRhdGlvbiBhbmQgRkFRcycsXG4gICAgICAgIGtub3dsZWRnZUJhc2VJZDogJ0FCQ0QxMjM0JyxcbiAgICAgIH0pO1xuXG4gICAgICBuZXcgQmF0Y2hBZ2VudChzdGFjaywgJ0FnZW50Jywge1xuICAgICAgICBhZ2VudE5hbWU6ICdUZXN0QWdlbnQnLFxuICAgICAgICBwcm9tcHQ6ICdUZXN0IHByb21wdCcsXG4gICAgICAgIGFnZW50RGVmaW5pdGlvbjoge1xuICAgICAgICAgIGJlZHJvY2tNb2RlbDogeyBmbU1vZGVsSWQ6IHRlc3RNb2RlbCB9LFxuICAgICAgICAgIHN5c3RlbVByb21wdCxcbiAgICAgICAgICBrbm93bGVkZ2VCYXNlczogW2tiXSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgICAgIC8vIFZlcmlmeSBLQiBwZXJtaXNzaW9ucyBhcmUgYWRkZWQgYXMgaW5saW5lIHBvbGljeSBvbiB0aGUgcm9sZVxuICAgICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKCdBV1M6OklBTTo6Um9sZScsIHtcbiAgICAgICAgUG9saWNpZXM6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgTWF0Y2gub2JqZWN0TGlrZSh7XG4gICAgICAgICAgICBQb2xpY3lOYW1lOiAnS25vd2xlZGdlQmFzZVBlcm1pc3Npb25zJyxcbiAgICAgICAgICAgIFBvbGljeURvY3VtZW50OiB7XG4gICAgICAgICAgICAgIFN0YXRlbWVudDogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgICAgRWZmZWN0OiAnQWxsb3cnLFxuICAgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICdhcm46YXdzOmJlZHJvY2s6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjprbm93bGVkZ2UtYmFzZS9BQkNEMTIzNCcsXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSksXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NyZWF0ZXMgcmV0cmlldmFsIHRvb2wgYXNzZXQgd2hlbiBLQiBpcyBjb25maWd1cmVkJywgKCkgPT4ge1xuICAgICAgY29uc3Qga2IgPSBuZXcgQmVkcm9ja0tub3dsZWRnZUJhc2Uoc3RhY2ssICdQcm9kdWN0RG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3Byb2R1Y3QtZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvZHVjdCBkb2N1bWVudGF0aW9uIGFuZCBGQVFzJyxcbiAgICAgICAga25vd2xlZGdlQmFzZUlkOiAnQUJDRDEyMzQnLFxuICAgICAgfSk7XG5cbiAgICAgIG5ldyBCYXRjaEFnZW50KHN0YWNrLCAnQWdlbnQnLCB7XG4gICAgICAgIGFnZW50TmFtZTogJ1Rlc3RBZ2VudCcsXG4gICAgICAgIHByb21wdDogJ1Rlc3QgcHJvbXB0JyxcbiAgICAgICAgYWdlbnREZWZpbml0aW9uOiB7XG4gICAgICAgICAgYmVkcm9ja01vZGVsOiB7IGZtTW9kZWxJZDogdGVzdE1vZGVsIH0sXG4gICAgICAgICAgc3lzdGVtUHJvbXB0LFxuICAgICAgICAgIGtub3dsZWRnZUJhc2VzOiBba2JdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICAgICAgLy8gVmVyaWZ5IExhbWJkYSBmdW5jdGlvbiBpcyBjcmVhdGVkIChhZ2VudCBmdW5jdGlvbilcbiAgICAgIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcygnQVdTOjpMYW1iZGE6OkZ1bmN0aW9uJywgMSk7XG5cbiAgICAgIC8vIFZlcmlmeSBJQU0gcG9saWNpZXMgZ3JhbnQgUzMgcmVhZCBhY2Nlc3MgZm9yIGFzc2V0c1xuICAgICAgLy8gV2hlbiBLQiBpcyBjb25maWd1cmVkLCB0aGUgcmV0cmlldmFsIHRvb2wgYXNzZXQgc2hvdWxkIGJlIGdyYW50ZWQgcmVhZCBhY2Nlc3NcbiAgICAgIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcygnQVdTOjpJQU06OlBvbGljeScsIHtcbiAgICAgICAgUG9saWN5RG9jdW1lbnQ6IHtcbiAgICAgICAgICBTdGF0ZW1lbnQ6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgQWN0aW9uOiBNYXRjaC5hcnJheVdpdGgoWydzMzpHZXRPYmplY3QqJywgJ3MzOkdldEJ1Y2tldConLCAnczM6TGlzdConXSksXG4gICAgICAgICAgICAgIEVmZmVjdDogJ0FsbG93JyxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIF0pLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdNdWx0aXBsZSBLbm93bGVkZ2UgQmFzZXMnLCAoKSA9PiB7XG4gICAgdGVzdCgnY3JlYXRlcyBhZ2VudCB3aXRoIG11bHRpcGxlIEtCcyBhbmQgZ2VuZXJhdGVzIHBlcm1pc3Npb25zIGZvciBhbGwnLCAoKSA9PiB7XG4gICAgICBjb25zdCBrYjEgPSBuZXcgQmVkcm9ja0tub3dsZWRnZUJhc2Uoc3RhY2ssICdQcm9kdWN0RG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3Byb2R1Y3QtZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvZHVjdCBkb2N1bWVudGF0aW9uJyxcbiAgICAgICAga25vd2xlZGdlQmFzZUlkOiAnS0ItUFJPRFVDVCcsXG4gICAgICB9KTtcblxuICAgICAgY29uc3Qga2IyID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnU3VwcG9ydERvY3MnLCB7XG4gICAgICAgIG5hbWU6ICdzdXBwb3J0LWRvY3VtZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1N1cHBvcnQgZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGtub3dsZWRnZUJhc2VJZDogJ0tCLVNVUFBPUlQnLFxuICAgICAgfSk7XG5cbiAgICAgIG5ldyBCYXRjaEFnZW50KHN0YWNrLCAnQWdlbnQnLCB7XG4gICAgICAgIGFnZW50TmFtZTogJ1Rlc3RBZ2VudCcsXG4gICAgICAgIHByb21wdDogJ1Rlc3QgcHJvbXB0JyxcbiAgICAgICAgYWdlbnREZWZpbml0aW9uOiB7XG4gICAgICAgICAgYmVkcm9ja01vZGVsOiB7IGZtTW9kZWxJZDogdGVzdE1vZGVsIH0sXG4gICAgICAgICAgc3lzdGVtUHJvbXB0LFxuICAgICAgICAgIGtub3dsZWRnZUJhc2VzOiBba2IxLCBrYjJdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICAgICAgLy8gVmVyaWZ5IHBlcm1pc3Npb25zIGZvciBib3RoIEtCcyBhcmUgYWRkZWQgYXMgaW5saW5lIHBvbGljeVxuICAgICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKCdBV1M6OklBTTo6Um9sZScsIHtcbiAgICAgICAgUG9saWNpZXM6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgTWF0Y2gub2JqZWN0TGlrZSh7XG4gICAgICAgICAgICBQb2xpY3lOYW1lOiAnS25vd2xlZGdlQmFzZVBlcm1pc3Npb25zJyxcbiAgICAgICAgICAgIFBvbGljeURvY3VtZW50OiB7XG4gICAgICAgICAgICAgIFN0YXRlbWVudDogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICdhcm46YXdzOmJlZHJvY2s6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjprbm93bGVkZ2UtYmFzZS9LQi1QUk9EVUNUJyxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICdhcm46YXdzOmJlZHJvY2s6dXMtZWFzdC0xOjEyMzQ1Njc4OTAxMjprbm93bGVkZ2UtYmFzZS9LQi1TVVBQT1JUJyxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICBdKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgnQWRkaXRpb25hbCBLQiBQb2xpY3kgU3RhdGVtZW50cycsICgpID0+IHtcbiAgICB0ZXN0KCdhZGRzIGFkZGl0aW9uYWwgS0IgcG9saWN5IHN0YXRlbWVudHMgd2hlbiBwcm92aWRlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGtiID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnUHJvZHVjdERvY3MnLCB7XG4gICAgICAgIG5hbWU6ICdwcm9kdWN0LWRvY3VtZW50YXRpb24nLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1Byb2R1Y3QgZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGtub3dsZWRnZUJhc2VJZDogJ0FCQ0QxMjM0JyxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCBhZGRpdGlvbmFsU3RhdGVtZW50ID0gbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIGVmZmVjdDogRWZmZWN0LkFMTE9XLFxuICAgICAgICBhY3Rpb25zOiBbJ3MzOkdldE9iamVjdCddLFxuICAgICAgICByZXNvdXJjZXM6IFsnYXJuOmF3czpzMzo6Om15LWN1c3RvbS1idWNrZXQvKiddLFxuICAgICAgfSk7XG5cbiAgICAgIG5ldyBCYXRjaEFnZW50KHN0YWNrLCAnQWdlbnQnLCB7XG4gICAgICAgIGFnZW50TmFtZTogJ1Rlc3RBZ2VudCcsXG4gICAgICAgIHByb21wdDogJ1Rlc3QgcHJvbXB0JyxcbiAgICAgICAgYWdlbnREZWZpbml0aW9uOiB7XG4gICAgICAgICAgYmVkcm9ja01vZGVsOiB7IGZtTW9kZWxJZDogdGVzdE1vZGVsIH0sXG4gICAgICAgICAgc3lzdGVtUHJvbXB0LFxuICAgICAgICAgIGtub3dsZWRnZUJhc2VzOiBba2JdLFxuICAgICAgICAgIGFkZGl0aW9uYWxQb2xpY3lTdGF0ZW1lbnRzRm9yS25vd2xlZGdlQmFzZXM6IFthZGRpdGlvbmFsU3RhdGVtZW50XSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG5cbiAgICAgIC8vIFZlcmlmeSBhZGRpdGlvbmFsIHN0YXRlbWVudCBpcyBpbmNsdWRlZCBpbiB0aGUgS0IgcGVybWlzc2lvbnMgcG9saWN5XG4gICAgICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoJ0FXUzo6SUFNOjpSb2xlJywge1xuICAgICAgICBQb2xpY2llczogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgIFBvbGljeU5hbWU6ICdLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMnLFxuICAgICAgICAgICAgUG9saWN5RG9jdW1lbnQ6IHtcbiAgICAgICAgICAgICAgU3RhdGVtZW50OiBNYXRjaC5hcnJheVdpdGgoW1xuICAgICAgICAgICAgICAgIE1hdGNoLm9iamVjdExpa2Uoe1xuICAgICAgICAgICAgICAgICAgQWN0aW9uOiAnczM6R2V0T2JqZWN0JyxcbiAgICAgICAgICAgICAgICAgIEVmZmVjdDogJ0FsbG93JyxcbiAgICAgICAgICAgICAgICAgIFJlc291cmNlOiAnYXJuOmF3czpzMzo6Om15LWN1c3RvbS1idWNrZXQvKicsXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSksXG4gICAgICB9KTtcbiAgICB9KTtcblxuICAgIHRlc3QoJ2NvbWJpbmVzIEtCIHBlcm1pc3Npb25zIHdpdGggYWRkaXRpb25hbCBzdGF0ZW1lbnRzJywgKCkgPT4ge1xuICAgICAgY29uc3Qga2IgPSBuZXcgQmVkcm9ja0tub3dsZWRnZUJhc2Uoc3RhY2ssICdQcm9kdWN0RG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3Byb2R1Y3QtZG9jdW1lbnRhdGlvbicsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnUHJvZHVjdCBkb2N1bWVudGF0aW9uJyxcbiAgICAgICAga25vd2xlZGdlQmFzZUlkOiAnQUJDRDEyMzQnLFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IGFkZGl0aW9uYWxTdGF0ZW1lbnQgPSBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICAgIGFjdGlvbnM6IFsnZHluYW1vZGI6R2V0SXRlbSddLFxuICAgICAgICByZXNvdXJjZXM6IFsnYXJuOmF3czpkeW5hbW9kYjp1cy1lYXN0LTE6MTIzNDU2Nzg5MDEyOnRhYmxlL215LXRhYmxlJ10sXG4gICAgICB9KTtcblxuICAgICAgbmV3IEJhdGNoQWdlbnQoc3RhY2ssICdBZ2VudCcsIHtcbiAgICAgICAgYWdlbnROYW1lOiAnVGVzdEFnZW50JyxcbiAgICAgICAgcHJvbXB0OiAnVGVzdCBwcm9tcHQnLFxuICAgICAgICBhZ2VudERlZmluaXRpb246IHtcbiAgICAgICAgICBiZWRyb2NrTW9kZWw6IHsgZm1Nb2RlbElkOiB0ZXN0TW9kZWwgfSxcbiAgICAgICAgICBzeXN0ZW1Qcm9tcHQsXG4gICAgICAgICAga25vd2xlZGdlQmFzZXM6IFtrYl0sXG4gICAgICAgICAgYWRkaXRpb25hbFBvbGljeVN0YXRlbWVudHNGb3JLbm93bGVkZ2VCYXNlczogW2FkZGl0aW9uYWxTdGF0ZW1lbnRdLFxuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICAgIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcblxuICAgICAgLy8gVmVyaWZ5IGJvdGggS0IgcGVybWlzc2lvbnMgYW5kIGFkZGl0aW9uYWwgc3RhdGVtZW50cyBhcmUgcHJlc2VudFxuICAgICAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKCdBV1M6OklBTTo6Um9sZScsIHtcbiAgICAgICAgUG9saWNpZXM6IE1hdGNoLmFycmF5V2l0aChbXG4gICAgICAgICAgTWF0Y2gub2JqZWN0TGlrZSh7XG4gICAgICAgICAgICBQb2xpY3lOYW1lOiAnS25vd2xlZGdlQmFzZVBlcm1pc3Npb25zJyxcbiAgICAgICAgICAgIFBvbGljeURvY3VtZW50OiB7XG4gICAgICAgICAgICAgIFN0YXRlbWVudDogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgICAgICAgIEFjdGlvbjogWydiZWRyb2NrOlJldHJpZXZlJywgJ2JlZHJvY2s6UmV0cmlldmVBbmRHZW5lcmF0ZSddLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIE1hdGNoLm9iamVjdExpa2Uoe1xuICAgICAgICAgICAgICAgICAgQWN0aW9uOiAnZHluYW1vZGI6R2V0SXRlbScsXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXSksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ0d1YXJkcmFpbCBQZXJtaXNzaW9ucycsICgpID0+IHtcbiAgICB0ZXN0KCdhZGRzIGd1YXJkcmFpbCBwZXJtaXNzaW9ucyB3aGVuIEtCIGhhcyBndWFyZHJhaWwgY29uZmlndXJlZCcsICgpID0+IHtcbiAgICAgIGNvbnN0IGtiID0gbmV3IEJlZHJvY2tLbm93bGVkZ2VCYXNlKHN0YWNrLCAnU2VjdXJlRG9jcycsIHtcbiAgICAgICAgbmFtZTogJ3NlY3VyZS1kb2N1bWVudGF0aW9uJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdTZWN1cmUgZG9jdW1lbnRhdGlvbiB3aXRoIGd1YXJkcmFpbHMnLFxuICAgICAgICBrbm93bGVkZ2VCYXNlSWQ6ICdBQkNEMTIzNCcsXG4gICAgICAgIGd1YXJkcmFpbDoge1xuICAgICAgICAgIGd1YXJkcmFpbElkOiAnbXktZ3VhcmRyYWlsJyxcbiAgICAgICAgICBndWFyZHJhaWxWZXJzaW9uOiAnMScsXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgbmV3IEJhdGNoQWdlbnQoc3RhY2ssICdBZ2VudCcsIHtcbiAgICAgICAgYWdlbnROYW1lOiAnVGVzdEFnZW50JyxcbiAgICAgICAgcHJvbXB0OiAnVGVzdCBwcm9tcHQnLFxuICAgICAgICBhZ2VudERlZmluaXRpb246IHtcbiAgICAgICAgICBiZWRyb2NrTW9kZWw6IHsgZm1Nb2RlbElkOiB0ZXN0TW9kZWwgfSxcbiAgICAgICAgICBzeXN0ZW1Qcm9tcHQsXG4gICAgICAgICAga25vd2xlZGdlQmFzZXM6IFtrYl0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgICAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuXG4gICAgICAvLyBWZXJpZnkgZ3VhcmRyYWlsIHBlcm1pc3Npb25zIGFyZSBhZGRlZCBhcyBpbmxpbmUgcG9saWN5XG4gICAgICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoJ0FXUzo6SUFNOjpSb2xlJywge1xuICAgICAgICBQb2xpY2llczogTWF0Y2guYXJyYXlXaXRoKFtcbiAgICAgICAgICBNYXRjaC5vYmplY3RMaWtlKHtcbiAgICAgICAgICAgIFBvbGljeU5hbWU6ICdLbm93bGVkZ2VCYXNlUGVybWlzc2lvbnMnLFxuICAgICAgICAgICAgUG9saWN5RG9jdW1lbnQ6IHtcbiAgICAgICAgICAgICAgU3RhdGVtZW50OiBNYXRjaC5hcnJheVdpdGgoW1xuICAgICAgICAgICAgICAgIE1hdGNoLm9iamVjdExpa2Uoe1xuICAgICAgICAgICAgICAgICAgQWN0aW9uOiAnYmVkcm9jazpBcHBseUd1YXJkcmFpbCcsXG4gICAgICAgICAgICAgICAgICBSZXNvdXJjZTogJ2Fybjphd3M6YmVkcm9jazp1cy1lYXN0LTE6MTIzNDU2Nzg5MDEyOmd1YXJkcmFpbC9teS1ndWFyZHJhaWwnLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSksXG4gICAgICAgIF0pLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=