@effect-aws/client-sns 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +82 -1
- package/lib/Errors.d.ts +5 -2
- package/lib/Errors.js +40 -27
- package/lib/SNSClientInstanceConfig.d.ts +1 -3
- package/lib/SNSClientInstanceConfig.js +22 -38
- package/lib/SNSService.d.ts +105 -54
- package/lib/SNSService.js +12 -6
- package/lib/esm/Errors.js +38 -2
- package/lib/esm/SNSClientInstanceConfig.js +17 -10
- package/lib/esm/SNSService.js +13 -8
- package/package.json +12 -14
- package/vitest.config.ts +3 -0
package/lib/esm/Errors.js
CHANGED
|
@@ -1,3 +1,39 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { Data } from "effect";
|
|
2
|
+
export const AllServiceErrors = [
|
|
3
|
+
"AuthorizationErrorException",
|
|
4
|
+
"BatchEntryIdsNotDistinctException",
|
|
5
|
+
"BatchRequestTooLongException",
|
|
6
|
+
"ConcurrentAccessException",
|
|
7
|
+
"EmptyBatchRequestException",
|
|
8
|
+
"EndpointDisabledException",
|
|
9
|
+
"FilterPolicyLimitExceededException",
|
|
10
|
+
"InternalErrorException",
|
|
11
|
+
"InvalidBatchEntryIdException",
|
|
12
|
+
"InvalidParameterException",
|
|
13
|
+
"InvalidParameterValueException",
|
|
14
|
+
"InvalidSecurityException",
|
|
15
|
+
"InvalidStateException",
|
|
16
|
+
"KMSAccessDeniedException",
|
|
17
|
+
"KMSDisabledException",
|
|
18
|
+
"KMSInvalidStateException",
|
|
19
|
+
"KMSNotFoundException",
|
|
20
|
+
"KMSOptInRequired",
|
|
21
|
+
"KMSThrottlingException",
|
|
22
|
+
"NotFoundException",
|
|
23
|
+
"OptedOutException",
|
|
24
|
+
"PlatformApplicationDisabledException",
|
|
25
|
+
"ReplayLimitExceededException",
|
|
26
|
+
"ResourceNotFoundException",
|
|
27
|
+
"StaleTagException",
|
|
28
|
+
"SubscriptionLimitExceededException",
|
|
29
|
+
"TagLimitExceededException",
|
|
30
|
+
"TagPolicyException",
|
|
31
|
+
"ThrottledException",
|
|
32
|
+
"TooManyEntriesInBatchRequestException",
|
|
33
|
+
"TopicLimitExceededException",
|
|
34
|
+
"UserErrorException",
|
|
35
|
+
"ValidationException",
|
|
36
|
+
"VerificationException",
|
|
37
|
+
];
|
|
2
38
|
export const SdkError = Data.tagged("SdkError");
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvQ0EsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUU5QixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRztJQUM5Qiw2QkFBNkI7SUFDN0IsbUNBQW1DO0lBQ25DLDhCQUE4QjtJQUM5QiwyQkFBMkI7SUFDM0IsNEJBQTRCO0lBQzVCLDJCQUEyQjtJQUMzQixvQ0FBb0M7SUFDcEMsd0JBQXdCO0lBQ3hCLDhCQUE4QjtJQUM5QiwyQkFBMkI7SUFDM0IsZ0NBQWdDO0lBQ2hDLDBCQUEwQjtJQUMxQix1QkFBdUI7SUFDdkIsMEJBQTBCO0lBQzFCLHNCQUFzQjtJQUN0QiwwQkFBMEI7SUFDMUIsc0JBQXNCO0lBQ3RCLGtCQUFrQjtJQUNsQix3QkFBd0I7SUFDeEIsbUJBQW1CO0lBQ25CLG1CQUFtQjtJQUNuQixzQ0FBc0M7SUFDdEMsOEJBQThCO0lBQzlCLDJCQUEyQjtJQUMzQixtQkFBbUI7SUFDbkIsb0NBQW9DO0lBQ3BDLDJCQUEyQjtJQUMzQixvQkFBb0I7SUFDcEIsb0JBQW9CO0lBQ3BCLHVDQUF1QztJQUN2Qyw2QkFBNkI7SUFDN0Isb0JBQW9CO0lBQ3BCLHFCQUFxQjtJQUNyQix1QkFBdUI7Q0FDeEIsQ0FBQztBQXFERixNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQXV0aG9yaXphdGlvbkVycm9yRXhjZXB0aW9uLFxuICBCYXRjaEVudHJ5SWRzTm90RGlzdGluY3RFeGNlcHRpb24sXG4gIEJhdGNoUmVxdWVzdFRvb0xvbmdFeGNlcHRpb24sXG4gIENvbmN1cnJlbnRBY2Nlc3NFeGNlcHRpb24sXG4gIEVtcHR5QmF0Y2hSZXF1ZXN0RXhjZXB0aW9uLFxuICBFbmRwb2ludERpc2FibGVkRXhjZXB0aW9uLFxuICBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uLFxuICBJbnRlcm5hbEVycm9yRXhjZXB0aW9uLFxuICBJbnZhbGlkQmF0Y2hFbnRyeUlkRXhjZXB0aW9uLFxuICBJbnZhbGlkUGFyYW1ldGVyRXhjZXB0aW9uLFxuICBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFeGNlcHRpb24sXG4gIEludmFsaWRTZWN1cml0eUV4Y2VwdGlvbixcbiAgSW52YWxpZFN0YXRlRXhjZXB0aW9uLFxuICBLTVNBY2Nlc3NEZW5pZWRFeGNlcHRpb24sXG4gIEtNU0Rpc2FibGVkRXhjZXB0aW9uLFxuICBLTVNJbnZhbGlkU3RhdGVFeGNlcHRpb24sXG4gIEtNU05vdEZvdW5kRXhjZXB0aW9uLFxuICBLTVNPcHRJblJlcXVpcmVkLFxuICBLTVNUaHJvdHRsaW5nRXhjZXB0aW9uLFxuICBOb3RGb3VuZEV4Y2VwdGlvbixcbiAgT3B0ZWRPdXRFeGNlcHRpb24sXG4gIFBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEV4Y2VwdGlvbixcbiAgUmVwbGF5TGltaXRFeGNlZWRlZEV4Y2VwdGlvbixcbiAgUmVzb3VyY2VOb3RGb3VuZEV4Y2VwdGlvbixcbiAgU3RhbGVUYWdFeGNlcHRpb24sXG4gIFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFeGNlcHRpb24sXG4gIFRhZ0xpbWl0RXhjZWVkZWRFeGNlcHRpb24sXG4gIFRhZ1BvbGljeUV4Y2VwdGlvbixcbiAgVGhyb3R0bGVkRXhjZXB0aW9uLFxuICBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXhjZXB0aW9uLFxuICBUb3BpY0xpbWl0RXhjZWVkZWRFeGNlcHRpb24sXG4gIFVzZXJFcnJvckV4Y2VwdGlvbixcbiAgVmFsaWRhdGlvbkV4Y2VwdGlvbixcbiAgVmVyaWZpY2F0aW9uRXhjZXB0aW9uLFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXNuc1wiO1xuaW1wb3J0IHsgRGF0YSB9IGZyb20gXCJlZmZlY3RcIjtcblxuZXhwb3J0IGNvbnN0IEFsbFNlcnZpY2VFcnJvcnMgPSBbXG4gIFwiQXV0aG9yaXphdGlvbkVycm9yRXhjZXB0aW9uXCIsXG4gIFwiQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXhjZXB0aW9uXCIsXG4gIFwiQmF0Y2hSZXF1ZXN0VG9vTG9uZ0V4Y2VwdGlvblwiLFxuICBcIkNvbmN1cnJlbnRBY2Nlc3NFeGNlcHRpb25cIixcbiAgXCJFbXB0eUJhdGNoUmVxdWVzdEV4Y2VwdGlvblwiLFxuICBcIkVuZHBvaW50RGlzYWJsZWRFeGNlcHRpb25cIixcbiAgXCJGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uXCIsXG4gIFwiSW50ZXJuYWxFcnJvckV4Y2VwdGlvblwiLFxuICBcIkludmFsaWRCYXRjaEVudHJ5SWRFeGNlcHRpb25cIixcbiAgXCJJbnZhbGlkUGFyYW1ldGVyRXhjZXB0aW9uXCIsXG4gIFwiSW52YWxpZFBhcmFtZXRlclZhbHVlRXhjZXB0aW9uXCIsXG4gIFwiSW52YWxpZFNlY3VyaXR5RXhjZXB0aW9uXCIsXG4gIFwiSW52YWxpZFN0YXRlRXhjZXB0aW9uXCIsXG4gIFwiS01TQWNjZXNzRGVuaWVkRXhjZXB0aW9uXCIsXG4gIFwiS01TRGlzYWJsZWRFeGNlcHRpb25cIixcbiAgXCJLTVNJbnZhbGlkU3RhdGVFeGNlcHRpb25cIixcbiAgXCJLTVNOb3RGb3VuZEV4Y2VwdGlvblwiLFxuICBcIktNU09wdEluUmVxdWlyZWRcIixcbiAgXCJLTVNUaHJvdHRsaW5nRXhjZXB0aW9uXCIsXG4gIFwiTm90Rm91bmRFeGNlcHRpb25cIixcbiAgXCJPcHRlZE91dEV4Y2VwdGlvblwiLFxuICBcIlBsYXRmb3JtQXBwbGljYXRpb25EaXNhYmxlZEV4Y2VwdGlvblwiLFxuICBcIlJlcGxheUxpbWl0RXhjZWVkZWRFeGNlcHRpb25cIixcbiAgXCJSZXNvdXJjZU5vdEZvdW5kRXhjZXB0aW9uXCIsXG4gIFwiU3RhbGVUYWdFeGNlcHRpb25cIixcbiAgXCJTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXhjZXB0aW9uXCIsXG4gIFwiVGFnTGltaXRFeGNlZWRlZEV4Y2VwdGlvblwiLFxuICBcIlRhZ1BvbGljeUV4Y2VwdGlvblwiLFxuICBcIlRocm90dGxlZEV4Y2VwdGlvblwiLFxuICBcIlRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFeGNlcHRpb25cIixcbiAgXCJUb3BpY0xpbWl0RXhjZWVkZWRFeGNlcHRpb25cIixcbiAgXCJVc2VyRXJyb3JFeGNlcHRpb25cIixcbiAgXCJWYWxpZGF0aW9uRXhjZXB0aW9uXCIsXG4gIFwiVmVyaWZpY2F0aW9uRXhjZXB0aW9uXCIsXG5dO1xuXG5leHBvcnQgdHlwZSBUYWdnZWRFeGNlcHRpb248VCBleHRlbmRzIHsgbmFtZTogc3RyaW5nIH0+ID0gVCAmIHtcbiAgcmVhZG9ubHkgX3RhZzogVFtcIm5hbWVcIl07XG59O1xuXG5leHBvcnQgdHlwZSBBdXRob3JpemF0aW9uRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248QXV0aG9yaXphdGlvbkVycm9yRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248QmF0Y2hSZXF1ZXN0VG9vTG9uZ0V4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBDb25jdXJyZW50QWNjZXNzRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Q29uY3VycmVudEFjY2Vzc0V4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBFbXB0eUJhdGNoUmVxdWVzdEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPEVtcHR5QmF0Y2hSZXF1ZXN0RXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEVuZHBvaW50RGlzYWJsZWRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFbmRwb2ludERpc2FibGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEludGVybmFsRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW50ZXJuYWxFcnJvckV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248SW52YWxpZEJhdGNoRW50cnlJZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBJbnZhbGlkUGFyYW1ldGVyRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFBhcmFtZXRlckV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxJbnZhbGlkUGFyYW1ldGVyVmFsdWVFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgSW52YWxpZFNlY3VyaXR5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZFNlY3VyaXR5RXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIEludmFsaWRTdGF0ZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEludmFsaWRTdGF0ZUV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBLTVNBY2Nlc3NEZW5pZWRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLTVNBY2Nlc3NEZW5pZWRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgS01TRGlzYWJsZWRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLTVNEaXNhYmxlZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBLTVNJbnZhbGlkU3RhdGVFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLTVNJbnZhbGlkU3RhdGVFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgS01TTm90Rm91bmRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxLTVNOb3RGb3VuZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBLTVNPcHRJblJlcXVpcmVkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248S01TT3B0SW5SZXF1aXJlZD47XG5leHBvcnQgdHlwZSBLTVNUaHJvdHRsaW5nRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248S01TVGhyb3R0bGluZ0V4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBOb3RGb3VuZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPE5vdEZvdW5kRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIE9wdGVkT3V0RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248T3B0ZWRPdXRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248UGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFJlcGxheUxpbWl0RXhjZWVkZWRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxSZXBsYXlMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFJlc291cmNlTm90Rm91bmRFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxSZXNvdXJjZU5vdEZvdW5kRXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFN0YWxlVGFnRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248U3RhbGVUYWdFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgU3Vic2NyaXB0aW9uTGltaXRFeGNlZWRlZEVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVGFnTGltaXRFeGNlZWRlZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFRhZ0xpbWl0RXhjZWVkZWRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVGFnUG9saWN5RXJyb3IgPSBUYWdnZWRFeGNlcHRpb248VGFnUG9saWN5RXhjZXB0aW9uPjtcbmV4cG9ydCB0eXBlIFRocm90dGxlZEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFRocm90dGxlZEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBUb29NYW55RW50cmllc0luQmF0Y2hSZXF1ZXN0RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248VG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBUb3BpY0xpbWl0RXhjZWVkZWRFcnJvciA9XG4gIFRhZ2dlZEV4Y2VwdGlvbjxUb3BpY0xpbWl0RXhjZWVkZWRFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgVXNlckVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFVzZXJFcnJvckV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBWYWxpZGF0aW9uRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248VmFsaWRhdGlvbkV4Y2VwdGlvbj47XG5leHBvcnQgdHlwZSBWZXJpZmljYXRpb25FcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxWZXJpZmljYXRpb25FeGNlcHRpb24+O1xuXG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import * as Effect from "effect/Effect";
|
|
3
|
-
import * as Layer from "effect/Layer";
|
|
4
|
-
import * as Runtime from "effect/Runtime";
|
|
1
|
+
import { Context, Effect, Layer, Runtime } from "effect";
|
|
5
2
|
/**
|
|
6
3
|
* @since 1.0.0
|
|
7
4
|
* @category tags
|
|
@@ -17,11 +14,21 @@ export const makeDefaultSNSClientInstanceConfig = Effect.gen(function* (_) {
|
|
|
17
14
|
const runSync = Runtime.runSync(runtime);
|
|
18
15
|
return {
|
|
19
16
|
logger: {
|
|
20
|
-
info
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
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
|
+
},
|
|
25
32
|
},
|
|
26
33
|
};
|
|
27
34
|
});
|
|
@@ -30,4 +37,4 @@ export const makeDefaultSNSClientInstanceConfig = Effect.gen(function* (_) {
|
|
|
30
37
|
* @category layers
|
|
31
38
|
*/
|
|
32
39
|
export const DefaultSNSClientConfigLayer = Layer.effect(SNSClientInstanceConfig, makeDefaultSNSClientInstanceConfig);
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TQ2xpZW50SW5zdGFuY2VDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvU05TQ2xpZW50SW5zdGFuY2VDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUV6RDs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDdEQsZ0RBQWdELENBQ2pELEVBQTRDO0NBQUc7QUFFaEQ7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQzdDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNyQixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBUyxDQUFDLENBQUM7SUFDbEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxDQUFDLENBQUM7Z0JBQ0osTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNKLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3JELHVCQUF1QixFQUN2QixrQ0FBa0MsQ0FDbkMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB0eXBlIHsgU05TQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zbnNcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJ1bnRpbWUgfSBmcm9tIFwiZWZmZWN0XCI7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY2xhc3MgU05TQ2xpZW50SW5zdGFuY2VDb25maWcgZXh0ZW5kcyBDb250ZXh0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtc25zL1NOU0NsaWVudEluc3RhbmNlQ29uZmlnXCIsXG4pPFNOU0NsaWVudEluc3RhbmNlQ29uZmlnLCBTTlNDbGllbnRDb25maWc+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VEZWZhdWx0U05TQ2xpZW50SW5zdGFuY2VDb25maWc6IEVmZmVjdC5FZmZlY3Q8U05TQ2xpZW50Q29uZmlnPiA9XG4gIEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gICAgY29uc3QgcnVudGltZSA9IHlpZWxkKiBfKEVmZmVjdC5ydW50aW1lPG5ldmVyPigpKTtcbiAgICBjb25zdCBydW5TeW5jID0gUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvZ2dlcjoge1xuICAgICAgICBpbmZvKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nSW5mbyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB3YXJuKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nV2FybmluZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0Vycm9yKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGRlYnVnKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRGVidWcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHJhY2UobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dUcmFjZShtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciA9IExheWVyLmVmZmVjdChcbiAgU05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG4gIG1ha2VEZWZhdWx0U05TQ2xpZW50SW5zdGFuY2VDb25maWcsXG4pO1xuIl19
|
package/lib/esm/SNSService.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @since 1.0.0
|
|
3
3
|
*/
|
|
4
|
-
import { AddPermissionCommand, CheckIfPhoneNumberIsOptedOutCommand, ConfirmSubscriptionCommand, CreatePlatformApplicationCommand, CreatePlatformEndpointCommand, CreateSMSSandboxPhoneNumberCommand, CreateTopicCommand, DeleteEndpointCommand, DeletePlatformApplicationCommand, DeleteSMSSandboxPhoneNumberCommand, DeleteTopicCommand, GetDataProtectionPolicyCommand, GetEndpointAttributesCommand, GetPlatformApplicationAttributesCommand, GetSMSAttributesCommand, GetSMSSandboxAccountStatusCommand, GetSubscriptionAttributesCommand, GetTopicAttributesCommand, ListEndpointsByPlatformApplicationCommand, ListOriginationNumbersCommand, ListPhoneNumbersOptedOutCommand, ListPlatformApplicationsCommand, ListSMSSandboxPhoneNumbersCommand,
|
|
5
|
-
import {
|
|
6
|
-
import { SdkError, } from "./Errors";
|
|
4
|
+
import { SNSServiceException, AddPermissionCommand, CheckIfPhoneNumberIsOptedOutCommand, ConfirmSubscriptionCommand, CreatePlatformApplicationCommand, CreatePlatformEndpointCommand, CreateSMSSandboxPhoneNumberCommand, CreateTopicCommand, DeleteEndpointCommand, DeletePlatformApplicationCommand, DeleteSMSSandboxPhoneNumberCommand, DeleteTopicCommand, GetDataProtectionPolicyCommand, GetEndpointAttributesCommand, GetPlatformApplicationAttributesCommand, GetSMSAttributesCommand, GetSMSSandboxAccountStatusCommand, GetSubscriptionAttributesCommand, GetTopicAttributesCommand, ListEndpointsByPlatformApplicationCommand, ListOriginationNumbersCommand, ListPhoneNumbersOptedOutCommand, ListPlatformApplicationsCommand, ListSMSSandboxPhoneNumbersCommand, ListSubscriptionsCommand, ListSubscriptionsByTopicCommand, ListTagsForResourceCommand, ListTopicsCommand, OptInPhoneNumberCommand, PublishCommand, PublishBatchCommand, PutDataProtectionPolicyCommand, RemovePermissionCommand, SetEndpointAttributesCommand, SetPlatformApplicationAttributesCommand, SetSMSAttributesCommand, SetSubscriptionAttributesCommand, SetTopicAttributesCommand, SubscribeCommand, TagResourceCommand, UnsubscribeCommand, UntagResourceCommand, VerifySMSSandboxPhoneNumberCommand, } from "@aws-sdk/client-sns";
|
|
5
|
+
import { Data, Effect, Layer, Record } from "effect";
|
|
6
|
+
import { AllServiceErrors, SdkError, } from "./Errors";
|
|
7
7
|
import { SNSClientInstance, SNSClientInstanceLayer } from "./SNSClientInstance";
|
|
8
8
|
import { DefaultSNSClientConfigLayer } from "./SNSClientInstanceConfig";
|
|
9
9
|
const commands = {
|
|
@@ -52,9 +52,10 @@ const commands = {
|
|
|
52
52
|
};
|
|
53
53
|
/**
|
|
54
54
|
* @since 1.0.0
|
|
55
|
-
* @category
|
|
55
|
+
* @category models
|
|
56
56
|
*/
|
|
57
|
-
export
|
|
57
|
+
export class SNSService extends Effect.Tag("@effect-aws/client-sns/SNSService")() {
|
|
58
|
+
}
|
|
58
59
|
/**
|
|
59
60
|
* @since 1.0.0
|
|
60
61
|
* @category constructors
|
|
@@ -64,9 +65,13 @@ export const makeSNSService = Effect.gen(function* (_) {
|
|
|
64
65
|
return Record.toEntries(commands).reduce((acc, [command]) => {
|
|
65
66
|
const CommandCtor = commands[command];
|
|
66
67
|
const methodImpl = (args, options) => Effect.tryPromise({
|
|
67
|
-
try: () => client.send(new CommandCtor(args),
|
|
68
|
+
try: (abortSignal) => client.send(new CommandCtor(args), {
|
|
69
|
+
...(options !== null && options !== void 0 ? options : {}),
|
|
70
|
+
abortSignal,
|
|
71
|
+
}),
|
|
68
72
|
catch: (e) => {
|
|
69
|
-
if (e instanceof SNSServiceException
|
|
73
|
+
if (e instanceof SNSServiceException &&
|
|
74
|
+
AllServiceErrors.includes(e.name)) {
|
|
70
75
|
const ServiceException = Data.tagged(e.name);
|
|
71
76
|
return ServiceException({
|
|
72
77
|
...e,
|
|
@@ -104,4 +109,4 @@ export const SNSServiceLayer = BaseSNSServiceLayer.pipe(Layer.provide(SNSClientI
|
|
|
104
109
|
* @category layers
|
|
105
110
|
*/
|
|
106
111
|
export const DefaultSNSServiceLayer = SNSServiceLayer.pipe(Layer.provide(DefaultSNSClientConfigLayer));
|
|
107
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TTlNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUNMLG9CQUFvQixFQUdwQixtQ0FBbUMsRUFHbkMsMEJBQTBCLEVBRzFCLGdDQUFnQyxFQUdoQyw2QkFBNkIsRUFHN0Isa0NBQWtDLEVBR2xDLGtCQUFrQixFQUdsQixxQkFBcUIsRUFHckIsZ0NBQWdDLEVBR2hDLGtDQUFrQyxFQUdsQyxrQkFBa0IsRUFHbEIsOEJBQThCLEVBRzlCLDRCQUE0QixFQUc1Qix1Q0FBdUMsRUFHdkMsdUJBQXVCLEVBR3ZCLGlDQUFpQyxFQUdqQyxnQ0FBZ0MsRUFHaEMseUJBQXlCLEVBR3pCLHlDQUF5QyxFQUd6Qyw2QkFBNkIsRUFHN0IsK0JBQStCLEVBRy9CLCtCQUErQixFQUcvQixpQ0FBaUMsRUFHakMsK0JBQStCLEVBRy9CLHdCQUF3QixFQUd4QiwwQkFBMEIsRUFHMUIsaUJBQWlCLEVBR2pCLHVCQUF1QixFQUd2QixtQkFBbUIsRUFHbkIsY0FBYyxFQUdkLDhCQUE4QixFQUc5Qix1QkFBdUIsRUFHdkIsbUJBQW1CLEVBQ25CLDRCQUE0QixFQUc1Qix1Q0FBdUMsRUFHdkMsdUJBQXVCLEVBR3ZCLGdDQUFnQyxFQUdoQyx5QkFBeUIsRUFHekIsZ0JBQWdCLEVBR2hCLGtCQUFrQixFQUdsQixrQkFBa0IsRUFHbEIsb0JBQW9CLEVBR3BCLGtDQUFrQyxHQUduQyxNQUFNLHFCQUFxQixDQUFDO0FBRTdCLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzlELE9BQU8sRUF1QkwsUUFBUSxHQVlULE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hGLE9B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LFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWUsQ0FBQztBQUN2QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBRTVFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICBBZGRQZXJtaXNzaW9uQ29tbWFuZE91dHB1dCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kT3V0cHV0LFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZCxcbiAgQ3JlYXRlVG9waWNDb21tYW5kSW5wdXQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kLFxuICBEZWxldGVFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlVG9waWNDb21tYW5kLFxuICBEZWxldGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlVG9waWNDb21tYW5kT3V0cHV0LFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZCxcbiAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kSW5wdXQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kSW5wdXQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kLFxuICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kLFxuICBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kT3V0cHV0LFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kSW5wdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kSW5wdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBMaXN0VG9waWNzQ29tbWFuZCxcbiAgTGlzdFRvcGljc0NvbW1hbmRJbnB1dCxcbiAgTGlzdFRvcGljc0NvbW1hbmRPdXRwdXQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kLFxuICBPcHRJblBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICBPcHRJblBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZElucHV0LFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kT3V0cHV0LFxuICBQdWJsaXNoQ29tbWFuZCxcbiAgUHVibGlzaENvbW1hbmRJbnB1dCxcbiAgUHVibGlzaENvbW1hbmRPdXRwdXQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dCxcbiAgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICBTTlNTZXJ2aWNlRXhjZXB0aW9uLFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU2V0U01TQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgU3Vic2NyaWJlQ29tbWFuZCxcbiAgU3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICBTdWJzY3JpYmVDb21tYW5kT3V0cHV0LFxuICBUYWdSZXNvdXJjZUNvbW1hbmQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZElucHV0LFxuICBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZE91dHB1dCxcbiAgVW50YWdSZXNvdXJjZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc25zXCI7XG5pbXBvcnQgeyBIdHRwSGFuZGxlck9wdGlvbnMgYXMgX19IdHRwSGFuZGxlck9wdGlvbnMgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IENvbnRleHQsIERhdGEsIEVmZmVjdCwgTGF5ZXIsIFJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIEF1dGhvcml6YXRpb25FcnJvcixcbiAgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3IsXG4gIEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvcixcbiAgQ29uY3VycmVudEFjY2Vzc0Vycm9yLFxuICBFbXB0eUJhdGNoUmVxdWVzdEVycm9yLFxuICBFbmRwb2ludERpc2FibGVkRXJyb3IsXG4gIEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvcixcbiAgSW50ZXJuYWxFcnJvcixcbiAgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yLFxuICBJbnZhbGlkUGFyYW1ldGVyRXJyb3IsXG4gIEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yLFxuICBJbnZhbGlkU2VjdXJpdHlFcnJvcixcbiAgS01TQWNjZXNzRGVuaWVkRXJyb3IsXG4gIEtNU0Rpc2FibGVkRXJyb3IsXG4gIEtNU0ludmFsaWRTdGF0ZUVycm9yLFxuICBLTVNOb3RGb3VuZEVycm9yLFxuICBLTVNPcHRJblJlcXVpcmVkRXJyb3IsXG4gIEtNU1Rocm90dGxpbmdFcnJvcixcbiAgTm90Rm91bmRFcnJvcixcbiAgT3B0ZWRPdXRFcnJvcixcbiAgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3IsXG4gIFJlc291cmNlTm90Rm91bmRFcnJvcixcbiAgU2RrRXJyb3IsXG4gIFN0YWxlVGFnRXJyb3IsXG4gIFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvcixcbiAgVGFnTGltaXRFeGNlZWRlZEVycm9yLFxuICBUYWdQb2xpY3lFcnJvcixcbiAgVGFnZ2VkRXhjZXB0aW9uLFxuICBUaHJvdHRsZWRFcnJvcixcbiAgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yLFxuICBUb3BpY0xpbWl0RXhjZWVkZWRFcnJvcixcbiAgVXNlckVycm9yLFxuICBWYWxpZGF0aW9uRXJyb3IsXG4gIFZlcmlmaWNhdGlvbkVycm9yLFxufSBmcm9tIFwiLi9FcnJvcnNcIjtcbmltcG9ydCB7IFNOU0NsaWVudEluc3RhbmNlLCBTTlNDbGllbnRJbnN0YW5jZUxheWVyIH0gZnJvbSBcIi4vU05TQ2xpZW50SW5zdGFuY2VcIjtcbmltcG9ydCB7IERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciB9IGZyb20gXCIuL1NOU0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBBZGRQZXJtaXNzaW9uQ29tbWFuZCxcbiAgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kLFxuICBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZCxcbiAgRGVsZXRlRW5kcG9pbnRDb21tYW5kLFxuICBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbiAgRGVsZXRlVG9waWNDb21tYW5kLFxuICBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZCxcbiAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZCxcbiAgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZCxcbiAgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZCxcbiAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kLFxuICBMaXN0VG9waWNzQ29tbWFuZCxcbiAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmQsXG4gIFB1Ymxpc2hDb21tYW5kLFxuICBQdWJsaXNoQmF0Y2hDb21tYW5kLFxuICBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU3Vic2NyaWJlQ29tbWFuZCxcbiAgVGFnUmVzb3VyY2VDb21tYW5kLFxuICBVbnN1YnNjcmliZUNvbW1hbmQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxufTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBtb2RlbHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTTlNTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWRkUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICBhZGRQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEFkZFBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kfVxuICAgKi9cbiAgY2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dChcbiAgICBhcmdzOiBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjb25maXJtU3Vic2NyaXB0aW9uKFxuICAgIGFyZ3M6IENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlUGxhdGZvcm1FbmRwb2ludChcbiAgICBhcmdzOiBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgT3B0ZWRPdXRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFVzZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUb3BpY0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVUb3BpYyhcbiAgICBhcmdzOiBDcmVhdGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlVG9waWNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gICAgfCBUb3BpY0xpbWl0RXhjZWVkZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVFbmRwb2ludENvbW1hbmR9XG4gICAqL1xuICBkZWxldGVFbmRwb2ludChcbiAgICBhcmdzOiBEZWxldGVFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBVc2VyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlVG9waWNDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlVG9waWMoXG4gICAgYXJnczogRGVsZXRlVG9waWNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZVRvcGljQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmR9XG4gICAqL1xuICBnZXREYXRhUHJvdGVjdGlvblBvbGljeShcbiAgICBhcmdzOiBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0RW5kcG9pbnRBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U01TQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U01TU2FuZGJveEFjY291bnRTdGF0dXMoXG4gICAgYXJnczogR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBUaHJvdHRsZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFRvcGljQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgbGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbihcbiAgICBhcmdzOiBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RPcmlnaW5hdGlvbk51bWJlcnMoXG4gICAgYXJnczogTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZH1cbiAgICovXG4gIGxpc3RQaG9uZU51bWJlcnNPcHRlZE91dChcbiAgICBhcmdzOiBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnMoXG4gICAgYXJnczogTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0U01TU2FuZGJveFBob25lTnVtYmVycyhcbiAgICBhcmdzOiBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RTdWJzY3JpcHRpb25zKFxuICAgIGFyZ3M6IExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmR9XG4gICAqL1xuICBsaXN0U3Vic2NyaXB0aW9uc0J5VG9waWMoXG4gICAgYXJnczogTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRhZ3NGb3JSZXNvdXJjZShcbiAgICBhcmdzOiBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUb3BpY3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRvcGljcyhcbiAgICBhcmdzOiBMaXN0VG9waWNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0VG9waWNzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEF1dGhvcml6YXRpb25FcnJvciB8IEludGVybmFsRXJyb3IgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgT3B0SW5QaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBvcHRJblBob25lTnVtYmVyKFxuICAgIGFyZ3M6IE9wdEluUGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdWJsaXNoQ29tbWFuZH1cbiAgICovXG4gIHB1Ymxpc2goXG4gICAgYXJnczogUHVibGlzaENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVibGlzaENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBFbmRwb2ludERpc2FibGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEtNU0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLTVNEaXNhYmxlZEVycm9yXG4gICAgfCBLTVNJbnZhbGlkU3RhdGVFcnJvclxuICAgIHwgS01TTm90Rm91bmRFcnJvclxuICAgIHwgS01TT3B0SW5SZXF1aXJlZEVycm9yXG4gICAgfCBLTVNUaHJvdHRsaW5nRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yXG4gICAgfCBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1Ymxpc2hCYXRjaENvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoQmF0Y2goXG4gICAgYXJnczogUHVibGlzaEJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdWJsaXNoQmF0Y2hDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQmF0Y2hFbnRyeUlkc05vdERpc3RpbmN0RXJyb3JcbiAgICB8IEJhdGNoUmVxdWVzdFRvb0xvbmdFcnJvclxuICAgIHwgRW1wdHlCYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgRW5kcG9pbnREaXNhYmxlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkQmF0Y2hFbnRyeUlkRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IEtNU0FjY2Vzc0RlbmllZEVycm9yXG4gICAgfCBLTVNEaXNhYmxlZEVycm9yXG4gICAgfCBLTVNJbnZhbGlkU3RhdGVFcnJvclxuICAgIHwgS01TTm90Rm91bmRFcnJvclxuICAgIHwgS01TT3B0SW5SZXF1aXJlZEVycm9yXG4gICAgfCBLTVNUaHJvdHRsaW5nRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yXG4gICAgfCBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvclxuICAgIHwgVG9vTWFueUVudHJpZXNJbkJhdGNoUmVxdWVzdEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgcHV0RGF0YVByb3RlY3Rpb25Qb2xpY3koXG4gICAgYXJnczogUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmR9XG4gICAqL1xuICByZW1vdmVQZXJtaXNzaW9uKFxuICAgIGFyZ3M6IFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRFbmRwb2ludEF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2V0U01TQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRTTVNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0VG9waWNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU3Vic2NyaWJlQ29tbWFuZH1cbiAgICovXG4gIHN1YnNjcmliZShcbiAgICBhcmdzOiBTdWJzY3JpYmVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFN1YnNjcmliZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBUYWdSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICB0YWdSZXNvdXJjZShcbiAgICBhcmdzOiBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnN1YnNjcmliZUNvbW1hbmR9XG4gICAqL1xuICB1bnN1YnNjcmliZShcbiAgICBhcmdzOiBVbnN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW5zdWJzY3JpYmVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnRhZ1Jlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIHVudGFnUmVzb3VyY2UoXG4gICAgYXJnczogVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICB2ZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBWZXJpZmljYXRpb25FcnJvclxuICA+O1xufVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNvbnN0IFNOU1NlcnZpY2UgPSBDb250ZXh0LkdlbmVyaWNUYWc8U05TU2VydmljZT4oXG4gIFwiQGVmZmVjdC1hd3MvY2xpZW50LXNucy9TTlNTZXJ2aWNlXCIsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVNOU1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhTTlNDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKGFyZ3M6IGFueSwgb3B0aW9uczogYW55KSA9PlxuICAgICAgRWZmZWN0LnRyeVByb21pc2Uoe1xuICAgICAgICB0cnk6ICgpID0+IGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwgb3B0aW9ucyA/PyB7fSksXG4gICAgICAgIGNhdGNoOiAoZSkgPT4ge1xuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgU05TU2VydmljZUV4Y2VwdGlvbikge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248U05TU2VydmljZUV4Y2VwdGlvbj5cbiAgICAgICAgICAgID4oZS5uYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIFNlcnZpY2VFeGNlcHRpb24oe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgU05TU2VydmljZTtcbn0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgQmFzZVNOU1NlcnZpY2VMYXllciA9IExheWVyLmVmZmVjdChTTlNTZXJ2aWNlLCBtYWtlU05TU2VydmljZSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBTTlNTZXJ2aWNlTGF5ZXIgPSBCYXNlU05TU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoU05TQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFNOU1NlcnZpY2VMYXllciA9IFNOU1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRTTlNDbGllbnRDb25maWdMYXllciksXG4pO1xuIl19
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU05TU2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TTlNTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUNMLG1CQUFtQixFQUNuQixvQkFBb0IsRUFHcEIsbUNBQW1DLEVBR25DLDBCQUEwQixFQUcxQixnQ0FBZ0MsRUFHaEMsNkJBQTZCLEVBRzdCLGtDQUFrQyxFQUdsQyxrQkFBa0IsRUFHbEIscUJBQXFCLEVBR3JCLGdDQUFnQyxFQUdoQyxrQ0FBa0MsRUFHbEMsa0JBQWtCLEVBR2xCLDhCQUE4QixFQUc5Qiw0QkFBNEIsRUFHNUIsdUNBQXVDLEVBR3ZDLHVCQUF1QixFQUd2QixpQ0FBaUMsRUFHakMsZ0NBQWdDLEVBR2hDLHlCQUF5QixFQUd6Qix5Q0FBeUMsRUFHekMsNkJBQTZCLEVBRzdCLCtCQUErQixFQUcvQiwrQkFBK0IsRUFHL0IsaUNBQWlDLEVBR2pDLHdCQUF3QixFQUd4QiwrQkFBK0IsRUFHL0IsMEJBQTBCLEVBRzFCLGlCQUFpQixFQUdqQix1QkFBdUIsRUFHdkIsY0FBYyxFQUdkLG1CQUFtQixFQUduQiw4QkFBOEIsRUFHOUIsdUJBQXVCLEVBR3ZCLDRCQUE0QixFQUc1Qix1Q0FBdUMsRUFHdkMsdUJBQXVCLEVBR3ZCLGdDQUFnQyxFQUdoQyx5QkFBeUIsRUFHekIsZ0JBQWdCLEVBR2hCLGtCQUFrQixFQUdsQixrQkFBa0IsRUFHbEIsb0JBQW9CLEVBR3BCLGtDQUFrQyxHQUduQyxNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDckQsT0FBTyxFQUNMLGdCQUFnQixFQW1DaEIsUUFBUSxHQUVULE1BQU0sVUFBVSxDQUFDO0FBQ2xCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hG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LEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FDdEUsVUFBVSxFQUNWLEVBQUUsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxFQUFFLEdBQUcsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUM7SUFDOUMsQ0FBQyxFQUFFLEVBQUUsQ0FBZ0IsQ0FBQztBQUN4QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0FBRTVFOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLENBQ3JELEtBQUssQ0FBQyxPQUFPLENBQUMsc0JBQXNCLENBQUMsQ0FDdEMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FDM0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIFNOU1NlcnZpY2VFeGNlcHRpb24sXG4gIEFkZFBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIEFkZFBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kLFxuICB0eXBlIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kLFxuICB0eXBlIENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICB0eXBlIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kLFxuICB0eXBlIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIHR5cGUgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZVRvcGljQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZCxcbiAgdHlwZSBEZWxldGVFbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICB0eXBlIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgdHlwZSBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICB0eXBlIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZCxcbiAgdHlwZSBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmRPdXRwdXQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICB0eXBlIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kLFxuICB0eXBlIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kLFxuICB0eXBlIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmQsXG4gIHR5cGUgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZElucHV0LFxuICB0eXBlIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmRPdXRwdXQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmQsXG4gIHR5cGUgTGlzdFBsYXRmb3JtQXBwbGljYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZCxcbiAgdHlwZSBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0U01TU2FuZGJveFBob25lTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZCxcbiAgdHlwZSBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0U3Vic2NyaXB0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmQsXG4gIHR5cGUgTGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRPdXRwdXQsXG4gIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kLFxuICB0eXBlIExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIExpc3RUb3BpY3NDb21tYW5kLFxuICB0eXBlIExpc3RUb3BpY3NDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdFRvcGljc0NvbW1hbmRPdXRwdXQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kLFxuICB0eXBlIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kSW5wdXQsXG4gIHR5cGUgT3B0SW5QaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hDb21tYW5kLFxuICB0eXBlIFB1Ymxpc2hDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHVibGlzaENvbW1hbmRPdXRwdXQsXG4gIFB1Ymxpc2hCYXRjaENvbW1hbmQsXG4gIHR5cGUgUHVibGlzaEJhdGNoQ29tbWFuZElucHV0LFxuICB0eXBlIFB1Ymxpc2hCYXRjaENvbW1hbmRPdXRwdXQsXG4gIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZCxcbiAgdHlwZSBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kLFxuICB0eXBlIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICB0eXBlIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICB0eXBlIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIHR5cGUgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIHR5cGUgU2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gIFN1YnNjcmliZUNvbW1hbmQsXG4gIHR5cGUgU3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICB0eXBlIFN1YnNjcmliZUNvbW1hbmRPdXRwdXQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgdHlwZSBUYWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFVuc3Vic2NyaWJlQ29tbWFuZCxcbiAgdHlwZSBVbnN1YnNjcmliZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBVbnN1YnNjcmliZUNvbW1hbmRPdXRwdXQsXG4gIFVudGFnUmVzb3VyY2VDb21tYW5kLFxuICB0eXBlIFVudGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gIHR5cGUgVW50YWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIHR5cGUgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICB0eXBlIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtc25zXCI7XG5pbXBvcnQgeyBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWNvcmQgfSBmcm9tIFwiZWZmZWN0XCI7XG5pbXBvcnQge1xuICBBbGxTZXJ2aWNlRXJyb3JzLFxuICBBdXRob3JpemF0aW9uRXJyb3IsXG4gIEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yLFxuICBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3IsXG4gIENvbmN1cnJlbnRBY2Nlc3NFcnJvcixcbiAgRW1wdHlCYXRjaFJlcXVlc3RFcnJvcixcbiAgRW5kcG9pbnREaXNhYmxlZEVycm9yLFxuICBGaWx0ZXJQb2xpY3lMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIEludGVybmFsRXJyb3IsXG4gIEludmFsaWRCYXRjaEVudHJ5SWRFcnJvcixcbiAgSW52YWxpZFBhcmFtZXRlckVycm9yLFxuICBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcixcbiAgSW52YWxpZFNlY3VyaXR5RXJyb3IsXG4gIEludmFsaWRTdGF0ZUVycm9yLFxuICBLTVNBY2Nlc3NEZW5pZWRFcnJvcixcbiAgS01TRGlzYWJsZWRFcnJvcixcbiAgS01TSW52YWxpZFN0YXRlRXJyb3IsXG4gIEtNU05vdEZvdW5kRXJyb3IsXG4gIEtNU09wdEluUmVxdWlyZWRFcnJvcixcbiAgS01TVGhyb3R0bGluZ0Vycm9yLFxuICBOb3RGb3VuZEVycm9yLFxuICBPcHRlZE91dEVycm9yLFxuICBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvcixcbiAgUmVwbGF5TGltaXRFeGNlZWRlZEVycm9yLFxuICBSZXNvdXJjZU5vdEZvdW5kRXJyb3IsXG4gIFN0YWxlVGFnRXJyb3IsXG4gIFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvcixcbiAgVGFnTGltaXRFeGNlZWRlZEVycm9yLFxuICBUYWdQb2xpY3lFcnJvcixcbiAgVGhyb3R0bGVkRXJyb3IsXG4gIFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvcixcbiAgVG9waWNMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIFVzZXJFcnJvcixcbiAgVmFsaWRhdGlvbkVycm9yLFxuICBWZXJpZmljYXRpb25FcnJvcixcbiAgU2RrRXJyb3IsXG4gIFRhZ2dlZEV4Y2VwdGlvbixcbn0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQgeyBTTlNDbGllbnRJbnN0YW5jZSwgU05TQ2xpZW50SW5zdGFuY2VMYXllciB9IGZyb20gXCIuL1NOU0NsaWVudEluc3RhbmNlXCI7XG5pbXBvcnQgeyBEZWZhdWx0U05TQ2xpZW50Q29uZmlnTGF5ZXIgfSBmcm9tIFwiLi9TTlNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG5pbnRlcmZhY2UgSHR0cEhhbmRsZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRoYXQgdGhlIGNvbm5lY3Rpb24gcGhhc2Ugb2YgYSByZXF1ZXN0XG4gICAqIG1heSB0YWtlIGJlZm9yZSB0aGUgY29ubmVjdGlvbiBhdHRlbXB0IGlzIGFiYW5kb25lZC5cbiAgICovXG4gIHJlcXVlc3RUaW1lb3V0PzogbnVtYmVyO1xufVxuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWRkUGVybWlzc2lvbkNvbW1hbmQsXG4gIENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kLFxuICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZCxcbiAgQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kLFxuICBDcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kLFxuICBDcmVhdGVUb3BpY0NvbW1hbmQsXG4gIERlbGV0ZUVuZHBvaW50Q29tbWFuZCxcbiAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmQsXG4gIERlbGV0ZVRvcGljQ29tbWFuZCxcbiAgR2V0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRTTVNTYW5kYm94QWNjb3VudFN0YXR1c0NvbW1hbmQsXG4gIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kLFxuICBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZCxcbiAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmQsXG4gIExpc3RQaG9uZU51bWJlcnNPcHRlZE91dENvbW1hbmQsXG4gIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmQsXG4gIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZCxcbiAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kLFxuICBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kLFxuICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZCxcbiAgTGlzdFRvcGljc0NvbW1hbmQsXG4gIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kLFxuICBQdWJsaXNoQ29tbWFuZCxcbiAgUHVibGlzaEJhdGNoQ29tbWFuZCxcbiAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kLFxuICBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZCxcbiAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kLFxuICBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmQsXG4gIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmQsXG4gIFN1YnNjcmliZUNvbW1hbmQsXG4gIFRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVW5zdWJzY3JpYmVDb21tYW5kLFxuICBVbnRhZ1Jlc291cmNlQ29tbWFuZCxcbiAgVmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZCxcbn07XG5cbmludGVyZmFjZSBTTlNTZXJ2aWNlJCB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFkZFBlcm1pc3Npb25Db21tYW5kfVxuICAgKi9cbiAgYWRkUGVybWlzc2lvbihcbiAgICBhcmdzOiBBZGRQZXJtaXNzaW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWRkUGVybWlzc2lvbkNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ2hlY2tJZlBob25lTnVtYmVySXNPcHRlZE91dENvbW1hbmR9XG4gICAqL1xuICBjaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0KFxuICAgIGFyZ3M6IENoZWNrSWZQaG9uZU51bWJlcklzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDaGVja0lmUGhvbmVOdW1iZXJJc09wdGVkT3V0Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ29uZmlybVN1YnNjcmlwdGlvbkNvbW1hbmR9XG4gICAqL1xuICBjb25maXJtU3Vic2NyaXB0aW9uKFxuICAgIGFyZ3M6IENvbmZpcm1TdWJzY3JpcHRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDb25maXJtU3Vic2NyaXB0aW9uQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBSZXBsYXlMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFN1YnNjcmlwdGlvbkxpbWl0RXhjZWVkZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogQ3JlYXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVQbGF0Zm9ybUVuZHBvaW50Q29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVBsYXRmb3JtRW5kcG9pbnQoXG4gICAgYXJnczogQ3JlYXRlUGxhdGZvcm1FbmRwb2ludENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVBsYXRmb3JtRW5kcG9pbnRDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENyZWF0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgT3B0ZWRPdXRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFVzZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVUb3BpY0NvbW1hbmR9XG4gICAqL1xuICBjcmVhdGVUb3BpYyhcbiAgICBhcmdzOiBDcmVhdGVUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZVRvcGljQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvclxuICAgIHwgVG9waWNMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlRW5kcG9pbnRDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlRW5kcG9pbnQoXG4gICAgYXJnczogRGVsZXRlRW5kcG9pbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVFbmRwb2ludENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbihcbiAgICBhcmdzOiBEZWxldGVQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlUGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVTTVNTYW5kYm94UGhvbmVOdW1iZXIoXG4gICAgYXJnczogRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlU01TU2FuZGJveFBob25lTnVtYmVyQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICAgIHwgVXNlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVRvcGljQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVRvcGljKFxuICAgIGFyZ3M6IERlbGV0ZVRvcGljQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlVG9waWNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmR9XG4gICAqL1xuICBnZXREYXRhUHJvdGVjdGlvblBvbGljeShcbiAgICBhcmdzOiBHZXREYXRhUHJvdGVjdGlvblBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFNlY3VyaXR5RXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldEVuZHBvaW50QXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRFbmRwb2ludEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0UGxhdGZvcm1BcHBsaWNhdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFNNU0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U01TQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0U01TQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZH1cbiAgICovXG4gIGdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzKFxuICAgIGFyZ3M6IEdldFNNU1NhbmRib3hBY2NvdW50U3RhdHVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0U01TU2FuZGJveEFjY291bnRTdGF0dXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IFRocm90dGxlZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgZ2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0VG9waWNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIGdldFRvcGljQXR0cmlidXRlcyhcbiAgICBhcmdzOiBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RW5kcG9pbnRzQnlQbGF0Zm9ybUFwcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGxpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb24oXG4gICAgYXJnczogTGlzdEVuZHBvaW50c0J5UGxhdGZvcm1BcHBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RFbmRwb2ludHNCeVBsYXRmb3JtQXBwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RPcmlnaW5hdGlvbk51bWJlcnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE9yaWdpbmF0aW9uTnVtYmVycyhcbiAgICBhcmdzOiBMaXN0T3JpZ2luYXRpb25OdW1iZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdE9yaWdpbmF0aW9uTnVtYmVyc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gICAgfCBWYWxpZGF0aW9uRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFBob25lTnVtYmVyc09wdGVkT3V0Q29tbWFuZH1cbiAgICovXG4gIGxpc3RQaG9uZU51bWJlcnNPcHRlZE91dChcbiAgICBhcmdzOiBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0UGhvbmVOdW1iZXJzT3B0ZWRPdXRDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UGxhdGZvcm1BcHBsaWNhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFBsYXRmb3JtQXBwbGljYXRpb25zKFxuICAgIGFyZ3M6IExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RQbGF0Zm9ybUFwcGxpY2F0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzKFxuICAgIGFyZ3M6IExpc3RTTVNTYW5kYm94UGhvbmVOdW1iZXJzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFNNU1NhbmRib3hQaG9uZU51bWJlcnNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RTdWJzY3JpcHRpb25zKFxuICAgIGFyZ3M6IExpc3RTdWJzY3JpcHRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFN1YnNjcmlwdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgQXV0aG9yaXphdGlvbkVycm9yIHwgSW50ZXJuYWxFcnJvciB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0U3Vic2NyaXB0aW9uc0J5VG9waWNDb21tYW5kfVxuICAgKi9cbiAgbGlzdFN1YnNjcmlwdGlvbnNCeVRvcGljKFxuICAgIGFyZ3M6IExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RTdWJzY3JpcHRpb25zQnlUb3BpY0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdFRhZ3NGb3JSZXNvdXJjZUNvbW1hbmR9XG4gICAqL1xuICBsaXN0VGFnc0ZvclJlc291cmNlKFxuICAgIGFyZ3M6IExpc3RUYWdzRm9yUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0VGFnc0ZvclJlc291cmNlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IENvbmN1cnJlbnRBY2Nlc3NFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBSZXNvdXJjZU5vdEZvdW5kRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RUb3BpY3NDb21tYW5kfVxuICAgKi9cbiAgbGlzdFRvcGljcyhcbiAgICBhcmdzOiBMaXN0VG9waWNzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdFRvcGljc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBBdXRob3JpemF0aW9uRXJyb3IgfCBJbnRlcm5hbEVycm9yIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE9wdEluUGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgb3B0SW5QaG9uZU51bWJlcihcbiAgICBhcmdzOiBPcHRJblBob25lTnVtYmVyQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgT3B0SW5QaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFRocm90dGxlZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1Ymxpc2hDb21tYW5kfVxuICAgKi9cbiAgcHVibGlzaChcbiAgICBhcmdzOiBQdWJsaXNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVibGlzaENvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBFbmRwb2ludERpc2FibGVkRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBLTVNBY2Nlc3NEZW5pZWRFcnJvclxuICAgIHwgS01TRGlzYWJsZWRFcnJvclxuICAgIHwgS01TSW52YWxpZFN0YXRlRXJyb3JcbiAgICB8IEtNU05vdEZvdW5kRXJyb3JcbiAgICB8IEtNU09wdEluUmVxdWlyZWRFcnJvclxuICAgIHwgS01TVGhyb3R0bGluZ0Vycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gICAgfCBQbGF0Zm9ybUFwcGxpY2F0aW9uRGlzYWJsZWRFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1Ymxpc2hCYXRjaENvbW1hbmR9XG4gICAqL1xuICBwdWJsaXNoQmF0Y2goXG4gICAgYXJnczogUHVibGlzaEJhdGNoQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHVibGlzaEJhdGNoQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEJhdGNoRW50cnlJZHNOb3REaXN0aW5jdEVycm9yXG4gICAgfCBCYXRjaFJlcXVlc3RUb29Mb25nRXJyb3JcbiAgICB8IEVtcHR5QmF0Y2hSZXF1ZXN0RXJyb3JcbiAgICB8IEVuZHBvaW50RGlzYWJsZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZEJhdGNoRW50cnlJZEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgS01TQWNjZXNzRGVuaWVkRXJyb3JcbiAgICB8IEtNU0Rpc2FibGVkRXJyb3JcbiAgICB8IEtNU0ludmFsaWRTdGF0ZUVycm9yXG4gICAgfCBLTVNOb3RGb3VuZEVycm9yXG4gICAgfCBLTVNPcHRJblJlcXVpcmVkRXJyb3JcbiAgICB8IEtNU1Rocm90dGxpbmdFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgUGxhdGZvcm1BcHBsaWNhdGlvbkRpc2FibGVkRXJyb3JcbiAgICB8IFRvb01hbnlFbnRyaWVzSW5CYXRjaFJlcXVlc3RFcnJvclxuICAgIHwgVmFsaWRhdGlvbkVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZH1cbiAgICovXG4gIHB1dERhdGFQcm90ZWN0aW9uUG9saWN5KFxuICAgIGFyZ3M6IFB1dERhdGFQcm90ZWN0aW9uUG9saWN5Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0RGF0YVByb3RlY3Rpb25Qb2xpY3lDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZW1vdmVQZXJtaXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIHJlbW92ZVBlcm1pc3Npb24oXG4gICAgYXJnczogUmVtb3ZlUGVybWlzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFJlbW92ZVBlcm1pc3Npb25Db21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNldEVuZHBvaW50QXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRFbmRwb2ludEF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2V0RW5kcG9pbnRBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBzZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlcyhcbiAgICBhcmdzOiBTZXRQbGF0Zm9ybUFwcGxpY2F0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNldFBsYXRmb3JtQXBwbGljYXRpb25BdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEludGVybmFsRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRTTVNBdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFNNU0F0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0U01TQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNldFNNU0F0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBUaHJvdHRsZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRTdWJzY3JpcHRpb25BdHRyaWJ1dGVzQ29tbWFuZH1cbiAgICovXG4gIHNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXMoXG4gICAgYXJnczogU2V0U3Vic2NyaXB0aW9uQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNldFN1YnNjcmlwdGlvbkF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgRmlsdGVyUG9saWN5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IE5vdEZvdW5kRXJyb3JcbiAgICB8IFJlcGxheUxpbWl0RXhjZWVkZWRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBTZXRUb3BpY0F0dHJpYnV0ZXNDb21tYW5kfVxuICAgKi9cbiAgc2V0VG9waWNBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFNldFRvcGljQXR0cmlidXRlc0NvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IEludmFsaWRTZWN1cml0eUVycm9yXG4gICAgfCBOb3RGb3VuZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFN1YnNjcmliZUNvbW1hbmR9XG4gICAqL1xuICBzdWJzY3JpYmUoXG4gICAgYXJnczogU3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgU3Vic2NyaWJlQ29tbWFuZE91dHB1dCxcbiAgICB8IFNka0Vycm9yXG4gICAgfCBBdXRob3JpemF0aW9uRXJyb3JcbiAgICB8IEZpbHRlclBvbGljeUxpbWl0RXhjZWVkZWRFcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICAgIHwgUmVwbGF5TGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBTdWJzY3JpcHRpb25MaW1pdEV4Y2VlZGVkRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVGFnUmVzb3VyY2VDb21tYW5kfVxuICAgKi9cbiAgdGFnUmVzb3VyY2UoXG4gICAgYXJnczogVGFnUmVzb3VyY2VDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBUYWdSZXNvdXJjZUNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBDb25jdXJyZW50QWNjZXNzRXJyb3JcbiAgICB8IEludmFsaWRQYXJhbWV0ZXJFcnJvclxuICAgIHwgUmVzb3VyY2VOb3RGb3VuZEVycm9yXG4gICAgfCBTdGFsZVRhZ0Vycm9yXG4gICAgfCBUYWdMaW1pdEV4Y2VlZGVkRXJyb3JcbiAgICB8IFRhZ1BvbGljeUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFVuc3Vic2NyaWJlQ29tbWFuZH1cbiAgICovXG4gIHVuc3Vic2NyaWJlKFxuICAgIGFyZ3M6IFVuc3Vic2NyaWJlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBIdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgVW5zdWJzY3JpYmVDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgSW50ZXJuYWxFcnJvclxuICAgIHwgSW52YWxpZFBhcmFtZXRlckVycm9yXG4gICAgfCBJbnZhbGlkU2VjdXJpdHlFcnJvclxuICAgIHwgTm90Rm91bmRFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVbnRhZ1Jlc291cmNlQ29tbWFuZH1cbiAgICovXG4gIHVudGFnUmVzb3VyY2UoXG4gICAgYXJnczogVW50YWdSZXNvdXJjZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFVudGFnUmVzb3VyY2VDb21tYW5kT3V0cHV0LFxuICAgIHwgU2RrRXJyb3JcbiAgICB8IEF1dGhvcml6YXRpb25FcnJvclxuICAgIHwgQ29uY3VycmVudEFjY2Vzc0Vycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgU3RhbGVUYWdFcnJvclxuICAgIHwgVGFnTGltaXRFeGNlZWRlZEVycm9yXG4gICAgfCBUYWdQb2xpY3lFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBWZXJpZnlTTVNTYW5kYm94UGhvbmVOdW1iZXJDb21tYW5kfVxuICAgKi9cbiAgdmVyaWZ5U01TU2FuZGJveFBob25lTnVtYmVyKFxuICAgIGFyZ3M6IFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFZlcmlmeVNNU1NhbmRib3hQaG9uZU51bWJlckNvbW1hbmRPdXRwdXQsXG4gICAgfCBTZGtFcnJvclxuICAgIHwgQXV0aG9yaXphdGlvbkVycm9yXG4gICAgfCBJbnRlcm5hbEVycm9yXG4gICAgfCBJbnZhbGlkUGFyYW1ldGVyRXJyb3JcbiAgICB8IFJlc291cmNlTm90Rm91bmRFcnJvclxuICAgIHwgVGhyb3R0bGVkRXJyb3JcbiAgICB8IFZlcmlmaWNhdGlvbkVycm9yXG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBjbGFzcyBTTlNTZXJ2aWNlIGV4dGVuZHMgRWZmZWN0LlRhZyhcIkBlZmZlY3QtYXdzL2NsaWVudC1zbnMvU05TU2VydmljZVwiKTxcbiAgU05TU2VydmljZSxcbiAgU05TU2VydmljZSRcbj4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVNOU1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhTTlNDbGllbnRJbnN0YW5jZSk7XG5cbiAgcmV0dXJuIFJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKGFyZ3M6IGFueSwgb3B0aW9ucz86IEh0dHBIYW5kbGVyT3B0aW9ucykgPT5cbiAgICAgIEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgdHJ5OiAoYWJvcnRTaWduYWwpID0+XG4gICAgICAgICAgY2xpZW50LnNlbmQobmV3IENvbW1hbmRDdG9yKGFyZ3MpLCB7XG4gICAgICAgICAgICAuLi4ob3B0aW9ucyA/PyB7fSksXG4gICAgICAgICAgICBhYm9ydFNpZ25hbCxcbiAgICAgICAgICB9KSxcbiAgICAgICAgY2F0Y2g6IChlKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgZSBpbnN0YW5jZW9mIFNOU1NlcnZpY2VFeGNlcHRpb24gJiZcbiAgICAgICAgICAgIEFsbFNlcnZpY2VFcnJvcnMuaW5jbHVkZXMoZS5uYW1lKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgU2VydmljZUV4Y2VwdGlvbiA9IERhdGEudGFnZ2VkPFxuICAgICAgICAgICAgICBUYWdnZWRFeGNlcHRpb248U05TU2VydmljZUV4Y2VwdGlvbj5cbiAgICAgICAgICAgID4oZS5uYW1lKTtcblxuICAgICAgICAgICAgcmV0dXJuIFNlcnZpY2VFeGNlcHRpb24oe1xuICAgICAgICAgICAgICAuLi5lLFxuICAgICAgICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgICAgICAgIC4uLmUsXG4gICAgICAgICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgU05TU2VydmljZSQ7XG59KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VTTlNTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoU05TU2VydmljZSwgbWFrZVNOU1NlcnZpY2UpO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgU05TU2VydmljZUxheWVyID0gQmFzZVNOU1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKFNOU0NsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTTlNTZXJ2aWNlTGF5ZXIgPSBTTlNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0U05TQ2xpZW50Q29uZmlnTGF5ZXIpLFxuKTtcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -7,27 +7,25 @@
|
|
|
7
7
|
},
|
|
8
8
|
"devDependencies": {
|
|
9
9
|
"@types/node": "^18",
|
|
10
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
11
|
-
"@typescript-eslint/parser": "^
|
|
12
|
-
"aws-sdk-client-mock": "^
|
|
13
|
-
"aws-sdk-client-mock-
|
|
14
|
-
"constructs": "^10.0.0",
|
|
10
|
+
"@typescript-eslint/eslint-plugin": "^7",
|
|
11
|
+
"@typescript-eslint/parser": "^7",
|
|
12
|
+
"aws-sdk-client-mock": "^4.0.2",
|
|
13
|
+
"aws-sdk-client-mock-vitest": "^4.0.0",
|
|
15
14
|
"effect": "3.0.0",
|
|
16
15
|
"eslint": "^8",
|
|
17
|
-
"eslint-config-prettier": "^9.
|
|
16
|
+
"eslint-config-prettier": "^9.1.0",
|
|
18
17
|
"eslint-import-resolver-typescript": "^3.6.1",
|
|
19
|
-
"eslint-plugin-import": "^2.
|
|
20
|
-
"eslint-plugin-prettier": "^5.
|
|
21
|
-
"prettier": "^3.
|
|
22
|
-
"
|
|
23
|
-
"
|
|
18
|
+
"eslint-plugin-import": "^2.29.1",
|
|
19
|
+
"eslint-plugin-prettier": "^5.2.1",
|
|
20
|
+
"prettier": "^3.2.5",
|
|
21
|
+
"typescript": "^5.4.2",
|
|
22
|
+
"vitest": "^2.0.5"
|
|
24
23
|
},
|
|
25
24
|
"peerDependencies": {
|
|
26
25
|
"effect": ">=3.0.0 <4.0.0"
|
|
27
26
|
},
|
|
28
27
|
"dependencies": {
|
|
29
|
-
"@aws-sdk/client-sns": "^3"
|
|
30
|
-
"@aws-sdk/types": "^3"
|
|
28
|
+
"@aws-sdk/client-sns": "^3"
|
|
31
29
|
},
|
|
32
30
|
"main": "lib/index.js",
|
|
33
31
|
"license": "MIT",
|
|
@@ -35,7 +33,7 @@
|
|
|
35
33
|
"publishConfig": {
|
|
36
34
|
"access": "public"
|
|
37
35
|
},
|
|
38
|
-
"version": "1.
|
|
36
|
+
"version": "1.4.0",
|
|
39
37
|
"types": "lib/index.d.ts",
|
|
40
38
|
"module": "lib/esm/index.js",
|
|
41
39
|
"sideEffects": [],
|
package/vitest.config.ts
ADDED