@effect-aws/client-sqs 1.3.0 → 1.5.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 +12 -0
- package/README.md +82 -1
- package/lib/Errors.d.ts +2 -1
- package/lib/Errors.js +34 -27
- package/lib/SQSClientInstanceConfig.d.ts +1 -3
- package/lib/SQSClientInstanceConfig.js +12 -38
- package/lib/SQSService.d.ts +65 -33
- package/lib/SQSService.js +12 -6
- package/lib/esm/Errors.js +32 -2
- package/lib/esm/SQSClientInstanceConfig.js +2 -5
- package/lib/esm/SQSService.js +12 -7
- package/package.json +12 -14
- package/vitest.config.ts +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @effect-aws/client-sqs
|
|
2
2
|
|
|
3
|
+
## 1.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`e540420`](https://github.com/floydspace/effect-aws/commit/e5404208c2438e1e1546637a8edbbdc1c9468850) Thanks [@floydspace](https://github.com/floydspace)! - integrate aws-sdk abort signal with effect interruption
|
|
8
|
+
|
|
9
|
+
## 1.4.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- [#58](https://github.com/floydspace/effect-aws/pull/58) [`888dc8c`](https://github.com/floydspace/effect-aws/commit/888dc8ca0d7104e33a24426a1aacedb48e8fc3ac) Thanks [@floydspace](https://github.com/floydspace)! - use Effect.Tag instead of Context.GenericTag for service, upgrade sdk, handle only known errors
|
|
14
|
+
|
|
3
15
|
## 1.3.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -1 +1,82 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @effect-aws/client-sqs
|
|
2
|
+
|
|
3
|
+
## Installation
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
npm install --save @effect-aws/client-sqs
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## Usage
|
|
10
|
+
|
|
11
|
+
With default SQSClient instance:
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { SQSService, DefaultSQSServiceLayer } from "@effect-aws/client-sqs";
|
|
15
|
+
|
|
16
|
+
const program = SQSService.sendMessage(args);
|
|
17
|
+
|
|
18
|
+
const result = pipe(
|
|
19
|
+
program,
|
|
20
|
+
Effect.provide(DefaultSQSServiceLayer),
|
|
21
|
+
Effect.runPromise,
|
|
22
|
+
);
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
With custom SQSClient instance:
|
|
26
|
+
|
|
27
|
+
```typescript
|
|
28
|
+
import {
|
|
29
|
+
SQSService,
|
|
30
|
+
BaseSQSServiceLayer,
|
|
31
|
+
SQSClientInstance,
|
|
32
|
+
} from "@effect-aws/client-sqs";
|
|
33
|
+
|
|
34
|
+
const program = SQSService.sendMessage(args);
|
|
35
|
+
|
|
36
|
+
const SQSClientInstanceLayer = Layer.succeed(
|
|
37
|
+
SQSClientInstance,
|
|
38
|
+
new SQSClient({ region: "eu-central-1" }),
|
|
39
|
+
);
|
|
40
|
+
|
|
41
|
+
const result = await pipe(
|
|
42
|
+
program,
|
|
43
|
+
Effect.provide(BaseSQSServiceLayer),
|
|
44
|
+
Effect.provide(SQSClientInstanceLayer),
|
|
45
|
+
Effect.runPromise,
|
|
46
|
+
);
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
With custom SQSClient configuration:
|
|
50
|
+
|
|
51
|
+
```typescript
|
|
52
|
+
import {
|
|
53
|
+
SQSService,
|
|
54
|
+
BaseSQSServiceLayer,
|
|
55
|
+
DefaultSQSClientConfigLayer,
|
|
56
|
+
SQSClientInstance,
|
|
57
|
+
SQSClientInstanceConfig,
|
|
58
|
+
} from "@effect-aws/client-sqs";
|
|
59
|
+
|
|
60
|
+
const program = SQSService.sendMessage(args);
|
|
61
|
+
|
|
62
|
+
const SQSClientInstanceLayer = Layer.provide(
|
|
63
|
+
Layer.effect(
|
|
64
|
+
SQSClientInstance,
|
|
65
|
+
SQSClientInstanceConfig.pipe(
|
|
66
|
+
Effect.map(
|
|
67
|
+
(config) => new SQSClient({ ...config, region: "eu-central-1" }),
|
|
68
|
+
),
|
|
69
|
+
),
|
|
70
|
+
),
|
|
71
|
+
DefaultSQSClientConfigLayer,
|
|
72
|
+
);
|
|
73
|
+
|
|
74
|
+
const result = await pipe(
|
|
75
|
+
program,
|
|
76
|
+
Effect.provide(BaseSQSServiceLayer),
|
|
77
|
+
Effect.provide(SQSClientInstanceLayer),
|
|
78
|
+
Effect.runPromiseExit,
|
|
79
|
+
);
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
or map over `DefaultSQSClientConfigLayer` layer context and update the configuration...
|
package/lib/Errors.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { BatchEntryIdsNotDistinct, BatchRequestTooLong, EmptyBatchRequest, InvalidAddress, InvalidAttributeName, InvalidAttributeValue, InvalidBatchEntryId, InvalidIdFormat, InvalidMessageContents, InvalidSecurity, KmsAccessDenied, KmsDisabled, KmsInvalidKeyUsage, KmsInvalidState, KmsNotFound, KmsOptInRequired, KmsThrottled, MessageNotInflight, OverLimit, PurgeQueueInProgress, QueueDeletedRecently, QueueDoesNotExist, QueueNameExists, ReceiptHandleIsInvalid, RequestThrottled, ResourceNotFoundException, TooManyEntriesInBatchRequest, UnsupportedOperation } from "@aws-sdk/client-sqs";
|
|
2
|
-
import
|
|
2
|
+
import { Data } from "effect";
|
|
3
|
+
export declare const AllServiceErrors: string[];
|
|
3
4
|
export type TaggedException<T extends {
|
|
4
5
|
name: string;
|
|
5
6
|
}> = T & {
|
package/lib/Errors.js
CHANGED
|
@@ -1,29 +1,36 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.SdkError = void 0;
|
|
27
|
-
const
|
|
28
|
-
exports.
|
|
29
|
-
|
|
3
|
+
exports.SdkError = exports.AllServiceErrors = void 0;
|
|
4
|
+
const effect_1 = require("effect");
|
|
5
|
+
exports.AllServiceErrors = [
|
|
6
|
+
"BatchEntryIdsNotDistinct",
|
|
7
|
+
"BatchRequestTooLong",
|
|
8
|
+
"EmptyBatchRequest",
|
|
9
|
+
"InvalidAddress",
|
|
10
|
+
"InvalidAttributeName",
|
|
11
|
+
"InvalidAttributeValue",
|
|
12
|
+
"InvalidBatchEntryId",
|
|
13
|
+
"InvalidIdFormat",
|
|
14
|
+
"InvalidMessageContents",
|
|
15
|
+
"InvalidSecurity",
|
|
16
|
+
"KmsAccessDenied",
|
|
17
|
+
"KmsDisabled",
|
|
18
|
+
"KmsInvalidKeyUsage",
|
|
19
|
+
"KmsInvalidState",
|
|
20
|
+
"KmsNotFound",
|
|
21
|
+
"KmsOptInRequired",
|
|
22
|
+
"KmsThrottled",
|
|
23
|
+
"MessageNotInflight",
|
|
24
|
+
"OverLimit",
|
|
25
|
+
"PurgeQueueInProgress",
|
|
26
|
+
"QueueDeletedRecently",
|
|
27
|
+
"QueueDoesNotExist",
|
|
28
|
+
"QueueNameExists",
|
|
29
|
+
"ReceiptHandleIsInvalid",
|
|
30
|
+
"RequestThrottled",
|
|
31
|
+
"ResourceNotFoundException",
|
|
32
|
+
"TooManyEntriesInBatchRequest",
|
|
33
|
+
"UnsupportedOperation",
|
|
34
|
+
];
|
|
35
|
+
exports.SdkError = effect_1.Data.tagged("SdkError");
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUE4QkEsbUNBQThCO0FBRWpCLFFBQUEsZ0JBQWdCLEdBQUc7SUFDOUIsMEJBQTBCO0lBQzFCLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBQ2hCLHNCQUFzQjtJQUN0Qix1QkFBdUI7SUFDdkIscUJBQXFCO0lBQ3JCLGlCQUFpQjtJQUNqQix3QkFBd0I7SUFDeEIsaUJBQWlCO0lBQ2pCLGlCQUFpQjtJQUNqQixhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLGlCQUFpQjtJQUNqQixhQUFhO0lBQ2Isa0JBQWtCO0lBQ2xCLGNBQWM7SUFDZCxvQkFBb0I7SUFDcEIsV0FBVztJQUNYLHNCQUFzQjtJQUN0QixzQkFBc0I7SUFDdEIsbUJBQW1CO0lBQ25CLGlCQUFpQjtJQUNqQix3QkFBd0I7SUFDeEIsa0JBQWtCO0lBQ2xCLDJCQUEyQjtJQUMzQiw4QkFBOEI7SUFDOUIsc0JBQXNCO0NBQ3ZCLENBQUM7QUF3Q1csUUFBQSxRQUFRLEdBQUcsYUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0LFxuICBCYXRjaFJlcXVlc3RUb29Mb25nLFxuICBFbXB0eUJhdGNoUmVxdWVzdCxcbiAgSW52YWxpZEFkZHJlc3MsXG4gIEludmFsaWRBdHRyaWJ1dGVOYW1lLFxuICBJbnZhbGlkQXR0cmlidXRlVmFsdWUsXG4gIEludmFsaWRCYXRjaEVudHJ5SWQsXG4gIEludmFsaWRJZEZvcm1hdCxcbiAgSW52YWxpZE1lc3NhZ2VDb250ZW50cyxcbiAgSW52YWxpZFNlY3VyaXR5LFxuICBLbXNBY2Nlc3NEZW5pZWQsXG4gIEttc0Rpc2FibGVkLFxuICBLbXNJbnZhbGlkS2V5VXNhZ2UsXG4gIEttc0ludmFsaWRTdGF0ZSxcbiAgS21zTm90Rm91bmQsXG4gIEttc09wdEluUmVxdWlyZWQsXG4gIEttc1Rocm90dGxlZCxcbiAgTWVzc2FnZU5vdEluZmxpZ2h0LFxuICBPdmVyTGltaXQsXG4gIFB1cmdlUXVldWVJblByb2dyZXNzLFxuICBRdWV1ZURlbGV0ZWRSZWNlbnRseSxcbiAgUXVldWVEb2VzTm90RXhpc3QsXG4gIFF1ZXVlTmFtZUV4aXN0cyxcbiAgUmVjZWlwdEhhbmRsZUlzSW52YWxpZCxcbiAgUmVxdWVzdFRocm90dGxlZCxcbiAgUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvbixcbiAgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdCxcbiAgVW5zdXBwb3J0ZWRPcGVyYXRpb24sXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc3FzXCI7XG5pbXBvcnQgeyBEYXRhIH0gZnJvbSBcImVmZmVjdFwiO1xuXG5leHBvcnQgY29uc3QgQWxsU2VydmljZUVycm9ycyA9IFtcbiAgXCJCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RcIixcbiAgXCJCYXRjaFJlcXVlc3RUb29Mb25nXCIsXG4gIFwiRW1wdHlCYXRjaFJlcXVlc3RcIixcbiAgXCJJbnZhbGlkQWRkcmVzc1wiLFxuICBcIkludmFsaWRBdHRyaWJ1dGVOYW1lXCIsXG4gIFwiSW52YWxpZEF0dHJpYnV0ZVZhbHVlXCIsXG4gIFwiSW52YWxpZEJhdGNoRW50cnlJZFwiLFxuICBcIkludmFsaWRJZEZvcm1hdFwiLFxuICBcIkludmFsaWRNZXNzYWdlQ29udGVudHNcIixcbiAgXCJJbnZhbGlkU2VjdXJpdHlcIixcbiAgXCJLbXNBY2Nlc3NEZW5pZWRcIixcbiAgXCJLbXNEaXNhYmxlZFwiLFxuICBcIkttc0ludmFsaWRLZXlVc2FnZVwiLFxuICBcIkttc0ludmFsaWRTdGF0ZVwiLFxuICBcIkttc05vdEZvdW5kXCIsXG4gIFwiS21zT3B0SW5SZXF1aXJlZFwiLFxuICBcIkttc1Rocm90dGxlZFwiLFxuICBcIk1lc3NhZ2VOb3RJbmZsaWdodFwiLFxuICBcIk92ZXJMaW1pdFwiLFxuICBcIlB1cmdlUXVldWVJblByb2dyZXNzXCIsXG4gIFwiUXVldWVEZWxldGVkUmVjZW50bHlcIixcbiAgXCJRdWV1ZURvZXNOb3RFeGlzdFwiLFxuICBcIlF1ZXVlTmFtZUV4aXN0c1wiLFxuICBcIlJlY2VpcHRIYW5kbGVJc0ludmFsaWRcIixcbiAgXCJSZXF1ZXN0VGhyb3R0bGVkXCIsXG4gIFwiUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvblwiLFxuICBcIlRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RcIixcbiAgXCJVbnN1cHBvcnRlZE9wZXJhdGlvblwiLFxuXTtcblxuZXhwb3J0IHR5cGUgVGFnZ2VkRXhjZXB0aW9uPFQgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9PiA9IFQgJiB7XG4gIHJlYWRvbmx5IF90YWc6IFRbXCJuYW1lXCJdO1xufTtcblxuZXhwb3J0IHR5cGUgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248QmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0PjtcbmV4cG9ydCB0eXBlIEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxCYXRjaFJlcXVlc3RUb29Mb25nPjtcbmV4cG9ydCB0eXBlIEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248RW1wdHlCYXRjaFJlcXVlc3Q+O1xuZXhwb3J0IHR5cGUgSW52YWxpZEFkZHJlc3NFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkQWRkcmVzcz47XG5leHBvcnQgdHlwZSBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRBdHRyaWJ1dGVOYW1lPjtcbmV4cG9ydCB0eXBlIEludmFsaWRBdHRyaWJ1dGVWYWx1ZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRBdHRyaWJ1dGVWYWx1ZT47XG5leHBvcnQgdHlwZSBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZEJhdGNoRW50cnlJZD47XG5leHBvcnQgdHlwZSBJbnZhbGlkSWRGb3JtYXRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkSWRGb3JtYXQ+O1xuZXhwb3J0IHR5cGUgSW52YWxpZE1lc3NhZ2VDb250ZW50c0Vycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRNZXNzYWdlQ29udGVudHM+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFNlY3VyaXR5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFNlY3VyaXR5PjtcbmV4cG9ydCB0eXBlIEttc0FjY2Vzc0RlbmllZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEttc0FjY2Vzc0RlbmllZD47XG5leHBvcnQgdHlwZSBLbXNEaXNhYmxlZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEttc0Rpc2FibGVkPjtcbmV4cG9ydCB0eXBlIEttc0ludmFsaWRLZXlVc2FnZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEttc0ludmFsaWRLZXlVc2FnZT47XG5leHBvcnQgdHlwZSBLbXNJbnZhbGlkU3RhdGVFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLbXNJbnZhbGlkU3RhdGU+O1xuZXhwb3J0IHR5cGUgS21zTm90Rm91bmRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLbXNOb3RGb3VuZD47XG5leHBvcnQgdHlwZSBLbXNPcHRJblJlcXVpcmVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248S21zT3B0SW5SZXF1aXJlZD47XG5leHBvcnQgdHlwZSBLbXNUaHJvdHRsZWRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLbXNUaHJvdHRsZWQ+O1xuZXhwb3J0IHR5cGUgTWVzc2FnZU5vdEluZmxpZ2h0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248TWVzc2FnZU5vdEluZmxpZ2h0PjtcbmV4cG9ydCB0eXBlIE92ZXJMaW1pdEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPE92ZXJMaW1pdD47XG5leHBvcnQgdHlwZSBQdXJnZVF1ZXVlSW5Qcm9ncmVzc0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFB1cmdlUXVldWVJblByb2dyZXNzPjtcbmV4cG9ydCB0eXBlIFF1ZXVlRGVsZXRlZFJlY2VudGx5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248UXVldWVEZWxldGVkUmVjZW50bHk+O1xuZXhwb3J0IHR5cGUgUXVldWVEb2VzTm90RXhpc3RFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxRdWV1ZURvZXNOb3RFeGlzdD47XG5leHBvcnQgdHlwZSBRdWV1ZU5hbWVFeGlzdHNFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxRdWV1ZU5hbWVFeGlzdHM+O1xuZXhwb3J0IHR5cGUgUmVjZWlwdEhhbmRsZUlzSW52YWxpZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFJlY2VpcHRIYW5kbGVJc0ludmFsaWQ+O1xuZXhwb3J0IHR5cGUgUmVxdWVzdFRocm90dGxlZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFJlcXVlc3RUaHJvdHRsZWQ+O1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VOb3RGb3VuZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFJlc291cmNlTm90Rm91bmRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3Q+O1xuZXhwb3J0IHR5cGUgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxVbnN1cHBvcnRlZE9wZXJhdGlvbj47XG5cbmV4cG9ydCB0eXBlIFNka0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEVycm9yICYgeyBuYW1lOiBcIlNka0Vycm9yXCIgfT47XG5leHBvcnQgY29uc3QgU2RrRXJyb3IgPSBEYXRhLnRhZ2dlZDxTZGtFcnJvcj4oXCJTZGtFcnJvclwiKTtcbiJdfQ==
|
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
import type { SQSClientConfig } from "@aws-sdk/client-sqs";
|
|
5
|
-
import
|
|
6
|
-
import * as Effect from "effect/Effect";
|
|
7
|
-
import * as Layer from "effect/Layer";
|
|
5
|
+
import { Context, Effect, Layer } from "effect";
|
|
8
6
|
declare const SQSClientInstanceConfig_base: Context.TagClass<SQSClientInstanceConfig, "@effect-aws/client-sqs/SQSClientInstanceConfig", SQSClientConfig>;
|
|
9
7
|
/**
|
|
10
8
|
* @since 1.0.0
|
|
@@ -1,63 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
3
|
exports.DefaultSQSClientConfigLayer = exports.makeDefaultSQSClientInstanceConfig = exports.SQSClientInstanceConfig = void 0;
|
|
27
|
-
const
|
|
28
|
-
const Effect = __importStar(require("effect/Effect"));
|
|
29
|
-
const Layer = __importStar(require("effect/Layer"));
|
|
30
|
-
const Runtime = __importStar(require("effect/Runtime"));
|
|
4
|
+
const effect_1 = require("effect");
|
|
31
5
|
/**
|
|
32
6
|
* @since 1.0.0
|
|
33
7
|
* @category tags
|
|
34
8
|
*/
|
|
35
|
-
class SQSClientInstanceConfig extends Context.Tag("@effect-aws/client-sqs/SQSClientInstanceConfig")() {
|
|
9
|
+
class SQSClientInstanceConfig extends effect_1.Context.Tag("@effect-aws/client-sqs/SQSClientInstanceConfig")() {
|
|
36
10
|
}
|
|
37
11
|
exports.SQSClientInstanceConfig = SQSClientInstanceConfig;
|
|
38
12
|
/**
|
|
39
13
|
* @since 1.0.0
|
|
40
14
|
* @category constructors
|
|
41
15
|
*/
|
|
42
|
-
exports.makeDefaultSQSClientInstanceConfig = Effect.gen(function* (_) {
|
|
43
|
-
const runtime = yield* _(Effect.runtime());
|
|
44
|
-
const runSync = Runtime.runSync(runtime);
|
|
16
|
+
exports.makeDefaultSQSClientInstanceConfig = effect_1.Effect.gen(function* (_) {
|
|
17
|
+
const runtime = yield* _(effect_1.Effect.runtime());
|
|
18
|
+
const runSync = effect_1.Runtime.runSync(runtime);
|
|
45
19
|
return {
|
|
46
20
|
logger: {
|
|
47
21
|
info(m) {
|
|
48
|
-
Effect.logInfo(m).pipe(runSync);
|
|
22
|
+
effect_1.Effect.logInfo(m).pipe(runSync);
|
|
49
23
|
},
|
|
50
24
|
warn(m) {
|
|
51
|
-
Effect.logWarning(m).pipe(runSync);
|
|
25
|
+
effect_1.Effect.logWarning(m).pipe(runSync);
|
|
52
26
|
},
|
|
53
27
|
error(m) {
|
|
54
|
-
Effect.logError(m).pipe(runSync);
|
|
28
|
+
effect_1.Effect.logError(m).pipe(runSync);
|
|
55
29
|
},
|
|
56
30
|
debug(m) {
|
|
57
|
-
Effect.logDebug(m).pipe(runSync);
|
|
31
|
+
effect_1.Effect.logDebug(m).pipe(runSync);
|
|
58
32
|
},
|
|
59
33
|
trace(m) {
|
|
60
|
-
Effect.logTrace(m).pipe(runSync);
|
|
34
|
+
effect_1.Effect.logTrace(m).pipe(runSync);
|
|
61
35
|
},
|
|
62
36
|
},
|
|
63
37
|
};
|
|
@@ -66,5 +40,5 @@ exports.makeDefaultSQSClientInstanceConfig = Effect.gen(function* (_) {
|
|
|
66
40
|
* @since 1.0.0
|
|
67
41
|
* @category layers
|
|
68
42
|
*/
|
|
69
|
-
exports.DefaultSQSClientConfigLayer = Layer.effect(SQSClientInstanceConfig, exports.makeDefaultSQSClientInstanceConfig);
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
exports.DefaultSQSClientConfigLayer = effect_1.Layer.effect(SQSClientInstanceConfig, exports.makeDefaultSQSClientInstanceConfig);
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1FTQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU1FTQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBSUEsbUNBQXlEO0FBRXpEOzs7R0FHRztBQUNILE1BQWEsdUJBQXdCLFNBQVEsZ0JBQU8sQ0FBQyxHQUFHLENBQ3RELGdEQUFnRCxDQUNqRCxFQUE0QztDQUFHO0FBRmhELDBEQUVnRDtBQUVoRDs7O0dBR0c7QUFDVSxRQUFBLGtDQUFrQyxHQUM3QyxlQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDckIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQU0sQ0FBQyxPQUFPLEVBQVMsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sT0FBTyxHQUFHLGdCQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpDLE9BQU87UUFDTCxNQUFNLEVBQUU7WUFDTixJQUFJLENBQUMsQ0FBQztnQkFDSixlQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUM7Z0JBQ0osZUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLGVBQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxlQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsZUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUw7OztHQUdHO0FBQ1UsUUFBQSwyQkFBMkIsR0FBRyxjQUFLLENBQUMsTUFBTSxDQUNyRCx1QkFBdUIsRUFDdkIsMENBQWtDLENBQ25DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgdHlwZSB7IFNRU0NsaWVudENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc3FzXCI7XG5pbXBvcnQgeyBDb250ZXh0LCBFZmZlY3QsIExheWVyLCBSdW50aW1lIH0gZnJvbSBcImVmZmVjdFwiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIFNRU0NsaWVudEluc3RhbmNlQ29uZmlnIGV4dGVuZHMgQ29udGV4dC5UYWcoXG4gIFwiQGVmZmVjdC1hd3MvY2xpZW50LXNxcy9TUVNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiLFxuKTxTUVNDbGllbnRJbnN0YW5jZUNvbmZpZywgU1FTQ2xpZW50Q29uZmlnPigpIHt9XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlRGVmYXVsdFNRU0NsaWVudEluc3RhbmNlQ29uZmlnOiBFZmZlY3QuRWZmZWN0PFNRU0NsaWVudENvbmZpZz4gPVxuICBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICAgIGNvbnN0IHJ1bnRpbWUgPSB5aWVsZCogXyhFZmZlY3QucnVudGltZTxuZXZlcj4oKSk7XG4gICAgY29uc3QgcnVuU3luYyA9IFJ1bnRpbWUucnVuU3luYyhydW50aW1lKTtcblxuICAgIHJldHVybiB7XG4gICAgICBsb2dnZXI6IHtcbiAgICAgICAgaW5mbyhtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0luZm8obSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgd2FybihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ1dhcm5pbmcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3IobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dFcnJvcihtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBkZWJ1ZyhtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0RlYnVnKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIHRyYWNlKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nVHJhY2UobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U1FTQ2xpZW50Q29uZmlnTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIFNRU0NsaWVudEluc3RhbmNlQ29uZmlnLFxuICBtYWtlRGVmYXVsdFNRU0NsaWVudEluc3RhbmNlQ29uZmlnLFxuKTtcbiJdfQ==
|
package/lib/SQSService.d.ts
CHANGED
|
@@ -2,119 +2,150 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
import { type AddPermissionCommandInput, type AddPermissionCommandOutput, type CancelMessageMoveTaskCommandInput, type CancelMessageMoveTaskCommandOutput, type ChangeMessageVisibilityCommandInput, type ChangeMessageVisibilityCommandOutput, type ChangeMessageVisibilityBatchCommandInput, type ChangeMessageVisibilityBatchCommandOutput, type CreateQueueCommandInput, type CreateQueueCommandOutput, type DeleteMessageCommandInput, type DeleteMessageCommandOutput, type DeleteMessageBatchCommandInput, type DeleteMessageBatchCommandOutput, type DeleteQueueCommandInput, type DeleteQueueCommandOutput, type GetQueueAttributesCommandInput, type GetQueueAttributesCommandOutput, type GetQueueUrlCommandInput, type GetQueueUrlCommandOutput, type ListDeadLetterSourceQueuesCommandInput, type ListDeadLetterSourceQueuesCommandOutput, type ListMessageMoveTasksCommandInput, type ListMessageMoveTasksCommandOutput, type ListQueuesCommandInput, type ListQueuesCommandOutput, type ListQueueTagsCommandInput, type ListQueueTagsCommandOutput, type PurgeQueueCommandInput, type PurgeQueueCommandOutput, type ReceiveMessageCommandInput, type ReceiveMessageCommandOutput, type RemovePermissionCommandInput, type RemovePermissionCommandOutput, type SendMessageCommandInput, type SendMessageCommandOutput, type SendMessageBatchCommandInput, type SendMessageBatchCommandOutput, type SetQueueAttributesCommandInput, type SetQueueAttributesCommandOutput, type StartMessageMoveTaskCommandInput, type StartMessageMoveTaskCommandOutput, type TagQueueCommandInput, type TagQueueCommandOutput, type UntagQueueCommandInput, type UntagQueueCommandOutput } from "@aws-sdk/client-sqs";
|
|
5
|
-
import {
|
|
6
|
-
import { Context, Effect, Layer } from "effect";
|
|
5
|
+
import { Effect, Layer } from "effect";
|
|
7
6
|
import { BatchEntryIdsNotDistinctError, BatchRequestTooLongError, EmptyBatchRequestError, InvalidAddressError, InvalidAttributeNameError, InvalidAttributeValueError, InvalidBatchEntryIdError, InvalidIdFormatError, InvalidMessageContentsError, InvalidSecurityError, KmsAccessDeniedError, KmsDisabledError, KmsInvalidKeyUsageError, KmsInvalidStateError, KmsNotFoundError, KmsOptInRequiredError, KmsThrottledError, MessageNotInflightError, OverLimitError, PurgeQueueInProgressError, QueueDeletedRecentlyError, QueueDoesNotExistError, QueueNameExistsError, ReceiptHandleIsInvalidError, RequestThrottledError, ResourceNotFoundError, TooManyEntriesInBatchRequestError, UnsupportedOperationError, SdkError } from "./Errors";
|
|
8
7
|
import { SQSClientInstance } from "./SQSClientInstance";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
interface HttpHandlerOptions {
|
|
9
|
+
/**
|
|
10
|
+
* The maximum time in milliseconds that the connection phase of a request
|
|
11
|
+
* may take before the connection attempt is abandoned.
|
|
12
|
+
*/
|
|
13
|
+
requestTimeout?: number;
|
|
14
|
+
}
|
|
15
|
+
interface SQSService$ {
|
|
14
16
|
readonly _: unique symbol;
|
|
15
17
|
/**
|
|
16
18
|
* @see {@link AddPermissionCommand}
|
|
17
19
|
*/
|
|
18
|
-
addPermission(args: AddPermissionCommandInput, options?:
|
|
20
|
+
addPermission(args: AddPermissionCommandInput, options?: HttpHandlerOptions): Effect.Effect<AddPermissionCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | OverLimitError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
19
21
|
/**
|
|
20
22
|
* @see {@link CancelMessageMoveTaskCommand}
|
|
21
23
|
*/
|
|
22
|
-
cancelMessageMoveTask(args: CancelMessageMoveTaskCommandInput, options?:
|
|
24
|
+
cancelMessageMoveTask(args: CancelMessageMoveTaskCommandInput, options?: HttpHandlerOptions): Effect.Effect<CancelMessageMoveTaskCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | RequestThrottledError | ResourceNotFoundError | UnsupportedOperationError>;
|
|
23
25
|
/**
|
|
24
26
|
* @see {@link ChangeMessageVisibilityCommand}
|
|
25
27
|
*/
|
|
26
|
-
changeMessageVisibility(args: ChangeMessageVisibilityCommandInput, options?:
|
|
28
|
+
changeMessageVisibility(args: ChangeMessageVisibilityCommandInput, options?: HttpHandlerOptions): Effect.Effect<ChangeMessageVisibilityCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | MessageNotInflightError | QueueDoesNotExistError | ReceiptHandleIsInvalidError | RequestThrottledError | UnsupportedOperationError>;
|
|
27
29
|
/**
|
|
28
30
|
* @see {@link ChangeMessageVisibilityBatchCommand}
|
|
29
31
|
*/
|
|
30
|
-
changeMessageVisibilityBatch(args: ChangeMessageVisibilityBatchCommandInput, options?:
|
|
32
|
+
changeMessageVisibilityBatch(args: ChangeMessageVisibilityBatchCommandInput, options?: HttpHandlerOptions): Effect.Effect<ChangeMessageVisibilityBatchCommandOutput, SdkError | BatchEntryIdsNotDistinctError | EmptyBatchRequestError | InvalidAddressError | InvalidBatchEntryIdError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | TooManyEntriesInBatchRequestError | UnsupportedOperationError>;
|
|
31
33
|
/**
|
|
32
34
|
* @see {@link CreateQueueCommand}
|
|
33
35
|
*/
|
|
34
|
-
createQueue(args: CreateQueueCommandInput, options?:
|
|
36
|
+
createQueue(args: CreateQueueCommandInput, options?: HttpHandlerOptions): Effect.Effect<CreateQueueCommandOutput, SdkError | InvalidAddressError | InvalidAttributeNameError | InvalidAttributeValueError | InvalidSecurityError | QueueDeletedRecentlyError | QueueNameExistsError | RequestThrottledError | UnsupportedOperationError>;
|
|
35
37
|
/**
|
|
36
38
|
* @see {@link DeleteMessageCommand}
|
|
37
39
|
*/
|
|
38
|
-
deleteMessage(args: DeleteMessageCommandInput, options?:
|
|
40
|
+
deleteMessage(args: DeleteMessageCommandInput, options?: HttpHandlerOptions): Effect.Effect<DeleteMessageCommandOutput, SdkError | InvalidAddressError | InvalidIdFormatError | InvalidSecurityError | QueueDoesNotExistError | ReceiptHandleIsInvalidError | RequestThrottledError | UnsupportedOperationError>;
|
|
39
41
|
/**
|
|
40
42
|
* @see {@link DeleteMessageBatchCommand}
|
|
41
43
|
*/
|
|
42
|
-
deleteMessageBatch(args: DeleteMessageBatchCommandInput, options?:
|
|
44
|
+
deleteMessageBatch(args: DeleteMessageBatchCommandInput, options?: HttpHandlerOptions): Effect.Effect<DeleteMessageBatchCommandOutput, SdkError | BatchEntryIdsNotDistinctError | EmptyBatchRequestError | InvalidAddressError | InvalidBatchEntryIdError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | TooManyEntriesInBatchRequestError | UnsupportedOperationError>;
|
|
43
45
|
/**
|
|
44
46
|
* @see {@link DeleteQueueCommand}
|
|
45
47
|
*/
|
|
46
|
-
deleteQueue(args: DeleteQueueCommandInput, options?:
|
|
48
|
+
deleteQueue(args: DeleteQueueCommandInput, options?: HttpHandlerOptions): Effect.Effect<DeleteQueueCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
47
49
|
/**
|
|
48
50
|
* @see {@link GetQueueAttributesCommand}
|
|
49
51
|
*/
|
|
50
|
-
getQueueAttributes(args: GetQueueAttributesCommandInput, options?:
|
|
52
|
+
getQueueAttributes(args: GetQueueAttributesCommandInput, options?: HttpHandlerOptions): Effect.Effect<GetQueueAttributesCommandOutput, SdkError | InvalidAddressError | InvalidAttributeNameError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
51
53
|
/**
|
|
52
54
|
* @see {@link GetQueueUrlCommand}
|
|
53
55
|
*/
|
|
54
|
-
getQueueUrl(args: GetQueueUrlCommandInput, options?:
|
|
56
|
+
getQueueUrl(args: GetQueueUrlCommandInput, options?: HttpHandlerOptions): Effect.Effect<GetQueueUrlCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
55
57
|
/**
|
|
56
58
|
* @see {@link ListDeadLetterSourceQueuesCommand}
|
|
57
59
|
*/
|
|
58
|
-
listDeadLetterSourceQueues(args: ListDeadLetterSourceQueuesCommandInput, options?:
|
|
60
|
+
listDeadLetterSourceQueues(args: ListDeadLetterSourceQueuesCommandInput, options?: HttpHandlerOptions): Effect.Effect<ListDeadLetterSourceQueuesCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
59
61
|
/**
|
|
60
62
|
* @see {@link ListMessageMoveTasksCommand}
|
|
61
63
|
*/
|
|
62
|
-
listMessageMoveTasks(args: ListMessageMoveTasksCommandInput, options?:
|
|
64
|
+
listMessageMoveTasks(args: ListMessageMoveTasksCommandInput, options?: HttpHandlerOptions): Effect.Effect<ListMessageMoveTasksCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | RequestThrottledError | ResourceNotFoundError | UnsupportedOperationError>;
|
|
63
65
|
/**
|
|
64
66
|
* @see {@link ListQueuesCommand}
|
|
65
67
|
*/
|
|
66
|
-
listQueues(args: ListQueuesCommandInput, options?:
|
|
68
|
+
listQueues(args: ListQueuesCommandInput, options?: HttpHandlerOptions): Effect.Effect<ListQueuesCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | RequestThrottledError | UnsupportedOperationError>;
|
|
67
69
|
/**
|
|
68
70
|
* @see {@link ListQueueTagsCommand}
|
|
69
71
|
*/
|
|
70
|
-
listQueueTags(args: ListQueueTagsCommandInput, options?:
|
|
72
|
+
listQueueTags(args: ListQueueTagsCommandInput, options?: HttpHandlerOptions): Effect.Effect<ListQueueTagsCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
71
73
|
/**
|
|
72
74
|
* @see {@link PurgeQueueCommand}
|
|
73
75
|
*/
|
|
74
|
-
purgeQueue(args: PurgeQueueCommandInput, options?:
|
|
76
|
+
purgeQueue(args: PurgeQueueCommandInput, options?: HttpHandlerOptions): Effect.Effect<PurgeQueueCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | PurgeQueueInProgressError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
75
77
|
/**
|
|
76
78
|
* @see {@link ReceiveMessageCommand}
|
|
77
79
|
*/
|
|
78
|
-
receiveMessage(args: ReceiveMessageCommandInput, options?:
|
|
80
|
+
receiveMessage(args: ReceiveMessageCommandInput, options?: HttpHandlerOptions): Effect.Effect<ReceiveMessageCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | KmsAccessDeniedError | KmsDisabledError | KmsInvalidKeyUsageError | KmsInvalidStateError | KmsNotFoundError | KmsOptInRequiredError | KmsThrottledError | OverLimitError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
79
81
|
/**
|
|
80
82
|
* @see {@link RemovePermissionCommand}
|
|
81
83
|
*/
|
|
82
|
-
removePermission(args: RemovePermissionCommandInput, options?:
|
|
84
|
+
removePermission(args: RemovePermissionCommandInput, options?: HttpHandlerOptions): Effect.Effect<RemovePermissionCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
83
85
|
/**
|
|
84
86
|
* @see {@link SendMessageCommand}
|
|
85
87
|
*/
|
|
86
|
-
sendMessage(args: SendMessageCommandInput, options?:
|
|
88
|
+
sendMessage(args: SendMessageCommandInput, options?: HttpHandlerOptions): Effect.Effect<SendMessageCommandOutput, SdkError | InvalidAddressError | InvalidMessageContentsError | InvalidSecurityError | KmsAccessDeniedError | KmsDisabledError | KmsInvalidKeyUsageError | KmsInvalidStateError | KmsNotFoundError | KmsOptInRequiredError | KmsThrottledError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
87
89
|
/**
|
|
88
90
|
* @see {@link SendMessageBatchCommand}
|
|
89
91
|
*/
|
|
90
|
-
sendMessageBatch(args: SendMessageBatchCommandInput, options?:
|
|
92
|
+
sendMessageBatch(args: SendMessageBatchCommandInput, options?: HttpHandlerOptions): Effect.Effect<SendMessageBatchCommandOutput, SdkError | BatchEntryIdsNotDistinctError | BatchRequestTooLongError | EmptyBatchRequestError | InvalidAddressError | InvalidBatchEntryIdError | InvalidSecurityError | KmsAccessDeniedError | KmsDisabledError | KmsInvalidKeyUsageError | KmsInvalidStateError | KmsNotFoundError | KmsOptInRequiredError | KmsThrottledError | QueueDoesNotExistError | RequestThrottledError | TooManyEntriesInBatchRequestError | UnsupportedOperationError>;
|
|
91
93
|
/**
|
|
92
94
|
* @see {@link SetQueueAttributesCommand}
|
|
93
95
|
*/
|
|
94
|
-
setQueueAttributes(args: SetQueueAttributesCommandInput, options?:
|
|
96
|
+
setQueueAttributes(args: SetQueueAttributesCommandInput, options?: HttpHandlerOptions): Effect.Effect<SetQueueAttributesCommandOutput, SdkError | InvalidAddressError | InvalidAttributeNameError | InvalidAttributeValueError | InvalidSecurityError | OverLimitError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
95
97
|
/**
|
|
96
98
|
* @see {@link StartMessageMoveTaskCommand}
|
|
97
99
|
*/
|
|
98
|
-
startMessageMoveTask(args: StartMessageMoveTaskCommandInput, options?:
|
|
100
|
+
startMessageMoveTask(args: StartMessageMoveTaskCommandInput, options?: HttpHandlerOptions): Effect.Effect<StartMessageMoveTaskCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | RequestThrottledError | ResourceNotFoundError | UnsupportedOperationError>;
|
|
99
101
|
/**
|
|
100
102
|
* @see {@link TagQueueCommand}
|
|
101
103
|
*/
|
|
102
|
-
tagQueue(args: TagQueueCommandInput, options?:
|
|
104
|
+
tagQueue(args: TagQueueCommandInput, options?: HttpHandlerOptions): Effect.Effect<TagQueueCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
103
105
|
/**
|
|
104
106
|
* @see {@link UntagQueueCommand}
|
|
105
107
|
*/
|
|
106
|
-
untagQueue(args: UntagQueueCommandInput, options?:
|
|
108
|
+
untagQueue(args: UntagQueueCommandInput, options?: HttpHandlerOptions): Effect.Effect<UntagQueueCommandOutput, SdkError | InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError>;
|
|
107
109
|
}
|
|
110
|
+
declare const SQSService_base: import("effect/Context").TagClass<SQSService, "@effect-aws/client-sqs/SQSService", SQSService$> & {
|
|
111
|
+
readonly _: Effect.Effect<SQSService$["_"], never, SQSService>;
|
|
112
|
+
addPermission: (args: AddPermissionCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<AddPermissionCommandOutput, InvalidAddressError | InvalidSecurityError | OverLimitError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
113
|
+
cancelMessageMoveTask: (args: CancelMessageMoveTaskCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<CancelMessageMoveTaskCommandOutput, InvalidAddressError | InvalidSecurityError | RequestThrottledError | ResourceNotFoundError | UnsupportedOperationError | SdkError, SQSService>;
|
|
114
|
+
changeMessageVisibility: (args: ChangeMessageVisibilityCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ChangeMessageVisibilityCommandOutput, InvalidAddressError | InvalidSecurityError | MessageNotInflightError | QueueDoesNotExistError | ReceiptHandleIsInvalidError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
115
|
+
changeMessageVisibilityBatch: (args: ChangeMessageVisibilityBatchCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ChangeMessageVisibilityBatchCommandOutput, BatchEntryIdsNotDistinctError | EmptyBatchRequestError | InvalidAddressError | InvalidBatchEntryIdError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | TooManyEntriesInBatchRequestError | UnsupportedOperationError | SdkError, SQSService>;
|
|
116
|
+
createQueue: (args: CreateQueueCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<CreateQueueCommandOutput, InvalidAddressError | InvalidAttributeNameError | InvalidAttributeValueError | InvalidSecurityError | QueueDeletedRecentlyError | QueueNameExistsError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
117
|
+
deleteMessage: (args: DeleteMessageCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<DeleteMessageCommandOutput, InvalidAddressError | InvalidIdFormatError | InvalidSecurityError | QueueDoesNotExistError | ReceiptHandleIsInvalidError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
118
|
+
deleteMessageBatch: (args: DeleteMessageBatchCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<DeleteMessageBatchCommandOutput, BatchEntryIdsNotDistinctError | EmptyBatchRequestError | InvalidAddressError | InvalidBatchEntryIdError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | TooManyEntriesInBatchRequestError | UnsupportedOperationError | SdkError, SQSService>;
|
|
119
|
+
deleteQueue: (args: DeleteQueueCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<DeleteQueueCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
120
|
+
getQueueAttributes: (args: GetQueueAttributesCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<GetQueueAttributesCommandOutput, InvalidAddressError | InvalidAttributeNameError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
121
|
+
getQueueUrl: (args: GetQueueUrlCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<GetQueueUrlCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
122
|
+
listDeadLetterSourceQueues: (args: ListDeadLetterSourceQueuesCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ListDeadLetterSourceQueuesCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
123
|
+
listMessageMoveTasks: (args: ListMessageMoveTasksCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ListMessageMoveTasksCommandOutput, InvalidAddressError | InvalidSecurityError | RequestThrottledError | ResourceNotFoundError | UnsupportedOperationError | SdkError, SQSService>;
|
|
124
|
+
listQueues: (args: ListQueuesCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ListQueuesCommandOutput, InvalidAddressError | InvalidSecurityError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
125
|
+
listQueueTags: (args: ListQueueTagsCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ListQueueTagsCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
126
|
+
purgeQueue: (args: PurgeQueueCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<PurgeQueueCommandOutput, InvalidAddressError | InvalidSecurityError | PurgeQueueInProgressError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
127
|
+
receiveMessage: (args: ReceiveMessageCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<ReceiveMessageCommandOutput, InvalidAddressError | InvalidSecurityError | KmsAccessDeniedError | KmsDisabledError | KmsInvalidKeyUsageError | KmsInvalidStateError | KmsNotFoundError | KmsOptInRequiredError | KmsThrottledError | OverLimitError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
128
|
+
removePermission: (args: RemovePermissionCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<RemovePermissionCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
129
|
+
sendMessage: (args: SendMessageCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<SendMessageCommandOutput, InvalidAddressError | InvalidMessageContentsError | InvalidSecurityError | KmsAccessDeniedError | KmsDisabledError | KmsInvalidKeyUsageError | KmsInvalidStateError | KmsNotFoundError | KmsOptInRequiredError | KmsThrottledError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
130
|
+
sendMessageBatch: (args: SendMessageBatchCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<SendMessageBatchCommandOutput, BatchEntryIdsNotDistinctError | BatchRequestTooLongError | EmptyBatchRequestError | InvalidAddressError | InvalidBatchEntryIdError | InvalidSecurityError | KmsAccessDeniedError | KmsDisabledError | KmsInvalidKeyUsageError | KmsInvalidStateError | KmsNotFoundError | KmsOptInRequiredError | KmsThrottledError | QueueDoesNotExistError | RequestThrottledError | TooManyEntriesInBatchRequestError | UnsupportedOperationError | SdkError, SQSService>;
|
|
131
|
+
setQueueAttributes: (args: SetQueueAttributesCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<SetQueueAttributesCommandOutput, InvalidAddressError | InvalidAttributeNameError | InvalidAttributeValueError | InvalidSecurityError | OverLimitError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
132
|
+
startMessageMoveTask: (args: StartMessageMoveTaskCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<StartMessageMoveTaskCommandOutput, InvalidAddressError | InvalidSecurityError | RequestThrottledError | ResourceNotFoundError | UnsupportedOperationError | SdkError, SQSService>;
|
|
133
|
+
tagQueue: (args: TagQueueCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<TagQueueCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
134
|
+
untagQueue: (args: UntagQueueCommandInput, options?: HttpHandlerOptions | undefined) => Effect.Effect<UntagQueueCommandOutput, InvalidAddressError | InvalidSecurityError | QueueDoesNotExistError | RequestThrottledError | UnsupportedOperationError | SdkError, SQSService>;
|
|
135
|
+
} & {
|
|
136
|
+
use: <X>(body: (_: SQSService$) => X) => X extends Effect.Effect<infer A, infer E, infer R> ? Effect.Effect<A, E, R | SQSService> : Effect.Effect<X, never, SQSService>;
|
|
137
|
+
};
|
|
108
138
|
/**
|
|
109
139
|
* @since 1.0.0
|
|
110
|
-
* @category
|
|
140
|
+
* @category models
|
|
111
141
|
*/
|
|
112
|
-
export declare
|
|
142
|
+
export declare class SQSService extends SQSService_base {
|
|
143
|
+
}
|
|
113
144
|
/**
|
|
114
145
|
* @since 1.0.0
|
|
115
146
|
* @category constructors
|
|
116
147
|
*/
|
|
117
|
-
export declare const makeSQSService: Effect.Effect<SQSService
|
|
148
|
+
export declare const makeSQSService: Effect.Effect<SQSService$, never, SQSClientInstance>;
|
|
118
149
|
/**
|
|
119
150
|
* @since 1.0.0
|
|
120
151
|
* @category layers
|
|
@@ -130,3 +161,4 @@ export declare const SQSServiceLayer: Layer.Layer<SQSService, never, import("./S
|
|
|
130
161
|
* @category layers
|
|
131
162
|
*/
|
|
132
163
|
export declare const DefaultSQSServiceLayer: Layer.Layer<SQSService, never, never>;
|
|
164
|
+
export {};
|
package/lib/SQSService.js
CHANGED
|
@@ -36,9 +36,11 @@ const commands = {
|
|
|
36
36
|
};
|
|
37
37
|
/**
|
|
38
38
|
* @since 1.0.0
|
|
39
|
-
* @category
|
|
39
|
+
* @category models
|
|
40
40
|
*/
|
|
41
|
-
|
|
41
|
+
class SQSService extends effect_1.Effect.Tag("@effect-aws/client-sqs/SQSService")() {
|
|
42
|
+
}
|
|
43
|
+
exports.SQSService = SQSService;
|
|
42
44
|
/**
|
|
43
45
|
* @since 1.0.0
|
|
44
46
|
* @category constructors
|
|
@@ -48,9 +50,13 @@ exports.makeSQSService = effect_1.Effect.gen(function* (_) {
|
|
|
48
50
|
return effect_1.Record.toEntries(commands).reduce((acc, [command]) => {
|
|
49
51
|
const CommandCtor = commands[command];
|
|
50
52
|
const methodImpl = (args, options) => effect_1.Effect.tryPromise({
|
|
51
|
-
try: () => client.send(new CommandCtor(args),
|
|
53
|
+
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
54
|
+
...(options !== null && options !== void 0 ? options : {}),
|
|
55
|
+
abortSignal,
|
|
56
|
+
}),
|
|
52
57
|
catch: (e) => {
|
|
53
|
-
if (e instanceof client_sqs_1.SQSServiceException
|
|
58
|
+
if (e instanceof client_sqs_1.SQSServiceException &&
|
|
59
|
+
Errors_1.AllServiceErrors.includes(e.name)) {
|
|
54
60
|
const ServiceException = effect_1.Data.tagged(e.name);
|
|
55
61
|
return ServiceException({
|
|
56
62
|
...e,
|
|
@@ -77,7 +83,7 @@ exports.makeSQSService = effect_1.Effect.gen(function* (_) {
|
|
|
77
83
|
* @since 1.0.0
|
|
78
84
|
* @category layers
|
|
79
85
|
*/
|
|
80
|
-
exports.BaseSQSServiceLayer = effect_1.Layer.effect(
|
|
86
|
+
exports.BaseSQSServiceLayer = effect_1.Layer.effect(SQSService, exports.makeSQSService);
|
|
81
87
|
/**
|
|
82
88
|
* @since 1.0.0
|
|
83
89
|
* @category layers
|
|
@@ -88,4 +94,4 @@ exports.SQSServiceLayer = exports.BaseSQSServiceLayer.pipe(effect_1.Layer.provid
|
|
|
88
94
|
* @category layers
|
|
89
95
|
*/
|
|
90
96
|
exports.DefaultSQSServiceLayer = exports.SQSServiceLayer.pipe(effect_1.Layer.provide(SQSClientInstanceConfig_1.DefaultSQSClientConfigLayer));
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1FTU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TUVNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0gsb0RBdUU2QjtBQUU3QixtQ0FBOEQ7QUFDOUQscUNBK0JrQjtBQUNsQiwyREFBZ0Y7QUFDaEYsdUVBQXdFO0FBRXhFLE1BQU0sUUFBUSxHQUFHO0lBQ2Ysb0JBQW9CLEVBQXBCLGlDQUFvQjtJQUNwQiw0QkFBNEIsRUFBNUIseUNBQTRCO0lBQzVCLDhCQUE4QixFQUE5QiwyQ0FBOEI7SUFDOUIsbUNBQW1DLEVBQW5DLGdEQUFtQztJQUNuQyxrQkFBa0IsRUFBbEIsK0JBQWtCO0lBQ2xCLG9CQUFvQixFQUFwQixpQ0FBb0I7SUFDcEIseUJBQXlCLEVBQXpCLHNDQUF5QjtJQUN6QixrQkFBa0IsRUFBbEIsK0JBQWtCO0lBQ2xCLHlCQUF5QixFQUF6QixzQ0FBeUI7SUFDekIsa0JBQWtCLEVBQWxCLCtCQUFrQjtJQUNsQixpQ0FBaUMsRUFBakMsOENBQWlDO0lBQ2pDLDJCQUEyQixFQUEzQix3Q0FBMkI7SUFDM0IsaUJBQWlCLEVBQWpCLDhCQUFpQjtJQUNqQixvQkFBb0IsRUFBcEIsaUNBQW9CO0lBQ3BCLGlCQUFpQixFQUFqQiw4QkFBaUI7SUFDakIscUJBQXFCLEVBQXJCLGtDQUFxQjtJQUNyQix1QkFBdUIsRUFBdkIsb0NBQXVCO0lBQ3ZCLGtCQUFrQixFQUFsQiwrQkFBa0I7SUFDbEIsdUJBQXVCLEVBQXZCLG9DQUF1QjtJQUN2Qix5QkFBeUIsRUFBekIsc0NBQXlCO0lBQ3pCLDJCQUEyQixFQUEzQix3Q0FBMkI7SUFDM0IsZUFBZSxFQUFmLDRCQUFlO0lBQ2YsaUJBQWlCLEVBQWpCLDhCQUFpQjtDQUNsQixDQUFDO0FBMGFGOzs7R0FHRztBQUNVLFFBQUEsVUFBVSxHQUFHLGdCQUFPLENBQUMsVUFBVSxDQUMxQyxtQ0FBbUMsQ0FDcEMsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsY0FBYyxHQUFHLGVBQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNuRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMscUNBQWlCLENBQUMsQ0FBQztJQUUzQyxPQUFPLGVBQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtRQUMxRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFRLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBWSxFQUFFLEVBQUUsQ0FDN0MsZUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNoQixHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLGFBQVAsT0FBTyxjQUFQLE9BQU8sR0FBSSxFQUFFLENBQUM7WUFDNUQsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLFlBQVksZ0NBQW1CLEVBQUUsQ0FBQztvQkFDckMsTUFBTSxnQkFBZ0IsR0FBRyxhQUFJLENBQUMsTUFBTSxDQUVsQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBRVYsT0FBTyxnQkFBZ0IsQ0FBQzt3QkFDdEIsR0FBRyxDQUFDO3dCQUNKLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO29CQUN2QixPQUFPLElBQUEsaUJBQVEsRUFBQzt3QkFDZCxHQUFHLENBQUM7d0JBQ0osSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sQ0FBQyxDQUFDO1lBQ1YsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUNMLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNVLFFBQUEsbUJBQW1CLEdBQUcsY0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBVSxFQUFFLHNCQUFjLENBQUMsQ0FBQztBQUU1RTs7O0dBR0c7QUFDVSxRQUFBLGVBQWUsR0FBRywyQkFBbUIsQ0FBQyxJQUFJLENBQ3JELGNBQUssQ0FBQyxPQUFPLENBQUMsMENBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsc0JBQXNCLEdBQUcsdUJBQWUsQ0FBQyxJQUFJLENBQ3hELGNBQUssQ0FBQyxPQUFPLENBQUMscURBQTJCLENBQUMsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIFNRU1NlcnZpY2VFeGNlcHRpb24sXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmQsXG4gIHR5cGUgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRPdXRwdXQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kLFxuICB0eXBlIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVF1ZXVlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1lc3NhZ2VDb21tYW5kLFxuICB0eXBlIERlbGV0ZU1lc3NhZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVF1ZXVlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFF1ZXVlVXJsQ29tbWFuZCxcbiAgdHlwZSBHZXRRdWV1ZVVybENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRRdWV1ZVVybENvbW1hbmRPdXRwdXQsXG4gIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZCxcbiAgdHlwZSBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RRdWV1ZXNDb21tYW5kLFxuICB0eXBlIExpc3RRdWV1ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RRdWV1ZVRhZ3NDb21tYW5kLFxuICB0eXBlIExpc3RRdWV1ZVRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFF1ZXVlVGFnc0NvbW1hbmRPdXRwdXQsXG4gIFB1cmdlUXVldWVDb21tYW5kLFxuICB0eXBlIFB1cmdlUXVldWVDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHVyZ2VRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIFJlY2VpdmVNZXNzYWdlQ29tbWFuZCxcbiAgdHlwZSBSZWNlaXZlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWNlaXZlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFNlbmRNZXNzYWdlQ29tbWFuZCxcbiAgdHlwZSBTZW5kTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBTZW5kTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kLFxuICB0eXBlIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmRPdXRwdXQsXG4gIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZCxcbiAgdHlwZSBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gIFRhZ1F1ZXVlQ29tbWFuZCxcbiAgdHlwZSBUYWdRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBUYWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIFVudGFnUXVldWVDb21tYW5kLFxuICB0eXBlIFVudGFnUXVldWVDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW50YWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc3FzXCI7XG5pbXBvcnQgeyB0eXBlIEh0dHBIYW5kbGVyT3B0aW9ucyBhcyBfX0h0dHBIYW5kbGVyT3B0aW9ucyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgQ29udGV4dCwgRGF0YSwgRWZmZWN0LCBMYXllciwgUmVjb3JkIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHtcbiAgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3IsXG4gIEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvcixcbiAgRW1wdHlCYXRjaFJlcXVlc3RFcnJvcixcbiAgSW52YWxpZEFkZHJlc3NFcnJvcixcbiAgSW52YWxpZEF0dHJpYnV0ZU5hbWVFcnJvcixcbiAgSW52YWxpZEF0dHJpYnV0ZVZhbHVlRXJyb3IsXG4gIEludmFsaWRCYXRjaEVudHJ5SWRFcnJvcixcbiAgSW52YWxpZElkRm9ybWF0RXJyb3IsXG4gIEludmFsaWRNZXNzYWdlQ29udGVudHNFcnJvcixcbiAgSW52YWxpZFNlY3VyaXR5RXJyb3IsXG4gIEttc0FjY2Vzc0RlbmllZEVycm9yLFxuICBLbXNEaXNhYmxlZEVycm9yLFxuICBLbXNJbnZhbGlkS2V5VXNhZ2VFcnJvcixcbiAgS21zSW52YWxpZFN0YXRlRXJyb3IsXG4gIEttc05vdEZvdW5kRXJyb3IsXG4gIEttc09wdEluUmVxdWlyZWRFcnJvcixcbiAgS21zVGhyb3R0bGVkRXJyb3IsXG4gIE1lc3NhZ2VOb3RJbmZsaWdodEVycm9yLFxuICBPdmVyTGltaXRFcnJvcixcbiAgUHVyZ2VRdWV1ZUluUHJvZ3Jlc3NFcnJvcixcbiAgUXVldWVEZWxldGVkUmVjZW50bHlFcnJvcixcbiAgUXVldWVEb2VzTm90RXhpc3RFcnJvcixcbiAgUXVldWVOYW1lRXhpc3RzRXJyb3IsXG4gIFJlY2VpcHRIYW5kbGVJc0ludmFsaWRFcnJvcixcbiAgUmVxdWVzdFRocm90dGxlZEVycm9yLFxuICBSZXNvdXJjZU5vdEZvdW5kRXJyb3IsXG4gIFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvcixcbiAgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBTUVNDbGllbnRJbnN0YW5jZSwgU1FTQ2xpZW50SW5zdGFuY2VMYXllciB9IGZyb20gXCIuL1NRU0NsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0U1FTQ2xpZW50Q29uZmlnTGF5ZXIgfSBmcm9tIFwiLi9TUVNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZCxcbiAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmQsXG4gIENyZWF0ZVF1ZXVlQ29tbWFuZCxcbiAgRGVsZXRlTWVzc2FnZUNvbW1hbmQsXG4gIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIERlbGV0ZVF1ZXVlQ29tbWFuZCxcbiAgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0UXVldWVVcmxDb21tYW5kLFxuICBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmQsXG4gIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZCxcbiAgTGlzdFF1ZXVlc0NvbW1hbmQsXG4gIExpc3RRdWV1ZVRhZ3NDb21tYW5kLFxuICBQdXJnZVF1ZXVlQ29tbWFuZCxcbiAgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kLFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgU2VuZE1lc3NhZ2VDb21tYW5kLFxuICBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZCxcbiAgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kLFxuICBUYWdRdWV1ZUNvbW1hbmQsXG4gIFVudGFnUXVldWVDb21tYW5kLFxufTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTUVNTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWRkUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICBhZGRQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmR9XG4gICAqL1xuICBjYW5jZWxNZXNzYWdlTW92ZVRhc2soXG4gICAgYXJnczogQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDYW5jZWxNZXNzYWdlTW92ZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmR9XG4gICAqL1xuICBjaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eShcbiAgICBhcmdzOiBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBNZXNzYWdlTm90SW5mbGlnaHRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVjZWlwdEhhbmRsZUlzSW52YWxpZEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmR9XG4gICAqL1xuICBjaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUJhdGNoKFxuICAgIGFyZ3M6IENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVRdWV1ZShcbiAgICBhcmdzOiBDcmVhdGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlUXVldWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVOYW1lRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVWYWx1ZUVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEZWxldGVkUmVjZW50bHlFcnJvclxuICAgIHwgUXVldWVOYW1lRXhpc3RzRXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZU1lc3NhZ2UoXG4gICAgYXJnczogRGVsZXRlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZElkRm9ybWF0RXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZWNlaXB0SGFuZGxlSXNJbnZhbGlkRXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNZXNzYWdlQmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlTWVzc2FnZUJhdGNoKFxuICAgIGFyZ3M6IERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgRW1wdHlCYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUXVldWVDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlUXVldWUoXG4gICAgYXJnczogRGVsZXRlUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRRdWV1ZUF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVOYW1lRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UXVldWVVcmxDb21tYW5kfVxuICAgKi9cbiAgZ2V0UXVldWVVcmwoXG4gICAgYXJnczogR2V0UXVldWVVcmxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFF1ZXVlVXJsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3REZWFkTGV0dGVyU291cmNlUXVldWVzKFxuICAgIGFyZ3M6IExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TWVzc2FnZU1vdmVUYXNrcyhcbiAgICBhcmdzOiBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdE1lc3NhZ2VNb3ZlVGFza3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UXVldWVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RRdWV1ZXMoXG4gICAgYXJnczogTGlzdFF1ZXVlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UXVldWVUYWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RRdWV1ZVRhZ3MoXG4gICAgYXJnczogTGlzdFF1ZXVlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFF1ZXVlVGFnc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXJnZVF1ZXVlQ29tbWFuZH1cbiAgICovXG4gIHB1cmdlUXVldWUoXG4gICAgYXJnczogUHVyZ2VRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVyZ2VRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFB1cmdlUXVldWVJblByb2dyZXNzRXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWNlaXZlTWVzc2FnZUNvbW1hbmR9XG4gICAqL1xuICByZWNlaXZlTWVzc2FnZShcbiAgICBhcmdzOiBSZWNlaXZlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVtb3ZlUGVybWlzc2lvbihcbiAgICBhcmdzOiBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlbmRNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIHNlbmRNZXNzYWdlKFxuICAgIGFyZ3M6IFNlbmRNZXNzYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZW5kTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZE1lc3NhZ2VDb250ZW50c0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgS21zQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEttc0Rpc2FibGVkRXJyb3JcbiAgICB8IEttc0ludmFsaWRLZXlVc2FnZUVycm9yXG4gICAgfCBLbXNJbnZhbGlkU3RhdGVFcnJvclxuICAgIHwgS21zTm90Rm91bmRFcnJvclxuICAgIHwgS21zT3B0SW5SZXF1aXJlZEVycm9yXG4gICAgfCBLbXNUaHJvdHRsZWRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgc2VuZE1lc3NhZ2VCYXRjaChcbiAgICBhcmdzOiBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0UXVldWVBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlVmFsdWVFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE92ZXJMaW1pdEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kfVxuICAgKi9cbiAgc3RhcnRNZXNzYWdlTW92ZVRhc2soXG4gICAgYXJnczogU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUXVldWVDb21tYW5kfVxuICAgKi9cbiAgdGFnUXVldWUoXG4gICAgYXJnczogVGFnUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVudGFnUXVldWVDb21tYW5kfVxuICAgKi9cbiAgdW50YWdRdWV1ZShcbiAgICBhcmdzOiBVbnRhZ1F1ZXVlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVbnRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgU1FTU2VydmljZSA9IENvbnRleHQuR2VuZXJpY1RhZzxTUVNTZXJ2aWNlPihcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtc3FzL1NRU1NlcnZpY2VcIixcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlU1FTU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKFNRU0NsaWVudEluc3RhbmNlKTtcblxuICByZXR1cm4gUmVjb3JkLnRvRW50cmllcyhjb21tYW5kcykucmVkdWNlKChhY2MsIFtjb21tYW5kXSkgPT4ge1xuICAgIGNvbnN0IENvbW1hbmRDdG9yID0gY29tbWFuZHNbY29tbWFuZF0gYXMgYW55O1xuICAgIGNvbnN0IG1ldGhvZEltcGwgPSAoYXJnczogYW55LCBvcHRpb25zOiBhbnkpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKCkgPT4gY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCBvcHRpb25zID8/IHt9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBTUVNTZXJ2aWNlRXhjZXB0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBTZXJ2aWNlRXhjZXB0aW9uID0gRGF0YS50YWdnZWQ8XG4gICAgICAgICAgICAgIFRhZ2dlZEV4Y2VwdGlvbjxTUVNTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBTUVNTZXJ2aWNlO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU1FTU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFNRU1NlcnZpY2UsIG1ha2VTUVNTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFNRU1NlcnZpY2VMYXllciA9IEJhc2VTUVNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShTUVNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U1FTU2VydmljZUxheWVyID0gU1FTU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdFNRU0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1FTU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TUVNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0gsb0RBdUU2QjtBQUM3QixtQ0FBcUQ7QUFDckQscUNBZ0NrQjtBQUNsQiwyREFBZ0Y7QUFDaEYsdUVBQXdFO0FBVXhFLE1BQU0sUUFBUSxHQUFHO0lBQ2Ysb0JBQW9CLEVBQXBCLGlDQUFvQjtJQUNwQiw0QkFBNEIsRUFBNUIseUNBQTRCO0lBQzVCLDhCQUE4QixFQUE5QiwyQ0FBOEI7SUFDOUIsbUNBQW1DLEVBQW5DLGdEQUFtQztJQUNuQyxrQkFBa0IsRUFBbEIsK0JBQWtCO0lBQ2xCLG9CQUFvQixFQUFwQixpQ0FBb0I7SUFDcEIseUJBQXlCLEVBQXpCLHNDQUF5QjtJQUN6QixrQkFBa0IsRUFBbEIsK0JBQWtCO0lBQ2xCLHlCQUF5QixFQUF6QixzQ0FBeUI7SUFDekIsa0JBQWtCLEVBQWxCLCtCQUFrQjtJQUNsQixpQ0FBaUMsRUFBakMsOENBQWlDO0lBQ2pDLDJCQUEyQixFQUEzQix3Q0FBMkI7SUFDM0IsaUJBQWlCLEVBQWpCLDhCQUFpQjtJQUNqQixvQkFBb0IsRUFBcEIsaUNBQW9CO0lBQ3BCLGlCQUFpQixFQUFqQiw4QkFBaUI7SUFDakIscUJBQXFCLEVBQXJCLGtDQUFxQjtJQUNyQix1QkFBdUIsRUFBdkIsb0NBQXVCO0lBQ3ZCLGtCQUFrQixFQUFsQiwrQkFBa0I7SUFDbEIsdUJBQXVCLEVBQXZCLG9DQUF1QjtJQUN2Qix5QkFBeUIsRUFBekIsc0NBQXlCO0lBQ3pCLDJCQUEyQixFQUEzQix3Q0FBMkI7SUFDM0IsZUFBZSxFQUFmLDRCQUFlO0lBQ2YsaUJBQWlCLEVBQWpCLDhCQUFpQjtDQUNsQixDQUFDO0FBc2FGOzs7R0FHRztBQUNILE1BQWEsVUFBVyxTQUFRLGVBQU0sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLENBQUMsRUFHNUU7Q0FBRztBQUhOLGdDQUdNO0FBRU47OztHQUdHO0FBQ1UsUUFBQSxjQUFjLEdBQUcsZUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ25ELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxxQ0FBaUIsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sZUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO1FBQzFELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQVEsQ0FBQztRQUM3QyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQVMsRUFBRSxPQUE0QixFQUFFLEVBQUUsQ0FDN0QsZUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNoQixHQUFHLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNqQyxHQUFHLENBQUMsT0FBTyxhQUFQLE9BQU8sY0FBUCxPQUFPLEdBQUksRUFBRSxDQUFDO2dCQUNsQixXQUFXO2FBQ1osQ0FBQztZQUNKLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNYLElBQ0UsQ0FBQyxZQUFZLGdDQUFtQjtvQkFDaEMseUJBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDakMsQ0FBQztvQkFDRCxNQUFNLGdCQUFnQixHQUFHLGFBQUksQ0FBQyxNQUFNLENBRWxDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFFVixPQUFPLGdCQUFnQixDQUFDO3dCQUN0QixHQUFHLENBQUM7d0JBQ0osT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO3dCQUNsQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7cUJBQ2YsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLFlBQVksS0FBSyxFQUFFLENBQUM7b0JBQ3ZCLE9BQU8sSUFBQSxpQkFBUSxFQUFDO3dCQUNkLEdBQUcsQ0FBQzt3QkFDSixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO3dCQUNsQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7cUJBQ2YsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsTUFBTSxDQUFDLENBQUM7WUFDVixDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBQ0wsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDdEUsVUFBVSxFQUNWLEVBQUUsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDOUMsQ0FBQyxFQUFFLEVBQUUsQ0FBZ0IsQ0FBQztBQUN4QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNVLFFBQUEsbUJBQW1CLEdBQUcsY0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsc0JBQWMsQ0FBQyxDQUFDO0FBRTVFOzs7R0FHRztBQUNVLFFBQUEsZUFBZSxHQUFHLDJCQUFtQixDQUFDLElBQUksQ0FDckQsY0FBSyxDQUFDLE9BQU8sQ0FBQywwQ0FBc0IsQ0FBQyxDQUN0QyxDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBRyx1QkFBZSxDQUFDLElBQUksQ0FDeEQsY0FBSyxDQUFDLE9BQU8sQ0FBQyxxREFBMkIsQ0FBQyxDQUMzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgU1FTU2VydmljZUV4Y2VwdGlvbixcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIHR5cGUgQWRkUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBBZGRQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZCxcbiAgdHlwZSBDYW5jZWxNZXNzYWdlTW92ZVRhc2tDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZE91dHB1dCxcbiAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlDb21tYW5kLFxuICB0eXBlIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZElucHV0LFxuICB0eXBlIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZE91dHB1dCxcbiAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmQsXG4gIHR5cGUgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlUXVldWVDb21tYW5kLFxuICB0eXBlIENyZWF0ZVF1ZXVlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlTWVzc2FnZUNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVNZXNzYWdlQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVNZXNzYWdlQmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlUXVldWVDb21tYW5kLFxuICB0eXBlIERlbGV0ZVF1ZXVlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBHZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0UXVldWVVcmxDb21tYW5kLFxuICB0eXBlIEdldFF1ZXVlVXJsQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFF1ZXVlVXJsQ29tbWFuZE91dHB1dCxcbiAgTGlzdERlYWRMZXR0ZXJTb3VyY2VRdWV1ZXNDb21tYW5kLFxuICB0eXBlIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZE91dHB1dCxcbiAgTGlzdE1lc3NhZ2VNb3ZlVGFza3NDb21tYW5kLFxuICB0eXBlIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZE91dHB1dCxcbiAgTGlzdFF1ZXVlc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFF1ZXVlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0UXVldWVzQ29tbWFuZE91dHB1dCxcbiAgTGlzdFF1ZXVlVGFnc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFF1ZXVlVGFnc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0UXVldWVUYWdzQ29tbWFuZE91dHB1dCxcbiAgUHVyZ2VRdWV1ZUNvbW1hbmQsXG4gIHR5cGUgUHVyZ2VRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXJnZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kLFxuICB0eXBlIFJlY2VpdmVNZXNzYWdlQ29tbWFuZElucHV0LFxuICB0eXBlIFJlY2VpdmVNZXNzYWdlQ29tbWFuZE91dHB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmQsXG4gIHR5cGUgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgU2VuZE1lc3NhZ2VDb21tYW5kLFxuICB0eXBlIFNlbmRNZXNzYWdlQ29tbWFuZElucHV0LFxuICB0eXBlIFNlbmRNZXNzYWdlQ29tbWFuZE91dHB1dCxcbiAgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIHR5cGUgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmRJbnB1dCxcbiAgdHlwZSBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBTZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kLFxuICB0eXBlIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZE91dHB1dCxcbiAgVGFnUXVldWVDb21tYW5kLFxuICB0eXBlIFRhZ1F1ZXVlQ29tbWFuZElucHV0LFxuICB0eXBlIFRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgVW50YWdRdWV1ZUNvbW1hbmQsXG4gIHR5cGUgVW50YWdRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBVbnRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zcXNcIjtcbmltcG9ydCB7IERhdGEsIEVmZmVjdCwgTGF5ZXIsIFJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIEFsbFNlcnZpY2VFcnJvcnMsXG4gIEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yLFxuICBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3IsXG4gIEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3IsXG4gIEludmFsaWRBZGRyZXNzRXJyb3IsXG4gIEludmFsaWRBdHRyaWJ1dGVOYW1lRXJyb3IsXG4gIEludmFsaWRBdHRyaWJ1dGVWYWx1ZUVycm9yLFxuICBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3IsXG4gIEludmFsaWRJZEZvcm1hdEVycm9yLFxuICBJbnZhbGlkTWVzc2FnZUNvbnRlbnRzRXJyb3IsXG4gIEludmFsaWRTZWN1cml0eUVycm9yLFxuICBLbXNBY2Nlc3NEZW5pZWRFcnJvcixcbiAgS21zRGlzYWJsZWRFcnJvcixcbiAgS21zSW52YWxpZEtleVVzYWdlRXJyb3IsXG4gIEttc0ludmFsaWRTdGF0ZUVycm9yLFxuICBLbXNOb3RGb3VuZEVycm9yLFxuICBLbXNPcHRJblJlcXVpcmVkRXJyb3IsXG4gIEttc1Rocm90dGxlZEVycm9yLFxuICBNZXNzYWdlTm90SW5mbGlnaHRFcnJvcixcbiAgT3ZlckxpbWl0RXJyb3IsXG4gIFB1cmdlUXVldWVJblByb2dyZXNzRXJyb3IsXG4gIFF1ZXVlRGVsZXRlZFJlY2VudGx5RXJyb3IsXG4gIFF1ZXVlRG9lc05vdEV4aXN0RXJyb3IsXG4gIFF1ZXVlTmFtZUV4aXN0c0Vycm9yLFxuICBSZWNlaXB0SGFuZGxlSXNJbnZhbGlkRXJyb3IsXG4gIFJlcXVlc3RUaHJvdHRsZWRFcnJvcixcbiAgUmVzb3VyY2VOb3RGb3VuZEVycm9yLFxuICBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3IsXG4gIFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IsXG4gIFNka0Vycm9yLFxuICBUYWdnZWRFeGNlcHRpb24sXG59IGZyb20gXCIuL0Vycm9yc1wiO1xuaW1wb3J0IHsgU1FTQ2xpZW50SW5zdGFuY2UsIFNRU0NsaWVudEluc3RhbmNlTGF5ZXIgfSBmcm9tIFwiLi9TUVNDbGllbnRJbnN0YW5jZVwiO1xuaW1wb3J0IHsgRGVmYXVsdFNRU0NsaWVudENvbmZpZ0xheWVyIH0gZnJvbSBcIi4vU1FTQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuaW50ZXJmYWNlIEh0dHBIYW5kbGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSB0aW1lIGluIG1pbGxpc2Vjb25kcyB0aGF0IHRoZSBjb25uZWN0aW9uIHBoYXNlIG9mIGEgcmVxdWVzdFxuICAgKiBtYXkgdGFrZSBiZWZvcmUgdGhlIGNvbm5lY3Rpb24gYXR0ZW1wdCBpcyBhYmFuZG9uZWQuXG4gICAqL1xuICByZXF1ZXN0VGltZW91dD86IG51bWJlcjtcbn1cblxuY29uc3QgY29tbWFuZHMgPSB7XG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICBDYW5jZWxNZXNzYWdlTW92ZVRhc2tDb21tYW5kLFxuICBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kLFxuICBDcmVhdGVRdWV1ZUNvbW1hbmQsXG4gIERlbGV0ZU1lc3NhZ2VDb21tYW5kLFxuICBEZWxldGVNZXNzYWdlQmF0Y2hDb21tYW5kLFxuICBEZWxldGVRdWV1ZUNvbW1hbmQsXG4gIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFF1ZXVlVXJsQ29tbWFuZCxcbiAgTGlzdERlYWRMZXR0ZXJTb3VyY2VRdWV1ZXNDb21tYW5kLFxuICBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmQsXG4gIExpc3RRdWV1ZXNDb21tYW5kLFxuICBMaXN0UXVldWVUYWdzQ29tbWFuZCxcbiAgUHVyZ2VRdWV1ZUNvbW1hbmQsXG4gIFJlY2VpdmVNZXNzYWdlQ29tbWFuZCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmQsXG4gIFNlbmRNZXNzYWdlQ29tbWFuZCxcbiAgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZCxcbiAgVGFnUXVldWVDb21tYW5kLFxuICBVbnRhZ1F1ZXVlQ29tbWFuZCxcbn07XG5cbmludGVyZmFjZSBTUVNTZXJ2aWNlJCB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFkZFBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgYWRkUGVybWlzc2lvbihcbiAgICBhcmdzOiBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE92ZXJMaW1pdEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZH1cbiAgICovXG4gIGNhbmNlbE1lc3NhZ2VNb3ZlVGFzayhcbiAgICBhcmdzOiBDYW5jZWxNZXNzYWdlTW92ZVRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDYW5jZWxNZXNzYWdlTW92ZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmR9XG4gICAqL1xuICBjaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eShcbiAgICBhcmdzOiBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTWVzc2FnZU5vdEluZmxpZ2h0RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlY2VpcHRIYW5kbGVJc0ludmFsaWRFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgY2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaChcbiAgICBhcmdzOiBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3JcbiAgICB8IEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRCYXRjaEVudHJ5SWRFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVF1ZXVlQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVF1ZXVlKFxuICAgIGFyZ3M6IENyZWF0ZVF1ZXVlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlUXVldWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVOYW1lRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVWYWx1ZUVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEZWxldGVkUmVjZW50bHlFcnJvclxuICAgIHwgUXVldWVOYW1lRXhpc3RzRXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZU1lc3NhZ2UoXG4gICAgYXJnczogRGVsZXRlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZU1lc3NhZ2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRJZEZvcm1hdEVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVjZWlwdEhhbmRsZUlzSW52YWxpZEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZU1lc3NhZ2VCYXRjaChcbiAgICBhcmdzOiBEZWxldGVNZXNzYWdlQmF0Y2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVNZXNzYWdlQmF0Y2hDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVRdWV1ZShcbiAgICBhcmdzOiBEZWxldGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRRdWV1ZUF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFF1ZXVlVXJsQ29tbWFuZH1cbiAgICovXG4gIGdldFF1ZXVlVXJsKFxuICAgIGFyZ3M6IEdldFF1ZXVlVXJsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0UXVldWVVcmxDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdERlYWRMZXR0ZXJTb3VyY2VRdWV1ZXNDb21tYW5kfVxuICAgKi9cbiAgbGlzdERlYWRMZXR0ZXJTb3VyY2VRdWV1ZXMoXG4gICAgYXJnczogTGlzdERlYWRMZXR0ZXJTb3VyY2VRdWV1ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TWVzc2FnZU1vdmVUYXNrcyhcbiAgICBhcmdzOiBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFF1ZXVlc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0UXVldWVzKFxuICAgIGFyZ3M6IExpc3RRdWV1ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0UXVldWVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RRdWV1ZVRhZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFF1ZXVlVGFncyhcbiAgICBhcmdzOiBMaXN0UXVldWVUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFF1ZXVlVGFnc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXJnZVF1ZXVlQ29tbWFuZH1cbiAgICovXG4gIHB1cmdlUXVldWUoXG4gICAgYXJnczogUHVyZ2VRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1cmdlUXVldWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBQdXJnZVF1ZXVlSW5Qcm9ncmVzc0Vycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kfVxuICAgKi9cbiAgcmVjZWl2ZU1lc3NhZ2UoXG4gICAgYXJnczogUmVjZWl2ZU1lc3NhZ2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBSZWNlaXZlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEttc0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLbXNEaXNhYmxlZEVycm9yXG4gICAgfCBLbXNJbnZhbGlkS2V5VXNhZ2VFcnJvclxuICAgIHwgS21zSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEttc05vdEZvdW5kRXJyb3JcbiAgICB8IEttc09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS21zVGhyb3R0bGVkRXJyb3JcbiAgICB8IE92ZXJMaW1pdEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZW1vdmVQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlbmRNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIHNlbmRNZXNzYWdlKFxuICAgIGFyZ3M6IFNlbmRNZXNzYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2VuZE1lc3NhZ2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRNZXNzYWdlQ29udGVudHNFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEttc0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLbXNEaXNhYmxlZEVycm9yXG4gICAgfCBLbXNJbnZhbGlkS2V5VXNhZ2VFcnJvclxuICAgIHwgS21zSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEttc05vdEZvdW5kRXJyb3JcbiAgICB8IEttc09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS21zVGhyb3R0bGVkRXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZH1cbiAgICovXG4gIHNlbmRNZXNzYWdlQmF0Y2goXG4gICAgYXJnczogU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3JcbiAgICB8IEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRCYXRjaEVudHJ5SWRFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEttc0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLbXNEaXNhYmxlZEVycm9yXG4gICAgfCBLbXNJbnZhbGlkS2V5VXNhZ2VFcnJvclxuICAgIHwgS21zSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEttc05vdEZvdW5kRXJyb3JcbiAgICB8IEttc09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS21zVGhyb3R0bGVkRXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRRdWV1ZUF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlVmFsdWVFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE92ZXJMaW1pdEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kfVxuICAgKi9cbiAgc3RhcnRNZXNzYWdlTW92ZVRhc2soXG4gICAgYXJnczogU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFRhZ1F1ZXVlQ29tbWFuZH1cbiAgICovXG4gIHRhZ1F1ZXVlKFxuICAgIGFyZ3M6IFRhZ1F1ZXVlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVGFnUXVldWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW50YWdRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICB1bnRhZ1F1ZXVlKFxuICAgIGFyZ3M6IFVudGFnUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVbnRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBjbGFzcyBTUVNTZXJ2aWNlIGV4dGVuZHMgRWZmZWN0LlRhZyhcIkBlZmZlY3QtYXdzL2NsaWVudC1zcXMvU1FTU2VydmljZVwiKTxcbiAgU1FTU2VydmljZSxcbiAgU1FTU2VydmljZSRcbj4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVNRU1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhTUVNDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKGFyZ3M6IGFueSwgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucykgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgdHJ5OiAoYWJvcnRTaWduYWwpID0+XG4gICAgICAgICAgY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCB7XG4gICAgICAgICAgICAuLi4ob3B0aW9ucyA/PyB7fSksXG4gICAgICAgICAgICBhYm9ydFNpZ25hbCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZSBpbnN0YW5jZW9mIFNRU1NlcnZpY2VFeGNlcHRpb24gJiZcbiAgICAgICAgICAgIEFsbFNlcnZpY2VFcnJvcnMuaW5jbHVkZXMoZS5uYW1lKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248U1FTU2VydmljZUV4Y2VwdGlvbj5cbiAgICAgICAgICAgID4oZS5uYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIFNlcnZpY2VFeGNlcHRpb24oe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgU1FTU2VydmljZSQ7XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VTUVNTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoU1FTU2VydmljZSwgbWFrZVNRU1NlcnZpY2UpO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgU1FTU2VydmljZUxheWVyID0gQmFzZVNRU1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKFNRU0NsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTUVNTZXJ2aWNlTGF5ZXIgPSBTUVNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0U1FTQ2xpZW50Q29uZmlnTGF5ZXIpLFxuKTtcbiJdfQ==
|
package/lib/esm/Errors.js
CHANGED
|
@@ -1,3 +1,33 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Data } from "effect";
|
|
2
|
+
export const AllServiceErrors = [
|
|
3
|
+
"BatchEntryIdsNotDistinct",
|
|
4
|
+
"BatchRequestTooLong",
|
|
5
|
+
"EmptyBatchRequest",
|
|
6
|
+
"InvalidAddress",
|
|
7
|
+
"InvalidAttributeName",
|
|
8
|
+
"InvalidAttributeValue",
|
|
9
|
+
"InvalidBatchEntryId",
|
|
10
|
+
"InvalidIdFormat",
|
|
11
|
+
"InvalidMessageContents",
|
|
12
|
+
"InvalidSecurity",
|
|
13
|
+
"KmsAccessDenied",
|
|
14
|
+
"KmsDisabled",
|
|
15
|
+
"KmsInvalidKeyUsage",
|
|
16
|
+
"KmsInvalidState",
|
|
17
|
+
"KmsNotFound",
|
|
18
|
+
"KmsOptInRequired",
|
|
19
|
+
"KmsThrottled",
|
|
20
|
+
"MessageNotInflight",
|
|
21
|
+
"OverLimit",
|
|
22
|
+
"PurgeQueueInProgress",
|
|
23
|
+
"QueueDeletedRecently",
|
|
24
|
+
"QueueDoesNotExist",
|
|
25
|
+
"QueueNameExists",
|
|
26
|
+
"ReceiptHandleIsInvalid",
|
|
27
|
+
"RequestThrottled",
|
|
28
|
+
"ResourceNotFoundException",
|
|
29
|
+
"TooManyEntriesInBatchRequest",
|
|
30
|
+
"UnsupportedOperation",
|
|
31
|
+
];
|
|
2
32
|
export const SdkError = Data.tagged("SdkError");
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QkEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUU5QixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5QiwwQkFBMEI7SUFDMUIscUJBQXFCO0lBQ3JCLG1CQUFtQjtJQUNuQixnQkFBZ0I7SUFDaEIsc0JBQXNCO0lBQ3RCLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsaUJBQWlCO0lBQ2pCLHdCQUF3QjtJQUN4QixpQkFBaUI7SUFDakIsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYixvQkFBb0I7SUFDcEIsaUJBQWlCO0lBQ2pCLGFBQWE7SUFDYixrQkFBa0I7SUFDbEIsY0FBYztJQUNkLG9CQUFvQjtJQUNwQixXQUFXO0lBQ1gsc0JBQXNCO0lBQ3RCLHNCQUFzQjtJQUN0QixtQkFBbUI7SUFDbkIsaUJBQWlCO0lBQ2pCLHdCQUF3QjtJQUN4QixrQkFBa0I7SUFDbEIsMkJBQTJCO0lBQzNCLDhCQUE4QjtJQUM5QixzQkFBc0I7Q0FDdkIsQ0FBQztBQXdDRixNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0LFxuICBCYXRjaFJlcXVlc3RUb29Mb25nLFxuICBFbXB0eUJhdGNoUmVxdWVzdCxcbiAgSW52YWxpZEFkZHJlc3MsXG4gIEludmFsaWRBdHRyaWJ1dGVOYW1lLFxuICBJbnZhbGlkQXR0cmlidXRlVmFsdWUsXG4gIEludmFsaWRCYXRjaEVudHJ5SWQsXG4gIEludmFsaWRJZEZvcm1hdCxcbiAgSW52YWxpZE1lc3NhZ2VDb250ZW50cyxcbiAgSW52YWxpZFNlY3VyaXR5LFxuICBLbXNBY2Nlc3NEZW5pZWQsXG4gIEttc0Rpc2FibGVkLFxuICBLbXNJbnZhbGlkS2V5VXNhZ2UsXG4gIEttc0ludmFsaWRTdGF0ZSxcbiAgS21zTm90Rm91bmQsXG4gIEttc09wdEluUmVxdWlyZWQsXG4gIEttc1Rocm90dGxlZCxcbiAgTWVzc2FnZU5vdEluZmxpZ2h0LFxuICBPdmVyTGltaXQsXG4gIFB1cmdlUXVldWVJblByb2dyZXNzLFxuICBRdWV1ZURlbGV0ZWRSZWNlbnRseSxcbiAgUXVldWVEb2VzTm90RXhpc3QsXG4gIFF1ZXVlTmFtZUV4aXN0cyxcbiAgUmVjZWlwdEhhbmRsZUlzSW52YWxpZCxcbiAgUmVxdWVzdFRocm90dGxlZCxcbiAgUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvbixcbiAgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdCxcbiAgVW5zdXBwb3J0ZWRPcGVyYXRpb24sXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc3FzXCI7XG5pbXBvcnQgeyBEYXRhIH0gZnJvbSBcImVmZmVjdFwiO1xuXG5leHBvcnQgY29uc3QgQWxsU2VydmljZUVycm9ycyA9IFtcbiAgXCJCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RcIixcbiAgXCJCYXRjaFJlcXVlc3RUb29Mb25nXCIsXG4gIFwiRW1wdHlCYXRjaFJlcXVlc3RcIixcbiAgXCJJbnZhbGlkQWRkcmVzc1wiLFxuICBcIkludmFsaWRBdHRyaWJ1dGVOYW1lXCIsXG4gIFwiSW52YWxpZEF0dHJpYnV0ZVZhbHVlXCIsXG4gIFwiSW52YWxpZEJhdGNoRW50cnlJZFwiLFxuICBcIkludmFsaWRJZEZvcm1hdFwiLFxuICBcIkludmFsaWRNZXNzYWdlQ29udGVudHNcIixcbiAgXCJJbnZhbGlkU2VjdXJpdHlcIixcbiAgXCJLbXNBY2Nlc3NEZW5pZWRcIixcbiAgXCJLbXNEaXNhYmxlZFwiLFxuICBcIkttc0ludmFsaWRLZXlVc2FnZVwiLFxuICBcIkttc0ludmFsaWRTdGF0ZVwiLFxuICBcIkttc05vdEZvdW5kXCIsXG4gIFwiS21zT3B0SW5SZXF1aXJlZFwiLFxuICBcIkttc1Rocm90dGxlZFwiLFxuICBcIk1lc3NhZ2VOb3RJbmZsaWdodFwiLFxuICBcIk92ZXJMaW1pdFwiLFxuICBcIlB1cmdlUXVldWVJblByb2dyZXNzXCIsXG4gIFwiUXVldWVEZWxldGVkUmVjZW50bHlcIixcbiAgXCJRdWV1ZURvZXNOb3RFeGlzdFwiLFxuICBcIlF1ZXVlTmFtZUV4aXN0c1wiLFxuICBcIlJlY2VpcHRIYW5kbGVJc0ludmFsaWRcIixcbiAgXCJSZXF1ZXN0VGhyb3R0bGVkXCIsXG4gIFwiUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvblwiLFxuICBcIlRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RcIixcbiAgXCJVbnN1cHBvcnRlZE9wZXJhdGlvblwiLFxuXTtcblxuZXhwb3J0IHR5cGUgVGFnZ2VkRXhjZXB0aW9uPFQgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9PiA9IFQgJiB7XG4gIHJlYWRvbmx5IF90YWc6IFRbXCJuYW1lXCJdO1xufTtcblxuZXhwb3J0IHR5cGUgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248QmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0PjtcbmV4cG9ydCB0eXBlIEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxCYXRjaFJlcXVlc3RUb29Mb25nPjtcbmV4cG9ydCB0eXBlIEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248RW1wdHlCYXRjaFJlcXVlc3Q+O1xuZXhwb3J0IHR5cGUgSW52YWxpZEFkZHJlc3NFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkQWRkcmVzcz47XG5leHBvcnQgdHlwZSBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRBdHRyaWJ1dGVOYW1lPjtcbmV4cG9ydCB0eXBlIEludmFsaWRBdHRyaWJ1dGVWYWx1ZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRBdHRyaWJ1dGVWYWx1ZT47XG5leHBvcnQgdHlwZSBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZEJhdGNoRW50cnlJZD47XG5leHBvcnQgdHlwZSBJbnZhbGlkSWRGb3JtYXRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkSWRGb3JtYXQ+O1xuZXhwb3J0IHR5cGUgSW52YWxpZE1lc3NhZ2VDb250ZW50c0Vycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRNZXNzYWdlQ29udGVudHM+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFNlY3VyaXR5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFNlY3VyaXR5PjtcbmV4cG9ydCB0eXBlIEttc0FjY2Vzc0RlbmllZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEttc0FjY2Vzc0RlbmllZD47XG5leHBvcnQgdHlwZSBLbXNEaXNhYmxlZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEttc0Rpc2FibGVkPjtcbmV4cG9ydCB0eXBlIEttc0ludmFsaWRLZXlVc2FnZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEttc0ludmFsaWRLZXlVc2FnZT47XG5leHBvcnQgdHlwZSBLbXNJbnZhbGlkU3RhdGVFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLbXNJbnZhbGlkU3RhdGU+O1xuZXhwb3J0IHR5cGUgS21zTm90Rm91bmRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLbXNOb3RGb3VuZD47XG5leHBvcnQgdHlwZSBLbXNPcHRJblJlcXVpcmVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248S21zT3B0SW5SZXF1aXJlZD47XG5leHBvcnQgdHlwZSBLbXNUaHJvdHRsZWRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLbXNUaHJvdHRsZWQ+O1xuZXhwb3J0IHR5cGUgTWVzc2FnZU5vdEluZmxpZ2h0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248TWVzc2FnZU5vdEluZmxpZ2h0PjtcbmV4cG9ydCB0eXBlIE92ZXJMaW1pdEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPE92ZXJMaW1pdD47XG5leHBvcnQgdHlwZSBQdXJnZVF1ZXVlSW5Qcm9ncmVzc0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFB1cmdlUXVldWVJblByb2dyZXNzPjtcbmV4cG9ydCB0eXBlIFF1ZXVlRGVsZXRlZFJlY2VudGx5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248UXVldWVEZWxldGVkUmVjZW50bHk+O1xuZXhwb3J0IHR5cGUgUXVldWVEb2VzTm90RXhpc3RFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxRdWV1ZURvZXNOb3RFeGlzdD47XG5leHBvcnQgdHlwZSBRdWV1ZU5hbWVFeGlzdHNFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxRdWV1ZU5hbWVFeGlzdHM+O1xuZXhwb3J0IHR5cGUgUmVjZWlwdEhhbmRsZUlzSW52YWxpZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFJlY2VpcHRIYW5kbGVJc0ludmFsaWQ+O1xuZXhwb3J0IHR5cGUgUmVxdWVzdFRocm90dGxlZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFJlcXVlc3RUaHJvdHRsZWQ+O1xuZXhwb3J0IHR5cGUgUmVzb3VyY2VOb3RGb3VuZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFJlc291cmNlTm90Rm91bmRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3Q+O1xuZXhwb3J0IHR5cGUgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxVbnN1cHBvcnRlZE9wZXJhdGlvbj47XG5cbmV4cG9ydCB0eXBlIFNka0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEVycm9yICYgeyBuYW1lOiBcIlNka0Vycm9yXCIgfT47XG5leHBvcnQgY29uc3QgU2RrRXJyb3IgPSBEYXRhLnRhZ2dlZDxTZGtFcnJvcj4oXCJTZGtFcnJvclwiKTtcbiJdfQ==
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Layer from "effect/Layer";
|
|
4
|
-
import * as Runtime from "effect/Runtime";
|
|
1
|
+
import { Context, Effect, Layer, Runtime } from "effect";
|
|
5
2
|
/**
|
|
6
3
|
* @since 1.0.0
|
|
7
4
|
* @category tags
|
|
@@ -40,4 +37,4 @@ export const makeDefaultSQSClientInstanceConfig = Effect.gen(function* (_) {
|
|
|
40
37
|
* @category layers
|
|
41
38
|
*/
|
|
42
39
|
export const DefaultSQSClientConfigLayer = Layer.effect(SQSClientInstanceConfig, makeDefaultSQSClientInstanceConfig);
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1FTQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU1FTQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUV6RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDdEQsZ0RBQWdELENBQ2pELEVBQTRDO0NBQUc7QUFFaEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQzdDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNyQixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBUyxDQUFDLENBQUM7SUFDbEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxDQUFDLENBQUM7Z0JBQ0osTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNKLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3JELHVCQUF1QixFQUN2QixrQ0FBa0MsQ0FDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB0eXBlIHsgU1FTQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zcXNcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJ1bnRpbWUgfSBmcm9tIFwiZWZmZWN0XCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY2xhc3MgU1FTQ2xpZW50SW5zdGFuY2VDb25maWcgZXh0ZW5kcyBDb250ZXh0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtc3FzL1NRU0NsaWVudEluc3RhbmNlQ29uZmlnXCIsXG4pPFNRU0NsaWVudEluc3RhbmNlQ29uZmlnLCBTUVNDbGllbnRDb25maWc+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VEZWZhdWx0U1FTQ2xpZW50SW5zdGFuY2VDb25maWc6IEVmZmVjdC5FZmZlY3Q8U1FTQ2xpZW50Q29uZmlnPiA9XG4gIEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gICAgY29uc3QgcnVudGltZSA9IHlpZWxkKiBfKEVmZmVjdC5ydW50aW1lPG5ldmVyPigpKTtcbiAgICBjb25zdCBydW5TeW5jID0gUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvZ2dlcjoge1xuICAgICAgICBpbmZvKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nSW5mbyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB3YXJuKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nV2FybmluZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0Vycm9yKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGRlYnVnKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRGVidWcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHJhY2UobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dUcmFjZShtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTUVNDbGllbnRDb25maWdMYXllciA9IExheWVyLmVmZmVjdChcbiAgU1FTQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIG1ha2VEZWZhdWx0U1FTQ2xpZW50SW5zdGFuY2VDb25maWcsXG4pO1xuIl19
|
package/lib/esm/SQSService.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
4
|
import { SQSServiceException, AddPermissionCommand, CancelMessageMoveTaskCommand, ChangeMessageVisibilityCommand, ChangeMessageVisibilityBatchCommand, CreateQueueCommand, DeleteMessageCommand, DeleteMessageBatchCommand, DeleteQueueCommand, GetQueueAttributesCommand, GetQueueUrlCommand, ListDeadLetterSourceQueuesCommand, ListMessageMoveTasksCommand, ListQueuesCommand, ListQueueTagsCommand, PurgeQueueCommand, ReceiveMessageCommand, RemovePermissionCommand, SendMessageCommand, SendMessageBatchCommand, SetQueueAttributesCommand, StartMessageMoveTaskCommand, TagQueueCommand, UntagQueueCommand, } from "@aws-sdk/client-sqs";
|
|
5
|
-
import {
|
|
6
|
-
import { SdkError, } from "./Errors";
|
|
5
|
+
import { Data, Effect, Layer, Record } from "effect";
|
|
6
|
+
import { AllServiceErrors, SdkError, } from "./Errors";
|
|
7
7
|
import { SQSClientInstance, SQSClientInstanceLayer } from "./SQSClientInstance";
|
|
8
8
|
import { DefaultSQSClientConfigLayer } from "./SQSClientInstanceConfig";
|
|
9
9
|
const commands = {
|
|
@@ -33,9 +33,10 @@ const commands = {
|
|
|
33
33
|
};
|
|
34
34
|
/**
|
|
35
35
|
* @since 1.0.0
|
|
36
|
-
* @category
|
|
36
|
+
* @category models
|
|
37
37
|
*/
|
|
38
|
-
export
|
|
38
|
+
export class SQSService extends Effect.Tag("@effect-aws/client-sqs/SQSService")() {
|
|
39
|
+
}
|
|
39
40
|
/**
|
|
40
41
|
* @since 1.0.0
|
|
41
42
|
* @category constructors
|
|
@@ -45,9 +46,13 @@ export const makeSQSService = Effect.gen(function* (_) {
|
|
|
45
46
|
return Record.toEntries(commands).reduce((acc, [command]) => {
|
|
46
47
|
const CommandCtor = commands[command];
|
|
47
48
|
const methodImpl = (args, options) => Effect.tryPromise({
|
|
48
|
-
try: () => client.send(new CommandCtor(args),
|
|
49
|
+
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
50
|
+
...(options !== null && options !== void 0 ? options : {}),
|
|
51
|
+
abortSignal,
|
|
52
|
+
}),
|
|
49
53
|
catch: (e) => {
|
|
50
|
-
if (e instanceof SQSServiceException
|
|
54
|
+
if (e instanceof SQSServiceException &&
|
|
55
|
+
AllServiceErrors.includes(e.name)) {
|
|
51
56
|
const ServiceException = Data.tagged(e.name);
|
|
52
57
|
return ServiceException({
|
|
53
58
|
...e,
|
|
@@ -85,4 +90,4 @@ export const SQSServiceLayer = BaseSQSServiceLayer.pipe(Layer.provide(SQSClientI
|
|
|
85
90
|
* @category layers
|
|
86
91
|
*/
|
|
87
92
|
export const DefaultSQSServiceLayer = SQSServiceLayer.pipe(Layer.provide(DefaultSQSClientConfigLayer));
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1FTU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TUVNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixvQkFBb0IsRUFHcEIsNEJBQTRCLEVBRzVCLDhCQUE4QixFQUc5QixtQ0FBbUMsRUFHbkMsa0JBQWtCLEVBR2xCLG9CQUFvQixFQUdwQix5QkFBeUIsRUFHekIsa0JBQWtCLEVBR2xCLHlCQUF5QixFQUd6QixrQkFBa0IsRUFHbEIsaUNBQWlDLEVBR2pDLDJCQUEyQixFQUczQixpQkFBaUIsRUFHakIsb0JBQW9CLEVBR3BCLGlCQUFpQixFQUdqQixxQkFBcUIsRUFHckIsdUJBQXVCLEVBR3ZCLGtCQUFrQixFQUdsQix1QkFBdUIsRUFHdkIseUJBQXlCLEVBR3pCLDJCQUEyQixFQUczQixlQUFlLEVBR2YsaUJBQWlCLEdBR2xCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDOUQsT0FBTyxFQTZCTCxRQUFRLEdBRVQsTUFBTSxVQUFVLENBQUM7QUFDbEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFeEUsTUFBTSxRQUFRLEdBQUc7SUFDZixvQkFBb0I7SUFDcEIsNEJBQTRCO0lBQzVCLDhCQUE4QjtJQUM5QixtQ0FBbUM7SUFDbkMsa0JBQWtCO0lBQ2xCLG9CQUFvQjtJQUNwQix5QkFBeUI7SUFDekIsa0JBQWtCO0lBQ2xCLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsaUNBQWlDO0lBQ2pDLDJCQUEyQjtJQUMzQixpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLGlCQUFpQjtJQUNqQixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLGtCQUFrQjtJQUNsQix1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLDJCQUEyQjtJQUMzQixlQUFlO0lBQ2YsaUJBQWlCO0NBQ2xCLENBQUM7QUEwYUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQzFDLG1DQUFtQyxDQUNwQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNuRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUUzQyxPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtRQUMxRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFRLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBWSxFQUFFLEVBQUUsQ0FDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNoQixHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLGFBQVAsT0FBTyxjQUFQLE9BQU8sR0FBSSxFQUFFLENBQUM7WUFDNUQsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLFlBQVksbUJBQW1CLEVBQUUsQ0FBQztvQkFDckMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUVsQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBRVYsT0FBTyxnQkFBZ0IsQ0FBQzt3QkFDdEIsR0FBRyxDQUFDO3dCQUNKLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO29CQUN2QixPQUFPLFFBQVEsQ0FBQzt3QkFDZCxHQUFHLENBQUM7d0JBQ0osSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sQ0FBQyxDQUFDO1lBQ1YsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUNMLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBRTVFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIFNRU1NlcnZpY2VFeGNlcHRpb24sXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmQsXG4gIHR5cGUgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRPdXRwdXQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kLFxuICB0eXBlIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVF1ZXVlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1lc3NhZ2VDb21tYW5kLFxuICB0eXBlIERlbGV0ZU1lc3NhZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVF1ZXVlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFF1ZXVlVXJsQ29tbWFuZCxcbiAgdHlwZSBHZXRRdWV1ZVVybENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRRdWV1ZVVybENvbW1hbmRPdXRwdXQsXG4gIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZCxcbiAgdHlwZSBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RRdWV1ZXNDb21tYW5kLFxuICB0eXBlIExpc3RRdWV1ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RRdWV1ZVRhZ3NDb21tYW5kLFxuICB0eXBlIExpc3RRdWV1ZVRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFF1ZXVlVGFnc0NvbW1hbmRPdXRwdXQsXG4gIFB1cmdlUXVldWVDb21tYW5kLFxuICB0eXBlIFB1cmdlUXVldWVDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHVyZ2VRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIFJlY2VpdmVNZXNzYWdlQ29tbWFuZCxcbiAgdHlwZSBSZWNlaXZlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWNlaXZlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFNlbmRNZXNzYWdlQ29tbWFuZCxcbiAgdHlwZSBTZW5kTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBTZW5kTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kLFxuICB0eXBlIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmRPdXRwdXQsXG4gIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZCxcbiAgdHlwZSBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gIFRhZ1F1ZXVlQ29tbWFuZCxcbiAgdHlwZSBUYWdRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBUYWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIFVudGFnUXVldWVDb21tYW5kLFxuICB0eXBlIFVudGFnUXVldWVDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW50YWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc3FzXCI7XG5pbXBvcnQgeyB0eXBlIEh0dHBIYW5kbGVyT3B0aW9ucyBhcyBfX0h0dHBIYW5kbGVyT3B0aW9ucyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgQ29udGV4dCwgRGF0YSwgRWZmZWN0LCBMYXllciwgUmVjb3JkIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHtcbiAgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3IsXG4gIEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvcixcbiAgRW1wdHlCYXRjaFJlcXVlc3RFcnJvcixcbiAgSW52YWxpZEFkZHJlc3NFcnJvcixcbiAgSW52YWxpZEF0dHJpYnV0ZU5hbWVFcnJvcixcbiAgSW52YWxpZEF0dHJpYnV0ZVZhbHVlRXJyb3IsXG4gIEludmFsaWRCYXRjaEVudHJ5SWRFcnJvcixcbiAgSW52YWxpZElkRm9ybWF0RXJyb3IsXG4gIEludmFsaWRNZXNzYWdlQ29udGVudHNFcnJvcixcbiAgSW52YWxpZFNlY3VyaXR5RXJyb3IsXG4gIEttc0FjY2Vzc0RlbmllZEVycm9yLFxuICBLbXNEaXNhYmxlZEVycm9yLFxuICBLbXNJbnZhbGlkS2V5VXNhZ2VFcnJvcixcbiAgS21zSW52YWxpZFN0YXRlRXJyb3IsXG4gIEttc05vdEZvdW5kRXJyb3IsXG4gIEttc09wdEluUmVxdWlyZWRFcnJvcixcbiAgS21zVGhyb3R0bGVkRXJyb3IsXG4gIE1lc3NhZ2VOb3RJbmZsaWdodEVycm9yLFxuICBPdmVyTGltaXRFcnJvcixcbiAgUHVyZ2VRdWV1ZUluUHJvZ3Jlc3NFcnJvcixcbiAgUXVldWVEZWxldGVkUmVjZW50bHlFcnJvcixcbiAgUXVldWVEb2VzTm90RXhpc3RFcnJvcixcbiAgUXVldWVOYW1lRXhpc3RzRXJyb3IsXG4gIFJlY2VpcHRIYW5kbGVJc0ludmFsaWRFcnJvcixcbiAgUmVxdWVzdFRocm90dGxlZEVycm9yLFxuICBSZXNvdXJjZU5vdEZvdW5kRXJyb3IsXG4gIFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvcixcbiAgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBTUVNDbGllbnRJbnN0YW5jZSwgU1FTQ2xpZW50SW5zdGFuY2VMYXllciB9IGZyb20gXCIuL1NRU0NsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0U1FTQ2xpZW50Q29uZmlnTGF5ZXIgfSBmcm9tIFwiLi9TUVNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZCxcbiAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmQsXG4gIENyZWF0ZVF1ZXVlQ29tbWFuZCxcbiAgRGVsZXRlTWVzc2FnZUNvbW1hbmQsXG4gIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIERlbGV0ZVF1ZXVlQ29tbWFuZCxcbiAgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0UXVldWVVcmxDb21tYW5kLFxuICBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmQsXG4gIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZCxcbiAgTGlzdFF1ZXVlc0NvbW1hbmQsXG4gIExpc3RRdWV1ZVRhZ3NDb21tYW5kLFxuICBQdXJnZVF1ZXVlQ29tbWFuZCxcbiAgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kLFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgU2VuZE1lc3NhZ2VDb21tYW5kLFxuICBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZCxcbiAgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kLFxuICBUYWdRdWV1ZUNvbW1hbmQsXG4gIFVudGFnUXVldWVDb21tYW5kLFxufTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTUVNTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWRkUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICBhZGRQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmR9XG4gICAqL1xuICBjYW5jZWxNZXNzYWdlTW92ZVRhc2soXG4gICAgYXJnczogQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDYW5jZWxNZXNzYWdlTW92ZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmR9XG4gICAqL1xuICBjaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eShcbiAgICBhcmdzOiBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBNZXNzYWdlTm90SW5mbGlnaHRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVjZWlwdEhhbmRsZUlzSW52YWxpZEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmR9XG4gICAqL1xuICBjaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUJhdGNoKFxuICAgIGFyZ3M6IENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVRdWV1ZShcbiAgICBhcmdzOiBDcmVhdGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlUXVldWVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVOYW1lRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVWYWx1ZUVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEZWxldGVkUmVjZW50bHlFcnJvclxuICAgIHwgUXVldWVOYW1lRXhpc3RzRXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZU1lc3NhZ2UoXG4gICAgYXJnczogRGVsZXRlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZElkRm9ybWF0RXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZWNlaXB0SGFuZGxlSXNJbnZhbGlkRXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNZXNzYWdlQmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlTWVzc2FnZUJhdGNoKFxuICAgIGFyZ3M6IERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgRW1wdHlCYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUXVldWVDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlUXVldWUoXG4gICAgYXJnczogRGVsZXRlUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRRdWV1ZUF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRBdHRyaWJ1dGVOYW1lRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UXVldWVVcmxDb21tYW5kfVxuICAgKi9cbiAgZ2V0UXVldWVVcmwoXG4gICAgYXJnczogR2V0UXVldWVVcmxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFF1ZXVlVXJsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3REZWFkTGV0dGVyU291cmNlUXVldWVzKFxuICAgIGFyZ3M6IExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TWVzc2FnZU1vdmVUYXNrcyhcbiAgICBhcmdzOiBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdE1lc3NhZ2VNb3ZlVGFza3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UXVldWVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RRdWV1ZXMoXG4gICAgYXJnczogTGlzdFF1ZXVlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UXVldWVUYWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RRdWV1ZVRhZ3MoXG4gICAgYXJnczogTGlzdFF1ZXVlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFF1ZXVlVGFnc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXJnZVF1ZXVlQ29tbWFuZH1cbiAgICovXG4gIHB1cmdlUXVldWUoXG4gICAgYXJnczogUHVyZ2VRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVyZ2VRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFB1cmdlUXVldWVJblByb2dyZXNzRXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZWNlaXZlTWVzc2FnZUNvbW1hbmR9XG4gICAqL1xuICByZWNlaXZlTWVzc2FnZShcbiAgICBhcmdzOiBSZWNlaXZlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVtb3ZlUGVybWlzc2lvbihcbiAgICBhcmdzOiBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlbmRNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIHNlbmRNZXNzYWdlKFxuICAgIGFyZ3M6IFNlbmRNZXNzYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZW5kTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZE1lc3NhZ2VDb250ZW50c0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgS21zQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEttc0Rpc2FibGVkRXJyb3JcbiAgICB8IEttc0ludmFsaWRLZXlVc2FnZUVycm9yXG4gICAgfCBLbXNJbnZhbGlkU3RhdGVFcnJvclxuICAgIHwgS21zTm90Rm91bmRFcnJvclxuICAgIHwgS21zT3B0SW5SZXF1aXJlZEVycm9yXG4gICAgfCBLbXNUaHJvdHRsZWRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgc2VuZE1lc3NhZ2VCYXRjaChcbiAgICBhcmdzOiBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0UXVldWVBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlVmFsdWVFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE92ZXJMaW1pdEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kfVxuICAgKi9cbiAgc3RhcnRNZXNzYWdlTW92ZVRhc2soXG4gICAgYXJnczogU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUXVldWVDb21tYW5kfVxuICAgKi9cbiAgdGFnUXVldWUoXG4gICAgYXJnczogVGFnUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVudGFnUXVldWVDb21tYW5kfVxuICAgKi9cbiAgdW50YWdRdWV1ZShcbiAgICBhcmdzOiBVbnRhZ1F1ZXVlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVbnRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgU1FTU2VydmljZSA9IENvbnRleHQuR2VuZXJpY1RhZzxTUVNTZXJ2aWNlPihcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtc3FzL1NRU1NlcnZpY2VcIixcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlU1FTU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKFNRU0NsaWVudEluc3RhbmNlKTtcblxuICByZXR1cm4gUmVjb3JkLnRvRW50cmllcyhjb21tYW5kcykucmVkdWNlKChhY2MsIFtjb21tYW5kXSkgPT4ge1xuICAgIGNvbnN0IENvbW1hbmRDdG9yID0gY29tbWFuZHNbY29tbWFuZF0gYXMgYW55O1xuICAgIGNvbnN0IG1ldGhvZEltcGwgPSAoYXJnczogYW55LCBvcHRpb25zOiBhbnkpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKCkgPT4gY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCBvcHRpb25zID8/IHt9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBTUVNTZXJ2aWNlRXhjZXB0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBTZXJ2aWNlRXhjZXB0aW9uID0gRGF0YS50YWdnZWQ8XG4gICAgICAgICAgICAgIFRhZ2dlZEV4Y2VwdGlvbjxTUVNTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBTUVNTZXJ2aWNlO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU1FTU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFNRU1NlcnZpY2UsIG1ha2VTUVNTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFNRU1NlcnZpY2VMYXllciA9IEJhc2VTUVNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShTUVNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U1FTU2VydmljZUxheWVyID0gU1FTU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdFNRU0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU1FTU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TUVNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixvQkFBb0IsRUFHcEIsNEJBQTRCLEVBRzVCLDhCQUE4QixFQUc5QixtQ0FBbUMsRUFHbkMsa0JBQWtCLEVBR2xCLG9CQUFvQixFQUdwQix5QkFBeUIsRUFHekIsa0JBQWtCLEVBR2xCLHlCQUF5QixFQUd6QixrQkFBa0IsRUFHbEIsaUNBQWlDLEVBR2pDLDJCQUEyQixFQUczQixpQkFBaUIsRUFHakIsb0JBQW9CLEVBR3BCLGlCQUFpQixFQUdqQixxQkFBcUIsRUFHckIsdUJBQXVCLEVBR3ZCLGtCQUFrQixFQUdsQix1QkFBdUIsRUFHdkIseUJBQXlCLEVBR3pCLDJCQUEyQixFQUczQixlQUFlLEVBR2YsaUJBQWlCLEdBR2xCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsZ0JBQWdCLEVBNkJoQixRQUFRLEdBRVQsTUFBTSxVQUFVLENBQUM7QUFDbEIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFVeEUsTUFBTSxRQUFRLEdBQUc7SUFDZixvQkFBb0I7SUFDcEIsNEJBQTRCO0lBQzVCLDhCQUE4QjtJQUM5QixtQ0FBbUM7SUFDbkMsa0JBQWtCO0lBQ2xCLG9CQUFvQjtJQUNwQix5QkFBeUI7SUFDekIsa0JBQWtCO0lBQ2xCLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsaUNBQWlDO0lBQ2pDLDJCQUEyQjtJQUMzQixpQkFBaUI7SUFDakIsb0JBQW9CO0lBQ3BCLGlCQUFpQjtJQUNqQixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLGtCQUFrQjtJQUNsQix1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLDJCQUEyQjtJQUMzQixlQUFlO0lBQ2YsaUJBQWlCO0NBQ2xCLENBQUM7QUFzYUY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVcsU0FBUSxNQUFNLENBQUMsR0FBRyxDQUFDLG1DQUFtQyxDQUFDLEVBRzVFO0NBQUc7QUFFTjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ25ELE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBRTNDLE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO1FBQzFELE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQVEsQ0FBQztRQUM3QyxNQUFNLFVBQVUsR0FBRyxDQUFDLElBQVMsRUFBRSxPQUE0QixFQUFFLEVBQUUsQ0FDN0QsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNoQixHQUFHLEVBQUUsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNqQyxHQUFHLENBQUMsT0FBTyxhQUFQLE9BQU8sY0FBUCxPQUFPLEdBQUksRUFBRSxDQUFDO2dCQUNsQixXQUFXO2FBQ1osQ0FBQztZQUNKLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO2dCQUNYLElBQ0UsQ0FBQyxZQUFZLG1CQUFtQjtvQkFDaEMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFDakMsQ0FBQztvQkFDRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBRWxDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFFVixPQUFPLGdCQUFnQixDQUFDO3dCQUN0QixHQUFHLENBQUM7d0JBQ0osT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO3dCQUNsQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7cUJBQ2YsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLFlBQVksS0FBSyxFQUFFLENBQUM7b0JBQ3ZCLE9BQU8sUUFBUSxDQUFDO3dCQUNkLEdBQUcsQ0FBQzt3QkFDSixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO3dCQUNsQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7cUJBQ2YsQ0FBQyxDQUFDO2dCQUNMLENBQUM7Z0JBQ0QsTUFBTSxDQUFDLENBQUM7WUFDVixDQUFDO1NBQ0YsQ0FBQyxDQUFDO1FBQ0wsTUFBTSxVQUFVLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDdEUsVUFBVSxFQUNWLEVBQUUsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDOUMsQ0FBQyxFQUFFLEVBQUUsQ0FBZ0IsQ0FBQztBQUN4QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBRTVFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIFNRU1NlcnZpY2VFeGNlcHRpb24sXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmQsXG4gIHR5cGUgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICB0eXBlIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5Q29tbWFuZCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRPdXRwdXQsXG4gIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kLFxuICB0eXBlIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVF1ZXVlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1lc3NhZ2VDb21tYW5kLFxuICB0eXBlIERlbGV0ZU1lc3NhZ2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVF1ZXVlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgR2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFF1ZXVlVXJsQ29tbWFuZCxcbiAgdHlwZSBHZXRRdWV1ZVVybENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRRdWV1ZVVybENvbW1hbmRPdXRwdXQsXG4gIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZCxcbiAgdHlwZSBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0RGVhZExldHRlclNvdXJjZVF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNZXNzYWdlTW92ZVRhc2tzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RRdWV1ZXNDb21tYW5kLFxuICB0eXBlIExpc3RRdWV1ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RRdWV1ZVRhZ3NDb21tYW5kLFxuICB0eXBlIExpc3RRdWV1ZVRhZ3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFF1ZXVlVGFnc0NvbW1hbmRPdXRwdXQsXG4gIFB1cmdlUXVldWVDb21tYW5kLFxuICB0eXBlIFB1cmdlUXVldWVDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHVyZ2VRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIFJlY2VpdmVNZXNzYWdlQ29tbWFuZCxcbiAgdHlwZSBSZWNlaXZlTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBSZWNlaXZlTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFNlbmRNZXNzYWdlQ29tbWFuZCxcbiAgdHlwZSBTZW5kTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBTZW5kTWVzc2FnZUNvbW1hbmRPdXRwdXQsXG4gIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kLFxuICB0eXBlIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmRPdXRwdXQsXG4gIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgU2V0UXVldWVBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZCxcbiAgdHlwZSBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmRPdXRwdXQsXG4gIFRhZ1F1ZXVlQ29tbWFuZCxcbiAgdHlwZSBUYWdRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBUYWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gIFVudGFnUXVldWVDb21tYW5kLFxuICB0eXBlIFVudGFnUXVldWVDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW50YWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc3FzXCI7XG5pbXBvcnQgeyBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvcixcbiAgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yLFxuICBFbXB0eUJhdGNoUmVxdWVzdEVycm9yLFxuICBJbnZhbGlkQWRkcmVzc0Vycm9yLFxuICBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yLFxuICBJbnZhbGlkQXR0cmlidXRlVmFsdWVFcnJvcixcbiAgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yLFxuICBJbnZhbGlkSWRGb3JtYXRFcnJvcixcbiAgSW52YWxpZE1lc3NhZ2VDb250ZW50c0Vycm9yLFxuICBJbnZhbGlkU2VjdXJpdHlFcnJvcixcbiAgS21zQWNjZXNzRGVuaWVkRXJyb3IsXG4gIEttc0Rpc2FibGVkRXJyb3IsXG4gIEttc0ludmFsaWRLZXlVc2FnZUVycm9yLFxuICBLbXNJbnZhbGlkU3RhdGVFcnJvcixcbiAgS21zTm90Rm91bmRFcnJvcixcbiAgS21zT3B0SW5SZXF1aXJlZEVycm9yLFxuICBLbXNUaHJvdHRsZWRFcnJvcixcbiAgTWVzc2FnZU5vdEluZmxpZ2h0RXJyb3IsXG4gIE92ZXJMaW1pdEVycm9yLFxuICBQdXJnZVF1ZXVlSW5Qcm9ncmVzc0Vycm9yLFxuICBRdWV1ZURlbGV0ZWRSZWNlbnRseUVycm9yLFxuICBRdWV1ZURvZXNOb3RFeGlzdEVycm9yLFxuICBRdWV1ZU5hbWVFeGlzdHNFcnJvcixcbiAgUmVjZWlwdEhhbmRsZUlzSW52YWxpZEVycm9yLFxuICBSZXF1ZXN0VGhyb3R0bGVkRXJyb3IsXG4gIFJlc291cmNlTm90Rm91bmRFcnJvcixcbiAgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yLFxuICBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yLFxuICBTZGtFcnJvcixcbiAgVGFnZ2VkRXhjZXB0aW9uLFxufSBmcm9tIFwiLi9FcnJvcnNcIjtcbmltcG9ydCB7IFNRU0NsaWVudEluc3RhbmNlLCBTUVNDbGllbnRJbnN0YW5jZUxheWVyIH0gZnJvbSBcIi4vU1FTQ2xpZW50SW5zdGFuY2VcIjtcbmltcG9ydCB7IERlZmF1bHRTUVNDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL1NRU0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbmludGVyZmFjZSBIdHRwSGFuZGxlck9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIG1heGltdW0gdGltZSBpbiBtaWxsaXNlY29uZHMgdGhhdCB0aGUgY29ubmVjdGlvbiBwaGFzZSBvZiBhIHJlcXVlc3RcbiAgICogbWF5IHRha2UgYmVmb3JlIHRoZSBjb25uZWN0aW9uIGF0dGVtcHQgaXMgYWJhbmRvbmVkLlxuICAgKi9cbiAgcmVxdWVzdFRpbWVvdXQ/OiBudW1iZXI7XG59XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBBZGRQZXJtaXNzaW9uQ29tbWFuZCxcbiAgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZCxcbiAgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlDb21tYW5kLFxuICBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUJhdGNoQ29tbWFuZCxcbiAgQ3JlYXRlUXVldWVDb21tYW5kLFxuICBEZWxldGVNZXNzYWdlQ29tbWFuZCxcbiAgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZCxcbiAgRGVsZXRlUXVldWVDb21tYW5kLFxuICBHZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRRdWV1ZVVybENvbW1hbmQsXG4gIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZCxcbiAgTGlzdE1lc3NhZ2VNb3ZlVGFza3NDb21tYW5kLFxuICBMaXN0UXVldWVzQ29tbWFuZCxcbiAgTGlzdFF1ZXVlVGFnc0NvbW1hbmQsXG4gIFB1cmdlUXVldWVDb21tYW5kLFxuICBSZWNlaXZlTWVzc2FnZUNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICBTZW5kTWVzc2FnZUNvbW1hbmQsXG4gIFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kLFxuICBTZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kLFxuICBTdGFydE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmQsXG4gIFRhZ1F1ZXVlQ29tbWFuZCxcbiAgVW50YWdRdWV1ZUNvbW1hbmQsXG59O1xuXG5pbnRlcmZhY2UgU1FTU2VydmljZSQge1xuICByZWFkb25seSBfOiB1bmlxdWUgc3ltYm9sO1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBZGRQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGFkZFBlcm1pc3Npb24oXG4gICAgYXJnczogQWRkUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENhbmNlbE1lc3NhZ2VNb3ZlVGFza0NvbW1hbmR9XG4gICAqL1xuICBjYW5jZWxNZXNzYWdlTW92ZVRhc2soXG4gICAgYXJnczogQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ2FuY2VsTWVzc2FnZU1vdmVUYXNrQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlDb21tYW5kfVxuICAgKi9cbiAgY2hhbmdlTWVzc2FnZVZpc2liaWxpdHkoXG4gICAgYXJnczogQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE1lc3NhZ2VOb3RJbmZsaWdodEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZWNlaXB0SGFuZGxlSXNJbnZhbGlkRXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDaGFuZ2VNZXNzYWdlVmlzaWJpbGl0eUJhdGNoQ29tbWFuZH1cbiAgICovXG4gIGNoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2goXG4gICAgYXJnczogQ2hhbmdlTWVzc2FnZVZpc2liaWxpdHlCYXRjaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENoYW5nZU1lc3NhZ2VWaXNpYmlsaXR5QmF0Y2hDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVRdWV1ZShcbiAgICBhcmdzOiBDcmVhdGVRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlTmFtZUVycm9yXG4gICAgfCBJbnZhbGlkQXR0cmlidXRlVmFsdWVFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRGVsZXRlZFJlY2VudGx5RXJyb3JcbiAgICB8IFF1ZXVlTmFtZUV4aXN0c0Vycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTWVzc2FnZUNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVNZXNzYWdlKFxuICAgIGFyZ3M6IERlbGV0ZU1lc3NhZ2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVNZXNzYWdlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkSWRGb3JtYXRFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlY2VpcHRIYW5kbGVJc0ludmFsaWRFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU1lc3NhZ2VCYXRjaENvbW1hbmR9XG4gICAqL1xuICBkZWxldGVNZXNzYWdlQmF0Y2goXG4gICAgYXJnczogRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgRW1wdHlCYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUXVldWVDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlUXVldWUoXG4gICAgYXJnczogRGVsZXRlUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0UXVldWVBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZEF0dHJpYnV0ZU5hbWVFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRRdWV1ZVVybENvbW1hbmR9XG4gICAqL1xuICBnZXRRdWV1ZVVybChcbiAgICBhcmdzOiBHZXRRdWV1ZVVybENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFF1ZXVlVXJsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3REZWFkTGV0dGVyU291cmNlUXVldWVzKFxuICAgIGFyZ3M6IExpc3REZWFkTGV0dGVyU291cmNlUXVldWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdERlYWRMZXR0ZXJTb3VyY2VRdWV1ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE1lc3NhZ2VNb3ZlVGFza3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdE1lc3NhZ2VNb3ZlVGFza3MoXG4gICAgYXJnczogTGlzdE1lc3NhZ2VNb3ZlVGFza3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0TWVzc2FnZU1vdmVUYXNrc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RRdWV1ZXNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFF1ZXVlcyhcbiAgICBhcmdzOiBMaXN0UXVldWVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFF1ZXVlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UXVldWVUYWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RRdWV1ZVRhZ3MoXG4gICAgYXJnczogTGlzdFF1ZXVlVGFnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RRdWV1ZVRhZ3NDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVyZ2VRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICBwdXJnZVF1ZXVlKFxuICAgIGFyZ3M6IFB1cmdlUXVldWVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXJnZVF1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUHVyZ2VRdWV1ZUluUHJvZ3Jlc3NFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlY2VpdmVNZXNzYWdlQ29tbWFuZH1cbiAgICovXG4gIHJlY2VpdmVNZXNzYWdlKFxuICAgIGFyZ3M6IFJlY2VpdmVNZXNzYWdlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVjZWl2ZU1lc3NhZ2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVtb3ZlUGVybWlzc2lvbihcbiAgICBhcmdzOiBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZW5kTWVzc2FnZUNvbW1hbmR9XG4gICAqL1xuICBzZW5kTWVzc2FnZShcbiAgICBhcmdzOiBTZW5kTWVzc2FnZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNlbmRNZXNzYWdlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkTWVzc2FnZUNvbnRlbnRzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2VuZE1lc3NhZ2VCYXRjaENvbW1hbmR9XG4gICAqL1xuICBzZW5kTWVzc2FnZUJhdGNoKFxuICAgIGFyZ3M6IFNlbmRNZXNzYWdlQmF0Y2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZW5kTWVzc2FnZUJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLbXNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS21zRGlzYWJsZWRFcnJvclxuICAgIHwgS21zSW52YWxpZEtleVVzYWdlRXJyb3JcbiAgICB8IEttc0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLbXNOb3RGb3VuZEVycm9yXG4gICAgfCBLbXNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEttc1Rocm90dGxlZEVycm9yXG4gICAgfCBRdWV1ZURvZXNOb3RFeGlzdEVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRRdWV1ZUF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0UXVldWVBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNldFF1ZXVlQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZEF0dHJpYnV0ZU5hbWVFcnJvclxuICAgIHwgSW52YWxpZEF0dHJpYnV0ZVZhbHVlRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBPdmVyTGltaXRFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZH1cbiAgICovXG4gIHN0YXJ0TWVzc2FnZU1vdmVUYXNrKFxuICAgIGFyZ3M6IFN0YXJ0TWVzc2FnZU1vdmVUYXNrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU3RhcnRNZXNzYWdlTW92ZVRhc2tDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEludmFsaWRBZGRyZXNzRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBSZXF1ZXN0VGhyb3R0bGVkRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUYWdRdWV1ZUNvbW1hbmR9XG4gICAqL1xuICB0YWdRdWV1ZShcbiAgICBhcmdzOiBUYWdRdWV1ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFRhZ1F1ZXVlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBJbnZhbGlkQWRkcmVzc0Vycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgUXVldWVEb2VzTm90RXhpc3RFcnJvclxuICAgIHwgUmVxdWVzdFRocm90dGxlZEVycm9yXG4gICAgfCBVbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVudGFnUXVldWVDb21tYW5kfVxuICAgKi9cbiAgdW50YWdRdWV1ZShcbiAgICBhcmdzOiBVbnRhZ1F1ZXVlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW50YWdRdWV1ZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgSW52YWxpZEFkZHJlc3NFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFF1ZXVlRG9lc05vdEV4aXN0RXJyb3JcbiAgICB8IFJlcXVlc3RUaHJvdHRsZWRFcnJvclxuICAgIHwgVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvclxuICA+O1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICovXG5leHBvcnQgY2xhc3MgU1FTU2VydmljZSBleHRlbmRzIEVmZmVjdC5UYWcoXCJAZWZmZWN0LWF3cy9jbGllbnQtc3FzL1NRU1NlcnZpY2VcIik8XG4gIFNRU1NlcnZpY2UsXG4gIFNRU1NlcnZpY2UkXG4+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VTUVNTZXJ2aWNlID0gRWZmZWN0LmdlbihmdW5jdGlvbiogKF8pIHtcbiAgY29uc3QgY2xpZW50ID0geWllbGQqIF8oU1FTQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKGFib3J0U2lnbmFsKSA9PlxuICAgICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwge1xuICAgICAgICAgICAgLi4uKG9wdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgYWJvcnRTaWduYWwsXG4gICAgICAgICAgfSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUgaW5zdGFuY2VvZiBTUVNTZXJ2aWNlRXhjZXB0aW9uICYmXG4gICAgICAgICAgICBBbGxTZXJ2aWNlRXJyb3JzLmluY2x1ZGVzKGUubmFtZSlcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IFNlcnZpY2VFeGNlcHRpb24gPSBEYXRhLnRhZ2dlZDxcbiAgICAgICAgICAgICAgVGFnZ2VkRXhjZXB0aW9uPFNRU1NlcnZpY2VFeGNlcHRpb24+XG4gICAgICAgICAgICA+KGUubmFtZSk7XG5cbiAgICAgICAgICAgIHJldHVybiBTZXJ2aWNlRXhjZXB0aW9uKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gU2RrRXJyb3Ioe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBuYW1lOiBcIlNka0Vycm9yXCIsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSAoY29tbWFuZFswXS50b0xvd2VyQ2FzZSgpICsgY29tbWFuZC5zbGljZSgxKSkucmVwbGFjZShcbiAgICAgIC9Db21tYW5kJC8sXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgcmV0dXJuIHsgLi4uYWNjLCBbbWV0aG9kTmFtZV06IG1ldGhvZEltcGwgfTtcbiAgfSwge30pIGFzIFNRU1NlcnZpY2UkO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU1FTU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFNRU1NlcnZpY2UsIG1ha2VTUVNTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFNRU1NlcnZpY2VMYXllciA9IEJhc2VTUVNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShTUVNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U1FTU2VydmljZUxheWVyID0gU1FTU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdFNRU0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -7,27 +7,25 @@
|
|
|
7
7
|
},
|
|
8
8
|
"devDependencies": {
|
|
9
9
|
"@types/node": "^18",
|
|
10
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
11
|
-
"@typescript-eslint/parser": "^
|
|
12
|
-
"aws-sdk-client-mock": "^
|
|
13
|
-
"aws-sdk-client-mock-
|
|
14
|
-
"constructs": "^10.0.0",
|
|
10
|
+
"@typescript-eslint/eslint-plugin": "^7",
|
|
11
|
+
"@typescript-eslint/parser": "^7",
|
|
12
|
+
"aws-sdk-client-mock": "^4.0.2",
|
|
13
|
+
"aws-sdk-client-mock-vitest": "^4.0.0",
|
|
15
14
|
"effect": "3.0.0",
|
|
16
15
|
"eslint": "^8",
|
|
17
|
-
"eslint-config-prettier": "^9.
|
|
16
|
+
"eslint-config-prettier": "^9.1.0",
|
|
18
17
|
"eslint-import-resolver-typescript": "^3.6.1",
|
|
19
|
-
"eslint-plugin-import": "^2.
|
|
20
|
-
"eslint-plugin-prettier": "^5.
|
|
21
|
-
"prettier": "^3.
|
|
22
|
-
"
|
|
23
|
-
"
|
|
18
|
+
"eslint-plugin-import": "^2.29.1",
|
|
19
|
+
"eslint-plugin-prettier": "^5.2.1",
|
|
20
|
+
"prettier": "^3.2.5",
|
|
21
|
+
"typescript": "^5.4.2",
|
|
22
|
+
"vitest": "^2.0.5"
|
|
24
23
|
},
|
|
25
24
|
"peerDependencies": {
|
|
26
25
|
"effect": ">=3.0.0 <4.0.0"
|
|
27
26
|
},
|
|
28
27
|
"dependencies": {
|
|
29
|
-
"@aws-sdk/client-sqs": "^3"
|
|
30
|
-
"@aws-sdk/types": "^3"
|
|
28
|
+
"@aws-sdk/client-sqs": "^3"
|
|
31
29
|
},
|
|
32
30
|
"main": "lib/index.js",
|
|
33
31
|
"license": "MIT",
|
|
@@ -35,7 +33,7 @@
|
|
|
35
33
|
"publishConfig": {
|
|
36
34
|
"access": "public"
|
|
37
35
|
},
|
|
38
|
-
"version": "1.
|
|
36
|
+
"version": "1.5.0",
|
|
39
37
|
"types": "lib/index.d.ts",
|
|
40
38
|
"module": "lib/esm/index.js",
|
|
41
39
|
"sideEffects": [],
|
package/vitest.config.ts
ADDED