@effect-aws/client-sns 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/docgen.json +8 -0
- package/lib/SNSClientInstance.d.ts +3 -0
- package/lib/SNSClientInstance.js +4 -1
- package/lib/SNSClientInstanceConfig.d.ts +3 -0
- package/lib/SNSClientInstanceConfig.js +1 -1
- package/lib/SNSService.d.ts +6 -0
- package/lib/SNSService.js +7 -1
- package/lib/esm/SNSClientInstance.js +4 -1
- package/lib/esm/SNSClientInstanceConfig.js +1 -1
- package/lib/esm/SNSService.js +7 -1
- package/package.json +9 -5
- package/.gitattributes +0 -21
- package/.prettierignore +0 -1
- package/.prettierrc.json +0 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @effect-aws/client-sns
|
|
2
2
|
|
|
3
|
+
## 1.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#29](https://github.com/floydspace/effect-aws/pull/29) [`4b6c521`](https://github.com/floydspace/effect-aws/commit/4b6c521206c8ff76ff878938f6b90ee474cc8da2) Thanks [@godu](https://github.com/godu)! - improve tree shaking by using sideEffects flag
|
|
8
|
+
|
|
3
9
|
## 1.0.0
|
|
4
10
|
|
|
5
11
|
### Major Changes
|
package/docgen.json
ADDED
package/lib/SNSClientInstance.js
CHANGED
|
@@ -24,6 +24,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.DefaultSNSClientInstanceLayer = exports.SNSClientInstanceLayer = exports.makeSNSClientInstance = exports.SNSClientInstance = void 0;
|
|
27
|
+
/**
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
*/
|
|
27
30
|
const client_sns_1 = require("@aws-sdk/client-sns");
|
|
28
31
|
const Context = __importStar(require("effect/Context"));
|
|
29
32
|
const Effect = __importStar(require("effect/Effect"));
|
|
@@ -49,4 +52,4 @@ exports.SNSClientInstanceLayer = Layer.effect(exports.SNSClientInstance, exports
|
|
|
49
52
|
* @category layers
|
|
50
53
|
*/
|
|
51
54
|
exports.DefaultSNSClientInstanceLayer = exports.SNSClientInstanceLayer.pipe(Layer.provide(SNSClientInstanceConfig_1.DefaultSNSClientConfigLayer));
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TQ2xpZW50SW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU05TQ2xpZW50SW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7R0FFRztBQUNILG9EQUFnRDtBQUNoRCx3REFBMEM7QUFDMUMsc0RBQXdDO0FBQ3hDLG9EQUFzQztBQUN0Qyx1RUFHbUM7QUFVbkM7OztHQUdHO0FBQ1UsUUFBQSxpQkFBaUIsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUMxQyxNQUFNLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQ3ZELENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQzdDLGlEQUF1QixFQUN2QixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxzQkFBUyxDQUFDLE1BQU0sQ0FBQyxDQUNsQyxDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNoRCx5QkFBaUIsRUFDakIsNkJBQXFCLENBQ3RCLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLDZCQUE2QixHQUFHLDhCQUFzQixDQUFDLElBQUksQ0FDdEUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxxREFBMkIsQ0FBQyxDQUMzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHsgU05TQ2xpZW50IH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zbnNcIjtcbmltcG9ydCAqIGFzIENvbnRleHQgZnJvbSBcImVmZmVjdC9Db250ZXh0XCI7XG5pbXBvcnQgKiBhcyBFZmZlY3QgZnJvbSBcImVmZmVjdC9FZmZlY3RcIjtcbmltcG9ydCAqIGFzIExheWVyIGZyb20gXCJlZmZlY3QvTGF5ZXJcIjtcbmltcG9ydCB7XG4gIERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllcixcbiAgU05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG59IGZyb20gXCIuL1NOU0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNOU0NsaWVudEluc3RhbmNlIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNDbGllbnRJbnN0YW5jZSA9IENvbnRleHQuVGFnPFNOU0NsaWVudEluc3RhbmNlLCBTTlNDbGllbnQ+KFxuICBTeW1ib2wuZm9yKFwiQGVmZmVjdC1hd3MvY2xpZW50LXNucy9TTlNDbGllbnRJbnN0YW5jZVwiKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlU05TQ2xpZW50SW5zdGFuY2UgPSBFZmZlY3QubWFwKFxuICBTTlNDbGllbnRJbnN0YW5jZUNvbmZpZyxcbiAgKGNvbmZpZykgPT4gbmV3IFNOU0NsaWVudChjb25maWcpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU0NsaWVudEluc3RhbmNlTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIFNOU0NsaWVudEluc3RhbmNlLFxuICBtYWtlU05TQ2xpZW50SW5zdGFuY2UsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFNOU0NsaWVudEluc3RhbmNlTGF5ZXIgPSBTTlNDbGllbnRJbnN0YW5jZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdFNOU0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
|
|
@@ -55,4 +55,4 @@ exports.makeDefaultSNSClientInstanceConfig = Effect.gen(function* (_) {
|
|
|
55
55
|
* @category layers
|
|
56
56
|
*/
|
|
57
57
|
exports.DefaultSNSClientConfigLayer = Layer.effect(exports.SNSClientInstanceConfig, exports.makeDefaultSNSClientInstanceConfig);
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvU05TQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFJQSx3REFBMEM7QUFDMUMsc0RBQXdDO0FBQ3hDLG9EQUFzQztBQUN0Qyx3REFBMEM7QUFVMUM7OztHQUdHO0FBQ1UsUUFBQSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUdoRCxNQUFNLENBQUMsR0FBRyxDQUFDLGdEQUFnRCxDQUFDLENBQUMsQ0FBQztBQUVoRTs7O0dBR0c7QUFDVSxRQUFBLGtDQUFrQyxHQUkzQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDekIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQVMsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekMsT0FBTztRQUNMLE1BQU0sRUFBRTtZQUNOLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzVDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQy9DLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzlDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzlDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQy9DO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUg7OztHQUdHO0FBQ1UsUUFBQSwyQkFBMkIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNyRCwrQkFBdUIsRUFDdkIsMENBQWtDLENBQ25DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgdHlwZSB7IFNOU0NsaWVudENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc25zXCI7XG5pbXBvcnQgKiBhcyBDb250ZXh0IGZyb20gXCJlZmZlY3QvQ29udGV4dFwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQgKiBhcyBSdW50aW1lIGZyb20gXCJlZmZlY3QvUnVudGltZVwiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTTlNDbGllbnRJbnN0YW5jZUNvbmZpZyB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgU05TQ2xpZW50SW5zdGFuY2VDb25maWcgPSBDb250ZXh0LlRhZzxcbiAgU05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIFNOU0NsaWVudENvbmZpZ1xuPihTeW1ib2wuZm9yKFwiQGVmZmVjdC1hd3MvY2xpZW50LXNucy9TTlNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiKSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlRGVmYXVsdFNOU0NsaWVudEluc3RhbmNlQ29uZmlnOiBFZmZlY3QuRWZmZWN0PFxuICBuZXZlcixcbiAgbmV2ZXIsXG4gIFNOU0NsaWVudENvbmZpZ1xuPiA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IHJ1bnRpbWUgPSB5aWVsZCogXyhFZmZlY3QucnVudGltZTxuZXZlcj4oKSk7XG4gIGNvbnN0IHJ1blN5bmMgPSBSdW50aW1lLnJ1blN5bmMocnVudGltZSk7XG5cbiAgcmV0dXJuIHtcbiAgICBsb2dnZXI6IHtcbiAgICAgIGluZm86IChtKSA9PiBFZmZlY3QubG9nSW5mbyhtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgd2FybjogKG0pID0+IEVmZmVjdC5sb2dXYXJuaW5nKG0pLnBpcGUocnVuU3luYyksXG4gICAgICBlcnJvcjogKG0pID0+IEVmZmVjdC5sb2dFcnJvcihtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgZGVidWc6IChtKSA9PiBFZmZlY3QubG9nRGVidWcobSkucGlwZShydW5TeW5jKSxcbiAgICAgIHRyYWNlOiAobSkgPT4gRWZmZWN0LmxvZ1RyYWNlKG0pLnBpcGUocnVuU3luYyksXG4gICAgfSxcbiAgfTtcbn0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFNOU0NsaWVudENvbmZpZ0xheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBTTlNDbGllbnRJbnN0YW5jZUNvbmZpZyxcbiAgbWFrZURlZmF1bHRTTlNDbGllbnRJbnN0YW5jZUNvbmZpZyxcbik7XG4iXX0=
|
package/lib/SNSService.d.ts
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
1
4
|
import { AddPermissionCommandInput, AddPermissionCommandOutput, CheckIfPhoneNumberIsOptedOutCommandInput, CheckIfPhoneNumberIsOptedOutCommandOutput, ConfirmSubscriptionCommandInput, ConfirmSubscriptionCommandOutput, CreatePlatformApplicationCommandInput, CreatePlatformApplicationCommandOutput, CreatePlatformEndpointCommandInput, CreatePlatformEndpointCommandOutput, CreateSMSSandboxPhoneNumberCommandInput, CreateSMSSandboxPhoneNumberCommandOutput, CreateTopicCommandInput, CreateTopicCommandOutput, DeleteEndpointCommandInput, DeleteEndpointCommandOutput, DeletePlatformApplicationCommandInput, DeletePlatformApplicationCommandOutput, DeleteSMSSandboxPhoneNumberCommandInput, DeleteSMSSandboxPhoneNumberCommandOutput, DeleteTopicCommandInput, DeleteTopicCommandOutput, GetDataProtectionPolicyCommandInput, GetDataProtectionPolicyCommandOutput, GetEndpointAttributesCommandInput, GetEndpointAttributesCommandOutput, GetPlatformApplicationAttributesCommandInput, GetPlatformApplicationAttributesCommandOutput, GetSMSAttributesCommandInput, GetSMSAttributesCommandOutput, GetSMSSandboxAccountStatusCommandInput, GetSMSSandboxAccountStatusCommandOutput, GetSubscriptionAttributesCommandInput, GetSubscriptionAttributesCommandOutput, GetTopicAttributesCommandInput, GetTopicAttributesCommandOutput, ListEndpointsByPlatformApplicationCommandInput, ListEndpointsByPlatformApplicationCommandOutput, ListOriginationNumbersCommandInput, ListOriginationNumbersCommandOutput, ListPhoneNumbersOptedOutCommandInput, ListPhoneNumbersOptedOutCommandOutput, ListPlatformApplicationsCommandInput, ListPlatformApplicationsCommandOutput, ListSMSSandboxPhoneNumbersCommandInput, ListSMSSandboxPhoneNumbersCommandOutput, ListSubscriptionsByTopicCommandInput, ListSubscriptionsByTopicCommandOutput, ListSubscriptionsCommandInput, ListSubscriptionsCommandOutput, ListTagsForResourceCommandInput, ListTagsForResourceCommandOutput, ListTopicsCommandInput, ListTopicsCommandOutput, OptInPhoneNumberCommandInput, OptInPhoneNumberCommandOutput, PublishBatchCommandInput, PublishBatchCommandOutput, PublishCommandInput, PublishCommandOutput, PutDataProtectionPolicyCommandInput, PutDataProtectionPolicyCommandOutput, RemovePermissionCommandInput, RemovePermissionCommandOutput, SetEndpointAttributesCommandInput, SetEndpointAttributesCommandOutput, SetPlatformApplicationAttributesCommandInput, SetPlatformApplicationAttributesCommandOutput, SetSMSAttributesCommandInput, SetSMSAttributesCommandOutput, SetSubscriptionAttributesCommandInput, SetSubscriptionAttributesCommandOutput, SetTopicAttributesCommandInput, SetTopicAttributesCommandOutput, SubscribeCommandInput, SubscribeCommandOutput, TagResourceCommandInput, TagResourceCommandOutput, UnsubscribeCommandInput, UnsubscribeCommandOutput, UntagResourceCommandInput, UntagResourceCommandOutput, VerifySMSSandboxPhoneNumberCommandInput, VerifySMSSandboxPhoneNumberCommandOutput } from "@aws-sdk/client-sns";
|
|
2
5
|
import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types";
|
|
3
6
|
import { Context, Effect, Layer } from "effect";
|
|
@@ -204,14 +207,17 @@ export declare const SNSServiceLayer: Layer.Layer<import("./SNSClientInstanceCon
|
|
|
204
207
|
*/
|
|
205
208
|
export declare const DefaultSNSServiceLayer: Layer.Layer<never, never, SNSService>;
|
|
206
209
|
/**
|
|
210
|
+
* @since 0.1.0
|
|
207
211
|
* @deprecated
|
|
208
212
|
*/
|
|
209
213
|
export declare const BaseSNSServiceEffect: Effect.Effect<SNSClientInstance, never, SNSService>;
|
|
210
214
|
/**
|
|
215
|
+
* @since 0.1.0
|
|
211
216
|
* @deprecated
|
|
212
217
|
*/
|
|
213
218
|
export declare const SNSServiceEffect: Effect.Effect<import("./SNSClientInstanceConfig").SNSClientInstanceConfig, never, SNSService>;
|
|
214
219
|
/**
|
|
220
|
+
* @since 0.1.0
|
|
215
221
|
* @deprecated
|
|
216
222
|
*/
|
|
217
223
|
export declare const DefaultSNSServiceEffect: Effect.Effect<never, never, SNSService>;
|
package/lib/SNSService.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DefaultSNSServiceEffect = exports.SNSServiceEffect = exports.BaseSNSServiceEffect = exports.DefaultSNSServiceLayer = exports.SNSServiceLayer = exports.BaseSNSServiceLayer = exports.makeSNSService = exports.SNSService = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @since 1.0.0
|
|
6
|
+
*/
|
|
4
7
|
const client_sns_1 = require("@aws-sdk/client-sns");
|
|
5
8
|
const effect_1 = require("effect");
|
|
6
9
|
const Errors_1 = require("./Errors");
|
|
@@ -106,15 +109,18 @@ exports.SNSServiceLayer = exports.BaseSNSServiceLayer.pipe(effect_1.Layer.provid
|
|
|
106
109
|
exports.DefaultSNSServiceLayer = exports.SNSServiceLayer.pipe(effect_1.Layer.provide(SNSClientInstanceConfig_1.DefaultSNSClientConfigLayer));
|
|
107
110
|
// -------------------- Danger Zone --------------------
|
|
108
111
|
/**
|
|
112
|
+
* @since 0.1.0
|
|
109
113
|
* @deprecated
|
|
110
114
|
*/
|
|
111
115
|
exports.BaseSNSServiceEffect = exports.makeSNSService;
|
|
112
116
|
/**
|
|
117
|
+
* @since 0.1.0
|
|
113
118
|
* @deprecated
|
|
114
119
|
*/
|
|
115
120
|
exports.SNSServiceEffect = exports.BaseSNSServiceEffect.pipe(effect_1.Effect.provide(SNSClientInstance_1.SNSClientInstanceLayer));
|
|
116
121
|
/**
|
|
122
|
+
* @since 0.1.0
|
|
117
123
|
* @deprecated
|
|
118
124
|
*/
|
|
119
125
|
exports.DefaultSNSServiceEffect = exports.BaseSNSServiceEffect.pipe(effect_1.Effect.provide(SNSClientInstance_1.DefaultSNSClientInstanceLayer));
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TTlNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9EQWdJNkI7QUFFN0IsbUNBQXNFO0FBQ3RFLHFDQW1Da0I7QUFDbEIsMkRBSTZCO0FBQzdCLHVFQUF3RTtBQUV4RSxNQUFNLFFBQVEsR0FBRztJQUNmLG9CQUFvQixFQUFwQixpQ0FBb0I7SUFDcEIsbUNBQW1DLEVBQW5DLGdEQUFtQztJQUNuQywwQkFBMEIsRUFBMUIsdUNBQTBCO0lBQzFCLGdDQUFnQyxFQUFoQyw2Q0FBZ0M7SUFDaEMsNkJBQTZCLEVBQTdCLDBDQUE2QjtJQUM3QixrQ0FBa0MsRUFBbEMsK0NBQWtDO0lBQ2xDLGtCQUFrQixFQUFsQiwrQkFBa0I7SUFDbEIscUJBQXFCLEVBQXJCLGtDQUFxQjtJQUNyQixnQ0FBZ0MsRUFBaEMsNkNBQWdDO0lBQ2hDLGtDQUFrQyxFQUFsQywrQ0FBa0M7SUFDbEMsa0JBQWtCLEVBQWxCLCtCQUFrQjtJQUNsQiw4QkFBOEIsRUFBOUIsMkNBQThCO0lBQzlCLDRCQUE0QixFQUE1Qix5Q0FBNEI7SUFDNUIsdUNBQXVDLEVBQXZDLG9EQUF1QztJQUN2Qyx1QkFBdUIsRUFBdkIsb0NBQXVCO0lBQ3ZCLGlDQUFpQyxFQUFqQyw4Q0FBaUM7SUFDakMsZ0NBQWdDLEVBQWhDLDZDQUFnQztJQUNoQyx5QkFBeUIsRUFBekIsc0NBQXlCO0lBQ3pCLHlDQUF5QyxFQUF6QyxzREFBeUM7SUFDekMsNkJBQTZCLEVBQTdCLDBDQUE2QjtJQUM3QiwrQkFBK0IsRUFBL0IsNENBQStCO0lBQy9CLCtCQUErQixFQUEvQiw0Q0FBK0I7SUFDL0IsaUNBQWlDLEVBQWpDLDhDQUFpQztJQUNqQyx3QkFBd0IsRUFBeEIscUNBQXdCO0lBQ3hCLCtCQUErQixFQUEvQiw0Q0FBK0I7SUFDL0IsMEJBQTBCLEVBQTFCLHVDQUEwQjtJQUMxQixpQkFBaUIsRUFBakIsOEJBQWlC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QUM7QUFFNUU7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcsMkJBQW1CLENBQUMsSUFBSSxDQUNyRCxjQUFLLENBQUMsT0FBTyxDQUFDLDBDQUFzQixDQUFDLENBQ3RDLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHNCQUFzQixHQUFHLHVCQUFlLENBQUMsSUFBSSxDQUN4RCxjQUFLLENBQUMsT0FBTyxDQUFDLHFEQUEyQixDQUFDLENBQzNDLENBQUM7QUFFRix3REFBd0Q7QUFFeEQ7O0dBRUc7QUFDVSxRQUFBLG9CQUFvQixHQUFHLHNCQUFjLENBQUM7QUFFbkQ7O0dBRUc7QUFDVSxRQUFBLGdCQUFnQixHQUFHLDRCQUFvQixDQUFDLElBQUksQ0FDdkQsZUFBTSxDQUFDLE9BQU8sQ0FBQywwQ0FBc0IsQ0FBQyxDQUN2QyxDQUFDO0FBRUY7O0dBRUc7QUFDVSxRQUFBLHVCQUF1QixHQUFHLDRCQUFvQixDQUFDLElBQUksQ0FDOUQsZUFBTSxDQUFDLE9BQU8sQ0FBQyxpREFBNkIsQ0FBQyxDQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kLFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kLFxuICBDcmVhdGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVFbmRwb2ludENvbW1hbmQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZElucHV0LFxuICBEZWxldGVFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUb3BpY0NvbW1hbmQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZElucHV0LFxuICBEZWxldGVUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kLFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZE91dHB1dCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZElucHV0LFxuICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZElucHV0LFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRJbnB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZE91dHB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIExpc3RUb3BpY3NDb21tYW5kLFxuICBMaXN0VG9waWNzQ29tbWFuZElucHV0LFxuICBMaXN0VG9waWNzQ29tbWFuZE91dHB1dCxcbiAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kLFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kSW5wdXQsXG4gIFB1Ymxpc2hCYXRjaENvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hDb21tYW5kLFxuICBQdWJsaXNoQ29tbWFuZElucHV0LFxuICBQdWJsaXNoQ29tbWFuZE91dHB1dCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0LFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFNOU1NlcnZpY2VFeGNlcHRpb24sXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTdWJzY3JpYmVDb21tYW5kLFxuICBTdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gIFN1YnNjcmliZUNvbW1hbmRPdXRwdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kLFxuICBVbnN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kT3V0cHV0LFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zbnNcIjtcbmltcG9ydCB7IEh0dHBIYW5kbGVyT3B0aW9ucyBhcyBfX0h0dHBIYW5kbGVyT3B0aW9ucyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgQ29udGV4dCwgRGF0YSwgRWZmZWN0LCBMYXllciwgUmVhZG9ubHlSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBdXRob3JpemF0aW9uRXJyb3IsXG4gIEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yLFxuICBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3IsXG4gIENvbmN1cnJlbnRBY2Nlc3NFcnJvcixcbiAgRW1wdHlCYXRjaFJlcXVlc3RFcnJvcixcbiAgRW5kcG9pbnREaXNhYmxlZEVycm9yLFxuICBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIEludGVybmFsRXJyb3IsXG4gIEludmFsaWRCYXRjaEVudHJ5SWRFcnJvcixcbiAgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcixcbiAgSW52YWxpZFNlY3VyaXR5RXJyb3IsXG4gIEtNU0FjY2Vzc0RlbmllZEVycm9yLFxuICBLTVNEaXNhYmxlZEVycm9yLFxuICBLTVNJbnZhbGlkU3RhdGVFcnJvcixcbiAgS01TTm90Rm91bmRFcnJvcixcbiAgS01TT3B0SW5SZXF1aXJlZEVycm9yLFxuICBLTVNUaHJvdHRsaW5nRXJyb3IsXG4gIE5vdEZvdW5kRXJyb3IsXG4gIE9wdGVkT3V0RXJyb3IsXG4gIFBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEVycm9yLFxuICBSZXNvdXJjZU5vdEZvdW5kRXJyb3IsXG4gIFNka0Vycm9yLFxuICBTdGFsZVRhZ0Vycm9yLFxuICBTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFRhZ0xpbWl0RXhjZWVkZWRFcnJvcixcbiAgVGFnUG9saWN5RXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbiAgVGhyb3R0bGVkRXJyb3IsXG4gIFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvcixcbiAgVG9waWNMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFVzZXJFcnJvcixcbiAgVmFsaWRhdGlvbkVycm9yLFxuICBWZXJpZmljYXRpb25FcnJvcixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0U05TQ2xpZW50SW5zdGFuY2VMYXllcixcbiAgU05TQ2xpZW50SW5zdGFuY2UsXG4gIFNOU0NsaWVudEluc3RhbmNlTGF5ZXIsXG59IGZyb20gXCIuL1NOU0NsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0U05TQ2xpZW50Q29uZmlnTGF5ZXIgfSBmcm9tIFwiLi9TTlNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kLFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kLFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBDcmVhdGVUb3BpY0NvbW1hbmQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kLFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZCxcbiAgTGlzdFRvcGljc0NvbW1hbmQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kLFxuICBQdWJsaXNoQ29tbWFuZCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIFN1YnNjcmliZUNvbW1hbmQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kLFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbn07XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU05TU2VydmljZSB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFkZFBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgYWRkUGVybWlzc2lvbihcbiAgICBhcmdzOiBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBBZGRQZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZH1cbiAgICovXG4gIGNoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXQoXG4gICAgYXJnczogQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kfVxuICAgKi9cbiAgY29uZmlybVN1YnNjcmlwdGlvbihcbiAgICBhcmdzOiBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXJyb3IsXG4gICAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uKFxuICAgIGFyZ3M6IENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVBsYXRmb3JtRW5kcG9pbnQoXG4gICAgYXJnczogQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlcihcbiAgICBhcmdzOiBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBPcHRlZE91dEVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVXNlckVycm9yLFxuICAgIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVG9waWNDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlVG9waWMoXG4gICAgYXJnczogQ3JlYXRlVG9waWNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gICAgfCBUb3BpY0xpbWl0RXhjZWVkZWRFcnJvcixcbiAgICBDcmVhdGVUb3BpY0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlRW5kcG9pbnQoXG4gICAgYXJnczogRGVsZXRlRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBEZWxldGVFbmRwb2ludENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uKFxuICAgIGFyZ3M6IERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFVzZXJFcnJvcixcbiAgICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRvcGljQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVRvcGljKFxuICAgIGFyZ3M6IERlbGV0ZVRvcGljQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBEZWxldGVUb3BpY0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgZ2V0RGF0YVByb3RlY3Rpb25Qb2xpY3koXG4gICAgYXJnczogR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldEVuZHBvaW50QXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFNNU0F0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZH1cbiAgICovXG4gIGdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzKFxuICAgIGFyZ3M6IEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRUb3BpY0F0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGxpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0T3JpZ2luYXRpb25OdW1iZXJzKFxuICAgIGFyZ3M6IExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yLFxuICAgIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmR9XG4gICAqL1xuICBsaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXQoXG4gICAgYXJnczogTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFBsYXRmb3JtQXBwbGljYXRpb25zKFxuICAgIGFyZ3M6IExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnMoXG4gICAgYXJnczogTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0U3Vic2NyaXB0aW9ucyhcbiAgICBhcmdzOiBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljKFxuICAgIGFyZ3M6IExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUYWdzRm9yUmVzb3VyY2UoXG4gICAgYXJnczogTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VG9waWNzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUb3BpY3MoXG4gICAgYXJnczogTGlzdFRvcGljc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIExpc3RUb3BpY3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgb3B0SW5QaG9uZU51bWJlcihcbiAgICBhcmdzOiBPcHRJblBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVibGlzaENvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoKFxuICAgIGFyZ3M6IFB1Ymxpc2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRW5kcG9pbnREaXNhYmxlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLTVNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS01TRGlzYWJsZWRFcnJvclxuICAgIHwgS01TSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEtNU05vdEZvdW5kRXJyb3JcbiAgICB8IEtNU09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS01TVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvclxuICAgIHwgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvcixcbiAgICBQdWJsaXNoQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdWJsaXNoQmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgcHVibGlzaEJhdGNoKFxuICAgIGFyZ3M6IFB1Ymxpc2hCYXRjaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBFbmRwb2ludERpc2FibGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRCYXRjaEVudHJ5SWRFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgS01TQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEtNU0Rpc2FibGVkRXJyb3JcbiAgICB8IEtNU0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLTVNOb3RGb3VuZEVycm9yXG4gICAgfCBLTVNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEtNU1Rocm90dGxpbmdFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3JcbiAgICB8IFBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEVycm9yXG4gICAgfCBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvcixcbiAgICBQdWJsaXNoQmF0Y2hDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZH1cbiAgICovXG4gIHB1dERhdGFQcm90ZWN0aW9uUG9saWN5KFxuICAgIGFyZ3M6IFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVtb3ZlUGVybWlzc2lvbihcbiAgICBhcmdzOiBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0RW5kcG9pbnRBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0U01TQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFRvcGljQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN1YnNjcmliZUNvbW1hbmR9XG4gICAqL1xuICBzdWJzY3JpYmUoXG4gICAgYXJnczogU3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgU3Vic2NyaXB0aW9uTGltaXRFeGNlZWRlZEVycm9yLFxuICAgIFN1YnNjcmliZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdGFnUmVzb3VyY2UoXG4gICAgYXJnczogVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW5zdWJzY3JpYmVDb21tYW5kfVxuICAgKi9cbiAgdW5zdWJzY3JpYmUoXG4gICAgYXJnczogVW5zdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBVbnN1YnNjcmliZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW50YWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB1bnRhZ1Jlc291cmNlKFxuICAgIGFyZ3M6IFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBVbnRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgdmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFZlcmlmaWNhdGlvbkVycm9yLFxuICAgIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNTZXJ2aWNlID0gQ29udGV4dC5UYWc8U05TU2VydmljZT4oXG4gIFN5bWJvbC5mb3IoXCJAZWZmZWN0LWF3cy9jbGllbnQtc25zL1NOU1NlcnZpY2VcIiksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVNOU1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhTTlNDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlYWRvbmx5UmVjb3JkLnRvRW50cmllcyhjb21tYW5kcykucmVkdWNlKChhY2MsIFtjb21tYW5kXSkgPT4ge1xuICAgIGNvbnN0IENvbW1hbmRDdG9yID0gY29tbWFuZHNbY29tbWFuZF0gYXMgYW55O1xuICAgIGNvbnN0IG1ldGhvZEltcGwgPSAoYXJnczogYW55LCBvcHRpb25zOiBhbnkpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKCkgPT4gY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCBvcHRpb25zID8/IHt9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBTTlNTZXJ2aWNlRXhjZXB0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBTZXJ2aWNlRXhjZXB0aW9uID0gRGF0YS50YWdnZWQ8XG4gICAgICAgICAgICAgIFRhZ2dlZEV4Y2VwdGlvbjxTTlNTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBTTlNTZXJ2aWNlO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU05TU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFNOU1NlcnZpY2UsIG1ha2VTTlNTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU1NlcnZpY2VMYXllciA9IEJhc2VTTlNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShTTlNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U05TU2VydmljZUxheWVyID0gU05TU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdFNOU0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tIERhbmdlciBab25lIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VTTlNTZXJ2aWNlRWZmZWN0ID0gbWFrZVNOU1NlcnZpY2U7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU1NlcnZpY2VFZmZlY3QgPSBCYXNlU05TU2VydmljZUVmZmVjdC5waXBlKFxuICBFZmZlY3QucHJvdmlkZShTTlNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNTZXJ2aWNlRWZmZWN0ID0gQmFzZVNOU1NlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoRGVmYXVsdFNOU0NsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcbiJdfQ==
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TTlNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ0gsb0RBZ0k2QjtBQUU3QixtQ0FBc0U7QUFDdEUscUNBbUNrQjtBQUNsQiwyREFJNkI7QUFDN0IsdUVBQXdFO0FBRXhFLE1BQU0sUUFBUSxHQUFHO0lBQ2Ysb0JBQW9CLEVBQXBCLGlDQUFvQjtJQUNwQixtQ0FBbUMsRUFBbkMsZ0RBQW1DO0lBQ25DLDBCQUEwQixFQUExQix1Q0FBMEI7SUFDMUIsZ0NBQWdDLEVBQWhDLDZDQUFnQztJQUNoQyw2QkFBNkIsRUFBN0IsMENBQTZCO0lBQzdCLGtDQUFrQyxFQUFsQywrQ0FBa0M7SUFDbEMsa0JBQWtCLEVBQWxCLCtCQUFrQjtJQUNsQixxQkFBcUIsRUFBckIsa0NBQXFCO0lBQ3JCLGdDQUFnQyxFQUFoQyw2Q0FBZ0M7SUFDaEMsa0NBQWtDLEVBQWxDLCtDQUFrQztJQUNsQyxrQkFBa0IsRUFBbEIsK0JBQWtCO0lBQ2xCLDhCQUE4QixFQUE5QiwyQ0FBOEI7SUFDOUIsNEJBQTRCLEVBQTVCLHlDQUE0QjtJQUM1Qix1Q0FBdUMsRUFBdkMsb0RBQXVDO0lBQ3ZDLHVCQUF1QixFQUF2QixvQ0FBdUI7SUFDdkIsaUNBQWlDLEVBQWpDLDhDQUFpQztJQUNqQyxnQ0FBZ0MsRUFBaEMsNkNBQWdDO0lBQ2hDLHlCQUF5QixFQUF6QixzQ0FBeUI7SUFDekIseUNBQXlDLEVBQXpDLHNEQUF5QztJQUN6Qyw2QkFBNkIsRUFBN0IsMENBQTZCO0lBQzdCLCtCQUErQixFQUEvQiw0Q0FBK0I7SUFDL0IsK0JBQStCLEVBQS9CLDRDQUErQjtJQUMvQixpQ0FBaUMsRUFBakMsOENBQWlDO0lBQ2pDLHdCQUF3QixFQUF4QixxQ0FBd0I7SUFDeEIsK0JBQStCLEVBQS9CLDRDQUErQjtJQUMvQiwwQkFBMEIsRUFBMUIsdUNBQTBCO0lBQzFCLGlCQUFpQixF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QUFjLENBQUMsQ0FBQztBQUU1RTs7O0dBR0c7QUFDVSxRQUFBLGVBQWUsR0FBRywyQkFBbUIsQ0FBQyxJQUFJLENBQ3JELGNBQUssQ0FBQyxPQUFPLENBQUMsMENBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsc0JBQXNCLEdBQUcsdUJBQWUsQ0FBQyxJQUFJLENBQ3hELGNBQUssQ0FBQyxPQUFPLENBQUMscURBQTJCLENBQUMsQ0FDM0MsQ0FBQztBQUVGLHdEQUF3RDtBQUV4RDs7O0dBR0c7QUFDVSxRQUFBLG9CQUFvQixHQUFHLHNCQUFjLENBQUM7QUFFbkQ7OztHQUdHO0FBQ1UsUUFBQSxnQkFBZ0IsR0FBRyw0QkFBb0IsQ0FBQyxJQUFJLENBQ3ZELGVBQU0sQ0FBQyxPQUFPLENBQUMsMENBQXNCLENBQUMsQ0FDdkMsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsdUJBQXVCLEdBQUcsNEJBQW9CLENBQUMsSUFBSSxDQUM5RCxlQUFNLENBQUMsT0FBTyxDQUFDLGlEQUE2QixDQUFDLENBQzlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQge1xuICBBZGRQZXJtaXNzaW9uQ29tbWFuZCxcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kLFxuICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZE91dHB1dCxcbiAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kLFxuICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZElucHV0LFxuICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVUb3BpY0NvbW1hbmQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZElucHV0LFxuICBDcmVhdGVUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZE91dHB1dCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZCxcbiAgRGVsZXRlVG9waWNDb21tYW5kSW5wdXQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZE91dHB1dCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0LFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZElucHV0LFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRPdXRwdXQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kLFxuICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZElucHV0LFxuICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZE91dHB1dCxcbiAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZCxcbiAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kT3V0cHV0LFxuICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kLFxuICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kSW5wdXQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kSW5wdXQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZE91dHB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZElucHV0LFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kT3V0cHV0LFxuICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZElucHV0LFxuICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kLFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZElucHV0LFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgTGlzdFRvcGljc0NvbW1hbmQsXG4gIExpc3RUb3BpY3NDb21tYW5kSW5wdXQsXG4gIExpc3RUb3BpY3NDb21tYW5kT3V0cHV0LFxuICBPcHRJblBob25lTnVtYmVyQ29tbWFuZCxcbiAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hCYXRjaENvbW1hbmQsXG4gIFB1Ymxpc2hCYXRjaENvbW1hbmRJbnB1dCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZE91dHB1dCxcbiAgUHVibGlzaENvbW1hbmQsXG4gIFB1Ymxpc2hDb21tYW5kSW5wdXQsXG4gIFB1Ymxpc2hDb21tYW5kT3V0cHV0LFxuICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgU05TU2VydmljZUV4Y2VwdGlvbixcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFN1YnNjcmliZUNvbW1hbmQsXG4gIFN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgU3Vic2NyaWJlQ29tbWFuZE91dHB1dCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kLFxuICBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBVbnN1YnNjcmliZUNvbW1hbmQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICBVbnN1YnNjcmliZUNvbW1hbmRPdXRwdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXNuc1wiO1xuaW1wb3J0IHsgSHR0cEhhbmRsZXJPcHRpb25zIGFzIF9fSHR0cEhhbmRsZXJPcHRpb25zIH0gZnJvbSBcIkBhd3Mtc2RrL3R5cGVzXCI7XG5pbXBvcnQgeyBDb250ZXh0LCBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWFkb25seVJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIEF1dGhvcml6YXRpb25FcnJvcixcbiAgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3IsXG4gIEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvcixcbiAgQ29uY3VycmVudEFjY2Vzc0Vycm9yLFxuICBFbXB0eUJhdGNoUmVxdWVzdEVycm9yLFxuICBFbmRwb2ludERpc2FibGVkRXJyb3IsXG4gIEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvcixcbiAgSW50ZXJuYWxFcnJvcixcbiAgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yLFxuICBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gIEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yLFxuICBJbnZhbGlkU2VjdXJpdHlFcnJvcixcbiAgS01TQWNjZXNzRGVuaWVkRXJyb3IsXG4gIEtNU0Rpc2FibGVkRXJyb3IsXG4gIEtNU0ludmFsaWRTdGF0ZUVycm9yLFxuICBLTVNOb3RGb3VuZEVycm9yLFxuICBLTVNPcHRJblJlcXVpcmVkRXJyb3IsXG4gIEtNU1Rocm90dGxpbmdFcnJvcixcbiAgTm90Rm91bmRFcnJvcixcbiAgT3B0ZWRPdXRFcnJvcixcbiAgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3IsXG4gIFJlc291cmNlTm90Rm91bmRFcnJvcixcbiAgU2RrRXJyb3IsXG4gIFN0YWxlVGFnRXJyb3IsXG4gIFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvcixcbiAgVGFnTGltaXRFeGNlZWRlZEVycm9yLFxuICBUYWdQb2xpY3lFcnJvcixcbiAgVGFnZ2VkRXhjZXB0aW9uLFxuICBUaHJvdHRsZWRFcnJvcixcbiAgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yLFxuICBUb3BpY0xpbWl0RXhjZWVkZWRFcnJvcixcbiAgVXNlckVycm9yLFxuICBWYWxpZGF0aW9uRXJyb3IsXG4gIFZlcmlmaWNhdGlvbkVycm9yLFxufSBmcm9tIFwiLi9FcnJvcnNcIjtcbmltcG9ydCB7XG4gIERlZmF1bHRTTlNDbGllbnRJbnN0YW5jZUxheWVyLFxuICBTTlNDbGllbnRJbnN0YW5jZSxcbiAgU05TQ2xpZW50SW5zdGFuY2VMYXllcixcbn0gZnJvbSBcIi4vU05TQ2xpZW50SW5zdGFuY2VcIjtcbmltcG9ydCB7IERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL1NOU0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBBZGRQZXJtaXNzaW9uQ29tbWFuZCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kLFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kLFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgRGVsZXRlVG9waWNDb21tYW5kLFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZCxcbiAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kLFxuICBMaXN0VG9waWNzQ29tbWFuZCxcbiAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmQsXG4gIFB1Ymxpc2hDb21tYW5kLFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kLFxuICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU3Vic2NyaWJlQ29tbWFuZCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kLFxuICBVbnN1YnNjcmliZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxufTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTTlNTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWRkUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICBhZGRQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kfVxuICAgKi9cbiAgY2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dChcbiAgICBhcmdzOiBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjb25maXJtU3Vic2NyaXB0aW9uKFxuICAgIGFyZ3M6IENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvcixcbiAgICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlUGxhdGZvcm1FbmRwb2ludChcbiAgICBhcmdzOiBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE9wdGVkT3V0RXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBVc2VyRXJyb3IsXG4gICAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUb3BpY0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVUb3BpYyhcbiAgICBhcmdzOiBDcmVhdGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IFN0YWxlVGFnRXJyb3JcbiAgICB8IFRhZ0xpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgVGFnUG9saWN5RXJyb3JcbiAgICB8IFRvcGljTGltaXRFeGNlZWRlZEVycm9yLFxuICAgIENyZWF0ZVRvcGljQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVFbmRwb2ludENvbW1hbmR9XG4gICAqL1xuICBkZWxldGVFbmRwb2ludChcbiAgICBhcmdzOiBEZWxldGVFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIERlbGV0ZUVuZHBvaW50Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVXNlckVycm9yLFxuICAgIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVG9waWNDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlVG9waWMoXG4gICAgYXJnczogRGVsZXRlVG9waWNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IFN0YWxlVGFnRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yLFxuICAgIERlbGV0ZVRvcGljQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmR9XG4gICAqL1xuICBnZXREYXRhUHJvdGVjdGlvblBvbGljeShcbiAgICBhcmdzOiBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0RW5kcG9pbnRBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U01TQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U01TU2FuZGJveEFjY291bnRTdGF0dXMoXG4gICAgYXJnczogR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IFRocm90dGxlZEVycm9yLFxuICAgIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFRvcGljQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgbGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbihcbiAgICBhcmdzOiBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RPcmlnaW5hdGlvbk51bWJlcnMoXG4gICAgYXJnczogTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3IsXG4gICAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZH1cbiAgICovXG4gIGxpc3RQaG9uZU51bWJlcnNPcHRlZE91dChcbiAgICBhcmdzOiBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnMoXG4gICAgYXJnczogTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gICAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0U01TU2FuZGJveFBob25lTnVtYmVycyhcbiAgICBhcmdzOiBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RTdWJzY3JpcHRpb25zKFxuICAgIGFyZ3M6IExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gICAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmR9XG4gICAqL1xuICBsaXN0U3Vic2NyaXB0aW9uc0J5VG9waWMoXG4gICAgYXJnczogTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRhZ3NGb3JSZXNvdXJjZShcbiAgICBhcmdzOiBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yLFxuICAgIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUb3BpY3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRvcGljcyhcbiAgICBhcmdzOiBMaXN0VG9waWNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gICAgTGlzdFRvcGljc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgT3B0SW5QaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBvcHRJblBob25lTnVtYmVyKFxuICAgIGFyZ3M6IE9wdEluUGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBPcHRJblBob25lTnVtYmVyQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdWJsaXNoQ29tbWFuZH1cbiAgICovXG4gIHB1Ymxpc2goXG4gICAgYXJnczogUHVibGlzaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBFbmRwb2ludERpc2FibGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEtNU0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLTVNEaXNhYmxlZEVycm9yXG4gICAgfCBLTVNJbnZhbGlkU3RhdGVFcnJvclxuICAgIHwgS01TTm90Rm91bmRFcnJvclxuICAgIHwgS01TT3B0SW5SZXF1aXJlZEVycm9yXG4gICAgfCBLTVNUaHJvdHRsaW5nRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yXG4gICAgfCBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yLFxuICAgIFB1Ymxpc2hDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1Ymxpc2hCYXRjaENvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoQmF0Y2goXG4gICAgYXJnczogUHVibGlzaEJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3JcbiAgICB8IEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IEVuZHBvaW50RGlzYWJsZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLTVNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS01TRGlzYWJsZWRFcnJvclxuICAgIHwgS01TSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEtNU05vdEZvdW5kRXJyb3JcbiAgICB8IEtNU09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS01TVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvclxuICAgIHwgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yLFxuICAgIFB1Ymxpc2hCYXRjaENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgcHV0RGF0YVByb3RlY3Rpb25Qb2xpY3koXG4gICAgYXJnczogUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZW1vdmVQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRFbmRwb2ludEF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0U01TQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRTTVNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0VG9waWNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3Vic2NyaWJlQ29tbWFuZH1cbiAgICovXG4gIHN1YnNjcmliZShcbiAgICBhcmdzOiBTdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXJyb3IsXG4gICAgU3Vic2NyaWJlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUYWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB0YWdSZXNvdXJjZShcbiAgICBhcmdzOiBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yLFxuICAgIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnN1YnNjcmliZUNvbW1hbmR9XG4gICAqL1xuICB1bnN1YnNjcmliZShcbiAgICBhcmdzOiBVbnN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFVuc3Vic2NyaWJlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnRhZ1Jlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIHVudGFnUmVzb3VyY2UoXG4gICAgYXJnczogVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yLFxuICAgIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICB2ZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVmVyaWZpY2F0aW9uRXJyb3IsXG4gICAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dFxuICA+O1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU1NlcnZpY2UgPSBDb250ZXh0LlRhZzxTTlNTZXJ2aWNlPihcbiAgU3ltYm9sLmZvcihcIkBlZmZlY3QtYXdzL2NsaWVudC1zbnMvU05TU2VydmljZVwiKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlU05TU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKFNOU0NsaWVudEluc3RhbmNlKTtcblxuICByZXR1cm4gUmVhZG9ubHlSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM6IGFueSkgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgdHJ5OiAoKSA9PiBjbGllbnQuc2VuZChuZXcgQ29tbWFuZEN0b3IoYXJncyksIG9wdGlvbnMgPz8ge30pLFxuICAgICAgICBjYXRjaDogKGUpID0+IHtcbiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIFNOU1NlcnZpY2VFeGNlcHRpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IFNlcnZpY2VFeGNlcHRpb24gPSBEYXRhLnRhZ2dlZDxcbiAgICAgICAgICAgICAgVGFnZ2VkRXhjZXB0aW9uPFNOU1NlcnZpY2VFeGNlcHRpb24+XG4gICAgICAgICAgICA+KGUubmFtZSk7XG5cbiAgICAgICAgICAgIHJldHVybiBTZXJ2aWNlRXhjZXB0aW9uKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gU2RrRXJyb3Ioe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBuYW1lOiBcIlNka0Vycm9yXCIsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSAoY29tbWFuZFswXS50b0xvd2VyQ2FzZSgpICsgY29tbWFuZC5zbGljZSgxKSkucmVwbGFjZShcbiAgICAgIC9Db21tYW5kJC8sXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgcmV0dXJuIHsgLi4uYWNjLCBbbWV0aG9kTmFtZV06IG1ldGhvZEltcGwgfTtcbiAgfSwge30pIGFzIFNOU1NlcnZpY2U7XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VTTlNTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoU05TU2VydmljZSwgbWFrZVNOU1NlcnZpY2UpO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgU05TU2VydmljZUxheWVyID0gQmFzZVNOU1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKFNOU0NsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNTZXJ2aWNlTGF5ZXIgPSBTTlNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0U05TQ2xpZW50Q29uZmlnTGF5ZXIpLFxuKTtcblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0gRGFuZ2VyIFpvbmUgLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLyoqXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU05TU2VydmljZUVmZmVjdCA9IG1ha2VTTlNTZXJ2aWNlO1xuXG4vKipcbiAqIEBzaW5jZSAwLjEuMFxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU1NlcnZpY2VFZmZlY3QgPSBCYXNlU05TU2VydmljZUVmZmVjdC5waXBlKFxuICBFZmZlY3QucHJvdmlkZShTTlNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDAuMS4wXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFNOU1NlcnZpY2VFZmZlY3QgPSBCYXNlU05TU2VydmljZUVmZmVjdC5waXBlKFxuICBFZmZlY3QucHJvdmlkZShEZWZhdWx0U05TQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuIl19
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
1
4
|
import { SNSClient } from "@aws-sdk/client-sns";
|
|
2
5
|
import * as Context from "effect/Context";
|
|
3
6
|
import * as Effect from "effect/Effect";
|
|
@@ -23,4 +26,4 @@ export const SNSClientInstanceLayer = Layer.effect(SNSClientInstance, makeSNSCli
|
|
|
23
26
|
* @category layers
|
|
24
27
|
*/
|
|
25
28
|
export const DefaultSNSClientInstanceLayer = SNSClientInstanceLayer.pipe(Layer.provide(DefaultSNSClientConfigLayer));
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TQ2xpZW50SW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU05TQ2xpZW50SW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLHVCQUF1QixHQUN4QixNQUFNLDJCQUEyQixDQUFDO0FBVW5DOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQzFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsMENBQTBDLENBQUMsQ0FDdkQsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQzdDLHVCQUF1QixFQUN2QixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLENBQ2xDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNoRCxpQkFBaUIsRUFDakIscUJBQXFCLENBQ3RCLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBRyxzQkFBc0IsQ0FBQyxJQUFJLENBQ3RFLEtBQUssQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7IFNOU0NsaWVudCB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc25zXCI7XG5pbXBvcnQgKiBhcyBDb250ZXh0IGZyb20gXCJlZmZlY3QvQ29udGV4dFwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0U05TQ2xpZW50Q29uZmlnTGF5ZXIsXG4gIFNOU0NsaWVudEluc3RhbmNlQ29uZmlnLFxufSBmcm9tIFwiLi9TTlNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTTlNDbGllbnRJbnN0YW5jZSB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgU05TQ2xpZW50SW5zdGFuY2UgPSBDb250ZXh0LlRhZzxTTlNDbGllbnRJbnN0YW5jZSwgU05TQ2xpZW50PihcbiAgU3ltYm9sLmZvcihcIkBlZmZlY3QtYXdzL2NsaWVudC1zbnMvU05TQ2xpZW50SW5zdGFuY2VcIiksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVNOU0NsaWVudEluc3RhbmNlID0gRWZmZWN0Lm1hcChcbiAgU05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIChjb25maWcpID0+IG5ldyBTTlNDbGllbnQoY29uZmlnKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNDbGllbnRJbnN0YW5jZUxheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBTTlNDbGllbnRJbnN0YW5jZSxcbiAgbWFrZVNOU0NsaWVudEluc3RhbmNlLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNDbGllbnRJbnN0YW5jZUxheWVyID0gU05TQ2xpZW50SW5zdGFuY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciksXG4pO1xuIl19
|
|
@@ -29,4 +29,4 @@ export const makeDefaultSNSClientInstanceConfig = Effect.gen(function* (_) {
|
|
|
29
29
|
* @category layers
|
|
30
30
|
*/
|
|
31
31
|
export const DefaultSNSClientConfigLayer = Layer.effect(SNSClientInstanceConfig, makeDefaultSNSClientInstanceConfig);
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU05TQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEtBQUssT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBVTFDOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBR2hELE1BQU0sQ0FBQyxHQUFHLENBQUMsZ0RBQWdELENBQUMsQ0FBQyxDQUFDO0FBRWhFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUkzQyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDekIsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQVMsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekMsT0FBTztRQUNMLE1BQU0sRUFBRTtZQUNOLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzVDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQy9DLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzlDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQzlDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQy9DO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUg7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDckQsdUJBQXVCLEVBQ3ZCLGtDQUFrQyxDQUNuQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHR5cGUgeyBTTlNDbGllbnRDb25maWcgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXNuc1wiO1xuaW1wb3J0ICogYXMgQ29udGV4dCBmcm9tIFwiZWZmZWN0L0NvbnRleHRcIjtcbmltcG9ydCAqIGFzIEVmZmVjdCBmcm9tIFwiZWZmZWN0L0VmZmVjdFwiO1xuaW1wb3J0ICogYXMgTGF5ZXIgZnJvbSBcImVmZmVjdC9MYXllclwiO1xuaW1wb3J0ICogYXMgUnVudGltZSBmcm9tIFwiZWZmZWN0L1J1bnRpbWVcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU05TQ2xpZW50SW5zdGFuY2VDb25maWcge1xuICByZWFkb25seSBfOiB1bmlxdWUgc3ltYm9sO1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU0NsaWVudEluc3RhbmNlQ29uZmlnID0gQ29udGV4dC5UYWc8XG4gIFNOU0NsaWVudEluc3RhbmNlQ29uZmlnLFxuICBTTlNDbGllbnRDb25maWdcbj4oU3ltYm9sLmZvcihcIkBlZmZlY3QtYXdzL2NsaWVudC1zbnMvU05TQ2xpZW50SW5zdGFuY2VDb25maWdcIikpO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZURlZmF1bHRTTlNDbGllbnRJbnN0YW5jZUNvbmZpZzogRWZmZWN0LkVmZmVjdDxcbiAgbmV2ZXIsXG4gIG5ldmVyLFxuICBTTlNDbGllbnRDb25maWdcbj4gPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBydW50aW1lID0geWllbGQqIF8oRWZmZWN0LnJ1bnRpbWU8bmV2ZXI+KCkpO1xuICBjb25zdCBydW5TeW5jID0gUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpO1xuXG4gIHJldHVybiB7XG4gICAgbG9nZ2VyOiB7XG4gICAgICBpbmZvOiAobSkgPT4gRWZmZWN0LmxvZ0luZm8obSkucGlwZShydW5TeW5jKSxcbiAgICAgIHdhcm46IChtKSA9PiBFZmZlY3QubG9nV2FybmluZyhtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgZXJyb3I6IChtKSA9PiBFZmZlY3QubG9nRXJyb3IobSkucGlwZShydW5TeW5jKSxcbiAgICAgIGRlYnVnOiAobSkgPT4gRWZmZWN0LmxvZ0RlYnVnKG0pLnBpcGUocnVuU3luYyksXG4gICAgICB0cmFjZTogKG0pID0+IEVmZmVjdC5sb2dUcmFjZShtKS5waXBlKHJ1blN5bmMpLFxuICAgIH0sXG4gIH07XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciA9IExheWVyLmVmZmVjdChcbiAgU05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIG1ha2VEZWZhdWx0U05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG4pO1xuIl19
|
package/lib/esm/SNSService.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
1
4
|
import { AddPermissionCommand, CheckIfPhoneNumberIsOptedOutCommand, ConfirmSubscriptionCommand, CreatePlatformApplicationCommand, CreatePlatformEndpointCommand, CreateSMSSandboxPhoneNumberCommand, CreateTopicCommand, DeleteEndpointCommand, DeletePlatformApplicationCommand, DeleteSMSSandboxPhoneNumberCommand, DeleteTopicCommand, GetDataProtectionPolicyCommand, GetEndpointAttributesCommand, GetPlatformApplicationAttributesCommand, GetSMSAttributesCommand, GetSMSSandboxAccountStatusCommand, GetSubscriptionAttributesCommand, GetTopicAttributesCommand, ListEndpointsByPlatformApplicationCommand, ListOriginationNumbersCommand, ListPhoneNumbersOptedOutCommand, ListPlatformApplicationsCommand, ListSMSSandboxPhoneNumbersCommand, ListSubscriptionsByTopicCommand, ListSubscriptionsCommand, ListTagsForResourceCommand, ListTopicsCommand, OptInPhoneNumberCommand, PublishBatchCommand, PublishCommand, PutDataProtectionPolicyCommand, RemovePermissionCommand, SNSServiceException, SetEndpointAttributesCommand, SetPlatformApplicationAttributesCommand, SetSMSAttributesCommand, SetSubscriptionAttributesCommand, SetTopicAttributesCommand, SubscribeCommand, TagResourceCommand, UnsubscribeCommand, UntagResourceCommand, VerifySMSSandboxPhoneNumberCommand, } from "@aws-sdk/client-sns";
|
|
2
5
|
import { Context, Data, Effect, Layer, ReadonlyRecord } from "effect";
|
|
3
6
|
import { SdkError, } from "./Errors";
|
|
@@ -103,15 +106,18 @@ export const SNSServiceLayer = BaseSNSServiceLayer.pipe(Layer.provide(SNSClientI
|
|
|
103
106
|
export const DefaultSNSServiceLayer = SNSServiceLayer.pipe(Layer.provide(DefaultSNSClientConfigLayer));
|
|
104
107
|
// -------------------- Danger Zone --------------------
|
|
105
108
|
/**
|
|
109
|
+
* @since 0.1.0
|
|
106
110
|
* @deprecated
|
|
107
111
|
*/
|
|
108
112
|
export const BaseSNSServiceEffect = makeSNSService;
|
|
109
113
|
/**
|
|
114
|
+
* @since 0.1.0
|
|
110
115
|
* @deprecated
|
|
111
116
|
*/
|
|
112
117
|
export const SNSServiceEffect = BaseSNSServiceEffect.pipe(Effect.provide(SNSClientInstanceLayer));
|
|
113
118
|
/**
|
|
119
|
+
* @since 0.1.0
|
|
114
120
|
* @deprecated
|
|
115
121
|
*/
|
|
116
122
|
export const DefaultSNSServiceEffect = BaseSNSServiceEffect.pipe(Effect.provide(DefaultSNSClientInstanceLayer));
|
|
117
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TTlNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxvQkFBb0IsRUFHcEIsbUNBQW1DLEVBR25DLDBCQUEwQixFQUcxQixnQ0FBZ0MsRUFHaEMsNkJBQTZCLEVBRzdCLGtDQUFrQyxFQUdsQyxrQkFBa0IsRUFHbEIscUJBQXFCLEVBR3JCLGdDQUFnQyxFQUdoQyxrQ0FBa0MsRUFHbEMsa0JBQWtCLEVBR2xCLDhCQUE4QixFQUc5Qiw0QkFBNEIsRUFHNUIsdUNBQXVDLEVBR3ZDLHVCQUF1QixFQUd2QixpQ0FBaUMsRUFHakMsZ0NBQWdDLEVBR2hDLHlCQUF5QixFQUd6Qix5Q0FBeUMsRUFHekMsNkJBQTZCLEVBRzdCLCtCQUErQixFQUcvQiwrQkFBK0IsRUFHL0IsaUNBQWlDLEVBR2pDLCtCQUErQixFQUcvQix3QkFBd0IsRUFHeEIsMEJBQTBCLEVBRzFCLGlCQUFpQixFQUdqQix1QkFBdUIsRUFHdkIsbUJBQW1CLEVBR25CLGNBQWMsRUFHZCw4QkFBOEIsRUFHOUIsdUJBQXVCLEVBR3ZCLG1CQUFtQixFQUNuQiw0QkFBNEIsRUFHNUIsdUNBQXVDLEVBR3ZDLHVCQUF1QixFQUd2QixnQ0FBZ0MsRUFHaEMseUJBQXlCLEVBR3pCLGdCQUFnQixFQUdoQixrQkFBa0IsRUFHbEIsa0JBQWtCLEVBR2xCLG9CQUFvQixFQUdwQixrQ0FBa0MsR0FHbkMsTUFBTSxxQkFBcUIsQ0FBQztBQUU3QixPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN0RSxPQUFPLEVBdUJMLFFBQVEsR0FZVCxNQUFNLFVBQVUsQ0FBQztBQUNsQixPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLGlCQUFpQixFQUNqQixzQkFBc0IsR0FDdkIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3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QUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBRTVFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FDM0MsQ0FBQztBQUVGLHdEQUF3RDtBQUV4RDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGNBQWMsQ0FBQztBQUVuRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FDdkQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUN2QyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQzlELE1BQU0sQ0FBQyxPQUFPLENBQUMsNkJBQTZCLENBQUMsQ0FDOUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICBBZGRQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kT3V0cHV0LFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kSW5wdXQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kLFxuICBEZWxldGVFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlVG9waWNDb21tYW5kLFxuICBEZWxldGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlVG9waWNDb21tYW5kT3V0cHV0LFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kSW5wdXQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kSW5wdXQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kLFxuICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kLFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kSW5wdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kSW5wdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBMaXN0VG9waWNzQ29tbWFuZCxcbiAgTGlzdFRvcGljc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFRvcGljc0NvbW1hbmRPdXRwdXQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kLFxuICBPcHRJblBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICBPcHRJblBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZElucHV0LFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kT3V0cHV0LFxuICBQdWJsaXNoQ29tbWFuZCxcbiAgUHVibGlzaENvbW1hbmRJbnB1dCxcbiAgUHVibGlzaENvbW1hbmRPdXRwdXQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBTTlNTZXJ2aWNlRXhjZXB0aW9uLFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU3Vic2NyaWJlQ29tbWFuZCxcbiAgU3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICBTdWJzY3JpYmVDb21tYW5kT3V0cHV0LFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZE91dHB1dCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc25zXCI7XG5pbXBvcnQgeyBIdHRwSGFuZGxlck9wdGlvbnMgYXMgX19IdHRwSGFuZGxlck9wdGlvbnMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IENvbnRleHQsIERhdGEsIEVmZmVjdCwgTGF5ZXIsIFJlYWRvbmx5UmVjb3JkIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHtcbiAgQXV0aG9yaXphdGlvbkVycm9yLFxuICBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvcixcbiAgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yLFxuICBDb25jdXJyZW50QWNjZXNzRXJyb3IsXG4gIEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3IsXG4gIEVuZHBvaW50RGlzYWJsZWRFcnJvcixcbiAgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yLFxuICBJbnRlcm5hbEVycm9yLFxuICBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3IsXG4gIEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IsXG4gIEludmFsaWRTZWN1cml0eUVycm9yLFxuICBLTVNBY2Nlc3NEZW5pZWRFcnJvcixcbiAgS01TRGlzYWJsZWRFcnJvcixcbiAgS01TSW52YWxpZFN0YXRlRXJyb3IsXG4gIEtNU05vdEZvdW5kRXJyb3IsXG4gIEtNU09wdEluUmVxdWlyZWRFcnJvcixcbiAgS01TVGhyb3R0bGluZ0Vycm9yLFxuICBOb3RGb3VuZEVycm9yLFxuICBPcHRlZE91dEVycm9yLFxuICBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvcixcbiAgUmVzb3VyY2VOb3RGb3VuZEVycm9yLFxuICBTZGtFcnJvcixcbiAgU3RhbGVUYWdFcnJvcixcbiAgU3Vic2NyaXB0aW9uTGltaXRFeGNlZWRlZEVycm9yLFxuICBUYWdMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFRhZ1BvbGljeUVycm9yLFxuICBUYWdnZWRFeGNlcHRpb24sXG4gIFRocm90dGxlZEVycm9yLFxuICBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3IsXG4gIFRvcGljTGltaXRFeGNlZWRlZEVycm9yLFxuICBVc2VyRXJyb3IsXG4gIFZhbGlkYXRpb25FcnJvcixcbiAgVmVyaWZpY2F0aW9uRXJyb3IsXG59IGZyb20gXCIuL0Vycm9yc1wiO1xuaW1wb3J0IHtcbiAgRGVmYXVsdFNOU0NsaWVudEluc3RhbmNlTGF5ZXIsXG4gIFNOU0NsaWVudEluc3RhbmNlLFxuICBTTlNDbGllbnRJbnN0YW5jZUxheWVyLFxufSBmcm9tIFwiLi9TTlNDbGllbnRJbnN0YW5jZVwiO1xuaW1wb3J0IHsgRGVmYXVsdFNOU0NsaWVudENvbmZpZ0xheWVyIH0gZnJvbSBcIi4vU05TQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcblxuY29uc3QgY29tbWFuZHMgPSB7XG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZCxcbiAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZCxcbiAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kLFxuICBEZWxldGVFbmRwb2ludENvbW1hbmQsXG4gIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBEZWxldGVUb3BpY0NvbW1hbmQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kLFxuICBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kLFxuICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kLFxuICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kLFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmQsXG4gIExpc3RUb3BpY3NDb21tYW5kLFxuICBPcHRJblBob25lTnVtYmVyQ29tbWFuZCxcbiAgUHVibGlzaENvbW1hbmQsXG4gIFB1Ymxpc2hCYXRjaENvbW1hbmQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmQsXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBTdWJzY3JpYmVDb21tYW5kLFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG59O1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNOU1NlcnZpY2Uge1xuICByZWFkb25seSBfOiB1bmlxdWUgc3ltYm9sO1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBZGRQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGFkZFBlcm1pc3Npb24oXG4gICAgYXJnczogQWRkUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmR9XG4gICAqL1xuICBjaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0KFxuICAgIGFyZ3M6IENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNvbmZpcm1TdWJzY3JpcHRpb24oXG4gICAgYXJnczogQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgU3Vic2NyaXB0aW9uTGltaXRFeGNlZWRlZEVycm9yLFxuICAgIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgY3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbihcbiAgICBhcmdzOiBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gICAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVQbGF0Zm9ybUVuZHBvaW50KFxuICAgIGFyZ3M6IENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgT3B0ZWRPdXRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFVzZXJFcnJvcixcbiAgICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVRvcGljQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVRvcGljKFxuICAgIGFyZ3M6IENyZWF0ZVRvcGljQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvclxuICAgIHwgVG9waWNMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gICAgQ3JlYXRlVG9waWNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUVuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUVuZHBvaW50KFxuICAgIGFyZ3M6IERlbGV0ZUVuZHBvaW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gICAgRGVsZXRlRW5kcG9pbnRDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbihcbiAgICBhcmdzOiBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gICAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlcihcbiAgICBhcmdzOiBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBVc2VyRXJyb3IsXG4gICAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVUb3BpY0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVUb3BpYyhcbiAgICBhcmdzOiBEZWxldGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnUG9saWN5RXJyb3IsXG4gICAgRGVsZXRlVG9waWNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZH1cbiAgICovXG4gIGdldERhdGFQcm90ZWN0aW9uUG9saWN5KFxuICAgIGFyZ3M6IEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRFbmRwb2ludEF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U01TQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRTTVNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmR9XG4gICAqL1xuICBnZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1cyhcbiAgICBhcmdzOiBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0VG9waWNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBsaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uKFxuICAgIGFyZ3M6IExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE9yaWdpbmF0aW9uTnVtYmVycyhcbiAgICBhcmdzOiBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvcixcbiAgICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kfVxuICAgKi9cbiAgbGlzdFBob25lTnVtYmVyc09wdGVkT3V0KFxuICAgIGFyZ3M6IExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RQbGF0Zm9ybUFwcGxpY2F0aW9ucyhcbiAgICBhcmdzOiBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzKFxuICAgIGFyZ3M6IExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFN1YnNjcmlwdGlvbnMoXG4gICAgYXJnczogTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZH1cbiAgICovXG4gIGxpc3RTdWJzY3JpcHRpb25zQnlUb3BpYyhcbiAgICBhcmdzOiBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICBsaXN0VGFnc0ZvclJlc291cmNlKFxuICAgIGFyZ3M6IExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGFnUG9saWN5RXJyb3IsXG4gICAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFRvcGljc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0VG9waWNzKFxuICAgIGFyZ3M6IExpc3RUb3BpY3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBMaXN0VG9waWNzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBPcHRJblBob25lTnVtYmVyQ29tbWFuZH1cbiAgICovXG4gIG9wdEluUGhvbmVOdW1iZXIoXG4gICAgYXJnczogT3B0SW5QaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1Ymxpc2hDb21tYW5kfVxuICAgKi9cbiAgcHVibGlzaChcbiAgICBhcmdzOiBQdWJsaXNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEVuZHBvaW50RGlzYWJsZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgS01TQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEtNU0Rpc2FibGVkRXJyb3JcbiAgICB8IEtNU0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLTVNOb3RGb3VuZEVycm9yXG4gICAgfCBLTVNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEtNU1Rocm90dGxpbmdFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3JcbiAgICB8IFBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3IsXG4gICAgUHVibGlzaENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVibGlzaEJhdGNoQ29tbWFuZH1cbiAgICovXG4gIHB1Ymxpc2hCYXRjaChcbiAgICBhcmdzOiBQdWJsaXNoQmF0Y2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3JcbiAgICB8IEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvclxuICAgIHwgRW1wdHlCYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgRW5kcG9pbnREaXNhYmxlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEtNU0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLTVNEaXNhYmxlZEVycm9yXG4gICAgfCBLTVNJbnZhbGlkU3RhdGVFcnJvclxuICAgIHwgS01TTm90Rm91bmRFcnJvclxuICAgIHwgS01TT3B0SW5SZXF1aXJlZEVycm9yXG4gICAgfCBLTVNUaHJvdHRsaW5nRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yXG4gICAgfCBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvclxuICAgIHwgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3IsXG4gICAgUHVibGlzaEJhdGNoQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmR9XG4gICAqL1xuICBwdXREYXRhUHJvdGVjdGlvblBvbGljeShcbiAgICBhcmdzOiBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlbW92ZVBlcm1pc3Npb24oXG4gICAgYXJnczogUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldEVuZHBvaW50QXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFNNU0F0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRUb3BpY0F0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTdWJzY3JpYmVDb21tYW5kfVxuICAgKi9cbiAgc3Vic2NyaWJlKFxuICAgIGFyZ3M6IFN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvcixcbiAgICBTdWJzY3JpYmVDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFRhZ1Jlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIHRhZ1Jlc291cmNlKFxuICAgIGFyZ3M6IFRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFN0YWxlVGFnRXJyb3JcbiAgICB8IFRhZ0xpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgVGFnUG9saWN5RXJyb3IsXG4gICAgVGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVuc3Vic2NyaWJlQ29tbWFuZH1cbiAgICovXG4gIHVuc3Vic2NyaWJlKFxuICAgIGFyZ3M6IFVuc3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgVW5zdWJzY3JpYmVDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVudGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdW50YWdSZXNvdXJjZShcbiAgICBhcmdzOiBVbnRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFN0YWxlVGFnRXJyb3JcbiAgICB8IFRhZ0xpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgVGFnUG9saWN5RXJyb3IsXG4gICAgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZH1cbiAgICovXG4gIHZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlcihcbiAgICBhcmdzOiBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBWZXJpZmljYXRpb25FcnJvcixcbiAgICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0XG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgU05TU2VydmljZSA9IENvbnRleHQuVGFnPFNOU1NlcnZpY2U+KFxuICBTeW1ib2wuZm9yKFwiQGVmZmVjdC1hd3MvY2xpZW50LXNucy9TTlNTZXJ2aWNlXCIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VTTlNTZXJ2aWNlID0gRWZmZWN0LmdlbihmdW5jdGlvbiogKF8pIHtcbiAgY29uc3QgY2xpZW50ID0geWllbGQqIF8oU05TQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWFkb25seVJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKGFyZ3M6IGFueSwgb3B0aW9uczogYW55KSA9PlxuICAgICAgRWZmZWN0LnRyeVByb21pc2Uoe1xuICAgICAgICB0cnk6ICgpID0+IGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwgb3B0aW9ucyA/PyB7fSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgU05TU2VydmljZUV4Y2VwdGlvbikge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248U05TU2VydmljZUV4Y2VwdGlvbj5cbiAgICAgICAgICAgID4oZS5uYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIFNlcnZpY2VFeGNlcHRpb24oe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgU05TU2VydmljZTtcbn0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgQmFzZVNOU1NlcnZpY2VMYXllciA9IExheWVyLmVmZmVjdChTTlNTZXJ2aWNlLCBtYWtlU05TU2VydmljZSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNTZXJ2aWNlTGF5ZXIgPSBCYXNlU05TU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoU05TQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFNOU1NlcnZpY2VMYXllciA9IFNOU1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLSBEYW5nZXIgWm9uZSAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU05TU2VydmljZUVmZmVjdCA9IG1ha2VTTlNTZXJ2aWNlO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNTZXJ2aWNlRWZmZWN0ID0gQmFzZVNOU1NlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoU05TQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U05TU2VydmljZUVmZmVjdCA9IEJhc2VTTlNTZXJ2aWNlRWZmZWN0LnBpcGUoXG4gIEVmZmVjdC5wcm92aWRlKERlZmF1bHRTTlNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG4iXX0=
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TTlNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUNMLG9CQUFvQixFQUdwQixtQ0FBbUMsRUFHbkMsMEJBQTBCLEVBRzFCLGdDQUFnQyxFQUdoQyw2QkFBNkIsRUFHN0Isa0NBQWtDLEVBR2xDLGtCQUFrQixFQUdsQixxQkFBcUIsRUFHckIsZ0NBQWdDLEVBR2hDLGtDQUFrQyxFQUdsQyxrQkFBa0IsRUFHbEIsOEJBQThCLEVBRzlCLDRCQUE0QixFQUc1Qix1Q0FBdUMsRUFHdkMsdUJBQXVCLEVBR3ZCLGlDQUFpQyxFQUdqQyxnQ0FBZ0MsRUFHaEMseUJBQXlCLEVBR3pCLHlDQUF5QyxFQUd6Qyw2QkFBNkIsRUFHN0IsK0JBQStCLEVBRy9CLCtCQUErQixFQUcvQixpQ0FBaUMsRUFHakMsK0JBQStCLEVBRy9CLHdCQUF3QixFQUd4QiwwQkFBMEIsRUFHMUIsaUJBQWlCLEVBR2pCLHVCQUF1QixFQUd2QixtQkFBbUIsRUFHbkIsY0FBYyxFQUdkLDhCQUE4QixFQUc5Qix1QkFBdUIsRUFHdkIsbUJBQW1CLEVBQ25CLDRCQUE0QixFQUc1Qix1Q0FBdUMsRUFHdkMsdUJBQXVCLEVBR3ZCLGdDQUFnQyxFQUdoQyx5QkFBeUIsRUFHekIsZ0JBQWdCLEVBR2hCLGtCQUFrQixFQUdsQixrQkFBa0IsRUFHbEIsb0JBQW9CLEVBR3BCLGtDQUFrQyxHQUduQyxNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3RFLE9BQU8sRUF1QkwsUUFBUSxHQVlULE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFDTCw2QkFBNkIsRUFDN0IsaUJBQWlCLEVBQ2pCLHNCQUFzQixHQUN2QixNQUFNLHFCQUFx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Q0FBQyxDQUFDLE9BQU8sQ0FDdEUsVUFBVSxFQUNWLEVBQUUsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDOUMsQ0FBQyxFQUFFLEVBQUUsQ0FBZSxDQUFDO0FBQ3ZCLENBQUMsQ0FBQyxDQUFDO0FBRUg7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFFNUU7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FDckQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUN0QyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FDeEQsS0FBSyxDQUFDLE9BQU8sQ0FBQywyQkFBMkIsQ0FBQyxDQUMzQyxDQUFDO0FBRUYsd0RBQXdEO0FBRXhEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGNBQWMsQ0FBQztBQUVuRDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxvQkFBb0IsQ0FBQyxJQUFJLENBQ3ZELE1BQU0sQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FDdkMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FDOUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQyxDQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kLFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kLFxuICBDcmVhdGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVFbmRwb2ludENvbW1hbmQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZElucHV0LFxuICBEZWxldGVFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICBEZWxldGVUb3BpY0NvbW1hbmQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZElucHV0LFxuICBEZWxldGVUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kLFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZE91dHB1dCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZElucHV0LFxuICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZElucHV0LFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRJbnB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZE91dHB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIExpc3RUb3BpY3NDb21tYW5kLFxuICBMaXN0VG9waWNzQ29tbWFuZElucHV0LFxuICBMaXN0VG9waWNzQ29tbWFuZE91dHB1dCxcbiAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kLFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kSW5wdXQsXG4gIFB1Ymxpc2hCYXRjaENvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hDb21tYW5kLFxuICBQdWJsaXNoQ29tbWFuZElucHV0LFxuICBQdWJsaXNoQ29tbWFuZE91dHB1dCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0LFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFNOU1NlcnZpY2VFeGNlcHRpb24sXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTdWJzY3JpYmVDb21tYW5kLFxuICBTdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gIFN1YnNjcmliZUNvbW1hbmRPdXRwdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kLFxuICBVbnN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kT3V0cHV0LFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zbnNcIjtcbmltcG9ydCB7IEh0dHBIYW5kbGVyT3B0aW9ucyBhcyBfX0h0dHBIYW5kbGVyT3B0aW9ucyB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgQ29udGV4dCwgRGF0YSwgRWZmZWN0LCBMYXllciwgUmVhZG9ubHlSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBdXRob3JpemF0aW9uRXJyb3IsXG4gIEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yLFxuICBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3IsXG4gIENvbmN1cnJlbnRBY2Nlc3NFcnJvcixcbiAgRW1wdHlCYXRjaFJlcXVlc3RFcnJvcixcbiAgRW5kcG9pbnREaXNhYmxlZEVycm9yLFxuICBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIEludGVybmFsRXJyb3IsXG4gIEludmFsaWRCYXRjaEVudHJ5SWRFcnJvcixcbiAgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcixcbiAgSW52YWxpZFNlY3VyaXR5RXJyb3IsXG4gIEtNU0FjY2Vzc0RlbmllZEVycm9yLFxuICBLTVNEaXNhYmxlZEVycm9yLFxuICBLTVNJbnZhbGlkU3RhdGVFcnJvcixcbiAgS01TTm90Rm91bmRFcnJvcixcbiAgS01TT3B0SW5SZXF1aXJlZEVycm9yLFxuICBLTVNUaHJvdHRsaW5nRXJyb3IsXG4gIE5vdEZvdW5kRXJyb3IsXG4gIE9wdGVkT3V0RXJyb3IsXG4gIFBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEVycm9yLFxuICBSZXNvdXJjZU5vdEZvdW5kRXJyb3IsXG4gIFNka0Vycm9yLFxuICBTdGFsZVRhZ0Vycm9yLFxuICBTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFRhZ0xpbWl0RXhjZWVkZWRFcnJvcixcbiAgVGFnUG9saWN5RXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbiAgVGhyb3R0bGVkRXJyb3IsXG4gIFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvcixcbiAgVG9waWNMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFVzZXJFcnJvcixcbiAgVmFsaWRhdGlvbkVycm9yLFxuICBWZXJpZmljYXRpb25FcnJvcixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0U05TQ2xpZW50SW5zdGFuY2VMYXllcixcbiAgU05TQ2xpZW50SW5zdGFuY2UsXG4gIFNOU0NsaWVudEluc3RhbmNlTGF5ZXIsXG59IGZyb20gXCIuL1NOU0NsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0U05TQ2xpZW50Q29uZmlnTGF5ZXIgfSBmcm9tIFwiLi9TTlNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kLFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kLFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBDcmVhdGVUb3BpY0NvbW1hbmQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kLFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZCxcbiAgTGlzdFRvcGljc0NvbW1hbmQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kLFxuICBQdWJsaXNoQ29tbWFuZCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIFN1YnNjcmliZUNvbW1hbmQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kLFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbn07XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU05TU2VydmljZSB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFkZFBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgYWRkUGVybWlzc2lvbihcbiAgICBhcmdzOiBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBBZGRQZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZH1cbiAgICovXG4gIGNoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXQoXG4gICAgYXJnczogQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kfVxuICAgKi9cbiAgY29uZmlybVN1YnNjcmlwdGlvbihcbiAgICBhcmdzOiBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXJyb3IsXG4gICAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uKFxuICAgIGFyZ3M6IENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVBsYXRmb3JtRW5kcG9pbnQoXG4gICAgYXJnczogQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlcihcbiAgICBhcmdzOiBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBPcHRlZE91dEVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVXNlckVycm9yLFxuICAgIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlVG9waWNDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlVG9waWMoXG4gICAgYXJnczogQ3JlYXRlVG9waWNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gICAgfCBUb3BpY0xpbWl0RXhjZWVkZWRFcnJvcixcbiAgICBDcmVhdGVUb3BpY0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlRW5kcG9pbnQoXG4gICAgYXJnczogRGVsZXRlRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBEZWxldGVFbmRwb2ludENvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uKFxuICAgIGFyZ3M6IERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvcixcbiAgICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFVzZXJFcnJvcixcbiAgICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRvcGljQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVRvcGljKFxuICAgIGFyZ3M6IERlbGV0ZVRvcGljQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBEZWxldGVUb3BpY0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgZ2V0RGF0YVByb3RlY3Rpb25Qb2xpY3koXG4gICAgYXJnczogR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldEVuZHBvaW50QXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFNNU0F0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZH1cbiAgICovXG4gIGdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzKFxuICAgIGFyZ3M6IEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBUaHJvdHRsZWRFcnJvcixcbiAgICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yLFxuICAgIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRUb3BpY0F0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGxpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0T3JpZ2luYXRpb25OdW1iZXJzKFxuICAgIGFyZ3M6IExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yLFxuICAgIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmR9XG4gICAqL1xuICBsaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXQoXG4gICAgYXJnczogTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFBsYXRmb3JtQXBwbGljYXRpb25zKFxuICAgIGFyZ3M6IExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnMoXG4gICAgYXJnczogTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yLFxuICAgIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0U3Vic2NyaXB0aW9ucyhcbiAgICBhcmdzOiBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljKFxuICAgIGFyZ3M6IExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUYWdzRm9yUmVzb3VyY2UoXG4gICAgYXJnczogTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VG9waWNzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUb3BpY3MoXG4gICAgYXJnczogTGlzdFRvcGljc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICAgIExpc3RUb3BpY3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgb3B0SW5QaG9uZU51bWJlcihcbiAgICBhcmdzOiBPcHRJblBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVibGlzaENvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoKFxuICAgIGFyZ3M6IFB1Ymxpc2hDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRW5kcG9pbnREaXNhYmxlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLTVNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS01TRGlzYWJsZWRFcnJvclxuICAgIHwgS01TSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEtNU05vdEZvdW5kRXJyb3JcbiAgICB8IEtNU09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS01TVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvclxuICAgIHwgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvcixcbiAgICBQdWJsaXNoQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdWJsaXNoQmF0Y2hDb21tYW5kfVxuICAgKi9cbiAgcHVibGlzaEJhdGNoKFxuICAgIGFyZ3M6IFB1Ymxpc2hCYXRjaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFcnJvclxuICAgIHwgQmF0Y2hSZXF1ZXN0VG9vTG9uZ0Vycm9yXG4gICAgfCBFbXB0eUJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBFbmRwb2ludERpc2FibGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRCYXRjaEVudHJ5SWRFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgS01TQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEtNU0Rpc2FibGVkRXJyb3JcbiAgICB8IEtNU0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLTVNOb3RGb3VuZEVycm9yXG4gICAgfCBLTVNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEtNU1Rocm90dGxpbmdFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3JcbiAgICB8IFBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEVycm9yXG4gICAgfCBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvcixcbiAgICBQdWJsaXNoQmF0Y2hDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZH1cbiAgICovXG4gIHB1dERhdGFQcm90ZWN0aW9uUG9saWN5KFxuICAgIGFyZ3M6IFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgcmVtb3ZlUGVybWlzc2lvbihcbiAgICBhcmdzOiBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0RW5kcG9pbnRBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0U01TQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3IsXG4gICAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3IsXG4gICAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFRvcGljQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN1YnNjcmliZUNvbW1hbmR9XG4gICAqL1xuICBzdWJzY3JpYmUoXG4gICAgYXJnczogU3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgU3Vic2NyaXB0aW9uTGltaXRFeGNlZWRlZEVycm9yLFxuICAgIFN1YnNjcmliZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdGFnUmVzb3VyY2UoXG4gICAgYXJnczogVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW5zdWJzY3JpYmVDb21tYW5kfVxuICAgKi9cbiAgdW5zdWJzY3JpYmUoXG4gICAgYXJnczogVW5zdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvcixcbiAgICBVbnN1YnNjcmliZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW50YWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB1bnRhZ1Jlc291cmNlKFxuICAgIGFyZ3M6IFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvcixcbiAgICBVbnRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgdmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFZlcmlmaWNhdGlvbkVycm9yLFxuICAgIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXRcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNTZXJ2aWNlID0gQ29udGV4dC5UYWc8U05TU2VydmljZT4oXG4gIFN5bWJvbC5mb3IoXCJAZWZmZWN0LWF3cy9jbGllbnQtc25zL1NOU1NlcnZpY2VcIiksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVNOU1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhTTlNDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlYWRvbmx5UmVjb3JkLnRvRW50cmllcyhjb21tYW5kcykucmVkdWNlKChhY2MsIFtjb21tYW5kXSkgPT4ge1xuICAgIGNvbnN0IENvbW1hbmRDdG9yID0gY29tbWFuZHNbY29tbWFuZF0gYXMgYW55O1xuICAgIGNvbnN0IG1ldGhvZEltcGwgPSAoYXJnczogYW55LCBvcHRpb25zOiBhbnkpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKCkgPT4gY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCBvcHRpb25zID8/IHt9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBTTlNTZXJ2aWNlRXhjZXB0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBTZXJ2aWNlRXhjZXB0aW9uID0gRGF0YS50YWdnZWQ8XG4gICAgICAgICAgICAgIFRhZ2dlZEV4Y2VwdGlvbjxTTlNTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBTTlNTZXJ2aWNlO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlU05TU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFNOU1NlcnZpY2UsIG1ha2VTTlNTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU1NlcnZpY2VMYXllciA9IEJhc2VTTlNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShTTlNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0U05TU2VydmljZUxheWVyID0gU05TU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdFNOU0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tIERhbmdlciBab25lIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKlxuICogQHNpbmNlIDAuMS4wXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY29uc3QgQmFzZVNOU1NlcnZpY2VFZmZlY3QgPSBtYWtlU05TU2VydmljZTtcblxuLyoqXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNTZXJ2aWNlRWZmZWN0ID0gQmFzZVNOU1NlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoU05TQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAwLjEuMFxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNTZXJ2aWNlRWZmZWN0ID0gQmFzZVNOU1NlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoRGVmYXVsdFNOU0NsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -6,22 +6,23 @@
|
|
|
6
6
|
"organization": false
|
|
7
7
|
},
|
|
8
8
|
"devDependencies": {
|
|
9
|
+
"@effect/docgen": "^0.3.8",
|
|
9
10
|
"@types/jest": "^29.5.5",
|
|
10
|
-
"@types/node": "^
|
|
11
|
+
"@types/node": "^18",
|
|
11
12
|
"@typescript-eslint/eslint-plugin": "^6",
|
|
12
13
|
"@typescript-eslint/parser": "^6",
|
|
13
14
|
"aws-sdk-client-mock": "^3.0.0",
|
|
14
15
|
"aws-sdk-client-mock-jest": "^3.0.0",
|
|
16
|
+
"constructs": "^10.0.0",
|
|
15
17
|
"effect": "2.0.1",
|
|
16
18
|
"eslint": "^8",
|
|
17
19
|
"eslint-config-prettier": "^9.0.0",
|
|
18
|
-
"eslint-import-resolver-node": "^0.3.9",
|
|
19
20
|
"eslint-import-resolver-typescript": "^3.6.1",
|
|
20
21
|
"eslint-plugin-import": "^2.28.1",
|
|
21
22
|
"eslint-plugin-prettier": "^5.0.0",
|
|
22
23
|
"jest": "^29.7.0",
|
|
23
24
|
"prettier": "^3.0.3",
|
|
24
|
-
"projen": "^0.
|
|
25
|
+
"projen": "^0.79.6",
|
|
25
26
|
"ts-jest": "^29.1.1",
|
|
26
27
|
"typescript": "^5.2.2"
|
|
27
28
|
},
|
|
@@ -34,12 +35,14 @@
|
|
|
34
35
|
},
|
|
35
36
|
"main": "lib/index.js",
|
|
36
37
|
"license": "MIT",
|
|
38
|
+
"homepage": "https://floydspace.github.io/effect-aws",
|
|
37
39
|
"publishConfig": {
|
|
38
40
|
"access": "public"
|
|
39
41
|
},
|
|
40
|
-
"version": "1.0.
|
|
42
|
+
"version": "1.0.1",
|
|
41
43
|
"types": "lib/index.d.ts",
|
|
42
44
|
"module": "lib/esm/index.js",
|
|
45
|
+
"sideEffects": [],
|
|
43
46
|
"//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\".",
|
|
44
47
|
"scripts": {
|
|
45
48
|
"build": "npx projen build",
|
|
@@ -51,6 +54,7 @@
|
|
|
51
54
|
"pre-compile": "npx projen pre-compile",
|
|
52
55
|
"test": "npx projen test",
|
|
53
56
|
"test:watch": "npx projen test:watch",
|
|
54
|
-
"watch": "npx projen watch"
|
|
57
|
+
"watch": "npx projen watch",
|
|
58
|
+
"docgen": "docgen"
|
|
55
59
|
}
|
|
56
60
|
}
|
package/.gitattributes
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen".
|
|
2
|
-
|
|
3
|
-
/./tsconfig.esm.json linguist-generated
|
|
4
|
-
/.eslintrc.json linguist-generated
|
|
5
|
-
/.gitattributes linguist-generated
|
|
6
|
-
/.gitignore linguist-generated
|
|
7
|
-
/.npmignore linguist-generated
|
|
8
|
-
/.npmrc linguist-generated
|
|
9
|
-
/.prettierignore linguist-generated
|
|
10
|
-
/.prettierrc.json linguist-generated
|
|
11
|
-
/.projen/** linguist-generated
|
|
12
|
-
/.projen/deps.json linguist-generated
|
|
13
|
-
/.projen/files.json linguist-generated
|
|
14
|
-
/.projen/tasks.json linguist-generated
|
|
15
|
-
/jest.config.json linguist-generated
|
|
16
|
-
/LICENSE linguist-generated
|
|
17
|
-
/package.json linguist-generated
|
|
18
|
-
/pnpm-lock.yaml linguist-generated
|
|
19
|
-
/project.json linguist-generated
|
|
20
|
-
/tsconfig.dev.json linguist-generated
|
|
21
|
-
/tsconfig.json linguist-generated
|
package/.prettierignore
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
# ~~ Generated by projen. To modify, edit .projenrc.js and run "npx projen".
|
package/.prettierrc.json
DELETED