@effect-aws/client-mq 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @effect-aws/client-mq
2
2
 
3
+ ## 1.1.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#80](https://github.com/floydspace/effect-aws/pull/80) [`4b16fbe`](https://github.com/floydspace/effect-aws/commit/4b16fbebce8131df7798ee92f43cf6b7df3e907c) Thanks [@floydspace](https://github.com/floydspace)! - simplify layers configuration (closes #78)
8
+
9
+ ## 1.0.1
10
+
11
+ ### Patch Changes
12
+
13
+ - [#75](https://github.com/floydspace/effect-aws/pull/75) [`9dc170d`](https://github.com/floydspace/effect-aws/commit/9dc170d975c04888bbc7ca7b241b4b5265668fb5) Thanks [@godu](https://github.com/godu)! - export the HttpHandlerOptions type
14
+
3
15
  ## 1.0.0
4
16
 
5
17
  ### Major Changes
package/README.md CHANGED
@@ -14,13 +14,13 @@ npm install --save @effect-aws/client-mq
14
14
  With default MqClient instance:
15
15
 
16
16
  ```typescript
17
- import { MqService, DefaultMqServiceLayer } from "@effect-aws/client-mq";
17
+ import { Mq } from "@effect-aws/client-mq";
18
18
 
19
- const program = MqService.listBrokers(args);
19
+ const program = Mq.listBrokers(args);
20
20
 
21
21
  const result = pipe(
22
22
  program,
23
- Effect.provide(DefaultMqServiceLayer),
23
+ Effect.provide(Mq.defaultLayer),
24
24
  Effect.runPromise,
25
25
  );
26
26
  ```
@@ -28,23 +28,15 @@ const result = pipe(
28
28
  With custom MqClient instance:
29
29
 
30
30
  ```typescript
31
- import {
32
- MqService,
33
- BaseMqServiceLayer,
34
- MqClientInstance,
35
- } from "@effect-aws/client-mq";
31
+ import { Mq } from "@effect-aws/client-mq";
36
32
 
37
- const program = MqService.listBrokers(args);
38
-
39
- const MqClientInstanceLayer = Layer.succeed(
40
- MqClientInstance,
41
- new MqClient({ region: "eu-central-1" }),
42
- );
33
+ const program = Mq.listBrokers(args);
43
34
 
44
35
  const result = await pipe(
45
36
  program,
46
- Effect.provide(BaseMqServiceLayer),
47
- Effect.provide(MqClientInstanceLayer),
37
+ Effect.provide(
38
+ Mq.baseLayer(() => new MqClient({ region: "eu-central-1" })),
39
+ ),
48
40
  Effect.runPromise,
49
41
  );
50
42
  ```
@@ -52,34 +44,15 @@ const result = await pipe(
52
44
  With custom MqClient configuration:
53
45
 
54
46
  ```typescript
55
- import {
56
- MqService,
57
- BaseMqServiceLayer,
58
- DefaultMqClientConfigLayer,
59
- MqClientInstance,
60
- MqClientInstanceConfig,
61
- } from "@effect-aws/client-mq";
62
-
63
- const program = MqService.listBrokers(args);
64
-
65
- const MqClientInstanceLayer = Layer.provide(
66
- Layer.effect(
67
- MqClientInstance,
68
- MqClientInstanceConfig.pipe(
69
- Effect.map(
70
- (config) => new MqClient({ ...config, region: "eu-central-1" }),
71
- ),
72
- ),
73
- ),
74
- DefaultMqClientConfigLayer,
75
- );
47
+ import { Mq } from "@effect-aws/client-mq";
48
+
49
+ const program = Mq.listBrokers(args);
76
50
 
77
51
  const result = await pipe(
78
52
  program,
79
- Effect.provide(BaseMqServiceLayer),
80
- Effect.provide(MqClientInstanceLayer),
53
+ Effect.provide(Mq.layer({ region: "eu-central-1" })),
81
54
  Effect.runPromiseExit,
82
55
  );
83
56
  ```
84
57
 
85
- or map over `DefaultMqClientConfigLayer` layer context and update the configuration...
58
+ or use `Mq.baseLayer((default) => new MqClient({ ...default, region: "eu-central-1" }))`
@@ -1,11 +1,15 @@
1
1
  /**
2
2
  * @since 1.0.0
3
3
  */
4
- import { type CreateBrokerCommandInput, type CreateBrokerCommandOutput, type CreateConfigurationCommandInput, type CreateConfigurationCommandOutput, type CreateTagsCommandInput, type CreateTagsCommandOutput, type CreateUserCommandInput, type CreateUserCommandOutput, type DeleteBrokerCommandInput, type DeleteBrokerCommandOutput, type DeleteTagsCommandInput, type DeleteTagsCommandOutput, type DeleteUserCommandInput, type DeleteUserCommandOutput, type DescribeBrokerCommandInput, type DescribeBrokerCommandOutput, type DescribeBrokerEngineTypesCommandInput, type DescribeBrokerEngineTypesCommandOutput, type DescribeBrokerInstanceOptionsCommandInput, type DescribeBrokerInstanceOptionsCommandOutput, type DescribeConfigurationCommandInput, type DescribeConfigurationCommandOutput, type DescribeConfigurationRevisionCommandInput, type DescribeConfigurationRevisionCommandOutput, type DescribeUserCommandInput, type DescribeUserCommandOutput, type ListBrokersCommandInput, type ListBrokersCommandOutput, type ListConfigurationRevisionsCommandInput, type ListConfigurationRevisionsCommandOutput, type ListConfigurationsCommandInput, type ListConfigurationsCommandOutput, type ListTagsCommandInput, type ListTagsCommandOutput, type ListUsersCommandInput, type ListUsersCommandOutput, type PromoteCommandInput, type PromoteCommandOutput, type RebootBrokerCommandInput, type RebootBrokerCommandOutput, type UpdateBrokerCommandInput, type UpdateBrokerCommandOutput, type UpdateConfigurationCommandInput, type UpdateConfigurationCommandOutput, type UpdateUserCommandInput, type UpdateUserCommandOutput } from "@aws-sdk/client-mq";
4
+ import { type MqClient, type MqClientConfig, type CreateBrokerCommandInput, type CreateBrokerCommandOutput, type CreateConfigurationCommandInput, type CreateConfigurationCommandOutput, type CreateTagsCommandInput, type CreateTagsCommandOutput, type CreateUserCommandInput, type CreateUserCommandOutput, type DeleteBrokerCommandInput, type DeleteBrokerCommandOutput, type DeleteTagsCommandInput, type DeleteTagsCommandOutput, type DeleteUserCommandInput, type DeleteUserCommandOutput, type DescribeBrokerCommandInput, type DescribeBrokerCommandOutput, type DescribeBrokerEngineTypesCommandInput, type DescribeBrokerEngineTypesCommandOutput, type DescribeBrokerInstanceOptionsCommandInput, type DescribeBrokerInstanceOptionsCommandOutput, type DescribeConfigurationCommandInput, type DescribeConfigurationCommandOutput, type DescribeConfigurationRevisionCommandInput, type DescribeConfigurationRevisionCommandOutput, type DescribeUserCommandInput, type DescribeUserCommandOutput, type ListBrokersCommandInput, type ListBrokersCommandOutput, type ListConfigurationRevisionsCommandInput, type ListConfigurationRevisionsCommandOutput, type ListConfigurationsCommandInput, type ListConfigurationsCommandOutput, type ListTagsCommandInput, type ListTagsCommandOutput, type ListUsersCommandInput, type ListUsersCommandOutput, type PromoteCommandInput, type PromoteCommandOutput, type RebootBrokerCommandInput, type RebootBrokerCommandOutput, type UpdateBrokerCommandInput, type UpdateBrokerCommandOutput, type UpdateConfigurationCommandInput, type UpdateConfigurationCommandOutput, type UpdateUserCommandInput, type UpdateUserCommandOutput } from "@aws-sdk/client-mq";
5
5
  import { Effect, Layer } from "effect";
6
6
  import { BadRequestError, ConflictError, ForbiddenError, InternalServerError, NotFoundError, UnauthorizedError, SdkError } from "./Errors";
7
7
  import { MqClientInstance } from "./MqClientInstance";
8
- interface HttpHandlerOptions {
8
+ import { MqClientInstanceConfig } from "./MqClientInstanceConfig";
9
+ /**
10
+ * @since 1.0.0
11
+ */
12
+ export interface HttpHandlerOptions {
9
13
  /**
10
14
  * The maximum time in milliseconds that the connection phase of a request
11
15
  * may take before the connection attempt is abandoned.
@@ -107,6 +111,11 @@ interface MqService$ {
107
111
  */
108
112
  updateUser(args: UpdateUserCommandInput, options?: HttpHandlerOptions): Effect.Effect<UpdateUserCommandOutput, SdkError | BadRequestError | ConflictError | ForbiddenError | InternalServerError | NotFoundError>;
109
113
  }
114
+ /**
115
+ * @since 1.0.0
116
+ * @category constructors
117
+ */
118
+ export declare const makeMqService: Effect.Effect<MqService$, never, MqClientInstance>;
110
119
  declare const MqService_base: import("effect/Context").TagClass<MqService, "@effect-aws/client-mq/MqService", MqService$> & {
111
120
  readonly _: Effect.Effect<MqService$["_"], never, MqService>;
112
121
  createBroker: (args: CreateBrokerCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<CreateBrokerCommandOutput, BadRequestError | ConflictError | ForbiddenError | InternalServerError | UnauthorizedError | SdkError, MqService>;
@@ -140,25 +149,32 @@ declare const MqService_base: import("effect/Context").TagClass<MqService, "@eff
140
149
  * @category models
141
150
  */
142
151
  export declare class MqService extends MqService_base {
152
+ static readonly defaultLayer: Layer.Layer<MqService, never, never>;
153
+ static readonly layer: (config: MqClientConfig) => Layer.Layer<MqService, never, never>;
154
+ static readonly baseLayer: (evaluate: (defaultConfig: MqClientConfig) => MqClient) => Layer.Layer<MqService, never, never>;
143
155
  }
144
156
  /**
145
157
  * @since 1.0.0
146
- * @category constructors
158
+ * @category models
159
+ * @alias MqService
147
160
  */
148
- export declare const makeMqService: Effect.Effect<MqService$, never, MqClientInstance>;
161
+ export declare const Mq: typeof MqService;
149
162
  /**
150
163
  * @since 1.0.0
151
164
  * @category layers
165
+ * @deprecated use Mq.baseLayer instead
152
166
  */
153
167
  export declare const BaseMqServiceLayer: Layer.Layer<MqService, never, MqClientInstance>;
154
168
  /**
155
169
  * @since 1.0.0
156
170
  * @category layers
171
+ * @deprecated use Mq.layer instead
157
172
  */
158
- export declare const MqServiceLayer: Layer.Layer<MqService, never, import("./MqClientInstanceConfig").MqClientInstanceConfig>;
173
+ export declare const MqServiceLayer: Layer.Layer<MqService, never, MqClientInstanceConfig>;
159
174
  /**
160
175
  * @since 1.0.0
161
176
  * @category layers
177
+ * @deprecated use Mq.defaultLayer instead
162
178
  */
163
179
  export declare const DefaultMqServiceLayer: Layer.Layer<MqService, never, never>;
164
180
  export {};
package/lib/MqService.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
+ var _a;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultMqServiceLayer = exports.MqServiceLayer = exports.BaseMqServiceLayer = exports.makeMqService = exports.MqService = void 0;
4
+ exports.DefaultMqServiceLayer = exports.MqServiceLayer = exports.BaseMqServiceLayer = exports.Mq = exports.MqService = exports.makeMqService = void 0;
4
5
  /**
5
6
  * @since 1.0.0
6
7
  */
@@ -34,13 +35,6 @@ const commands = {
34
35
  UpdateConfigurationCommand: client_mq_1.UpdateConfigurationCommand,
35
36
  UpdateUserCommand: client_mq_1.UpdateUserCommand,
36
37
  };
37
- /**
38
- * @since 1.0.0
39
- * @category models
40
- */
41
- class MqService extends effect_1.Effect.Tag("@effect-aws/client-mq/MqService")() {
42
- }
43
- exports.MqService = MqService;
44
38
  /**
45
39
  * @since 1.0.0
46
40
  * @category constructors
@@ -79,19 +73,39 @@ exports.makeMqService = effect_1.Effect.gen(function* (_) {
79
73
  return { ...acc, [methodName]: methodImpl };
80
74
  }, {});
81
75
  });
76
+ /**
77
+ * @since 1.0.0
78
+ * @category models
79
+ */
80
+ class MqService extends effect_1.Effect.Tag("@effect-aws/client-mq/MqService")() {
81
+ }
82
+ exports.MqService = MqService;
83
+ _a = MqService;
84
+ MqService.defaultLayer = effect_1.Layer.effect(_a, exports.makeMqService).pipe(effect_1.Layer.provide(MqClientInstance_1.MqClientInstanceLayer), effect_1.Layer.provide(MqClientInstanceConfig_1.DefaultMqClientConfigLayer));
85
+ MqService.layer = (config) => effect_1.Layer.effect(_a, exports.makeMqService).pipe(effect_1.Layer.provide(MqClientInstance_1.MqClientInstanceLayer), effect_1.Layer.provide(effect_1.Layer.effect(MqClientInstanceConfig_1.MqClientInstanceConfig, MqClientInstanceConfig_1.makeDefaultMqClientInstanceConfig.pipe(effect_1.Effect.map((defaultConfig) => ({ ...defaultConfig, ...config }))))));
86
+ MqService.baseLayer = (evaluate) => effect_1.Layer.effect(_a, exports.makeMqService).pipe(effect_1.Layer.provide(effect_1.Layer.effect(MqClientInstance_1.MqClientInstance, effect_1.Effect.map(MqClientInstanceConfig_1.makeDefaultMqClientInstanceConfig, evaluate))));
87
+ /**
88
+ * @since 1.0.0
89
+ * @category models
90
+ * @alias MqService
91
+ */
92
+ exports.Mq = MqService;
82
93
  /**
83
94
  * @since 1.0.0
84
95
  * @category layers
96
+ * @deprecated use Mq.baseLayer instead
85
97
  */
86
98
  exports.BaseMqServiceLayer = effect_1.Layer.effect(MqService, exports.makeMqService);
87
99
  /**
88
100
  * @since 1.0.0
89
101
  * @category layers
102
+ * @deprecated use Mq.layer instead
90
103
  */
91
104
  exports.MqServiceLayer = exports.BaseMqServiceLayer.pipe(effect_1.Layer.provide(MqClientInstance_1.MqClientInstanceLayer));
92
105
  /**
93
106
  * @since 1.0.0
94
107
  * @category layers
108
+ * @deprecated use Mq.defaultLayer instead
95
109
  */
96
- exports.DefaultMqServiceLayer = exports.MqServiceLayer.pipe(effect_1.Layer.provide(MqClientInstanceConfig_1.DefaultMqClientConfigLayer));
97
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXFTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01xU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILGtEQXVFNEI7QUFDNUIsbUNBQXFEO0FBQ3JELHFDQVVrQjtBQUNsQix5REFBNkU7QUFDN0UscUVBQXNFO0FBVXRFLE1BQU0sUUFBUSxHQUFHO0lBQ2YsbUJBQW1CLEVBQW5CLCtCQUFtQjtJQUNuQiwwQkFBMEIsRUFBMUIsc0NBQTBCO0lBQzFCLGlCQUFpQixFQUFqQiw2QkFBaUI7SUFDakIsaUJBQWlCLEVBQWpCLDZCQUFpQjtJQUNqQixtQkFBbUIsRUFBbkIsK0JBQW1CO0lBQ25CLGlCQUFpQixFQUFqQiw2QkFBaUI7SUFDakIsaUJBQWlCLEVBQWpCLDZCQUFpQjtJQUNqQixxQkFBcUIsRUFBckIsaUNBQXFCO0lBQ3JCLGdDQUFnQyxFQUFoQyw0Q0FBZ0M7SUFDaEMsb0NBQW9DLEVBQXBDLGdEQUFvQztJQUNwQyw0QkFBNEIsRUFBNUIsd0NBQTRCO0lBQzVCLG9DQUFvQyxFQUFwQyxnREFBb0M7SUFDcEMsbUJBQW1CLEVBQW5CLCtCQUFtQjtJQUNuQixrQkFBa0IsRUFBbEIsOEJBQWtCO0lBQ2xCLGlDQUFpQyxFQUFqQyw2Q0FBaUM7SUFDakMseUJBQXlCLEVBQXpCLHFDQUF5QjtJQUN6QixlQUFlLEVBQWYsMkJBQWU7SUFDZixnQkFBZ0IsRUFBaEIsNEJBQWdCO0lBQ2hCLGNBQWMsRUFBZCwwQkFBYztJQUNkLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsbUJBQW1CLEVBQW5CLCtCQUFtQjtJQUNuQiwwQkFBMEIsRUFBMUIsc0NBQTBCO0lBQzFCLGlCQUFpQixFQUFqQiw2QkFBaUI7Q0FDbEIsQ0FBQztBQW9WRjs7O0dBR0c7QUFDSCxNQUFhLFNBQVUsU0FBUSxlQUFNLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLEVBR3pFO0NBQUc7QUFITiw4QkFHTTtBQUVOOzs7R0FHRztBQUNVLFFBQUEsYUFBYSxHQUFHLGVBQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNsRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsbUNBQWdCLENBQUMsQ0FBQztJQUUxQyxPQUFPLGVBQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtRQUMxRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFRLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBNEIsRUFBRSxFQUFFLENBQzdELGVBQU0sQ0FBQyxVQUFVLENBQUM7WUFDaEIsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDakMsR0FBRyxDQUFDLE9BQU8sYUFBUCxPQUFPLGNBQVAsT0FBTyxHQUFJLEVBQUUsQ0FBQztnQkFDbEIsV0FBVzthQUNaLENBQUM7WUFDSixLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxJQUNFLENBQUMsWUFBWSw4QkFBa0I7b0JBQy9CLHlCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ2pDLENBQUM7b0JBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxhQUFJLENBQUMsTUFBTSxDQUVsQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBRVYsT0FBTyxnQkFBZ0IsQ0FBQzt3QkFDdEIsR0FBRyxDQUFDO3dCQUNKLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO29CQUN2QixPQUFPLElBQUEsaUJBQVEsRUFBQzt3QkFDZCxHQUFHLENBQUM7d0JBQ0osSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sQ0FBQyxDQUFDO1lBQ1YsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUNMLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNVLFFBQUEsa0JBQWtCLEdBQUcsY0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUscUJBQWEsQ0FBQyxDQUFDO0FBRXpFOzs7R0FHRztBQUNVLFFBQUEsY0FBYyxHQUFHLDBCQUFrQixDQUFDLElBQUksQ0FDbkQsY0FBSyxDQUFDLE9BQU8sQ0FBQyx3Q0FBcUIsQ0FBQyxDQUNyQyxDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxzQkFBYyxDQUFDLElBQUksQ0FDdEQsY0FBSyxDQUFDLE9BQU8sQ0FBQyxtREFBMEIsQ0FBQyxDQUMxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgTXFTZXJ2aWNlRXhjZXB0aW9uLFxuICBDcmVhdGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIENyZWF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIERlbGV0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBEZWxldGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICB0eXBlIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVVzZXJDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVXNlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVVzZXJDb21tYW5kT3V0cHV0LFxuICBMaXN0QnJva2Vyc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEJyb2tlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEJyb2tlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0VGFnc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0VXNlcnNDb21tYW5kLFxuICB0eXBlIExpc3RVc2Vyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0VXNlcnNDb21tYW5kT3V0cHV0LFxuICBQcm9tb3RlQ29tbWFuZCxcbiAgdHlwZSBQcm9tb3RlQ29tbWFuZElucHV0LFxuICB0eXBlIFByb21vdGVDb21tYW5kT3V0cHV0LFxuICBSZWJvb3RCcm9rZXJDb21tYW5kLFxuICB0eXBlIFJlYm9vdEJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWJvb3RCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIFVwZGF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBVcGRhdGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZVVzZXJDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LW1xXCI7XG5pbXBvcnQgeyBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBCYWRSZXF1ZXN0RXJyb3IsXG4gIENvbmZsaWN0RXJyb3IsXG4gIEZvcmJpZGRlbkVycm9yLFxuICBJbnRlcm5hbFNlcnZlckVycm9yLFxuICBOb3RGb3VuZEVycm9yLFxuICBVbmF1dGhvcml6ZWRFcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBNcUNsaWVudEluc3RhbmNlLCBNcUNsaWVudEluc3RhbmNlTGF5ZXIgfSBmcm9tIFwiLi9NcUNsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0TXFDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL01xQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuaW50ZXJmYWNlIEh0dHBIYW5kbGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSB0aW1lIGluIG1pbGxpc2Vjb25kcyB0aGF0IHRoZSBjb25uZWN0aW9uIHBoYXNlIG9mIGEgcmVxdWVzdFxuICAgKiBtYXkgdGFrZSBiZWZvcmUgdGhlIGNvbm5lY3Rpb24gYXR0ZW1wdCBpcyBhYmFuZG9uZWQuXG4gICAqL1xuICByZXF1ZXN0VGltZW91dD86IG51bWJlcjtcbn1cblxuY29uc3QgY29tbWFuZHMgPSB7XG4gIENyZWF0ZUJyb2tlckNvbW1hbmQsXG4gIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBDcmVhdGVUYWdzQ29tbWFuZCxcbiAgQ3JlYXRlVXNlckNvbW1hbmQsXG4gIERlbGV0ZUJyb2tlckNvbW1hbmQsXG4gIERlbGV0ZVRhZ3NDb21tYW5kLFxuICBEZWxldGVVc2VyQ29tbWFuZCxcbiAgRGVzY3JpYmVCcm9rZXJDb21tYW5kLFxuICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZCxcbiAgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmQsXG4gIERlc2NyaWJlVXNlckNvbW1hbmQsXG4gIExpc3RCcm9rZXJzQ29tbWFuZCxcbiAgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kLFxuICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kLFxuICBMaXN0VGFnc0NvbW1hbmQsXG4gIExpc3RVc2Vyc0NvbW1hbmQsXG4gIFByb21vdGVDb21tYW5kLFxuICBSZWJvb3RCcm9rZXJDb21tYW5kLFxuICBVcGRhdGVCcm9rZXJDb21tYW5kLFxuICBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgVXBkYXRlVXNlckNvbW1hbmQsXG59O1xuXG5pbnRlcmZhY2UgTXFTZXJ2aWNlJCB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUJyb2tlckNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVCcm9rZXIoXG4gICAgYXJnczogQ3JlYXRlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBVbmF1dGhvcml6ZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogQ3JlYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVGFnc0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVUYWdzKFxuICAgIGFyZ3M6IENyZWF0ZVRhZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUYWdzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVVzZXJDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlVXNlcihcbiAgICBhcmdzOiBDcmVhdGVVc2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVXNlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCcm9rZXJDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnJva2VyKFxuICAgIGFyZ3M6IERlbGV0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUYWdzQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVRhZ3MoXG4gICAgYXJnczogRGVsZXRlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVXNlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVVc2VyKFxuICAgIGFyZ3M6IERlbGV0ZVVzZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVVc2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQnJva2VyQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQnJva2VyKFxuICAgIGFyZ3M6IERlc2NyaWJlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzKFxuICAgIGFyZ3M6IERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhZFJlcXVlc3RFcnJvciB8IEZvcmJpZGRlbkVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9ucyhcbiAgICBhcmdzOiBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhZFJlcXVlc3RFcnJvciB8IEZvcmJpZGRlbkVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbihcbiAgICBhcmdzOiBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVXNlckNvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZVVzZXIoXG4gICAgYXJnczogRGVzY3JpYmVVc2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVVc2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RCcm9rZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RCcm9rZXJzKFxuICAgIGFyZ3M6IExpc3RCcm9rZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEJyb2tlcnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFkUmVxdWVzdEVycm9yIHwgRm9yYmlkZGVuRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zKFxuICAgIGFyZ3M6IExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdENvbmZpZ3VyYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RDb25maWd1cmF0aW9ucyhcbiAgICBhcmdzOiBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFkUmVxdWVzdEVycm9yIHwgRm9yYmlkZGVuRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUYWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUYWdzKFxuICAgIGFyZ3M6IExpc3RUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFVzZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RVc2VycyhcbiAgICBhcmdzOiBMaXN0VXNlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0VXNlcnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHJvbW90ZUNvbW1hbmR9XG4gICAqL1xuICBwcm9tb3RlKFxuICAgIGFyZ3M6IFByb21vdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQcm9tb3RlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlYm9vdEJyb2tlckNvbW1hbmR9XG4gICAqL1xuICByZWJvb3RCcm9rZXIoXG4gICAgYXJnczogUmVib290QnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVib290QnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUJyb2tlckNvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVCcm9rZXIoXG4gICAgYXJnczogVXBkYXRlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlQnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgdXBkYXRlQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVVc2VyQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZVVzZXIoXG4gICAgYXJnczogVXBkYXRlVXNlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGNsYXNzIE1xU2VydmljZSBleHRlbmRzIEVmZmVjdC5UYWcoXCJAZWZmZWN0LWF3cy9jbGllbnQtbXEvTXFTZXJ2aWNlXCIpPFxuICBNcVNlcnZpY2UsXG4gIE1xU2VydmljZSRcbj4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZU1xU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKE1xQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKGFib3J0U2lnbmFsKSA9PlxuICAgICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwge1xuICAgICAgICAgICAgLi4uKG9wdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgYWJvcnRTaWduYWwsXG4gICAgICAgICAgfSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUgaW5zdGFuY2VvZiBNcVNlcnZpY2VFeGNlcHRpb24gJiZcbiAgICAgICAgICAgIEFsbFNlcnZpY2VFcnJvcnMuaW5jbHVkZXMoZS5uYW1lKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248TXFTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBNcVNlcnZpY2UkO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlTXFTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoTXFTZXJ2aWNlLCBtYWtlTXFTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IE1xU2VydmljZUxheWVyID0gQmFzZU1xU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoTXFDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0TXFTZXJ2aWNlTGF5ZXIgPSBNcVNlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRNcUNsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
110
+ exports.DefaultMqServiceLayer = MqService.defaultLayer;
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXFTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL01xU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0dBRUc7QUFDSCxrREF5RTRCO0FBQzVCLG1DQUFxRDtBQUNyRCxxQ0FVa0I7QUFDbEIseURBQTZFO0FBQzdFLHFFQUlrQztBQWFsQyxNQUFNLFFBQVEsR0FBRztJQUNmLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsMEJBQTBCLEVBQTFCLHNDQUEwQjtJQUMxQixpQkFBaUIsRUFBakIsNkJBQWlCO0lBQ2pCLGlCQUFpQixFQUFqQiw2QkFBaUI7SUFDakIsbUJBQW1CLEVBQW5CLCtCQUFtQjtJQUNuQixpQkFBaUIsRUFBakIsNkJBQWlCO0lBQ2pCLGlCQUFpQixFQUFqQiw2QkFBaUI7SUFDakIscUJBQXFCLEVBQXJCLGlDQUFxQjtJQUNyQixnQ0FBZ0MsRUFBaEMsNENBQWdDO0lBQ2hDLG9DQUFvQyxFQUFwQyxnREFBb0M7SUFDcEMsNEJBQTRCLEVBQTVCLHdDQUE0QjtJQUM1QixvQ0FBb0MsRUFBcEMsZ0RBQW9DO0lBQ3BDLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsa0JBQWtCLEVBQWxCLDhCQUFrQjtJQUNsQixpQ0FBaUMsRUFBakMsNkNBQWlDO0lBQ2pDLHlCQUF5QixFQUF6QixxQ0FBeUI7SUFDekIsZUFBZSxFQUFmLDJCQUFlO0lBQ2YsZ0JBQWdCLEVBQWhCLDRCQUFnQjtJQUNoQixjQUFjLEVBQWQsMEJBQWM7SUFDZCxtQkFBbUIsRUFBbkIsK0JBQW1CO0lBQ25CLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsMEJBQTBCLEVBQTFCLHNDQUEwQjtJQUMxQixpQkFBaUIsRUFBakIsNkJBQWlCO0NBQ2xCLENBQUM7QUFvVkY7OztHQUdHO0FBQ1UsUUFBQSxhQUFhLEdBQUcsZUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ2xELE1BQU0sTUFBTSxHQUFH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QyxDQUFDLENBQ2pFLENBQ0YsQ0FDRixDQUNGLEFBWGtCLENBV2pCO0FBQ1ksbUJBQVMsR0FBRyxDQUMxQixRQUFxRCxFQUNyRCxFQUFFLENBQ0YsY0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFJLEVBQUUscUJBQWEsQ0FBQyxDQUFDLElBQUksQ0FDcEMsY0FBSyxDQUFDLE9BQU8sQ0FDWCxjQUFLLENBQUMsTUFBTSxDQUNWLG1DQUFnQixFQUNoQixlQUFNLENBQUMsR0FBRyxDQUFDLDBEQUFpQyxFQUFFLFFBQVEsQ0FBQyxDQUN4RCxDQUNGLENBQ0YsQUFWc0IsQ0FVckI7QUFHTjs7OztHQUlHO0FBQ1UsUUFBQSxFQUFFLEdBQUcsU0FBUyxDQUFDO0FBRTVCOzs7O0dBSUc7QUFDVSxRQUFBLGtCQUFrQixHQUFHLGNBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLHFCQUFhLENBQUMsQ0FBQztBQUV6RTs7OztHQUlHO0FBQ1UsUUFBQSxjQUFjLEdBQUcsMEJBQWtCLENBQUMsSUFBSSxDQUNuRCxjQUFLLENBQUMsT0FBTyxDQUFDLHdDQUFxQixDQUFDLENBQ3JDLENBQUM7QUFFRjs7OztHQUlHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgTXFTZXJ2aWNlRXhjZXB0aW9uLFxuICB0eXBlIE1xQ2xpZW50LFxuICB0eXBlIE1xQ2xpZW50Q29uZmlnLFxuICBDcmVhdGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIENyZWF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIERlbGV0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBEZWxldGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICB0eXBlIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVVzZXJDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVXNlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVVzZXJDb21tYW5kT3V0cHV0LFxuICBMaXN0QnJva2Vyc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEJyb2tlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEJyb2tlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0VGFnc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0VXNlcnNDb21tYW5kLFxuICB0eXBlIExpc3RVc2Vyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0VXNlcnNDb21tYW5kT3V0cHV0LFxuICBQcm9tb3RlQ29tbWFuZCxcbiAgdHlwZSBQcm9tb3RlQ29tbWFuZElucHV0LFxuICB0eXBlIFByb21vdGVDb21tYW5kT3V0cHV0LFxuICBSZWJvb3RCcm9rZXJDb21tYW5kLFxuICB0eXBlIFJlYm9vdEJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWJvb3RCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIFVwZGF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBVcGRhdGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZVVzZXJDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LW1xXCI7XG5pbXBvcnQgeyBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBCYWRSZXF1ZXN0RXJyb3IsXG4gIENvbmZsaWN0RXJyb3IsXG4gIEZvcmJpZGRlbkVycm9yLFxuICBJbnRlcm5hbFNlcnZlckVycm9yLFxuICBOb3RGb3VuZEVycm9yLFxuICBVbmF1dGhvcml6ZWRFcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBNcUNsaWVudEluc3RhbmNlLCBNcUNsaWVudEluc3RhbmNlTGF5ZXIgfSBmcm9tIFwiLi9NcUNsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0TXFDbGllbnRDb25maWdMYXllcixcbiAgbWFrZURlZmF1bHRNcUNsaWVudEluc3RhbmNlQ29uZmlnLFxuICBNcUNsaWVudEluc3RhbmNlQ29uZmlnLFxufSBmcm9tIFwiLi9NcUNsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cEhhbmRsZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRoYXQgdGhlIGNvbm5lY3Rpb24gcGhhc2Ugb2YgYSByZXF1ZXN0XG4gICAqIG1heSB0YWtlIGJlZm9yZSB0aGUgY29ubmVjdGlvbiBhdHRlbXB0IGlzIGFiYW5kb25lZC5cbiAgICovXG4gIHJlcXVlc3RUaW1lb3V0PzogbnVtYmVyO1xufVxuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQ3JlYXRlQnJva2VyQ29tbWFuZCxcbiAgQ3JlYXRlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVRhZ3NDb21tYW5kLFxuICBDcmVhdGVVc2VyQ29tbWFuZCxcbiAgRGVsZXRlQnJva2VyQ29tbWFuZCxcbiAgRGVsZXRlVGFnc0NvbW1hbmQsXG4gIERlbGV0ZVVzZXJDb21tYW5kLFxuICBEZXNjcmliZUJyb2tlckNvbW1hbmQsXG4gIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kLFxuICBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmQsXG4gIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIERlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uQ29tbWFuZCxcbiAgRGVzY3JpYmVVc2VyQ29tbWFuZCxcbiAgTGlzdEJyb2tlcnNDb21tYW5kLFxuICBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmQsXG4gIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIExpc3RUYWdzQ29tbWFuZCxcbiAgTGlzdFVzZXJzQ29tbWFuZCxcbiAgUHJvbW90ZUNvbW1hbmQsXG4gIFJlYm9vdEJyb2tlckNvbW1hbmQsXG4gIFVwZGF0ZUJyb2tlckNvbW1hbmQsXG4gIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBVcGRhdGVVc2VyQ29tbWFuZCxcbn07XG5cbmludGVyZmFjZSBNcVNlcnZpY2UkIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlQnJva2VyQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUJyb2tlcihcbiAgICBhcmdzOiBDcmVhdGVCcm9rZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFVuYXV0aG9yaXplZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgY3JlYXRlQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUYWdzQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVRhZ3MoXG4gICAgYXJnczogQ3JlYXRlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVXNlckNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVVc2VyKFxuICAgIGFyZ3M6IENyZWF0ZVVzZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVVc2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJyb2tlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVCcm9rZXIoXG4gICAgYXJnczogRGVsZXRlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlQnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRhZ3NDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlVGFncyhcbiAgICBhcmdzOiBEZWxldGVUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVGFnc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVVc2VyQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVVzZXIoXG4gICAgYXJnczogRGVsZXRlVXNlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVCcm9rZXJDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVCcm9rZXIoXG4gICAgYXJnczogRGVzY3JpYmVCcm9rZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQnJva2VyRW5naW5lVHlwZXMoXG4gICAgYXJnczogRGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFkUmVxdWVzdEVycm9yIHwgRm9yYmlkZGVuRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zKFxuICAgIGFyZ3M6IERlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFkUmVxdWVzdEVycm9yIHwgRm9yYmlkZGVuRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogRGVzY3JpYmVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uKFxuICAgIGFyZ3M6IERlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVVc2VyQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlVXNlcihcbiAgICBhcmdzOiBEZXNjcmliZVVzZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZVVzZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEJyb2tlcnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEJyb2tlcnMoXG4gICAgYXJnczogTGlzdEJyb2tlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnJva2Vyc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYWRSZXF1ZXN0RXJyb3IgfCBGb3JiaWRkZW5FcnJvciB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnMoXG4gICAgYXJnczogTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdENvbmZpZ3VyYXRpb25zKFxuICAgIGFyZ3M6IExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYWRSZXF1ZXN0RXJyb3IgfCBGb3JiaWRkZW5FcnJvciB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFRhZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRhZ3MoXG4gICAgYXJnczogTGlzdFRhZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0VGFnc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VXNlcnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFVzZXJzKFxuICAgIGFyZ3M6IExpc3RVc2Vyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RVc2Vyc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQcm9tb3RlQ29tbWFuZH1cbiAgICovXG4gIHByb21vdGUoXG4gICAgYXJnczogUHJvbW90ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFByb21vdGVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVib290QnJva2VyQ29tbWFuZH1cbiAgICovXG4gIHJlYm9vdEJyb2tlcihcbiAgICBhcmdzOiBSZWJvb3RCcm9rZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBSZWJvb3RCcm9rZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlQnJva2VyQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZUJyb2tlcihcbiAgICBhcmdzOiBVcGRhdGVCcm9rZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZVVzZXJDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlVXNlcihcbiAgICBhcmdzOiBVcGRhdGVVc2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlVXNlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZU1xU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKE1xQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKGFib3J0U2lnbmFsKSA9PlxuICAgICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwge1xuICAgICAgICAgICAgLi4uKG9wdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgYWJvcnRTaWduYWwsXG4gICAgICAgICAgfSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUgaW5zdGFuY2VvZiBNcVNlcnZpY2VFeGNlcHRpb24gJiZcbiAgICAgICAgICAgIEFsbFNlcnZpY2VFcnJvcnMuaW5jbHVkZXMoZS5uYW1lKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248TXFTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBNcVNlcnZpY2UkO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBjbGFzcyBNcVNlcnZpY2UgZXh0ZW5kcyBFZmZlY3QuVGFnKFwiQGVmZmVjdC1hd3MvY2xpZW50LW1xL01xU2VydmljZVwiKTxcbiAgTXFTZXJ2aWNlLFxuICBNcVNlcnZpY2UkXG4+KCkge1xuICBzdGF0aWMgcmVhZG9ubHkgZGVmYXVsdExheWVyID0gTGF5ZXIuZWZmZWN0KHRoaXMsIG1ha2VNcVNlcnZpY2UpLnBpcGUoXG4gICAgTGF5ZXIucHJvdmlkZShNcUNsaWVudEluc3RhbmNlTGF5ZXIpLFxuICAgIExheWVyLnByb3ZpZGUoRGVmYXVsdE1xQ2xpZW50Q29uZmlnTGF5ZXIpLFxuICApO1xuICBzdGF0aWMgcmVhZG9ubHkgbGF5ZXIgPSAoY29uZmlnOiBNcUNsaWVudENvbmZpZykgPT5cbiAgICBMYXllci5lZmZlY3QodGhpcywgbWFrZU1xU2VydmljZSkucGlwZShcbiAgICAgIExheWVyLnByb3ZpZGUoTXFDbGllbnRJbnN0YW5jZUxheWVyKSxcbiAgICAgIExheWVyLnByb3ZpZGUoXG4gICAgICAgIExheWVyLmVmZmVjdChcbiAgICAgICAgICBNcUNsaWVudEluc3RhbmNlQ29uZmlnLFxuICAgICAgICAgIG1ha2VEZWZhdWx0TXFDbGllbnRJbnN0YW5jZUNvbmZpZy5waXBlKFxuICAgICAgICAgICAgRWZmZWN0Lm1hcCgoZGVmYXVsdENvbmZpZykgPT4gKHsgLi4uZGVmYXVsdENvbmZpZywgLi4uY29uZmlnIH0pKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xuICBzdGF0aWMgcmVhZG9ubHkgYmFzZUxheWVyID0gKFxuICAgIGV2YWx1YXRlOiAoZGVmYXVsdENvbmZpZzogTXFDbGllbnRDb25maWcpID0+IE1xQ2xpZW50LFxuICApID0+XG4gICAgTGF5ZXIuZWZmZWN0KHRoaXMsIG1ha2VNcVNlcnZpY2UpLnBpcGUoXG4gICAgICBMYXllci5wcm92aWRlKFxuICAgICAgICBMYXllci5lZmZlY3QoXG4gICAgICAgICAgTXFDbGllbnRJbnN0YW5jZSxcbiAgICAgICAgICBFZmZlY3QubWFwKG1ha2VEZWZhdWx0TXFDbGllbnRJbnN0YW5jZUNvbmZpZywgZXZhbHVhdGUpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApO1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICogQGFsaWFzIE1xU2VydmljZVxuICovXG5leHBvcnQgY29uc3QgTXEgPSBNcVNlcnZpY2U7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKiBAZGVwcmVjYXRlZCB1c2UgTXEuYmFzZUxheWVyIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VNcVNlcnZpY2VMYXllciA9IExheWVyLmVmZmVjdChNcVNlcnZpY2UsIG1ha2VNcVNlcnZpY2UpO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICogQGRlcHJlY2F0ZWQgdXNlIE1xLmxheWVyIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IE1xU2VydmljZUxheWVyID0gQmFzZU1xU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoTXFDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKiBAZGVwcmVjYXRlZCB1c2UgTXEuZGVmYXVsdExheWVyIGluc3RlYWRcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRNcVNlcnZpY2VMYXllciA9IE1xU2VydmljZS5kZWZhdWx0TGF5ZXI7XG4iXX0=
@@ -1,3 +1,4 @@
1
+ var _a;
1
2
  /**
2
3
  * @since 1.0.0
3
4
  */
@@ -5,7 +6,7 @@ import { MqServiceException, CreateBrokerCommand, CreateConfigurationCommand, Cr
5
6
  import { Data, Effect, Layer, Record } from "effect";
6
7
  import { AllServiceErrors, SdkError, } from "./Errors";
7
8
  import { MqClientInstance, MqClientInstanceLayer } from "./MqClientInstance";
8
- import { DefaultMqClientConfigLayer } from "./MqClientInstanceConfig";
9
+ import { DefaultMqClientConfigLayer, makeDefaultMqClientInstanceConfig, MqClientInstanceConfig, } from "./MqClientInstanceConfig";
9
10
  const commands = {
10
11
  CreateBrokerCommand,
11
12
  CreateConfigurationCommand,
@@ -31,12 +32,6 @@ const commands = {
31
32
  UpdateConfigurationCommand,
32
33
  UpdateUserCommand,
33
34
  };
34
- /**
35
- * @since 1.0.0
36
- * @category models
37
- */
38
- export class MqService extends Effect.Tag("@effect-aws/client-mq/MqService")() {
39
- }
40
35
  /**
41
36
  * @since 1.0.0
42
37
  * @category constructors
@@ -75,19 +70,38 @@ export const makeMqService = Effect.gen(function* (_) {
75
70
  return { ...acc, [methodName]: methodImpl };
76
71
  }, {});
77
72
  });
73
+ /**
74
+ * @since 1.0.0
75
+ * @category models
76
+ */
77
+ export class MqService extends Effect.Tag("@effect-aws/client-mq/MqService")() {
78
+ }
79
+ _a = MqService;
80
+ MqService.defaultLayer = Layer.effect(_a, makeMqService).pipe(Layer.provide(MqClientInstanceLayer), Layer.provide(DefaultMqClientConfigLayer));
81
+ MqService.layer = (config) => Layer.effect(_a, makeMqService).pipe(Layer.provide(MqClientInstanceLayer), Layer.provide(Layer.effect(MqClientInstanceConfig, makeDefaultMqClientInstanceConfig.pipe(Effect.map((defaultConfig) => ({ ...defaultConfig, ...config }))))));
82
+ MqService.baseLayer = (evaluate) => Layer.effect(_a, makeMqService).pipe(Layer.provide(Layer.effect(MqClientInstance, Effect.map(makeDefaultMqClientInstanceConfig, evaluate))));
83
+ /**
84
+ * @since 1.0.0
85
+ * @category models
86
+ * @alias MqService
87
+ */
88
+ export const Mq = MqService;
78
89
  /**
79
90
  * @since 1.0.0
80
91
  * @category layers
92
+ * @deprecated use Mq.baseLayer instead
81
93
  */
82
94
  export const BaseMqServiceLayer = Layer.effect(MqService, makeMqService);
83
95
  /**
84
96
  * @since 1.0.0
85
97
  * @category layers
98
+ * @deprecated use Mq.layer instead
86
99
  */
87
100
  export const MqServiceLayer = BaseMqServiceLayer.pipe(Layer.provide(MqClientInstanceLayer));
88
101
  /**
89
102
  * @since 1.0.0
90
103
  * @category layers
104
+ * @deprecated use Mq.defaultLayer instead
91
105
  */
92
- export const DefaultMqServiceLayer = MqServiceLayer.pipe(Layer.provide(DefaultMqClientConfigLayer));
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXFTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL01xU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFDTCxrQkFBa0IsRUFDbEIsbUJBQW1CLEVBR25CLDBCQUEwQixFQUcxQixpQkFBaUIsRUFHakIsaUJBQWlCLEVBR2pCLG1CQUFtQixFQUduQixpQkFBaUIsRUFHakIsaUJBQWlCLEVBR2pCLHFCQUFxQixFQUdyQixnQ0FBZ0MsRUFHaEMsb0NBQW9DLEVBR3BDLDRCQUE0QixFQUc1QixvQ0FBb0MsRUFHcEMsbUJBQW1CLEVBR25CLGtCQUFrQixFQUdsQixpQ0FBaUMsRUFHakMseUJBQXlCLEVBR3pCLGVBQWUsRUFHZixnQkFBZ0IsRUFHaEIsY0FBYyxFQUdkLG1CQUFtQixFQUduQixtQkFBbUIsRUFHbkIsMEJBQTBCLEVBRzFCLGlCQUFpQixHQUdsQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDckQsT0FBTyxFQUNMLGdCQUFnQixFQU9oQixRQUFRLEdBRVQsTUFBTSxVQUFVLENBQUM7QUFDbEIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDN0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFVdEUsTUFBTSxRQUFRLEdBQUc7SUFDZixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGlCQUFpQjtJQUNqQixpQkFBaUI7SUFDakIsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQixpQkFBaUI7SUFDakIscUJBQXFCO0lBQ3JCLGdDQUFnQztJQUNoQyxvQ0FBb0M7SUFDcEMsNEJBQTRCO0lBQzVCLG9DQUFvQztJQUNwQyxtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLGlDQUFp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dEQsS0FBSyxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUMxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgTXFTZXJ2aWNlRXhjZXB0aW9uLFxuICBDcmVhdGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIENyZWF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIERlbGV0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUYWdzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUYWdzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICBEZWxldGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICB0eXBlIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kT3V0cHV0LFxuICBEZXNjcmliZVVzZXJDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlVXNlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZVVzZXJDb21tYW5kT3V0cHV0LFxuICBMaXN0QnJva2Vyc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEJyb2tlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEJyb2tlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0VGFnc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0VXNlcnNDb21tYW5kLFxuICB0eXBlIExpc3RVc2Vyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0VXNlcnNDb21tYW5kT3V0cHV0LFxuICBQcm9tb3RlQ29tbWFuZCxcbiAgdHlwZSBQcm9tb3RlQ29tbWFuZElucHV0LFxuICB0eXBlIFByb21vdGVDb21tYW5kT3V0cHV0LFxuICBSZWJvb3RCcm9rZXJDb21tYW5kLFxuICB0eXBlIFJlYm9vdEJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWJvb3RCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVCcm9rZXJDb21tYW5kLFxuICB0eXBlIFVwZGF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBVcGRhdGVVc2VyQ29tbWFuZCxcbiAgdHlwZSBVcGRhdGVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZVVzZXJDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LW1xXCI7XG5pbXBvcnQgeyBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBCYWRSZXF1ZXN0RXJyb3IsXG4gIENvbmZsaWN0RXJyb3IsXG4gIEZvcmJpZGRlbkVycm9yLFxuICBJbnRlcm5hbFNlcnZlckVycm9yLFxuICBOb3RGb3VuZEVycm9yLFxuICBVbmF1dGhvcml6ZWRFcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBNcUNsaWVudEluc3RhbmNlLCBNcUNsaWVudEluc3RhbmNlTGF5ZXIgfSBmcm9tIFwiLi9NcUNsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0TXFDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL01xQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuaW50ZXJmYWNlIEh0dHBIYW5kbGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSB0aW1lIGluIG1pbGxpc2Vjb25kcyB0aGF0IHRoZSBjb25uZWN0aW9uIHBoYXNlIG9mIGEgcmVxdWVzdFxuICAgKiBtYXkgdGFrZSBiZWZvcmUgdGhlIGNvbm5lY3Rpb24gYXR0ZW1wdCBpcyBhYmFuZG9uZWQuXG4gICAqL1xuICByZXF1ZXN0VGltZW91dD86IG51bWJlcjtcbn1cblxuY29uc3QgY29tbWFuZHMgPSB7XG4gIENyZWF0ZUJyb2tlckNvbW1hbmQsXG4gIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBDcmVhdGVUYWdzQ29tbWFuZCxcbiAgQ3JlYXRlVXNlckNvbW1hbmQsXG4gIERlbGV0ZUJyb2tlckNvbW1hbmQsXG4gIERlbGV0ZVRhZ3NDb21tYW5kLFxuICBEZWxldGVVc2VyQ29tbWFuZCxcbiAgRGVzY3JpYmVCcm9rZXJDb21tYW5kLFxuICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZCxcbiAgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kLFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmQsXG4gIERlc2NyaWJlVXNlckNvbW1hbmQsXG4gIExpc3RCcm9rZXJzQ29tbWFuZCxcbiAgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kLFxuICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kLFxuICBMaXN0VGFnc0NvbW1hbmQsXG4gIExpc3RVc2Vyc0NvbW1hbmQsXG4gIFByb21vdGVDb21tYW5kLFxuICBSZWJvb3RCcm9rZXJDb21tYW5kLFxuICBVcGRhdGVCcm9rZXJDb21tYW5kLFxuICBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgVXBkYXRlVXNlckNvbW1hbmQsXG59O1xuXG5pbnRlcmZhY2UgTXFTZXJ2aWNlJCB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUJyb2tlckNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVCcm9rZXIoXG4gICAgYXJnczogQ3JlYXRlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBVbmF1dGhvcml6ZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogQ3JlYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVGFnc0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVUYWdzKFxuICAgIGFyZ3M6IENyZWF0ZVRhZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVUYWdzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVVzZXJDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlVXNlcihcbiAgICBhcmdzOiBDcmVhdGVVc2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVXNlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCcm9rZXJDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnJva2VyKFxuICAgIGFyZ3M6IERlbGV0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUYWdzQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVRhZ3MoXG4gICAgYXJnczogRGVsZXRlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVXNlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVVc2VyKFxuICAgIGFyZ3M6IERlbGV0ZVVzZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVVc2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQnJva2VyQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQnJva2VyKFxuICAgIGFyZ3M6IERlc2NyaWJlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzKFxuICAgIGFyZ3M6IERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhZFJlcXVlc3RFcnJvciB8IEZvcmJpZGRlbkVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9ucyhcbiAgICBhcmdzOiBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhZFJlcXVlc3RFcnJvciB8IEZvcmJpZGRlbkVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbihcbiAgICBhcmdzOiBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlVXNlckNvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZVVzZXIoXG4gICAgYXJnczogRGVzY3JpYmVVc2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVVc2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RCcm9rZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RCcm9rZXJzKFxuICAgIGFyZ3M6IExpc3RCcm9rZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEJyb2tlcnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFkUmVxdWVzdEVycm9yIHwgRm9yYmlkZGVuRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zKFxuICAgIGFyZ3M6IExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdENvbmZpZ3VyYXRpb25SZXZpc2lvbnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdENvbmZpZ3VyYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RDb25maWd1cmF0aW9ucyhcbiAgICBhcmdzOiBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQmFkUmVxdWVzdEVycm9yIHwgRm9yYmlkZGVuRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUYWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUYWdzKFxuICAgIGFyZ3M6IExpc3RUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFVzZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RVc2VycyhcbiAgICBhcmdzOiBMaXN0VXNlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0VXNlcnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHJvbW90ZUNvbW1hbmR9XG4gICAqL1xuICBwcm9tb3RlKFxuICAgIGFyZ3M6IFByb21vdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQcm9tb3RlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlYm9vdEJyb2tlckNvbW1hbmR9XG4gICAqL1xuICByZWJvb3RCcm9rZXIoXG4gICAgYXJnczogUmVib290QnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVib290QnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUJyb2tlckNvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVCcm9rZXIoXG4gICAgYXJnczogVXBkYXRlQnJva2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlQnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgdXBkYXRlQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVVc2VyQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZVVzZXIoXG4gICAgYXJnczogVXBkYXRlVXNlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGNsYXNzIE1xU2VydmljZSBleHRlbmRzIEVmZmVjdC5UYWcoXCJAZWZmZWN0LWF3cy9jbGllbnQtbXEvTXFTZXJ2aWNlXCIpPFxuICBNcVNlcnZpY2UsXG4gIE1xU2VydmljZSRcbj4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZU1xU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKE1xQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKGFib3J0U2lnbmFsKSA9PlxuICAgICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwge1xuICAgICAgICAgICAgLi4uKG9wdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgYWJvcnRTaWduYWwsXG4gICAgICAgICAgfSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUgaW5zdGFuY2VvZiBNcVNlcnZpY2VFeGNlcHRpb24gJiZcbiAgICAgICAgICAgIEFsbFNlcnZpY2VFcnJvcnMuaW5jbHVkZXMoZS5uYW1lKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248TXFTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBNcVNlcnZpY2UkO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlTXFTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoTXFTZXJ2aWNlLCBtYWtlTXFTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IE1xU2VydmljZUxheWVyID0gQmFzZU1xU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoTXFDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0TXFTZXJ2aWNlTGF5ZXIgPSBNcVNlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRNcUNsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
106
+ export const DefaultMqServiceLayer = MqService.defaultLayer;
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXFTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL01xU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQ0wsa0JBQWtCLEVBR2xCLG1CQUFtQixFQUduQiwwQkFBMEIsRUFHMUIsaUJBQWlCLEVBR2pCLGlCQUFpQixFQUdqQixtQkFBbUIsRUFHbkIsaUJBQWlCLEVBR2pCLGlCQUFpQixFQUdqQixxQkFBcUIsRUFHckIsZ0NBQWdDLEVBR2hDLG9DQUFvQyxFQUdwQyw0QkFBNEIsRUFHNUIsb0NBQW9DLEVBR3BDLG1CQUFtQixFQUduQixrQkFBa0IsRUFHbEIsaUNBQWlDLEVBR2pDLHlCQUF5QixFQUd6QixlQUFlLEVBR2YsZ0JBQWdCLEVBR2hCLGNBQWMsRUFHZCxtQkFBbUIsRUFHbkIsbUJBQW1CLEVBR25CLDBCQUEwQixFQUcxQixpQkFBaUIsR0FHbEIsTUFBTSxvQkFBb0IsQ0FBQztBQUM1QixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3JELE9BQU8sRUFDTCxnQkFBZ0IsRUFPaEIsUUFBUSxHQUVULE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdFLE9BQU8sRUFDTCwwQkFBMEIsRUFDMUIsaUNBQWlDLEVBQ2pDLHNCQUFzQixHQUN2QixNQUFNLDBCQUEwQixDQUFDO0FBYWxDLE1BQU0sUUFBUSxHQUFHO0lBQ2YsbUJBQW1CO0lBQ25CLDBCQUEwQjtJQUMxQixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLG1CQUFtQjtJQUNuQixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLHFCQUFxQjtJQUNyQixnQ0FBZ0M7SUFDaEMsb0NBQW9DO0lBQ3BDLDRCQUE0QjtJQUM1QixvQ0FBb0M7SUFDcEMsbUJB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YSxDQUFDLENBQUMsSUFBSSxDQUNwQyxLQUFLLENBQUMsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEVBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQ1gsS0FBSyxDQUFDLE1BQU0sQ0FDVixzQkFBc0IsRUFDdEIsaUNBQWlDLENBQUMsSUFBSSxDQUNwQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsR0FBRyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQ2pFLENBQ0YsQ0FDRixDQUNGLEFBWGtCLENBV2pCO0FBQ1ksbUJBQVMsR0FBRyxDQUMxQixRQUFxRCxFQUNyRCxFQUFFLENBQ0YsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUNwQyxLQUFLLENBQUMsT0FBTyxDQUNYLEtBQUssQ0FBQyxNQUFNLENBQ1YsZ0JBQWdCLEVBQ2hCLE1BQU0sQ0FBQyxHQUFHLENBQUMsaUNBQWlDLEVBQUUsUUFBUSxDQUFDLENBQ3hELENBQ0YsQ0FDRixBQVZzQixDQVVyQjtBQUdOOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxFQUFFLEdBQUcsU0FBUyxDQUFDO0FBRTVCOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQztBQUV6RTs7OztHQUlHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGtCQUFrQixDQUFDLElBQUksQ0FDbkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxDQUNyQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQge1xuICBNcVNlcnZpY2VFeGNlcHRpb24sXG4gIHR5cGUgTXFDbGllbnQsXG4gIHR5cGUgTXFDbGllbnRDb25maWcsXG4gIENyZWF0ZUJyb2tlckNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlQnJva2VyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVRhZ3NDb21tYW5kLFxuICB0eXBlIENyZWF0ZVRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVGFnc0NvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVVzZXJDb21tYW5kLFxuICB0eXBlIENyZWF0ZVVzZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlVXNlckNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUJyb2tlckNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQnJva2VyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVRhZ3NDb21tYW5kLFxuICB0eXBlIERlbGV0ZVRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVGFnc0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVVzZXJDb21tYW5kLFxuICB0eXBlIERlbGV0ZVVzZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlVXNlckNvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQnJva2VyQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kLFxuICB0eXBlIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlQ29uZmlndXJhdGlvblJldmlzaW9uQ29tbWFuZCxcbiAgdHlwZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmRPdXRwdXQsXG4gIERlc2NyaWJlVXNlckNvbW1hbmQsXG4gIHR5cGUgRGVzY3JpYmVVc2VyQ29tbWFuZElucHV0LFxuICB0eXBlIERlc2NyaWJlVXNlckNvbW1hbmRPdXRwdXQsXG4gIExpc3RCcm9rZXJzQ29tbWFuZCxcbiAgdHlwZSBMaXN0QnJva2Vyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0QnJva2Vyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZCxcbiAgdHlwZSBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIHR5cGUgTGlzdENvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RUYWdzQ29tbWFuZCxcbiAgdHlwZSBMaXN0VGFnc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0VGFnc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RVc2Vyc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFVzZXJzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RVc2Vyc0NvbW1hbmRPdXRwdXQsXG4gIFByb21vdGVDb21tYW5kLFxuICB0eXBlIFByb21vdGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHJvbW90ZUNvbW1hbmRPdXRwdXQsXG4gIFJlYm9vdEJyb2tlckNvbW1hbmQsXG4gIHR5cGUgUmVib290QnJva2VyQ29tbWFuZElucHV0LFxuICB0eXBlIFJlYm9vdEJyb2tlckNvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUJyb2tlckNvbW1hbmQsXG4gIHR5cGUgVXBkYXRlQnJva2VyQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICB0eXBlIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZVVzZXJDb21tYW5kLFxuICB0eXBlIFVwZGF0ZVVzZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlVXNlckNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtbXFcIjtcbmltcG9ydCB7IERhdGEsIEVmZmVjdCwgTGF5ZXIsIFJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIEFsbFNlcnZpY2VFcnJvcnMsXG4gIEJhZFJlcXVlc3RFcnJvcixcbiAgQ29uZmxpY3RFcnJvcixcbiAgRm9yYmlkZGVuRXJyb3IsXG4gIEludGVybmFsU2VydmVyRXJyb3IsXG4gIE5vdEZvdW5kRXJyb3IsXG4gIFVuYXV0aG9yaXplZEVycm9yLFxuICBTZGtFcnJvcixcbiAgVGFnZ2VkRXhjZXB0aW9uLFxufSBmcm9tIFwiLi9FcnJvcnNcIjtcbmltcG9ydCB7IE1xQ2xpZW50SW5zdGFuY2UsIE1xQ2xpZW50SW5zdGFuY2VMYXllciB9IGZyb20gXCIuL01xQ2xpZW50SW5zdGFuY2VcIjtcbmltcG9ydCB7XG4gIERlZmF1bHRNcUNsaWVudENvbmZpZ0xheWVyLFxuICBtYWtlRGVmYXVsdE1xQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIE1xQ2xpZW50SW5zdGFuY2VDb25maWcsXG59IGZyb20gXCIuL01xQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIdHRwSGFuZGxlck9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG1heGltdW0gdGltZSBpbiBtaWxsaXNlY29uZHMgdGhhdCB0aGUgY29ubmVjdGlvbiBwaGFzZSBvZiBhIHJlcXVlc3RcbiAgICogbWF5IHRha2UgYmVmb3JlIHRoZSBjb25uZWN0aW9uIGF0dGVtcHQgaXMgYWJhbmRvbmVkLlxuICAgKi9cbiAgcmVxdWVzdFRpbWVvdXQ/OiBudW1iZXI7XG59XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBDcmVhdGVCcm9rZXJDb21tYW5kLFxuICBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlVGFnc0NvbW1hbmQsXG4gIENyZWF0ZVVzZXJDb21tYW5kLFxuICBEZWxldGVCcm9rZXJDb21tYW5kLFxuICBEZWxldGVUYWdzQ29tbWFuZCxcbiAgRGVsZXRlVXNlckNvbW1hbmQsXG4gIERlc2NyaWJlQnJva2VyQ29tbWFuZCxcbiAgRGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlc0NvbW1hbmQsXG4gIERlc2NyaWJlQnJva2VySW5zdGFuY2VPcHRpb25zQ29tbWFuZCxcbiAgRGVzY3JpYmVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kLFxuICBEZXNjcmliZVVzZXJDb21tYW5kLFxuICBMaXN0QnJva2Vyc0NvbW1hbmQsXG4gIExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZCxcbiAgTGlzdENvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdFRhZ3NDb21tYW5kLFxuICBMaXN0VXNlcnNDb21tYW5kLFxuICBQcm9tb3RlQ29tbWFuZCxcbiAgUmVib290QnJva2VyQ29tbWFuZCxcbiAgVXBkYXRlQnJva2VyQ29tbWFuZCxcbiAgVXBkYXRlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFVwZGF0ZVVzZXJDb21tYW5kLFxufTtcblxuaW50ZXJmYWNlIE1xU2VydmljZSQge1xuICByZWFkb25seSBfOiB1bmlxdWUgc3ltYm9sO1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVCcm9rZXJDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlQnJva2VyKFxuICAgIGFyZ3M6IENyZWF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgVW5hdXRob3JpemVkRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IENyZWF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRhZ3NDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlVGFncyhcbiAgICBhcmdzOiBDcmVhdGVUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVGFnc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVVc2VyQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVVzZXIoXG4gICAgYXJnczogQ3JlYXRlVXNlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVVzZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnJva2VyQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUJyb2tlcihcbiAgICBhcmdzOiBEZWxldGVCcm9rZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCcm9rZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVGFnc0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVUYWdzKFxuICAgIGFyZ3M6IERlbGV0ZVRhZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVUYWdzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVVzZXJDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlVXNlcihcbiAgICBhcmdzOiBEZWxldGVVc2VyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVXNlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZUJyb2tlckNvbW1hbmR9XG4gICAqL1xuICBkZXNjcmliZUJyb2tlcihcbiAgICBhcmdzOiBEZXNjcmliZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlQnJva2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlc2NyaWJlQnJva2VyRW5naW5lVHlwZXNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlcyhcbiAgICBhcmdzOiBEZXNjcmliZUJyb2tlckVuZ2luZVR5cGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVzY3JpYmVCcm9rZXJFbmdpbmVUeXBlc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYWRSZXF1ZXN0RXJyb3IgfCBGb3JiaWRkZW5FcnJvciB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnMoXG4gICAgYXJnczogRGVzY3JpYmVCcm9rZXJJbnN0YW5jZU9wdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUJyb2tlckluc3RhbmNlT3B0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBCYWRSZXF1ZXN0RXJyb3IgfCBGb3JiaWRkZW5FcnJvciB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGRlc2NyaWJlQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb24oXG4gICAgYXJnczogRGVzY3JpYmVDb25maWd1cmF0aW9uUmV2aXNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZXNjcmliZUNvbmZpZ3VyYXRpb25SZXZpc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZXNjcmliZVVzZXJDb21tYW5kfVxuICAgKi9cbiAgZGVzY3JpYmVVc2VyKFxuICAgIGFyZ3M6IERlc2NyaWJlVXNlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlc2NyaWJlVXNlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0QnJva2Vyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0QnJva2VycyhcbiAgICBhcmdzOiBMaXN0QnJva2Vyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RCcm9rZXJzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhZFJlcXVlc3RFcnJvciB8IEZvcmJpZGRlbkVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0Q29uZmlndXJhdGlvblJldmlzaW9ucyhcbiAgICBhcmdzOiBMaXN0Q29uZmlndXJhdGlvblJldmlzaW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RDb25maWd1cmF0aW9uUmV2aXNpb25zQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RDb25maWd1cmF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0Q29uZmlndXJhdGlvbnMoXG4gICAgYXJnczogTGlzdENvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdENvbmZpZ3VyYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJhZFJlcXVlc3RFcnJvciB8IEZvcmJpZGRlbkVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VGFnc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0VGFncyhcbiAgICBhcmdzOiBMaXN0VGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RUYWdzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RVc2Vyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0VXNlcnMoXG4gICAgYXJnczogTGlzdFVzZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFVzZXJzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFByb21vdGVDb21tYW5kfVxuICAgKi9cbiAgcHJvbW90ZShcbiAgICBhcmdzOiBQcm9tb3RlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHJvbW90ZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWJvb3RCcm9rZXJDb21tYW5kfVxuICAgKi9cbiAgcmVib290QnJva2VyKFxuICAgIGFyZ3M6IFJlYm9vdEJyb2tlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlYm9vdEJyb2tlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVCcm9rZXJDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlQnJva2VyKFxuICAgIGFyZ3M6IFVwZGF0ZUJyb2tlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZUJyb2tlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmFkUmVxdWVzdEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBGb3JiaWRkZW5FcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogVXBkYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhZFJlcXVlc3RFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgRm9yYmlkZGVuRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlVXNlckNvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVVc2VyKFxuICAgIGFyZ3M6IFVwZGF0ZVVzZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVVc2VyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYWRSZXF1ZXN0RXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEZvcmJpZGRlbkVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlTXFTZXJ2aWNlID0gRWZmZWN0LmdlbihmdW5jdGlvbiogKF8pIHtcbiAgY29uc3QgY2xpZW50ID0geWllbGQqIF8oTXFDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKGFyZ3M6IGFueSwgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucykgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgdHJ5OiAoYWJvcnRTaWduYWwpID0+XG4gICAgICAgICAgY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCB7XG4gICAgICAgICAgICAuLi4ob3B0aW9ucyA/PyB7fSksXG4gICAgICAgICAgICBhYm9ydFNpZ25hbCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZSBpbnN0YW5jZW9mIE1xU2VydmljZUV4Y2VwdGlvbiAmJlxuICAgICAgICAgICAgQWxsU2VydmljZUVycm9ycy5pbmNsdWRlcyhlLm5hbWUpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBjb25zdCBTZXJ2aWNlRXhjZXB0aW9uID0gRGF0YS50YWdnZWQ8XG4gICAgICAgICAgICAgIFRhZ2dlZEV4Y2VwdGlvbjxNcVNlcnZpY2VFeGNlcHRpb24+XG4gICAgICAgICAgICA+KGUubmFtZSk7XG5cbiAgICAgICAgICAgIHJldHVybiBTZXJ2aWNlRXhjZXB0aW9uKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gU2RrRXJyb3Ioe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBuYW1lOiBcIlNka0Vycm9yXCIsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSAoY29tbWFuZFswXS50b0xvd2VyQ2FzZSgpICsgY29tbWFuZC5zbGljZSgxKSkucmVwbGFjZShcbiAgICAgIC9Db21tYW5kJC8sXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgcmV0dXJuIHsgLi4uYWNjLCBbbWV0aG9kTmFtZV06IG1ldGhvZEltcGwgfTtcbiAgfSwge30pIGFzIE1xU2VydmljZSQ7XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGNsYXNzIE1xU2VydmljZSBleHRlbmRzIEVmZmVjdC5UYWcoXCJAZWZmZWN0LWF3cy9jbGllbnQtbXEvTXFTZXJ2aWNlXCIpPFxuICBNcVNlcnZpY2UsXG4gIE1xU2VydmljZSRcbj4oKSB7XG4gIHN0YXRpYyByZWFkb25seSBkZWZhdWx0TGF5ZXIgPSBMYXllci5lZmZlY3QodGhpcywgbWFrZU1xU2VydmljZSkucGlwZShcbiAgICBMYXllci5wcm92aWRlKE1xQ2xpZW50SW5zdGFuY2VMYXllciksXG4gICAgTGF5ZXIucHJvdmlkZShEZWZhdWx0TXFDbGllbnRDb25maWdMYXllciksXG4gICk7XG4gIHN0YXRpYyByZWFkb25seSBsYXllciA9IChjb25maWc6IE1xQ2xpZW50Q29uZmlnKSA9PlxuICAgIExheWVyLmVmZmVjdCh0aGlzLCBtYWtlTXFTZXJ2aWNlKS5waXBlKFxuICAgICAgTGF5ZXIucHJvdmlkZShNcUNsaWVudEluc3RhbmNlTGF5ZXIpLFxuICAgICAgTGF5ZXIucHJvdmlkZShcbiAgICAgICAgTGF5ZXIuZWZmZWN0KFxuICAgICAgICAgIE1xQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gICAgICAgICAgbWFrZURlZmF1bHRNcUNsaWVudEluc3RhbmNlQ29uZmlnLnBpcGUoXG4gICAgICAgICAgICBFZmZlY3QubWFwKChkZWZhdWx0Q29uZmlnKSA9PiAoeyAuLi5kZWZhdWx0Q29uZmlnLCAuLi5jb25maWcgfSkpLFxuICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG4gIHN0YXRpYyByZWFkb25seSBiYXNlTGF5ZXIgPSAoXG4gICAgZXZhbHVhdGU6IChkZWZhdWx0Q29uZmlnOiBNcUNsaWVudENvbmZpZykgPT4gTXFDbGllbnQsXG4gICkgPT5cbiAgICBMYXllci5lZmZlY3QodGhpcywgbWFrZU1xU2VydmljZSkucGlwZShcbiAgICAgIExheWVyLnByb3ZpZGUoXG4gICAgICAgIExheWVyLmVmZmVjdChcbiAgICAgICAgICBNcUNsaWVudEluc3RhbmNlLFxuICAgICAgICAgIEVmZmVjdC5tYXAobWFrZURlZmF1bHRNcUNsaWVudEluc3RhbmNlQ29uZmlnLCBldmFsdWF0ZSksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICk7XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKiBAYWxpYXMgTXFTZXJ2aWNlXG4gKi9cbmV4cG9ydCBjb25zdCBNcSA9IE1xU2VydmljZTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqIEBkZXByZWNhdGVkIHVzZSBNcS5iYXNlTGF5ZXIgaW5zdGVhZFxuICovXG5leHBvcnQgY29uc3QgQmFzZU1xU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KE1xU2VydmljZSwgbWFrZU1xU2VydmljZSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKiBAZGVwcmVjYXRlZCB1c2UgTXEubGF5ZXIgaW5zdGVhZFxuICovXG5leHBvcnQgY29uc3QgTXFTZXJ2aWNlTGF5ZXIgPSBCYXNlTXFTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShNcUNsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqIEBkZXByZWNhdGVkIHVzZSBNcS5kZWZhdWx0TGF5ZXIgaW5zdGVhZFxuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdE1xU2VydmljZUxheWVyID0gTXFTZXJ2aWNlLmRlZmF1bHRMYXllcjtcbiJdfQ==
package/package.json CHANGED
@@ -33,7 +33,7 @@
33
33
  "publishConfig": {
34
34
  "access": "public"
35
35
  },
36
- "version": "1.0.0",
36
+ "version": "1.1.0",
37
37
  "types": "lib/index.d.ts",
38
38
  "module": "lib/esm/index.js",
39
39
  "sideEffects": [],