@effect-aws/client-lambda 0.4.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,119 @@
1
+ import { AddLayerVersionPermissionCommand, AddPermissionCommand, CreateAliasCommand, CreateCodeSigningConfigCommand, CreateEventSourceMappingCommand, CreateFunctionCommand, CreateFunctionUrlConfigCommand, DeleteAliasCommand, DeleteCodeSigningConfigCommand, DeleteEventSourceMappingCommand, DeleteFunctionCodeSigningConfigCommand, DeleteFunctionCommand, DeleteFunctionConcurrencyCommand, DeleteFunctionEventInvokeConfigCommand, DeleteFunctionUrlConfigCommand, DeleteLayerVersionCommand, DeleteProvisionedConcurrencyConfigCommand, GetAccountSettingsCommand, GetAliasCommand, GetCodeSigningConfigCommand, GetEventSourceMappingCommand, GetFunctionCodeSigningConfigCommand, GetFunctionCommand, GetFunctionConcurrencyCommand, GetFunctionConfigurationCommand, GetFunctionEventInvokeConfigCommand, GetFunctionUrlConfigCommand, GetLayerVersionByArnCommand, GetLayerVersionCommand, GetLayerVersionPolicyCommand, GetPolicyCommand, GetProvisionedConcurrencyConfigCommand, GetRuntimeManagementConfigCommand, InvokeAsyncCommand, InvokeCommand, InvokeWithResponseStreamCommand, ListAliasesCommand, ListCodeSigningConfigsCommand, ListEventSourceMappingsCommand, ListFunctionEventInvokeConfigsCommand, ListFunctionUrlConfigsCommand, ListFunctionsByCodeSigningConfigCommand, ListFunctionsCommand, ListLayerVersionsCommand, ListLayersCommand, ListProvisionedConcurrencyConfigsCommand, ListTagsCommand, ListVersionsByFunctionCommand, PublishLayerVersionCommand, PublishVersionCommand, PutFunctionCodeSigningConfigCommand, PutFunctionConcurrencyCommand, PutFunctionEventInvokeConfigCommand, PutProvisionedConcurrencyConfigCommand, PutRuntimeManagementConfigCommand, RemoveLayerVersionPermissionCommand, RemovePermissionCommand, TagResourceCommand, UntagResourceCommand, UpdateAliasCommand, UpdateCodeSigningConfigCommand, UpdateEventSourceMappingCommand, UpdateFunctionCodeCommand, UpdateFunctionConfigurationCommand, UpdateFunctionEventInvokeConfigCommand, UpdateFunctionUrlConfigCommand, } from "@aws-sdk/client-lambda";
2
+ import { Context, Effect, Layer, ReadonlyRecord } from "effect";
3
+ import { DefaultLambdaClientInstanceLayer, LambdaClientInstance, LambdaClientInstanceLayer, } from "./LambdaClientInstance";
4
+ import { DefaultLambdaClientConfigLayer } from "./LambdaClientInstanceConfig";
5
+ const commands = {
6
+ AddLayerVersionPermissionCommand,
7
+ AddPermissionCommand,
8
+ CreateAliasCommand,
9
+ CreateCodeSigningConfigCommand,
10
+ CreateEventSourceMappingCommand,
11
+ CreateFunctionCommand,
12
+ CreateFunctionUrlConfigCommand,
13
+ DeleteAliasCommand,
14
+ DeleteCodeSigningConfigCommand,
15
+ DeleteEventSourceMappingCommand,
16
+ DeleteFunctionCommand,
17
+ DeleteFunctionCodeSigningConfigCommand,
18
+ DeleteFunctionConcurrencyCommand,
19
+ DeleteFunctionEventInvokeConfigCommand,
20
+ DeleteFunctionUrlConfigCommand,
21
+ DeleteLayerVersionCommand,
22
+ DeleteProvisionedConcurrencyConfigCommand,
23
+ GetAccountSettingsCommand,
24
+ GetAliasCommand,
25
+ GetCodeSigningConfigCommand,
26
+ GetEventSourceMappingCommand,
27
+ GetFunctionCommand,
28
+ GetFunctionCodeSigningConfigCommand,
29
+ GetFunctionConcurrencyCommand,
30
+ GetFunctionConfigurationCommand,
31
+ GetFunctionEventInvokeConfigCommand,
32
+ GetFunctionUrlConfigCommand,
33
+ GetLayerVersionCommand,
34
+ GetLayerVersionByArnCommand,
35
+ GetLayerVersionPolicyCommand,
36
+ GetPolicyCommand,
37
+ GetProvisionedConcurrencyConfigCommand,
38
+ GetRuntimeManagementConfigCommand,
39
+ InvokeCommand,
40
+ InvokeAsyncCommand,
41
+ InvokeWithResponseStreamCommand,
42
+ ListAliasesCommand,
43
+ ListCodeSigningConfigsCommand,
44
+ ListEventSourceMappingsCommand,
45
+ ListFunctionEventInvokeConfigsCommand,
46
+ ListFunctionsCommand,
47
+ ListFunctionsByCodeSigningConfigCommand,
48
+ ListFunctionUrlConfigsCommand,
49
+ ListLayersCommand,
50
+ ListLayerVersionsCommand,
51
+ ListProvisionedConcurrencyConfigsCommand,
52
+ ListTagsCommand,
53
+ ListVersionsByFunctionCommand,
54
+ PublishLayerVersionCommand,
55
+ PublishVersionCommand,
56
+ PutFunctionCodeSigningConfigCommand,
57
+ PutFunctionConcurrencyCommand,
58
+ PutFunctionEventInvokeConfigCommand,
59
+ PutProvisionedConcurrencyConfigCommand,
60
+ PutRuntimeManagementConfigCommand,
61
+ RemoveLayerVersionPermissionCommand,
62
+ RemovePermissionCommand,
63
+ TagResourceCommand,
64
+ UntagResourceCommand,
65
+ UpdateAliasCommand,
66
+ UpdateCodeSigningConfigCommand,
67
+ UpdateEventSourceMappingCommand,
68
+ UpdateFunctionCodeCommand,
69
+ UpdateFunctionConfigurationCommand,
70
+ UpdateFunctionEventInvokeConfigCommand,
71
+ UpdateFunctionUrlConfigCommand,
72
+ };
73
+ /**
74
+ * @since 1.0.0
75
+ * @category tags
76
+ */
77
+ export const LambdaService = Context.Tag(Symbol.for("@effect-aws/client-lambda/LambdaService"));
78
+ /**
79
+ * @since 1.0.0
80
+ * @category constructors
81
+ */
82
+ export const makeLambdaService = Effect.gen(function* (_) {
83
+ const client = yield* _(LambdaClientInstance);
84
+ return ReadonlyRecord.toEntries(commands).reduce((acc, [command]) => {
85
+ const CommandCtor = commands[command];
86
+ const methodImpl = (args, options) => Effect.tryPromise(() => client.send(new CommandCtor(args), options !== null && options !== void 0 ? options : {}));
87
+ const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
88
+ return { ...acc, [methodName]: methodImpl };
89
+ }, {});
90
+ });
91
+ /**
92
+ * @since 1.0.0
93
+ * @category layers
94
+ */
95
+ export const BaseLambdaServiceLayer = Layer.effect(LambdaService, makeLambdaService);
96
+ /**
97
+ * @since 1.0.0
98
+ * @category layers
99
+ */
100
+ export const LambdaServiceLayer = BaseLambdaServiceLayer.pipe(Layer.provide(LambdaClientInstanceLayer));
101
+ /**
102
+ * @since 1.0.0
103
+ * @category layers
104
+ */
105
+ export const DefaultLambdaServiceLayer = LambdaServiceLayer.pipe(Layer.provide(DefaultLambdaClientConfigLayer));
106
+ // -------------------- Danger Zone --------------------
107
+ /**
108
+ * @deprecated
109
+ */
110
+ export const BaseLambdaServiceEffect = makeLambdaService;
111
+ /**
112
+ * @deprecated
113
+ */
114
+ export const LambdaServiceEffect = BaseLambdaServiceEffect.pipe(Effect.provide(LambdaClientInstanceLayer));
115
+ /**
116
+ * @deprecated
117
+ */
118
+ export const DefaultLambdaServiceEffect = BaseLambdaServiceEffect.pipe(Effect.provide(DefaultLambdaClientInstanceLayer));
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGFtYmRhU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9MYW1iZGFTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxnQ0FBZ0MsRUFHaEMsb0JBQW9CLEVBR3BCLGtCQUFrQixFQUdsQiw4QkFBOEIsRUFHOUIsK0JBQStCLEVBRy9CLHFCQUFxQixFQUdyQiw4QkFBOEIsRUFHOUIsa0JBQWtCLEVBR2xCLDhCQUE4QixFQUc5QiwrQkFBK0IsRUFHL0Isc0NBQXNDLEVBR3RDLHFCQUFxQixFQUdyQixnQ0FBZ0MsRUFHaEMsc0NBQXNDLEVBR3RDLDhCQUE4QixFQUc5Qix5QkFBeUIsRUFHekIseUNBQXlDLEVBR3pDLHlCQUF5QixFQUd6QixlQUFlLEVBR2YsMkJBQTJCLEVBRzNCLDRCQUE0QixFQUc1QixtQ0FBbUMsRUFHbkMsa0JBQWtCLEVBR2xCLDZCQUE2QixFQUc3QiwrQkFBK0IsRUFHL0IsbUNBQW1DLEVBR25DLDJCQUEyQixFQUczQiwyQkFBMkIsRUFHM0Isc0JBQXNCLEVBR3RCLDRCQUE0QixFQUc1QixnQkFBZ0IsRUFHaEIsc0NBQXNDLEVBR3RDLGlDQUFpQyxFQUdqQyxrQkFBa0IsRUFHbEIsYUFBYSxFQUdiLCtCQUErQixFQUcvQixrQkFBa0IsRUFHbEIsNkJBQTZCLEVBRzdCLDhCQUE4QixFQUc5QixxQ0FBcUMsRUFHckMsNkJBQTZCLEVBRzdCLHVDQUF1QyxFQUd2QyxvQkFBb0IsRUFHcEIsd0JBQXdCLEVBR3hCLGlCQUFpQixFQUdqQix3Q0FBd0MsRUFHeEMsZUFBZSxFQUdmLDZCQUE2QixFQUc3QiwwQkFBMEIsRUFHMUIscUJBQXFCLEVBR3JCLG1DQUFtQyxFQUduQyw2QkFBNkIsRUFHN0IsbUNBQW1DLEVBR25DLHNDQUFzQyxFQUd0QyxpQ0FBaUMsRUFHakMsbUNBQW1DLEVBR25DLHVCQUF1QixFQUd2QixrQkFBa0IsRUFHbEIsb0JBQW9CLEVBR3BCLGtCQUFrQixF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QUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDdEUsVUFBVSxFQUNWLEVBQUUsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDOUMsQ0FBQyxFQUFFLEVBQUUsQ0FBa0IsQ0FBQztBQUMxQixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ2hELGFBQWEsRUFDYixpQkFBaUIsQ0FDbEIsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLHNCQUFzQixDQUFDLElBQUksQ0FDM0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUN6QyxDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUM5RCxLQUFLLENBQUMsT0FBTyxDQUFDLDhCQUE4QixDQUFDLENBQzlDLENBQUM7QUFFRix3REFBd0Q7QUFFeEQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxpQkFBaUIsQ0FBQztBQUV6RDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLHVCQUF1QixDQUFDLElBQUksQ0FDN0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQUMxQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyx1QkFBdUIsQ0FBQyxJQUFJLENBQ3BFLE1BQU0sQ0FBQyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFkZExheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kLFxuICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVBbGlhc0NvbW1hbmQsXG4gIENyZWF0ZUFsaWFzQ29tbWFuZElucHV0LFxuICBDcmVhdGVBbGlhc0NvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgQ3JlYXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gIENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZCxcbiAgQ3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZElucHV0LFxuICBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVGdW5jdGlvbkNvbW1hbmQsXG4gIENyZWF0ZUZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICBDcmVhdGVGdW5jdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZCxcbiAgQ3JlYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kSW5wdXQsXG4gIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQWxpYXNDb21tYW5kLFxuICBEZWxldGVBbGlhc0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQWxpYXNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICBEZWxldGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmQsXG4gIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGdW5jdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICBEZWxldGVGdW5jdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBEZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZElucHV0LFxuICBEZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUxheWVyVmVyc2lvbkNvbW1hbmQsXG4gIERlbGV0ZUxheWVyVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlTGF5ZXJWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlUHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZVByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZVByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kLFxuICBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kSW5wdXQsXG4gIEdldEFjY291bnRTZXR0aW5nc0NvbW1hbmRPdXRwdXQsXG4gIEdldEFsaWFzQ29tbWFuZCxcbiAgR2V0QWxpYXNDb21tYW5kSW5wdXQsXG4gIEdldEFsaWFzQ29tbWFuZE91dHB1dCxcbiAgR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBHZXRDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kLFxuICBHZXRFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kSW5wdXQsXG4gIEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRPdXRwdXQsXG4gIEdldEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBHZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICBHZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgR2V0RnVuY3Rpb25Db21tYW5kLFxuICBHZXRGdW5jdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0RnVuY3Rpb25Db21tYW5kT3V0cHV0LFxuICBHZXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZCxcbiAgR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRJbnB1dCxcbiAgR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRPdXRwdXQsXG4gIEdldEZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0RnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgR2V0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIEdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIEdldExheWVyVmVyc2lvbkJ5QXJuQ29tbWFuZCxcbiAgR2V0TGF5ZXJWZXJzaW9uQnlBcm5Db21tYW5kSW5wdXQsXG4gIEdldExheWVyVmVyc2lvbkJ5QXJuQ29tbWFuZE91dHB1dCxcbiAgR2V0TGF5ZXJWZXJzaW9uQ29tbWFuZCxcbiAgR2V0TGF5ZXJWZXJzaW9uQ29tbWFuZElucHV0LFxuICBHZXRMYXllclZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBHZXRMYXllclZlcnNpb25Qb2xpY3lDb21tYW5kLFxuICBHZXRMYXllclZlcnNpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gIEdldExheWVyVmVyc2lvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIEdldFBvbGljeUNvbW1hbmQsXG4gIEdldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgR2V0UG9saWN5Q29tbWFuZE91dHB1dCxcbiAgR2V0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmQsXG4gIEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kSW5wdXQsXG4gIEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmQsXG4gIEdldFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZElucHV0LFxuICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIEludm9rZUFzeW5jQ29tbWFuZCxcbiAgSW52b2tlQXN5bmNDb21tYW5kSW5wdXQsXG4gIEludm9rZUFzeW5jQ29tbWFuZE91dHB1dCxcbiAgSW52b2tlQ29tbWFuZCxcbiAgSW52b2tlQ29tbWFuZElucHV0LFxuICBJbnZva2VDb21tYW5kT3V0cHV0LFxuICBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kLFxuICBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kSW5wdXQsXG4gIEludm9rZVdpdGhSZXNwb25zZVN0cmVhbUNvbW1hbmRPdXRwdXQsXG4gIExpc3RBbGlhc2VzQ29tbWFuZCxcbiAgTGlzdEFsaWFzZXNDb21tYW5kSW5wdXQsXG4gIExpc3RBbGlhc2VzQ29tbWFuZE91dHB1dCxcbiAgTGlzdENvZGVTaWduaW5nQ29uZmlnc0NvbW1hbmQsXG4gIExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kSW5wdXQsXG4gIExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0RXZlbnRTb3VyY2VNYXBwaW5nc0NvbW1hbmQsXG4gIExpc3RFdmVudFNvdXJjZU1hcHBpbmdzQ29tbWFuZElucHV0LFxuICBMaXN0RXZlbnRTb3VyY2VNYXBwaW5nc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmQsXG4gIExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgTGlzdEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdzQ29tbWFuZE91dHB1dCxcbiAgTGlzdEZ1bmN0aW9uVXJsQ29uZmlnc0NvbW1hbmQsXG4gIExpc3RGdW5jdGlvblVybENvbmZpZ3NDb21tYW5kSW5wdXQsXG4gIExpc3RGdW5jdGlvblVybENvbmZpZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIExpc3RGdW5jdGlvbnNCeUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIExpc3RGdW5jdGlvbnNDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25zQ29tbWFuZElucHV0LFxuICBMaXN0RnVuY3Rpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdExheWVyVmVyc2lvbnNDb21tYW5kLFxuICBMaXN0TGF5ZXJWZXJzaW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdExheWVyVmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0TGF5ZXJzQ29tbWFuZCxcbiAgTGlzdExheWVyc0NvbW1hbmRJbnB1dCxcbiAgTGlzdExheWVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmQsXG4gIExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdzQ29tbWFuZE91dHB1dCxcbiAgTGlzdFRhZ3NDb21tYW5kLFxuICBMaXN0VGFnc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0VmVyc2lvbnNCeUZ1bmN0aW9uQ29tbWFuZCxcbiAgTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmRJbnB1dCxcbiAgTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hMYXllclZlcnNpb25Db21tYW5kLFxuICBQdWJsaXNoTGF5ZXJWZXJzaW9uQ29tbWFuZElucHV0LFxuICBQdWJsaXNoTGF5ZXJWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgUHVibGlzaFZlcnNpb25Db21tYW5kLFxuICBQdWJsaXNoVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgUHVibGlzaFZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBQdXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIFB1dEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZElucHV0LFxuICBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dCxcbiAgUHV0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIFB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIFB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBQdXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZCxcbiAgUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZCxcbiAgUHV0UnVudGltZU1hbmFnZW1lbnRDb25maWdDb21tYW5kSW5wdXQsXG4gIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZE91dHB1dCxcbiAgUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmQsXG4gIFJlbW92ZUxheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIFJlbW92ZUxheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVBbGlhc0NvbW1hbmQsXG4gIFVwZGF0ZUFsaWFzQ29tbWFuZElucHV0LFxuICBVcGRhdGVBbGlhc0NvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgVXBkYXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZCxcbiAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZElucHV0LFxuICBVcGRhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVGdW5jdGlvbkNvZGVDb21tYW5kLFxuICBVcGRhdGVGdW5jdGlvbkNvZGVDb21tYW5kSW5wdXQsXG4gIFVwZGF0ZUZ1bmN0aW9uQ29kZUNvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIFVwZGF0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtbGFtYmRhXCI7XG5pbXBvcnQgeyBIdHRwSGFuZGxlck9wdGlvbnMgYXMgX19IdHRwSGFuZGxlck9wdGlvbnMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IENhdXNlLCBDb250ZXh0LCBFZmZlY3QsIExheWVyLCBSZWFkb25seVJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIERlZmF1bHRMYW1iZGFDbGllbnRJbnN0YW5jZUxheWVyLFxuICBMYW1iZGFDbGllbnRJbnN0YW5jZSxcbiAgTGFtYmRhQ2xpZW50SW5zdGFuY2VMYXllcixcbn0gZnJvbSBcIi4vTGFtYmRhQ2xpZW50SW5zdGFuY2VcIjtcbmltcG9ydCB7IERlZmF1bHRMYW1iZGFDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL0xhbWJkYUNsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZCxcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENyZWF0ZUFsaWFzQ29tbWFuZCxcbiAgQ3JlYXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kLFxuICBDcmVhdGVGdW5jdGlvbkNvbW1hbmQsXG4gIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZCxcbiAgRGVsZXRlQWxpYXNDb21tYW5kLFxuICBEZWxldGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29tbWFuZCxcbiAgRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBEZWxldGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZCxcbiAgRGVsZXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kLFxuICBEZWxldGVMYXllclZlcnNpb25Db21tYW5kLFxuICBEZWxldGVQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZCxcbiAgR2V0QWNjb3VudFNldHRpbmdzQ29tbWFuZCxcbiAgR2V0QWxpYXNDb21tYW5kLFxuICBHZXRDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uQ29tbWFuZCxcbiAgR2V0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBHZXRGdW5jdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZCxcbiAgR2V0RnVuY3Rpb25VcmxDb25maWdDb21tYW5kLFxuICBHZXRMYXllclZlcnNpb25Db21tYW5kLFxuICBHZXRMYXllclZlcnNpb25CeUFybkNvbW1hbmQsXG4gIEdldExheWVyVmVyc2lvblBvbGljeUNvbW1hbmQsXG4gIEdldFBvbGljeUNvbW1hbmQsXG4gIEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kLFxuICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmQsXG4gIEludm9rZUNvbW1hbmQsXG4gIEludm9rZUFzeW5jQ29tbWFuZCxcbiAgSW52b2tlV2l0aFJlc3BvbnNlU3RyZWFtQ29tbWFuZCxcbiAgTGlzdEFsaWFzZXNDb21tYW5kLFxuICBMaXN0Q29kZVNpZ25pbmdDb25maWdzQ29tbWFuZCxcbiAgTGlzdEV2ZW50U291cmNlTWFwcGluZ3NDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ3NDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25zQ29tbWFuZCxcbiAgTGlzdEZ1bmN0aW9uc0J5Q29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25VcmxDb25maWdzQ29tbWFuZCxcbiAgTGlzdExheWVyc0NvbW1hbmQsXG4gIExpc3RMYXllclZlcnNpb25zQ29tbWFuZCxcbiAgTGlzdFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdzQ29tbWFuZCxcbiAgTGlzdFRhZ3NDb21tYW5kLFxuICBMaXN0VmVyc2lvbnNCeUZ1bmN0aW9uQ29tbWFuZCxcbiAgUHVibGlzaExheWVyVmVyc2lvbkNvbW1hbmQsXG4gIFB1Ymxpc2hWZXJzaW9uQ29tbWFuZCxcbiAgUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIFB1dEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBQdXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZCxcbiAgUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmQsXG4gIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZCxcbiAgUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICBVcGRhdGVBbGlhc0NvbW1hbmQsXG4gIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZCxcbiAgVXBkYXRlRnVuY3Rpb25Db2RlQ29tbWFuZCxcbiAgVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZCxcbiAgVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZCxcbn07XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhU2VydmljZSB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFkZExheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgYWRkTGF5ZXJWZXJzaW9uUGVybWlzc2lvbihcbiAgICBhcmdzOiBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIEFkZExheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFkZFBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgYWRkUGVybWlzc2lvbihcbiAgICBhcmdzOiBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVBbGlhc0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVBbGlhcyhcbiAgICBhcmdzOiBDcmVhdGVBbGlhc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIENyZWF0ZUFsaWFzQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUNvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nKFxuICAgIGFyZ3M6IENyZWF0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUZ1bmN0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUZ1bmN0aW9uKFxuICAgIGFyZ3M6IENyZWF0ZUZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgQ3JlYXRlRnVuY3Rpb25Db21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlRnVuY3Rpb25VcmxDb25maWcoXG4gICAgYXJnczogQ3JlYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgQ3JlYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUFsaWFzQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUFsaWFzKFxuICAgIGFyZ3M6IERlbGV0ZUFsaWFzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgRGVsZXRlQWxpYXNDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQ29kZVNpZ25pbmdDb25maWcoXG4gICAgYXJnczogRGVsZXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVFdmVudFNvdXJjZU1hcHBpbmcoXG4gICAgYXJnczogRGVsZXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRnVuY3Rpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlRnVuY3Rpb24oXG4gICAgYXJnczogRGVsZXRlRnVuY3Rpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBEZWxldGVGdW5jdGlvbkNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWcoXG4gICAgYXJnczogRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBEZWxldGVGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUZ1bmN0aW9uQ29uY3VycmVuY3koXG4gICAgYXJnczogRGVsZXRlRnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBEZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWcoXG4gICAgYXJnczogRGVsZXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBEZWxldGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVGdW5jdGlvblVybENvbmZpZyhcbiAgICBhcmdzOiBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTGF5ZXJWZXJzaW9uQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUxheWVyVmVyc2lvbihcbiAgICBhcmdzOiBEZWxldGVMYXllclZlcnNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlTGF5ZXJWZXJzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWcoXG4gICAgYXJnczogRGVsZXRlUHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBEZWxldGVQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kfVxuICAgKi9cbiAgZ2V0QWNjb3VudFNldHRpbmdzKFxuICAgIGFyZ3M6IEdldEFjY291bnRTZXR0aW5nc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEFsaWFzQ29tbWFuZH1cbiAgICovXG4gIGdldEFsaWFzKFxuICAgIGFyZ3M6IEdldEFsaWFzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgR2V0QWxpYXNDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kfVxuICAgKi9cbiAgZ2V0Q29kZVNpZ25pbmdDb25maWcoXG4gICAgYXJnczogR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmR9XG4gICAqL1xuICBnZXRFdmVudFNvdXJjZU1hcHBpbmcoXG4gICAgYXJnczogR2V0RXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RnVuY3Rpb25Db21tYW5kfVxuICAgKi9cbiAgZ2V0RnVuY3Rpb24oXG4gICAgYXJnczogR2V0RnVuY3Rpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBHZXRGdW5jdGlvbkNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGdldEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWcoXG4gICAgYXJnczogR2V0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZH1cbiAgICovXG4gIGdldEZ1bmN0aW9uQ29uY3VycmVuY3koXG4gICAgYXJnczogR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRGdW5jdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZ2V0RnVuY3Rpb25Db25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IEdldEZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRGdW5jdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kfVxuICAgKi9cbiAgZ2V0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZyhcbiAgICBhcmdzOiBHZXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIEdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGdldEZ1bmN0aW9uVXJsQ29uZmlnKFxuICAgIGFyZ3M6IEdldEZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIEdldEZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRMYXllclZlcnNpb25Db21tYW5kfVxuICAgKi9cbiAgZ2V0TGF5ZXJWZXJzaW9uKFxuICAgIGFyZ3M6IEdldExheWVyVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIEdldExheWVyVmVyc2lvbkNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRMYXllclZlcnNpb25CeUFybkNvbW1hbmR9XG4gICAqL1xuICBnZXRMYXllclZlcnNpb25CeUFybihcbiAgICBhcmdzOiBHZXRMYXllclZlcnNpb25CeUFybkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRMYXllclZlcnNpb25CeUFybkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TGF5ZXJWZXJzaW9uUG9saWN5Q29tbWFuZH1cbiAgICovXG4gIGdldExheWVyVmVyc2lvblBvbGljeShcbiAgICBhcmdzOiBHZXRMYXllclZlcnNpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0TGF5ZXJWZXJzaW9uUG9saWN5Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgZ2V0UG9saWN5KFxuICAgIGFyZ3M6IEdldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIEdldFBvbGljeUNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWcoXG4gICAgYXJnczogR2V0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBnZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZyhcbiAgICBhcmdzOiBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW52b2tlQ29tbWFuZH1cbiAgICovXG4gIGludm9rZShcbiAgICBhcmdzOiBJbnZva2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBJbnZva2VDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW52b2tlQXN5bmNDb21tYW5kfVxuICAgKi9cbiAgaW52b2tlQXN5bmMoXG4gICAgYXJnczogSW52b2tlQXN5bmNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBJbnZva2VBc3luY0NvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kfVxuICAgKi9cbiAgaW52b2tlV2l0aFJlc3BvbnNlU3RyZWFtKFxuICAgIGFyZ3M6IEludm9rZVdpdGhSZXNwb25zZVN0cmVhbUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RBbGlhc2VzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RBbGlhc2VzKFxuICAgIGFyZ3M6IExpc3RBbGlhc2VzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgTGlzdEFsaWFzZXNDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdENvZGVTaWduaW5nQ29uZmlnc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0Q29kZVNpZ25pbmdDb25maWdzKFxuICAgIGFyZ3M6IExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgTGlzdENvZGVTaWduaW5nQ29uZmlnc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEV2ZW50U291cmNlTWFwcGluZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdEV2ZW50U291cmNlTWFwcGluZ3MoXG4gICAgYXJnczogTGlzdEV2ZW50U291cmNlTWFwcGluZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgTGlzdEV2ZW50U291cmNlTWFwcGluZ3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ3MoXG4gICAgYXJnczogTGlzdEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEZ1bmN0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0RnVuY3Rpb25zKFxuICAgIGFyZ3M6IExpc3RGdW5jdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBMaXN0RnVuY3Rpb25zQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RGdW5jdGlvbnNCeUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGxpc3RGdW5jdGlvbnNCeUNvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IExpc3RGdW5jdGlvbnNCeUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIExpc3RGdW5jdGlvbnNCeUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RnVuY3Rpb25VcmxDb25maWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RGdW5jdGlvblVybENvbmZpZ3MoXG4gICAgYXJnczogTGlzdEZ1bmN0aW9uVXJsQ29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBMaXN0RnVuY3Rpb25VcmxDb25maWdzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0TGF5ZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RMYXllcnMoXG4gICAgYXJnczogTGlzdExheWVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIExpc3RMYXllcnNDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdExheWVyVmVyc2lvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdExheWVyVmVyc2lvbnMoXG4gICAgYXJnczogTGlzdExheWVyVmVyc2lvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgTGlzdExheWVyVmVyc2lvbnNDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ3MoXG4gICAgYXJnczogTGlzdFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFRhZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRhZ3MoXG4gICAgYXJnczogTGlzdFRhZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBMaXN0VGFnc0NvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VmVyc2lvbnNCeUZ1bmN0aW9uQ29tbWFuZH1cbiAgICovXG4gIGxpc3RWZXJzaW9uc0J5RnVuY3Rpb24oXG4gICAgYXJnczogTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBMaXN0VmVyc2lvbnNCeUZ1bmN0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdWJsaXNoTGF5ZXJWZXJzaW9uQ29tbWFuZH1cbiAgICovXG4gIHB1Ymxpc2hMYXllclZlcnNpb24oXG4gICAgYXJnczogUHVibGlzaExheWVyVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBQdWJsaXNoTGF5ZXJWZXJzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdWJsaXNoVmVyc2lvbkNvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoVmVyc2lvbihcbiAgICBhcmdzOiBQdWJsaXNoVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIFB1Ymxpc2hWZXJzaW9uQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kfVxuICAgKi9cbiAgcHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZyhcbiAgICBhcmdzOiBQdXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFB1dEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kfVxuICAgKi9cbiAgcHV0RnVuY3Rpb25Db25jdXJyZW5jeShcbiAgICBhcmdzOiBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFB1dEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kfVxuICAgKi9cbiAgcHV0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZyhcbiAgICBhcmdzOiBQdXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kfVxuICAgKi9cbiAgcHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZyhcbiAgICBhcmdzOiBQdXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFB1dFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZH1cbiAgICovXG4gIHB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnKFxuICAgIGFyZ3M6IFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZW1vdmVMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlbW92ZUxheWVyVmVyc2lvblBlcm1pc3Npb24oXG4gICAgYXJnczogUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBSZW1vdmVMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlbW92ZVBlcm1pc3Npb24oXG4gICAgYXJnczogUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUYWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB0YWdSZXNvdXJjZShcbiAgICBhcmdzOiBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVudGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdW50YWdSZXNvdXJjZShcbiAgICBhcmdzOiBVbnRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVBbGlhc0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVBbGlhcyhcbiAgICBhcmdzOiBVcGRhdGVBbGlhc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIFVwZGF0ZUFsaWFzQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nKFxuICAgIGFyZ3M6IFVwZGF0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBVcGRhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUZ1bmN0aW9uQ29kZUNvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVGdW5jdGlvbkNvZGUoXG4gICAgYXJnczogVXBkYXRlRnVuY3Rpb25Db2RlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFVwZGF0ZUZ1bmN0aW9uQ29kZUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBVcGRhdGVGdW5jdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWcoXG4gICAgYXJnczogVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBVcGRhdGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVGdW5jdGlvblVybENvbmZpZyhcbiAgICBhcmdzOiBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjb25zdCBMYW1iZGFTZXJ2aWNlID0gQ29udGV4dC5UYWc8TGFtYmRhU2VydmljZT4oXG4gIFN5bWJvbC5mb3IoXCJAZWZmZWN0LWF3cy9jbGllbnQtbGFtYmRhL0xhbWJkYVNlcnZpY2VcIiksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZUxhbWJkYVNlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhMYW1iZGFDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlYWRvbmx5UmVjb3JkLnRvRW50cmllcyhjb21tYW5kcykucmVkdWNlKChhY2MsIFtjb21tYW5kXSkgPT4ge1xuICAgIGNvbnN0IENvbW1hbmRDdG9yID0gY29tbWFuZHNbY29tbWFuZF0gYXMgYW55O1xuICAgIGNvbnN0IG1ldGhvZEltcGwgPSAoYXJnczogYW55LCBvcHRpb25zOiBhbnkpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSgoKSA9PlxuICAgICAgICBjbGllbnQuc2VuZChuZXcgQ29tbWFuZEN0b3IoYXJncyksIG9wdGlvbnMgPz8ge30pLFxuICAgICAgKTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBMYW1iZGFTZXJ2aWNlO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlTGFtYmRhU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBMYW1iZGFTZXJ2aWNlLFxuICBtYWtlTGFtYmRhU2VydmljZSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBMYW1iZGFTZXJ2aWNlTGF5ZXIgPSBCYXNlTGFtYmRhU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoTGFtYmRhQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdExhbWJkYVNlcnZpY2VMYXllciA9IExhbWJkYVNlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRMYW1iZGFDbGllbnRDb25maWdMYXllciksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLSBEYW5nZXIgWm9uZSAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlTGFtYmRhU2VydmljZUVmZmVjdCA9IG1ha2VMYW1iZGFTZXJ2aWNlO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBMYW1iZGFTZXJ2aWNlRWZmZWN0ID0gQmFzZUxhbWJkYVNlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoTGFtYmRhQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0TGFtYmRhU2VydmljZUVmZmVjdCA9IEJhc2VMYW1iZGFTZXJ2aWNlRWZmZWN0LnBpcGUoXG4gIEVmZmVjdC5wcm92aWRlKERlZmF1bHRMYW1iZGFDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG4iXX0=
package/lib/esm/index.js CHANGED
@@ -1,3 +1,4 @@
1
- export * from "./Context";
2
- export * from "./Lambda";
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxVQUFVLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9Db250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9MYW1iZGFcIjtcbiJdfQ==
1
+ export * from "./LambdaClientInstance";
2
+ export * from "./LambdaClientInstanceConfig";
3
+ export * from "./LambdaService";
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9MYW1iZGFDbGllbnRJbnN0YW5jZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vTGFtYmRhQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0xhbWJkYVNlcnZpY2VcIjtcbiJdfQ==
package/lib/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
- export * from "./Context";
2
- export * from "./Lambda";
1
+ export * from "./LambdaClientInstance";
2
+ export * from "./LambdaClientInstanceConfig";
3
+ export * from "./LambdaService";
package/lib/index.js CHANGED
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./Context"), exports);
18
- __exportStar(require("./Lambda"), exports);
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDRDQUEwQjtBQUMxQiwyQ0FBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9Db250ZXh0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9MYW1iZGFcIjtcbiJdfQ==
17
+ __exportStar(require("./LambdaClientInstance"), exports);
18
+ __exportStar(require("./LambdaClientInstanceConfig"), exports);
19
+ __exportStar(require("./LambdaService"), exports);
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlEQUF1QztBQUN2QywrREFBNkM7QUFDN0Msa0RBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vTGFtYmRhQ2xpZW50SW5zdGFuY2VcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0xhbWJkYUNsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9MYW1iZGFTZXJ2aWNlXCI7XG4iXX0=
package/package.json CHANGED
@@ -12,7 +12,7 @@
12
12
  "@typescript-eslint/parser": "^6",
13
13
  "aws-sdk-client-mock": "^3.0.0",
14
14
  "aws-sdk-client-mock-jest": "^3.0.0",
15
- "effect": "2.0.0-next.60",
15
+ "effect": "2.0.1",
16
16
  "eslint": "^8",
17
17
  "eslint-config-prettier": "^9.0.0",
18
18
  "eslint-import-resolver-node": "^0.3.9",
@@ -26,7 +26,7 @@
26
26
  "typescript": "^5.2.2"
27
27
  },
28
28
  "peerDependencies": {
29
- "effect": "^2.0.0-next.60"
29
+ "effect": "^2.0.1"
30
30
  },
31
31
  "dependencies": {
32
32
  "@aws-sdk/client-lambda": "^3",
@@ -37,7 +37,7 @@
37
37
  "publishConfig": {
38
38
  "access": "public"
39
39
  },
40
- "version": "0.4.0",
40
+ "version": "1.0.0",
41
41
  "types": "lib/index.d.ts",
42
42
  "module": "lib/esm/index.js",
43
43
  "//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\".",
package/lib/Context.d.ts DELETED
@@ -1,15 +0,0 @@
1
- import { LambdaClient, LambdaClientConfig } from "@aws-sdk/client-lambda";
2
- import * as Context from "effect/Context";
3
- import * as Data from "effect/Data";
4
- import * as Layer from "effect/Layer";
5
- declare const LambdaClientOptions_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").Equals<Omit<A, keyof import("effect/Equal").Equal>, {}> extends true ? void : { readonly [P in keyof A as P extends "_tag" | keyof import("effect/Equal").Equal ? never : P]: A[P]; }) => Data.Data<Readonly<A> & {
6
- readonly _tag: "LambdaClientOptions";
7
- }>;
8
- export declare class LambdaClientOptions extends LambdaClientOptions_base<LambdaClientConfig> {
9
- }
10
- export declare const LambdaClientConfigTag: Context.Tag<LambdaClientOptions, LambdaClientOptions>;
11
- export declare const DefaultLambdaClientConfigLayer: Layer.Layer<never, never, LambdaClientOptions>;
12
- export declare const LambdaClientInstanceTag: Context.Tag<LambdaClient, LambdaClient>;
13
- export declare const LambdaClientInstanceLayer: Layer.Layer<LambdaClientOptions, never, LambdaClient>;
14
- export declare const DefaultLambdaClientInstanceLayer: Layer.Layer<never, never, LambdaClient>;
15
- export {};
package/lib/Context.js DELETED
@@ -1,49 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.DefaultLambdaClientInstanceLayer = exports.LambdaClientInstanceLayer = exports.LambdaClientInstanceTag = exports.DefaultLambdaClientConfigLayer = exports.LambdaClientConfigTag = exports.LambdaClientOptions = void 0;
27
- const client_lambda_1 = require("@aws-sdk/client-lambda");
28
- const Context = __importStar(require("effect/Context"));
29
- const Data = __importStar(require("effect/Data"));
30
- const Effect = __importStar(require("effect/Effect"));
31
- const Layer = __importStar(require("effect/Layer"));
32
- const Runtime = __importStar(require("effect/Runtime"));
33
- class LambdaClientOptions extends Data.TaggedClass("LambdaClientOptions") {
34
- }
35
- exports.LambdaClientOptions = LambdaClientOptions;
36
- exports.LambdaClientConfigTag = Context.Tag("@effect-aws/LambdaClient/Config");
37
- exports.DefaultLambdaClientConfigLayer = Layer.effect(exports.LambdaClientConfigTag, Effect.runtime().pipe(Effect.map((runtime) => new LambdaClientOptions({
38
- logger: {
39
- info: (m) => Effect.logInfo(m).pipe(Runtime.runSync(runtime)),
40
- warn: (m) => Effect.logWarning(m).pipe(Runtime.runSync(runtime)),
41
- error: (m) => Effect.logError(m).pipe(Runtime.runSync(runtime)),
42
- debug: (m) => Effect.logDebug(m).pipe(Runtime.runSync(runtime)),
43
- trace: (m) => Effect.logTrace(m).pipe(Runtime.runSync(runtime)),
44
- },
45
- }))));
46
- exports.LambdaClientInstanceTag = Context.Tag("@effect-aws/LambdaClient/Instance");
47
- exports.LambdaClientInstanceLayer = Layer.effect(exports.LambdaClientInstanceTag, exports.LambdaClientConfigTag.pipe(Effect.map((config) => new client_lambda_1.LambdaClient(config))));
48
- exports.DefaultLambdaClientInstanceLayer = exports.LambdaClientInstanceLayer.pipe(Layer.provide(exports.DefaultLambdaClientConfigLayer));
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMERBQTBFO0FBQzFFLHdEQUEwQztBQUMxQyxrREFBb0M7QUFDcEMsc0RBQXdDO0FBQ3hDLG9EQUFzQztBQUN0Qyx3REFBMEM7QUFFMUMsTUFBYSxtQkFBb0IsU0FBUSxJQUFJLENBQUMsV0FBVyxDQUN2RCxxQkFBcUIsQ0FDRjtDQUFHO0FBRnhCLGtEQUV3QjtBQUVYLFFBQUEscUJBQXFCLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FDOUMsaUNBQWlDLENBQ2xDLENBQUM7QUFFVyxRQUFBLDhCQUE4QixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3hELDZCQUFxQixFQUNyQixNQUFNLENBQUMsT0FBTyxFQUFTLENBQUMsSUFBSSxDQUMxQixNQUFNLENBQUMsR0FBRyxDQUNSLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDVixJQUFJLG1CQUFtQixDQUFDO0lBQ3RCLE1BQU0sRUFBRTtRQUNOLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RCxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9ELEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvRCxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDaEU7Q0FDRixDQUFDLENBQ0wsQ0FDRixDQUNGLENBQUM7QUFFVyxRQUFBLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQ2hELG1DQUFtQyxDQUNwQyxDQUFDO0FBRVcsUUFBQSx5QkFBeUIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNuRCwrQkFBdUIsRUFDdkIsNkJBQXFCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksNEJBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQzdFLENBQUM7QUFFVyxRQUFBLGdDQUFnQyxHQUFHLGlDQUF5QixDQUFDLElBQUksQ0FDNUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQ0FBOEIsQ0FBQyxDQUM5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGFtYmRhQ2xpZW50LCBMYW1iZGFDbGllbnRDb25maWcgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWxhbWJkYVwiO1xuaW1wb3J0ICogYXMgQ29udGV4dCBmcm9tIFwiZWZmZWN0L0NvbnRleHRcIjtcbmltcG9ydCAqIGFzIERhdGEgZnJvbSBcImVmZmVjdC9EYXRhXCI7XG5pbXBvcnQgKiBhcyBFZmZlY3QgZnJvbSBcImVmZmVjdC9FZmZlY3RcIjtcbmltcG9ydCAqIGFzIExheWVyIGZyb20gXCJlZmZlY3QvTGF5ZXJcIjtcbmltcG9ydCAqIGFzIFJ1bnRpbWUgZnJvbSBcImVmZmVjdC9SdW50aW1lXCI7XG5cbmV4cG9ydCBjbGFzcyBMYW1iZGFDbGllbnRPcHRpb25zIGV4dGVuZHMgRGF0YS5UYWdnZWRDbGFzcyhcbiAgXCJMYW1iZGFDbGllbnRPcHRpb25zXCIsXG4pPExhbWJkYUNsaWVudENvbmZpZz4ge31cblxuZXhwb3J0IGNvbnN0IExhbWJkYUNsaWVudENvbmZpZ1RhZyA9IENvbnRleHQuVGFnPExhbWJkYUNsaWVudE9wdGlvbnM+KFxuICBcIkBlZmZlY3QtYXdzL0xhbWJkYUNsaWVudC9Db25maWdcIixcbik7XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0TGFtYmRhQ2xpZW50Q29uZmlnTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIExhbWJkYUNsaWVudENvbmZpZ1RhZyxcbiAgRWZmZWN0LnJ1bnRpbWU8bmV2ZXI+KCkucGlwZShcbiAgICBFZmZlY3QubWFwKFxuICAgICAgKHJ1bnRpbWUpID0+XG4gICAgICAgIG5ldyBMYW1iZGFDbGllbnRPcHRpb25zKHtcbiAgICAgICAgICBsb2dnZXI6IHtcbiAgICAgICAgICAgIGluZm86IChtKSA9PiBFZmZlY3QubG9nSW5mbyhtKS5waXBlKFJ1bnRpbWUucnVuU3luYyhydW50aW1lKSksXG4gICAgICAgICAgICB3YXJuOiAobSkgPT4gRWZmZWN0LmxvZ1dhcm5pbmcobSkucGlwZShSdW50aW1lLnJ1blN5bmMocnVudGltZSkpLFxuICAgICAgICAgICAgZXJyb3I6IChtKSA9PiBFZmZlY3QubG9nRXJyb3IobSkucGlwZShSdW50aW1lLnJ1blN5bmMocnVudGltZSkpLFxuICAgICAgICAgICAgZGVidWc6IChtKSA9PiBFZmZlY3QubG9nRGVidWcobSkucGlwZShSdW50aW1lLnJ1blN5bmMocnVudGltZSkpLFxuICAgICAgICAgICAgdHJhY2U6IChtKSA9PiBFZmZlY3QubG9nVHJhY2UobSkucGlwZShSdW50aW1lLnJ1blN5bmMocnVudGltZSkpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICksXG4gICksXG4pO1xuXG5leHBvcnQgY29uc3QgTGFtYmRhQ2xpZW50SW5zdGFuY2VUYWcgPSBDb250ZXh0LlRhZzxMYW1iZGFDbGllbnQ+KFxuICBcIkBlZmZlY3QtYXdzL0xhbWJkYUNsaWVudC9JbnN0YW5jZVwiLFxuKTtcblxuZXhwb3J0IGNvbnN0IExhbWJkYUNsaWVudEluc3RhbmNlTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIExhbWJkYUNsaWVudEluc3RhbmNlVGFnLFxuICBMYW1iZGFDbGllbnRDb25maWdUYWcucGlwZShFZmZlY3QubWFwKChjb25maWcpID0+IG5ldyBMYW1iZGFDbGllbnQoY29uZmlnKSkpLFxuKTtcblxuZXhwb3J0IGNvbnN0IERlZmF1bHRMYW1iZGFDbGllbnRJbnN0YW5jZUxheWVyID0gTGFtYmRhQ2xpZW50SW5zdGFuY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRMYW1iZGFDbGllbnRDb25maWdMYXllciksXG4pO1xuIl19
package/lib/Lambda.js DELETED
@@ -1,110 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.DefaultLambdaServiceEffect = exports.LambdaServiceEffect = exports.BaseLambdaServiceEffect = void 0;
27
- const client_lambda_1 = require("@aws-sdk/client-lambda");
28
- const Effect = __importStar(require("effect/Effect"));
29
- const RR = __importStar(require("effect/ReadonlyRecord"));
30
- const Context_1 = require("./Context");
31
- const commands = {
32
- AddLayerVersionPermissionCommand: client_lambda_1.AddLayerVersionPermissionCommand,
33
- AddPermissionCommand: client_lambda_1.AddPermissionCommand,
34
- CreateAliasCommand: client_lambda_1.CreateAliasCommand,
35
- CreateCodeSigningConfigCommand: client_lambda_1.CreateCodeSigningConfigCommand,
36
- CreateEventSourceMappingCommand: client_lambda_1.CreateEventSourceMappingCommand,
37
- CreateFunctionCommand: client_lambda_1.CreateFunctionCommand,
38
- CreateFunctionUrlConfigCommand: client_lambda_1.CreateFunctionUrlConfigCommand,
39
- DeleteAliasCommand: client_lambda_1.DeleteAliasCommand,
40
- DeleteCodeSigningConfigCommand: client_lambda_1.DeleteCodeSigningConfigCommand,
41
- DeleteEventSourceMappingCommand: client_lambda_1.DeleteEventSourceMappingCommand,
42
- DeleteFunctionCommand: client_lambda_1.DeleteFunctionCommand,
43
- DeleteFunctionCodeSigningConfigCommand: client_lambda_1.DeleteFunctionCodeSigningConfigCommand,
44
- DeleteFunctionConcurrencyCommand: client_lambda_1.DeleteFunctionConcurrencyCommand,
45
- DeleteFunctionEventInvokeConfigCommand: client_lambda_1.DeleteFunctionEventInvokeConfigCommand,
46
- DeleteFunctionUrlConfigCommand: client_lambda_1.DeleteFunctionUrlConfigCommand,
47
- DeleteLayerVersionCommand: client_lambda_1.DeleteLayerVersionCommand,
48
- DeleteProvisionedConcurrencyConfigCommand: client_lambda_1.DeleteProvisionedConcurrencyConfigCommand,
49
- GetAccountSettingsCommand: client_lambda_1.GetAccountSettingsCommand,
50
- GetAliasCommand: client_lambda_1.GetAliasCommand,
51
- GetCodeSigningConfigCommand: client_lambda_1.GetCodeSigningConfigCommand,
52
- GetEventSourceMappingCommand: client_lambda_1.GetEventSourceMappingCommand,
53
- GetFunctionCommand: client_lambda_1.GetFunctionCommand,
54
- GetFunctionCodeSigningConfigCommand: client_lambda_1.GetFunctionCodeSigningConfigCommand,
55
- GetFunctionConcurrencyCommand: client_lambda_1.GetFunctionConcurrencyCommand,
56
- GetFunctionConfigurationCommand: client_lambda_1.GetFunctionConfigurationCommand,
57
- GetFunctionEventInvokeConfigCommand: client_lambda_1.GetFunctionEventInvokeConfigCommand,
58
- GetFunctionUrlConfigCommand: client_lambda_1.GetFunctionUrlConfigCommand,
59
- GetLayerVersionCommand: client_lambda_1.GetLayerVersionCommand,
60
- GetLayerVersionByArnCommand: client_lambda_1.GetLayerVersionByArnCommand,
61
- GetLayerVersionPolicyCommand: client_lambda_1.GetLayerVersionPolicyCommand,
62
- GetPolicyCommand: client_lambda_1.GetPolicyCommand,
63
- GetProvisionedConcurrencyConfigCommand: client_lambda_1.GetProvisionedConcurrencyConfigCommand,
64
- GetRuntimeManagementConfigCommand: client_lambda_1.GetRuntimeManagementConfigCommand,
65
- InvokeCommand: client_lambda_1.InvokeCommand,
66
- InvokeAsyncCommand: client_lambda_1.InvokeAsyncCommand,
67
- InvokeWithResponseStreamCommand: client_lambda_1.InvokeWithResponseStreamCommand,
68
- ListAliasesCommand: client_lambda_1.ListAliasesCommand,
69
- ListCodeSigningConfigsCommand: client_lambda_1.ListCodeSigningConfigsCommand,
70
- ListEventSourceMappingsCommand: client_lambda_1.ListEventSourceMappingsCommand,
71
- ListFunctionEventInvokeConfigsCommand: client_lambda_1.ListFunctionEventInvokeConfigsCommand,
72
- ListFunctionsCommand: client_lambda_1.ListFunctionsCommand,
73
- ListFunctionsByCodeSigningConfigCommand: client_lambda_1.ListFunctionsByCodeSigningConfigCommand,
74
- ListFunctionUrlConfigsCommand: client_lambda_1.ListFunctionUrlConfigsCommand,
75
- ListLayersCommand: client_lambda_1.ListLayersCommand,
76
- ListLayerVersionsCommand: client_lambda_1.ListLayerVersionsCommand,
77
- ListProvisionedConcurrencyConfigsCommand: client_lambda_1.ListProvisionedConcurrencyConfigsCommand,
78
- ListTagsCommand: client_lambda_1.ListTagsCommand,
79
- ListVersionsByFunctionCommand: client_lambda_1.ListVersionsByFunctionCommand,
80
- PublishLayerVersionCommand: client_lambda_1.PublishLayerVersionCommand,
81
- PublishVersionCommand: client_lambda_1.PublishVersionCommand,
82
- PutFunctionCodeSigningConfigCommand: client_lambda_1.PutFunctionCodeSigningConfigCommand,
83
- PutFunctionConcurrencyCommand: client_lambda_1.PutFunctionConcurrencyCommand,
84
- PutFunctionEventInvokeConfigCommand: client_lambda_1.PutFunctionEventInvokeConfigCommand,
85
- PutProvisionedConcurrencyConfigCommand: client_lambda_1.PutProvisionedConcurrencyConfigCommand,
86
- PutRuntimeManagementConfigCommand: client_lambda_1.PutRuntimeManagementConfigCommand,
87
- RemoveLayerVersionPermissionCommand: client_lambda_1.RemoveLayerVersionPermissionCommand,
88
- RemovePermissionCommand: client_lambda_1.RemovePermissionCommand,
89
- TagResourceCommand: client_lambda_1.TagResourceCommand,
90
- UntagResourceCommand: client_lambda_1.UntagResourceCommand,
91
- UpdateAliasCommand: client_lambda_1.UpdateAliasCommand,
92
- UpdateCodeSigningConfigCommand: client_lambda_1.UpdateCodeSigningConfigCommand,
93
- UpdateEventSourceMappingCommand: client_lambda_1.UpdateEventSourceMappingCommand,
94
- UpdateFunctionCodeCommand: client_lambda_1.UpdateFunctionCodeCommand,
95
- UpdateFunctionConfigurationCommand: client_lambda_1.UpdateFunctionConfigurationCommand,
96
- UpdateFunctionEventInvokeConfigCommand: client_lambda_1.UpdateFunctionEventInvokeConfigCommand,
97
- UpdateFunctionUrlConfigCommand: client_lambda_1.UpdateFunctionUrlConfigCommand,
98
- };
99
- exports.BaseLambdaServiceEffect = Effect.gen(function* (_) {
100
- const client = yield* _(Context_1.LambdaClientInstanceTag);
101
- return RR.toEntries(commands).reduce((acc, [command]) => {
102
- const CommandCtor = commands[command];
103
- const methodImpl = (args, options) => Effect.tryPromise(() => client.send(new CommandCtor(args), options !== null && options !== void 0 ? options : {}));
104
- const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
105
- return { ...acc, [methodName]: methodImpl };
106
- }, {});
107
- });
108
- exports.LambdaServiceEffect = exports.BaseLambdaServiceEffect.pipe(Effect.provide(Context_1.LambdaClientInstanceLayer));
109
- exports.DefaultLambdaServiceEffect = exports.BaseLambdaServiceEffect.pipe(Effect.provide(Context_1.DefaultLambdaClientInstanceLayer));
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0xhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDBEQXVNZ0M7QUFHaEMsc0RBQXdDO0FBQ3hDLDBEQUE0QztBQUM1Qyx1Q0FJbUI7QUFFbkIsTUFBTSxRQUFRLEdBQUc7SUFDZixnQ0FBZ0MsRUFBaEMsZ0RBQWdDO0lBQ2hDLG9CQUFvQixFQUFwQixvQ0FBb0I7SUFDcEIsa0JBQWtCLEVBQWxCLGtDQUFrQjtJQUNsQiw4QkFBOEIsRUFBOUIsOENBQThCO0lBQzlCLCtCQUErQixFQUEvQiwrQ0FBK0I7SUFDL0IscUJBQXFCLEVBQXJCLHFDQUFxQjtJQUNyQiw4QkFBOEIsRUFBOUIsOENBQThCO0lBQzlCLGtCQUFrQixFQUFsQixrQ0FBa0I7SUFDbEIsOEJBQThCLEVBQTlCLDhDQUE4QjtJQUM5QiwrQkFBK0IsRUFBL0IsK0NBQStCO0lBQy9CLHFCQUFxQixFQUFyQixxQ0FBcUI7SUFDckIsc0NBQXNDLEVBQXRDLHNEQUFzQztJQUN0QyxnQ0FBZ0MsRUFBaEMsZ0RBQWdDO0lBQ2hDLHNDQUFzQyxFQUF0QyxzREFBc0M7SUFDdEMsOEJBQThCLEVBQTlCLDhDQUE4QjtJQUM5Qix5QkFBeUIsRUFBekIseUNBQXlCO0lBQ3pCLHlDQUF5QyxFQUF6Qyx5REFBeUM7SUFDekMseUJBQXlCLEVBQXpCLHlDQUF5QjtJQUN6QixlQUFlLEVBQWYsK0JBQWU7SUFDZiwyQkFBMkIsRUFBM0IsMkNBQTJCO0lBQzNCLDRCQUE0QixFQUE1Qiw0Q0FBNEI7SUFDNUIsa0JBQWtCLEVBQWxCLGtDQUFrQjtJQUNsQixtQ0FBbUMsRUFBbkMsbURBQW1DO0lBQ25DLDZCQUE2QixFQUE3Qiw2Q0FBNkI7SUFDN0IsK0JBQStCLEVBQS9CLCtDQUErQjtJQUMvQixtQ0FBbUMsRUFBbkMsbURBQW1DO0lBQ25DLDJCQUEyQixFQUEzQiwyQ0FBMkI7SUFDM0Isc0JBQXNCLEVBQXRCLHNDQUFzQjtJQUN0QiwyQkFBMkIsRUFBM0IsMkNBQTJCO0lBQzNCLDRCQUE0QixFQUE1Qiw0Q0FBNEI7SUFDNUIsZ0JBQWdCLEVBQWhCLGdDQUFnQjtJQUNoQixzQ0FBc0MsRUFBdEMsc0RBQXNDO0lBQ3RDLGlDQUFpQyxFQUFqQyxpREFBaUM7SUFDakMsYUFBYSxFQUFiLDZCQUFhO0lBQ2Isa0JBQWtCLEVBQWxCLGtDQUFrQjtJQUNsQiwrQkFBK0IsRUFBL0IsK0NBQStCO0lBQy9CLGtCQUFrQixFQUFsQixrQ0FBa0I7SUFDbEIsNkJBQTZCLEVBQTdCLDZDQUE2QjtJQUM3Qiw4QkFBOEIsRUFBOUIsOENBQThCO0lBQzlCLHFDQUFxQyxFQUFyQyxxREFBcUM7SUFDckMsb0JBQW9CLEVBQXBCLG9DQUFvQjtJQUNwQix1Q0FBdUMsRUFBdkMsdURBQXVDO0lBQ3ZDLDZCQUE2QixFQUE3Qiw2Q0FBNkI7SUFDN0IsaUJBQWlCLEVBQWpCLGlDQUFpQjtJQUNqQix3QkFBd0IsRUFBeEIsd0NBQXdCO0lBQ3hCLHdDQUF3QyxFQUF4Qyx3REFBd0M7SUFDeEMsZUFBZSxFQUFmLCtCQUFlO0lBQ2YsNkJBQTZCLEVBQTdCLDZDQUE2QjtJQUM3QiwwQkFBMEIsRUFBMUIsMENBQTBCO0lBQzFCLHFCQUFxQixFQUFyQixxQ0FBcUI7SUFDckIsbUNBQW1DLEVBQW5DLG1EQUFtQztJQUNuQyw2QkFBNkIsRUFBN0IsNkNBQTZCO0lBQzdCLG1DQUFtQyxFQUFuQyxtREFBbUM7SUFDbkMsc0NBQXNDLEVBQXRDLHNEQUFzQztJQUN0QyxpQ0FBaUMsRUFBakMsaURBQWlDO0lBQ2pDLG1DQUFtQyxFQUFuQyxtREFBbUM7SUFDbkMsdUJBQXVCLEVBQXZCLHVDQUF1QjtJQUN2QixrQkFBa0IsRUFBbEIsa0NBQWtCO0lBQ2xCLG9CQUFvQixFQUFwQixvQ0FBb0I7SUFDcEIsa0JBQWtCLEVBQWxCLGtDQUFrQjtJQUNsQiw4QkFBOEIsRUFBOUIsOENBQThCO0lBQzlCLCtCQUErQixFQUEvQiwrQ0FBK0I7SUFDL0IseUJBQXlCLEVBQXpCLHlDQUF5QjtJQUN6QixrQ0FBa0MsRUFBbEMsa0RBQWtDO0lBQ2xDLHNDQUFzQyxFQUF0QyxzREFBc0M7SUFDdEMsOEJBQThCLEVBQTlCLDhDQUE4QjtDQUMvQixDQUFDO0FBZ3RCVyxRQUFBLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUM1RCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsaUNBQXVCLENBQUMsQ0FBQztJQUVqRCxPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtRQUN0RCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFRLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBWSxFQUFFLEVBQUUsQ0FDN0MsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FDckIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLGFBQVAsT0FBTyxjQUFQLE9BQU8sR0FBSSxFQUFFLENBQUMsQ0FDbEQsQ0FBQztRQUNKLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWtCLENBQUM7QUFDMUIsQ0FBQyxDQUFDLENBQUM7QUFFVSxRQUFBLG1CQUFtQixHQUFHLCtCQUF1QixDQUFDLElBQUksQ0FDN0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxtQ0FBeUIsQ0FBQyxDQUMxQyxDQUFDO0FBRVcsUUFBQSwwQkFBMEIsR0FBRywrQkFBdUIsQ0FBQyxJQUFJLENBQ3BFLE1BQU0sQ0FBQyxPQUFPLENBQUMsMENBQWdDLENBQUMsQ0FDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFkZExheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kLFxuICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVBbGlhc0NvbW1hbmQsXG4gIENyZWF0ZUFsaWFzQ29tbWFuZElucHV0LFxuICBDcmVhdGVBbGlhc0NvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgQ3JlYXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gIENyZWF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZCxcbiAgQ3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZElucHV0LFxuICBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVGdW5jdGlvbkNvbW1hbmQsXG4gIENyZWF0ZUZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICBDcmVhdGVGdW5jdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZCxcbiAgQ3JlYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kSW5wdXQsXG4gIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQWxpYXNDb21tYW5kLFxuICBEZWxldGVBbGlhc0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQWxpYXNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICBEZWxldGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmQsXG4gIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGdW5jdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICBEZWxldGVGdW5jdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBEZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZElucHV0LFxuICBEZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICBEZWxldGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUxheWVyVmVyc2lvbkNvbW1hbmQsXG4gIERlbGV0ZUxheWVyVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlTGF5ZXJWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlUHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZVByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZVByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kLFxuICBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kSW5wdXQsXG4gIEdldEFjY291bnRTZXR0aW5nc0NvbW1hbmRPdXRwdXQsXG4gIEdldEFsaWFzQ29tbWFuZCxcbiAgR2V0QWxpYXNDb21tYW5kSW5wdXQsXG4gIEdldEFsaWFzQ29tbWFuZE91dHB1dCxcbiAgR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBHZXRDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgR2V0Q29kZVNpZ25pbmdDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kLFxuICBHZXRFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kSW5wdXQsXG4gIEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRPdXRwdXQsXG4gIEdldEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBHZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICBHZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgR2V0RnVuY3Rpb25Db21tYW5kLFxuICBHZXRGdW5jdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0RnVuY3Rpb25Db21tYW5kT3V0cHV0LFxuICBHZXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZCxcbiAgR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRJbnB1dCxcbiAgR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRPdXRwdXQsXG4gIEdldEZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0RnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgR2V0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIEdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIEdldExheWVyVmVyc2lvbkJ5QXJuQ29tbWFuZCxcbiAgR2V0TGF5ZXJWZXJzaW9uQnlBcm5Db21tYW5kSW5wdXQsXG4gIEdldExheWVyVmVyc2lvbkJ5QXJuQ29tbWFuZE91dHB1dCxcbiAgR2V0TGF5ZXJWZXJzaW9uQ29tbWFuZCxcbiAgR2V0TGF5ZXJWZXJzaW9uQ29tbWFuZElucHV0LFxuICBHZXRMYXllclZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBHZXRMYXllclZlcnNpb25Qb2xpY3lDb21tYW5kLFxuICBHZXRMYXllclZlcnNpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gIEdldExheWVyVmVyc2lvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIEdldFBvbGljeUNvbW1hbmQsXG4gIEdldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgR2V0UG9saWN5Q29tbWFuZE91dHB1dCxcbiAgR2V0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmQsXG4gIEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kSW5wdXQsXG4gIEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kT3V0cHV0LFxuICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmQsXG4gIEdldFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZElucHV0LFxuICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIEludm9rZUFzeW5jQ29tbWFuZCxcbiAgSW52b2tlQXN5bmNDb21tYW5kSW5wdXQsXG4gIEludm9rZUFzeW5jQ29tbWFuZE91dHB1dCxcbiAgSW52b2tlQ29tbWFuZCxcbiAgSW52b2tlQ29tbWFuZElucHV0LFxuICBJbnZva2VDb21tYW5kT3V0cHV0LFxuICBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kLFxuICBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kSW5wdXQsXG4gIEludm9rZVdpdGhSZXNwb25zZVN0cmVhbUNvbW1hbmRPdXRwdXQsXG4gIExpc3RBbGlhc2VzQ29tbWFuZCxcbiAgTGlzdEFsaWFzZXNDb21tYW5kSW5wdXQsXG4gIExpc3RBbGlhc2VzQ29tbWFuZE91dHB1dCxcbiAgTGlzdENvZGVTaWduaW5nQ29uZmlnc0NvbW1hbmQsXG4gIExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kSW5wdXQsXG4gIExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0RXZlbnRTb3VyY2VNYXBwaW5nc0NvbW1hbmQsXG4gIExpc3RFdmVudFNvdXJjZU1hcHBpbmdzQ29tbWFuZElucHV0LFxuICBMaXN0RXZlbnRTb3VyY2VNYXBwaW5nc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmQsXG4gIExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgTGlzdEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdzQ29tbWFuZE91dHB1dCxcbiAgTGlzdEZ1bmN0aW9uVXJsQ29uZmlnc0NvbW1hbmQsXG4gIExpc3RGdW5jdGlvblVybENvbmZpZ3NDb21tYW5kSW5wdXQsXG4gIExpc3RGdW5jdGlvblVybENvbmZpZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIExpc3RGdW5jdGlvbnNCeUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIExpc3RGdW5jdGlvbnNDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25zQ29tbWFuZElucHV0LFxuICBMaXN0RnVuY3Rpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdExheWVyVmVyc2lvbnNDb21tYW5kLFxuICBMaXN0TGF5ZXJWZXJzaW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdExheWVyVmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0TGF5ZXJzQ29tbWFuZCxcbiAgTGlzdExheWVyc0NvbW1hbmRJbnB1dCxcbiAgTGlzdExheWVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmQsXG4gIExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdzQ29tbWFuZE91dHB1dCxcbiAgTGlzdFRhZ3NDb21tYW5kLFxuICBMaXN0VGFnc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFRhZ3NDb21tYW5kT3V0cHV0LFxuICBMaXN0VmVyc2lvbnNCeUZ1bmN0aW9uQ29tbWFuZCxcbiAgTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmRJbnB1dCxcbiAgTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hMYXllclZlcnNpb25Db21tYW5kLFxuICBQdWJsaXNoTGF5ZXJWZXJzaW9uQ29tbWFuZElucHV0LFxuICBQdWJsaXNoTGF5ZXJWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgUHVibGlzaFZlcnNpb25Db21tYW5kLFxuICBQdWJsaXNoVmVyc2lvbkNvbW1hbmRJbnB1dCxcbiAgUHVibGlzaFZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBQdXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIFB1dEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZElucHV0LFxuICBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dCxcbiAgUHV0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIFB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIFB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBQdXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZCxcbiAgUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRPdXRwdXQsXG4gIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZCxcbiAgUHV0UnVudGltZU1hbmFnZW1lbnRDb25maWdDb21tYW5kSW5wdXQsXG4gIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZE91dHB1dCxcbiAgUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmQsXG4gIFJlbW92ZUxheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIFJlbW92ZUxheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVBbGlhc0NvbW1hbmQsXG4gIFVwZGF0ZUFsaWFzQ29tbWFuZElucHV0LFxuICBVcGRhdGVBbGlhc0NvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgVXBkYXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZCxcbiAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZElucHV0LFxuICBVcGRhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVGdW5jdGlvbkNvZGVDb21tYW5kLFxuICBVcGRhdGVGdW5jdGlvbkNvZGVDb21tYW5kSW5wdXQsXG4gIFVwZGF0ZUZ1bmN0aW9uQ29kZUNvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gIFVwZGF0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICBVcGRhdGVGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtbGFtYmRhXCI7XG5pbXBvcnQgeyBIdHRwSGFuZGxlck9wdGlvbnMgYXMgX19IdHRwSGFuZGxlck9wdGlvbnMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCAqIGFzIENhdXNlIGZyb20gXCJlZmZlY3QvQ2F1c2VcIjtcbmltcG9ydCAqIGFzIEVmZmVjdCBmcm9tIFwiZWZmZWN0L0VmZmVjdFwiO1xuaW1wb3J0ICogYXMgUlIgZnJvbSBcImVmZmVjdC9SZWFkb25seVJlY29yZFwiO1xuaW1wb3J0IHtcbiAgRGVmYXVsdExhbWJkYUNsaWVudEluc3RhbmNlTGF5ZXIsXG4gIExhbWJkYUNsaWVudEluc3RhbmNlTGF5ZXIsXG4gIExhbWJkYUNsaWVudEluc3RhbmNlVGFnLFxufSBmcm9tIFwiLi9Db250ZXh0XCI7XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZCxcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENyZWF0ZUFsaWFzQ29tbWFuZCxcbiAgQ3JlYXRlQ29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kLFxuICBDcmVhdGVGdW5jdGlvbkNvbW1hbmQsXG4gIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZCxcbiAgRGVsZXRlQWxpYXNDb21tYW5kLFxuICBEZWxldGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29tbWFuZCxcbiAgRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIERlbGV0ZUZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBEZWxldGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZCxcbiAgRGVsZXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kLFxuICBEZWxldGVMYXllclZlcnNpb25Db21tYW5kLFxuICBEZWxldGVQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZCxcbiAgR2V0QWNjb3VudFNldHRpbmdzQ29tbWFuZCxcbiAgR2V0QWxpYXNDb21tYW5kLFxuICBHZXRDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uQ29tbWFuZCxcbiAgR2V0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIEdldEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBHZXRGdW5jdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZCxcbiAgR2V0RnVuY3Rpb25VcmxDb25maWdDb21tYW5kLFxuICBHZXRMYXllclZlcnNpb25Db21tYW5kLFxuICBHZXRMYXllclZlcnNpb25CeUFybkNvbW1hbmQsXG4gIEdldExheWVyVmVyc2lvblBvbGljeUNvbW1hbmQsXG4gIEdldFBvbGljeUNvbW1hbmQsXG4gIEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kLFxuICBHZXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmQsXG4gIEludm9rZUNvbW1hbmQsXG4gIEludm9rZUFzeW5jQ29tbWFuZCxcbiAgSW52b2tlV2l0aFJlc3BvbnNlU3RyZWFtQ29tbWFuZCxcbiAgTGlzdEFsaWFzZXNDb21tYW5kLFxuICBMaXN0Q29kZVNpZ25pbmdDb25maWdzQ29tbWFuZCxcbiAgTGlzdEV2ZW50U291cmNlTWFwcGluZ3NDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ3NDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25zQ29tbWFuZCxcbiAgTGlzdEZ1bmN0aW9uc0J5Q29kZVNpZ25pbmdDb25maWdDb21tYW5kLFxuICBMaXN0RnVuY3Rpb25VcmxDb25maWdzQ29tbWFuZCxcbiAgTGlzdExheWVyc0NvbW1hbmQsXG4gIExpc3RMYXllclZlcnNpb25zQ29tbWFuZCxcbiAgTGlzdFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdzQ29tbWFuZCxcbiAgTGlzdFRhZ3NDb21tYW5kLFxuICBMaXN0VmVyc2lvbnNCeUZ1bmN0aW9uQ29tbWFuZCxcbiAgUHVibGlzaExheWVyVmVyc2lvbkNvbW1hbmQsXG4gIFB1Ymxpc2hWZXJzaW9uQ29tbWFuZCxcbiAgUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmQsXG4gIFB1dEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kLFxuICBQdXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZCxcbiAgUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmQsXG4gIFB1dFJ1bnRpbWVNYW5hZ2VtZW50Q29uZmlnQ29tbWFuZCxcbiAgUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICBVcGRhdGVBbGlhc0NvbW1hbmQsXG4gIFVwZGF0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZCxcbiAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZCxcbiAgVXBkYXRlRnVuY3Rpb25Db2RlQ29tbWFuZCxcbiAgVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZCxcbiAgVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmQsXG4gIFVwZGF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZCxcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhU2VydmljZSB7XG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGFkZExheWVyVmVyc2lvblBlcm1pc3Npb24oXG4gICAgYXJnczogQWRkTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBBZGRMYXllclZlcnNpb25QZXJtaXNzaW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBBZGRQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGFkZFBlcm1pc3Npb24oXG4gICAgYXJnczogQWRkUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlQWxpYXNDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlQWxpYXMoXG4gICAgYXJnczogQ3JlYXRlQWxpYXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBDcmVhdGVBbGlhc0NvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVDb2RlU2lnbmluZ0NvbmZpZyhcbiAgICBhcmdzOiBDcmVhdGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBDcmVhdGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUV2ZW50U291cmNlTWFwcGluZyhcbiAgICBhcmdzOiBDcmVhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgQ3JlYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVGdW5jdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVGdW5jdGlvbihcbiAgICBhcmdzOiBDcmVhdGVGdW5jdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIENyZWF0ZUZ1bmN0aW9uQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnKFxuICAgIGFyZ3M6IENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIENyZWF0ZUZ1bmN0aW9uVXJsQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVBbGlhc0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVBbGlhcyhcbiAgICBhcmdzOiBEZWxldGVBbGlhc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIERlbGV0ZUFsaWFzQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUNvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IERlbGV0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIERlbGV0ZUNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlRXZlbnRTb3VyY2VNYXBwaW5nKFxuICAgIGFyZ3M6IERlbGV0ZUV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBEZWxldGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUZ1bmN0aW9uQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUZ1bmN0aW9uKFxuICAgIGFyZ3M6IERlbGV0ZUZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgRGVsZXRlRnVuY3Rpb25Db21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IERlbGV0ZUZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlRnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVGdW5jdGlvbkNvbmN1cnJlbmN5KFxuICAgIGFyZ3M6IERlbGV0ZUZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlRnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnKFxuICAgIGFyZ3M6IERlbGV0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlRnVuY3Rpb25VcmxDb25maWcoXG4gICAgYXJnczogRGVsZXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUxheWVyVmVyc2lvbkNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVMYXllclZlcnNpb24oXG4gICAgYXJnczogRGVsZXRlTGF5ZXJWZXJzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIERlbGV0ZUxheWVyVmVyc2lvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBkZWxldGVQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnKFxuICAgIGFyZ3M6IERlbGV0ZVByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgRGVsZXRlUHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QWNjb3VudFNldHRpbmdzQ29tbWFuZH1cbiAgICovXG4gIGdldEFjY291bnRTZXR0aW5ncyhcbiAgICBhcmdzOiBHZXRBY2NvdW50U2V0dGluZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0QWNjb3VudFNldHRpbmdzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRBbGlhc0NvbW1hbmR9XG4gICAqL1xuICBnZXRBbGlhcyhcbiAgICBhcmdzOiBHZXRBbGlhc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIEdldEFsaWFzQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldENvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGdldENvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IEdldENvZGVTaWduaW5nQ29uZmlnQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIEdldENvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kfVxuICAgKi9cbiAgZ2V0RXZlbnRTb3VyY2VNYXBwaW5nKFxuICAgIGFyZ3M6IEdldEV2ZW50U291cmNlTWFwcGluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEZ1bmN0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEZ1bmN0aW9uKFxuICAgIGFyZ3M6IEdldEZ1bmN0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgR2V0RnVuY3Rpb25Db21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBnZXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnKFxuICAgIGFyZ3M6IEdldEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmR9XG4gICAqL1xuICBnZXRGdW5jdGlvbkNvbmN1cnJlbmN5KFxuICAgIGFyZ3M6IEdldEZ1bmN0aW9uQ29uY3VycmVuY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEZ1bmN0aW9uQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBHZXRGdW5jdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0RnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIGdldEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWcoXG4gICAgYXJnczogR2V0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBnZXRGdW5jdGlvblVybENvbmZpZyhcbiAgICBhcmdzOiBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBHZXRGdW5jdGlvblVybENvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TGF5ZXJWZXJzaW9uQ29tbWFuZH1cbiAgICovXG4gIGdldExheWVyVmVyc2lvbihcbiAgICBhcmdzOiBHZXRMYXllclZlcnNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBHZXRMYXllclZlcnNpb25Db21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TGF5ZXJWZXJzaW9uQnlBcm5Db21tYW5kfVxuICAgKi9cbiAgZ2V0TGF5ZXJWZXJzaW9uQnlBcm4oXG4gICAgYXJnczogR2V0TGF5ZXJWZXJzaW9uQnlBcm5Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0TGF5ZXJWZXJzaW9uQnlBcm5Db21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldExheWVyVmVyc2lvblBvbGljeUNvbW1hbmR9XG4gICAqL1xuICBnZXRMYXllclZlcnNpb25Qb2xpY3koXG4gICAgYXJnczogR2V0TGF5ZXJWZXJzaW9uUG9saWN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIEdldExheWVyVmVyc2lvblBvbGljeUNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UG9saWN5Q29tbWFuZH1cbiAgICovXG4gIGdldFBvbGljeShcbiAgICBhcmdzOiBHZXRQb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBHZXRQb2xpY3lDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBnZXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnKFxuICAgIGFyZ3M6IEdldFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0UnVudGltZU1hbmFnZW1lbnRDb25maWdDb21tYW5kfVxuICAgKi9cbiAgZ2V0UnVudGltZU1hbmFnZW1lbnRDb25maWcoXG4gICAgYXJnczogR2V0UnVudGltZU1hbmFnZW1lbnRDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgR2V0UnVudGltZU1hbmFnZW1lbnRDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEludm9rZUNvbW1hbmR9XG4gICAqL1xuICBpbnZva2UoXG4gICAgYXJnczogSW52b2tlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgSW52b2tlQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEludm9rZUFzeW5jQ29tbWFuZH1cbiAgICovXG4gIGludm9rZUFzeW5jKFxuICAgIGFyZ3M6IEludm9rZUFzeW5jQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgSW52b2tlQXN5bmNDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSW52b2tlV2l0aFJlc3BvbnNlU3RyZWFtQ29tbWFuZH1cbiAgICovXG4gIGludm9rZVdpdGhSZXNwb25zZVN0cmVhbShcbiAgICBhcmdzOiBJbnZva2VXaXRoUmVzcG9uc2VTdHJlYW1Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgSW52b2tlV2l0aFJlc3BvbnNlU3RyZWFtQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0QWxpYXNlc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0QWxpYXNlcyhcbiAgICBhcmdzOiBMaXN0QWxpYXNlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIExpc3RBbGlhc2VzQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdENvZGVTaWduaW5nQ29uZmlncyhcbiAgICBhcmdzOiBMaXN0Q29kZVNpZ25pbmdDb25maWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIExpc3RDb2RlU2lnbmluZ0NvbmZpZ3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RFdmVudFNvdXJjZU1hcHBpbmdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RFdmVudFNvdXJjZU1hcHBpbmdzKFxuICAgIGFyZ3M6IExpc3RFdmVudFNvdXJjZU1hcHBpbmdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIExpc3RFdmVudFNvdXJjZU1hcHBpbmdzQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdzKFxuICAgIGFyZ3M6IExpc3RGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBMaXN0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RGdW5jdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEZ1bmN0aW9ucyhcbiAgICBhcmdzOiBMaXN0RnVuY3Rpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgTGlzdEZ1bmN0aW9uc0NvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBsaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZyhcbiAgICBhcmdzOiBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBMaXN0RnVuY3Rpb25zQnlDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEZ1bmN0aW9uVXJsQ29uZmlnc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0RnVuY3Rpb25VcmxDb25maWdzKFxuICAgIGFyZ3M6IExpc3RGdW5jdGlvblVybENvbmZpZ3NDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgTGlzdEZ1bmN0aW9uVXJsQ29uZmlnc0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdExheWVyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TGF5ZXJzKFxuICAgIGFyZ3M6IExpc3RMYXllcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBMaXN0TGF5ZXJzQ29tbWFuZE91dHB1dD47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RMYXllclZlcnNpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RMYXllclZlcnNpb25zKFxuICAgIGFyZ3M6IExpc3RMYXllclZlcnNpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIExpc3RMYXllclZlcnNpb25zQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWdzKFxuICAgIGFyZ3M6IExpc3RQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBMaXN0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ3NDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUYWdzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUYWdzKFxuICAgIGFyZ3M6IExpc3RUYWdzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxuZXZlciwgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbiwgTGlzdFRhZ3NDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmR9XG4gICAqL1xuICBsaXN0VmVyc2lvbnNCeUZ1bmN0aW9uKFxuICAgIGFyZ3M6IExpc3RWZXJzaW9uc0J5RnVuY3Rpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgTGlzdFZlcnNpb25zQnlGdW5jdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVibGlzaExheWVyVmVyc2lvbkNvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoTGF5ZXJWZXJzaW9uKFxuICAgIGFyZ3M6IFB1Ymxpc2hMYXllclZlcnNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgUHVibGlzaExheWVyVmVyc2lvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHVibGlzaFZlcnNpb25Db21tYW5kfVxuICAgKi9cbiAgcHVibGlzaFZlcnNpb24oXG4gICAgYXJnczogUHVibGlzaFZlcnNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBQdWJsaXNoVmVyc2lvbkNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIHB1dEZ1bmN0aW9uQ29kZVNpZ25pbmdDb25maWcoXG4gICAgYXJnczogUHV0RnVuY3Rpb25Db2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBQdXRGdW5jdGlvbkNvZGVTaWduaW5nQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZH1cbiAgICovXG4gIHB1dEZ1bmN0aW9uQ29uY3VycmVuY3koXG4gICAgYXJnczogUHV0RnVuY3Rpb25Db25jdXJyZW5jeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBQdXRGdW5jdGlvbkNvbmN1cnJlbmN5Q29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZH1cbiAgICovXG4gIHB1dEZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWcoXG4gICAgYXJnczogUHV0RnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBQdXRGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZH1cbiAgICovXG4gIHB1dFByb3Zpc2lvbmVkQ29uY3VycmVuY3lDb25maWcoXG4gICAgYXJnczogUHV0UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBQdXRQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICBwdXRSdW50aW1lTWFuYWdlbWVudENvbmZpZyhcbiAgICBhcmdzOiBQdXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBQdXRSdW50aW1lTWFuYWdlbWVudENvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZW1vdmVMYXllclZlcnNpb25QZXJtaXNzaW9uKFxuICAgIGFyZ3M6IFJlbW92ZUxheWVyVmVyc2lvblBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgUmVtb3ZlTGF5ZXJWZXJzaW9uUGVybWlzc2lvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZW1vdmVQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdGFnUmVzb3VyY2UoXG4gICAgYXJnczogVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnRhZ1Jlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIHVudGFnUmVzb3VyY2UoXG4gICAgYXJnczogVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8bmV2ZXIsIENhdXNlLlVua25vd25FeGNlcHRpb24sIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0PjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlQWxpYXNDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlQWxpYXMoXG4gICAgYXJnczogVXBkYXRlQWxpYXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PG5ldmVyLCBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLCBVcGRhdGVBbGlhc0NvbW1hbmRPdXRwdXQ+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVDb2RlU2lnbmluZ0NvbmZpZyhcbiAgICBhcmdzOiBVcGRhdGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBVcGRhdGVDb2RlU2lnbmluZ0NvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZH1cbiAgICovXG4gIHVwZGF0ZUV2ZW50U291cmNlTWFwcGluZyhcbiAgICBhcmdzOiBVcGRhdGVFdmVudFNvdXJjZU1hcHBpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgVXBkYXRlRXZlbnRTb3VyY2VNYXBwaW5nQ29tbWFuZE91dHB1dFxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVGdW5jdGlvbkNvZGVDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlRnVuY3Rpb25Db2RlKFxuICAgIGFyZ3M6IFVwZGF0ZUZ1bmN0aW9uQ29kZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgbmV2ZXIsXG4gICAgQ2F1c2UuVW5rbm93bkV4Y2VwdGlvbixcbiAgICBVcGRhdGVGdW5jdGlvbkNvZGVDb21tYW5kT3V0cHV0XG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVGdW5jdGlvbkNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogVXBkYXRlRnVuY3Rpb25Db25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBuZXZlcixcbiAgICBDYXVzZS5Vbmtub3duRXhjZXB0aW9uLFxuICAgIFVwZGF0ZUZ1bmN0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVGdW5jdGlvbkV2ZW50SW52b2tlQ29uZmlnKFxuICAgIGFyZ3M6IFVwZGF0ZUZ1bmN0aW9uRXZlbnRJbnZva2VDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgVXBkYXRlRnVuY3Rpb25FdmVudEludm9rZUNvbmZpZ0NvbW1hbmRPdXRwdXRcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlRnVuY3Rpb25VcmxDb25maWcoXG4gICAgYXJnczogVXBkYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIG5ldmVyLFxuICAgIENhdXNlLlVua25vd25FeGNlcHRpb24sXG4gICAgVXBkYXRlRnVuY3Rpb25VcmxDb25maWdDb21tYW5kT3V0cHV0XG4gID47XG59XG5cbmV4cG9ydCBjb25zdCBCYXNlTGFtYmRhU2VydmljZUVmZmVjdCA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKExhbWJkYUNsaWVudEluc3RhbmNlVGFnKTtcblxuICByZXR1cm4gUlIudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM6IGFueSkgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKCgpID0+XG4gICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwgb3B0aW9ucyA/PyB7fSksXG4gICAgICApO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSAoY29tbWFuZFswXS50b0xvd2VyQ2FzZSgpICsgY29tbWFuZC5zbGljZSgxKSkucmVwbGFjZShcbiAgICAgIC9Db21tYW5kJC8sXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgcmV0dXJuIHsgLi4uYWNjLCBbbWV0aG9kTmFtZV06IG1ldGhvZEltcGwgfTtcbiAgfSwge30pIGFzIExhbWJkYVNlcnZpY2U7XG59KTtcblxuZXhwb3J0IGNvbnN0IExhbWJkYVNlcnZpY2VFZmZlY3QgPSBCYXNlTGFtYmRhU2VydmljZUVmZmVjdC5waXBlKFxuICBFZmZlY3QucHJvdmlkZShMYW1iZGFDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0TGFtYmRhU2VydmljZUVmZmVjdCA9IEJhc2VMYW1iZGFTZXJ2aWNlRWZmZWN0LnBpcGUoXG4gIEVmZmVjdC5wcm92aWRlKERlZmF1bHRMYW1iZGFDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG4iXX0=
@@ -1,22 +0,0 @@
1
- import { LambdaClient } from "@aws-sdk/client-lambda";
2
- import * as Context from "effect/Context";
3
- import * as Data from "effect/Data";
4
- import * as Effect from "effect/Effect";
5
- import * as Layer from "effect/Layer";
6
- import * as Runtime from "effect/Runtime";
7
- export class LambdaClientOptions extends Data.TaggedClass("LambdaClientOptions") {
8
- }
9
- export const LambdaClientConfigTag = Context.Tag("@effect-aws/LambdaClient/Config");
10
- export const DefaultLambdaClientConfigLayer = Layer.effect(LambdaClientConfigTag, Effect.runtime().pipe(Effect.map((runtime) => new LambdaClientOptions({
11
- logger: {
12
- info: (m) => Effect.logInfo(m).pipe(Runtime.runSync(runtime)),
13
- warn: (m) => Effect.logWarning(m).pipe(Runtime.runSync(runtime)),
14
- error: (m) => Effect.logError(m).pipe(Runtime.runSync(runtime)),
15
- debug: (m) => Effect.logDebug(m).pipe(Runtime.runSync(runtime)),
16
- trace: (m) => Effect.logTrace(m).pipe(Runtime.runSync(runtime)),
17
- },
18
- }))));
19
- export const LambdaClientInstanceTag = Context.Tag("@effect-aws/LambdaClient/Instance");
20
- export const LambdaClientInstanceLayer = Layer.effect(LambdaClientInstanceTag, LambdaClientConfigTag.pipe(Effect.map((config) => new LambdaClient(config))));
21
- export const DefaultLambdaClientInstanceLayer = LambdaClientInstanceLayer.pipe(Layer.provide(DefaultLambdaClientConfigLayer));
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Db250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQXNCLE1BQU0sd0JBQXdCLENBQUM7QUFDMUUsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUMxQyxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUNwQyxPQUFPLEtBQUssTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEtBQUssS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUN0QyxPQUFPLEtBQUssT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBRTFDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxJQUFJLENBQUMsV0FBVyxDQUN2RCxxQkFBcUIsQ0FDRjtDQUFHO0FBRXhCLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQzlDLGlDQUFpQyxDQUNsQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDeEQscUJBQXFCLEVBQ3JCLE1BQU0sQ0FBQyxPQUFPLEVBQVMsQ0FBQyxJQUFJLENBQzFCLE1BQU0sQ0FBQyxHQUFHLENBQ1IsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUNWLElBQUksbUJBQW1CLENBQUM7SUFDdEIsTUFBTSxFQUFFO1FBQ04sSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdELElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0QsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9ELEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztLQUNoRTtDQUNGLENBQUMsQ0FDTCxDQUNGLENBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQ2hELG1DQUFtQyxDQUNwQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDbkQsdUJBQXVCLEVBQ3ZCLHFCQUFxQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxJQUFJLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQzdFLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FBRyx5QkFBeUIsQ0FBQyxJQUFJLENBQzVFLEtBQUssQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUMsQ0FDOUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExhbWJkYUNsaWVudCwgTGFtYmRhQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1sYW1iZGFcIjtcbmltcG9ydCAqIGFzIENvbnRleHQgZnJvbSBcImVmZmVjdC9Db250ZXh0XCI7XG5pbXBvcnQgKiBhcyBEYXRhIGZyb20gXCJlZmZlY3QvRGF0YVwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQgKiBhcyBSdW50aW1lIGZyb20gXCJlZmZlY3QvUnVudGltZVwiO1xuXG5leHBvcnQgY2xhc3MgTGFtYmRhQ2xpZW50T3B0aW9ucyBleHRlbmRzIERhdGEuVGFnZ2VkQ2xhc3MoXG4gIFwiTGFtYmRhQ2xpZW50T3B0aW9uc1wiLFxuKTxMYW1iZGFDbGllbnRDb25maWc+IHt9XG5cbmV4cG9ydCBjb25zdCBMYW1iZGFDbGllbnRDb25maWdUYWcgPSBDb250ZXh0LlRhZzxMYW1iZGFDbGllbnRPcHRpb25zPihcbiAgXCJAZWZmZWN0LWF3cy9MYW1iZGFDbGllbnQvQ29uZmlnXCIsXG4pO1xuXG5leHBvcnQgY29uc3QgRGVmYXVsdExhbWJkYUNsaWVudENvbmZpZ0xheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBMYW1iZGFDbGllbnRDb25maWdUYWcsXG4gIEVmZmVjdC5ydW50aW1lPG5ldmVyPigpLnBpcGUoXG4gICAgRWZmZWN0Lm1hcChcbiAgICAgIChydW50aW1lKSA9PlxuICAgICAgICBuZXcgTGFtYmRhQ2xpZW50T3B0aW9ucyh7XG4gICAgICAgICAgbG9nZ2VyOiB7XG4gICAgICAgICAgICBpbmZvOiAobSkgPT4gRWZmZWN0LmxvZ0luZm8obSkucGlwZShSdW50aW1lLnJ1blN5bmMocnVudGltZSkpLFxuICAgICAgICAgICAgd2FybjogKG0pID0+IEVmZmVjdC5sb2dXYXJuaW5nKG0pLnBpcGUoUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpKSxcbiAgICAgICAgICAgIGVycm9yOiAobSkgPT4gRWZmZWN0LmxvZ0Vycm9yKG0pLnBpcGUoUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpKSxcbiAgICAgICAgICAgIGRlYnVnOiAobSkgPT4gRWZmZWN0LmxvZ0RlYnVnKG0pLnBpcGUoUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpKSxcbiAgICAgICAgICAgIHRyYWNlOiAobSkgPT4gRWZmZWN0LmxvZ1RyYWNlKG0pLnBpcGUoUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICApLFxuICApLFxuKTtcblxuZXhwb3J0IGNvbnN0IExhbWJkYUNsaWVudEluc3RhbmNlVGFnID0gQ29udGV4dC5UYWc8TGFtYmRhQ2xpZW50PihcbiAgXCJAZWZmZWN0LWF3cy9MYW1iZGFDbGllbnQvSW5zdGFuY2VcIixcbik7XG5cbmV4cG9ydCBjb25zdCBMYW1iZGFDbGllbnRJbnN0YW5jZUxheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBMYW1iZGFDbGllbnRJbnN0YW5jZVRhZyxcbiAgTGFtYmRhQ2xpZW50Q29uZmlnVGFnLnBpcGUoRWZmZWN0Lm1hcCgoY29uZmlnKSA9PiBuZXcgTGFtYmRhQ2xpZW50KGNvbmZpZykpKSxcbik7XG5cbmV4cG9ydCBjb25zdCBEZWZhdWx0TGFtYmRhQ2xpZW50SW5zdGFuY2VMYXllciA9IExhbWJkYUNsaWVudEluc3RhbmNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0TGFtYmRhQ2xpZW50Q29uZmlnTGF5ZXIpLFxuKTtcbiJdfQ==