@effect-aws/client-bedrock 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.
- package/CHANGELOG.md +7 -0
- package/LICENSE +19 -0
- package/README.md +85 -0
- package/docgen.json +8 -0
- package/lib/BedrockClientInstance.d.ts +31 -0
- package/lib/BedrockClientInstance.js +57 -0
- package/lib/BedrockClientInstanceConfig.d.ts +23 -0
- package/lib/BedrockClientInstanceConfig.js +44 -0
- package/lib/BedrockService.d.ts +292 -0
- package/lib/BedrockService.js +122 -0
- package/lib/Errors.d.ts +20 -0
- package/lib/Errors.js +16 -0
- package/lib/esm/BedrockClientInstance.js +30 -0
- package/lib/esm/BedrockClientInstanceConfig.js +40 -0
- package/lib/esm/BedrockService.js +118 -0
- package/lib/esm/Errors.js +13 -0
- package/lib/esm/index.js +5 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.js +21 -0
- package/package.json +54 -0
- package/project.json +77 -0
- package/vitest.config.ts +3 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DefaultBedrockServiceLayer = exports.BedrockServiceLayer = exports.BaseBedrockServiceLayer = exports.makeBedrockService = exports.BedrockService = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @since 1.0.0
|
|
6
|
+
*/
|
|
7
|
+
const client_bedrock_1 = require("@aws-sdk/client-bedrock");
|
|
8
|
+
const effect_1 = require("effect");
|
|
9
|
+
const BedrockClientInstance_1 = require("./BedrockClientInstance");
|
|
10
|
+
const BedrockClientInstanceConfig_1 = require("./BedrockClientInstanceConfig");
|
|
11
|
+
const Errors_1 = require("./Errors");
|
|
12
|
+
const commands = {
|
|
13
|
+
BatchDeleteEvaluationJobCommand: client_bedrock_1.BatchDeleteEvaluationJobCommand,
|
|
14
|
+
CreateEvaluationJobCommand: client_bedrock_1.CreateEvaluationJobCommand,
|
|
15
|
+
CreateGuardrailCommand: client_bedrock_1.CreateGuardrailCommand,
|
|
16
|
+
CreateGuardrailVersionCommand: client_bedrock_1.CreateGuardrailVersionCommand,
|
|
17
|
+
CreateInferenceProfileCommand: client_bedrock_1.CreateInferenceProfileCommand,
|
|
18
|
+
CreateModelCopyJobCommand: client_bedrock_1.CreateModelCopyJobCommand,
|
|
19
|
+
CreateModelCustomizationJobCommand: client_bedrock_1.CreateModelCustomizationJobCommand,
|
|
20
|
+
CreateModelImportJobCommand: client_bedrock_1.CreateModelImportJobCommand,
|
|
21
|
+
CreateModelInvocationJobCommand: client_bedrock_1.CreateModelInvocationJobCommand,
|
|
22
|
+
CreateProvisionedModelThroughputCommand: client_bedrock_1.CreateProvisionedModelThroughputCommand,
|
|
23
|
+
DeleteCustomModelCommand: client_bedrock_1.DeleteCustomModelCommand,
|
|
24
|
+
DeleteGuardrailCommand: client_bedrock_1.DeleteGuardrailCommand,
|
|
25
|
+
DeleteImportedModelCommand: client_bedrock_1.DeleteImportedModelCommand,
|
|
26
|
+
DeleteInferenceProfileCommand: client_bedrock_1.DeleteInferenceProfileCommand,
|
|
27
|
+
DeleteModelInvocationLoggingConfigurationCommand: client_bedrock_1.DeleteModelInvocationLoggingConfigurationCommand,
|
|
28
|
+
DeleteProvisionedModelThroughputCommand: client_bedrock_1.DeleteProvisionedModelThroughputCommand,
|
|
29
|
+
GetCustomModelCommand: client_bedrock_1.GetCustomModelCommand,
|
|
30
|
+
GetEvaluationJobCommand: client_bedrock_1.GetEvaluationJobCommand,
|
|
31
|
+
GetFoundationModelCommand: client_bedrock_1.GetFoundationModelCommand,
|
|
32
|
+
GetGuardrailCommand: client_bedrock_1.GetGuardrailCommand,
|
|
33
|
+
GetImportedModelCommand: client_bedrock_1.GetImportedModelCommand,
|
|
34
|
+
GetInferenceProfileCommand: client_bedrock_1.GetInferenceProfileCommand,
|
|
35
|
+
GetModelCopyJobCommand: client_bedrock_1.GetModelCopyJobCommand,
|
|
36
|
+
GetModelCustomizationJobCommand: client_bedrock_1.GetModelCustomizationJobCommand,
|
|
37
|
+
GetModelImportJobCommand: client_bedrock_1.GetModelImportJobCommand,
|
|
38
|
+
GetModelInvocationJobCommand: client_bedrock_1.GetModelInvocationJobCommand,
|
|
39
|
+
GetModelInvocationLoggingConfigurationCommand: client_bedrock_1.GetModelInvocationLoggingConfigurationCommand,
|
|
40
|
+
GetProvisionedModelThroughputCommand: client_bedrock_1.GetProvisionedModelThroughputCommand,
|
|
41
|
+
ListCustomModelsCommand: client_bedrock_1.ListCustomModelsCommand,
|
|
42
|
+
ListEvaluationJobsCommand: client_bedrock_1.ListEvaluationJobsCommand,
|
|
43
|
+
ListFoundationModelsCommand: client_bedrock_1.ListFoundationModelsCommand,
|
|
44
|
+
ListGuardrailsCommand: client_bedrock_1.ListGuardrailsCommand,
|
|
45
|
+
ListImportedModelsCommand: client_bedrock_1.ListImportedModelsCommand,
|
|
46
|
+
ListInferenceProfilesCommand: client_bedrock_1.ListInferenceProfilesCommand,
|
|
47
|
+
ListModelCopyJobsCommand: client_bedrock_1.ListModelCopyJobsCommand,
|
|
48
|
+
ListModelCustomizationJobsCommand: client_bedrock_1.ListModelCustomizationJobsCommand,
|
|
49
|
+
ListModelImportJobsCommand: client_bedrock_1.ListModelImportJobsCommand,
|
|
50
|
+
ListModelInvocationJobsCommand: client_bedrock_1.ListModelInvocationJobsCommand,
|
|
51
|
+
ListProvisionedModelThroughputsCommand: client_bedrock_1.ListProvisionedModelThroughputsCommand,
|
|
52
|
+
ListTagsForResourceCommand: client_bedrock_1.ListTagsForResourceCommand,
|
|
53
|
+
PutModelInvocationLoggingConfigurationCommand: client_bedrock_1.PutModelInvocationLoggingConfigurationCommand,
|
|
54
|
+
StopEvaluationJobCommand: client_bedrock_1.StopEvaluationJobCommand,
|
|
55
|
+
StopModelCustomizationJobCommand: client_bedrock_1.StopModelCustomizationJobCommand,
|
|
56
|
+
StopModelInvocationJobCommand: client_bedrock_1.StopModelInvocationJobCommand,
|
|
57
|
+
TagResourceCommand: client_bedrock_1.TagResourceCommand,
|
|
58
|
+
UntagResourceCommand: client_bedrock_1.UntagResourceCommand,
|
|
59
|
+
UpdateGuardrailCommand: client_bedrock_1.UpdateGuardrailCommand,
|
|
60
|
+
UpdateProvisionedModelThroughputCommand: client_bedrock_1.UpdateProvisionedModelThroughputCommand,
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* @since 1.0.0
|
|
64
|
+
* @category models
|
|
65
|
+
*/
|
|
66
|
+
class BedrockService extends effect_1.Effect.Tag("@effect-aws/client-bedrock/BedrockService")() {
|
|
67
|
+
}
|
|
68
|
+
exports.BedrockService = BedrockService;
|
|
69
|
+
/**
|
|
70
|
+
* @since 1.0.0
|
|
71
|
+
* @category constructors
|
|
72
|
+
*/
|
|
73
|
+
exports.makeBedrockService = effect_1.Effect.gen(function* (_) {
|
|
74
|
+
const client = yield* _(BedrockClientInstance_1.BedrockClientInstance);
|
|
75
|
+
return effect_1.Record.toEntries(commands).reduce((acc, [command]) => {
|
|
76
|
+
const CommandCtor = commands[command];
|
|
77
|
+
const methodImpl = (args, options) => effect_1.Effect.tryPromise({
|
|
78
|
+
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
79
|
+
...(options !== null && options !== void 0 ? options : {}),
|
|
80
|
+
abortSignal,
|
|
81
|
+
}),
|
|
82
|
+
catch: (e) => {
|
|
83
|
+
if (e instanceof client_bedrock_1.BedrockServiceException &&
|
|
84
|
+
Errors_1.AllServiceErrors.includes(e.name)) {
|
|
85
|
+
const ServiceException = effect_1.Data.tagged(e.name);
|
|
86
|
+
return ServiceException({
|
|
87
|
+
...e,
|
|
88
|
+
message: e.message,
|
|
89
|
+
stack: e.stack,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
if (e instanceof Error) {
|
|
93
|
+
return (0, Errors_1.SdkError)({
|
|
94
|
+
...e,
|
|
95
|
+
name: "SdkError",
|
|
96
|
+
message: e.message,
|
|
97
|
+
stack: e.stack,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
throw e;
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
|
|
104
|
+
return { ...acc, [methodName]: methodImpl };
|
|
105
|
+
}, {});
|
|
106
|
+
});
|
|
107
|
+
/**
|
|
108
|
+
* @since 1.0.0
|
|
109
|
+
* @category layers
|
|
110
|
+
*/
|
|
111
|
+
exports.BaseBedrockServiceLayer = effect_1.Layer.effect(BedrockService, exports.makeBedrockService);
|
|
112
|
+
/**
|
|
113
|
+
* @since 1.0.0
|
|
114
|
+
* @category layers
|
|
115
|
+
*/
|
|
116
|
+
exports.BedrockServiceLayer = exports.BaseBedrockServiceLayer.pipe(effect_1.Layer.provide(BedrockClientInstance_1.BedrockClientInstanceLayer));
|
|
117
|
+
/**
|
|
118
|
+
* @since 1.0.0
|
|
119
|
+
* @category layers
|
|
120
|
+
*/
|
|
121
|
+
exports.DefaultBedrockServiceLayer = exports.BedrockServiceLayer.pipe(effect_1.Layer.provide(BedrockClientInstanceConfig_1.DefaultBedrockClientConfigLayer));
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmVkcm9ja1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQmVkcm9ja1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCw0REFrSmlDO0FBQ2pDLG1DQUFxRDtBQUNyRCxtRUFHaUM7QUFDakMsK0VBQWdGO0FBQ2hGLHFDQVlrQjtBQWFsQixNQUFNLFFBQVEsR0FBRztJQUNmLCtCQUErQixFQUEvQixnREFBK0I7SUFDL0IsMEJBQTBCLEVBQTFCLDJDQUEwQjtJQUMxQixzQkFBc0IsRUFBdEIsdUNBQXNCO0lBQ3RCLDZCQUE2QixFQUE3Qiw4Q0FBNkI7SUFDN0IsNkJBQTZCLEVBQTdCLDhDQUE2QjtJQUM3Qix5QkFBeUIsRUFBekIsMENBQXlCO0lBQ3pCLGtDQUFrQyxFQUFsQyxtREFBa0M7SUFDbEMsMkJBQTJCLEVBQTNCLDRDQUEyQjtJQUMzQiwrQkFBK0IsRUFBL0IsZ0RBQStCO0lBQy9CLHVDQUF1QyxFQUF2Qyx3REFBdUM7SUFDdkMsd0JBQXdCLEVBQXhCLHlDQUF3QjtJQUN4QixzQkFBc0IsRUFBdEIsdUNBQXNCO0lBQ3RCLDBCQUEwQixFQUExQiwyQ0FBMEI7SUFDMUIsNkJBQTZCLEVBQTdCLDhDQUE2QjtJQUM3QixnREFBZ0QsRUFBaEQsaUVBQWdEO0lBQ2hELHVDQUF1QyxFQUF2Qyx3REFBdUM7SUFDdkMscUJBQXFCLEVBQXJCLHNDQUFxQjtJQUNyQix1QkFBdUIsRUFBdkIsd0NBQXVCO0lBQ3ZCLHlCQUF5QixFQUF6QiwwQ0FBeUI7SUFDekIsbUJBQW1CLEVBQW5CLG9DQUFtQjtJQUNuQix1QkFBdUIsRUFBdkIsd0NBQXVCO0lBQ3ZCLDBCQUEwQixFQUExQiwyQ0FBMEI7SUFDMUIsc0JBQXNCLEVBQXRCLHVDQUFzQjtJQUN0QiwrQkFBK0IsRUFBL0IsZ0RBQStCO0lBQy9CLHdCQUF3QixFQUF4Qix5Q0FBd0I7SUFDeEIsNEJBQTRCLEVBQTVCLDZDQUE0QjtJQUM1Qiw2Q0FBNkMsRUFBN0MsOERBQTZDO0lBQzdDLG9DQUFvQyxFQUFwQyxxREFBb0M7SUFDcEMsdUJBQXVCLEVBQXZCLHdDQUF1QjtJQUN2Qix5QkFBeUIsRUFBekIsMENBQXlCO0lBQ3pCLDJCQUEyQixFQUEzQiw0Q0FBMkI7SUFDM0IscUJBQXFCLEVBQXJCLHNDQUFxQjtJQUNyQix5QkFBeUIsRUFBekIsMENBQXlCO0lBQ3pCLDRCQUE0QixFQUE1Qiw2Q0FBNEI7SUFDNUIsd0JBQXdCLEVBQXhCLHlDQUF3QjtJQUN4QixpQ0FBaUMsRUFBakMsa0RBQWlDO0lBQ2pDLDBCQUEwQixFQUExQiwyQ0FBMEI7SUFDMUIsOEJBQThCLEVBQTlCLCtDQUE4QjtJQUM5QixzQ0FBc0MsRUFBdEMsdURBQXNDO0lBQ3RDLDBCQUEwQixFQUExQiwyQ0FBMEI7SUFDMUIsNkNBQTZDLEVBQTdDLDhEQUE2QztJQUM3Qyx3QkFBd0IsRUFBeEIseUNBQXdCO0lBQ3hCLGdDQUFnQyxFQUFoQyxpREFBZ0M7SUFDaEMsNkJBQTZCLEVBQTdCLDhDQUE2QjtJQUM3QixrQkFBa0IsRUFBbEIsbUNBQWtCO0lBQ2xCLG9CQUFvQixFQUFwQixxQ0FBb0I7SUFDcEIsc0JBQXNCLEVBQXRCLHVDQUFzQjtJQUN0Qix1Q0FBdUMsRUFBdkMsd0RBQXVDO0NBQ3hDLENBQUM7QUFpeEJGOzs7R0FHRztBQUNILE1BQWEsY0FBZSxTQUFRLGVBQU0sQ0FBQyxHQUFHLENBQzVDLDJDQUEyQyxDQUM1QyxFQUFtQztDQUFHO0FBRnZDLHdDQUV1QztBQUV2Qzs7O0dBR0c7QUFDVSxRQUFBLGtCQUFrQixHQUFHLGVBQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUN2RCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsNkNBQXFCLENBQUMsQ0FBQztJQUUvQyxPQUFPLGVBQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRTtRQUMxRCxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFRLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBNEIsRUFBRSxFQUFFLENBQzdELGVBQU0sQ0FBQyxVQUFVLENBQUM7WUFDaEIsR0FBRyxFQUFFLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FDbkIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDakMsR0FBRyxDQUFDLE9BQU8sYUFBUCxPQUFPLGNBQVAsT0FBTyxHQUFJLEVBQUUsQ0FBQztnQkFDbEIsV0FBVzthQUNaLENBQUM7WUFDSixLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDWCxJQUNFLENBQUMsWUFBWSx3Q0FBdUI7b0JBQ3BDLHlCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQ2pDLENBQUM7b0JBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxhQUFJLENBQUMsTUFBTSxDQUVsQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBRVYsT0FBTyxnQkFBZ0IsQ0FBQzt3QkFDdEIsR0FBRyxDQUFDO3dCQUNKLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksQ0FBQyxZQUFZLEtBQUssRUFBRSxDQUFDO29CQUN2QixPQUFPLElBQUEsaUJBQVEsRUFBQzt3QkFDZCxHQUFHLENBQUM7d0JBQ0osSUFBSSxFQUFFLFVBQVU7d0JBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTzt3QkFDbEIsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3FCQUNmLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELE1BQU0sQ0FBQyxDQUFDO1lBQ1YsQ0FBQztTQUNGLENBQUMsQ0FBQztRQUNMLE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQW9CLENBQUM7QUFDNUIsQ0FBQyxDQUFDLENBQUM7QUFFSDs7O0dBR0c7QUFDVSxRQUFBLHVCQUF1QixHQUFHLGNBQUssQ0FBQyxNQUFNLENBQ2pELGNBQWMsRUFDZCwwQkFBa0IsQ0FDbkIsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEsbUJBQW1CLEdBQUcsK0JBQXVCLENBQUMsSUFBSSxDQUM3RCxjQUFLLENBQUMsT0FBTyxDQUFDLGtEQUEwQixDQUFDLENBQzFDLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLDBCQUEwQixHQUFHLDJCQUFtQixDQUFDLElBQUksQ0FDaEUsY0FBSyxDQUFDLE9BQU8sQ0FBQyw2REFBK0IsQ0FBQyxDQUMvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgQmVkcm9ja1NlcnZpY2VFeGNlcHRpb24sXG4gIEJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYkNvbW1hbmQsXG4gIHR5cGUgQmF0Y2hEZWxldGVFdmFsdWF0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIEJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUV2YWx1YXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIENyZWF0ZUV2YWx1YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlRXZhbHVhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUd1YXJkcmFpbENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlR3VhcmRyYWlsQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUd1YXJkcmFpbFZlcnNpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZUd1YXJkcmFpbFZlcnNpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlR3VhcmRyYWlsVmVyc2lvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kLFxuICB0eXBlIENyZWF0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTW9kZWxDb3B5Sm9iQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZU1vZGVsSW1wb3J0Sm9iQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVNb2RlbEltcG9ydEpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVNb2RlbEltcG9ydEpvYkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZU1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZU1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbiAgdHlwZSBDcmVhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUN1c3RvbU1vZGVsQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVDdXN0b21Nb2RlbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVDdXN0b21Nb2RlbENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUd1YXJkcmFpbENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlR3VhcmRyYWlsQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUltcG9ydGVkTW9kZWxDb21tYW5kLFxuICB0eXBlIERlbGV0ZUltcG9ydGVkTW9kZWxDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlSW1wb3J0ZWRNb2RlbENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kLFxuICB0eXBlIERlbGV0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG4gIEdldEN1c3RvbU1vZGVsQ29tbWFuZCxcbiAgdHlwZSBHZXRDdXN0b21Nb2RlbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRDdXN0b21Nb2RlbENvbW1hbmRPdXRwdXQsXG4gIEdldEV2YWx1YXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIEdldEV2YWx1YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0RXZhbHVhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmQsXG4gIHR5cGUgR2V0Rm91bmRhdGlvbk1vZGVsQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmRPdXRwdXQsXG4gIEdldEd1YXJkcmFpbENvbW1hbmQsXG4gIHR5cGUgR2V0R3VhcmRyYWlsQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gIEdldEltcG9ydGVkTW9kZWxDb21tYW5kLFxuICB0eXBlIEdldEltcG9ydGVkTW9kZWxDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0SW1wb3J0ZWRNb2RlbENvbW1hbmRPdXRwdXQsXG4gIEdldEluZmVyZW5jZVByb2ZpbGVDb21tYW5kLFxuICB0eXBlIEdldEluZmVyZW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0SW5mZXJlbmNlUHJvZmlsZUNvbW1hbmRPdXRwdXQsXG4gIEdldE1vZGVsQ29weUpvYkNvbW1hbmQsXG4gIHR5cGUgR2V0TW9kZWxDb3B5Sm9iQ29tbWFuZElucHV0LFxuICB0eXBlIEdldE1vZGVsQ29weUpvYkNvbW1hbmRPdXRwdXQsXG4gIEdldE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmQsXG4gIHR5cGUgR2V0TW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIEdldE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIEdldE1vZGVsSW1wb3J0Sm9iQ29tbWFuZCxcbiAgdHlwZSBHZXRNb2RlbEltcG9ydEpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRNb2RlbEltcG9ydEpvYkNvbW1hbmRPdXRwdXQsXG4gIEdldE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmQsXG4gIHR5cGUgR2V0TW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIEdldE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIEdldE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIEdldFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbiAgdHlwZSBHZXRQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG4gIExpc3RDdXN0b21Nb2RlbHNDb21tYW5kLFxuICB0eXBlIExpc3RDdXN0b21Nb2RlbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEN1c3RvbU1vZGVsc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmQsXG4gIHR5cGUgTGlzdEV2YWx1YXRpb25Kb2JzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmRPdXRwdXQsXG4gIExpc3RGb3VuZGF0aW9uTW9kZWxzQ29tbWFuZCxcbiAgdHlwZSBMaXN0Rm91bmRhdGlvbk1vZGVsc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0Rm91bmRhdGlvbk1vZGVsc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RHdWFyZHJhaWxzQ29tbWFuZCxcbiAgdHlwZSBMaXN0R3VhcmRyYWlsc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0R3VhcmRyYWlsc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEltcG9ydGVkTW9kZWxzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RJbmZlcmVuY2VQcm9maWxlc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEluZmVyZW5jZVByb2ZpbGVzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RJbmZlcmVuY2VQcm9maWxlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNb2RlbENvcHlKb2JzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNb2RlbEN1c3RvbWl6YXRpb25Kb2JzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TW9kZWxDdXN0b21pemF0aW9uSm9ic0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0TW9kZWxDdXN0b21pemF0aW9uSm9ic0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNb2RlbEltcG9ydEpvYnNDb21tYW5kLFxuICB0eXBlIExpc3RNb2RlbEltcG9ydEpvYnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE1vZGVsSW1wb3J0Sm9ic0NvbW1hbmRPdXRwdXQsXG4gIExpc3RNb2RlbEludm9jYXRpb25Kb2JzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TW9kZWxJbnZvY2F0aW9uSm9ic0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0TW9kZWxJbnZvY2F0aW9uSm9ic0NvbW1hbmRPdXRwdXQsXG4gIExpc3RQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dHNDb21tYW5kLFxuICB0eXBlIExpc3RQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0c0NvbW1hbmRPdXRwdXQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kLFxuICB0eXBlIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFB1dE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIFN0b3BFdmFsdWF0aW9uSm9iQ29tbWFuZCxcbiAgdHlwZSBTdG9wRXZhbHVhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBTdG9wRXZhbHVhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIFN0b3BNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIFN0b3BNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgU3RvcE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIFN0b3BNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIFN0b3BNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgU3RvcE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgdHlwZSBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICB0eXBlIFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZUd1YXJkcmFpbENvbW1hbmQsXG4gIHR5cGUgVXBkYXRlR3VhcmRyYWlsQ29tbWFuZElucHV0LFxuICB0eXBlIFVwZGF0ZUd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gIFVwZGF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbiAgdHlwZSBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtYmVkcm9ja1wiO1xuaW1wb3J0IHsgRGF0YSwgRWZmZWN0LCBMYXllciwgUmVjb3JkIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHtcbiAgQmVkcm9ja0NsaWVudEluc3RhbmNlLFxuICBCZWRyb2NrQ2xpZW50SW5zdGFuY2VMYXllcixcbn0gZnJvbSBcIi4vQmVkcm9ja0NsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0QmVkcm9ja0NsaWVudENvbmZpZ0xheWVyIH0gZnJvbSBcIi4vQmVkcm9ja0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBBY2Nlc3NEZW5pZWRFcnJvcixcbiAgQ29uZmxpY3RFcnJvcixcbiAgSW50ZXJuYWxTZXJ2ZXJFcnJvcixcbiAgUmVzb3VyY2VOb3RGb3VuZEVycm9yLFxuICBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yLFxuICBUaHJvdHRsaW5nRXJyb3IsXG4gIFRvb01hbnlUYWdzRXJyb3IsXG4gIFZhbGlkYXRpb25FcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4xXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cEhhbmRsZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRoYXQgdGhlIGNvbm5lY3Rpb24gcGhhc2Ugb2YgYSByZXF1ZXN0XG4gICAqIG1heSB0YWtlIGJlZm9yZSB0aGUgY29ubmVjdGlvbiBhdHRlbXB0IGlzIGFiYW5kb25lZC5cbiAgICovXG4gIHJlcXVlc3RUaW1lb3V0PzogbnVtYmVyO1xufVxuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQmF0Y2hEZWxldGVFdmFsdWF0aW9uSm9iQ29tbWFuZCxcbiAgQ3JlYXRlRXZhbHVhdGlvbkpvYkNvbW1hbmQsXG4gIENyZWF0ZUd1YXJkcmFpbENvbW1hbmQsXG4gIENyZWF0ZUd1YXJkcmFpbFZlcnNpb25Db21tYW5kLFxuICBDcmVhdGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZCxcbiAgQ3JlYXRlTW9kZWxDb3B5Sm9iQ29tbWFuZCxcbiAgQ3JlYXRlTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZCxcbiAgQ3JlYXRlTW9kZWxJbXBvcnRKb2JDb21tYW5kLFxuICBDcmVhdGVNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kLFxuICBDcmVhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG4gIERlbGV0ZUN1c3RvbU1vZGVsQ29tbWFuZCxcbiAgRGVsZXRlR3VhcmRyYWlsQ29tbWFuZCxcbiAgRGVsZXRlSW1wb3J0ZWRNb2RlbENvbW1hbmQsXG4gIERlbGV0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kLFxuICBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbiAgR2V0Q3VzdG9tTW9kZWxDb21tYW5kLFxuICBHZXRFdmFsdWF0aW9uSm9iQ29tbWFuZCxcbiAgR2V0Rm91bmRhdGlvbk1vZGVsQ29tbWFuZCxcbiAgR2V0R3VhcmRyYWlsQ29tbWFuZCxcbiAgR2V0SW1wb3J0ZWRNb2RlbENvbW1hbmQsXG4gIEdldEluZmVyZW5jZVByb2ZpbGVDb21tYW5kLFxuICBHZXRNb2RlbENvcHlKb2JDb21tYW5kLFxuICBHZXRNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kLFxuICBHZXRNb2RlbEltcG9ydEpvYkNvbW1hbmQsXG4gIEdldE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmQsXG4gIEdldE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kLFxuICBMaXN0Q3VzdG9tTW9kZWxzQ29tbWFuZCxcbiAgTGlzdEV2YWx1YXRpb25Kb2JzQ29tbWFuZCxcbiAgTGlzdEZvdW5kYXRpb25Nb2RlbHNDb21tYW5kLFxuICBMaXN0R3VhcmRyYWlsc0NvbW1hbmQsXG4gIExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmQsXG4gIExpc3RJbmZlcmVuY2VQcm9maWxlc0NvbW1hbmQsXG4gIExpc3RNb2RlbENvcHlKb2JzQ29tbWFuZCxcbiAgTGlzdE1vZGVsQ3VzdG9taXphdGlvbkpvYnNDb21tYW5kLFxuICBMaXN0TW9kZWxJbXBvcnRKb2JzQ29tbWFuZCxcbiAgTGlzdE1vZGVsSW52b2NhdGlvbkpvYnNDb21tYW5kLFxuICBMaXN0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRzQ29tbWFuZCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmQsXG4gIFB1dE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgU3RvcEV2YWx1YXRpb25Kb2JDb21tYW5kLFxuICBTdG9wTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZCxcbiAgU3RvcE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVwZGF0ZUd1YXJkcmFpbENvbW1hbmQsXG4gIFVwZGF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbn07XG5cbmludGVyZmFjZSBCZWRyb2NrU2VydmljZSQge1xuICByZWFkb25seSBfOiB1bmlxdWUgc3ltYm9sO1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBCYXRjaERlbGV0ZUV2YWx1YXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgYmF0Y2hEZWxldGVFdmFsdWF0aW9uSm9iKFxuICAgIGFyZ3M6IEJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlRXZhbHVhdGlvbkpvYkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVFdmFsdWF0aW9uSm9iKFxuICAgIGFyZ3M6IENyZWF0ZUV2YWx1YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVFdmFsdWF0aW9uSm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVHdWFyZHJhaWxDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlR3VhcmRyYWlsKFxuICAgIGFyZ3M6IENyZWF0ZUd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBUb29NYW55VGFnc0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlR3VhcmRyYWlsVmVyc2lvbkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVHdWFyZHJhaWxWZXJzaW9uKFxuICAgIGFyZ3M6IENyZWF0ZUd1YXJkcmFpbFZlcnNpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVHdWFyZHJhaWxWZXJzaW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUluZmVyZW5jZVByb2ZpbGUoXG4gICAgYXJnczogQ3JlYXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFNlcnZpY2VRdW90YUV4Y2VlZGVkRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVG9vTWFueVRhZ3NFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVNb2RlbENvcHlKb2IoXG4gICAgYXJnczogQ3JlYXRlTW9kZWxDb3B5Sm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTW9kZWxDb3B5Sm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUb29NYW55VGFnc0Vycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVNb2RlbEN1c3RvbWl6YXRpb25Kb2IoXG4gICAgYXJnczogQ3JlYXRlTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFRvb01hbnlUYWdzRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVNb2RlbEltcG9ydEpvYkNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVNb2RlbEltcG9ydEpvYihcbiAgICBhcmdzOiBDcmVhdGVNb2RlbEltcG9ydEpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU1vZGVsSW1wb3J0Sm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFRvb01hbnlUYWdzRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlTW9kZWxJbnZvY2F0aW9uSm9iKFxuICAgIGFyZ3M6IENyZWF0ZU1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXQoXG4gICAgYXJnczogQ3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBUb29NYW55VGFnc0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQ3VzdG9tTW9kZWxDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQ3VzdG9tTW9kZWwoXG4gICAgYXJnczogRGVsZXRlQ3VzdG9tTW9kZWxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVDdXN0b21Nb2RlbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlR3VhcmRyYWlsQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUd1YXJkcmFpbChcbiAgICBhcmdzOiBEZWxldGVHdWFyZHJhaWxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUltcG9ydGVkTW9kZWxDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlSW1wb3J0ZWRNb2RlbChcbiAgICBhcmdzOiBEZWxldGVJbXBvcnRlZE1vZGVsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlSW1wb3J0ZWRNb2RlbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVJbmZlcmVuY2VQcm9maWxlKFxuICAgIGFyZ3M6IERlbGV0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZU1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEFjY2Vzc0RlbmllZEVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvciB8IFRocm90dGxpbmdFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmR9XG4gICAqL1xuICBkZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dChcbiAgICBhcmdzOiBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRDdXN0b21Nb2RlbENvbW1hbmR9XG4gICAqL1xuICBnZXRDdXN0b21Nb2RlbChcbiAgICBhcmdzOiBHZXRDdXN0b21Nb2RlbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEN1c3RvbU1vZGVsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRFdmFsdWF0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIGdldEV2YWx1YXRpb25Kb2IoXG4gICAgYXJnczogR2V0RXZhbHVhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmR9XG4gICAqL1xuICBnZXRGb3VuZGF0aW9uTW9kZWwoXG4gICAgYXJnczogR2V0Rm91bmRhdGlvbk1vZGVsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0Rm91bmRhdGlvbk1vZGVsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRHdWFyZHJhaWxDb21tYW5kfVxuICAgKi9cbiAgZ2V0R3VhcmRyYWlsKFxuICAgIGFyZ3M6IEdldEd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0SW1wb3J0ZWRNb2RlbENvbW1hbmR9XG4gICAqL1xuICBnZXRJbXBvcnRlZE1vZGVsKFxuICAgIGFyZ3M6IEdldEltcG9ydGVkTW9kZWxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRJbXBvcnRlZE1vZGVsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRJbmZlcmVuY2VQcm9maWxlQ29tbWFuZH1cbiAgICovXG4gIGdldEluZmVyZW5jZVByb2ZpbGUoXG4gICAgYXJnczogR2V0SW5mZXJlbmNlUHJvZmlsZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEluZmVyZW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE1vZGVsQ29weUpvYkNvbW1hbmR9XG4gICAqL1xuICBnZXRNb2RlbENvcHlKb2IoXG4gICAgYXJnczogR2V0TW9kZWxDb3B5Sm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0TW9kZWxDb3B5Sm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgZ2V0TW9kZWxDdXN0b21pemF0aW9uSm9iKFxuICAgIGFyZ3M6IEdldE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TW9kZWxJbXBvcnRKb2JDb21tYW5kfVxuICAgKi9cbiAgZ2V0TW9kZWxJbXBvcnRKb2IoXG4gICAgYXJnczogR2V0TW9kZWxJbXBvcnRKb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRNb2RlbEltcG9ydEpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIGdldE1vZGVsSW52b2NhdGlvbkpvYihcbiAgICBhcmdzOiBHZXRNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IEdldE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQWNjZXNzRGVuaWVkRXJyb3IgfCBJbnRlcm5hbFNlcnZlckVycm9yIHwgVGhyb3R0bGluZ0Vycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZH1cbiAgICovXG4gIGdldFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0KFxuICAgIGFyZ3M6IEdldFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RDdXN0b21Nb2RlbHNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEN1c3RvbU1vZGVscyhcbiAgICBhcmdzOiBMaXN0Q3VzdG9tTW9kZWxzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEN1c3RvbU1vZGVsc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmR9XG4gICAqL1xuICBsaXN0RXZhbHVhdGlvbkpvYnMoXG4gICAgYXJnczogTGlzdEV2YWx1YXRpb25Kb2JzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEV2YWx1YXRpb25Kb2JzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEZvdW5kYXRpb25Nb2RlbHNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEZvdW5kYXRpb25Nb2RlbHMoXG4gICAgYXJnczogTGlzdEZvdW5kYXRpb25Nb2RlbHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0Rm91bmRhdGlvbk1vZGVsc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RHdWFyZHJhaWxzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RHdWFyZHJhaWxzKFxuICAgIGFyZ3M6IExpc3RHdWFyZHJhaWxzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEd1YXJkcmFpbHNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0SW1wb3J0ZWRNb2RlbHMoXG4gICAgYXJnczogTGlzdEltcG9ydGVkTW9kZWxzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEltcG9ydGVkTW9kZWxzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEluZmVyZW5jZVByb2ZpbGVzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RJbmZlcmVuY2VQcm9maWxlcyhcbiAgICBhcmdzOiBMaXN0SW5mZXJlbmNlUHJvZmlsZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0SW5mZXJlbmNlUHJvZmlsZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TW9kZWxDb3B5Sm9icyhcbiAgICBhcmdzOiBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RNb2RlbENvcHlKb2JzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0TW9kZWxDdXN0b21pemF0aW9uSm9ic0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TW9kZWxDdXN0b21pemF0aW9uSm9icyhcbiAgICBhcmdzOiBMaXN0TW9kZWxDdXN0b21pemF0aW9uSm9ic0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RNb2RlbEN1c3RvbWl6YXRpb25Kb2JzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE1vZGVsSW1wb3J0Sm9ic0NvbW1hbmR9XG4gICAqL1xuICBsaXN0TW9kZWxJbXBvcnRKb2JzKFxuICAgIGFyZ3M6IExpc3RNb2RlbEltcG9ydEpvYnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0TW9kZWxJbXBvcnRKb2JzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE1vZGVsSW52b2NhdGlvbkpvYnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE1vZGVsSW52b2NhdGlvbkpvYnMoXG4gICAgYXJnczogTGlzdE1vZGVsSW52b2NhdGlvbkpvYnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0TW9kZWxJbnZvY2F0aW9uSm9ic0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dHNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0cyhcbiAgICBhcmdzOiBMaXN0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0c0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRhZ3NGb3JSZXNvdXJjZShcbiAgICBhcmdzOiBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcHV0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogUHV0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN0b3BFdmFsdWF0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIHN0b3BFdmFsdWF0aW9uSm9iKFxuICAgIGFyZ3M6IFN0b3BFdmFsdWF0aW9uSm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU3RvcEV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN0b3BNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgc3RvcE1vZGVsQ3VzdG9taXphdGlvbkpvYihcbiAgICBhcmdzOiBTdG9wTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU3RvcE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3RvcE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmR9XG4gICAqL1xuICBzdG9wTW9kZWxJbnZvY2F0aW9uSm9iKFxuICAgIGFyZ3M6IFN0b3BNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTdG9wTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUYWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB0YWdSZXNvdXJjZShcbiAgICBhcmdzOiBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFRvb01hbnlUYWdzRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnRhZ1Jlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIHVudGFnUmVzb3VyY2UoXG4gICAgYXJnczogVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVwZGF0ZUd1YXJkcmFpbENvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVHdWFyZHJhaWwoXG4gICAgYXJnczogVXBkYXRlR3VhcmRyYWlsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVXBkYXRlR3VhcmRyYWlsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmR9XG4gICAqL1xuICB1cGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dChcbiAgICBhcmdzOiBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICovXG5leHBvcnQgY2xhc3MgQmVkcm9ja1NlcnZpY2UgZXh0ZW5kcyBFZmZlY3QuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1iZWRyb2NrL0JlZHJvY2tTZXJ2aWNlXCIsXG4pPEJlZHJvY2tTZXJ2aWNlLCBCZWRyb2NrU2VydmljZSQ+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VCZWRyb2NrU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKEJlZHJvY2tDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKGFyZ3M6IGFueSwgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucykgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgdHJ5OiAoYWJvcnRTaWduYWwpID0+XG4gICAgICAgICAgY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCB7XG4gICAgICAgICAgICAuLi4ob3B0aW9ucyA/PyB7fSksXG4gICAgICAgICAgICBhYm9ydFNpZ25hbCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZSBpbnN0YW5jZW9mIEJlZHJvY2tTZXJ2aWNlRXhjZXB0aW9uICYmXG4gICAgICAgICAgICBBbGxTZXJ2aWNlRXJyb3JzLmluY2x1ZGVzKGUubmFtZSlcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IFNlcnZpY2VFeGNlcHRpb24gPSBEYXRhLnRhZ2dlZDxcbiAgICAgICAgICAgICAgVGFnZ2VkRXhjZXB0aW9uPEJlZHJvY2tTZXJ2aWNlRXhjZXB0aW9uPlxuICAgICAgICAgICAgPihlLm5hbWUpO1xuXG4gICAgICAgICAgICByZXR1cm4gU2VydmljZUV4Y2VwdGlvbih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIFNka0Vycm9yKHtcbiAgICAgICAgICAgICAgLi4uZSxcbiAgICAgICAgICAgICAgbmFtZTogXCJTZGtFcnJvclwiLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRocm93IGU7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICBjb25zdCBtZXRob2ROYW1lID0gKGNvbW1hbmRbMF0udG9Mb3dlckNhc2UoKSArIGNvbW1hbmQuc2xpY2UoMSkpLnJlcGxhY2UoXG4gICAgICAvQ29tbWFuZCQvLFxuICAgICAgXCJcIixcbiAgICApO1xuICAgIHJldHVybiB7IC4uLmFjYywgW21ldGhvZE5hbWVdOiBtZXRob2RJbXBsIH07XG4gIH0sIHt9KSBhcyBCZWRyb2NrU2VydmljZSQ7XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VCZWRyb2NrU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBCZWRyb2NrU2VydmljZSxcbiAgbWFrZUJlZHJvY2tTZXJ2aWNlLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IEJlZHJvY2tTZXJ2aWNlTGF5ZXIgPSBCYXNlQmVkcm9ja1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKEJlZHJvY2tDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0QmVkcm9ja1NlcnZpY2VMYXllciA9IEJlZHJvY2tTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0QmVkcm9ja0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG4iXX0=
|
package/lib/Errors.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { AccessDeniedException, ConflictException, InternalServerException, ResourceNotFoundException, ServiceQuotaExceededException, ThrottlingException, TooManyTagsException, ValidationException } from "@aws-sdk/client-bedrock";
|
|
2
|
+
import { Data } from "effect";
|
|
3
|
+
export declare const AllServiceErrors: string[];
|
|
4
|
+
export type TaggedException<T extends {
|
|
5
|
+
name: string;
|
|
6
|
+
}> = T & {
|
|
7
|
+
readonly _tag: T["name"];
|
|
8
|
+
};
|
|
9
|
+
export type AccessDeniedError = TaggedException<AccessDeniedException>;
|
|
10
|
+
export type ConflictError = TaggedException<ConflictException>;
|
|
11
|
+
export type InternalServerError = TaggedException<InternalServerException>;
|
|
12
|
+
export type ResourceNotFoundError = TaggedException<ResourceNotFoundException>;
|
|
13
|
+
export type ServiceQuotaExceededError = TaggedException<ServiceQuotaExceededException>;
|
|
14
|
+
export type ThrottlingError = TaggedException<ThrottlingException>;
|
|
15
|
+
export type TooManyTagsError = TaggedException<TooManyTagsException>;
|
|
16
|
+
export type ValidationError = TaggedException<ValidationException>;
|
|
17
|
+
export type SdkError = TaggedException<Error & {
|
|
18
|
+
name: "SdkError";
|
|
19
|
+
}>;
|
|
20
|
+
export declare const SdkError: Data.Case.Constructor<SdkError, "_tag">;
|
package/lib/Errors.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SdkError = exports.AllServiceErrors = void 0;
|
|
4
|
+
const effect_1 = require("effect");
|
|
5
|
+
exports.AllServiceErrors = [
|
|
6
|
+
"AccessDeniedException",
|
|
7
|
+
"ConflictException",
|
|
8
|
+
"InternalServerException",
|
|
9
|
+
"ResourceNotFoundException",
|
|
10
|
+
"ServiceQuotaExceededException",
|
|
11
|
+
"ThrottlingException",
|
|
12
|
+
"TooManyTagsException",
|
|
13
|
+
"ValidationException",
|
|
14
|
+
];
|
|
15
|
+
exports.SdkError = effect_1.Data.tagged("SdkError");
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFVQSxtQ0FBOEI7QUFFakIsUUFBQSxnQkFBZ0IsR0FBRztJQUM5Qix1QkFBdUI7SUFDdkIsbUJBQW1CO0lBQ25CLHlCQUF5QjtJQUN6QiwyQkFBMkI7SUFDM0IsK0JBQStCO0lBQy9CLHFCQUFxQjtJQUNyQixzQkFBc0I7SUFDdEIscUJBQXFCO0NBQ3RCLENBQUM7QUFpQlcsUUFBQSxRQUFRLEdBQUcsYUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQWNjZXNzRGVuaWVkRXhjZXB0aW9uLFxuICBDb25mbGljdEV4Y2VwdGlvbixcbiAgSW50ZXJuYWxTZXJ2ZXJFeGNlcHRpb24sXG4gIFJlc291cmNlTm90Rm91bmRFeGNlcHRpb24sXG4gIFNlcnZpY2VRdW90YUV4Y2VlZGVkRXhjZXB0aW9uLFxuICBUaHJvdHRsaW5nRXhjZXB0aW9uLFxuICBUb29NYW55VGFnc0V4Y2VwdGlvbixcbiAgVmFsaWRhdGlvbkV4Y2VwdGlvbixcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1iZWRyb2NrXCI7XG5pbXBvcnQgeyBEYXRhIH0gZnJvbSBcImVmZmVjdFwiO1xuXG5leHBvcnQgY29uc3QgQWxsU2VydmljZUVycm9ycyA9IFtcbiAgXCJBY2Nlc3NEZW5pZWRFeGNlcHRpb25cIixcbiAgXCJDb25mbGljdEV4Y2VwdGlvblwiLFxuICBcIkludGVybmFsU2VydmVyRXhjZXB0aW9uXCIsXG4gIFwiUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvblwiLFxuICBcIlNlcnZpY2VRdW90YUV4Y2VlZGVkRXhjZXB0aW9uXCIsXG4gIFwiVGhyb3R0bGluZ0V4Y2VwdGlvblwiLFxuICBcIlRvb01hbnlUYWdzRXhjZXB0aW9uXCIsXG4gIFwiVmFsaWRhdGlvbkV4Y2VwdGlvblwiLFxuXTtcblxuZXhwb3J0IHR5cGUgVGFnZ2VkRXhjZXB0aW9uPFQgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9PiA9IFQgJiB7XG4gIHJlYWRvbmx5IF90YWc6IFRbXCJuYW1lXCJdO1xufTtcblxuZXhwb3J0IHR5cGUgQWNjZXNzRGVuaWVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248QWNjZXNzRGVuaWVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIENvbmZsaWN0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Q29uZmxpY3RFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgSW50ZXJuYWxTZXJ2ZXJFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnRlcm5hbFNlcnZlckV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBSZXNvdXJjZU5vdEZvdW5kRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248UmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFNlcnZpY2VRdW90YUV4Y2VlZGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFRocm90dGxpbmdFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxUaHJvdHRsaW5nRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFRvb01hbnlUYWdzRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248VG9vTWFueVRhZ3NFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVmFsaWRhdGlvbkVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFZhbGlkYXRpb25FeGNlcHRpb24+O1xuXG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { BedrockClient } from "@aws-sdk/client-bedrock";
|
|
5
|
+
import * as Context from "effect/Context";
|
|
6
|
+
import * as Effect from "effect/Effect";
|
|
7
|
+
import * as Layer from "effect/Layer";
|
|
8
|
+
import { DefaultBedrockClientConfigLayer, BedrockClientInstanceConfig, } from "./BedrockClientInstanceConfig";
|
|
9
|
+
/**
|
|
10
|
+
* @since 1.0.0
|
|
11
|
+
* @category tags
|
|
12
|
+
*/
|
|
13
|
+
export class BedrockClientInstance extends Context.Tag("@effect-aws/client-bedrock/BedrockClientInstance")() {
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* @since 1.0.0
|
|
17
|
+
* @category constructors
|
|
18
|
+
*/
|
|
19
|
+
export const makeBedrockClientInstance = Effect.map(BedrockClientInstanceConfig, (config) => new BedrockClient(config));
|
|
20
|
+
/**
|
|
21
|
+
* @since 1.0.0
|
|
22
|
+
* @category layers
|
|
23
|
+
*/
|
|
24
|
+
export const BedrockClientInstanceLayer = Layer.effect(BedrockClientInstance, makeBedrockClientInstance);
|
|
25
|
+
/**
|
|
26
|
+
* @since 1.0.0
|
|
27
|
+
* @category layers
|
|
28
|
+
*/
|
|
29
|
+
export const DefaultBedrockClientInstanceLayer = BedrockClientInstanceLayer.pipe(Layer.provide(DefaultBedrockClientConfigLayer));
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmVkcm9ja0NsaWVudEluc3RhbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0JlZHJvY2tDbGllbnRJbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN4RCxPQUFPLEtBQUssT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxLQUFLLE1BQU0sY0FBYyxDQUFDO0FBQ3RDLE9BQU8sRUFDTCwrQkFBK0IsRUFDL0IsMkJBQTJCLEdBQzVCLE1BQU0sK0JBQStCLENBQUM7QUFFdkM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLE9BQU8sQ0FBQyxHQUFHLENBQ3BELGtEQUFrRCxDQUNuRCxFQUF3QztDQUFHO0FBRTVDOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQ2pELDJCQUEyQixFQUMzQixDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQ3RDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNwRCxxQkFBcUIsRUFDckIseUJBQXlCLENBQzFCLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FDNUMsMEJBQTBCLENBQUMsSUFBSSxDQUM3QixLQUFLLENBQUMsT0FBTyxDQUFDLCtCQUErQixDQUFDLENBQy9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgeyBCZWRyb2NrQ2xpZW50IH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1iZWRyb2NrXCI7XG5pbXBvcnQgKiBhcyBDb250ZXh0IGZyb20gXCJlZmZlY3QvQ29udGV4dFwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0QmVkcm9ja0NsaWVudENvbmZpZ0xheWVyLFxuICBCZWRyb2NrQ2xpZW50SW5zdGFuY2VDb25maWcsXG59IGZyb20gXCIuL0JlZHJvY2tDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIEJlZHJvY2tDbGllbnRJbnN0YW5jZSBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1iZWRyb2NrL0JlZHJvY2tDbGllbnRJbnN0YW5jZVwiLFxuKTxCZWRyb2NrQ2xpZW50SW5zdGFuY2UsIEJlZHJvY2tDbGllbnQ+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VCZWRyb2NrQ2xpZW50SW5zdGFuY2UgPSBFZmZlY3QubWFwKFxuICBCZWRyb2NrQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIChjb25maWcpID0+IG5ldyBCZWRyb2NrQ2xpZW50KGNvbmZpZyksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgQmVkcm9ja0NsaWVudEluc3RhbmNlTGF5ZXIgPSBMYXllci5lZmZlY3QoXG4gIEJlZHJvY2tDbGllbnRJbnN0YW5jZSxcbiAgbWFrZUJlZHJvY2tDbGllbnRJbnN0YW5jZSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0QmVkcm9ja0NsaWVudEluc3RhbmNlTGF5ZXIgPVxuICBCZWRyb2NrQ2xpZW50SW5zdGFuY2VMYXllci5waXBlKFxuICAgIExheWVyLnByb3ZpZGUoRGVmYXVsdEJlZHJvY2tDbGllbnRDb25maWdMYXllciksXG4gICk7XG4iXX0=
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Context, Effect, Layer, Runtime } from "effect";
|
|
2
|
+
/**
|
|
3
|
+
* @since 1.0.0
|
|
4
|
+
* @category tags
|
|
5
|
+
*/
|
|
6
|
+
export class BedrockClientInstanceConfig extends Context.Tag("@effect-aws/client-bedrock/BedrockClientInstanceConfig")() {
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* @since 1.0.0
|
|
10
|
+
* @category constructors
|
|
11
|
+
*/
|
|
12
|
+
export const makeDefaultBedrockClientInstanceConfig = Effect.gen(function* (_) {
|
|
13
|
+
const runtime = yield* _(Effect.runtime());
|
|
14
|
+
const runSync = Runtime.runSync(runtime);
|
|
15
|
+
return {
|
|
16
|
+
logger: {
|
|
17
|
+
info(m) {
|
|
18
|
+
Effect.logInfo(m).pipe(runSync);
|
|
19
|
+
},
|
|
20
|
+
warn(m) {
|
|
21
|
+
Effect.logWarning(m).pipe(runSync);
|
|
22
|
+
},
|
|
23
|
+
error(m) {
|
|
24
|
+
Effect.logError(m).pipe(runSync);
|
|
25
|
+
},
|
|
26
|
+
debug(m) {
|
|
27
|
+
Effect.logDebug(m).pipe(runSync);
|
|
28
|
+
},
|
|
29
|
+
trace(m) {
|
|
30
|
+
Effect.logTrace(m).pipe(runSync);
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
});
|
|
35
|
+
/**
|
|
36
|
+
* @since 1.0.0
|
|
37
|
+
* @category layers
|
|
38
|
+
*/
|
|
39
|
+
export const DefaultBedrockClientConfigLayer = Layer.effect(BedrockClientInstanceConfig, makeDefaultBedrockClientInstanceConfig);
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmVkcm9ja0NsaWVudEluc3RhbmNlQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0JlZHJvY2tDbGllbnRJbnN0YW5jZUNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRXpEOzs7R0FHRztBQUNILE1BQU0sT0FBTywyQkFBNEIsU0FBUSxPQUFPLENBQUMsR0FBRyxDQUMxRCx3REFBd0QsQ0FDekQsRUFBb0Q7Q0FBRztBQUV4RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FDakQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO0lBQ3JCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFTLENBQUMsQ0FBQztJQUNsRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXpDLE9BQU87UUFDTCxNQUFNLEVBQUU7WUFDTixJQUFJLENBQUMsQ0FBQztnQkFDSixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNsQyxDQUFDO1lBQ0QsSUFBSSxDQUFDLENBQUM7Z0JBQ0osTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQyxDQUFDO0FBRUw7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sK0JBQStCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDekQsMkJBQTJCLEVBQzNCLHNDQUFzQyxDQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHR5cGUgeyBCZWRyb2NrQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1iZWRyb2NrXCI7XG5pbXBvcnQgeyBDb250ZXh0LCBFZmZlY3QsIExheWVyLCBSdW50aW1lIH0gZnJvbSBcImVmZmVjdFwiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIEJlZHJvY2tDbGllbnRJbnN0YW5jZUNvbmZpZyBleHRlbmRzIENvbnRleHQuVGFnKFxuICBcIkBlZmZlY3QtYXdzL2NsaWVudC1iZWRyb2NrL0JlZHJvY2tDbGllbnRJbnN0YW5jZUNvbmZpZ1wiLFxuKTxCZWRyb2NrQ2xpZW50SW5zdGFuY2VDb25maWcsIEJlZHJvY2tDbGllbnRDb25maWc+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VEZWZhdWx0QmVkcm9ja0NsaWVudEluc3RhbmNlQ29uZmlnOiBFZmZlY3QuRWZmZWN0PEJlZHJvY2tDbGllbnRDb25maWc+ID1cbiAgRWZmZWN0LmdlbihmdW5jdGlvbiogKF8pIHtcbiAgICBjb25zdCBydW50aW1lID0geWllbGQqIF8oRWZmZWN0LnJ1bnRpbWU8bmV2ZXI+KCkpO1xuICAgIGNvbnN0IHJ1blN5bmMgPSBSdW50aW1lLnJ1blN5bmMocnVudGltZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbG9nZ2VyOiB7XG4gICAgICAgIGluZm8obSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dJbmZvKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIHdhcm4obSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dXYXJuaW5nKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRXJyb3IobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgZGVidWcobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dEZWJ1ZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB0cmFjZShtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ1RyYWNlKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gIH0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdEJlZHJvY2tDbGllbnRDb25maWdMYXllciA9IExheWVyLmVmZmVjdChcbiAgQmVkcm9ja0NsaWVudEluc3RhbmNlQ29uZmlnLFxuICBtYWtlRGVmYXVsdEJlZHJvY2tDbGllbnRJbnN0YW5jZUNvbmZpZyxcbik7XG4iXX0=
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 1.0.0
|
|
3
|
+
*/
|
|
4
|
+
import { BedrockServiceException, BatchDeleteEvaluationJobCommand, CreateEvaluationJobCommand, CreateGuardrailCommand, CreateGuardrailVersionCommand, CreateInferenceProfileCommand, CreateModelCopyJobCommand, CreateModelCustomizationJobCommand, CreateModelImportJobCommand, CreateModelInvocationJobCommand, CreateProvisionedModelThroughputCommand, DeleteCustomModelCommand, DeleteGuardrailCommand, DeleteImportedModelCommand, DeleteInferenceProfileCommand, DeleteModelInvocationLoggingConfigurationCommand, DeleteProvisionedModelThroughputCommand, GetCustomModelCommand, GetEvaluationJobCommand, GetFoundationModelCommand, GetGuardrailCommand, GetImportedModelCommand, GetInferenceProfileCommand, GetModelCopyJobCommand, GetModelCustomizationJobCommand, GetModelImportJobCommand, GetModelInvocationJobCommand, GetModelInvocationLoggingConfigurationCommand, GetProvisionedModelThroughputCommand, ListCustomModelsCommand, ListEvaluationJobsCommand, ListFoundationModelsCommand, ListGuardrailsCommand, ListImportedModelsCommand, ListInferenceProfilesCommand, ListModelCopyJobsCommand, ListModelCustomizationJobsCommand, ListModelImportJobsCommand, ListModelInvocationJobsCommand, ListProvisionedModelThroughputsCommand, ListTagsForResourceCommand, PutModelInvocationLoggingConfigurationCommand, StopEvaluationJobCommand, StopModelCustomizationJobCommand, StopModelInvocationJobCommand, TagResourceCommand, UntagResourceCommand, UpdateGuardrailCommand, UpdateProvisionedModelThroughputCommand, } from "@aws-sdk/client-bedrock";
|
|
5
|
+
import { Data, Effect, Layer, Record } from "effect";
|
|
6
|
+
import { BedrockClientInstance, BedrockClientInstanceLayer, } from "./BedrockClientInstance";
|
|
7
|
+
import { DefaultBedrockClientConfigLayer } from "./BedrockClientInstanceConfig";
|
|
8
|
+
import { AllServiceErrors, SdkError, } from "./Errors";
|
|
9
|
+
const commands = {
|
|
10
|
+
BatchDeleteEvaluationJobCommand,
|
|
11
|
+
CreateEvaluationJobCommand,
|
|
12
|
+
CreateGuardrailCommand,
|
|
13
|
+
CreateGuardrailVersionCommand,
|
|
14
|
+
CreateInferenceProfileCommand,
|
|
15
|
+
CreateModelCopyJobCommand,
|
|
16
|
+
CreateModelCustomizationJobCommand,
|
|
17
|
+
CreateModelImportJobCommand,
|
|
18
|
+
CreateModelInvocationJobCommand,
|
|
19
|
+
CreateProvisionedModelThroughputCommand,
|
|
20
|
+
DeleteCustomModelCommand,
|
|
21
|
+
DeleteGuardrailCommand,
|
|
22
|
+
DeleteImportedModelCommand,
|
|
23
|
+
DeleteInferenceProfileCommand,
|
|
24
|
+
DeleteModelInvocationLoggingConfigurationCommand,
|
|
25
|
+
DeleteProvisionedModelThroughputCommand,
|
|
26
|
+
GetCustomModelCommand,
|
|
27
|
+
GetEvaluationJobCommand,
|
|
28
|
+
GetFoundationModelCommand,
|
|
29
|
+
GetGuardrailCommand,
|
|
30
|
+
GetImportedModelCommand,
|
|
31
|
+
GetInferenceProfileCommand,
|
|
32
|
+
GetModelCopyJobCommand,
|
|
33
|
+
GetModelCustomizationJobCommand,
|
|
34
|
+
GetModelImportJobCommand,
|
|
35
|
+
GetModelInvocationJobCommand,
|
|
36
|
+
GetModelInvocationLoggingConfigurationCommand,
|
|
37
|
+
GetProvisionedModelThroughputCommand,
|
|
38
|
+
ListCustomModelsCommand,
|
|
39
|
+
ListEvaluationJobsCommand,
|
|
40
|
+
ListFoundationModelsCommand,
|
|
41
|
+
ListGuardrailsCommand,
|
|
42
|
+
ListImportedModelsCommand,
|
|
43
|
+
ListInferenceProfilesCommand,
|
|
44
|
+
ListModelCopyJobsCommand,
|
|
45
|
+
ListModelCustomizationJobsCommand,
|
|
46
|
+
ListModelImportJobsCommand,
|
|
47
|
+
ListModelInvocationJobsCommand,
|
|
48
|
+
ListProvisionedModelThroughputsCommand,
|
|
49
|
+
ListTagsForResourceCommand,
|
|
50
|
+
PutModelInvocationLoggingConfigurationCommand,
|
|
51
|
+
StopEvaluationJobCommand,
|
|
52
|
+
StopModelCustomizationJobCommand,
|
|
53
|
+
StopModelInvocationJobCommand,
|
|
54
|
+
TagResourceCommand,
|
|
55
|
+
UntagResourceCommand,
|
|
56
|
+
UpdateGuardrailCommand,
|
|
57
|
+
UpdateProvisionedModelThroughputCommand,
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* @since 1.0.0
|
|
61
|
+
* @category models
|
|
62
|
+
*/
|
|
63
|
+
export class BedrockService extends Effect.Tag("@effect-aws/client-bedrock/BedrockService")() {
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* @since 1.0.0
|
|
67
|
+
* @category constructors
|
|
68
|
+
*/
|
|
69
|
+
export const makeBedrockService = Effect.gen(function* (_) {
|
|
70
|
+
const client = yield* _(BedrockClientInstance);
|
|
71
|
+
return Record.toEntries(commands).reduce((acc, [command]) => {
|
|
72
|
+
const CommandCtor = commands[command];
|
|
73
|
+
const methodImpl = (args, options) => Effect.tryPromise({
|
|
74
|
+
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
75
|
+
...(options !== null && options !== void 0 ? options : {}),
|
|
76
|
+
abortSignal,
|
|
77
|
+
}),
|
|
78
|
+
catch: (e) => {
|
|
79
|
+
if (e instanceof BedrockServiceException &&
|
|
80
|
+
AllServiceErrors.includes(e.name)) {
|
|
81
|
+
const ServiceException = Data.tagged(e.name);
|
|
82
|
+
return ServiceException({
|
|
83
|
+
...e,
|
|
84
|
+
message: e.message,
|
|
85
|
+
stack: e.stack,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
if (e instanceof Error) {
|
|
89
|
+
return SdkError({
|
|
90
|
+
...e,
|
|
91
|
+
name: "SdkError",
|
|
92
|
+
message: e.message,
|
|
93
|
+
stack: e.stack,
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
throw e;
|
|
97
|
+
},
|
|
98
|
+
});
|
|
99
|
+
const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, "");
|
|
100
|
+
return { ...acc, [methodName]: methodImpl };
|
|
101
|
+
}, {});
|
|
102
|
+
});
|
|
103
|
+
/**
|
|
104
|
+
* @since 1.0.0
|
|
105
|
+
* @category layers
|
|
106
|
+
*/
|
|
107
|
+
export const BaseBedrockServiceLayer = Layer.effect(BedrockService, makeBedrockService);
|
|
108
|
+
/**
|
|
109
|
+
* @since 1.0.0
|
|
110
|
+
* @category layers
|
|
111
|
+
*/
|
|
112
|
+
export const BedrockServiceLayer = BaseBedrockServiceLayer.pipe(Layer.provide(BedrockClientInstanceLayer));
|
|
113
|
+
/**
|
|
114
|
+
* @since 1.0.0
|
|
115
|
+
* @category layers
|
|
116
|
+
*/
|
|
117
|
+
export const DefaultBedrockServiceLayer = BedrockServiceLayer.pipe(Layer.provide(DefaultBedrockClientConfigLayer));
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmVkcm9ja1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQmVkcm9ja1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLCtCQUErQixFQUcvQiwwQkFBMEIsRUFHMUIsc0JBQXNCLEVBR3RCLDZCQUE2QixFQUc3Qiw2QkFBNkIsRUFHN0IseUJBQXlCLEVBR3pCLGtDQUFrQyxFQUdsQywyQkFBMkIsRUFHM0IsK0JBQStCLEVBRy9CLHVDQUF1QyxFQUd2Qyx3QkFBd0IsRUFHeEIsc0JBQXNCLEVBR3RCLDBCQUEwQixFQUcxQiw2QkFBNkIsRUFHN0IsZ0RBQWdELEVBR2hELHVDQUF1QyxFQUd2QyxxQkFBcUIsRUFHckIsdUJBQXVCLEVBR3ZCLHlCQUF5QixFQUd6QixtQkFBbUIsRUFHbkIsdUJBQXVCLEVBR3ZCLDBCQUEwQixFQUcxQixzQkFBc0IsRUFHdEIsK0JBQStCLEVBRy9CLHdCQUF3QixFQUd4Qiw0QkFBNEIsRUFHNUIsNkNBQTZDLEVBRzdDLG9DQUFvQyxFQUdwQyx1QkFBdUIsRUFHdkIseUJBQXlCLEVBR3pCLDJCQUEyQixFQUczQixxQkFBcUIsRUFHckIseUJBQXlCLEVBR3pCLDRCQUE0QixFQUc1Qix3QkFBd0IsRUFHeEIsaUNBQWlDLEVBR2pDLDBCQUEwQixFQUcxQiw4QkFBOEIsRUFHOUIsc0NBQXNDLEVBR3RDLDBCQUEwQixFQUcxQiw2Q0FBNkMsRUFHN0Msd0JBQXdCLEVBR3hCLGdDQUFnQyxFQUdoQyw2QkFBNkIsRUFHN0Isa0JBQWtCLEVBR2xCLG9CQUFvQixFQUdwQixzQkFBc0IsRUFHdEIsdUNBQXVDLEdBR3hDLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNyRCxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLDBCQUEwQixHQUMzQixNQUFNLHlCQUF5QixDQUFDO0FBQ2pDLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hGLE9BQU8sRUFDTCxnQkFBZ0IsRUFTaEIsUUFBUSxHQUVULE1BQU0sVUFBVSxDQUFDO0FBYWxCLE1BQU0sUUFBUSxHQUFHO0lBQ2YsK0JBQStCO0lBQy9CLDBCQUEwQjtJQUMxQixzQkFBc0I7SUFDdEIsNkJBQTZCO0lBQzdCLDZCQUE2QjtJQUM3Qix5QkFBeUI7SUFDekIsa0NBQWtDO0lBQ2xDLDJCQUEyQjtJQUMzQiwrQkFBK0I7SUFDL0IsdUNBQXVDO0lBQ3ZDLHdCQUF3QjtJQUN4QixzQkFBc0I7SUFDdEIsMEJBQTBCO0lBQzFCLDZCQUE2QjtJQUM3QixnREFBZ0Q7SUFDaEQsdUNBQXVDO0lBQ3ZDLHFCQUFxQjtJQUNyQix1QkFBdUI7SUFDdkIseUJBQXlCO0lBQ3pCLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsMEJBQTBCO0lBQzFCLHNCQUFzQjtJQUN0QiwrQkFBK0I7SUFDL0Isd0JBQXdCO0lBQ3hCLDRCQUE0QjtJQUM1Qiw2Q0FBNkM7SUFDN0Msb0NBQW9DO0lBQ3BDLHVCQUF1QjtJQUN2Qix5QkFBeUI7SUFDekIsMkJBQTJCO0lBQzNCLHFCQUFxQjtJQUNyQix5QkFBeUI7SUFDekIsNEJBQTRCO0lBQzVCLHdCQUF3QjtJQUN4QixpQ0FBaUM7SUFDakMsMEJBQTBCO0lBQzFCLDhCQUE4QjtJQUM5QixzQ0FBc0M7SUFDdEMsMEJBQTBCO0lBQzFCLDZDQUE2QztJQUM3Qyx3QkFBd0I7SUFDeEIsZ0NBQWdDO0lBQ2hDLDZCQUE2QjtJQUM3QixrQkFBa0I7SUFDbEIsb0JBQW9CO0lBQ3BCLHNCQUFzQjtJQUN0Qix1Q0FBdUM7Q0FDeEMsQ0FBQztBQWl4QkY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGNBQWUsU0FBUSxNQUFNLENBQUMsR0FBRyxDQUM1QywyQ0FBMkMsQ0FDNUMsRUFBbUM7Q0FBRztBQUV2Qzs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDdkQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFL0MsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUU7UUFDMUQsTUFBTSxXQUFXLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBUSxDQUFDO1FBQzdDLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBUyxFQUFFLE9BQTRCLEVBQUUsRUFBRSxDQUM3RCxNQUFNLENBQUMsVUFBVSxDQUFDO1lBQ2hCLEdBQUcsRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQ25CLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2pDLEdBQUcsQ0FBQyxPQUFPLGFBQVAsT0FBTyxjQUFQLE9BQU8sR0FBSSxFQUFFLENBQUM7Z0JBQ2xCLFdBQVc7YUFDWixDQUFDO1lBQ0osS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ1gsSUFDRSxDQUFDLFlBQVksdUJBQXVCO29CQUNwQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUNqQyxDQUFDO29CQUNELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FFbEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUVWLE9BQU8sZ0JBQWdCLENBQUM7d0JBQ3RCLEdBQUcsQ0FBQzt3QkFDSixPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ2xCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztxQkFDZixDQUFDLENBQUM7Z0JBQ0wsQ0FBQztnQkFDRCxJQUFJLENBQUMsWUFBWSxLQUFLLEVBQUUsQ0FBQztvQkFDdkIsT0FBTyxRQUFRLENBQUM7d0JBQ2QsR0FBRyxDQUFDO3dCQUNKLElBQUksRUFBRSxVQUFVO3dCQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ2xCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztxQkFDZixDQUFDLENBQUM7Z0JBQ0wsQ0FBQztnQkFDRCxNQUFNLENBQUMsQ0FBQztZQUNWLENBQUM7U0FDRixDQUFDLENBQUM7UUFDTCxNQUFNLFVBQVUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUN0RSxVQUFVLEVBQ1YsRUFBRSxDQUNILENBQUM7UUFDRixPQUFPLEVBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQztJQUM5QyxDQUFDLEVBQUUsRUFBRSxDQUFvQixDQUFDO0FBQzVCLENBQUMsQ0FBQyxDQUFDO0FBRUg7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FDakQsY0FBYyxFQUNkLGtCQUFrQixDQUNuQixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsdUJBQXVCLENBQUMsSUFBSSxDQUM3RCxLQUFLLENBQUMsT0FBTyxDQUFDLDBCQUEwQixDQUFDLENBQzFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQ2hFLEtBQUssQ0FBQyxPQUFPLENBQUMsK0JBQStCLENBQUMsQ0FDL0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIEJlZHJvY2tTZXJ2aWNlRXhjZXB0aW9uLFxuICBCYXRjaERlbGV0ZUV2YWx1YXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIEJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBCYXRjaERlbGV0ZUV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVFdmFsdWF0aW9uSm9iQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVFdmFsdWF0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVHdWFyZHJhaWxDb21tYW5kLFxuICB0eXBlIENyZWF0ZUd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVHdWFyZHJhaWxWZXJzaW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVHdWFyZHJhaWxWZXJzaW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUd1YXJkcmFpbFZlcnNpb25Db21tYW5kT3V0cHV0LFxuICBDcmVhdGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVNb2RlbENvcHlKb2JDb21tYW5kLFxuICB0eXBlIENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVNb2RlbENvcHlKb2JDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVNb2RlbEltcG9ydEpvYkNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlTW9kZWxJbXBvcnRKb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlTW9kZWxJbXBvcnRKb2JDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIENyZWF0ZU1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVDdXN0b21Nb2RlbENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQ3VzdG9tTW9kZWxDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQ3VzdG9tTW9kZWxDb21tYW5kT3V0cHV0LFxuICBEZWxldGVHdWFyZHJhaWxDb21tYW5kLFxuICB0eXBlIERlbGV0ZUd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJbXBvcnRlZE1vZGVsQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVJbXBvcnRlZE1vZGVsQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUltcG9ydGVkTW9kZWxDb21tYW5kT3V0cHV0LFxuICBEZWxldGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlTW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlTW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG4gIHR5cGUgRGVsZXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kT3V0cHV0LFxuICBHZXRDdXN0b21Nb2RlbENvbW1hbmQsXG4gIHR5cGUgR2V0Q3VzdG9tTW9kZWxDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0Q3VzdG9tTW9kZWxDb21tYW5kT3V0cHV0LFxuICBHZXRFdmFsdWF0aW9uSm9iQ29tbWFuZCxcbiAgdHlwZSBHZXRFdmFsdWF0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBHZXRGb3VuZGF0aW9uTW9kZWxDb21tYW5kLFxuICB0eXBlIEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRGb3VuZGF0aW9uTW9kZWxDb21tYW5kT3V0cHV0LFxuICBHZXRHdWFyZHJhaWxDb21tYW5kLFxuICB0eXBlIEdldEd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICBHZXRJbXBvcnRlZE1vZGVsQ29tbWFuZCxcbiAgdHlwZSBHZXRJbXBvcnRlZE1vZGVsQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEltcG9ydGVkTW9kZWxDb21tYW5kT3V0cHV0LFxuICBHZXRJbmZlcmVuY2VQcm9maWxlQ29tbWFuZCxcbiAgdHlwZSBHZXRJbmZlcmVuY2VQcm9maWxlQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEluZmVyZW5jZVByb2ZpbGVDb21tYW5kT3V0cHV0LFxuICBHZXRNb2RlbENvcHlKb2JDb21tYW5kLFxuICB0eXBlIEdldE1vZGVsQ29weUpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRNb2RlbENvcHlKb2JDb21tYW5kT3V0cHV0LFxuICBHZXRNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIEdldE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBHZXRNb2RlbEltcG9ydEpvYkNvbW1hbmQsXG4gIHR5cGUgR2V0TW9kZWxJbXBvcnRKb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0TW9kZWxJbXBvcnRKb2JDb21tYW5kT3V0cHV0LFxuICBHZXRNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kLFxuICB0eXBlIEdldE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBHZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG4gIHR5cGUgR2V0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kT3V0cHV0LFxuICBMaXN0Q3VzdG9tTW9kZWxzQ29tbWFuZCxcbiAgdHlwZSBMaXN0Q3VzdG9tTW9kZWxzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RDdXN0b21Nb2RlbHNDb21tYW5kT3V0cHV0LFxuICBMaXN0RXZhbHVhdGlvbkpvYnNDb21tYW5kLFxuICB0eXBlIExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0RXZhbHVhdGlvbkpvYnNDb21tYW5kT3V0cHV0LFxuICBMaXN0Rm91bmRhdGlvbk1vZGVsc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEZvdW5kYXRpb25Nb2RlbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEZvdW5kYXRpb25Nb2RlbHNDb21tYW5kT3V0cHV0LFxuICBMaXN0R3VhcmRyYWlsc0NvbW1hbmQsXG4gIHR5cGUgTGlzdEd1YXJkcmFpbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEd1YXJkcmFpbHNDb21tYW5kT3V0cHV0LFxuICBMaXN0SW1wb3J0ZWRNb2RlbHNDb21tYW5kLFxuICB0eXBlIExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0SW1wb3J0ZWRNb2RlbHNDb21tYW5kT3V0cHV0LFxuICBMaXN0SW5mZXJlbmNlUHJvZmlsZXNDb21tYW5kLFxuICB0eXBlIExpc3RJbmZlcmVuY2VQcm9maWxlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0SW5mZXJlbmNlUHJvZmlsZXNDb21tYW5kT3V0cHV0LFxuICBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmQsXG4gIHR5cGUgTGlzdE1vZGVsQ29weUpvYnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE1vZGVsQ29weUpvYnNDb21tYW5kT3V0cHV0LFxuICBMaXN0TW9kZWxDdXN0b21pemF0aW9uSm9ic0NvbW1hbmQsXG4gIHR5cGUgTGlzdE1vZGVsQ3VzdG9taXphdGlvbkpvYnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE1vZGVsQ3VzdG9taXphdGlvbkpvYnNDb21tYW5kT3V0cHV0LFxuICBMaXN0TW9kZWxJbXBvcnRKb2JzQ29tbWFuZCxcbiAgdHlwZSBMaXN0TW9kZWxJbXBvcnRKb2JzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RNb2RlbEltcG9ydEpvYnNDb21tYW5kT3V0cHV0LFxuICBMaXN0TW9kZWxJbnZvY2F0aW9uSm9ic0NvbW1hbmQsXG4gIHR5cGUgTGlzdE1vZGVsSW52b2NhdGlvbkpvYnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE1vZGVsSW52b2NhdGlvbkpvYnNDb21tYW5kT3V0cHV0LFxuICBMaXN0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRzQ29tbWFuZCxcbiAgdHlwZSBMaXN0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRzQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dHNDb21tYW5kT3V0cHV0LFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZCxcbiAgdHlwZSBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBQdXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgUHV0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBTdG9wRXZhbHVhdGlvbkpvYkNvbW1hbmQsXG4gIHR5cGUgU3RvcEV2YWx1YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gIHR5cGUgU3RvcEV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBTdG9wTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZCxcbiAgdHlwZSBTdG9wTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIFN0b3BNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBTdG9wTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZCxcbiAgdHlwZSBTdG9wTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZElucHV0LFxuICB0eXBlIFN0b3BNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIHR5cGUgVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgVGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgdHlwZSBVbnRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICB0eXBlIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVHdWFyZHJhaWxDb21tYW5kLFxuICB0eXBlIFVwZGF0ZUd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBVcGRhdGVHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG4gIHR5cGUgVXBkYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBkYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWJlZHJvY2tcIjtcbmltcG9ydCB7IERhdGEsIEVmZmVjdCwgTGF5ZXIsIFJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIEJlZHJvY2tDbGllbnRJbnN0YW5jZSxcbiAgQmVkcm9ja0NsaWVudEluc3RhbmNlTGF5ZXIsXG59IGZyb20gXCIuL0JlZHJvY2tDbGllbnRJbnN0YW5jZVwiO1xuaW1wb3J0IHsgRGVmYXVsdEJlZHJvY2tDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL0JlZHJvY2tDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuaW1wb3J0IHtcbiAgQWxsU2VydmljZUVycm9ycyxcbiAgQWNjZXNzRGVuaWVkRXJyb3IsXG4gIENvbmZsaWN0RXJyb3IsXG4gIEludGVybmFsU2VydmVyRXJyb3IsXG4gIFJlc291cmNlTm90Rm91bmRFcnJvcixcbiAgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvcixcbiAgVGhyb3R0bGluZ0Vycm9yLFxuICBUb29NYW55VGFnc0Vycm9yLFxuICBWYWxpZGF0aW9uRXJyb3IsXG4gIFNka0Vycm9yLFxuICBUYWdnZWRFeGNlcHRpb24sXG59IGZyb20gXCIuL0Vycm9yc1wiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEh0dHBIYW5kbGVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSB0aW1lIGluIG1pbGxpc2Vjb25kcyB0aGF0IHRoZSBjb25uZWN0aW9uIHBoYXNlIG9mIGEgcmVxdWVzdFxuICAgKiBtYXkgdGFrZSBiZWZvcmUgdGhlIGNvbm5lY3Rpb24gYXR0ZW1wdCBpcyBhYmFuZG9uZWQuXG4gICAqL1xuICByZXF1ZXN0VGltZW91dD86IG51bWJlcjtcbn1cblxuY29uc3QgY29tbWFuZHMgPSB7XG4gIEJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYkNvbW1hbmQsXG4gIENyZWF0ZUV2YWx1YXRpb25Kb2JDb21tYW5kLFxuICBDcmVhdGVHdWFyZHJhaWxDb21tYW5kLFxuICBDcmVhdGVHdWFyZHJhaWxWZXJzaW9uQ29tbWFuZCxcbiAgQ3JlYXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmQsXG4gIENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmQsXG4gIENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmQsXG4gIENyZWF0ZU1vZGVsSW1wb3J0Sm9iQ29tbWFuZCxcbiAgQ3JlYXRlTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZCxcbiAgQ3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kLFxuICBEZWxldGVDdXN0b21Nb2RlbENvbW1hbmQsXG4gIERlbGV0ZUd1YXJkcmFpbENvbW1hbmQsXG4gIERlbGV0ZUltcG9ydGVkTW9kZWxDb21tYW5kLFxuICBEZWxldGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZCxcbiAgRGVsZXRlTW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG4gIEdldEN1c3RvbU1vZGVsQ29tbWFuZCxcbiAgR2V0RXZhbHVhdGlvbkpvYkNvbW1hbmQsXG4gIEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmQsXG4gIEdldEd1YXJkcmFpbENvbW1hbmQsXG4gIEdldEltcG9ydGVkTW9kZWxDb21tYW5kLFxuICBHZXRJbmZlcmVuY2VQcm9maWxlQ29tbWFuZCxcbiAgR2V0TW9kZWxDb3B5Sm9iQ29tbWFuZCxcbiAgR2V0TW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZCxcbiAgR2V0TW9kZWxJbXBvcnRKb2JDb21tYW5kLFxuICBHZXRNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kLFxuICBHZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZCxcbiAgTGlzdEN1c3RvbU1vZGVsc0NvbW1hbmQsXG4gIExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmQsXG4gIExpc3RGb3VuZGF0aW9uTW9kZWxzQ29tbWFuZCxcbiAgTGlzdEd1YXJkcmFpbHNDb21tYW5kLFxuICBMaXN0SW1wb3J0ZWRNb2RlbHNDb21tYW5kLFxuICBMaXN0SW5mZXJlbmNlUHJvZmlsZXNDb21tYW5kLFxuICBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmQsXG4gIExpc3RNb2RlbEN1c3RvbWl6YXRpb25Kb2JzQ29tbWFuZCxcbiAgTGlzdE1vZGVsSW1wb3J0Sm9ic0NvbW1hbmQsXG4gIExpc3RNb2RlbEludm9jYXRpb25Kb2JzQ29tbWFuZCxcbiAgTGlzdFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0c0NvbW1hbmQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kLFxuICBQdXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFN0b3BFdmFsdWF0aW9uSm9iQ29tbWFuZCxcbiAgU3RvcE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmQsXG4gIFN0b3BNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kLFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICBVcGRhdGVHdWFyZHJhaWxDb21tYW5kLFxuICBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmQsXG59O1xuXG5pbnRlcmZhY2UgQmVkcm9ja1NlcnZpY2UkIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQmF0Y2hEZWxldGVFdmFsdWF0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIGJhdGNoRGVsZXRlRXZhbHVhdGlvbkpvYihcbiAgICBhcmdzOiBCYXRjaERlbGV0ZUV2YWx1YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBCYXRjaERlbGV0ZUV2YWx1YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUV2YWx1YXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlRXZhbHVhdGlvbkpvYihcbiAgICBhcmdzOiBDcmVhdGVFdmFsdWF0aW9uSm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlRXZhbHVhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlR3VhcmRyYWlsQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZUd1YXJkcmFpbChcbiAgICBhcmdzOiBDcmVhdGVHdWFyZHJhaWxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFNlcnZpY2VRdW90YUV4Y2VlZGVkRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVG9vTWFueVRhZ3NFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZUd1YXJkcmFpbFZlcnNpb25Db21tYW5kfVxuICAgKi9cbiAgY3JlYXRlR3VhcmRyYWlsVmVyc2lvbihcbiAgICBhcmdzOiBDcmVhdGVHdWFyZHJhaWxWZXJzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlR3VhcmRyYWlsVmVyc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVJbmZlcmVuY2VQcm9maWxlKFxuICAgIGFyZ3M6IENyZWF0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFRvb01hbnlUYWdzRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVNb2RlbENvcHlKb2JDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlTW9kZWxDb3B5Sm9iKFxuICAgIGFyZ3M6IENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU1vZGVsQ29weUpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVG9vTWFueVRhZ3NFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlTW9kZWxDdXN0b21pemF0aW9uSm9iKFxuICAgIGFyZ3M6IENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBUb29NYW55VGFnc0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTW9kZWxJbXBvcnRKb2JDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlTW9kZWxJbXBvcnRKb2IoXG4gICAgYXJnczogQ3JlYXRlTW9kZWxJbXBvcnRKb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVNb2RlbEltcG9ydEpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBUb29NYW55VGFnc0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZU1vZGVsSW52b2NhdGlvbkpvYihcbiAgICBhcmdzOiBDcmVhdGVNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFNlcnZpY2VRdW90YUV4Y2VlZGVkRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0KFxuICAgIGFyZ3M6IENyZWF0ZVByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFNlcnZpY2VRdW90YUV4Y2VlZGVkRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVG9vTWFueVRhZ3NFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUN1c3RvbU1vZGVsQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUN1c3RvbU1vZGVsKFxuICAgIGFyZ3M6IERlbGV0ZUN1c3RvbU1vZGVsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlQ3VzdG9tTW9kZWxDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUd1YXJkcmFpbENvbW1hbmR9XG4gICAqL1xuICBkZWxldGVHdWFyZHJhaWwoXG4gICAgYXJnczogRGVsZXRlR3VhcmRyYWlsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlR3VhcmRyYWlsQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVJbXBvcnRlZE1vZGVsQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUltcG9ydGVkTW9kZWwoXG4gICAgYXJnczogRGVsZXRlSW1wb3J0ZWRNb2RlbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUltcG9ydGVkTW9kZWxDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUluZmVyZW5jZVByb2ZpbGVDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlSW5mZXJlbmNlUHJvZmlsZShcbiAgICBhcmdzOiBEZWxldGVJbmZlcmVuY2VQcm9maWxlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlSW5mZXJlbmNlUHJvZmlsZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlTW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlTW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogRGVsZXRlTW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBY2Nlc3NEZW5pZWRFcnJvciB8IEludGVybmFsU2VydmVyRXJyb3IgfCBUaHJvdHRsaW5nRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXQoXG4gICAgYXJnczogRGVsZXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0Q3VzdG9tTW9kZWxDb21tYW5kfVxuICAgKi9cbiAgZ2V0Q3VzdG9tTW9kZWwoXG4gICAgYXJnczogR2V0Q3VzdG9tTW9kZWxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRDdXN0b21Nb2RlbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RXZhbHVhdGlvbkpvYkNvbW1hbmR9XG4gICAqL1xuICBnZXRFdmFsdWF0aW9uSm9iKFxuICAgIGFyZ3M6IEdldEV2YWx1YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRFdmFsdWF0aW9uSm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRGb3VuZGF0aW9uTW9kZWxDb21tYW5kfVxuICAgKi9cbiAgZ2V0Rm91bmRhdGlvbk1vZGVsKFxuICAgIGFyZ3M6IEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEZvdW5kYXRpb25Nb2RlbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0R3VhcmRyYWlsQ29tbWFuZH1cbiAgICovXG4gIGdldEd1YXJkcmFpbChcbiAgICBhcmdzOiBHZXRHdWFyZHJhaWxDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRHdWFyZHJhaWxDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEltcG9ydGVkTW9kZWxDb21tYW5kfVxuICAgKi9cbiAgZ2V0SW1wb3J0ZWRNb2RlbChcbiAgICBhcmdzOiBHZXRJbXBvcnRlZE1vZGVsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0SW1wb3J0ZWRNb2RlbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0SW5mZXJlbmNlUHJvZmlsZUNvbW1hbmR9XG4gICAqL1xuICBnZXRJbmZlcmVuY2VQcm9maWxlKFxuICAgIGFyZ3M6IEdldEluZmVyZW5jZVByb2ZpbGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRJbmZlcmVuY2VQcm9maWxlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRNb2RlbENvcHlKb2JDb21tYW5kfVxuICAgKi9cbiAgZ2V0TW9kZWxDb3B5Sm9iKFxuICAgIGFyZ3M6IEdldE1vZGVsQ29weUpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldE1vZGVsQ29weUpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0TW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIGdldE1vZGVsQ3VzdG9taXphdGlvbkpvYihcbiAgICBhcmdzOiBHZXRNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE1vZGVsSW1wb3J0Sm9iQ29tbWFuZH1cbiAgICovXG4gIGdldE1vZGVsSW1wb3J0Sm9iKFxuICAgIGFyZ3M6IEdldE1vZGVsSW1wb3J0Sm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0TW9kZWxJbXBvcnRKb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmR9XG4gICAqL1xuICBnZXRNb2RlbEludm9jYXRpb25Kb2IoXG4gICAgYXJnczogR2V0TW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0TW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBnZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBHZXRNb2RlbEludm9jYXRpb25Mb2dnaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEFjY2Vzc0RlbmllZEVycm9yIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvciB8IFRocm90dGxpbmdFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmR9XG4gICAqL1xuICBnZXRQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dChcbiAgICBhcmdzOiBHZXRQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0Q3VzdG9tTW9kZWxzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RDdXN0b21Nb2RlbHMoXG4gICAgYXJnczogTGlzdEN1c3RvbU1vZGVsc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RDdXN0b21Nb2RlbHNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RXZhbHVhdGlvbkpvYnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEV2YWx1YXRpb25Kb2JzKFxuICAgIGFyZ3M6IExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RFdmFsdWF0aW9uSm9ic0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RGb3VuZGF0aW9uTW9kZWxzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RGb3VuZGF0aW9uTW9kZWxzKFxuICAgIGFyZ3M6IExpc3RGb3VuZGF0aW9uTW9kZWxzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEZvdW5kYXRpb25Nb2RlbHNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0R3VhcmRyYWlsc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0R3VhcmRyYWlscyhcbiAgICBhcmdzOiBMaXN0R3VhcmRyYWlsc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RHdWFyZHJhaWxzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0SW1wb3J0ZWRNb2RlbHNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEltcG9ydGVkTW9kZWxzKFxuICAgIGFyZ3M6IExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RJbXBvcnRlZE1vZGVsc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RJbmZlcmVuY2VQcm9maWxlc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0SW5mZXJlbmNlUHJvZmlsZXMoXG4gICAgYXJnczogTGlzdEluZmVyZW5jZVByb2ZpbGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEluZmVyZW5jZVByb2ZpbGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE1vZGVsQ29weUpvYnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE1vZGVsQ29weUpvYnMoXG4gICAgYXJnczogTGlzdE1vZGVsQ29weUpvYnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0TW9kZWxDb3B5Sm9ic0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE1vZGVsQ3VzdG9taXphdGlvbkpvYnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE1vZGVsQ3VzdG9taXphdGlvbkpvYnMoXG4gICAgYXJnczogTGlzdE1vZGVsQ3VzdG9taXphdGlvbkpvYnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0TW9kZWxDdXN0b21pemF0aW9uSm9ic0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RNb2RlbEltcG9ydEpvYnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE1vZGVsSW1wb3J0Sm9icyhcbiAgICBhcmdzOiBMaXN0TW9kZWxJbXBvcnRKb2JzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdE1vZGVsSW1wb3J0Sm9ic0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RNb2RlbEludm9jYXRpb25Kb2JzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RNb2RlbEludm9jYXRpb25Kb2JzKFxuICAgIGFyZ3M6IExpc3RNb2RlbEludm9jYXRpb25Kb2JzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdE1vZGVsSW52b2NhdGlvbkpvYnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dHMoXG4gICAgYXJnczogTGlzdFByb3Zpc2lvbmVkTW9kZWxUaHJvdWdocHV0c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dHNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIGxpc3RUYWdzRm9yUmVzb3VyY2UoXG4gICAgYXJnczogTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHB1dE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFB1dE1vZGVsSW52b2NhdGlvbkxvZ2dpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0TW9kZWxJbnZvY2F0aW9uTG9nZ2luZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTdG9wRXZhbHVhdGlvbkpvYkNvbW1hbmR9XG4gICAqL1xuICBzdG9wRXZhbHVhdGlvbkpvYihcbiAgICBhcmdzOiBTdG9wRXZhbHVhdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFN0b3BFdmFsdWF0aW9uSm9iQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgQ29uZmxpY3RFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTdG9wTW9kZWxDdXN0b21pemF0aW9uSm9iQ29tbWFuZH1cbiAgICovXG4gIHN0b3BNb2RlbEN1c3RvbWl6YXRpb25Kb2IoXG4gICAgYXJnczogU3RvcE1vZGVsQ3VzdG9taXphdGlvbkpvYkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFN0b3BNb2RlbEN1c3RvbWl6YXRpb25Kb2JDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEFjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBDb25mbGljdEVycm9yXG4gICAgfCBJbnRlcm5hbFNlcnZlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxpbmdFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN0b3BNb2RlbEludm9jYXRpb25Kb2JDb21tYW5kfVxuICAgKi9cbiAgc3RvcE1vZGVsSW52b2NhdGlvbkpvYihcbiAgICBhcmdzOiBTdG9wTW9kZWxJbnZvY2F0aW9uSm9iQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU3RvcE1vZGVsSW52b2NhdGlvbkpvYkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdGFnUmVzb3VyY2UoXG4gICAgYXJnczogVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBUb29NYW55VGFnc0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVW50YWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB1bnRhZ1Jlc291cmNlKFxuICAgIGFyZ3M6IFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVbnRhZ1Jlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgSW50ZXJuYWxTZXJ2ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsaW5nRXJyb3JcbiAgICB8IFZhbGlkYXRpb25FcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGRhdGVHdWFyZHJhaWxDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlR3VhcmRyYWlsKFxuICAgIGFyZ3M6IFVwZGF0ZUd1YXJkcmFpbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVwZGF0ZUd1YXJkcmFpbENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IENvbmZsaWN0RXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU2VydmljZVF1b3RhRXhjZWVkZWRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBkYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kfVxuICAgKi9cbiAgdXBkYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXQoXG4gICAgYXJnczogVXBkYXRlUHJvdmlzaW9uZWRNb2RlbFRocm91Z2hwdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBVcGRhdGVQcm92aXNpb25lZE1vZGVsVGhyb3VnaHB1dENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEludGVybmFsU2VydmVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGNsYXNzIEJlZHJvY2tTZXJ2aWNlIGV4dGVuZHMgRWZmZWN0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtYmVkcm9jay9CZWRyb2NrU2VydmljZVwiLFxuKTxCZWRyb2NrU2VydmljZSwgQmVkcm9ja1NlcnZpY2UkPigpIHt9XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgY29uc3RydWN0b3JzXG4gKi9cbmV4cG9ydCBjb25zdCBtYWtlQmVkcm9ja1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhCZWRyb2NrQ2xpZW50SW5zdGFuY2UpO1xuXG4gIHJldHVybiBSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChhcmdzOiBhbnksIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMpID0+XG4gICAgICBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgIHRyeTogKGFib3J0U2lnbmFsKSA9PlxuICAgICAgICAgIGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwge1xuICAgICAgICAgICAgLi4uKG9wdGlvbnMgPz8ge30pLFxuICAgICAgICAgICAgYWJvcnRTaWduYWwsXG4gICAgICAgICAgfSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgIGUgaW5zdGFuY2VvZiBCZWRyb2NrU2VydmljZUV4Y2VwdGlvbiAmJlxuICAgICAgICAgICAgQWxsU2VydmljZUVycm9ycy5pbmNsdWRlcyhlLm5hbWUpXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICBjb25zdCBTZXJ2aWNlRXhjZXB0aW9uID0gRGF0YS50YWdnZWQ8XG4gICAgICAgICAgICAgIFRhZ2dlZEV4Y2VwdGlvbjxCZWRyb2NrU2VydmljZUV4Y2VwdGlvbj5cbiAgICAgICAgICAgID4oZS5uYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIFNlcnZpY2VFeGNlcHRpb24oe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgQmVkcm9ja1NlcnZpY2UkO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlQmVkcm9ja1NlcnZpY2VMYXllciA9IExheWVyLmVmZmVjdChcbiAgQmVkcm9ja1NlcnZpY2UsXG4gIG1ha2VCZWRyb2NrU2VydmljZSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCZWRyb2NrU2VydmljZUxheWVyID0gQmFzZUJlZHJvY2tTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShCZWRyb2NrQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdEJlZHJvY2tTZXJ2aWNlTGF5ZXIgPSBCZWRyb2NrU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoRGVmYXVsdEJlZHJvY2tDbGllbnRDb25maWdMYXllciksXG4pO1xuIl19
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Data } from "effect";
|
|
2
|
+
export const AllServiceErrors = [
|
|
3
|
+
"AccessDeniedException",
|
|
4
|
+
"ConflictException",
|
|
5
|
+
"InternalServerException",
|
|
6
|
+
"ResourceNotFoundException",
|
|
7
|
+
"ServiceQuotaExceededException",
|
|
8
|
+
"ThrottlingException",
|
|
9
|
+
"TooManyTagsException",
|
|
10
|
+
"ValidationException",
|
|
11
|
+
];
|
|
12
|
+
export const SdkError = Data.tagged("SdkError");
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBRTlCLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLHVCQUF1QjtJQUN2QixtQkFBbUI7SUFDbkIseUJBQXlCO0lBQ3pCLDJCQUEyQjtJQUMzQiwrQkFBK0I7SUFDL0IscUJBQXFCO0lBQ3JCLHNCQUFzQjtJQUN0QixxQkFBcUI7Q0FDdEIsQ0FBQztBQWlCRixNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQWNjZXNzRGVuaWVkRXhjZXB0aW9uLFxuICBDb25mbGljdEV4Y2VwdGlvbixcbiAgSW50ZXJuYWxTZXJ2ZXJFeGNlcHRpb24sXG4gIFJlc291cmNlTm90Rm91bmRFeGNlcHRpb24sXG4gIFNlcnZpY2VRdW90YUV4Y2VlZGVkRXhjZXB0aW9uLFxuICBUaHJvdHRsaW5nRXhjZXB0aW9uLFxuICBUb29NYW55VGFnc0V4Y2VwdGlvbixcbiAgVmFsaWRhdGlvbkV4Y2VwdGlvbixcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1iZWRyb2NrXCI7XG5pbXBvcnQgeyBEYXRhIH0gZnJvbSBcImVmZmVjdFwiO1xuXG5leHBvcnQgY29uc3QgQWxsU2VydmljZUVycm9ycyA9IFtcbiAgXCJBY2Nlc3NEZW5pZWRFeGNlcHRpb25cIixcbiAgXCJDb25mbGljdEV4Y2VwdGlvblwiLFxuICBcIkludGVybmFsU2VydmVyRXhjZXB0aW9uXCIsXG4gIFwiUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvblwiLFxuICBcIlNlcnZpY2VRdW90YUV4Y2VlZGVkRXhjZXB0aW9uXCIsXG4gIFwiVGhyb3R0bGluZ0V4Y2VwdGlvblwiLFxuICBcIlRvb01hbnlUYWdzRXhjZXB0aW9uXCIsXG4gIFwiVmFsaWRhdGlvbkV4Y2VwdGlvblwiLFxuXTtcblxuZXhwb3J0IHR5cGUgVGFnZ2VkRXhjZXB0aW9uPFQgZXh0ZW5kcyB7IG5hbWU6IHN0cmluZyB9PiA9IFQgJiB7XG4gIHJlYWRvbmx5IF90YWc6IFRbXCJuYW1lXCJdO1xufTtcblxuZXhwb3J0IHR5cGUgQWNjZXNzRGVuaWVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248QWNjZXNzRGVuaWVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIENvbmZsaWN0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Q29uZmxpY3RFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgSW50ZXJuYWxTZXJ2ZXJFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxJbnRlcm5hbFNlcnZlckV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBSZXNvdXJjZU5vdEZvdW5kRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248UmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBTZXJ2aWNlUXVvdGFFeGNlZWRlZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFNlcnZpY2VRdW90YUV4Y2VlZGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFRocm90dGxpbmdFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxUaHJvdHRsaW5nRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFRvb01hbnlUYWdzRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248VG9vTWFueVRhZ3NFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVmFsaWRhdGlvbkVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFZhbGlkYXRpb25FeGNlcHRpb24+O1xuXG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
|
package/lib/esm/index.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export * from "./Errors";
|
|
2
|
+
export * from "./BedrockClientInstance";
|
|
3
|
+
export * from "./BedrockClientInstanceConfig";
|
|
4
|
+
export * from "./BedrockService";
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9FcnJvcnNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0JlZHJvY2tDbGllbnRJbnN0YW5jZVwiO1xuZXhwb3J0ICogZnJvbSBcIi4vQmVkcm9ja0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9CZWRyb2NrU2VydmljZVwiO1xuIl19
|
package/lib/index.d.ts
ADDED
package/lib/index.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./Errors"), exports);
|
|
18
|
+
__exportStar(require("./BedrockClientInstance"), exports);
|
|
19
|
+
__exportStar(require("./BedrockClientInstanceConfig"), exports);
|
|
20
|
+
__exportStar(require("./BedrockService"), exports);
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUF5QjtBQUN6QiwwREFBd0M7QUFDeEMsZ0VBQThDO0FBQzlDLG1EQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gXCIuL0Vycm9yc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vQmVkcm9ja0NsaWVudEluc3RhbmNlXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9CZWRyb2NrQ2xpZW50SW5zdGFuY2VDb25maWdcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0JlZHJvY2tTZXJ2aWNlXCI7XG4iXX0=
|