@effect-aws/client-s3 1.1.1 → 1.2.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/lib/S3Service.js CHANGED
@@ -16,6 +16,7 @@ const commands = {
16
16
  CopyObjectCommand: client_s3_1.CopyObjectCommand,
17
17
  CreateBucketCommand: client_s3_1.CreateBucketCommand,
18
18
  CreateMultipartUploadCommand: client_s3_1.CreateMultipartUploadCommand,
19
+ CreateSessionCommand: client_s3_1.CreateSessionCommand,
19
20
  DeleteBucketCommand: client_s3_1.DeleteBucketCommand,
20
21
  DeleteBucketAnalyticsConfigurationCommand: client_s3_1.DeleteBucketAnalyticsConfigurationCommand,
21
22
  DeleteBucketCorsCommand: client_s3_1.DeleteBucketCorsCommand,
@@ -69,6 +70,7 @@ const commands = {
69
70
  ListBucketInventoryConfigurationsCommand: client_s3_1.ListBucketInventoryConfigurationsCommand,
70
71
  ListBucketMetricsConfigurationsCommand: client_s3_1.ListBucketMetricsConfigurationsCommand,
71
72
  ListBucketsCommand: client_s3_1.ListBucketsCommand,
73
+ ListDirectoryBucketsCommand: client_s3_1.ListDirectoryBucketsCommand,
72
74
  ListMultipartUploadsCommand: client_s3_1.ListMultipartUploadsCommand,
73
75
  ListObjectsCommand: client_s3_1.ListObjectsCommand,
74
76
  ListObjectsV2Command: client_s3_1.ListObjectsV2Command,
@@ -118,9 +120,9 @@ exports.makeS3Service = effect_1.Effect.gen(function* (_) {
118
120
  const client = yield* _(S3ClientInstance_1.S3ClientInstance);
119
121
  const catchErrors = (e) => {
120
122
  if (e instanceof client_s3_1.S3ServiceException) {
121
- return (0, Errors_1.S3ServiceError)({
123
+ const ServiceException = effect_1.Data.tagged(e.name);
124
+ return ServiceException({
122
125
  ...e,
123
- name: "S3ServiceError",
124
126
  message: e.message,
125
127
  stack: e.stack,
126
128
  });
@@ -181,4 +183,4 @@ exports.S3ServiceEffect = exports.BaseS3ServiceEffect.pipe(effect_1.Effect.provi
181
183
  * @deprecated
182
184
  */
183
185
  exports.DefaultS3ServiceEffect = exports.BaseS3ServiceEffect.pipe(effect_1.Effect.provide(S3ClientInstance_1.DefaultS3ClientInstanceLayer));
184
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUzNTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1MzU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILGtEQXlSNEI7QUFDNUIsd0VBQTZEO0FBSzdELG1DQUFnRTtBQUNoRSxxQ0FBb0Q7QUFDcEQseURBSTRCO0FBQzVCLHFFQUFzRTtBQUV0RSxNQUFNLFFBQVEsR0FBRztJQUNmLDJCQUEyQixFQUEzQix1Q0FBMkI7SUFDM0IsOEJBQThCLEVBQTlCLDBDQUE4QjtJQUM5QixpQkFBaUIsRUFBakIsNkJBQWlCO0lBQ2pCLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsNEJBQTRCLEVBQTVCLHdDQUE0QjtJQUM1QixtQkFBbUIsRUFBbkIsK0JBQW1CO0lBQ25CLHlDQUF5QyxFQUF6QyxxREFBeUM7SUFDekMsdUJBQXVCLEVBQXZCLG1DQUF1QjtJQUN2Qiw2QkFBNkIsRUFBN0IseUNBQTZCO0lBQzdCLGtEQUFrRCxFQUFsRCw4REFBa0Q7SUFDbEQseUNBQXlDLEVBQXpDLHFEQUF5QztJQUN6Qyw0QkFBNEIsRUFBNUIsd0NBQTRCO0lBQzVCLHVDQUF1QyxFQUF2QyxtREFBdUM7SUFDdkMsb0NBQW9DLEVBQXBDLGdEQUFvQztJQUNwQyx5QkFBeUIsRUFBekIscUNBQXlCO0lBQ3pCLDhCQUE4QixFQUE5QiwwQ0FBOEI7SUFDOUIsMEJBQTBCLEVBQTFCLHNDQUEwQjtJQUMxQiwwQkFBMEIsRUFBMUIsc0NBQTBCO0lBQzFCLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsb0JBQW9CLEVBQXBCLGdDQUFvQjtJQUNwQiwwQkFBMEIsRUFBMUIsc0NBQTBCO0lBQzFCLDhCQUE4QixFQUE5QiwwQ0FBOEI7SUFDOUIsdUNBQXVDLEVBQXZDLG1EQUF1QztJQUN2QyxtQkFBbUIsRUFBbkIsK0JBQW1CO0lBQ25CLHNDQUFzQyxFQUF0QyxrREFBc0M7SUFDdEMsb0JBQW9CLEVBQXBCLGdDQUFvQjtJQUNw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QUFtQixDQUFDLElBQUksQ0FDckQsZUFBTSxDQUFDLE9BQU8sQ0FBQyx3Q0FBcUIsQ0FBQyxDQUN0QyxDQUFDO0FBRUY7OztHQUdHO0FBQ1UsUUFBQSxzQkFBc0IsR0FBRywyQkFBbUIsQ0FBQyxJQUFJLENBQzVELGVBQU0sQ0FBQyxPQUFPLENBQUMsK0NBQTRCLENBQUMsQ0FDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB7XG4gIEFib3J0TXVsdGlwYXJ0VXBsb2FkQ29tbWFuZCxcbiAgQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kSW5wdXQsXG4gIEFib3J0TXVsdGlwYXJ0VXBsb2FkQ29tbWFuZE91dHB1dCxcbiAgQ29tcGxldGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kLFxuICBDb21wbGV0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRJbnB1dCxcbiAgQ29tcGxldGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICBDb3B5T2JqZWN0Q29tbWFuZCxcbiAgQ29weU9iamVjdENvbW1hbmRJbnB1dCxcbiAgQ29weU9iamVjdENvbW1hbmRPdXRwdXQsXG4gIENyZWF0ZUJ1Y2tldENvbW1hbmQsXG4gIENyZWF0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgQ3JlYXRlQnVja2V0Q29tbWFuZE91dHB1dCxcbiAgQ3JlYXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZCxcbiAgQ3JlYXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZElucHV0LFxuICBDcmVhdGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUJ1Y2tldENvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQnVja2V0Q29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQnVja2V0Q29yc0NvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldENvcnNDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0RW5jcnlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQnVja2V0RW5jcnlwdGlvbkNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRMaWZlY3ljbGVDb21tYW5kLFxuICBEZWxldGVCdWNrZXRMaWZlY3ljbGVDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldExpZmVjeWNsZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kLFxuICBEZWxldGVCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kLFxuICBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldFBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZUJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0UmVwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgRGVsZXRlQnVja2V0VGFnZ2luZ0NvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldFRhZ2dpbmdDb21tYW5kSW5wdXQsXG4gIERlbGV0ZUJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgRGVsZXRlQnVja2V0V2Vic2l0ZUNvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZU9iamVjdENvbW1hbmQsXG4gIERlbGV0ZU9iamVjdENvbW1hbmRJbnB1dCxcbiAgRGVsZXRlT2JqZWN0Q29tbWFuZE91dHB1dCxcbiAgRGVsZXRlT2JqZWN0c0NvbW1hbmQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kSW5wdXQsXG4gIERlbGV0ZU9iamVjdHNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZCxcbiAgRGVsZXRlT2JqZWN0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgRGVsZXRlT2JqZWN0VGFnZ2luZ0NvbW1hbmRPdXRwdXQsXG4gIERlbGV0ZVB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZCxcbiAgRGVsZXRlUHVibGljQWNjZXNzQmxvY2tDb21tYW5kSW5wdXQsXG4gIERlbGV0ZVB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRBY2xDb21tYW5kLFxuICBHZXRCdWNrZXRBY2xDb21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldEFjbENvbW1hbmRPdXRwdXQsXG4gIEdldEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICBHZXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0Q29yc0NvbW1hbmQsXG4gIEdldEJ1Y2tldENvcnNDb21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmRPdXRwdXQsXG4gIEdldEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICBHZXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIEdldEJ1Y2tldExvY2F0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0TG9jYXRpb25Db21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldExvY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0TG9nZ2luZ0NvbW1hbmQsXG4gIEdldEJ1Y2tldExvZ2dpbmdDb21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldExvZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICBHZXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIEdldEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kLFxuICBHZXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRQb2xpY3lDb21tYW5kLFxuICBHZXRCdWNrZXRQb2xpY3lDb21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldFBvbGljeUNvbW1hbmRPdXRwdXQsXG4gIEdldEJ1Y2tldFBvbGljeVN0YXR1c0NvbW1hbmQsXG4gIEdldEJ1Y2tldFBvbGljeVN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0UG9saWN5U3RhdHVzQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmQsXG4gIEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZElucHV0LFxuICBHZXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmRPdXRwdXQsXG4gIEdldEJ1Y2tldFRhZ2dpbmdDb21tYW5kLFxuICBHZXRCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICBHZXRCdWNrZXRUYWdnaW5nQ29tbWFuZE91dHB1dCxcbiAgR2V0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmQsXG4gIEdldEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kSW5wdXQsXG4gIEdldEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgR2V0QnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgR2V0QnVja2V0V2Vic2l0ZUNvbW1hbmRPdXRwdXQsXG4gIEdldE9iamVjdEFjbENvbW1hbmQsXG4gIEdldE9iamVjdEFjbENvbW1hbmRJbnB1dCxcbiAgR2V0T2JqZWN0QWNsQ29tbWFuZE91dHB1dCxcbiAgR2V0T2JqZWN0QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldE9iamVjdEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gIEdldE9iamVjdEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RDb21tYW5kLFxuICBHZXRPYmplY3RDb21tYW5kSW5wdXQsXG4gIEdldE9iamVjdENvbW1hbmRPdXRwdXQsXG4gIEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmQsXG4gIEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmRJbnB1dCxcbiAgR2V0T2JqZWN0TGVnYWxIb2xkQ29tbWFuZE91dHB1dCxcbiAgR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RSZXRlbnRpb25Db21tYW5kLFxuICBHZXRPYmplY3RSZXRlbnRpb25Db21tYW5kSW5wdXQsXG4gIEdldE9iamVjdFJldGVudGlvbkNvbW1hbmRPdXRwdXQsXG4gIEdldE9iamVjdFRhZ2dpbmdDb21tYW5kLFxuICBHZXRPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICBHZXRPYmplY3RUYWdnaW5nQ29tbWFuZE91dHB1dCxcbiAgR2V0T2JqZWN0VG9ycmVudENvbW1hbmQsXG4gIEdldE9iamVjdFRvcnJlbnRDb21tYW5kSW5wdXQsXG4gIEdldE9iamVjdFRvcnJlbnRDb21tYW5kT3V0cHV0LFxuICBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIEdldFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZElucHV0LFxuICBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmRPdXRwdXQsXG4gIEhlYWRCdWNrZXRDb21tYW5kLFxuICBIZWFkQnVja2V0Q29tbWFuZElucHV0LFxuICBIZWFkQnVja2V0Q29tbWFuZE91dHB1dCxcbiAgSGVhZE9iamVjdENvbW1hbmQsXG4gIEhlYWRPYmplY3RDb21tYW5kSW5wdXQsXG4gIEhlYWRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnNDb21tYW5kLFxuICBMaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnNDb21tYW5kSW5wdXQsXG4gIExpc3RCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIExpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgTGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICBMaXN0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgTGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gIExpc3RCdWNrZXRzQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldHNDb21tYW5kSW5wdXQsXG4gIExpc3RCdWNrZXRzQ29tbWFuZE91dHB1dCxcbiAgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kLFxuICBMaXN0TXVsdGlwYXJ0VXBsb2Fkc0NvbW1hbmRJbnB1dCxcbiAgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kT3V0cHV0LFxuICBMaXN0T2JqZWN0c0NvbW1hbmQsXG4gIExpc3RPYmplY3RzQ29tbWFuZElucHV0LFxuICBMaXN0T2JqZWN0c0NvbW1hbmRPdXRwdXQsXG4gIExpc3RPYmplY3RzVjJDb21tYW5kLFxuICBMaXN0T2JqZWN0c1YyQ29tbWFuZElucHV0LFxuICBMaXN0T2JqZWN0c1YyQ29tbWFuZE91dHB1dCxcbiAgTGlzdE9iamVjdFZlcnNpb25zQ29tbWFuZCxcbiAgTGlzdE9iamVjdFZlcnNpb25zQ29tbWFuZElucHV0LFxuICBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0UGFydHNDb21tYW5kLFxuICBMaXN0UGFydHNDb21tYW5kSW5wdXQsXG4gIExpc3RQYXJ0c0NvbW1hbmRPdXRwdXQsXG4gIFB1dEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIFB1dEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgUHV0QnVja2V0QWNsQ29tbWFuZCxcbiAgUHV0QnVja2V0QWNsQ29tbWFuZElucHV0LFxuICBQdXRCdWNrZXRBY2xDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgUHV0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIFB1dEJ1Y2tldENvcnNDb21tYW5kLFxuICBQdXRCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICBQdXRCdWNrZXRDb3JzQ29tbWFuZE91dHB1dCxcbiAgUHV0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldEVuY3J5cHRpb25Db21tYW5kSW5wdXQsXG4gIFB1dEJ1Y2tldEVuY3J5cHRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgUHV0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gIFB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgUHV0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIFB1dEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRMb2dnaW5nQ29tbWFuZCxcbiAgUHV0QnVja2V0TG9nZ2luZ0NvbW1hbmRJbnB1dCxcbiAgUHV0QnVja2V0TG9nZ2luZ0NvbW1hbmRPdXRwdXQsXG4gIFB1dEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIFB1dEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgUHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmQsXG4gIFB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZElucHV0LFxuICBQdXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmRPdXRwdXQsXG4gIFB1dEJ1Y2tldFBvbGljeUNvbW1hbmQsXG4gIFB1dEJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgUHV0QnVja2V0UG9saWN5Q29tbWFuZE91dHB1dCxcbiAgUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmQsXG4gIFB1dEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZElucHV0LFxuICBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmRPdXRwdXQsXG4gIFB1dEJ1Y2tldFRhZ2dpbmdDb21tYW5kLFxuICBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZE91dHB1dCxcbiAgUHV0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmQsXG4gIFB1dEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kSW5wdXQsXG4gIFB1dEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgUHV0QnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgUHV0QnVja2V0V2Vic2l0ZUNvbW1hbmRPdXRwdXQsXG4gIFB1dE9iamVjdEFjbENvbW1hbmQsXG4gIFB1dE9iamVjdEFjbENvbW1hbmRJbnB1dCxcbiAgUHV0T2JqZWN0QWNsQ29tbWFuZE91dHB1dCxcbiAgUHV0T2JqZWN0Q29tbWFuZCxcbiAgUHV0T2JqZWN0Q29tbWFuZElucHV0LFxuICBQdXRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kLFxuICBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kSW5wdXQsXG4gIFB1dE9iamVjdExlZ2FsSG9sZENvbW1hbmRPdXRwdXQsXG4gIFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgUHV0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZCxcbiAgUHV0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZElucHV0LFxuICBQdXRPYmplY3RSZXRlbnRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RUYWdnaW5nQ29tbWFuZCxcbiAgUHV0T2JqZWN0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgUHV0T2JqZWN0VGFnZ2luZ0NvbW1hbmRPdXRwdXQsXG4gIFB1dFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZCxcbiAgUHV0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kSW5wdXQsXG4gIFB1dFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZE91dHB1dCxcbiAgUmVzdG9yZU9iamVjdENvbW1hbmQsXG4gIFJlc3RvcmVPYmplY3RDb21tYW5kSW5wdXQsXG4gIFJlc3RvcmVPYmplY3RDb21tYW5kT3V0cHV0LFxuICBTM1NlcnZpY2VFeGNlcHRpb24sXG4gIFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kLFxuICBTZWxlY3RPYmplY3RDb250ZW50Q29tbWFuZElucHV0LFxuICBTZWxlY3RPYmplY3RDb250ZW50Q29tbWFuZE91dHB1dCxcbiAgVXBsb2FkUGFydENvbW1hbmQsXG4gIFVwbG9hZFBhcnRDb21tYW5kSW5wdXQsXG4gIFVwbG9hZFBhcnRDb21tYW5kT3V0cHV0LFxuICBVcGxvYWRQYXJ0Q29weUNvbW1hbmQsXG4gIFVwbG9hZFBhcnRDb3B5Q29tbWFuZElucHV0LFxuICBVcGxvYWRQYXJ0Q29weUNvbW1hbmRPdXRwdXQsXG4gIFdyaXRlR2V0T2JqZWN0UmVzcG9uc2VDb21tYW5kLFxuICBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZElucHV0LFxuICBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZE91dHB1dCxcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zM1wiO1xuaW1wb3J0IHsgZ2V0U2lnbmVkVXJsIH0gZnJvbSBcIkBhd3Mtc2RrL3MzLXJlcXVlc3QtcHJlc2lnbmVyXCI7XG5pbXBvcnQge1xuICBIdHRwSGFuZGxlck9wdGlvbnMgYXMgX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gIFJlcXVlc3RQcmVzaWduaW5nQXJndW1lbnRzLFxufSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IENvbnRleHQsIEVmZmVjdCwgTGF5ZXIsIFJlYWRvbmx5UmVjb3JkIH0gZnJvbSBcImVmZmVjdFwiO1xuaW1wb3J0IHsgUzNTZXJ2aWNlRXJyb3IsIFNka0Vycm9yIH0gZnJvbSBcIi4vRXJyb3JzXCI7XG5pbXBvcnQge1xuICBEZWZhdWx0UzNDbGllbnRJbnN0YW5jZUxheWVyLFxuICBTM0NsaWVudEluc3RhbmNlLFxuICBTM0NsaWVudEluc3RhbmNlTGF5ZXIsXG59IGZyb20gXCIuL1MzQ2xpZW50SW5zdGFuY2VcIjtcbmltcG9ydCB7IERlZmF1bHRTM0NsaWVudENvbmZpZ0xheWVyIH0gZnJvbSBcIi4vUzNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiO1xuXG5jb25zdCBjb21tYW5kcyA9IHtcbiAgQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kLFxuICBDb21wbGV0ZU11bHRpcGFydFVwbG9hZENvbW1hbmQsXG4gIENvcHlPYmplY3RDb21tYW5kLFxuICBDcmVhdGVCdWNrZXRDb21tYW5kLFxuICBDcmVhdGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kLFxuICBEZWxldGVCdWNrZXRDb21tYW5kLFxuICBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0Q29yc0NvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldEVuY3J5cHRpb25Db21tYW5kLFxuICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldExpZmVjeWNsZUNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kLFxuICBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kLFxuICBEZWxldGVCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldFRhZ2dpbmdDb21tYW5kLFxuICBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgRGVsZXRlT2JqZWN0Q29tbWFuZCxcbiAgRGVsZXRlT2JqZWN0c0NvbW1hbmQsXG4gIERlbGV0ZU9iamVjdFRhZ2dpbmdDb21tYW5kLFxuICBEZWxldGVQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIEdldEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0QWNsQ29tbWFuZCxcbiAgR2V0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldENvcnNDb21tYW5kLFxuICBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0TG9jYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRMb2dnaW5nQ29tbWFuZCxcbiAgR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kLFxuICBHZXRCdWNrZXRQb2xpY3lDb21tYW5kLFxuICBHZXRCdWNrZXRQb2xpY3lTdGF0dXNDb21tYW5kLFxuICBHZXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZCxcbiAgR2V0QnVja2V0VGFnZ2luZ0NvbW1hbmQsXG4gIEdldEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kLFxuICBHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgR2V0T2JqZWN0Q29tbWFuZCxcbiAgR2V0T2JqZWN0QWNsQ29tbWFuZCxcbiAgR2V0T2JqZWN0QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmQsXG4gIEdldE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZCxcbiAgR2V0T2JqZWN0VGFnZ2luZ0NvbW1hbmQsXG4gIEdldE9iamVjdFRvcnJlbnRDb21tYW5kLFxuICBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIEhlYWRCdWNrZXRDb21tYW5kLFxuICBIZWFkT2JqZWN0Q29tbWFuZCxcbiAgTGlzdEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIExpc3RCdWNrZXRzQ29tbWFuZCxcbiAgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kLFxuICBMaXN0T2JqZWN0c0NvbW1hbmQsXG4gIExpc3RPYmplY3RzVjJDb21tYW5kLFxuICBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kLFxuICBMaXN0UGFydHNDb21tYW5kLFxuICBQdXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldEFjbENvbW1hbmQsXG4gIFB1dEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRDb3JzQ29tbWFuZCxcbiAgUHV0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldExvZ2dpbmdDb21tYW5kLFxuICBQdXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmQsXG4gIFB1dEJ1Y2tldFBvbGljeUNvbW1hbmQsXG4gIFB1dEJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kLFxuICBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZCxcbiAgUHV0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmQsXG4gIFB1dEJ1Y2tldFdlYnNpdGVDb21tYW5kLFxuICBQdXRPYmplY3RDb21tYW5kLFxuICBQdXRPYmplY3RBY2xDb21tYW5kLFxuICBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kLFxuICBQdXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dE9iamVjdFJldGVudGlvbkNvbW1hbmQsXG4gIFB1dE9iamVjdFRhZ2dpbmdDb21tYW5kLFxuICBQdXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIFJlc3RvcmVPYmplY3RDb21tYW5kLFxuICBTZWxlY3RPYmplY3RDb250ZW50Q29tbWFuZCxcbiAgVXBsb2FkUGFydENvbW1hbmQsXG4gIFVwbG9hZFBhcnRDb3B5Q29tbWFuZCxcbiAgV3JpdGVHZXRPYmplY3RSZXNwb25zZUNvbW1hbmQsXG59O1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IG1vZGVsc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFMzU2VydmljZSB7XG4gIHJlYWRvbmx5IF86IHVuaXF1ZSBzeW1ib2w7XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEFib3J0TXVsdGlwYXJ0VXBsb2FkQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGFib3J0TXVsdGlwYXJ0VXBsb2FkOiAoXG4gICAgYXJnczogQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ29tcGxldGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGxldGVNdWx0aXBhcnRVcGxvYWQ6IChcbiAgICBhcmdzOiBDb21wbGV0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDb21wbGV0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDb3B5T2JqZWN0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNvcHlPYmplY3Q6IChcbiAgICBhcmdzOiBDb3B5T2JqZWN0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PENvcHlPYmplY3RDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlQnVja2V0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZUJ1Y2tldDogKFxuICAgIGFyZ3M6IENyZWF0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxDcmVhdGVCdWNrZXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZU11bHRpcGFydFVwbG9hZDogKFxuICAgIGFyZ3M6IENyZWF0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBDcmVhdGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUJ1Y2tldDogKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxEZWxldGVCdWNrZXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogRGVsZXRlQnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldENvcnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQnVja2V0Q29yczogKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldENvcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlQnVja2V0Q29yc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUJ1Y2tldEVuY3J5cHRpb246IChcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJ1Y2tldEVuY3J5cHRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogRGVsZXRlQnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlQnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRMaWZlY3ljbGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQnVja2V0TGlmZWN5Y2xlOiAoXG4gICAgYXJnczogRGVsZXRlQnVja2V0TGlmZWN5Y2xlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJ1Y2tldExpZmVjeWNsZUNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUJ1Y2tldE93bmVyc2hpcENvbnRyb2xzOiAoXG4gICAgYXJnczogRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0UG9saWN5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUJ1Y2tldFBvbGljeTogKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0UmVwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQnVja2V0UmVwbGljYXRpb246IChcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRUYWdnaW5nQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUJ1Y2tldFRhZ2dpbmc6IChcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0V2Vic2l0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVCdWNrZXRXZWJzaXRlOiAoXG4gICAgYXJnczogRGVsZXRlQnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU9iamVjdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBkZWxldGVPYmplY3Q6IChcbiAgICBhcmdzOiBEZWxldGVPYmplY3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlT2JqZWN0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU9iamVjdHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlT2JqZWN0czogKFxuICAgIGFyZ3M6IERlbGV0ZU9iamVjdHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8RGVsZXRlT2JqZWN0c0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU9iamVjdFRhZ2dpbmc6IChcbiAgICBhcmdzOiBEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZU9iamVjdFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlUHVibGljQWNjZXNzQmxvY2tDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlUHVibGljQWNjZXNzQmxvY2s6IChcbiAgICBhcmdzOiBEZWxldGVQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldEFjbENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRBY2w6IChcbiAgICBhcmdzOiBHZXRCdWNrZXRBY2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0QWNsQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRDb3JzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldENvcnM6IChcbiAgICBhcmdzOiBHZXRCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEdldEJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRFbmNyeXB0aW9uOiAoXG4gICAgYXJnczogR2V0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb246IChcbiAgICBhcmdzOiBHZXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogR2V0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldExvY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldExvY2F0aW9uOiAoXG4gICAgYXJnczogR2V0QnVja2V0TG9jYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0TG9jYXRpb25Db21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0TG9nZ2luZ0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRMb2dnaW5nOiAoXG4gICAgYXJnczogR2V0QnVja2V0TG9nZ2luZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxHZXRCdWNrZXRMb2dnaW5nQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogR2V0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzOiAoXG4gICAgYXJnczogR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0UG9saWN5Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldFBvbGljeTogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxHZXRCdWNrZXRQb2xpY3lDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0UG9saWN5U3RhdHVzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldFBvbGljeVN0YXR1czogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldFBvbGljeVN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRQb2xpY3lTdGF0dXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0QnVja2V0UmVwbGljYXRpb246IChcbiAgICBhcmdzOiBHZXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRSZXF1ZXN0UGF5bWVudDogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldFRhZ2dpbmdDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0QnVja2V0VGFnZ2luZzogKFxuICAgIGFyZ3M6IEdldEJ1Y2tldFRhZ2dpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0VGFnZ2luZ0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldEJ1Y2tldFZlcnNpb25pbmc6IChcbiAgICBhcmdzOiBHZXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0V2Vic2l0ZUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRCdWNrZXRXZWJzaXRlOiAoXG4gICAgYXJnczogR2V0QnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE9iamVjdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRPYmplY3Q6IHtcbiAgICAoXG4gICAgICBhcmdzOiBHZXRPYmplY3RDb21tYW5kSW5wdXQsXG4gICAgICBvcHRpb25zPzogeyByZWFkb25seSBwcmVzaWduZWQ/OiBmYWxzZSB9ICYgX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICAgKTogRWZmZWN0LkVmZmVjdDxHZXRPYmplY3RDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcbiAgICAoXG4gICAgICBhcmdzOiBHZXRPYmplY3RDb21tYW5kSW5wdXQsXG4gICAgICBvcHRpb25zPzogeyByZWFkb25seSBwcmVzaWduZWQ6IHRydWUgfSAmIFJlcXVlc3RQcmVzaWduaW5nQXJndW1lbnRzLFxuICAgICk6IEVmZmVjdC5FZmZlY3Q8c3RyaW5nLCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcbiAgfTtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0QWNsQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldE9iamVjdEFjbDogKFxuICAgIGFyZ3M6IEdldE9iamVjdEFjbENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxHZXRPYmplY3RBY2xDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0QXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRPYmplY3RBdHRyaWJ1dGVzOiAoXG4gICAgYXJnczogR2V0T2JqZWN0QXR0cmlidXRlc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRPYmplY3RBdHRyaWJ1dGVzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRPYmplY3RMZWdhbEhvbGQ6IChcbiAgICBhcmdzOiBHZXRPYmplY3RMZWdhbEhvbGRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0T2JqZWN0TGVnYWxIb2xkQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldE9iamVjdExvY2tDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGdldE9iamVjdFJldGVudGlvbjogKFxuICAgIGFyZ3M6IEdldE9iamVjdFJldGVudGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRPYmplY3RSZXRlbnRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0VGFnZ2luZ0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRPYmplY3RUYWdnaW5nOiAoXG4gICAgYXJnczogR2V0T2JqZWN0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxHZXRPYmplY3RUYWdnaW5nQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE9iamVjdFRvcnJlbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgZ2V0T2JqZWN0VG9ycmVudDogKFxuICAgIGFyZ3M6IEdldE9iamVjdFRvcnJlbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8R2V0T2JqZWN0VG9ycmVudENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBnZXRQdWJsaWNBY2Nlc3NCbG9jazogKFxuICAgIGFyZ3M6IEdldFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEhlYWRCdWNrZXRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgaGVhZEJ1Y2tldDogKFxuICAgIGFyZ3M6IEhlYWRCdWNrZXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8SGVhZEJ1Y2tldENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBIZWFkT2JqZWN0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGhlYWRPYmplY3Q6IChcbiAgICBhcmdzOiBIZWFkT2JqZWN0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PEhlYWRPYmplY3RDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGxpc3RCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uczogKFxuICAgIGFyZ3M6IExpc3RCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGxpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uczogKFxuICAgIGFyZ3M6IExpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGxpc3RCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uczogKFxuICAgIGFyZ3M6IExpc3RCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBsaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zOiAoXG4gICAgYXJnczogTGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RCdWNrZXRzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IGxpc3RCdWNrZXRzOiAoXG4gICAgYXJnczogTGlzdEJ1Y2tldHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TGlzdEJ1Y2tldHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbGlzdE11bHRpcGFydFVwbG9hZHM6IChcbiAgICBhcmdzOiBMaXN0TXVsdGlwYXJ0VXBsb2Fkc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0TXVsdGlwYXJ0VXBsb2Fkc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0T2JqZWN0c0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBsaXN0T2JqZWN0czogKFxuICAgIGFyZ3M6IExpc3RPYmplY3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PExpc3RPYmplY3RzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RPYmplY3RzVjJDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbGlzdE9iamVjdHNWMjogKFxuICAgIGFyZ3M6IExpc3RPYmplY3RzVjJDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8TGlzdE9iamVjdHNWMkNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbGlzdE9iamVjdFZlcnNpb25zOiAoXG4gICAgYXJnczogTGlzdE9iamVjdFZlcnNpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RPYmplY3RWZXJzaW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0UGFydHNDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgbGlzdFBhcnRzOiAoXG4gICAgYXJnczogTGlzdFBhcnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PExpc3RQYXJ0c0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldEFjbENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRBY2w6IChcbiAgICBhcmdzOiBQdXRCdWNrZXRBY2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UHV0QnVja2V0QWNsQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRDb3JzQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dEJ1Y2tldENvcnM6IChcbiAgICBhcmdzOiBQdXRCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRFbmNyeXB0aW9uOiAoXG4gICAgYXJnczogUHV0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb246IChcbiAgICBhcmdzOiBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogUHV0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldExvZ2dpbmdDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0QnVja2V0TG9nZ2luZzogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldExvZ2dpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UHV0QnVja2V0TG9nZ2luZ0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbjogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRPd25lcnNoaXBDb250cm9sczogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldFBvbGljeUNvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRQb2xpY3k6IChcbiAgICBhcmdzOiBQdXRCdWNrZXRQb2xpY3lDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UHV0QnVja2V0UG9saWN5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dEJ1Y2tldFJlcGxpY2F0aW9uOiAoXG4gICAgYXJnczogUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0QnVja2V0UmVxdWVzdFBheW1lbnQ6IChcbiAgICBhcmdzOiBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dEJ1Y2tldFRhZ2dpbmc6IChcbiAgICBhcmdzOiBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRCdWNrZXRWZXJzaW9uaW5nOiAoXG4gICAgYXJnczogUHV0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldFdlYnNpdGVDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0QnVja2V0V2Vic2l0ZTogKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldFdlYnNpdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UHV0QnVja2V0V2Vic2l0ZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRPYmplY3RDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgcHV0T2JqZWN0OiB7XG4gICAgKFxuICAgICAgYXJnczogUHV0T2JqZWN0Q29tbWFuZElucHV0LFxuICAgICAgb3B0aW9ucz86IHsgcmVhZG9ubHkgcHJlc2lnbmVkPzogZmFsc2UgfSAmIF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICAgICk6IEVmZmVjdC5FZmZlY3Q8UHV0T2JqZWN0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG4gICAgKFxuICAgICAgYXJnczogUHV0T2JqZWN0Q29tbWFuZElucHV0LFxuICAgICAgb3B0aW9ucz86IHsgcmVhZG9ubHkgcHJlc2lnbmVkOiB0cnVlIH0gJiBSZXF1ZXN0UHJlc2lnbmluZ0FyZ3VtZW50cyxcbiAgICApOiBFZmZlY3QuRWZmZWN0PHN0cmluZywgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG4gIH07XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dE9iamVjdEFjbENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRPYmplY3RBY2w6IChcbiAgICBhcmdzOiBQdXRPYmplY3RBY2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8UHV0T2JqZWN0QWNsQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dE9iamVjdExlZ2FsSG9sZENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRPYmplY3RMZWdhbEhvbGQ6IChcbiAgICBhcmdzOiBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0T2JqZWN0TGVnYWxIb2xkQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uOiAoXG4gICAgYXJnczogUHV0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dE9iamVjdFJldGVudGlvbjogKFxuICAgIGFyZ3M6IFB1dE9iamVjdFJldGVudGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRPYmplY3RSZXRlbnRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0T2JqZWN0VGFnZ2luZ0NvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSBwdXRPYmplY3RUYWdnaW5nOiAoXG4gICAgYXJnczogUHV0T2JqZWN0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxQdXRPYmplY3RUYWdnaW5nQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHB1dFB1YmxpY0FjY2Vzc0Jsb2NrOiAoXG4gICAgYXJnczogUHV0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUmVzdG9yZU9iamVjdENvbW1hbmR9XG4gICAqL1xuICByZWFkb25seSByZXN0b3JlT2JqZWN0OiAoXG4gICAgYXJnczogUmVzdG9yZU9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxSZXN0b3JlT2JqZWN0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgc2VsZWN0T2JqZWN0Q29udGVudDogKFxuICAgIGFyZ3M6IFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApID0+IEVmZmVjdC5FZmZlY3Q8XG4gICAgU2VsZWN0T2JqZWN0Q29udGVudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBVcGxvYWRQYXJ0Q29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHVwbG9hZFBhcnQ6IChcbiAgICBhcmdzOiBVcGxvYWRQYXJ0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFVwbG9hZFBhcnRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBsb2FkUGFydENvcHlDb21tYW5kfVxuICAgKi9cbiAgcmVhZG9ubHkgdXBsb2FkUGFydENvcHk6IChcbiAgICBhcmdzOiBVcGxvYWRQYXJ0Q29weUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICkgPT4gRWZmZWN0LkVmZmVjdDxVcGxvYWRQYXJ0Q29weUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZH1cbiAgICovXG4gIHJlYWRvbmx5IHdyaXRlR2V0T2JqZWN0UmVzcG9uc2U6IChcbiAgICBhcmdzOiBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKSA9PiBFZmZlY3QuRWZmZWN0PFxuICAgIFdyaXRlR2V0T2JqZWN0UmVzcG9uc2VDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcbn1cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjb25zdCBTM1NlcnZpY2UgPSBDb250ZXh0LkdlbmVyaWNUYWc8UzNTZXJ2aWNlPihcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtczMvUzNTZXJ2aWNlXCIsXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZVMzU2VydmljZSA9IEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gIGNvbnN0IGNsaWVudCA9IHlpZWxkKiBfKFMzQ2xpZW50SW5zdGFuY2UpO1xuXG4gIGNvbnN0IGNhdGNoRXJyb3JzID0gKGU6IHVua25vd24pID0+IHtcbiAgICBpZiAoZSBpbnN0YW5jZW9mIFMzU2VydmljZUV4Y2VwdGlvbikge1xuICAgICAgcmV0dXJuIFMzU2VydmljZUVycm9yKHtcbiAgICAgICAgLi4uZSxcbiAgICAgICAgbmFtZTogXCJTM1NlcnZpY2VFcnJvclwiLFxuICAgICAgICBtZXNzYWdlOiBlLm1lc3NhZ2UsXG4gICAgICAgIHN0YWNrOiBlLnN0YWNrLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHJldHVybiBTZGtFcnJvcih7XG4gICAgICAgIC4uLmUsXG4gICAgICAgIG5hbWU6IFwiU2RrRXJyb3JcIixcbiAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0aHJvdyBlO1xuICB9O1xuXG4gIHJldHVybiBSZWFkb25seVJlY29yZC50b0VudHJpZXMoY29tbWFuZHMpLnJlZHVjZSgoYWNjLCBbY29tbWFuZF0pID0+IHtcbiAgICBjb25zdCBDb21tYW5kQ3RvciA9IGNvbW1hbmRzW2NvbW1hbmRdIGFzIGFueTtcbiAgICBjb25zdCBtZXRob2RJbXBsID0gKFxuICAgICAgYXJnczogYW55LFxuICAgICAgb3B0aW9ucz86XG4gICAgICAgIHwgKHsgcmVhZG9ubHkgcHJlc2lnbmVkPzogZmFsc2UgfSAmIF9fSHR0cEhhbmRsZXJPcHRpb25zKVxuICAgICAgICB8ICh7IHJlYWRvbmx5IHByZXNpZ25lZDogdHJ1ZSB9ICYgUmVxdWVzdFByZXNpZ25pbmdBcmd1bWVudHMpLFxuICAgICkgPT5cbiAgICAgIG9wdGlvbnM/LnByZXNpZ25lZFxuICAgICAgICA/IEVmZmVjdC50cnlQcm9taXNlKHtcbiAgICAgICAgICAgIHRyeTogKCkgPT5cbiAgICAgICAgICAgICAgZ2V0U2lnbmVkVXJsKGNsaWVudCBhcyBhbnksIG5ldyBDb21tYW5kQ3RvcihhcmdzKSwgb3B0aW9ucyksXG4gICAgICAgICAgICBjYXRjaDogY2F0Y2hFcnJvcnMsXG4gICAgICAgICAgfSlcbiAgICAgICAgOiBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgICAgICB0cnk6ICgpID0+IGNsaWVudC5zZW5kKG5ldyBDb21tYW5kQ3RvcihhcmdzKSwgb3B0aW9ucyksXG4gICAgICAgICAgICBjYXRjaDogY2F0Y2hFcnJvcnMsXG4gICAgICAgICAgfSk7XG4gICAgY29uc3QgbWV0aG9kTmFtZSA9IChjb21tYW5kWzBdLnRvTG93ZXJDYXNlKCkgKyBjb21tYW5kLnNsaWNlKDEpKS5yZXBsYWNlKFxuICAgICAgL0NvbW1hbmQkLyxcbiAgICAgIFwiXCIsXG4gICAgKTtcbiAgICByZXR1cm4geyAuLi5hY2MsIFttZXRob2ROYW1lXTogbWV0aG9kSW1wbCB9O1xuICB9LCB7fSkgYXMgUzNTZXJ2aWNlO1xufSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBCYXNlUzNTZXJ2aWNlTGF5ZXIgPSBMYXllci5lZmZlY3QoUzNTZXJ2aWNlLCBtYWtlUzNTZXJ2aWNlKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IFMzU2VydmljZUxheWVyID0gQmFzZVMzU2VydmljZUxheWVyLnBpcGUoXG4gIExheWVyLnByb3ZpZGUoUzNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0UzNTZXJ2aWNlTGF5ZXIgPSBTM1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKERlZmF1bHRTM0NsaWVudENvbmZpZ0xheWVyKSxcbik7XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tIERhbmdlciBab25lIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qKlxuICogQHNpbmNlIDAuMS4wXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY29uc3QgQmFzZVMzU2VydmljZUVmZmVjdCA9IG1ha2VTM1NlcnZpY2U7XG5cbi8qKlxuICogQHNpbmNlIDAuMS4wXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY29uc3QgUzNTZXJ2aWNlRWZmZWN0ID0gQmFzZVMzU2VydmljZUVmZmVjdC5waXBlKFxuICBFZmZlY3QucHJvdmlkZShTM0NsaWVudEluc3RhbmNlTGF5ZXIpLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMC4xLjBcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBEZWZhdWx0UzNTZXJ2aWNlRWZmZWN0ID0gQmFzZVMzU2VydmljZUVmZmVjdC5waXBlKFxuICBFZmZlY3QucHJvdmlkZShEZWZhdWx0UzNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG4iXX0=
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUzNTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1MzU2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILGtEQStSNEI7QUFDNUIsd0VBQTZEO0FBSzdELG1DQUFzRTtBQUN0RSxxQ0Fha0I7QUFDbEIseURBSTRCO0FBQzVCLHFFQUFzRTtBQUV0RSxNQUFNLFFBQVEsR0FBRztJQUNmLDJCQUEyQixFQUEzQix1Q0FBMkI7SUFDM0IsOEJBQThCLEVBQTlCLDBDQUE4QjtJQUM5QixpQkFBaUIsRUFBakIsNkJBQWlCO0lBQ2pCLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsNEJBQTRCLEVBQTVCLHdDQUE0QjtJQUM1QixvQkFBb0IsRUFBcEIsZ0NBQW9CO0lBQ3BCLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIseUNBQXlDLEVBQXpDLHFEQUF5QztJQUN6Qyx1QkFBdUIsRUFBdkIsbUNBQXVCO0lBQ3ZCLDZCQUE2QixFQUE3Qix5Q0FBNkI7SUFDN0Isa0RBQWtELEVBQWxELDhEQUFrRDtJQUNsRCx5Q0FBeUMsRUFBekMscURBQXlDO0lBQ3pDLDRCQUE0QixFQUE1Qix3Q0FBNEI7SUFDNUIsdUNBQXVDLEVBQXZDLG1EQUF1QztJQUN2QyxvQ0FBb0MsRUFBcEMsZ0RBQW9DO0lBQ3BDLHlCQUF5QixFQUF6QixxQ0FBeUI7SUFDekIsOEJBQThCLEVBQTlCLDBDQUE4QjtJQUM5QiwwQkFBMEIsRUFBMUIsc0NBQTBCO0lBQzFCLDBCQUEwQixFQUExQixzQ0FBMEI7SUFDMUIsbUJBQW1CLEVBQW5CLCtCQUFtQjtJQUNuQixvQkFBb0IsRUFBcEIsZ0NBQW9CO0lBQ3BCLDBCQUEwQixFQUExQixzQ0FBMEI7SUFDMUIsOEJBQThCLEVBQTlCLDBDQUE4QjtJQUM5Qix1Q0FBdUMsRUFBdkMsbURBQXVDO0lBQ3ZDLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsc0NBQXNDLEVBQXRDLGtEQUFzQztJQUN0QyxvQkFBb0IsRUFBcEIsZ0NBQW9CO0lBQ3BCLDBCQUEwQixFQUExQixzQ0FBMEI7SUFDMUIsK0NBQStDLEVBQS9DLDJEQUErQztJQUMvQyxzQ0FBc0MsRUFBdEMsa0RBQXNDO0lBQ3RDLHNDQUFzQyxFQUF0QyxrREFBc0M7SUFDdEMsd0JBQXdCLEVBQXhCLG9DQUF3QjtJQUN4Qix1QkFBdUIsRUFBdkIsbUNBQXVCO0lBQ3ZCLG9DQUFvQyxFQUFwQyxnREFBb0M7SUFDcEMseUNBQXlDLEVBQXpDLHFEQUF5QztJQUN6QyxpQ0FBaUMsRUFBakMsNkNBQWlDO0lBQ2pDLHNCQUFzQixFQUF0QixrQ0FBc0I7SUFDdEIsNEJBQTRCLEVBQTVCLHdDQUE0QjtJQUM1QiwyQkFBMkIsRUFBM0IsdUNBQTJCO0lBQzNCLDhCQUE4QixFQUE5QiwwQ0FBOEI7SUFDOUIsdUJBQXVCLEVBQXZCLG1DQUF1QjtJQUN2QiwwQkFBMEIsRUFBMUIsc0NBQTBCO0lBQzFCLHVCQUF1QixFQUF2QixtQ0FBdUI7SUFDdkIsZ0JBQWdCLEVBQWhCLDRCQUFnQjtJQUNoQixtQkFBbUIsRUFBbkIsK0JBQW1CO0lBQ25CLDBCQUEwQixFQUExQixzQ0FBMEI7SUFDMUIseUJBQXlCLEVBQXpCLHFDQUF5QjtJQUN6QixpQ0FBaUMsRUFBakMsNkNBQWlDO0lBQ2pDLHlCQUF5QixFQUF6QixxQ0FBeUI7SUFDekIsdUJBQXVCLEVBQXZCLG1DQUF1QjtJQUN2Qix1QkFBdUIsRUFBdkIsbUNBQXVCO0lBQ3ZCLDJCQUEyQixFQUEzQix1Q0FBMkI7SUFDM0IsaUJBQWlCLEVBQWpCLDZCQUFpQjtJQUNqQixpQkFBaUIsRUFBakIsNkJBQWlCO0lBQ2pCLHdDQUF3QyxFQUF4QyxvREFBd0M7SUFDeEMsaURBQWlELEVBQWpELDZEQUFpRDtJQUNqRCx3Q0FBd0MsRUFBeEMsb0RBQXdDO0lBQ3hDLHNDQUFzQyxFQUF0QyxrREFBc0M7SUFDdEMsa0JBQWtCLEVBQWxCLDhCQUFrQjtJQUNsQiwyQkFBMkIsRUFBM0IsdUNBQTJCO0lBQzNCLDJCQUEyQixFQUEzQix1Q0FBMkI7SUFDM0Isa0JBQWtCLEVBQWxCLDhCQUFrQjtJQUNsQixvQkFBb0IsRUFBcEIsZ0NBQW9CO0lBQ3BCLHlCQUF5QixFQUF6QixxQ0FBeUI7SUFDekIsZ0JBQWdCLEVBQWhCLDRCQUFnQjtJQUNoQix1Q0FBdUMsRUFBdkMsbURBQXVDO0lBQ3ZDLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIsc0NBQXNDLEVBQXRDLGtEQUFzQztJQUN0QyxvQkFBb0IsRUFBcEIsZ0NBQW9CO0lBQ3BCLDBCQUEwQixFQUExQixzQ0FBMEI7SUFDMUIsK0NBQStDLEVBQS9DLDJEQUErQztJQUMvQyxzQ0FBc0MsRUFBdEMsa0RBQXNDO0lBQ3RDLHNDQUFzQyxFQUF0QyxrREFBc0M7SUFDdEMsdUJBQXVCLEVBQXZCLG1DQUF1QjtJQUN2QixvQ0FBb0MsRUFBcEMsZ0RBQW9DO0lBQ3BDLHlDQUF5QyxFQUF6QyxxREFBeUM7SUFDekMsaUNBQWlDLEVBQWpDLDZDQUFpQztJQUNqQyxzQkFBc0IsRUFBdEIsa0NBQXNCO0lBQ3RCLDJCQUEyQixFQUEzQix1Q0FBMkI7SUFDM0IsOEJBQThCLEVBQTlCLDBDQUE4QjtJQUM5Qix1QkFBdUIsRUFBdkIsbUNBQXVCO0lBQ3ZCLDBCQUEwQixFQUExQixzQ0FBMEI7SUFDMUIsdUJBQXVCLEVBQXZCLG1DQUF1QjtJQUN2QixnQkFBZ0IsRUFBaEIsNEJBQWdCO0lBQ2hCLG1CQUFtQixFQUFuQiwrQkFBbUI7SUFDbkIseUJBQXlCLEVBQXpCLHFDQUF5QjtJQUN6QixpQ0FBaUMsRUFBakMsNkNBQWlDO0lBQ2pDLHlCQUF5QixFQUF6QixxQ0FBeUI7SUFDekIsdUJBQXVCLEVBQXZCLG1DQUF1QjtJQUN2QiwyQkFBMkIsRUFBM0IsdUNBQTJCO0lBQzNCLG9CQUFvQixFQUFwQixnQ0FBb0I7SUFDcEIsMEJBQTBCLEVBQTFCLHNDQUEwQjtJQUMxQixpQkFBaUIsRUFBakIsNkJBQWlCO0lBQ2pCLHFCQUFxQixFQUFyQixpQ0FBcUI7SUFDckIsNkJBQTZCLEVBQTdCLHlDQUE2QjtDQUM5QixDQUFDO0FBMDVCRjs7O0dBR0c7QUFDVSxRQUFBLFNBQVMsR0FBRyxnQkFBTyxDQUFDLFVBQVUsQ0FDekMsaUNBQWlDLENBQ2xDLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLGFBQWEsR0FBRyxlQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7SUFDbEQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1DQUFnQixDQUFDLENBQUM7SUFFMUMsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFVLEVBQUUsRUFBRTtRQUNqQyxJQUFJLENBQUMsWUFBWSw4QkFBa0IsRUFBRTtZQUNuQyxNQUFNLGdCQUFnQixHQUFHLGFBQUksQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxJQUFJLENBQ1AsQ0FBQztZQUVGLE9BQU8sZ0JBQWdCLENBQUM7Z0JBQ3RCLEdBQUcsQ0FBQztnQkFDSixPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87Z0JBQ2xCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSzthQUNmLENBQUMsQ0FBQztTQUNKO1FBQ0QsSUFBSSxDQUFDLFlBQVksS0FBSyxFQUFFO1lBQ3RCLE9BQU8sSUFBQSxpQkFBUSxFQUFDO2dCQUNkLEdBQUcsQ0FBQztnQkFDSixJQUFJLEVBQUUsVUFBVTtnQkFDaEIsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO2dCQUNsQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUs7YUFDZixDQUFDLENBQUM7U0FDSjtRQUNELE1BQU0sQ0FBQyxDQUFDO0lBQ1YsQ0FBQyxDQUFDO0lBRUYsT0FBTyx1QkFBYyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFO1FBQ2xFLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQVEsQ0FBQztRQUM3QyxNQUFNLFVBQVUsR0FBRyxDQUNqQixJQUFTLEVBQ1QsT0FFK0QsRUFDL0QsRUFBRSxDQUNGLENBQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFNBQVM7WUFDaEIsQ0FBQyxDQUFDLGVBQU0sQ0FBQyxVQUFVLENBQUM7Z0JBQ2hCLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FDUixJQUFBLG1DQUFZLEVBQUMsTUFBYSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQztnQkFDN0QsS0FBSyxFQUFFLFdBQVc7YUFDbkIsQ0FBQztZQUNKLENBQUMsQ0FBQyxlQUFNLENBQUMsVUFBVSxDQUFDO2dCQUNoQixHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLENBQUM7Z0JBQ3RELEtBQUssRUFBRSxXQUFXO2FBQ25CLENBQUMsQ0FBQztRQUNULE1BQU0sVUFBVSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQ3RFLFVBQVUsRUFDVixFQUFFLENBQ0gsQ0FBQztRQUNGLE9BQU8sRUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDO0lBQzlDLENBQUMsRUFBRSxFQUFFLENBQWMsQ0FBQztBQUN0QixDQUFDLENBQUMsQ0FBQztBQUVIOzs7R0FHRztBQUNVLFFBQUEsa0JBQWtCLEdBQUcsY0FBSyxDQUFDLE1BQU0sQ0FBQyxpQkFBUyxFQUFFLHFCQUFhLENBQUMsQ0FBQztBQUV6RTs7O0dBR0c7QUFDVSxRQUFBLGNBQWMsR0FBRywwQkFBa0IsQ0FBQyxJQUFJLENBQ25ELGNBQUssQ0FBQyxPQUFPLENBQUMsd0NBQXFCLENBQUMsQ0FDckMsQ0FBQztBQUVGOzs7R0FHRztBQUNVLFFBQUEscUJBQXFCLEdBQUcsc0JBQWMsQ0FBQyxJQUFJLENBQ3RELGNBQUssQ0FBQyxPQUFPLENBQUMsbURBQTBCLENBQUMsQ0FDMUMsQ0FBQztBQUVGLHdEQUF3RDtBQUV4RDs7O0dBR0c7QUFDVSxRQUFBLG1CQUFtQixHQUFHLHFCQUFhLENBQUM7QUFFakQ7OztHQUdHO0FBQ1UsUUFBQSxlQUFlLEdBQUcsMkJBQW1CLENBQUMsSUFBSSxDQUNyRCxlQUFNLENBQUMsT0FBTyxDQUFDLHdDQUFxQixDQUFDLENBQ3RDLENBQUM7QUFFRjs7O0dBR0c7QUFDVSxRQUFBLHNCQUFzQixHQUFHLDJCQUFtQixDQUFDLElBQUksQ0FDNUQsZUFBTSxDQUFDLE9BQU8sQ0FBQywrQ0FBNEIsQ0FBQyxDQUM3QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqL1xuaW1wb3J0IHtcbiAgUzNTZXJ2aWNlRXhjZXB0aW9uLFxuICBBYm9ydE11bHRpcGFydFVwbG9hZENvbW1hbmQsXG4gIHR5cGUgQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICBDb21wbGV0ZU11bHRpcGFydFVwbG9hZENvbW1hbmQsXG4gIHR5cGUgQ29tcGxldGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kSW5wdXQsXG4gIHR5cGUgQ29tcGxldGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICBDb3B5T2JqZWN0Q29tbWFuZCxcbiAgdHlwZSBDb3B5T2JqZWN0Q29tbWFuZElucHV0LFxuICB0eXBlIENvcHlPYmplY3RDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVCdWNrZXRDb21tYW5kLFxuICB0eXBlIENyZWF0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVCdWNrZXRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kLFxuICB0eXBlIENyZWF0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBDcmVhdGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kT3V0cHV0LFxuICBDcmVhdGVTZXNzaW9uQ29tbWFuZCxcbiAgdHlwZSBDcmVhdGVTZXNzaW9uQ29tbWFuZElucHV0LFxuICB0eXBlIENyZWF0ZVNlc3Npb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRDb21tYW5kLFxuICB0eXBlIERlbGV0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVCdWNrZXRDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRDb3JzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldEVuY3J5cHRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRMaWZlY3ljbGVDb21tYW5kLFxuICB0eXBlIERlbGV0ZUJ1Y2tldExpZmVjeWNsZUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVCdWNrZXRMaWZlY3ljbGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kLFxuICB0eXBlIERlbGV0ZUJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIHR5cGUgRGVsZXRlQnVja2V0UmVwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlQnVja2V0UmVwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRUYWdnaW5nQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZUJ1Y2tldFdlYnNpdGVDb21tYW5kT3V0cHV0LFxuICBEZWxldGVPYmplY3RDb21tYW5kLFxuICB0eXBlIERlbGV0ZU9iamVjdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBEZWxldGVPYmplY3RDb21tYW5kT3V0cHV0LFxuICBEZWxldGVPYmplY3RzQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVPYmplY3RzQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU9iamVjdHNDb21tYW5kT3V0cHV0LFxuICBEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZCxcbiAgdHlwZSBEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIERlbGV0ZU9iamVjdFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBEZWxldGVQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIHR5cGUgRGVsZXRlUHVibGljQWNjZXNzQmxvY2tDb21tYW5kSW5wdXQsXG4gIHR5cGUgRGVsZXRlUHVibGljQWNjZXNzQmxvY2tDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRBY2xDb21tYW5kLFxuICB0eXBlIEdldEJ1Y2tldEFjbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRCdWNrZXRBY2xDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRDb3JzQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldEVuY3J5cHRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRMb2NhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0QnVja2V0TG9jYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QnVja2V0TG9jYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRMb2dnaW5nQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRMb2dnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldExvZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmQsXG4gIHR5cGUgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRQb2xpY3lDb21tYW5kLFxuICB0eXBlIEdldEJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRCdWNrZXRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRQb2xpY3lTdGF0dXNDb21tYW5kLFxuICB0eXBlIEdldEJ1Y2tldFBvbGljeVN0YXR1c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRCdWNrZXRQb2xpY3lTdGF0dXNDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmQsXG4gIHR5cGUgR2V0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRUYWdnaW5nQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kT3V0cHV0LFxuICBHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgdHlwZSBHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZElucHV0LFxuICB0eXBlIEdldEJ1Y2tldFdlYnNpdGVDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RDb21tYW5kLFxuICB0eXBlIEdldE9iamVjdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RBY2xDb21tYW5kLFxuICB0eXBlIEdldE9iamVjdEFjbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRPYmplY3RBY2xDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RBdHRyaWJ1dGVzQ29tbWFuZCxcbiAgdHlwZSBHZXRPYmplY3RBdHRyaWJ1dGVzQ29tbWFuZElucHV0LFxuICB0eXBlIEdldE9iamVjdEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RMZWdhbEhvbGRDb21tYW5kLFxuICB0eXBlIEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRPYmplY3RMZWdhbEhvbGRDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RSZXRlbnRpb25Db21tYW5kLFxuICB0eXBlIEdldE9iamVjdFJldGVudGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBHZXRPYmplY3RSZXRlbnRpb25Db21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RUYWdnaW5nQ29tbWFuZCxcbiAgdHlwZSBHZXRPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIEdldE9iamVjdFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBHZXRPYmplY3RUb3JyZW50Q29tbWFuZCxcbiAgdHlwZSBHZXRPYmplY3RUb3JyZW50Q29tbWFuZElucHV0LFxuICB0eXBlIEdldE9iamVjdFRvcnJlbnRDb21tYW5kT3V0cHV0LFxuICBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIHR5cGUgR2V0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kSW5wdXQsXG4gIHR5cGUgR2V0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kT3V0cHV0LFxuICBIZWFkQnVja2V0Q29tbWFuZCxcbiAgdHlwZSBIZWFkQnVja2V0Q29tbWFuZElucHV0LFxuICB0eXBlIEhlYWRCdWNrZXRDb21tYW5kT3V0cHV0LFxuICBIZWFkT2JqZWN0Q29tbWFuZCxcbiAgdHlwZSBIZWFkT2JqZWN0Q29tbWFuZElucHV0LFxuICB0eXBlIEhlYWRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIExpc3RCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIExpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbnNDb21tYW5kLFxuICB0eXBlIExpc3RCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgdHlwZSBMaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0QnVja2V0c0NvbW1hbmQsXG4gIHR5cGUgTGlzdEJ1Y2tldHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdEJ1Y2tldHNDb21tYW5kT3V0cHV0LFxuICBMaXN0RGlyZWN0b3J5QnVja2V0c0NvbW1hbmQsXG4gIHR5cGUgTGlzdERpcmVjdG9yeUJ1Y2tldHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdERpcmVjdG9yeUJ1Y2tldHNDb21tYW5kT3V0cHV0LFxuICBMaXN0TXVsdGlwYXJ0VXBsb2Fkc0NvbW1hbmQsXG4gIHR5cGUgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kT3V0cHV0LFxuICBMaXN0T2JqZWN0c0NvbW1hbmQsXG4gIHR5cGUgTGlzdE9iamVjdHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgTGlzdE9iamVjdHNDb21tYW5kT3V0cHV0LFxuICBMaXN0T2JqZWN0c1YyQ29tbWFuZCxcbiAgdHlwZSBMaXN0T2JqZWN0c1YyQ29tbWFuZElucHV0LFxuICB0eXBlIExpc3RPYmplY3RzVjJDb21tYW5kT3V0cHV0LFxuICBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kLFxuICB0eXBlIExpc3RPYmplY3RWZXJzaW9uc0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kT3V0cHV0LFxuICBMaXN0UGFydHNDb21tYW5kLFxuICB0eXBlIExpc3RQYXJ0c0NvbW1hbmRJbnB1dCxcbiAgdHlwZSBMaXN0UGFydHNDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgUHV0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRBY2xDb21tYW5kLFxuICB0eXBlIFB1dEJ1Y2tldEFjbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRCdWNrZXRBY2xDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRDb3JzQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldEVuY3J5cHRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRMb2dnaW5nQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRMb2dnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldExvZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgUHV0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmQsXG4gIHR5cGUgUHV0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRQb2xpY3lDb21tYW5kLFxuICB0eXBlIFB1dEJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRCdWNrZXRQb2xpY3lDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIHR5cGUgUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmQsXG4gIHR5cGUgUHV0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRUYWdnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kT3V0cHV0LFxuICBQdXRCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgdHlwZSBQdXRCdWNrZXRXZWJzaXRlQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dEJ1Y2tldFdlYnNpdGVDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RDb21tYW5kLFxuICB0eXBlIFB1dE9iamVjdENvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRPYmplY3RDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RBY2xDb21tYW5kLFxuICB0eXBlIFB1dE9iamVjdEFjbENvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRPYmplY3RBY2xDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kLFxuICB0eXBlIFB1dE9iamVjdExlZ2FsSG9sZENvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIHR5cGUgUHV0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RSZXRlbnRpb25Db21tYW5kLFxuICB0eXBlIFB1dE9iamVjdFJldGVudGlvbkNvbW1hbmRJbnB1dCxcbiAgdHlwZSBQdXRPYmplY3RSZXRlbnRpb25Db21tYW5kT3V0cHV0LFxuICBQdXRPYmplY3RUYWdnaW5nQ29tbWFuZCxcbiAgdHlwZSBQdXRPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICB0eXBlIFB1dE9iamVjdFRhZ2dpbmdDb21tYW5kT3V0cHV0LFxuICBQdXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIHR5cGUgUHV0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kSW5wdXQsXG4gIHR5cGUgUHV0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kT3V0cHV0LFxuICBSZXN0b3JlT2JqZWN0Q29tbWFuZCxcbiAgdHlwZSBSZXN0b3JlT2JqZWN0Q29tbWFuZElucHV0LFxuICB0eXBlIFJlc3RvcmVPYmplY3RDb21tYW5kT3V0cHV0LFxuICBTZWxlY3RPYmplY3RDb250ZW50Q29tbWFuZCxcbiAgdHlwZSBTZWxlY3RPYmplY3RDb250ZW50Q29tbWFuZElucHV0LFxuICB0eXBlIFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kT3V0cHV0LFxuICBVcGxvYWRQYXJ0Q29tbWFuZCxcbiAgdHlwZSBVcGxvYWRQYXJ0Q29tbWFuZElucHV0LFxuICB0eXBlIFVwbG9hZFBhcnRDb21tYW5kT3V0cHV0LFxuICBVcGxvYWRQYXJ0Q29weUNvbW1hbmQsXG4gIHR5cGUgVXBsb2FkUGFydENvcHlDb21tYW5kSW5wdXQsXG4gIHR5cGUgVXBsb2FkUGFydENvcHlDb21tYW5kT3V0cHV0LFxuICBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZCxcbiAgdHlwZSBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZElucHV0LFxuICB0eXBlIFdyaXRlR2V0T2JqZWN0UmVzcG9uc2VDb21tYW5kT3V0cHV0LFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXMzXCI7XG5pbXBvcnQgeyBnZXRTaWduZWRVcmwgfSBmcm9tIFwiQGF3cy1zZGsvczMtcmVxdWVzdC1wcmVzaWduZXJcIjtcbmltcG9ydCB7XG4gIHR5cGUgSHR0cEhhbmRsZXJPcHRpb25zIGFzIF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICBSZXF1ZXN0UHJlc2lnbmluZ0FyZ3VtZW50cyxcbn0gZnJvbSBcIkBhd3Mtc2RrL3R5cGVzXCI7XG5pbXBvcnQgeyBDb250ZXh0LCBEYXRhLCBFZmZlY3QsIExheWVyLCBSZWFkb25seVJlY29yZCB9IGZyb20gXCJlZmZlY3RcIjtcbmltcG9ydCB7XG4gIEJ1Y2tldEFscmVhZHlFeGlzdHNFcnJvcixcbiAgQnVja2V0QWxyZWFkeU93bmVkQnlZb3VFcnJvcixcbiAgSW52YWxpZE9iamVjdFN0YXRlRXJyb3IsXG4gIE5vU3VjaEJ1Y2tldEVycm9yLFxuICBOb1N1Y2hLZXlFcnJvcixcbiAgTm9TdWNoVXBsb2FkRXJyb3IsXG4gIE5vdEZvdW5kRXJyb3IsXG4gIE9iamVjdEFscmVhZHlJbkFjdGl2ZVRpZXJFcnJvcixcbiAgT2JqZWN0Tm90SW5BY3RpdmVUaWVyRXJyb3IsXG4gIFMzU2VydmljZUVycm9yLFxuICBTZGtFcnJvcixcbiAgVGFnZ2VkRXhjZXB0aW9uLFxufSBmcm9tIFwiLi9FcnJvcnNcIjtcbmltcG9ydCB7XG4gIERlZmF1bHRTM0NsaWVudEluc3RhbmNlTGF5ZXIsXG4gIFMzQ2xpZW50SW5zdGFuY2UsXG4gIFMzQ2xpZW50SW5zdGFuY2VMYXllcixcbn0gZnJvbSBcIi4vUzNDbGllbnRJbnN0YW5jZVwiO1xuaW1wb3J0IHsgRGVmYXVsdFMzQ2xpZW50Q29uZmlnTGF5ZXIgfSBmcm9tIFwiLi9TM0NsaWVudEluc3RhbmNlQ29uZmlnXCI7XG5cbmNvbnN0IGNvbW1hbmRzID0ge1xuICBBYm9ydE11bHRpcGFydFVwbG9hZENvbW1hbmQsXG4gIENvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZCxcbiAgQ29weU9iamVjdENvbW1hbmQsXG4gIENyZWF0ZUJ1Y2tldENvbW1hbmQsXG4gIENyZWF0ZU11bHRpcGFydFVwbG9hZENvbW1hbmQsXG4gIENyZWF0ZVNlc3Npb25Db21tYW5kLFxuICBEZWxldGVCdWNrZXRDb21tYW5kLFxuICBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0Q29yc0NvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldEVuY3J5cHRpb25Db21tYW5kLFxuICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldExpZmVjeWNsZUNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgRGVsZXRlQnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kLFxuICBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kLFxuICBEZWxldGVCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIERlbGV0ZUJ1Y2tldFRhZ2dpbmdDb21tYW5kLFxuICBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgRGVsZXRlT2JqZWN0Q29tbWFuZCxcbiAgRGVsZXRlT2JqZWN0c0NvbW1hbmQsXG4gIERlbGV0ZU9iamVjdFRhZ2dpbmdDb21tYW5kLFxuICBEZWxldGVQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIEdldEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0QWNsQ29tbWFuZCxcbiAgR2V0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldENvcnNDb21tYW5kLFxuICBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0TG9jYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXRMb2dnaW5nQ29tbWFuZCxcbiAgR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0QnVja2V0T3duZXJzaGlwQ29udHJvbHNDb21tYW5kLFxuICBHZXRCdWNrZXRQb2xpY3lDb21tYW5kLFxuICBHZXRCdWNrZXRQb2xpY3lTdGF0dXNDb21tYW5kLFxuICBHZXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmQsXG4gIEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZCxcbiAgR2V0QnVja2V0VGFnZ2luZ0NvbW1hbmQsXG4gIEdldEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kLFxuICBHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZCxcbiAgR2V0T2JqZWN0Q29tbWFuZCxcbiAgR2V0T2JqZWN0QWNsQ29tbWFuZCxcbiAgR2V0T2JqZWN0QXR0cmlidXRlc0NvbW1hbmQsXG4gIEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmQsXG4gIEdldE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgR2V0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZCxcbiAgR2V0T2JqZWN0VGFnZ2luZ0NvbW1hbmQsXG4gIEdldE9iamVjdFRvcnJlbnRDb21tYW5kLFxuICBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmQsXG4gIEhlYWRCdWNrZXRDb21tYW5kLFxuICBIZWFkT2JqZWN0Q29tbWFuZCxcbiAgTGlzdEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zQ29tbWFuZCxcbiAgTGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uc0NvbW1hbmQsXG4gIExpc3RCdWNrZXRzQ29tbWFuZCxcbiAgTGlzdERpcmVjdG9yeUJ1Y2tldHNDb21tYW5kLFxuICBMaXN0TXVsdGlwYXJ0VXBsb2Fkc0NvbW1hbmQsXG4gIExpc3RPYmplY3RzQ29tbWFuZCxcbiAgTGlzdE9iamVjdHNWMkNvbW1hbmQsXG4gIExpc3RPYmplY3RWZXJzaW9uc0NvbW1hbmQsXG4gIExpc3RQYXJ0c0NvbW1hbmQsXG4gIFB1dEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0QWNsQ29tbWFuZCxcbiAgUHV0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldENvcnNDb21tYW5kLFxuICBQdXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0TG9nZ2luZ0NvbW1hbmQsXG4gIFB1dEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbkNvbW1hbmQsXG4gIFB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZCxcbiAgUHV0QnVja2V0UG9saWN5Q29tbWFuZCxcbiAgUHV0QnVja2V0UmVwbGljYXRpb25Db21tYW5kLFxuICBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmQsXG4gIFB1dEJ1Y2tldFRhZ2dpbmdDb21tYW5kLFxuICBQdXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZCxcbiAgUHV0QnVja2V0V2Vic2l0ZUNvbW1hbmQsXG4gIFB1dE9iamVjdENvbW1hbmQsXG4gIFB1dE9iamVjdEFjbENvbW1hbmQsXG4gIFB1dE9iamVjdExlZ2FsSG9sZENvbW1hbmQsXG4gIFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZCxcbiAgUHV0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZCxcbiAgUHV0T2JqZWN0VGFnZ2luZ0NvbW1hbmQsXG4gIFB1dFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZCxcbiAgUmVzdG9yZU9iamVjdENvbW1hbmQsXG4gIFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kLFxuICBVcGxvYWRQYXJ0Q29tbWFuZCxcbiAgVXBsb2FkUGFydENvcHlDb21tYW5kLFxuICBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZCxcbn07XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbW9kZWxzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUzNTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgXzogdW5pcXVlIHN5bWJvbDtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kfVxuICAgKi9cbiAgYWJvcnRNdWx0aXBhcnRVcGxvYWQoXG4gICAgYXJnczogQWJvcnRNdWx0aXBhcnRVcGxvYWRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEFib3J0TXVsdGlwYXJ0VXBsb2FkQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IE5vU3VjaFVwbG9hZEVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIENvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZH1cbiAgICovXG4gIGNvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkKFxuICAgIGFyZ3M6IENvbXBsZXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBDb21wbGV0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDb3B5T2JqZWN0Q29tbWFuZH1cbiAgICovXG4gIGNvcHlPYmplY3QoXG4gICAgYXJnczogQ29weU9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ29weU9iamVjdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBPYmplY3ROb3RJbkFjdGl2ZVRpZXJFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVCdWNrZXRDb21tYW5kfVxuICAgKi9cbiAgY3JlYXRlQnVja2V0KFxuICAgIGFyZ3M6IENyZWF0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgQ3JlYXRlQnVja2V0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEJ1Y2tldEFscmVhZHlFeGlzdHNFcnJvciB8IEJ1Y2tldEFscmVhZHlPd25lZEJ5WW91RXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgQ3JlYXRlTXVsdGlwYXJ0VXBsb2FkQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZU11bHRpcGFydFVwbG9hZChcbiAgICBhcmdzOiBDcmVhdGVNdWx0aXBhcnRVcGxvYWRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIENyZWF0ZU11bHRpcGFydFVwbG9hZENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBDcmVhdGVTZXNzaW9uQ29tbWFuZH1cbiAgICovXG4gIGNyZWF0ZVNlc3Npb24oXG4gICAgYXJnczogQ3JlYXRlU2Vzc2lvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8Q3JlYXRlU2Vzc2lvbkNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgTm9TdWNoQnVja2V0RXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0KFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8RGVsZXRlQnVja2V0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldENvcnNDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0Q29ycyhcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRDb3JzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxEZWxldGVCdWNrZXRDb3JzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldEVuY3J5cHRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0RW5jcnlwdGlvbihcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBEZWxldGVCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldExpZmVjeWNsZUNvbW1hbmR9XG4gICAqL1xuICBkZWxldGVCdWNrZXRMaWZlY3ljbGUoXG4gICAgYXJnczogRGVsZXRlQnVja2V0TGlmZWN5Y2xlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRMaWZlY3ljbGVDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgRGVsZXRlQnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogRGVsZXRlQnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIERlbGV0ZUJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUJ1Y2tldE93bmVyc2hpcENvbnRyb2xzKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRQb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlQnVja2V0UG9saWN5KFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8RGVsZXRlQnVja2V0UG9saWN5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZUJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUJ1Y2tldFJlcGxpY2F0aW9uKFxuICAgIGFyZ3M6IERlbGV0ZUJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRUYWdnaW5nQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUJ1Y2tldFRhZ2dpbmcoXG4gICAgYXJnczogRGVsZXRlQnVja2V0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8RGVsZXRlQnVja2V0VGFnZ2luZ0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVCdWNrZXRXZWJzaXRlQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZUJ1Y2tldFdlYnNpdGUoXG4gICAgYXJnczogRGVsZXRlQnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8RGVsZXRlQnVja2V0V2Vic2l0ZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBEZWxldGVPYmplY3RDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlT2JqZWN0KFxuICAgIGFyZ3M6IERlbGV0ZU9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8RGVsZXRlT2JqZWN0Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU9iamVjdHNDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlT2JqZWN0cyhcbiAgICBhcmdzOiBEZWxldGVPYmplY3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxEZWxldGVPYmplY3RzQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZU9iamVjdFRhZ2dpbmdDb21tYW5kfVxuICAgKi9cbiAgZGVsZXRlT2JqZWN0VGFnZ2luZyhcbiAgICBhcmdzOiBEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxEZWxldGVPYmplY3RUYWdnaW5nQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIERlbGV0ZVB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZH1cbiAgICovXG4gIGRlbGV0ZVB1YmxpY0FjY2Vzc0Jsb2NrKFxuICAgIGFyZ3M6IERlbGV0ZVB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBEZWxldGVQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBnZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBHZXRCdWNrZXRBY2NlbGVyYXRlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0QWNsQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldEFjbChcbiAgICBhcmdzOiBHZXRCdWNrZXRBY2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PEdldEJ1Y2tldEFjbENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogR2V0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRDb3JzQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldENvcnMoXG4gICAgYXJnczogR2V0QnVja2V0Q29yc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0Q29yc0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRFbmNyeXB0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldEVuY3J5cHRpb24oXG4gICAgYXJnczogR2V0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogR2V0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogR2V0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogR2V0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRMb2NhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBnZXRCdWNrZXRMb2NhdGlvbihcbiAgICBhcmdzOiBHZXRCdWNrZXRMb2NhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0TG9jYXRpb25Db21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0TG9nZ2luZ0NvbW1hbmR9XG4gICAqL1xuICBnZXRCdWNrZXRMb2dnaW5nKFxuICAgIGFyZ3M6IEdldEJ1Y2tldExvZ2dpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PEdldEJ1Y2tldExvZ2dpbmdDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZ2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogR2V0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZ2V0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzKFxuICAgIGFyZ3M6IEdldEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRQb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgZ2V0QnVja2V0UG9saWN5KFxuICAgIGFyZ3M6IEdldEJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0UG9saWN5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldFBvbGljeVN0YXR1c0NvbW1hbmR9XG4gICAqL1xuICBnZXRCdWNrZXRQb2xpY3lTdGF0dXMoXG4gICAgYXJnczogR2V0QnVja2V0UG9saWN5U3RhdHVzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRQb2xpY3lTdGF0dXNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kfVxuICAgKi9cbiAgZ2V0QnVja2V0UmVwbGljYXRpb24oXG4gICAgYXJnczogR2V0QnVja2V0UmVwbGljYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIEdldEJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldFJlcXVlc3RQYXltZW50KFxuICAgIGFyZ3M6IEdldEJ1Y2tldFJlcXVlc3RQYXltZW50Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBHZXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRUYWdnaW5nQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldFRhZ2dpbmcoXG4gICAgYXJnczogR2V0QnVja2V0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0VGFnZ2luZ0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRWZXJzaW9uaW5nQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldFZlcnNpb25pbmcoXG4gICAgYXJnczogR2V0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRCdWNrZXRXZWJzaXRlQ29tbWFuZH1cbiAgICovXG4gIGdldEJ1Y2tldFdlYnNpdGUoXG4gICAgYXJnczogR2V0QnVja2V0V2Vic2l0ZUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0QnVja2V0V2Vic2l0ZUNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRPYmplY3RDb21tYW5kfVxuICAgKi9cbiAgZ2V0T2JqZWN0KFxuICAgIGFyZ3M6IEdldE9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogeyByZWFkb25seSBwcmVzaWduZWQ/OiBmYWxzZSB9ICYgX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0T2JqZWN0Q29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IEludmFsaWRPYmplY3RTdGF0ZUVycm9yIHwgTm9TdWNoS2V5RXJyb3JcbiAgPjtcbiAgZ2V0T2JqZWN0KFxuICAgIGFyZ3M6IEdldE9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogeyByZWFkb25seSBwcmVzaWduZWQ6IHRydWUgfSAmIFJlcXVlc3RQcmVzaWduaW5nQXJndW1lbnRzLFxuICApOiBFZmZlY3QuRWZmZWN0PHN0cmluZywgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIEdldE9iamVjdEFjbENvbW1hbmR9XG4gICAqL1xuICBnZXRPYmplY3RBY2woXG4gICAgYXJnczogR2V0T2JqZWN0QWNsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxHZXRPYmplY3RBY2xDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IE5vU3VjaEtleUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0QXR0cmlidXRlc0NvbW1hbmR9XG4gICAqL1xuICBnZXRPYmplY3RBdHRyaWJ1dGVzKFxuICAgIGFyZ3M6IEdldE9iamVjdEF0dHJpYnV0ZXNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PEdldE9iamVjdEF0dHJpYnV0ZXNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IE5vU3VjaEtleUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0TGVnYWxIb2xkQ29tbWFuZH1cbiAgICovXG4gIGdldE9iamVjdExlZ2FsSG9sZChcbiAgICBhcmdzOiBHZXRPYmplY3RMZWdhbEhvbGRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PEdldE9iamVjdExlZ2FsSG9sZENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBnZXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBHZXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0T2JqZWN0TG9ja0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgR2V0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZH1cbiAgICovXG4gIGdldE9iamVjdFJldGVudGlvbihcbiAgICBhcmdzOiBHZXRPYmplY3RSZXRlbnRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PEdldE9iamVjdFJldGVudGlvbkNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRPYmplY3RUYWdnaW5nQ29tbWFuZH1cbiAgICovXG4gIGdldE9iamVjdFRhZ2dpbmcoXG4gICAgYXJnczogR2V0T2JqZWN0VGFnZ2luZ0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0T2JqZWN0VGFnZ2luZ0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRPYmplY3RUb3JyZW50Q29tbWFuZH1cbiAgICovXG4gIGdldE9iamVjdFRvcnJlbnQoXG4gICAgYXJnczogR2V0T2JqZWN0VG9ycmVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8R2V0T2JqZWN0VG9ycmVudENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmR9XG4gICAqL1xuICBnZXRQdWJsaWNBY2Nlc3NCbG9jayhcbiAgICBhcmdzOiBHZXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgR2V0UHVibGljQWNjZXNzQmxvY2tDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgSGVhZEJ1Y2tldENvbW1hbmR9XG4gICAqL1xuICBoZWFkQnVja2V0KFxuICAgIGFyZ3M6IEhlYWRCdWNrZXRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PEhlYWRCdWNrZXRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IE5vdEZvdW5kRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBIZWFkT2JqZWN0Q29tbWFuZH1cbiAgICovXG4gIGhlYWRPYmplY3QoXG4gICAgYXJnczogSGVhZE9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8SGVhZE9iamVjdENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgTm90Rm91bmRFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uc0NvbW1hbmR9XG4gICAqL1xuICBsaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnMoXG4gICAgYXJnczogTGlzdEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbnNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25zQ29tbWFuZH1cbiAgICovXG4gIGxpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9ucyhcbiAgICBhcmdzOiBMaXN0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zKFxuICAgIGFyZ3M6IExpc3RCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RCdWNrZXRNZXRyaWNzQ29uZmlndXJhdGlvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9ucyhcbiAgICBhcmdzOiBMaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBMaXN0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25zQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RCdWNrZXRzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RCdWNrZXRzKFxuICAgIGFyZ3M6IExpc3RCdWNrZXRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxMaXN0QnVja2V0c0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0RGlyZWN0b3J5QnVja2V0c0NvbW1hbmR9XG4gICAqL1xuICBsaXN0RGlyZWN0b3J5QnVja2V0cyhcbiAgICBhcmdzOiBMaXN0RGlyZWN0b3J5QnVja2V0c0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgTGlzdERpcmVjdG9yeUJ1Y2tldHNDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE11bHRpcGFydFVwbG9hZHMoXG4gICAgYXJnczogTGlzdE11bHRpcGFydFVwbG9hZHNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIExpc3RNdWx0aXBhcnRVcGxvYWRzQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RPYmplY3RzQ29tbWFuZH1cbiAgICovXG4gIGxpc3RPYmplY3RzKFxuICAgIGFyZ3M6IExpc3RPYmplY3RzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxMaXN0T2JqZWN0c0NvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgTm9TdWNoQnVja2V0RXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0T2JqZWN0c1YyQ29tbWFuZH1cbiAgICovXG4gIGxpc3RPYmplY3RzVjIoXG4gICAgYXJnczogTGlzdE9iamVjdHNWMkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8TGlzdE9iamVjdHNWMkNvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgTm9TdWNoQnVja2V0RXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBMaXN0T2JqZWN0VmVyc2lvbnNDb21tYW5kfVxuICAgKi9cbiAgbGlzdE9iamVjdFZlcnNpb25zKFxuICAgIGFyZ3M6IExpc3RPYmplY3RWZXJzaW9uc0NvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8TGlzdE9iamVjdFZlcnNpb25zQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIExpc3RQYXJ0c0NvbW1hbmR9XG4gICAqL1xuICBsaXN0UGFydHMoXG4gICAgYXJnczogTGlzdFBhcnRzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxMaXN0UGFydHNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcHV0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogUHV0QnVja2V0QWNjZWxlcmF0ZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldEFjY2VsZXJhdGVDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldEFjbENvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRBY2woXG4gICAgYXJnczogUHV0QnVja2V0QWNsQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxQdXRCdWNrZXRBY2xDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0QW5hbHl0aWNzQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRBbmFseXRpY3NDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldEFuYWx5dGljc0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0Q29yc0NvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRDb3JzKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldENvcnNDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldENvcnNDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0RW5jcnlwdGlvbkNvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRFbmNyeXB0aW9uKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEVuY3J5cHRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldEVuY3J5cHRpb25Db21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0SW50ZWxsaWdlbnRUaWVyaW5nQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRJbnRlbGxpZ2VudFRpZXJpbmdDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldEludGVsbGlnZW50VGllcmluZ0NvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0SW52ZW50b3J5Q29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRJbnZlbnRvcnlDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldEludmVudG9yeUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0TGlmZWN5Y2xlQ29uZmlndXJhdGlvbkNvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRMaWZlY3ljbGVDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldExpZmVjeWNsZUNvbmZpZ3VyYXRpb25Db21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0TG9nZ2luZ0NvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRMb2dnaW5nKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldExvZ2dpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldExvZ2dpbmdDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcHV0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb24oXG4gICAgYXJnczogUHV0QnVja2V0TWV0cmljc0NvbmZpZ3VyYXRpb25Db21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFxuICAgIFB1dEJ1Y2tldE1ldHJpY3NDb25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldE5vdGlmaWNhdGlvbkNvbmZpZ3VyYXRpb25Db21tYW5kfVxuICAgKi9cbiAgcHV0QnVja2V0Tm90aWZpY2F0aW9uQ29uZmlndXJhdGlvbihcbiAgICBhcmdzOiBQdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXROb3RpZmljYXRpb25Db25maWd1cmF0aW9uQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZH1cbiAgICovXG4gIHB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldE93bmVyc2hpcENvbnRyb2xzQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXRPd25lcnNoaXBDb250cm9sc0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRQb2xpY3lDb21tYW5kfVxuICAgKi9cbiAgcHV0QnVja2V0UG9saWN5KFxuICAgIGFyZ3M6IFB1dEJ1Y2tldFBvbGljeUNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8UHV0QnVja2V0UG9saWN5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dEJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZH1cbiAgICovXG4gIHB1dEJ1Y2tldFJlcGxpY2F0aW9uKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldFJlcGxpY2F0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRCdWNrZXRSZXBsaWNhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRSZXF1ZXN0UGF5bWVudChcbiAgICBhcmdzOiBQdXRCdWNrZXRSZXF1ZXN0UGF5bWVudENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUHV0QnVja2V0UmVxdWVzdFBheW1lbnRDb21tYW5kT3V0cHV0LFxuICAgIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0VGFnZ2luZ0NvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRUYWdnaW5nKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldFRhZ2dpbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldFRhZ2dpbmdDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0VmVyc2lvbmluZ0NvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRWZXJzaW9uaW5nKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldFZlcnNpb25pbmdDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0QnVja2V0V2Vic2l0ZUNvbW1hbmR9XG4gICAqL1xuICBwdXRCdWNrZXRXZWJzaXRlKFxuICAgIGFyZ3M6IFB1dEJ1Y2tldFdlYnNpdGVDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dEJ1Y2tldFdlYnNpdGVDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0T2JqZWN0Q29tbWFuZH1cbiAgICovXG4gIHB1dE9iamVjdChcbiAgICBhcmdzOiBQdXRPYmplY3RDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IHsgcmVhZG9ubHkgcHJlc2lnbmVkPzogZmFsc2UgfSAmIF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dE9iamVjdENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgUzNTZXJ2aWNlRXJyb3I+O1xuICBwdXRPYmplY3QoXG4gICAgYXJnczogUHV0T2JqZWN0Q29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiB7IHJlYWRvbmx5IHByZXNpZ25lZDogdHJ1ZSB9ICYgUmVxdWVzdFByZXNpZ25pbmdBcmd1bWVudHMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8c3RyaW5nLCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgUHV0T2JqZWN0QWNsQ29tbWFuZH1cbiAgICovXG4gIHB1dE9iamVjdEFjbChcbiAgICBhcmdzOiBQdXRPYmplY3RBY2xDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFB1dE9iamVjdEFjbENvbW1hbmRPdXRwdXQsIFNka0Vycm9yIHwgTm9TdWNoS2V5RXJyb3I+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRPYmplY3RMZWdhbEhvbGRDb21tYW5kfVxuICAgKi9cbiAgcHV0T2JqZWN0TGVnYWxIb2xkKFxuICAgIGFyZ3M6IFB1dE9iamVjdExlZ2FsSG9sZENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8UHV0T2JqZWN0TGVnYWxIb2xkQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZH1cbiAgICovXG4gIHB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uKFxuICAgIGFyZ3M6IFB1dE9iamVjdExvY2tDb25maWd1cmF0aW9uQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRPYmplY3RMb2NrQ29uZmlndXJhdGlvbkNvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBQdXRPYmplY3RSZXRlbnRpb25Db21tYW5kfVxuICAgKi9cbiAgcHV0T2JqZWN0UmV0ZW50aW9uKFxuICAgIGFyZ3M6IFB1dE9iamVjdFJldGVudGlvbkNvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8UHV0T2JqZWN0UmV0ZW50aW9uQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dE9iamVjdFRhZ2dpbmdDb21tYW5kfVxuICAgKi9cbiAgcHV0T2JqZWN0VGFnZ2luZyhcbiAgICBhcmdzOiBQdXRPYmplY3RUYWdnaW5nQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxQdXRPYmplY3RUYWdnaW5nQ29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFB1dFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZH1cbiAgICovXG4gIHB1dFB1YmxpY0FjY2Vzc0Jsb2NrKFxuICAgIGFyZ3M6IFB1dFB1YmxpY0FjY2Vzc0Jsb2NrQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBQdXRQdWJsaWNBY2Nlc3NCbG9ja0NvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvclxuICA+O1xuXG4gIC8qKlxuICAgKiBAc2VlIHtAbGluayBSZXN0b3JlT2JqZWN0Q29tbWFuZH1cbiAgICovXG4gIHJlc3RvcmVPYmplY3QoXG4gICAgYXJnczogUmVzdG9yZU9iamVjdENvbW1hbmRJbnB1dCxcbiAgICBvcHRpb25zPzogX19IdHRwSGFuZGxlck9wdGlvbnMsXG4gICk6IEVmZmVjdC5FZmZlY3Q8XG4gICAgUmVzdG9yZU9iamVjdENvbW1hbmRPdXRwdXQsXG4gICAgU2RrRXJyb3IgfCBPYmplY3RBbHJlYWR5SW5BY3RpdmVUaWVyRXJyb3JcbiAgPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgU2VsZWN0T2JqZWN0Q29udGVudENvbW1hbmR9XG4gICAqL1xuICBzZWxlY3RPYmplY3RDb250ZW50KFxuICAgIGFyZ3M6IFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFNlbGVjdE9iamVjdENvbnRlbnRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBsb2FkUGFydENvbW1hbmR9XG4gICAqL1xuICB1cGxvYWRQYXJ0KFxuICAgIGFyZ3M6IFVwbG9hZFBhcnRDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFVwbG9hZFBhcnRDb21tYW5kT3V0cHV0LCBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yPjtcblxuICAvKipcbiAgICogQHNlZSB7QGxpbmsgVXBsb2FkUGFydENvcHlDb21tYW5kfVxuICAgKi9cbiAgdXBsb2FkUGFydENvcHkoXG4gICAgYXJnczogVXBsb2FkUGFydENvcHlDb21tYW5kSW5wdXQsXG4gICAgb3B0aW9ucz86IF9fSHR0cEhhbmRsZXJPcHRpb25zLFxuICApOiBFZmZlY3QuRWZmZWN0PFVwbG9hZFBhcnRDb3B5Q29tbWFuZE91dHB1dCwgU2RrRXJyb3IgfCBTM1NlcnZpY2VFcnJvcj47XG5cbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIFdyaXRlR2V0T2JqZWN0UmVzcG9uc2VDb21tYW5kfVxuICAgKi9cbiAgd3JpdGVHZXRPYmplY3RSZXNwb25zZShcbiAgICBhcmdzOiBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZElucHV0LFxuICAgIG9wdGlvbnM/OiBfX0h0dHBIYW5kbGVyT3B0aW9ucyxcbiAgKTogRWZmZWN0LkVmZmVjdDxcbiAgICBXcml0ZUdldE9iamVjdFJlc3BvbnNlQ29tbWFuZE91dHB1dCxcbiAgICBTZGtFcnJvciB8IFMzU2VydmljZUVycm9yXG4gID47XG59XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgdGFnc1xuICovXG5leHBvcnQgY29uc3QgUzNTZXJ2aWNlID0gQ29udGV4dC5HZW5lcmljVGFnPFMzU2VydmljZT4oXG4gIFwiQGVmZmVjdC1hd3MvY2xpZW50LXMzL1MzU2VydmljZVwiLFxuKTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VTM1NlcnZpY2UgPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICBjb25zdCBjbGllbnQgPSB5aWVsZCogXyhTM0NsaWVudEluc3RhbmNlKTtcblxuICBjb25zdCBjYXRjaEVycm9ycyA9IChlOiB1bmtub3duKSA9PiB7XG4gICAgaWYgKGUgaW5zdGFuY2VvZiBTM1NlcnZpY2VFeGNlcHRpb24pIHtcbiAgICAgIGNvbnN0IFNlcnZpY2VFeGNlcHRpb24gPSBEYXRhLnRhZ2dlZDxUYWdnZWRFeGNlcHRpb248UzNTZXJ2aWNlRXhjZXB0aW9uPj4oXG4gICAgICAgIGUubmFtZSxcbiAgICAgICk7XG5cbiAgICAgIHJldHVybiBTZXJ2aWNlRXhjZXB0aW9uKHtcbiAgICAgICAgLi4uZSxcbiAgICAgICAgbWVzc2FnZTogZS5tZXNzYWdlLFxuICAgICAgICBzdGFjazogZS5zdGFjayxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoZSBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICByZXR1cm4gU2RrRXJyb3Ioe1xuICAgICAgICAuLi5lLFxuICAgICAgICBuYW1lOiBcIlNka0Vycm9yXCIsXG4gICAgICAgIG1lc3NhZ2U6IGUubWVzc2FnZSxcbiAgICAgICAgc3RhY2s6IGUuc3RhY2ssXG4gICAgICB9KTtcbiAgICB9XG4gICAgdGhyb3cgZTtcbiAgfTtcblxuICByZXR1cm4gUmVhZG9ubHlSZWNvcmQudG9FbnRyaWVzKGNvbW1hbmRzKS5yZWR1Y2UoKGFjYywgW2NvbW1hbmRdKSA9PiB7XG4gICAgY29uc3QgQ29tbWFuZEN0b3IgPSBjb21tYW5kc1tjb21tYW5kXSBhcyBhbnk7XG4gICAgY29uc3QgbWV0aG9kSW1wbCA9IChcbiAgICAgIGFyZ3M6IGFueSxcbiAgICAgIG9wdGlvbnM/OlxuICAgICAgICB8ICh7IHJlYWRvbmx5IHByZXNpZ25lZD86IGZhbHNlIH0gJiBfX0h0dHBIYW5kbGVyT3B0aW9ucylcbiAgICAgICAgfCAoeyByZWFkb25seSBwcmVzaWduZWQ6IHRydWUgfSAmIFJlcXVlc3RQcmVzaWduaW5nQXJndW1lbnRzKSxcbiAgICApID0+XG4gICAgICBvcHRpb25zPy5wcmVzaWduZWRcbiAgICAgICAgPyBFZmZlY3QudHJ5UHJvbWlzZSh7XG4gICAgICAgICAgICB0cnk6ICgpID0+XG4gICAgICAgICAgICAgIGdldFNpZ25lZFVybChjbGllbnQgYXMgYW55LCBuZXcgQ29tbWFuZEN0b3IoYXJncyksIG9wdGlvbnMpLFxuICAgICAgICAgICAgY2F0Y2g6IGNhdGNoRXJyb3JzLFxuICAgICAgICAgIH0pXG4gICAgICAgIDogRWZmZWN0LnRyeVByb21pc2Uoe1xuICAgICAgICAgICAgdHJ5OiAoKSA9PiBjbGllbnQuc2VuZChuZXcgQ29tbWFuZEN0b3IoYXJncyksIG9wdGlvbnMpLFxuICAgICAgICAgICAgY2F0Y2g6IGNhdGNoRXJyb3JzLFxuICAgICAgICAgIH0pO1xuICAgIGNvbnN0IG1ldGhvZE5hbWUgPSAoY29tbWFuZFswXS50b0xvd2VyQ2FzZSgpICsgY29tbWFuZC5zbGljZSgxKSkucmVwbGFjZShcbiAgICAgIC9Db21tYW5kJC8sXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgcmV0dXJuIHsgLi4uYWNjLCBbbWV0aG9kTmFtZV06IG1ldGhvZEltcGwgfTtcbiAgfSwge30pIGFzIFMzU2VydmljZTtcbn0pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgQmFzZVMzU2VydmljZUxheWVyID0gTGF5ZXIuZWZmZWN0KFMzU2VydmljZSwgbWFrZVMzU2VydmljZSk7XG5cbi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKiBAY2F0ZWdvcnkgbGF5ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBTM1NlcnZpY2VMYXllciA9IEJhc2VTM1NlcnZpY2VMYXllci5waXBlKFxuICBMYXllci5wcm92aWRlKFMzQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGxheWVyc1xuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFMzU2VydmljZUxheWVyID0gUzNTZXJ2aWNlTGF5ZXIucGlwZShcbiAgTGF5ZXIucHJvdmlkZShEZWZhdWx0UzNDbGllbnRDb25maWdMYXllciksXG4pO1xuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLSBEYW5nZXIgWm9uZSAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vKipcbiAqIEBzaW5jZSAwLjEuMFxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VTM1NlcnZpY2VFZmZlY3QgPSBtYWtlUzNTZXJ2aWNlO1xuXG4vKipcbiAqIEBzaW5jZSAwLjEuMFxuICogQGRlcHJlY2F0ZWRcbiAqL1xuZXhwb3J0IGNvbnN0IFMzU2VydmljZUVmZmVjdCA9IEJhc2VTM1NlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoUzNDbGllbnRJbnN0YW5jZUxheWVyKSxcbik7XG5cbi8qKlxuICogQHNpbmNlIDAuMS4wXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY29uc3QgRGVmYXVsdFMzU2VydmljZUVmZmVjdCA9IEJhc2VTM1NlcnZpY2VFZmZlY3QucGlwZShcbiAgRWZmZWN0LnByb3ZpZGUoRGVmYXVsdFMzQ2xpZW50SW5zdGFuY2VMYXllciksXG4pO1xuIl19
package/lib/esm/Errors.js CHANGED
@@ -1,4 +1,4 @@
1
1
  import * as Data from "effect/Data";
2
2
  export const S3ServiceError = Data.tagged("S3ServiceError");
3
3
  export const SdkError = Data.tagged("SdkError");
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQztBQVNwQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBaUIsZ0JBQWdCLENBQUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBVyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFMzU2VydmljZUV4Y2VwdGlvbiB9IGZyb20gXCJAYXdzLXNkay9jbGllbnQtczNcIjtcbmltcG9ydCAqIGFzIERhdGEgZnJvbSBcImVmZmVjdC9EYXRhXCI7XG5cbmV4cG9ydCB0eXBlIFRhZ2dlZEV4Y2VwdGlvbjxUIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfT4gPSBUICYge1xuICByZWFkb25seSBfdGFnOiBUW1wibmFtZVwiXTtcbn07XG5cbmV4cG9ydCB0eXBlIFMzU2VydmljZUVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPFxuICBTM1NlcnZpY2VFeGNlcHRpb24gJiB7IG5hbWU6IFwiUzNTZXJ2aWNlRXJyb3JcIiB9XG4+O1xuZXhwb3J0IGNvbnN0IFMzU2VydmljZUVycm9yID0gRGF0YS50YWdnZWQ8UzNTZXJ2aWNlRXJyb3I+KFwiUzNTZXJ2aWNlRXJyb3JcIik7XG5leHBvcnQgdHlwZSBTZGtFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxFcnJvciAmIHsgbmFtZTogXCJTZGtFcnJvclwiIH0+O1xuZXhwb3J0IGNvbnN0IFNka0Vycm9yID0gRGF0YS50YWdnZWQ8U2RrRXJyb3I+KFwiU2RrRXJyb3JcIik7XG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL0Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQSxPQUFPLEtBQUssSUFBSSxNQUFNLGFBQWEsQ0FBQztBQXNCcEMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQWlCLGdCQUFnQixDQUFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQVcsVUFBVSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIFMzU2VydmljZUV4Y2VwdGlvbixcbiAgQnVja2V0QWxyZWFkeUV4aXN0cyxcbiAgQnVja2V0QWxyZWFkeU93bmVkQnlZb3UsXG4gIEludmFsaWRPYmplY3RTdGF0ZSxcbiAgTm9TdWNoQnVja2V0LFxuICBOb1N1Y2hLZXksXG4gIE5vU3VjaFVwbG9hZCxcbiAgTm90Rm91bmQsXG4gIE9iamVjdEFscmVhZHlJbkFjdGl2ZVRpZXJFcnJvciBhcyBPYmplY3RBbHJlYWR5SW5BY3RpdmVUaWVyRXhjZXB0aW9uLFxuICBPYmplY3ROb3RJbkFjdGl2ZVRpZXJFcnJvciBhcyBPYmplY3ROb3RJbkFjdGl2ZVRpZXJFeGNlcHRpb24sXG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtczNcIjtcbmltcG9ydCAqIGFzIERhdGEgZnJvbSBcImVmZmVjdC9EYXRhXCI7XG5cbmV4cG9ydCB0eXBlIFRhZ2dlZEV4Y2VwdGlvbjxUIGV4dGVuZHMgeyBuYW1lOiBzdHJpbmcgfT4gPSBUICYge1xuICByZWFkb25seSBfdGFnOiBUW1wibmFtZVwiXTtcbn07XG5cbmV4cG9ydCB0eXBlIEJ1Y2tldEFscmVhZHlFeGlzdHNFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxCdWNrZXRBbHJlYWR5RXhpc3RzPjtcbmV4cG9ydCB0eXBlIEJ1Y2tldEFscmVhZHlPd25lZEJ5WW91RXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248QnVja2V0QWxyZWFkeU93bmVkQnlZb3U+O1xuZXhwb3J0IHR5cGUgSW52YWxpZE9iamVjdFN0YXRlRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248SW52YWxpZE9iamVjdFN0YXRlPjtcbmV4cG9ydCB0eXBlIE5vU3VjaEJ1Y2tldEVycm9yID0gVGFnZ2VkRXhjZXB0aW9uPE5vU3VjaEJ1Y2tldD47XG5leHBvcnQgdHlwZSBOb1N1Y2hLZXlFcnJvciA9IFRhZ2dlZEV4Y2VwdGlvbjxOb1N1Y2hLZXk+O1xuZXhwb3J0IHR5cGUgTm9TdWNoVXBsb2FkRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Tm9TdWNoVXBsb2FkPjtcbmV4cG9ydCB0eXBlIE5vdEZvdW5kRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248Tm90Rm91bmQ+O1xuZXhwb3J0IHR5cGUgT2JqZWN0QWxyZWFkeUluQWN0aXZlVGllckVycm9yID1cbiAgVGFnZ2VkRXhjZXB0aW9uPE9iamVjdEFscmVhZHlJbkFjdGl2ZVRpZXJFeGNlcHRpb24+O1xuZXhwb3J0IHR5cGUgT2JqZWN0Tm90SW5BY3RpdmVUaWVyRXJyb3IgPVxuICBUYWdnZWRFeGNlcHRpb248T2JqZWN0Tm90SW5BY3RpdmVUaWVyRXhjZXB0aW9uPjtcblxuZXhwb3J0IHR5cGUgUzNTZXJ2aWNlRXJyb3IgPSBUYWdnZWRFeGNlcHRpb248XG4gIFMzU2VydmljZUV4Y2VwdGlvbiAmIHsgbmFtZTogXCJTM1NlcnZpY2VFcnJvclwiIH1cbj47XG5leHBvcnQgY29uc3QgUzNTZXJ2aWNlRXJyb3IgPSBEYXRhLnRhZ2dlZDxTM1NlcnZpY2VFcnJvcj4oXCJTM1NlcnZpY2VFcnJvclwiKTtcbmV4cG9ydCB0eXBlIFNka0Vycm9yID0gVGFnZ2VkRXhjZXB0aW9uPEVycm9yICYgeyBuYW1lOiBcIlNka0Vycm9yXCIgfT47XG5leHBvcnQgY29uc3QgU2RrRXJyb3IgPSBEYXRhLnRhZ2dlZDxTZGtFcnJvcj4oXCJTZGtFcnJvclwiKTtcbiJdfQ==
@@ -17,11 +17,21 @@ export const makeDefaultS3ClientInstanceConfig = Effect.gen(function* (_) {
17
17
  const runSync = Runtime.runSync(runtime);
18
18
  return {
19
19
  logger: {
20
- info: (m) => Effect.logInfo(m).pipe(runSync),
21
- warn: (m) => Effect.logWarning(m).pipe(runSync),
22
- error: (m) => Effect.logError(m).pipe(runSync),
23
- debug: (m) => Effect.logDebug(m).pipe(runSync),
24
- trace: (m) => Effect.logTrace(m).pipe(runSync),
20
+ info(m) {
21
+ Effect.logInfo(m).pipe(runSync);
22
+ },
23
+ warn(m) {
24
+ Effect.logWarning(m).pipe(runSync);
25
+ },
26
+ error(m) {
27
+ Effect.logError(m).pipe(runSync);
28
+ },
29
+ debug(m) {
30
+ Effect.logDebug(m).pipe(runSync);
31
+ },
32
+ trace(m) {
33
+ Effect.logTrace(m).pipe(runSync);
34
+ },
25
35
  },
26
36
  };
27
37
  });
@@ -30,4 +40,4 @@ export const makeDefaultS3ClientInstanceConfig = Effect.gen(function* (_) {
30
40
  * @category layers
31
41
  */
32
42
  export const DefaultS3ClientConfigLayer = Layer.effect(S3ClientInstanceConfig, makeDefaultS3ClientInstanceConfig);
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUzNDbGllbnRJbnN0YW5jZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TM0NsaWVudEluc3RhbmNlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sS0FBSyxPQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxLQUFLLEtBQUssTUFBTSxjQUFjLENBQUM7QUFDdEMsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQzs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDckQsOENBQThDLENBQy9DLEVBQTBDO0NBQUc7QUFFOUM7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQzVDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNyQixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBUyxDQUFDLENBQUM7SUFDbEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDNUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDL0MsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDOUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDOUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDL0M7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDLENBQUM7QUFFTDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUNwRCxzQkFBc0IsRUFDdEIsaUNBQWlDLENBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBzaW5jZSAxLjAuMFxuICovXG5pbXBvcnQgdHlwZSB7IFMzQ2xpZW50Q29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1zM1wiO1xuaW1wb3J0ICogYXMgQ29udGV4dCBmcm9tIFwiZWZmZWN0L0NvbnRleHRcIjtcbmltcG9ydCAqIGFzIEVmZmVjdCBmcm9tIFwiZWZmZWN0L0VmZmVjdFwiO1xuaW1wb3J0ICogYXMgTGF5ZXIgZnJvbSBcImVmZmVjdC9MYXllclwiO1xuaW1wb3J0ICogYXMgUnVudGltZSBmcm9tIFwiZWZmZWN0L1J1bnRpbWVcIjtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSB0YWdzXG4gKi9cbmV4cG9ydCBjbGFzcyBTM0NsaWVudEluc3RhbmNlQ29uZmlnIGV4dGVuZHMgQ29udGV4dC5UYWcoXG4gIFwiQGVmZmVjdC1hd3MvY2xpZW50LXMzL1MzQ2xpZW50SW5zdGFuY2VDb25maWdcIixcbik8UzNDbGllbnRJbnN0YW5jZUNvbmZpZywgUzNDbGllbnRDb25maWc+KCkge31cblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBjb25zdHJ1Y3RvcnNcbiAqL1xuZXhwb3J0IGNvbnN0IG1ha2VEZWZhdWx0UzNDbGllbnRJbnN0YW5jZUNvbmZpZzogRWZmZWN0LkVmZmVjdDxTM0NsaWVudENvbmZpZz4gPVxuICBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoXykge1xuICAgIGNvbnN0IHJ1bnRpbWUgPSB5aWVsZCogXyhFZmZlY3QucnVudGltZTxuZXZlcj4oKSk7XG4gICAgY29uc3QgcnVuU3luYyA9IFJ1bnRpbWUucnVuU3luYyhydW50aW1lKTtcblxuICAgIHJldHVybiB7XG4gICAgICBsb2dnZXI6IHtcbiAgICAgICAgaW5mbzogKG0pID0+IEVmZmVjdC5sb2dJbmZvKG0pLnBpcGUocnVuU3luYyksXG4gICAgICAgIHdhcm46IChtKSA9PiBFZmZlY3QubG9nV2FybmluZyhtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgICBlcnJvcjogKG0pID0+IEVmZmVjdC5sb2dFcnJvcihtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgICBkZWJ1ZzogKG0pID0+IEVmZmVjdC5sb2dEZWJ1ZyhtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgICB0cmFjZTogKG0pID0+IEVmZmVjdC5sb2dUcmFjZShtKS5waXBlKHJ1blN5bmMpLFxuICAgICAgfSxcbiAgICB9O1xuICB9KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTM0NsaWVudENvbmZpZ0xheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBTM0NsaWVudEluc3RhbmNlQ29uZmlnLFxuICBtYWtlRGVmYXVsdFMzQ2xpZW50SW5zdGFuY2VDb25maWcsXG4pO1xuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUzNDbGllbnRJbnN0YW5jZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TM0NsaWVudEluc3RhbmNlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sS0FBSyxPQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxLQUFLLEtBQUssTUFBTSxjQUFjLENBQUM7QUFDdEMsT0FBTyxLQUFLLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQzs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsT0FBTyxDQUFDLEdBQUcsQ0FDckQsOENBQThDLENBQy9DLEVBQTBDO0NBQUc7QUFFOUM7OztHQUdHO0FBQ0gsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQzVDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztJQUNyQixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBUyxDQUFDLENBQUM7SUFDbEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUV6QyxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sSUFBSSxDQUFDLENBQUM7Z0JBQ0osTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDO2dCQUNKLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLENBQUM7WUFDRCxLQUFLLENBQUMsQ0FBQztnQkFDTCxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBQ0QsS0FBSyxDQUFDLENBQUM7Z0JBQ0wsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUNELEtBQUssQ0FBQyxDQUFDO2dCQUNMLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ25DLENBQUM7U0FDRjtLQUNGLENBQUM7QUFDSixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQ3BELHNCQUFzQixFQUN0QixpQ0FBaUMsQ0FDbEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHNpbmNlIDEuMC4wXG4gKi9cbmltcG9ydCB0eXBlIHsgUzNDbGllbnRDb25maWcgfSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LXMzXCI7XG5pbXBvcnQgKiBhcyBDb250ZXh0IGZyb20gXCJlZmZlY3QvQ29udGV4dFwiO1xuaW1wb3J0ICogYXMgRWZmZWN0IGZyb20gXCJlZmZlY3QvRWZmZWN0XCI7XG5pbXBvcnQgKiBhcyBMYXllciBmcm9tIFwiZWZmZWN0L0xheWVyXCI7XG5pbXBvcnQgKiBhcyBSdW50aW1lIGZyb20gXCJlZmZlY3QvUnVudGltZVwiO1xuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IHRhZ3NcbiAqL1xuZXhwb3J0IGNsYXNzIFMzQ2xpZW50SW5zdGFuY2VDb25maWcgZXh0ZW5kcyBDb250ZXh0LlRhZyhcbiAgXCJAZWZmZWN0LWF3cy9jbGllbnQtczMvUzNDbGllbnRJbnN0YW5jZUNvbmZpZ1wiLFxuKTxTM0NsaWVudEluc3RhbmNlQ29uZmlnLCBTM0NsaWVudENvbmZpZz4oKSB7fVxuXG4vKipcbiAqIEBzaW5jZSAxLjAuMFxuICogQGNhdGVnb3J5IGNvbnN0cnVjdG9yc1xuICovXG5leHBvcnQgY29uc3QgbWFrZURlZmF1bHRTM0NsaWVudEluc3RhbmNlQ29uZmlnOiBFZmZlY3QuRWZmZWN0PFMzQ2xpZW50Q29uZmlnPiA9XG4gIEVmZmVjdC5nZW4oZnVuY3Rpb24qIChfKSB7XG4gICAgY29uc3QgcnVudGltZSA9IHlpZWxkKiBfKEVmZmVjdC5ydW50aW1lPG5ldmVyPigpKTtcbiAgICBjb25zdCBydW5TeW5jID0gUnVudGltZS5ydW5TeW5jKHJ1bnRpbWUpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvZ2dlcjoge1xuICAgICAgICBpbmZvKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nSW5mbyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICB3YXJuKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nV2FybmluZyhtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcihtKSB7XG4gICAgICAgICAgRWZmZWN0LmxvZ0Vycm9yKG0pLnBpcGUocnVuU3luYyk7XG4gICAgICAgIH0sXG4gICAgICAgIGRlYnVnKG0pIHtcbiAgICAgICAgICBFZmZlY3QubG9nRGVidWcobSkucGlwZShydW5TeW5jKTtcbiAgICAgICAgfSxcbiAgICAgICAgdHJhY2UobSkge1xuICAgICAgICAgIEVmZmVjdC5sb2dUcmFjZShtKS5waXBlKHJ1blN5bmMpO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9KTtcblxuLyoqXG4gKiBAc2luY2UgMS4wLjBcbiAqIEBjYXRlZ29yeSBsYXllcnNcbiAqL1xuZXhwb3J0IGNvbnN0IERlZmF1bHRTM0NsaWVudENvbmZpZ0xheWVyID0gTGF5ZXIuZWZmZWN0KFxuICBTM0NsaWVudEluc3RhbmNlQ29uZmlnLFxuICBtYWtlRGVmYXVsdFMzQ2xpZW50SW5zdGFuY2VDb25maWcsXG4pO1xuIl19