@alicloud/ros-cdk-ecs 1.2.0 → 1.3.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/disk.d.ts +1 -1
- package/lib/disk.js +2 -2
- package/lib/ecs.generated.d.ts +4 -8
- package/lib/ecs.generated.js +5 -6
- package/lib/instancegroup.d.ts +1 -5
- package/lib/instancegroup.js +2 -3
- package/lib/securitygroupegresses.d.ts +1 -1
- package/lib/securitygroupegresses.js +2 -2
- package/lib/securitygroupingresses.d.ts +1 -1
- package/lib/securitygroupingresses.js +2 -2
- package/package.json +1 -1
package/lib/instancegroup.d.ts
CHANGED
|
@@ -395,7 +395,7 @@ export interface InstanceGroupProps {
|
|
|
395
395
|
readonly zoneIds?: Array<string | ros.IResolvable> | ros.IResolvable;
|
|
396
396
|
}
|
|
397
397
|
/**
|
|
398
|
-
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::InstanceGroup`, which is used to create
|
|
398
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::InstanceGroup`, which is used to create Elastic Compute Service (ECS) instances that have the same configurations.
|
|
399
399
|
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosInstanceGroup`for a more convenient development experience.
|
|
400
400
|
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instancegroup
|
|
401
401
|
*/
|
|
@@ -436,10 +436,6 @@ export declare class InstanceGroup extends ros.Resource {
|
|
|
436
436
|
* Attribute PublicIps: Public IP address list of created ecs instances.
|
|
437
437
|
*/
|
|
438
438
|
readonly attrPublicIps: ros.IResolvable;
|
|
439
|
-
/**
|
|
440
|
-
* Attribute RelatedOrderIds: The related order id list of created ecs instances
|
|
441
|
-
*/
|
|
442
|
-
readonly attrRelatedOrderIds: ros.IResolvable;
|
|
443
439
|
/**
|
|
444
440
|
* Attribute ZoneIds: Zone id of created instances.
|
|
445
441
|
*/
|
package/lib/instancegroup.js
CHANGED
|
@@ -5,7 +5,7 @@ const ros = require("@alicloud/ros-cdk-core");
|
|
|
5
5
|
const ecs_generated_1 = require("./ecs.generated");
|
|
6
6
|
Object.defineProperty(exports, "InstanceGroupProperty", { enumerable: true, get: function () { return ecs_generated_1.RosInstanceGroup; } });
|
|
7
7
|
/**
|
|
8
|
-
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::InstanceGroup`, which is used to create
|
|
8
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::InstanceGroup`, which is used to create Elastic Compute Service (ECS) instances that have the same configurations.
|
|
9
9
|
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosInstanceGroup`for a more convenient development experience.
|
|
10
10
|
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instancegroup
|
|
11
11
|
*/
|
|
@@ -112,9 +112,8 @@ class InstanceGroup extends ros.Resource {
|
|
|
112
112
|
this.attrOrderId = rosInstanceGroup.attrOrderId;
|
|
113
113
|
this.attrPrivateIps = rosInstanceGroup.attrPrivateIps;
|
|
114
114
|
this.attrPublicIps = rosInstanceGroup.attrPublicIps;
|
|
115
|
-
this.attrRelatedOrderIds = rosInstanceGroup.attrRelatedOrderIds;
|
|
116
115
|
this.attrZoneIds = rosInstanceGroup.attrZoneIds;
|
|
117
116
|
}
|
|
118
117
|
}
|
|
119
118
|
exports.InstanceGroup = InstanceGroup;
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2Vncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImluc3RhbmNlZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLG1EQUFtRDtBQUV0QixzR0FGcEIsZ0NBQWdCLE9BRXlCO0FBNGRsRDs7OztHQUlHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUF3RDNDOzs7O09BSUc7SUFDSCxZQUFZLEtBQW9CLEVBQUUsRUFBVSxFQUFFLEtBQXlCLEVBQUUsbUNBQTJDLElBQUk7UUFDcEgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxnQ0FBZ0MsR0FBRyxnQ0FBZ0MsQ0FBQztRQUV6RSxNQUFNLGdCQUFnQixHQUFHLElBQUksZ0NBQWdCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRztZQUNyRCxlQUFlLEVBQUUsS0FBSyxDQUFDLGVBQWU7WUFDdEMsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO1lBQ3RDLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxxQkFBcUI7WUFDbEQsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsa0JBQWtCLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7WUFDdkkseUJBQXlCLEVBQUUsS0FBSyxDQUFDLHlCQUF5QjtZQUMxRCwwQkFBMEIsRUFBRSxLQUFLLENBQUMsMEJBQTBCO1lBQzVELFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCO1lBQzVDLDBC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QVEsR0FBRyxnQkFBZ0IsQ0FBQztRQUNqQyxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztRQUNwRCxJQUFJLENBQUMsWUFBWSxHQUFHLGdCQUFnQixDQUFDLFlBQVksQ0FBQztRQUNsRCxJQUFJLENBQUMsZUFBZSxHQUFHLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztRQUN4RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUM7UUFDOUQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDO1FBQzVELElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsY0FBYyxDQUFDO1FBQ3RELElBQUksQ0FBQyxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQ3BELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxnQkFBZ0IsQ0FBQyxtQkFBbUIsQ0FBQztRQUNoRSxJQUFJLENBQUMsV0FBVyxHQUFHLGdCQUFnQixDQUFDLFdBQVcsQ0FBQztJQUNwRCxDQUFDO0NBQ0o7QUFsS0Qsc0NBa0tDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcm9zIGZyb20gJ0BhbGljbG91ZC9yb3MtY2RrLWNvcmUnO1xuaW1wb3J0IHsgUm9zSW5zdGFuY2VHcm91cCB9IGZyb20gJy4vZWNzLmdlbmVyYXRlZCc7XG4vLyBHZW5lcmF0ZWQgZnJvbSB0aGUgQWxpQ2xvdWQgUk9TIFJlc291cmNlIFNwZWNpZmljYXRpb25cbmV4cG9ydCB7IFJvc0luc3RhbmNlR3JvdXAgYXMgSW5zdGFuY2VHcm91cFByb3BlcnR5IH07XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBgSW5zdGFuY2VHcm91cGAuXG4gKiBTZWUgaHR0cHM6Ly93d3cuYWxpYmFiYWNsb3VkLmNvbS9oZWxwL3Jvcy9kZXZlbG9wZXItcmVmZXJlbmNlL2FsaXl1bi1lY3MtaW5zdGFuY2Vncm91cFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEluc3RhbmNlR3JvdXBQcm9wcyB7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbnN0YW5jZVR5cGU6IEVjcyBpbnN0YW5jZSBzdXBwb3J0ZWQgaW5zdGFuY2UgdHlwZSwgbWFrZSBzdXJlIGl0IHNob3VsZCBiZSBjb3JyZWN0LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGluc3RhbmNlVHlwZTogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbWF4QW1vdW50OiBNYXggbnVtYmVyIG9mIGluc3RhbmNlcyB0byBjcmVhdGUsIHNob3VsZCBiZSBiaWdnZXIgdGhhbiAnTWluQW1vdW50JyBhbmQgc21hbGxlciB0aGFuIDEwMDAuXG4gICAgICovXG4gICAgcmVhZG9ubHkgbWF4QW1vdW50OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhZmZpbml0eTogU3BlY2lmaWVzIHdoZXRoZXIgdG8gYXNzb2NpYXRlIHRoZSBpbnN0YW5jZSBvbiBhIGRlZGljYXRlZCBob3N0IHdpdGggdGhlIGRlZGljYXRlZCBob3N0LiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSAqKmRlZmF1bHQqKjogZG9lcyBub3QgYXNzb2NpYXRlIHRoZSBFQ1MgaW5zdGFuY2Ugd2l0aCB0aGUgZGVkaWNhdGVkIGhvc3QuIFdoZW4geW91IHN0YXJ0IGFuIGluc3RhbmNlIHRoYXQgd2FzIHN0b3BwZWQgaW4gZWNvbm9taWNhbCBtb2RlLCB0aGUgaW5zdGFuY2UgaXMgYXV0b21hdGljYWxseSBkZXBsb3llZCB0byBhbm90aGVyIGRlZGljYXRlZCBob3N0IGluIHRoZSBhdXRvbWF0aWMgZGVwbG95bWVudCByZXNvdXJjZSBwb29sIGlmIHRoZSBhdmFpbGFibGUgcmVzb3VyY2VzIG9mIHRoZSBvcmlnaW5hbCBkZWRpY2F0ZWQgaG9zdCBhcmUgaW5zdWZmaWNpZW50LlxuICAgICAqIC0gKipob3N0Kio6IGFzc29jaWF0ZXMgdGhlIEVDUyBpbnN0YW5jZSB3aXRoIHRoZSBkZWRpY2F0ZWQgaG9zdC4gV2hlbiB5b3Ugc3RhcnQgYW4gaW5zdGFuY2UgdGhhdCB3YXMgc3RvcHBlZCBpbiBlY29ub21pY2FsIG1vZGUsIHRoZSBpbnN0YW5jZSByZW1haW5zIG9uIHRoZSBvcmlnaW5hbCBkZWRpY2F0ZWQgaG9zdC4gSWYgdGhlIGF2YWlsYWJsZSByZXNvdXJjZXMgb2YgdGhlIG9yaWdpbmFsIGRlZGljYXRlZCBob3N0IGFyZSBpbnN1ZmZpY2llbnQsIHRoZSBpbnN0YW5jZSBjYW5ub3Qgc3RhcnQuXG4gICAgICogRGVmYXVsdCB2YWx1ZTogKipkZWZhdWx0KiouXG4gICAgICovXG4gICAgcmVhZG9ubHkgYWZmaW5pdHk/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhbGxvY2F0ZVB1YmxpY0lwOiBUaGUgcHVibGljIGlwIGZvciBlY3MgaW5zdGFuY2UsIGlmIHByb3BlcnRpZXMgaXMgdHJ1ZSwgd2lsbCBhbGxvY2F0ZSBwdWJsaWMgaXAuIElmIHByb3BlcnR5IEludGVybmV0TWF4QmFuZHdpZHRoT3V0IHNldCB0byAwLCBpdCB3aWxsIG5vdCBhc3NpZ24gcHVibGljIGlwLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGFsbG9jYXRlUHVibGljSXA/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgYXV0b1JlbGVhc2VUaW1lOiBBdXRvIHJlbGVhc2UgdGltZSBmb3IgY3JlYXRlZCBpbnN0YW5jZSwgRm9sbG93IElTTzg2MDEgc3RhbmRhcmQgdXNpbmcgVVRDIHRpbWUuIGZvcm1hdCBpcyAneXl5eS1NTS1kZFRISDptbTpzc1onLiBOb3QgYmlnZ2VyIHRoYW4gMyB5ZWFycyBmcm9tIHRoaXMgZGF5IG9ud2FyZHNcbiAgICAgKi9cbiAgICByZWFkb25seSBhdXRvUmVsZWFzZVRpbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVuZXc6IFdoZXRoZXIgcmVuZXcgdGhlIGZlZSBhdXRvbWF0aWNhbGx5PyBXaGVuIHRoZSBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFByZVBhaWQsIGl0IHdpbGwgdGFrZSBlZmZlY3QuIFJhbmdlIG9mIHZhbHVlOlRydWU6IGF1dG9tYXRpYyByZW5ld2FsLkZhbHNlOiBubyBhdXRvbWF0aWMgcmVuZXdhbC4gRGVmYXVsdCB2YWx1ZSBpcyBGYWxzZS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgYXV0b1JlbmV3Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgYXV0b1JlbmV3UGVyaW9kOiBUaGUgdGltZSBwZXJpb2Qgb2YgYXV0byByZW5ldy4gV2hlbiB0aGUgcGFyYW1ldGVyIEluc3RhbmNlQ2hhcmdlVHlwZSBpcyBQcmVQYWlkLCBpdCB3aWxsIHRha2UgZWZmZWN0Lkl0IGNvdWxkIGJlIDEsIDIsIDMsIDYsIDEyLCAyNCwgMzYsIDQ4LCA2MC4gRGVmYXVsdCB2YWx1ZSBpcyAxLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBhdXRvUmVuZXdQZXJpb2Q/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBjcHVPcHRpb25zOiBDcHUgb3B0aW9ucy5cbiAgICAgKi9cbiAgICByZWFkb25seSBjcHVPcHRpb25zPzogUm9zSW5zdGFuY2VHcm91cC5DcHVPcHRpb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBjcmVkaXRTcGVjaWZpY2F0aW9uOiBUaGUgcGVyZm9ybWFuY2UgbW9kZSBvZiB0aGUgYnVyc3RhYmxlIGluc3RhbmNlLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSAqKlN0YW5kYXJkKio6IHRoZSBzdGFuZGFyZCBtb2RlLlxuICAgICAqIC0gKipVbmxpbWl0ZWQqKjogdGhlIHVubGltaXRlZCBtb2RlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGNyZWRpdFNwZWNpZmljYXRpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZWRpY2F0ZWRIb3N0SWQ6IHdoaWNoIGRlZGljYXRlZCBob3N0IHdpbGwgYmUgZGVwbG95ZWRcbiAgICAgKi9cbiAgICByZWFkb25seSBkZWRpY2F0ZWRIb3N0SWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZWxldGlvbkZvcmNlOiBXaGV0aGVyIGZvcmNlIGRlbGV0ZSB0aGUgaW5zdGFuY2UuIERlZmF1bHQgdmFsdWUgaXMgZmFsc2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVsZXRpb25Gb3JjZT86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZWxldGlvblByb3RlY3Rpb246IFdoZXRoZXIgYW4gaW5zdGFuY2UgY2FuIGJlIHJlbGVhc2VkIG1hbnVhbGx5IHRocm91Z2ggdGhlIGNvbnNvbGUgb3IgQVBJLCBkZWxldGlvbiBwcm90ZWN0aW9uIG9ubHkgc3VwcG9ydCBwb3N0UGFpZCBpbnN0YW5jZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlbGV0aW9uUHJvdGVjdGlvbj86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZXBsb3ltZW50U2V0R3JvdXBObzogVGhlIG51bWJlciBvZiB0aGUgZGVwbG95bWVudCBzZXQgZ3JvdXAgdG8gd2hpY2ggdG8gZGVwbG95IHRoZSBpbnN0YW5jZS4gSWYgdGhlIGRlcGxveW1lbnQgc2V0IHNwZWNpZmllZCBieSAqKkRlcGxveW1lbnRTZXRJZCoqIHVzZXMgdGhlIGhpZ2ggYXZhaWxhYmlsaXR5IGdyb3VwIHN0cmF0ZWd5IChBdmFpbGFiaWxpdHlHcm91cCksIHlvdSBjYW4gdXNlICoqRGVwbG95bWVudFNldEdyb3VwTm8qKiB0byBzcGVjaWZ5IGEgZGVwbG95bWVudCBzZXQgZ3JvdXAgaW4gdGhlIGRlcGxveW1lbnQgc2V0LiBWYWxpZCB2YWx1ZXM6IDEgdG8gNy5cbiAgICAgKi9cbiAgICByZWFkb25seSBkZXBsb3ltZW50U2V0R3JvdXBObz86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRlcGxveW1lbnRTZXRJZDogRGVwbG95bWVudCBzZXQgSUQuIFRoZSBjaGFuZ2Ugb2YgdGhlIHByb3BlcnR5IGRvZXMgbm90IGFmZmVjdCBleGlzdGluZyBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVwbG95bWVudFNldElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZGVzY3JpcHRpb246IERlc2NyaXB0aW9uIG9mIHRoZSBpbnN0YW5jZSwgWzIsIDI1Nl0gY2hhcmFjdGVycy4gRG8gbm90IGZpbGwgb3IgZW1wdHksIHRoZSBkZWZhdWx0IGlzIGVtcHR5LiBPbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkaXNrTWFwcGluZ3M6IERpc2sgbWFwcGluZ3MgdG8gYXR0YWNoIHRvIGluc3RhbmNlLiBNYXggc3VwcG9ydCAxNiBkaXNrcy5cbiAgICAgKiBJZiB0aGUgaW1hZ2UgY29udGFpbnMgYSBkYXRhIGRpc2ssIHlvdSBjYW4gc3BlY2lmeSBvdGhlciBwYXJhbWV0ZXJzIG9mIHRoZSBkYXRhIGRpc2sgdmlhIHRoZSBzYW1lIHZhbHVlIG9mIHBhcmFtZXRlciBcIkRldmljZVwiLiBJZiBwYXJhbWV0ZXIgXCJDYXRlZ29yeVwiIGlzIG5vdCBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgY2xvdWRfZWZmaWNpZW5jeSBpbnN0ZWFkIG9mIFwiQ2F0ZWdvcnlcIiBvZiBkYXRhIGRpc2sgaW4gdGhlIGltYWdlLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBkaXNrTWFwcGluZ3M/OiBBcnJheTxSb3NJbnN0YW5jZUdyb3VwLkRpc2tNYXBwaW5nc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGVuaU1hcHBpbmdzOiBOZXR3b3JrSW50ZXJmYWNlIHRvIGF0dGFjaCB0byBpbnN0YW5jZS4gTWF4IHN1cHBvcnQgMiBFTklzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGVuaU1hcHBpbmdzPzogQXJyYXk8Um9zSW5zdGFuY2VHcm91cC5FbmlNYXBwaW5nc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGhvc3ROYW1lOiBIb3N0IG5hbWUgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2UuIGF0IGxlYXN0IDIgY2hhcmFjdGVycywgYW5kICcuJyAnLScgSXMgbm90IHRoZSBmaXJzdCBhbmQgbGFzdCBjaGFyYWN0ZXJzIGFzIGhvc3RuYW1lLCBub3QgY29udGludW91cyB1c2UuIFdpbmRvd3MgcGxhdGZvcm0gY2FuIGJlIHVwIHRvIDE1IGNoYXJhY3RlcnMsIGFsbG93aW5nIGxldHRlcnMgKHdpdGhvdXQgbGltaXRpbmcgY2FzZSksIG51bWJlcnMgYW5kICctJywgYW5kIGRvZXMgbm90IHN1cHBvcnQgdGhlIG51bWJlciBvZiBwb2ludHMsIG5vdCBhbGwgaXMgZGlnaXRhbCAoJy4nKS5PdGhlciAoTGludXgsIGV0Yy4pIHBsYXRmb3JtIHVwIHRvIDY0IGNoYXJhY3RlcnMsIGFsbG93aW5nIHN1cHBvcnQgbnVtYmVyIG11bHRpcGxlIHBvaW50cyBmb3IgdGhlIHBlcmlvZCBiZXR3ZWVuIHRoZSBwb2ludHMsIGVhY2ggcGVybWl0IGxldHRlcnMgKHdpdGhvdXQgbGltaXRpbmcgY2FzZSksIG51bWJlcnMgYW5kICctJyBjb21wb25lbnRzLiBcbiAgICAgKiBTdXBwb3J0IHRvIHVzZSB0aGUgcmVndWxhciBleHByZXNzaW9uIHRvIHNldCB0aGUgZGlmZmVyZW50IGluc3RhbmNlIG5hbWUgZm9yIGVhY2ggRUNTIGluc3RhbmNlLiBIb3N0TmFtZSBjb3VsZCBiZSBzcGVjaWZpZWQgYXMgJ25hbWVfcHJlZml4W2JlZ2luX251bWJlcixiaXRzXW5hbWVfc3VmZml4Jywgc3VjaCBhcyAnaG9zdFsxMjMsNF10YWlsJy4gSWYgeW91IGNyZWF0ZXMgMyBpbnN0YW5jZXMgd2l0aCBob3N0bmFtZSAnaG9zdFsxMjMsNF10YWlsJywgYWxsIHRoZSBob3N0IG5hbWVzIG9mIGluc3RhbmNlcyBhcmUgaG9zdDAxMjN0YWlsLCBob3N0MDEyNHRhaWwsIGhvc3QwMTI1dGFpbC4gVGhlICduYW1lX3ByZWZpeFtiZWdpbl9udW1iZXIsYml0c11uYW1lX3N1ZmZpeCcgc2hvdWxkIGZvbGxvdyB0aG9zZSBydWxlczogXG4gICAgICogMS4gJ25hbWVfcHJlZml4JyBpcyByZXF1aXJlZC4gXG4gICAgICogMi4gJ25hbWVfc3VmZml4JyBpcyBvcHRpb25hbC4gXG4gICAgICogMy4gVGhlIG5hbWUgcmVndWxhciBleHByZXNzaW9uIGNhbid0IGluY2x1ZGUgYW55IHNwYWNlcy4gXG4gICAgICogNC4gVGhlICdiaXRzJyBtdXN0IGJlIGluIHJhbmdlIFsxLCA2XS4gXG4gICAgICogNS4gVGhlICdiZWdpbl9udW1iZXInIG11c3QgYmUgaW4gcmFuZ2UgWzAsIDk5OTk5OV0uIFxuICAgICAqIDYuIFlvdSBjb3VsZCBvbmx5IHNwZWNpZnkgJ2JlZ2luX251bWJlcicuIFRoZSAnYml0cycgd2lsbCBiZSBzZXQgYXMgNiBieSBkZWZhdWx0LiBcbiAgICAgKiA3LiBZb3UgYWxzbyBjb3VsZCBvbmx5IHNwZWNpZnkgdGhlIFtdIG9yIFssXS4gVGhlICdiZWdpbl9udW1iZXInIHdpbGwgYmUgc2V0IGFzIDAgYnkgZGVmYXVsdCwgdGhlICdiaXRzJyB3aWxsIGJlIHNldCBhcyA2IGJ5IGRlZmF1bHQuIFxuICAgICAqIDguIElmIHRoZSBiaXRzIG9mICdiZWdpbl9udW1iZXInIGlzIGxlc3MgdGhhbiB0aGUgJ2JpdHMnIHlvdSBzcGVjaWZpZWQsIGxpa2UgWzEyMzQsMV0sIHRoZSAnYml0cycgd2lsbCBiZSBzZXQgYXMgNiBieSBkZWZhdWx0LiBcbiAgICAgKiBUaGUgaG9zdCBuYW1lIGlzIHNwZWNpZmllZCBieSByZWd1bGFyIGV4cHJlc3Npb24gd29ya3MgYWZ0ZXIgcmVzdGFydCBpbnN0YW5jZSBtYW51YWxseS5cbiAgICAgKi9cbiAgICByZWFkb25seSBob3N0TmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGhvc3ROYW1lczogVGhlIGhvc3RuYW1lIG9mIGluc3RhbmNlIE4uIFlvdSBjYW4gdXNlIHRoaXMgcGFyYW1ldGVyIHRvIHNwZWNpZnkgZGlmZmVyZW50IGhvc3RuYW1lcyBmb3IgbXVsdGlwbGUgaW5zdGFuY2VzLiBUYWtlIG5vdGUgb2YgdGhlIGZvbGxvd2luZyBpdGVtczpcbiAgICAgKiAtIFRoZSBtYXhpbXVtIHZhbHVlIG9mIE4gbXVzdCBiZSB0aGUgc2FtZSBhcyB0aGUgQW1vdW50IHZhbHVlLiBGb3IgZXhhbXBsZSwgaWYgeW91IHNldCBBbW91bnQgdG8gMiwgeW91IGNhbiB1c2UgSG9zdE5hbWVzLjEgYW5kIEhvc3ROYW1lcy4yIHRvIHNwZWNpZnkgaG9zdG5hbWVzIGZvciB0aGUgaW5kaXZpZHVhbCBpbnN0YW5jZXMuIEV4YW1wbGVzOiBIb3N0TmFtZXMuMT10ZXN0MSBhbmQgSG9zdE5hbWVzLjI9dGVzdDIuXG4gICAgICogLSBZb3UgY2Fubm90IHNwZWNpZnkgYm90aCBIb3N0TmFtZSBhbmQgSG9zdE5hbWVzLk4uXG4gICAgICogLSBUaGUgaG9zdG5hbWUgY2Fubm90IHN0YXJ0IG9yIGVuZCB3aXRoIGEgcGVyaW9kICguKSBvciBoeXBoZW4gKC0pLiBUaGUgaG9zdG5hbWUgY2Fubm90IGNvbnRhaW4gY29uc2VjdXRpdmUgcGVyaW9kcyAoLikgb3IgaHlwaGVucyAoLSkuXG4gICAgICogLSBGb3IgV2luZG93cyBpbnN0YW5jZXMsIHRoZSBob3N0bmFtZSBtdXN0IGJlIDIgdG8gMTUgY2hhcmFjdGVycyBpbiBsZW5ndGggYW5kIGNhbm5vdCBjb250YWluIHBlcmlvZHMgKC4pIG9yIGNvbnRhaW4gb25seSBkaWdpdHMuIFRoZSBob3N0bmFtZSBjYW4gY29udGFpbiBsZXR0ZXJzLCBkaWdpdHMsIGFuZCBoeXBoZW5zICgtKS5cbiAgICAgKiAtIEZvciBpbnN0YW5jZXMgdGhhdCBydW4gb3RoZXIgb3BlcmF0aW5nIHN5c3RlbXMgc3VjaCBhcyBMaW51eCwgdGhlIGhvc3RuYW1lIG11c3QgYmUgMiB0byA2NCBjaGFyYWN0ZXJzIGluIGxlbmd0aC4gWW91IGNhbiB1c2UgcGVyaW9kcyAoLikgdG8gc2VwYXJhdGUgYSBob3N0bmFtZSBpbnRvIG11bHRpcGxlIHNlZ21lbnRzLiBFYWNoIHNlZ21lbnQgY2FuIGNvbnRhaW4gbGV0dGVycywgZGlnaXRzLCBhbmQgaHlwaGVucyAoLSkuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaG9zdE5hbWVzPzogQXJyYXk8c3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGhwY0NsdXN0ZXJJZDogVGhlIEhQQyBjbHVzdGVyIElEIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBiZWxvbmdzLlRoZSBjaGFuZ2Ugb2YgdGhlIHByb3BlcnR5IGRvZXMgbm90IGFmZmVjdCBleGlzdGluZyBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaHBjQ2x1c3RlcklkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaHR0cEVuZHBvaW50OiBTcGVjaWZpZXMgd2hldGhlciB0aGUgYWNjZXNzIGNoYW5uZWwgaXMgZW5hYmxlZCBmb3IgaW5zdGFuY2UgbWV0YWRhdGEuIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtICoqZW5hYmxlZCoqXG4gICAgICogLSAqKmRpc2FibGVkKipcbiAgICAgKiBEZWZhdWx0IHZhbHVlOiAqKmVuYWJsZWQqKi5cbiAgICAgKi9cbiAgICByZWFkb25seSBodHRwRW5kcG9pbnQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBodHRwVG9rZW5zOiBTcGVjaWZpZXMgd2hldGhlciB0aGUgc2VjdXJpdHkgaGFyZGVuaW5nIG1vZGUgKElNRFN2MikgaXMgZm9yY2VmdWxseSB1c2VkIHRvIGFjY2VzcyBpbnN0YW5jZSBtZXRhZGF0YS4gVmFsaWQgdmFsdWVzOlxuICAgICAqIC0gKipvcHRpb25hbCoqOiBkb2VzIG5vdCBmb3JjZWZ1bGx5IHVzZSB0aGUgc2VjdXJpdHktZW5oYW5jZWQgbW9kZSAoSU1EU3YyKS5cbiAgICAgKiAtICoqcmVxdWlyZWQqKjogZm9yY2VmdWxseSB1c2VzIHRoZSBzZWN1cml0eS1lbmhhbmNlZCBtb2RlIChJTURTdjIpLiBBZnRlciB5b3Ugc2V0IHRoaXMgcGFyYW1ldGVyIHRvIHJlcXVpcmVkLCB5b3UgY2Fubm90IGFjY2VzcyBpbnN0YW5jZSBtZXRhZGF0YSBpbiBub3JtYWwgbW9kZS5cbiAgICAgKiBEZWZhdWx0IHZhbHVlOiAqKm9wdGlvbmFsKiouXG4gICAgICovXG4gICAgcmVhZG9ubHkgaHR0cFRva2Vucz86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGltYWdlRmFtaWx5OiBUaGUgbmFtZSBvZiB0aGUgaW1hZ2UgZmFtaWx5LiBZb3UgY2FuIHNldCB0aGlzIHBhcmFtZXRlciB0byBvYnRhaW4gdGhlIGxhdGVzdCBhdmFpbGFibGUgY3VzdG9tIGltYWdlIGZyb20gdGhlIHNwZWNpZmllZCBpbWFnZSBmYW1pbHkgdG8gY3JlYXRlIHRoZSBpbnN0YW5jZS5cbiAgICAgKiAtICoqSW1hZ2VGYW1pbHkqKiBtdXN0IGJlIGVtcHR5IGlmICoqSW1hZ2VJZCoqIGlzIHNwZWNpZmllZC5cbiAgICAgKiAtICoqSW1hZ2VGYW1pbHkqKiBjYW4gYmUgc3BlY2lmaWVkIGlmICoqSW1hZ2VJZCoqIGlzIG5vdCBzcGVjaWZpZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW1hZ2VGYW1pbHk/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbWFnZUlkOiBJbWFnZSBJRCB0byBjcmVhdGUgZWNzIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGltYWdlSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbWFnZU9wdGlvbnM6IEltYWdlIG9wdGlvbnMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW1hZ2VPcHRpb25zPzogUm9zSW5zdGFuY2VHcm91cC5JbWFnZU9wdGlvbnNQcm9wZXJ0eSB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGluc3RhbmNlQ2hhcmdlVHlwZTogSW5zdGFuY2UgQ2hhcmdlIHR5cGUsIGFsbG93ZWQgdmFsdWU6IFByZXBhaWQgYW5kIFBvc3RwYWlkLiBJZiBzcGVjaWZpZWQgUHJlcGFpZCwgcGxlYXNlIGVuc3VyZSB5b3UgaGF2ZSBzdWZmaWNpZW50IGJhbGFuY2UgaW4geW91ciBhY2NvdW50LiBPciBpbnN0YW5jZSBjcmVhdGlvbiB3aWxsIGJlIGZhaWx1cmUuIERlZmF1bHQgdmFsdWUgaXMgUG9zdHBhaWQuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGluc3RhbmNlQ2hhcmdlVHlwZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGluc3RhbmNlTmFtZTogRGlzcGxheSBuYW1lIG9mIHRoZSBpbnN0YW5jZSwgWzIsIDEyOF0gRW5nbGlzaCBvciBDaGluZXNlIGNoYXJhY3RlcnMsIG11c3Qgc3RhcnQgd2l0aCBhIGxldHRlciBvciBDaGluZXNlIGluIHNpemUsIGNhbiBjb250YWluIG51bWJlcnMsICdfJyBvciAnLicsICctJy4gXG4gICAgICogU3VwcG9ydCB0byB1c2UgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiB0byBzZXQgdGhlIGRpZmZlcmVudCBpbnN0YW5jZSBuYW1lIGZvciBlYWNoIEVDUyBpbnN0YW5jZS4gSW5zdGFuY2VOYW1lIGNvdWxkIGJlIHNwZWNpZmllZCBhcyAnbmFtZV9wcmVmaXhbYmVnaW5fbnVtYmVyLGJpdHNdbmFtZV9zdWZmaXgnLCBzdWNoIGFzICd0ZXN0aW5zdGFuY2VbMTIzLDRddGFpbCcuIElmIHlvdSBjcmVhdGVzIDMgaW5zdGFuY2VzIHdpdGggdGhlIGluc3RhbmNlIG5hbWUgJ3Rlc3RpbnN0YW5jZVsxMjMsNF10YWlsJywgYWxsIHRoZSBpbnN0YW5jZXMnIG5hbWVzIGFyZSB0ZXN0aW5zdGFuY2UwMTIzdGFpbCwgdGVzdGluc3RhbmNlMDEyNHRhaWwsIHRlc3RpbnN0YW5jZTAxMjV0YWlsLiBcbiAgICAgKiBUaGUgJ25hbWVfcHJlZml4W2JlZ2luX251bWJlcixiaXRzXW5hbWVfc3VmZml4JyBzaG91bGQgZm9sbG93IHRob3NlIHJ1bGVzOiBcbiAgICAgKiAxLiAnbmFtZV9wcmVmaXgnIGlzIHJlcXVpcmVkLiBcbiAgICAgKiAyLiAnbmFtZV9zdWZmaXgnIGlzIG9wdGlvbmFsLiBcbiAgICAgKiAzLiBUaGUgbmFtZSByZWd1bGFyIGV4cHJlc3Npb24gY2FuJ3QgaW5jbHVkZSBhbnkgc3BhY2VzLiBcbiAgICAgKiA0LiBUaGUgJ2JpdHMnIG11c3QgYmUgaW4gcmFuZ2UgWzEsIDZdLiBcbiAgICAgKiA1LiBUaGUgJ2JlZ2luX251bWJlcicgbXVzdCBiZSBpbiByYW5nZSBbMCwgOTk5OTk5XS4gXG4gICAgICogNi4gWW91IGNvdWxkIG9ubHkgc3BlY2lmeSAnYmVnaW5fbnVtYmVyJy4gVGhlICdiaXRzJyB3aWxsIGJlIHNldCBhcyA2IGJ5IGRlZmF1bHQuIFxuICAgICAqIDcuIFlvdSBhbHNvIGNvdWxkIG9ubHkgc3BlY2lmeSB0aGUgW10gb3IgWyxdLiBUaGUgJ2JlZ2luX251bWJlcicgd2lsbCBiZSBzZXQgYXMgMCBieSBkZWZhdWx0LCB0aGUgJ2JpdHMnIHdpbGwgYmUgc2V0IGFzIDYgYnkgZGVmYXVsdC4gXG4gICAgICogOC4gSWYgdGhlIGJpdHMgb2YgJ2JlZ2luX251bWJlcicgaXMgbGVzcyB0aGFuIHRoZSAnYml0cycgeW91IHNwZWNpZmllZCwgbGlrZSBbMTIzNCwxXSwgdGhlICdiaXRzJyB3aWxsIGJlIHNldCBhcyA2IGJ5IGRlZmF1bHQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW5zdGFuY2VOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW50ZXJuZXRDaGFyZ2VUeXBlOiBJbnN0YW5jZSBpbnRlcm5ldCBhY2Nlc3MgY2hhcmdlIHR5cGUuU3VwcG9ydCAnUGF5QnlCYW5kd2lkdGgnIGFuZCAnUGF5QnlUcmFmZmljJyBvbmx5LiBEZWZhdWx0IGlzIFBheUJ5VHJhZmZpY1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGludGVybmV0Q2hhcmdlVHlwZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGludGVybmV0TWF4QmFuZHdpZHRoT3V0OiBTZXQgaW50ZXJuZXQgb3V0cHV0IGJhbmR3aWR0aCBvZiBpbnN0YW5jZS4gVW5pdCBpcyBNYnBzKE1lZ2EgYml0IHBlciBzZWNvbmQpLiBSYW5nZSBpcyBbMCwyMDBdLiBEZWZhdWx0IGlzIDEuV2hpbGUgdGhlIHByb3BlcnR5IGlzIG5vdCAwLCBwdWJsaWMgaXAgd2lsbCBiZSBhc3NpZ25lZCBmb3IgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQ/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpb09wdGltaXplZDogVGhlICdvcHRpbWl6ZWQnIGluc3RhbmNlIGNhbiBwcm92aWRlIGJldHRlciBJTyBwZXJmb3JtYW5jZS4gU3VwcG9ydCAnbm9uZScgYW5kICdvcHRpbWl6ZWQnIG9ubHksIGRlZmF1bHQgaXMgJ29wdGltaXplZCcuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW9PcHRpbWl6ZWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpcHY2QWRkcmVzc0NvdW50OiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiByYW5kb21seSBnZW5lcmF0ZWQgSVB2NiBhZGRyZXNzZXMgZm9yIHRoZSBlbGFzdGljIE5JQy5cbiAgICAgKiBOb3RlIFlvdSBjYW5ub3Qgc3BlY2lmeSB0aGUgcGFyYW1ldGVycyBJcHY2QWRkcmVzc2VzIGFuZCBJcHY2QWRkcmVzc0NvdW50IGF0IHRoZSBzYW1lIHRpbWUuXG4gICAgICogVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpcHY2QWRkcmVzc0NvdW50PzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaXB2NkFkZHJlc3NlczogU3BlY2lmeSBvbmUgb3IgbW9yZSBJUHY2IGFkZHJlc3NlcyBmb3IgdGhlIGVsYXN0aWMgTklDLiBDdXJyZW50bHksIHRoZSBtYXhpbXVtIGxpc3Qgc2l6ZSBpcyAxLiBFeGFtcGxlIHZhbHVlOiAyMDAxOmRiODoxMjM0OjFhMDA6OioqKiAuXG4gICAgICogTm90ZSBZb3UgY2Fubm90IHNwZWNpZnkgdGhlIHBhcmFtZXRlcnMgSXB2NkFkZHJlc3NlcyBhbmQgSXB2NkFkZHJlc3NDb3VudCBhdCB0aGUgc2FtZSB0aW1lLlxuICAgICAqIFRoZSBjaGFuZ2Ugb2YgdGhlIHByb3BlcnR5IGRvZXMgbm90IGFmZmVjdCBleGlzdGluZyBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaXB2NkFkZHJlc3Nlcz86IEFycmF5PGFueSB8IHJvcy5JUmVzb2x2YWJsZT4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBrZXlQYWlyTmFtZTogU1NIIGtleSBwYWlyIG5hbWUuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGtleVBhaXJOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbGF1bmNoVGVtcGxhdGVJZDogSUQgb2YgbGF1bmNoIHRlbXBsYXRlLiBMYXVuY2ggdGVtcGxhdGUgaWQgb3IgbmFtZSBtdXN0IGJlIHNwZWNpZmllZCB0byB1c2UgbGF1bmNoIHRlbXBsYXRlXG4gICAgICovXG4gICAgcmVhZG9ubHkgbGF1bmNoVGVtcGxhdGVJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGxhdW5jaFRlbXBsYXRlTmFtZTogTmFtZSBvZiBsYXVuY2ggdGVtcGxhdGUuIExhdW5jaCB0ZW1wbGF0ZSBpZCBvciBuYW1lIG11c3QgYmUgc3BlY2lmaWVkIHRvIHVzZSBsYXVuY2ggdGVtcGxhdGVcbiAgICAgKi9cbiAgICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZU5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBsYXVuY2hUZW1wbGF0ZVZlcnNpb246IFZlcnNpb24gb2YgbGF1bmNoIHRlbXBsYXRlLiBEZWZhdWx0IHZlcnNpb24gaXMgdXNlZCBpZiB2ZXJzaW9uIGlzIG5vdCBzcGVjaWZpZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgbGF1bmNoVGVtcGxhdGVWZXJzaW9uPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyOiBUaGUgbnVtYmVyIG9mIHF1ZXVlcyBzdXBwb3J0ZWQgYnkgdGhlIHByaW1hcnkgRU5JLiBUYWtlIG5vdGUgb2YgdGhlIGZvbGxvd2luZyBpdGVtczpcbiAgICAgKiAtIFRoZSB2YWx1ZSBvZiB0aGlzIHBhcmFtZXRlciBjYW5ub3QgZXhjZWVkIHRoZSBtYXhpbXVtIG51bWJlciBvZiBxdWV1ZXMgcGVyIEVOSSBhbGxvd2VkIGZvciB0aGUgaW5zdGFuY2UgdHlwZS5cbiAgICAgKiAtIFRoZSB0b3RhbCBudW1iZXIgb2YgcXVldWVzIGZvciBhbGwgRU5JcyBvbiB0aGUgaW5zdGFuY2UgY2Fubm90IGV4Y2VlZCB0aGUgcXVldWUgcXVvdGEgZm9yIHRoZSBpbnN0YW5jZSB0eXBlLlxuICAgICAqIC0gSWYgTmV0d29ya0ludGVyZmFjZS5OLkluc3RhbmNlVHlwZSBpcyBzZXQgdG8gUHJpbWFyeSwgeW91IGNhbm5vdCBzcGVjaWZ5IE5ldHdvcmtJbnRlcmZhY2VRdWV1ZU51bWJlciBidXQgY2FuIHNwZWNpZnkgTmV0d29ya0ludGVyZmFjZS5OLlF1ZXVlTnVtYmVyXG4gICAgICovXG4gICAgcmVhZG9ubHkgbmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbmV0d29ya09wdGlvbnM6IE5ldHdvcmsgb3B0aW9ucy5cbiAgICAgKi9cbiAgICByZWFkb25seSBuZXR3b3JrT3B0aW9ucz86IFJvc0luc3RhbmNlR3JvdXAuTmV0d29ya09wdGlvbnNQcm9wZXJ0eSB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IG5ldHdvcmtUeXBlOiBJbnN0YW5jZSBuZXR3b3JrIHR5cGUuIFN1cHBvcnQgJ3ZwYycgYW5kICdjbGFzc2ljJywgZm9yIGNvbXBhdGlibGUgcmVhc29uLCBkZWZhdWx0IGlzICdjbGFzc2ljJy4gSWYgdnN3aXRjaCBpZCBhbmQgdnBjIGlkIGlzIHNwZWNpZmllZCwgdGhlIHByb3BlcnR5IHdpbGwgYmUgZm9yY2VkIHRvIGJlIHNldCB0byAndnBjJ1xuICAgICAqL1xuICAgIHJlYWRvbmx5IG5ldHdvcmtUeXBlPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGFzc3dvcmQ6IFBhc3N3b3JkIG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlLiBNdXN0IGNvbnRhaW4gYXQgbGVhc3QgMyB0eXBlcyBvZiBzcGVjaWFsIGNoYXJhY3RlciwgbG93ZXIgY2hhcmFjdGVyLCB1cHBlciBjaGFyYWN0ZXIsIG51bWJlci5cbiAgICAgKi9cbiAgICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBhc3N3b3JkSW5oZXJpdDogU3BlY2lmaWVzIHdoZXRoZXIgdG8gdXNlIHRoZSBwYXNzd29yZCBwcmVzZXQgaW4gdGhlIGltYWdlLiBUbyB1c2UgdGhlIFBhc3N3b3JkSW5oZXJpdCBwYXJhbWV0ZXIsIHRoZSBQYXNzd29yZCBwYXJhbWV0ZXIgbXVzdCBiZSBlbXB0eSBhbmQgeW91IG11c3QgbWFrZSBzdXJlIHRoYXQgdGhlIHNlbGVjdGVkIGltYWdlIGhhcyBhIHBhc3N3b3JkIGNvbmZpZ3VyZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGFzc3dvcmRJbmhlcml0PzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBlcmlvZDogUHJlcGFpZCB0aW1lIHBlcmlvZC4gVW5pdCBpcyBtb250aCwgaXQgY291bGQgYmUgZnJvbSAxIHRvIDkgb3IgMTIsIDI0LCAzNiwgNDgsIDYwLiBEZWZhdWx0IHZhbHVlIGlzIDEuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBlcmlvZD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBlcmlvZFVuaXQ6IFVuaXQgb2YgcHJlcGFpZCB0aW1lIHBlcmlvZCwgaXQgY291bGQgYmUgV2Vla1xcL01vbnRoXFwvWWVhci4gRGVmYXVsdCB2YWx1ZSBpcyBNb250aC5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGVyaW9kVW5pdD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHByaXZhdGVJcEFkZHJlc3M6IFByaXZhdGUgSVAgZm9yIHRoZSBpbnN0YW5jZSBjcmVhdGVkLiBPbmx5IHdvcmtzIGZvciBWUEMgaW5zdGFuY2UgYW5kIGNhbm5vdCBkdXBsaWNhdGVkIHdpdGggZXhpc3RpbmcgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcHJpdmF0ZUlwQWRkcmVzcz86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHByaXZhdGVQb29sT3B0aW9uczogVGhlIG9wdGlvbnMgb2YgdGhlIHByaXZhdGUgcG9vbC5cbiAgICAgKi9cbiAgICByZWFkb25seSBwcml2YXRlUG9vbE9wdGlvbnM/OiBSb3NJbnN0YW5jZUdyb3VwLlByaXZhdGVQb29sT3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcmFtUm9sZU5hbWU6IEluc3RhbmNlIFJBTSByb2xlIG5hbWUuIFRoZSBuYW1lIGlzIHByb3ZpZGVkIGFuZCBtYWludGFpbmVkIGJ5IFJlc291cmNlIEFjY2VzcyBNYW5hZ2VtZW50IChSQU0pIGFuZCBjYW4gYmUgcXVlcmllZCB1c2luZyBMaXN0Um9sZXMuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgUkFNIEFQSSBDcmVhdGVSb2xlIGFuZCBMaXN0Um9sZXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcmFtUm9sZU5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSByZXNvdXJjZUdyb3VwSWQ6IFJlc291cmNlIGdyb3VwIGlkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJlc291cmNlR3JvdXBJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNjaGVkdWxlck9wdGlvbnM6IHVuZGVmaW5lZFxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNjaGVkdWxlck9wdGlvbnM/OiBSb3NJbnN0YW5jZUdyb3VwLlNjaGVkdWxlck9wdGlvbnNQcm9wZXJ0eSB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNlY3VyaXR5RW5oYW5jZW1lbnRTdHJhdGVneTpcbiAgICAgKi9cbiAgICByZWFkb25seSBzZWN1cml0eUVuaGFuY2VtZW50U3RyYXRlZ3k/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzZWN1cml0eUdyb3VwSWQ6IFNlY3VyaXR5IGdyb3VwIHRvIGNyZWF0ZSBlY3MgaW5zdGFuY2UuIEZvciBjbGFzc2ljIGluc3RhbmNlIG5lZWQgdGhlIHNlY3VyaXR5IGdyb3VwIG5vdCBiZWxvbmcgdG8gVlBDLCBmb3IgVlBDIGluc3RhbmNlLCBwbGVhc2UgbWFrZSBzdXJlIHRoZSBzZWN1cml0eSBncm91cCBiZWxvbmcgdG8gc3BlY2lmaWVkIFZQQy5cbiAgICAgKi9cbiAgICByZWFkb25seSBzZWN1cml0eUdyb3VwSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzZWN1cml0eUdyb3VwSWRzOiBUaGUgSURzIG9mIHNlY3VyaXR5IGdyb3VwcyBOIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBiZWxvbmdzLiBUaGUgdmFsaWQgdmFsdWVzIG9mIE4gYXJlIGJhc2VkIG9uIHRoZSBtYXhpbXVtIG51bWJlciBvZiBzZWN1cml0eSBncm91cHMgdG8gd2hpY2ggYW4gaW5zdGFuY2UgY2FuIGJlbG9uZy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBTZWN1cml0eSBncm91cCBsaW1pdHMuTm90ZTogWW91IGNhbm5vdCBzcGVjaWZ5IGJvdGggU2VjdXJpdHlHcm91cElkIGFuZCBTZWN1cml0eUdyb3VwSWRzIGF0IHRoZSBzYW1lIHRpbWUuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkcz86IEFycmF5PHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZT4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzZWN1cml0eU9wdGlvbnM6IFNlY3VyaXR5IG9wdGlvbnMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlPcHRpb25zPzogUm9zSW5zdGFuY2VHcm91cC5TZWN1cml0eU9wdGlvbnNQcm9wZXJ0eSB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNwb3REdXJhdGlvbjogVGhlIHByb3RlY3Rpb24gcGVyaW9kIG9mIHRoZSBwcmVlbXB0aWJsZSBpbnN0YW5jZS4gVW5pdDogaG91cnMuIFZhbGlkIHZhbHVlczogMCwgMSwgMiwgMywgNCwgNSwgYW5kIDYuXG4gICAgICogUHJvdGVjdGlvbiBwZXJpb2RzIG9mIDIsIDMsIDQsIDUsIGFuZCA2IGhvdXJzIGFyZSBpbiBpbnZpdGF0aW9uYWwgcHJldmlldy4gSWYgeW91IHdhbnQgdG8gc2V0IHRoaXMgcGFyYW1ldGVyIHRvIG9uZSBvZiB0aGVzZSB2YWx1ZXMsIHN1Ym1pdCBhIHRpY2tldC5cbiAgICAgKiBJZiB0aGlzIHBhcmFtZXRlciBpcyBzZXQgdG8gMCwgbm8gcHJvdGVjdGlvbiBwZXJpb2QgaXMgY29uZmlndXJlZCBmb3IgdGhlIHByZWVtcHRpYmxlIGluc3RhbmNlLlxuICAgICAqIERlZmF1bHQgdmFsdWU6IDEuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3BvdER1cmF0aW9uPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3BvdEludGVycnVwdGlvbkJlaGF2aW9yOiBUaGUgaW50ZXJydXB0aW9uIG1vZGUgb2YgdGhlIHByZWVtcHRpYmxlIGluc3RhbmNlLiBEZWZhdWx0IHZhbHVlOiBUZXJtaW5hdGUuIFNldCB0aGUgdmFsdWUgdG8gVGVybWluYXRlLCB3aGljaCBzcGVjaWZpZXMgdG8gcmVsZWFzZSB0aGUgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3BvdEludGVycnVwdGlvbkJlaGF2aW9yPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3BvdFByaWNlTGltaXQ6IFRoZSBob3VybHkgcHJpY2UgdGhyZXNob2xkIG9mIGEgaW5zdGFuY2UsIGFuZCBpdCB0YWtlcyBlZmZlY3Qgb25seSB3aGVuIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUG9zdFBhaWQuIFRocmVlIGRlY2ltYWxzIGlzIGFsbG93ZWQgYXQgbW9zdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzcG90UHJpY2VMaW1pdD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNwb3RTdHJhdGVneTogVGhlIHNwb3Qgc3RyYXRlZ3kgb2YgYSBQYXktQXMtWW91LUdvIGluc3RhbmNlLCBhbmQgaXQgdGFrZXMgZWZmZWN0IG9ubHkgd2hlbiBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFBvc3RQYWlkLiBWYWx1ZSByYW5nZTogXCJOb1Nwb3Q6IEEgcmVndWxhciBQYXktQXMtWW91LUdvIGluc3RhbmNlXCIsIFwiU3BvdFdpdGhQcmljZUxpbWl0OiBBIHByaWNlIHRocmVzaG9sZCBmb3IgYSBzcG90IGluc3RhbmNlLCBcIlwiU3BvdEFzUHJpY2VHbzogQSBwcmljZSB0aGF0IGlzIGJhc2VkIG9uIHRoZSBoaWdoZXN0IFBheS1Bcy1Zb3UtR28gaW5zdGFuY2UuIFwiRGVmYXVsdCB2YWx1ZTogTm9TcG90LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNwb3RTdHJhdGVneT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN0b3JhZ2VTZXRJZDogVGhlIHN0b3JhZ2Ugc2V0IElELlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN0b3JhZ2VTZXRJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN0b3JhZ2VTZXRQYXJ0aXRpb25OdW1iZXI6IFRoZSBtYXhpbXVtIG51bWJlciBvZiBwYXJ0aXRpb25zIGluIHRoZSBzdG9yYWdlIHNldC4gVGhlIHZhbHVlIG11c3QgYmUgZ3JlYXRlciB0aGFuIG9yIGVxdWFsIHRvIDIuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3RvcmFnZVNldFBhcnRpdGlvbk51bWJlcj86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tBdXRvU25hcHNob3RQb2xpY3lJZDogQXV0byBzbmFwc2hvdCBwb2xpY3kgSUQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0F1dG9TbmFwc2hvdFBvbGljeUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0J1cnN0aW5nRW5hYmxlZDogV2hldGhlciBlbmFibGUgYnVyc3RpbmcuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0J1cnN0aW5nRW5hYmxlZD86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrQ2F0ZWdvcnk6IENhdGVnb3J5IG9mIHN5c3RlbSBkaXNrLiBEZWZhdWx0IGlzIGNsb3VkX2VmZmljaWVuY3kuIHN1cHBvcnQgY2xvdWR8Y2xvdWRfZWZmaWNpZW5jeXxjbG91ZF9zc2R8Y2xvdWRfZXNzZHxlcGhlbWVyYWxfc3NkfGNsb3VkX2F1dG98Y2xvdWRfZXNzZF9lbnRyeS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0NhdGVnb3J5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0Rlc2NyaXB0aW9uOiBEZXNjcmlwdGlvbiBvZiBjcmVhdGVkIHN5c3RlbSBkaXNrLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRGVzY3JpcHRpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrRGlza05hbWU6IE5hbWUgb2YgY3JlYXRlZCBzeXN0ZW0gZGlzay5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0Rpc2tOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG06IFRoZSBhbGdvcml0aG0gdG8gdXNlIHRvIGVuY3J5cHQgdGhlIHN5c3RlbSBkaXNrLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSBhc2UtMjU2XG4gICAgICogLSBzbTQtMTI4XG4gICAgICogRGVmYXVsdCB2YWx1ZTogYXNlLTI1Ni5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRW5jcnlwdEFsZ29yaXRobT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tFbmNyeXB0ZWQ6IFNwZWNpZmllcyB3aGV0aGVyIHRvIGVuY3J5cHQgdGhlIHN5c3RlbSBkaXNrLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSB0cnVlOiBlbmNyeXB0cyB0aGUgc3lzdGVtIGRpc2suXG4gICAgICogLSBmYWxzZTogZG9lcyBub3QgZW5jcnlwdCB0aGUgc3lzdGVtIGRpc2suXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0VuY3J5cHRlZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tLbXNLZXlJZDogVGhlIElEIG9mIHRoZSBLTVMga2V5IHRvIHVzZSBmb3IgdGhlIHN5c3RlbSBkaXNrLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tLbXNLZXlJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tQZXJmb3JtYW5jZUxldmVsOiBUaGUgcGVyZm9ybWFuY2UgbGV2ZWwgb2YgdGhlIGVuaGFuY2VkIFNTRCB1c2VkIGFzIHRoZSBzeXN0ZW0gZGlzay5EZWZhdWx0IHZhbHVlOiBQTDEuIFZhbGlkIHZhbHVlczpQTDA6IEEgc2luZ2xlIGVuaGFuY2VkIFNTRCBkZWxpdmVycyB1cCB0byAxMCwwMDAgcmFuZG9tIHJlYWRcXC93cml0ZSBJT1BTLlBMMTogQSBzaW5nbGUgZW5oYW5jZWQgU1NEIGRlbGl2ZXJzIHVwIHRvIDUwLDAwMCByYW5kb20gcmVhZFxcL3dyaXRlIElPUFMuUEwyOiBBIHNpbmdsZSBlbmhhbmNlZCBTU0QgZGVsaXZlcnMgdXAgdG8gMTAwLDAwMCByYW5kb20gcmVhZFxcL3dyaXRlIElPUFMuUEwzOiBBIHNpbmdsZSBlbmhhbmNlZCBTU0QgZGVsaXZlcnMgdXAgdG8gMSwwMDAsMDAwIHJhbmRvbSByZWFkXFwvd3JpdGUgSU9QUy5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrUGVyZm9ybWFuY2VMZXZlbD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM6IFByb3Zpc2lvbmluZyBJT1BTLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrU2l6ZTogRGlzayBzaXplIG9mIHRoZSBzeXN0ZW0gZGlzaywgcmFuZ2UgZnJvbSAyMCB0byA1MDAgR0IuIElmIHlvdSBzcGVjaWZ5IHdpdGggeW91ciBvd24gaW1hZ2UsIG1ha2Ugc3VyZSB0aGUgc3lzdGVtIGRpc2sgc2l6ZSBiaWdnZXIgdGhhbiBpbWFnZSBzaXplLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tTaXplPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza1N0b3JhZ2VDbHVzdGVySWQ6IFRoZSBJRCBvZiB0aGUgZGVkaWNhdGVkIGJsb2NrIHN0b3JhZ2UgY2x1c3Rlci4gSWYgeW91IHdhbnQgdG8gdXNlIGRpc2tzIGluIGEgZGVkaWNhdGVkIGJsb2NrIHN0b3JhZ2UgY2x1c3RlciBhcyBzeXN0ZW0gZGlza3Mgd2hlbiB5b3UgY3JlYXRlIGluc3RhbmNlcywgeW91IG11c3Qgc3BlY2lmeSB0aGlzIHBhcmFtZXRlci5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHRhZ3M6IFRhZ3MgdG8gYXR0YWNoIHRvIGluc3RhbmNlLiBNYXggc3VwcG9ydCAyMCB0YWdzIHRvIGFkZCBkdXJpbmcgY3JlYXRlIGluc3RhbmNlLiBFYWNoIHRhZyB3aXRoIHR3byBwcm9wZXJ0aWVzIEtleSBhbmQgVmFsdWUsIGFuZCBLZXkgaXMgcmVxdWlyZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgdGFncz86IFJvc0luc3RhbmNlR3JvdXAuVGFnc1Byb3BlcnR5W107XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB0ZW5hbmN5OiBTcGVjaWZpZXMgd2hldGhlciB0byBjcmVhdGUgdGhlIGluc3RhbmNlIG9uIGEgZGVkaWNhdGVkIGhvc3QuIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtICoqZGVmYXVsdCoqOiBjcmVhdGVzIHRoZSBpbnN0YW5jZSBvbiBhIG5vbi1kZWRpY2F0ZWQgaG9zdC5cbiAgICAgKiAtICoqaG9zdCoqOiBjcmVhdGVzIHRoZSBpbnN0YW5jZSBvbiBhIGRlZGljYXRlZCBob3N0LiBJZiB5b3UgZG8gbm90IHNwZWNpZnkgKipEZWRpY2F0ZWRIb3N0SWQqKiwgQWxpYmFiYSBDbG91ZCBzZWxlY3RzIGEgZGVkaWNhdGVkIGhvc3QgZm9yIHRoZSBpbnN0YW5jZS5cbiAgICAgKiBEZWZhdWx0IHZhbHVlOiAqKmRlZmF1bHQqKi5cbiAgICAgKi9cbiAgICByZWFkb25seSB0ZW5hbmN5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdW5pcXVlU3VmZml4OiBTcGVjaWZpZXMgd2hldGhlciB0byBhdXRvbWF0aWNhbGx5IGFwcGVuZCBpbmNyZW1lbnRhbCBzdWZmaXhlcyB0byB0aGUgaG9zdG5hbWUgc3BlY2lmaWVkIGJ5IHRoZSAqKkhvc3ROYW1lKiogcGFyYW1ldGVyIGFuZCB0byB0aGUgaW5zdGFuY2UgbmFtZSBzcGVjaWZpZWQgYnkgdGhlICoqSW5zdGFuY2VOYW1lKiogcGFyYW1ldGVyIHdoZW4geW91IGJhdGNoIGNyZWF0ZSBpbnN0YW5jZXMuIFRoZSBpbmNyZW1lbnRhbCBzdWZmaXhlcyBjYW4gcmFuZ2UgZnJvbSAwMDEgdG8gOTk5LiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSAqKnRydWUqKjogYXBwZW5kcyBpbmNyZW1lbnRhbCBzdWZmaXhlcyB0byB0aGUgaG9zdG5hbWUgYW5kIHRoZSBpbnN0YW5jZSBuYW1lLlxuICAgICAqIC0gKipmYWxzZSoqOiBkb2VzIG5vdCBhcHBlbmQgaW5jcmVtZW50YWwgc3VmZml4ZXMgdG8gdGhlIGhvc3RuYW1lIG9yIHRoZSBpbnN0YW5jZSBuYW1lLlxuICAgICAqIERlZmF1bHQgdmFsdWU6ICoqZmFsc2UqKi5cbiAgICAgKiBXaGVuIHRoZSAqKkhvc3ROYW1lKiogb3IgKipJbnN0YW5jZU5hbWUqKiB2YWx1ZSBpcyBzZXQgaW4gdGhlIG5hbWVfcHJlZml4W2JlZ2luX251bWJlcixiaXRzXSBmb3JtYXQgd2l0aG91dCBhIHN1ZmZpeCAobmFtZV9zdWZmaXgpLCB0aGUgKipVbmlxdWVTdWZmaXgqKiBwYXJhbWV0ZXIgZG9lcyBub3QgdGFrZSBlZmZlY3QuIFRoZSBuYW1lcyBhcmUgc29ydGVkIGluIHRoZSBzcGVjaWZpZWQgc2VxdWVuY2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgdW5pcXVlU3VmZml4PzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHVwZGF0ZVBvbGljeTogU3BlY2lmeSB0aGUgcG9saWN5IGF0IHVwZGF0ZS4gXG4gICAgICogVGhlIHZhbHVlIGNhbiBiZSAnRm9yTmV3SW5zdGFuY2VzJyBvciAnRm9yQWxsSW5zdGFuY2VzJy5cbiAgICAgKiBJZiBVcGRhdGVQb2xpY3kgaXMgJ0ZvckFsbEluc3RhbmNlJywgVGhlIHVwZGF0YWJsZSBwYXJhbWV0ZXJzIGFyZSBJbnN0YW5jZVR5cGUsIEltYWdlSWQsIFN5c3RlbURpc2tTaXplLCBTeXN0ZW1EaXNrQ2F0ZWdvcnksIFBhc3N3b3JkLCBVc2VyRGF0YSxJbnRlcm5ldENoYXJnZVR5cGUsIEludGVybmV0TWF4QmFuZHdpZHRoT3V0LCBJbnRlcm5ldE1heEJhbmR3aWR0aEluLlxuICAgICAqIFRoZSBkZWZhdWx0IGlzICdGb3JOZXdJbnN0YW5jZXMnXG4gICAgICovXG4gICAgcmVhZG9ubHkgdXBkYXRlUG9saWN5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdXNlQWRkaXRpb25hbFNlcnZpY2U6IFNwZWNpZmllcyB3aGV0aGVyIHRvIHVzZSB0aGUgc3lzdGVtIGNvbmZpZ3VyYXRpb25zIGZvciB2aXJ0dWFsIG1hY2hpbmVzIHByb3ZpZGVkIGJ5IEFsaWJhYmEgQ2xvdWQuIFN5c3RlbSBjb25maWd1cmF0aW9ucyBmb3IgV2luZG93czogTlRQIGFuZCBLTVMuIFN5c3RlbSBjb25maWd1cmF0aW9ucyBmb3IgTGludXg6IE5UUCBhbmQgWVVNLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHVzZUFkZGl0aW9uYWxTZXJ2aWNlPzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHVzZXJEYXRhOiBVc2VyIGRhdGEgdG8gcGFzcyB0byBpbnN0YW5jZS4gWzEsIDE2S0JdIGNoYXJhY3RlcnMuVXNlciBkYXRhIHNob3VsZCBub3QgYmUgYmFzZTY0IGVuY29kZWQuIElmIHlvdSB3YW50IHRvIHBhc3MgYmFzZTY0IGVuY29kZWQgc3RyaW5nIHRvIHRoZSBwcm9wZXJ0eSwgdXNlIGZ1bmN0aW9uIEZuOjpCYXNlNjREZWNvZGUgdG8gZGVjb2RlIHRoZSBiYXNlNjQgc3RyaW5nIGZpcnN0LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHVzZXJEYXRhPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdnBjSWQ6IFRoZSBWUEMgaWQgdG8gY3JlYXRlIGVjcyBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSB2cGNJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHZTd2l0Y2hJZDogVGhlIHZTd2l0Y2ggSWQgdG8gY3JlYXRlIGVjcyBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSB2U3dpdGNoSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB6b25lSWQ6IFRoZSBJRCBvZiB0aGUgem9uZSB0byB3aGljaCB0aGUgaW5zdGFuY2UgYmVsb25ncy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIFxuICAgICAqIGNhbGwgdGhlIERlc2NyaWJlWm9uZXMgb3BlcmF0aW9uIHRvIHF1ZXJ5IHRoZSBtb3N0IHJlY2VudCB6b25lIGxpc3QuIFxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgZW1wdHksIHdoaWNoIG1lYW5zIHJhbmRvbSBzZWxlY3Rpb24uXG4gICAgICovXG4gICAgcmVhZG9ubHkgem9uZUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgem9uZUlkczogWm9uZSBpZHMgZm9yIHF1ZXJ5IHBhcmFtZXRlcnNcbiAgICAgKi9cbiAgICByZWFkb25seSB6b25lSWRzPzogQXJyYXk8c3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcbn1cblxuLyoqXG4gKiBUaGlzIGNsYXNzIGVuY2Fwc3VsYXRlcyBhbmQgZXh0ZW5kcyB0aGUgUk9TIHJlc291cmNlIHR5cGUgYEFMSVlVTjo6RUNTOjpJbnN0YW5jZUdyb3VwYCwgd2hpY2ggaXMgdXNlZCB0byBjcmVhdGUgYSBncm91cCBvZiBFbGFzdGljIENvbXB1dGUgU2VydmljZSAoRUNTKSBpbnN0YW5jZXMgdGhhdCBoYXZlIHRoZSBzYW1lIGNvbmZpZ3VyYXRpb25zLlxuICogQE5vdGUgVGhpcyBjbGFzcyBtYXkgaGF2ZSBzb21lIG5ldyBmdW5jdGlvbnMgdG8gZmFjaWxpdGF0ZSBkZXZlbG9wbWVudCwgc28gaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIHRoaXMgY2xhc3MgaW5zdGVhZCBvZiBgUm9zSW5zdGFuY2VHcm91cGBmb3IgYSBtb3JlIGNvbnZlbmllbnQgZGV2ZWxvcG1lbnQgZXhwZXJpZW5jZS5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1pbnN0YW5jZWdyb3VwXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnN0YW5jZUdyb3VwIGV4dGVuZHMgcm9zLlJlc291cmNlIHtcbiAgICBwcm90ZWN0ZWQgc2NvcGU6IHJvcy5Db25zdHJ1Y3Q7XG4gICAgcHJvdGVjdGVkIGlkOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHByb3BzOiBJbnN0YW5jZUdyb3VwUHJvcHM7XG4gICAgcHJvdGVjdGVkIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIEhvc3ROYW1lczogSG9zdCBuYW1lcyBvZiBjcmVhdGVkIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ckhvc3ROYW1lczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIElubmVySXBzOiBJbm5lciBJUCBhZGRyZXNzIGxpc3Qgb2YgdGhlIHNwZWNpZmllZCBpbnN0YW5jZXMuIE9ubHkgZm9yIGNsYXNzaWNhbCBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJbm5lcklwczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIEluc3RhbmNlSWRzOiBUaGUgaW5zdGFuY2UgaWQgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ckluc3RhbmNlSWRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSXB2NkFkZHJlc3NJZHM6IElQdjYgYWRkcmVzcyBJRHMgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuIE5vdGU6IFRoZSByZXR1cm4gdHlwZSBpcyBhIHR3by10aWVyIGxpc3QuSWYgdGhlIGluc3RhbmNlIGRvZXMgbm90IGhhdmUgYW55IElQdjYgYWRkcmVzcywgdGhlIGVsZW1lbnQgYXQgdGhlIGNvcnJlc3BvbmRpbmcgcG9zaXRpb24gaW4gdGhlIGxpc3QgaXMgbnVsbC4gSWYgYWxsIGluc3RhbmNlcyBkb2VzIG5vdCBoYXZlIGFueSBJUHYgYWRkcmVzcywgd2lsbCByZXR1cm4gbnVsbC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0cklwdjZBZGRyZXNzSWRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSXB2NkFkZHJlc3NlczogSVB2NiBhZGRyZXNzZXMgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuIE5vdGU6IFRoZSByZXR1cm4gdHlwZSBpcyBhIHR3by10aWVyIGxpc3QuIElmIHRoZSBpbnN0YW5jZSBkb2VzIG5vdCBoYXZlIGFueSBJUHY2IGFkZHJlc3MsIHRoZSBlbGVtZW50IGF0IHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0aW9uIGluIHRoZSBsaXN0IGlzIG51bGwuIElmIGFsbCBpbnN0YW5jZXMgZG9lcyBub3QgaGF2ZSBhbnkgSVB2IGFkZHJlc3MsIHdpbGwgcmV0dXJuIG51bGwuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJcHY2QWRkcmVzc2VzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgT3JkZXJJZDogVGhlIG9yZGVyIGlkIGxpc3Qgb2YgY3JlYXRlZCBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ck9yZGVySWQ6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBQcml2YXRlSXBzOiBQcml2YXRlIElQIGFkZHJlc3MgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuIE9ubHkgZm9yIFZQQyBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0clByaXZhdGVJcHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBQdWJsaWNJcHM6IFB1YmxpYyBJUCBhZGRyZXNzIGxpc3Qgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRyUHVibGljSXBzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgUmVsYXRlZE9yZGVySWRzOiBUaGUgcmVsYXRlZCBvcmRlciBpZCBsaXN0IG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlc1xuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRyUmVsYXRlZE9yZGVySWRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgWm9uZUlkczogWm9uZSBpZCBvZiBjcmVhdGVkIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0clpvbmVJZHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAgICogUGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAgICogUGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAgICovXG4gICAgY29uc3RydWN0b3Ioc2NvcGU6IHJvcy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBJbnN0YW5jZUdyb3VwUHJvcHMsIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OmJvb2xlYW4gPSB0cnVlKSB7XG4gICAgICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTtcbiAgICAgICAgdGhpcy5pZCA9IGlkO1xuICAgICAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgICAgIHRoaXMuZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgPSBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDtcblxuICAgICAgICBjb25zdCByb3NJbnN0YW5jZUdyb3VwID0gbmV3IFJvc0luc3RhbmNlR3JvdXAodGhpcywgaWQsICB7XG4gICAgICAgICAgICBkZWRpY2F0ZWRIb3N0SWQ6IHByb3BzLmRlZGljYXRlZEhvc3RJZCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXBJZDogcHJvcHMucmVzb3VyY2VHcm91cElkLFxuICAgICAgICAgICAgc3lzdGVtRGlza0Rlc2NyaXB0aW9uOiBwcm9wcy5zeXN0ZW1EaXNrRGVzY3JpcHRpb24sXG4gICAgICAgICAgICBpbnN0YW5jZUNoYXJnZVR5cGU6IHByb3BzLmluc3RhbmNlQ2hhcmdlVHlwZSA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLmluc3RhbmNlQ2hhcmdlVHlwZSA9PT0gbnVsbCA/ICdQb3N0UGFpZCcgOiBwcm9wcy5pbnN0YW5jZUNoYXJnZVR5cGUsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrUHJvdmlzaW9uZWRJb3BzOiBwcm9wcy5zeXN0ZW1EaXNrUHJvdmlzaW9uZWRJb3BzLFxuICAgICAgICAgICAgc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG06IHByb3BzLnN5c3RlbURpc2tFbmNyeXB0QWxnb3JpdGhtLFxuICAgICAgICAgICAgcmFtUm9sZU5hbWU6IHByb3BzLnJhbVJvbGVOYW1lLFxuICAgICAgICAgICAgcHJpdmF0ZVBvb2xPcHRpb25zOiBwcm9wcy5wcml2YXRlUG9vbE9wdGlvbnMsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrUGVyZm9ybWFuY2VMZXZlbDogcHJvcHMuc3lzdGVtRGlza1BlcmZvcm1hbmNlTGV2ZWwsXG4gICAgICAgICAgICBpbWFnZUlkOiBwcm9wcy5pbWFnZUlkLFxuICAgICAgICAgICAgaW1hZ2VPcHRpb25zOiBwcm9wcy5pbWFnZU9wdGlvbnMsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrRGlza05hbWU6IHByb3BzLnN5c3RlbURpc2tEaXNrTmFtZSxcbiAgICAgICAgICAgIHN0b3JhZ2VTZXRJZDogcHJvcHMuc3RvcmFnZVNldElkLFxuICAgICAgICAgICAgdXNlQWRkaXRpb25hbFNlcnZpY2U6IHByb3BzLnVzZUFkZGl0aW9uYWxTZXJ2aWNlLFxuICAgICAgICAgICAgdGFnczogcHJvcHMudGFncyxcbiAgICAgICAgICAgIGhvc3ROYW1lOiBwcm9wcy5ob3N0TmFtZSxcbiAgICAgICAgICAgIHN5c3RlbURpc2tTdG9yYWdlQ2x1c3RlcklkOiBwcm9wcy5zeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZCxcbiAgICAgICAgICAgIGxhdW5jaFRlbXBsYXRlTmFtZTogcHJvcHMubGF1bmNoVGVtcGxhdGVOYW1lLFxuICAgICAgICAgICAgdXBkYXRlUG9saWN5OiBwcm9wcy51cGRhdGVQb2xpY3kgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy51cGRhdGVQb2xpY3kgPT09IG51bGwgPyAnRm9yTmV3SW5zdGFuY2VzJyA6IHByb3BzLnVwZGF0ZVBvbGljeSxcbiAgICAgICAgICAgIHN5c3RlbURpc2tLbXNLZXlJZDogcHJvcHMuc3lzdGVtRGlza0ttc0tleUlkLFxuICAgICAgICAgICAgY3B1T3B0aW9uczogcHJvcHMuY3B1T3B0aW9ucyxcbiAgICAgICAgICAgIHZTd2l0Y2hJZDogcHJvcHMudlN3aXRjaElkLFxuICAgICAgICAgICAgcGVyaW9kOiBwcm9wcy5wZXJpb2QgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5wZXJpb2QgPT09IG51bGwgPyAxIDogcHJvcHMucGVyaW9kLFxuICAgICAgICAgICAgaW1hZ2VGYW1pbHk6IHByb3BzLmltYWdlRmFtaWx5LFxuICAgICAgICAgICAgbGF1bmNoVGVtcGxhdGVJZDogcHJvcHMubGF1bmNoVGVtcGxhdGVJZCxcbiAgICAgICAgICAgIGRlbGV0aW9uUHJvdGVjdGlvbjogcHJvcHMuZGVsZXRpb25Qcm90ZWN0aW9uLFxuICAgICAgICAgICAgaHR0cEVuZHBvaW50OiBwcm9wcy5odHRwRW5kcG9pbnQsXG4gICAgICAgICAgICBzZWN1cml0eUdyb3VwSWRzOiBwcm9wcy5zZWN1cml0eUdyb3VwSWRzLFxuICAgICAgICAgICAgaW50ZXJuZXRDaGFyZ2VUeXBlOiBwcm9wcy5pbnRlcm5ldENoYXJnZVR5cGUgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5pbnRlcm5ldENoYXJnZVR5cGUgPT09IG51bGwgPyAnUGF5QnlUcmFmZmljJyA6IHByb3BzLmludGVybmV0Q2hhcmdlVHlwZSxcbiAgICAgICAgICAgIGRlcGxveW1lbnRTZXRJZDogcHJvcHMuZGVwbG95bWVudFNldElkLFxuICAgICAgICAgICAgc3BvdEludGVycnVwdGlvbkJlaGF2aW9yOiBwcm9wcy5zcG90SW50ZXJydXB0aW9uQmVoYXZpb3IgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5zcG90SW50ZXJydXB0aW9uQmVoYXZpb3IgPT09IG51bGwgPyAnVGVybWluYXRlJyA6IHByb3BzLnNwb3RJbnRlcnJ1cHRpb25CZWhhdmlvcixcbiAgICAgICAgICAgIGluc3RhbmNlTmFtZTogcHJvcHMuaW5zdGFuY2VOYW1lLFxuICAgICAgICAgICAgaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQ6IHByb3BzLmludGVybmV0TWF4QmFuZHdpZHRoT3V0ID09PSB1bmRlZmluZWQgfHwgcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQgPT09IG51bGwgPyAxIDogcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQsXG4gICAgICAgICAgICB2cGNJZDogcHJvcHMudnBjSWQsXG4gICAgICAgICAgICB1bmlxdWVTdWZmaXg6IHByb3BzLnVuaXF1ZVN1ZmZpeCA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLnVuaXF1ZVN1ZmZpeCA9PT0gbnVsbCA/IGZhbHNlIDogcHJvcHMudW5pcXVlU3VmZml4LFxuICAgICAgICAgICAgbGF1bmNoVGVtcGxhdGVWZXJzaW9uOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZVZlcnNpb24sXG4gICAgICAgICAgICBzZWN1cml0eU9wdGlvbnM6IHByb3BzLnNlY3VyaXR5T3B0aW9ucyxcbiAgICAgICAgICAgIGFmZmluaXR5OiBwcm9wcy5hZmZpbml0eSxcbiAgICAgICAgICAgIHNlY3VyaXR5RW5oYW5jZW1lbnRTdHJhdGVneTogcHJvcHMuc2VjdXJpdHlFbmhhbmNlbWVudFN0cmF0ZWd5LFxuICAgICAgICAgICAgYXV0b1JlbGVhc2VUaW1lOiBwcm9wcy5hdXRvUmVsZWFzZVRpbWUsXG4gICAgICAgICAgICBwZXJpb2RVbml0OiBwcm9wcy5wZXJpb2RVbml0ID09PSB1bmRlZmluZWQgfHwgcHJvcHMucGVyaW9kVW5pdCA9PT0gbnVsbCA/ICdNb250aCcgOiBwcm9wcy5wZXJpb2RVbml0LFxuICAgICAgICAgICAgdGVuYW5jeTogcHJvcHMudGVuYW5jeSxcbiAgICAgICAgICAgIHByaXZhdGVJcEFkZHJlc3M6IHByb3BzLnByaXZhdGVJcEFkZHJlc3MsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICAgICAgICBkaXNrTWFwcGluZ3M6IHByb3BzLmRpc2tNYXBwaW5ncyxcbiAgICAgICAgICAgIHN5c3RlbURpc2tTaXplOiBwcm9wcy5zeXN0ZW1EaXNrU2l6ZSxcbiAgICAgICAgICAgIHVzZXJEYXRhOiBwcm9wcy51c2VyRGF0YSxcbiAgICAgICAgICAgIGF1dG9SZW5ldzogcHJvcHMuYXV0b1JlbmV3ID09PSB1bmRlZmluZWQgfHwgcHJvcHMuYXV0b1JlbmV3ID09PSBudWxsID8gJ0ZhbHNlJyA6IHByb3BzLmF1dG9SZW5ldyxcbiAgICAgICAgICAgIHNwb3REdXJhdGlvbjogcHJvcHMuc3BvdER1cmF0aW9uLFxuICAgICAgICAgICAgc3RvcmFnZVNldFBhcnRpdGlvbk51bWJlcjogcHJvcHMuc3RvcmFnZVNldFBhcnRpdGlvbk51bWJlcixcbiAgICAgICAgICAgIGlwdjZBZGRyZXNzZXM6IHByb3BzLmlwdjZBZGRyZXNzZXMsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrRW5jcnlwdGVkOiBwcm9wcy5zeXN0ZW1EaXNrRW5jcnlwdGVkLFxuICAgICAgICAgICAgbWF4QW1vdW50OiBwcm9wcy5tYXhBbW91bnQsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrQXV0b1NuYXBzaG90UG9saWN5SWQ6IHByb3BzLnN5c3RlbURpc2tBdXRvU25hcHNob3RQb2xpY3lJZCxcbiAgICAgICAgICAgIGRlbGV0aW9uRm9yY2U6IHByb3BzLmRlbGV0aW9uRm9yY2UgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5kZWxldGlvbkZvcmNlID09PSBudWxsID8gZmFsc2UgOiBwcm9wcy5kZWxldGlvbkZvcmNlLFxuICAgICAgICAgICAgbmV0d29ya1R5cGU6IHByb3BzLm5ldHdvcmtUeXBlLFxuICAgICAgICAgICAgaXB2NkFkZHJlc3NDb3VudDogcHJvcHMuaXB2NkFkZHJlc3NDb3VudCxcbiAgICAgICAgICAgIHNjaGVkdWxlck9wdGlvbnM6IHByb3BzLnNjaGVkdWxlck9wdGlvbnMsXG4gICAgICAgICAgICBzcG90UHJpY2VMaW1pdDogcHJvcHMuc3BvdFByaWNlTGltaXQsXG4gICAgICAgICAgICBob3N0TmFtZXM6IHByb3BzLmhvc3ROYW1lcyxcbiAgICAgICAgICAgIHpvbmVJZHM6IHByb3BzLnpvbmVJZHMsXG4gICAgICAgICAgICBpbnN0YW5jZVR5cGU6IHByb3BzLmluc3RhbmNlVHlwZSxcbiAgICAgICAgICAgIGFsbG9jYXRlUHVibGljSXA6IHByb3BzLmFsbG9jYXRlUHVibGljSXAgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5hbGxvY2F0ZVB1YmxpY0lwID09PSBudWxsID8gdHJ1ZSA6IHByb3BzLmFsbG9jYXRlUHVibGljSXAsXG4gICAgICAgICAgICBzcG90U3RyYXRlZ3k6IHByb3BzLnNwb3RTdHJhdGVneSxcbiAgICAgICAgICAgIHBhc3N3b3JkSW5oZXJpdDogcHJvcHMucGFzc3dvcmRJbmhlcml0LFxuICAgICAgICAgICAgcGFzc3dvcmQ6IHByb3BzLnBhc3N3b3JkLFxuICAgICAgICAgICAgYXV0b1JlbmV3UGVyaW9kOiBwcm9wcy5hdXRvUmVuZXdQZXJpb2QgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5hdXRvUmVuZXdQZXJpb2QgPT09IG51bGwgPyAxIDogcHJvcHMuYXV0b1JlbmV3UGVyaW9kLFxuICAgICAgICAgICAga2V5UGFpck5hbWU6IHByb3BzLmtleVBhaXJOYW1lLFxuICAgICAgICAgICAgaW9PcHRpbWl6ZWQ6IHByb3BzLmlvT3B0aW1pemVkID09PSB1bmRlZmluZWQgfHwgcHJvcHMuaW9PcHRpbWl6ZWQgPT09IG51bGwgPyAnb3B0aW1pemVkJyA6IHByb3BzLmlvT3B0aW1pemVkLFxuICAgICAgICAgICAgem9uZUlkOiBwcm9wcy56b25lSWQsXG4gICAgICAgICAgICBocGNDbHVzdGVySWQ6IHByb3BzLmhwY0NsdXN0ZXJJZCxcbiAgICAgICAgICAgIHNlY3VyaXR5R3JvdXBJZDogcHJvcHMuc2VjdXJpdHlHcm91cElkLFxuICAgICAgICAgICAgZGVwbG95bWVudFNldEdyb3VwTm86IHByb3BzLmRlcGxveW1lbnRTZXRHcm91cE5vLFxuICAgICAgICAgICAgc3lzdGVtRGlza0NhdGVnb3J5OiBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnkgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnkgPT09IG51bGwgPyAnY2xvdWRfZWZmaWNpZW5jeScgOiBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnksXG4gICAgICAgICAgICBzeXN0ZW1EaXNrQnVyc3RpbmdFbmFibGVkOiBwcm9wcy5zeXN0ZW1EaXNrQnVyc3RpbmdFbmFibGVkLFxuICAgICAgICAgICAgZW5pTWFwcGluZ3M6IHByb3BzLmVuaU1hcHBpbmdzLFxuICAgICAgICAgICAgbmV0d29ya09wdGlvbnM6IHByb3BzLm5ldHdvcmtPcHRpb25zLFxuICAgICAgICAgICAgaHR0cFRva2VuczogcHJvcHMuaHR0cFRva2VucyxcbiAgICAgICAgICAgIG5ldHdvcmtJbnRlcmZhY2VRdWV1ZU51bWJlcjogcHJvcHMubmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyLFxuICAgICAgICAgICAgY3JlZGl0U3BlY2lmaWNhdGlvbjogcHJvcHMuY3JlZGl0U3BlY2lmaWNhdGlvbixcbiAgICAgICAgfSwgZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgJiYgdGhpcy5zdGFjay5lbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCk7XG4gICAgICAgIHRoaXMucmVzb3VyY2UgPSByb3NJbnN0YW5jZUdyb3VwO1xuICAgICAgICB0aGlzLmF0dHJIb3N0TmFtZXMgPSByb3NJbnN0YW5jZUdyb3VwLmF0dHJIb3N0TmFtZXM7XG4gICAgICAgIHRoaXMuYXR0cklubmVySXBzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRySW5uZXJJcHM7XG4gICAgICAgIHRoaXMuYXR0ckluc3RhbmNlSWRzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRySW5zdGFuY2VJZHM7XG4gICAgICAgIHRoaXMuYXR0cklwdjZBZGRyZXNzSWRzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRySXB2NkFkZHJlc3NJZHM7XG4gICAgICAgIHRoaXMuYXR0cklwdjZBZGRyZXNzZXMgPSByb3NJbnN0YW5jZUdyb3VwLmF0dHJJcHY2QWRkcmVzc2VzO1xuICAgICAgICB0aGlzLmF0dHJPcmRlcklkID0gcm9zSW5zdGFuY2VHcm91cC5hdHRyT3JkZXJJZDtcbiAgICAgICAgdGhpcy5hdHRyUHJpdmF0ZUlwcyA9IHJvc0luc3RhbmNlR3JvdXAuYXR0clByaXZhdGVJcHM7XG4gICAgICAgIHRoaXMuYXR0clB1YmxpY0lwcyA9IHJvc0luc3RhbmNlR3JvdXAuYXR0clB1YmxpY0lwcztcbiAgICAgICAgdGhpcy5hdHRyUmVsYXRlZE9yZGVySWRzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRyUmVsYXRlZE9yZGVySWRzO1xuICAgICAgICB0aGlzLmF0dHJab25lSWRzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRyWm9uZUlkcztcbiAgICB9XG59XG4iXX0=
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2Vncm91cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImluc3RhbmNlZ3JvdXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLG1EQUFtRDtBQUV0QixzR0FGcEIsZ0NBQWdCLE9BRXlCO0FBNGRsRDs7OztHQUlHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFtRDNDOzs7O09BSUc7SUFDSCxZQUFZLEtBQW9CLEVBQUUsRUFBVSxFQUFFLEtBQXlCLEVBQUUsbUNBQTJDLElBQUk7UUFDcEgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxnQ0FBZ0MsR0FBRyxnQ0FBZ0MsQ0FBQztRQUV6RSxNQUFNLGdCQUFnQixHQUFHLElBQUksZ0NBQWdCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRztZQUNyRCxlQUFlLEVBQUUsS0FBSyxDQUFDLGVBQWU7WUFDdEMsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO1lBQ3RDLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxxQkFBcUI7WUFDbEQsa0JBQWtCLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsa0JBQWtCLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7WUFDdkkseUJBQXlCLEVBQUUsS0FBSyxDQUFDLHlCQUF5QjtZQUMxRCwwQkFBMEIsRUFBRSxLQUFLLENBQUMsMEJBQTBCO1lBQzVELFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCO1lBQzVDLDBC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QVEsR0FBRyxnQkFBZ0IsQ0FBQztRQUNqQyxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztRQUNwRCxJQUFJLENBQUMsWUFBWSxHQUFHLGdCQUFnQixDQUFDLFlBQVksQ0FBQztRQUNsRCxJQUFJLENBQUMsZUFBZSxHQUFHLGdCQUFnQixDQUFDLGVBQWUsQ0FBQztRQUN4RCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUM7UUFDOUQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDO1FBQzVELElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO1FBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsZ0JBQWdCLENBQUMsY0FBYyxDQUFDO1FBQ3RELElBQUksQ0FBQyxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQ3BELElBQUksQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsV0FBVyxDQUFDO0lBQ3BELENBQUM7Q0FDSjtBQTVKRCxzQ0E0SkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyByb3MgZnJvbSAnQGFsaWNsb3VkL3Jvcy1jZGstY29yZSc7XG5pbXBvcnQgeyBSb3NJbnN0YW5jZUdyb3VwIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zSW5zdGFuY2VHcm91cCBhcyBJbnN0YW5jZUdyb3VwUHJvcGVydHkgfTtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIGBJbnN0YW5jZUdyb3VwYC5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1pbnN0YW5jZWdyb3VwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5zdGFuY2VHcm91cFByb3BzIHtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGluc3RhbmNlVHlwZTogRWNzIGluc3RhbmNlIHN1cHBvcnRlZCBpbnN0YW5jZSB0eXBlLCBtYWtlIHN1cmUgaXQgc2hvdWxkIGJlIGNvcnJlY3QuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW5zdGFuY2VUeXBlOiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBtYXhBbW91bnQ6IE1heCBudW1iZXIgb2YgaW5zdGFuY2VzIHRvIGNyZWF0ZSwgc2hvdWxkIGJlIGJpZ2dlciB0aGFuICdNaW5BbW91bnQnIGFuZCBzbWFsbGVyIHRoYW4gMTAwMC5cbiAgICAgKi9cbiAgICByZWFkb25seSBtYXhBbW91bnQ6IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGFmZmluaXR5OiBTcGVjaWZpZXMgd2hldGhlciB0byBhc3NvY2lhdGUgdGhlIGluc3RhbmNlIG9uIGEgZGVkaWNhdGVkIGhvc3Qgd2l0aCB0aGUgZGVkaWNhdGVkIGhvc3QuIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtICoqZGVmYXVsdCoqOiBkb2VzIG5vdCBhc3NvY2lhdGUgdGhlIEVDUyBpbnN0YW5jZSB3aXRoIHRoZSBkZWRpY2F0ZWQgaG9zdC4gV2hlbiB5b3Ugc3RhcnQgYW4gaW5zdGFuY2UgdGhhdCB3YXMgc3RvcHBlZCBpbiBlY29ub21pY2FsIG1vZGUsIHRoZSBpbnN0YW5jZSBpcyBhdXRvbWF0aWNhbGx5IGRlcGxveWVkIHRvIGFub3RoZXIgZGVkaWNhdGVkIGhvc3QgaW4gdGhlIGF1dG9tYXRpYyBkZXBsb3ltZW50IHJlc291cmNlIHBvb2wgaWYgdGhlIGF2YWlsYWJsZSByZXNvdXJjZXMgb2YgdGhlIG9yaWdpbmFsIGRlZGljYXRlZCBob3N0IGFyZSBpbnN1ZmZpY2llbnQuXG4gICAgICogLSAqKmhvc3QqKjogYXNzb2NpYXRlcyB0aGUgRUNTIGluc3RhbmNlIHdpdGggdGhlIGRlZGljYXRlZCBob3N0LiBXaGVuIHlvdSBzdGFydCBhbiBpbnN0YW5jZSB0aGF0IHdhcyBzdG9wcGVkIGluIGVjb25vbWljYWwgbW9kZSwgdGhlIGluc3RhbmNlIHJlbWFpbnMgb24gdGhlIG9yaWdpbmFsIGRlZGljYXRlZCBob3N0LiBJZiB0aGUgYXZhaWxhYmxlIHJlc291cmNlcyBvZiB0aGUgb3JpZ2luYWwgZGVkaWNhdGVkIGhvc3QgYXJlIGluc3VmZmljaWVudCwgdGhlIGluc3RhbmNlIGNhbm5vdCBzdGFydC5cbiAgICAgKiBEZWZhdWx0IHZhbHVlOiAqKmRlZmF1bHQqKi5cbiAgICAgKi9cbiAgICByZWFkb25seSBhZmZpbml0eT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGFsbG9jYXRlUHVibGljSXA6IFRoZSBwdWJsaWMgaXAgZm9yIGVjcyBpbnN0YW5jZSwgaWYgcHJvcGVydGllcyBpcyB0cnVlLCB3aWxsIGFsbG9jYXRlIHB1YmxpYyBpcC4gSWYgcHJvcGVydHkgSW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQgc2V0IHRvIDAsIGl0IHdpbGwgbm90IGFzc2lnbiBwdWJsaWMgaXAuXG4gICAgICovXG4gICAgcmVhZG9ubHkgYWxsb2NhdGVQdWJsaWNJcD86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVsZWFzZVRpbWU6IEF1dG8gcmVsZWFzZSB0aW1lIGZvciBjcmVhdGVkIGluc3RhbmNlLCBGb2xsb3cgSVNPODYwMSBzdGFuZGFyZCB1c2luZyBVVEMgdGltZS4gZm9ybWF0IGlzICd5eXl5LU1NLWRkVEhIOm1tOnNzWicuIE5vdCBiaWdnZXIgdGhhbiAzIHllYXJzIGZyb20gdGhpcyBkYXkgb253YXJkc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dG9SZWxlYXNlVGltZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGF1dG9SZW5ldzogV2hldGhlciByZW5ldyB0aGUgZmVlIGF1dG9tYXRpY2FsbHk/IFdoZW4gdGhlIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUHJlUGFpZCwgaXQgd2lsbCB0YWtlIGVmZmVjdC4gUmFuZ2Ugb2YgdmFsdWU6VHJ1ZTogYXV0b21hdGljIHJlbmV3YWwuRmFsc2U6IG5vIGF1dG9tYXRpYyByZW5ld2FsLiBEZWZhdWx0IHZhbHVlIGlzIEZhbHNlLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBhdXRvUmVuZXc/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVuZXdQZXJpb2Q6IFRoZSB0aW1lIHBlcmlvZCBvZiBhdXRvIHJlbmV3LiBXaGVuIHRoZSBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFByZVBhaWQsIGl0IHdpbGwgdGFrZSBlZmZlY3QuSXQgY291bGQgYmUgMSwgMiwgMywgNiwgMTIsIDI0LCAzNiwgNDgsIDYwLiBEZWZhdWx0IHZhbHVlIGlzIDEuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dG9SZW5ld1BlcmlvZD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGNwdU9wdGlvbnM6IENwdSBvcHRpb25zLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGNwdU9wdGlvbnM/OiBSb3NJbnN0YW5jZUdyb3VwLkNwdU9wdGlvbnNQcm9wZXJ0eSB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGNyZWRpdFNwZWNpZmljYXRpb246IFRoZSBwZXJmb3JtYW5jZSBtb2RlIG9mIHRoZSBidXJzdGFibGUgaW5zdGFuY2UuIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtICoqU3RhbmRhcmQqKjogdGhlIHN0YW5kYXJkIG1vZGUuXG4gICAgICogLSAqKlVubGltaXRlZCoqOiB0aGUgdW5saW1pdGVkIG1vZGUuXG4gICAgICovXG4gICAgcmVhZG9ubHkgY3JlZGl0U3BlY2lmaWNhdGlvbj86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRlZGljYXRlZEhvc3RJZDogd2hpY2ggZGVkaWNhdGVkIGhvc3Qgd2lsbCBiZSBkZXBsb3llZFxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlZGljYXRlZEhvc3RJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRlbGV0aW9uRm9yY2U6IFdoZXRoZXIgZm9yY2UgZGVsZXRlIHRoZSBpbnN0YW5jZS4gRGVmYXVsdCB2YWx1ZSBpcyBmYWxzZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBkZWxldGlvbkZvcmNlPzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRlbGV0aW9uUHJvdGVjdGlvbjogV2hldGhlciBhbiBpbnN0YW5jZSBjYW4gYmUgcmVsZWFzZWQgbWFudWFsbHkgdGhyb3VnaCB0aGUgY29uc29sZSBvciBBUEksIGRlbGV0aW9uIHByb3RlY3Rpb24gb25seSBzdXBwb3J0IHBvc3RQYWlkIGluc3RhbmNlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGVsZXRpb25Qcm90ZWN0aW9uPzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRlcGxveW1lbnRTZXRHcm91cE5vOiBUaGUgbnVtYmVyIG9mIHRoZSBkZXBsb3ltZW50IHNldCBncm91cCB0byB3aGljaCB0byBkZXBsb3kgdGhlIGluc3RhbmNlLiBJZiB0aGUgZGVwbG95bWVudCBzZXQgc3BlY2lmaWVkIGJ5ICoqRGVwbG95bWVudFNldElkKiogdXNlcyB0aGUgaGlnaCBhdmFpbGFiaWxpdHkgZ3JvdXAgc3RyYXRlZ3kgKEF2YWlsYWJpbGl0eUdyb3VwKSwgeW91IGNhbiB1c2UgKipEZXBsb3ltZW50U2V0R3JvdXBObyoqIHRvIHNwZWNpZnkgYSBkZXBsb3ltZW50IHNldCBncm91cCBpbiB0aGUgZGVwbG95bWVudCBzZXQuIFZhbGlkIHZhbHVlczogMSB0byA3LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlcGxveW1lbnRTZXRHcm91cE5vPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZGVwbG95bWVudFNldElkOiBEZXBsb3ltZW50IHNldCBJRC4gVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBkZXBsb3ltZW50U2V0SWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZXNjcmlwdGlvbjogRGVzY3JpcHRpb24gb2YgdGhlIGluc3RhbmNlLCBbMiwgMjU2XSBjaGFyYWN0ZXJzLiBEbyBub3QgZmlsbCBvciBlbXB0eSwgdGhlIGRlZmF1bHQgaXMgZW1wdHkuIE9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRpc2tNYXBwaW5nczogRGlzayBtYXBwaW5ncyB0byBhdHRhY2ggdG8gaW5zdGFuY2UuIE1heCBzdXBwb3J0IDE2IGRpc2tzLlxuICAgICAqIElmIHRoZSBpbWFnZSBjb250YWlucyBhIGRhdGEgZGlzaywgeW91IGNhbiBzcGVjaWZ5IG90aGVyIHBhcmFtZXRlcnMgb2YgdGhlIGRhdGEgZGlzayB2aWEgdGhlIHNhbWUgdmFsdWUgb2YgcGFyYW1ldGVyIFwiRGV2aWNlXCIuIElmIHBhcmFtZXRlciBcIkNhdGVnb3J5XCIgaXMgbm90IHNwZWNpZmllZCwgaXQgd2lsbCBiZSBjbG91ZF9lZmZpY2llbmN5IGluc3RlYWQgb2YgXCJDYXRlZ29yeVwiIG9mIGRhdGEgZGlzayBpbiB0aGUgaW1hZ2UuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRpc2tNYXBwaW5ncz86IEFycmF5PFJvc0luc3RhbmNlR3JvdXAuRGlza01hcHBpbmdzUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZW5pTWFwcGluZ3M6IE5ldHdvcmtJbnRlcmZhY2UgdG8gYXR0YWNoIHRvIGluc3RhbmNlLiBNYXggc3VwcG9ydCAyIEVOSXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZW5pTWFwcGluZ3M/OiBBcnJheTxSb3NJbnN0YW5jZUdyb3VwLkVuaU1hcHBpbmdzUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaG9zdE5hbWU6IEhvc3QgbmFtZSBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZS4gYXQgbGVhc3QgMiBjaGFyYWN0ZXJzLCBhbmQgJy4nICctJyBJcyBub3QgdGhlIGZpcnN0IGFuZCBsYXN0IGNoYXJhY3RlcnMgYXMgaG9zdG5hbWUsIG5vdCBjb250aW51b3VzIHVzZS4gV2luZG93cyBwbGF0Zm9ybSBjYW4gYmUgdXAgdG8gMTUgY2hhcmFjdGVycywgYWxsb3dpbmcgbGV0dGVycyAod2l0aG91dCBsaW1pdGluZyBjYXNlKSwgbnVtYmVycyBhbmQgJy0nLCBhbmQgZG9lcyBub3Qgc3VwcG9ydCB0aGUgbnVtYmVyIG9mIHBvaW50cywgbm90IGFsbCBpcyBkaWdpdGFsICgnLicpLk90aGVyIChMaW51eCwgZXRjLikgcGxhdGZvcm0gdXAgdG8gNjQgY2hhcmFjdGVycywgYWxsb3dpbmcgc3VwcG9ydCBudW1iZXIgbXVsdGlwbGUgcG9pbnRzIGZvciB0aGUgcGVyaW9kIGJldHdlZW4gdGhlIHBvaW50cywgZWFjaCBwZXJtaXQgbGV0dGVycyAod2l0aG91dCBsaW1pdGluZyBjYXNlKSwgbnVtYmVycyBhbmQgJy0nIGNvbXBvbmVudHMuIFxuICAgICAqIFN1cHBvcnQgdG8gdXNlIHRoZSByZWd1bGFyIGV4cHJlc3Npb24gdG8gc2V0IHRoZSBkaWZmZXJlbnQgaW5zdGFuY2UgbmFtZSBmb3IgZWFjaCBFQ1MgaW5zdGFuY2UuIEhvc3ROYW1lIGNvdWxkIGJlIHNwZWNpZmllZCBhcyAnbmFtZV9wcmVmaXhbYmVnaW5fbnVtYmVyLGJpdHNdbmFtZV9zdWZmaXgnLCBzdWNoIGFzICdob3N0WzEyMyw0XXRhaWwnLiBJZiB5b3UgY3JlYXRlcyAzIGluc3RhbmNlcyB3aXRoIGhvc3RuYW1lICdob3N0WzEyMyw0XXRhaWwnLCBhbGwgdGhlIGhvc3QgbmFtZXMgb2YgaW5zdGFuY2VzIGFyZSBob3N0MDEyM3RhaWwsIGhvc3QwMTI0dGFpbCwgaG9zdDAxMjV0YWlsLiBUaGUgJ25hbWVfcHJlZml4W2JlZ2luX251bWJlcixiaXRzXW5hbWVfc3VmZml4JyBzaG91bGQgZm9sbG93IHRob3NlIHJ1bGVzOiBcbiAgICAgKiAxLiAnbmFtZV9wcmVmaXgnIGlzIHJlcXVpcmVkLiBcbiAgICAgKiAyLiAnbmFtZV9zdWZmaXgnIGlzIG9wdGlvbmFsLiBcbiAgICAgKiAzLiBUaGUgbmFtZSByZWd1bGFyIGV4cHJlc3Npb24gY2FuJ3QgaW5jbHVkZSBhbnkgc3BhY2VzLiBcbiAgICAgKiA0LiBUaGUgJ2JpdHMnIG11c3QgYmUgaW4gcmFuZ2UgWzEsIDZdLiBcbiAgICAgKiA1LiBUaGUgJ2JlZ2luX251bWJlcicgbXVzdCBiZSBpbiByYW5nZSBbMCwgOTk5OTk5XS4gXG4gICAgICogNi4gWW91IGNvdWxkIG9ubHkgc3BlY2lmeSAnYmVnaW5fbnVtYmVyJy4gVGhlICdiaXRzJyB3aWxsIGJlIHNldCBhcyA2IGJ5IGRlZmF1bHQuIFxuICAgICAqIDcuIFlvdSBhbHNvIGNvdWxkIG9ubHkgc3BlY2lmeSB0aGUgW10gb3IgWyxdLiBUaGUgJ2JlZ2luX251bWJlcicgd2lsbCBiZSBzZXQgYXMgMCBieSBkZWZhdWx0LCB0aGUgJ2JpdHMnIHdpbGwgYmUgc2V0IGFzIDYgYnkgZGVmYXVsdC4gXG4gICAgICogOC4gSWYgdGhlIGJpdHMgb2YgJ2JlZ2luX251bWJlcicgaXMgbGVzcyB0aGFuIHRoZSAnYml0cycgeW91IHNwZWNpZmllZCwgbGlrZSBbMTIzNCwxXSwgdGhlICdiaXRzJyB3aWxsIGJlIHNldCBhcyA2IGJ5IGRlZmF1bHQuIFxuICAgICAqIFRoZSBob3N0IG5hbWUgaXMgc3BlY2lmaWVkIGJ5IHJlZ3VsYXIgZXhwcmVzc2lvbiB3b3JrcyBhZnRlciByZXN0YXJ0IGluc3RhbmNlIG1hbnVhbGx5LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGhvc3ROYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaG9zdE5hbWVzOiBUaGUgaG9zdG5hbWUgb2YgaW5zdGFuY2UgTi4gWW91IGNhbiB1c2UgdGhpcyBwYXJhbWV0ZXIgdG8gc3BlY2lmeSBkaWZmZXJlbnQgaG9zdG5hbWVzIGZvciBtdWx0aXBsZSBpbnN0YW5jZXMuIFRha2Ugbm90ZSBvZiB0aGUgZm9sbG93aW5nIGl0ZW1zOlxuICAgICAqIC0gVGhlIG1heGltdW0gdmFsdWUgb2YgTiBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBBbW91bnQgdmFsdWUuIEZvciBleGFtcGxlLCBpZiB5b3Ugc2V0IEFtb3VudCB0byAyLCB5b3UgY2FuIHVzZSBIb3N0TmFtZXMuMSBhbmQgSG9zdE5hbWVzLjIgdG8gc3BlY2lmeSBob3N0bmFtZXMgZm9yIHRoZSBpbmRpdmlkdWFsIGluc3RhbmNlcy4gRXhhbXBsZXM6IEhvc3ROYW1lcy4xPXRlc3QxIGFuZCBIb3N0TmFtZXMuMj10ZXN0Mi5cbiAgICAgKiAtIFlvdSBjYW5ub3Qgc3BlY2lmeSBib3RoIEhvc3ROYW1lIGFuZCBIb3N0TmFtZXMuTi5cbiAgICAgKiAtIFRoZSBob3N0bmFtZSBjYW5ub3Qgc3RhcnQgb3IgZW5kIHdpdGggYSBwZXJpb2QgKC4pIG9yIGh5cGhlbiAoLSkuIFRoZSBob3N0bmFtZSBjYW5ub3QgY29udGFpbiBjb25zZWN1dGl2ZSBwZXJpb2RzICguKSBvciBoeXBoZW5zICgtKS5cbiAgICAgKiAtIEZvciBXaW5kb3dzIGluc3RhbmNlcywgdGhlIGhvc3RuYW1lIG11c3QgYmUgMiB0byAxNSBjaGFyYWN0ZXJzIGluIGxlbmd0aCBhbmQgY2Fubm90IGNvbnRhaW4gcGVyaW9kcyAoLikgb3IgY29udGFpbiBvbmx5IGRpZ2l0cy4gVGhlIGhvc3RuYW1lIGNhbiBjb250YWluIGxldHRlcnMsIGRpZ2l0cywgYW5kIGh5cGhlbnMgKC0pLlxuICAgICAqIC0gRm9yIGluc3RhbmNlcyB0aGF0IHJ1biBvdGhlciBvcGVyYXRpbmcgc3lzdGVtcyBzdWNoIGFzIExpbnV4LCB0aGUgaG9zdG5hbWUgbXVzdCBiZSAyIHRvIDY0IGNoYXJhY3RlcnMgaW4gbGVuZ3RoLiBZb3UgY2FuIHVzZSBwZXJpb2RzICguKSB0byBzZXBhcmF0ZSBhIGhvc3RuYW1lIGludG8gbXVsdGlwbGUgc2VnbWVudHMuIEVhY2ggc2VnbWVudCBjYW4gY29udGFpbiBsZXR0ZXJzLCBkaWdpdHMsIGFuZCBoeXBoZW5zICgtKS5cbiAgICAgKi9cbiAgICByZWFkb25seSBob3N0TmFtZXM/OiBBcnJheTxzdHJpbmcgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaHBjQ2x1c3RlcklkOiBUaGUgSFBDIGNsdXN0ZXIgSUQgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGJlbG9uZ3MuVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBocGNDbHVzdGVySWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBodHRwRW5kcG9pbnQ6IFNwZWNpZmllcyB3aGV0aGVyIHRoZSBhY2Nlc3MgY2hhbm5lbCBpcyBlbmFibGVkIGZvciBpbnN0YW5jZSBtZXRhZGF0YS4gVmFsaWQgdmFsdWVzOlxuICAgICAqIC0gKiplbmFibGVkKipcbiAgICAgKiAtICoqZGlzYWJsZWQqKlxuICAgICAqIERlZmF1bHQgdmFsdWU6ICoqZW5hYmxlZCoqLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGh0dHBFbmRwb2ludD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGh0dHBUb2tlbnM6IFNwZWNpZmllcyB3aGV0aGVyIHRoZSBzZWN1cml0eSBoYXJkZW5pbmcgbW9kZSAoSU1EU3YyKSBpcyBmb3JjZWZ1bGx5IHVzZWQgdG8gYWNjZXNzIGluc3RhbmNlIG1ldGFkYXRhLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSAqKm9wdGlvbmFsKio6IGRvZXMgbm90IGZvcmNlZnVsbHkgdXNlIHRoZSBzZWN1cml0eS1lbmhhbmNlZCBtb2RlIChJTURTdjIpLlxuICAgICAqIC0gKipyZXF1aXJlZCoqOiBmb3JjZWZ1bGx5IHVzZXMgdGhlIHNlY3VyaXR5LWVuaGFuY2VkIG1vZGUgKElNRFN2MikuIEFmdGVyIHlvdSBzZXQgdGhpcyBwYXJhbWV0ZXIgdG8gcmVxdWlyZWQsIHlvdSBjYW5ub3QgYWNjZXNzIGluc3RhbmNlIG1ldGFkYXRhIGluIG5vcm1hbCBtb2RlLlxuICAgICAqIERlZmF1bHQgdmFsdWU6ICoqb3B0aW9uYWwqKi5cbiAgICAgKi9cbiAgICByZWFkb25seSBodHRwVG9rZW5zPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW1hZ2VGYW1pbHk6IFRoZSBuYW1lIG9mIHRoZSBpbWFnZSBmYW1pbHkuIFlvdSBjYW4gc2V0IHRoaXMgcGFyYW1ldGVyIHRvIG9idGFpbiB0aGUgbGF0ZXN0IGF2YWlsYWJsZSBjdXN0b20gaW1hZ2UgZnJvbSB0aGUgc3BlY2lmaWVkIGltYWdlIGZhbWlseSB0byBjcmVhdGUgdGhlIGluc3RhbmNlLlxuICAgICAqIC0gKipJbWFnZUZhbWlseSoqIG11c3QgYmUgZW1wdHkgaWYgKipJbWFnZUlkKiogaXMgc3BlY2lmaWVkLlxuICAgICAqIC0gKipJbWFnZUZhbWlseSoqIGNhbiBiZSBzcGVjaWZpZWQgaWYgKipJbWFnZUlkKiogaXMgbm90IHNwZWNpZmllZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbWFnZUZhbWlseT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGltYWdlSWQ6IEltYWdlIElEIHRvIGNyZWF0ZSBlY3MgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW1hZ2VJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGltYWdlT3B0aW9uczogSW1hZ2Ugb3B0aW9ucy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbWFnZU9wdGlvbnM/OiBSb3NJbnN0YW5jZUdyb3VwLkltYWdlT3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW5zdGFuY2VDaGFyZ2VUeXBlOiBJbnN0YW5jZSBDaGFyZ2UgdHlwZSwgYWxsb3dlZCB2YWx1ZTogUHJlcGFpZCBhbmQgUG9zdHBhaWQuIElmIHNwZWNpZmllZCBQcmVwYWlkLCBwbGVhc2UgZW5zdXJlIHlvdSBoYXZlIHN1ZmZpY2llbnQgYmFsYW5jZSBpbiB5b3VyIGFjY291bnQuIE9yIGluc3RhbmNlIGNyZWF0aW9uIHdpbGwgYmUgZmFpbHVyZS4gRGVmYXVsdCB2YWx1ZSBpcyBQb3N0cGFpZC5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW5zdGFuY2VDaGFyZ2VUeXBlPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW5zdGFuY2VOYW1lOiBEaXNwbGF5IG5hbWUgb2YgdGhlIGluc3RhbmNlLCBbMiwgMTI4XSBFbmdsaXNoIG9yIENoaW5lc2UgY2hhcmFjdGVycywgbXVzdCBzdGFydCB3aXRoIGEgbGV0dGVyIG9yIENoaW5lc2UgaW4gc2l6ZSwgY2FuIGNvbnRhaW4gbnVtYmVycywgJ18nIG9yICcuJywgJy0nLiBcbiAgICAgKiBTdXBwb3J0IHRvIHVzZSB0aGUgcmVndWxhciBleHByZXNzaW9uIHRvIHNldCB0aGUgZGlmZmVyZW50IGluc3RhbmNlIG5hbWUgZm9yIGVhY2ggRUNTIGluc3RhbmNlLiBJbnN0YW5jZU5hbWUgY291bGQgYmUgc3BlY2lmaWVkIGFzICduYW1lX3ByZWZpeFtiZWdpbl9udW1iZXIsYml0c11uYW1lX3N1ZmZpeCcsIHN1Y2ggYXMgJ3Rlc3RpbnN0YW5jZVsxMjMsNF10YWlsJy4gSWYgeW91IGNyZWF0ZXMgMyBpbnN0YW5jZXMgd2l0aCB0aGUgaW5zdGFuY2UgbmFtZSAndGVzdGluc3RhbmNlWzEyMyw0XXRhaWwnLCBhbGwgdGhlIGluc3RhbmNlcycgbmFtZXMgYXJlIHRlc3RpbnN0YW5jZTAxMjN0YWlsLCB0ZXN0aW5zdGFuY2UwMTI0dGFpbCwgdGVzdGluc3RhbmNlMDEyNXRhaWwuIFxuICAgICAqIFRoZSAnbmFtZV9wcmVmaXhbYmVnaW5fbnVtYmVyLGJpdHNdbmFtZV9zdWZmaXgnIHNob3VsZCBmb2xsb3cgdGhvc2UgcnVsZXM6IFxuICAgICAqIDEuICduYW1lX3ByZWZpeCcgaXMgcmVxdWlyZWQuIFxuICAgICAqIDIuICduYW1lX3N1ZmZpeCcgaXMgb3B0aW9uYWwuIFxuICAgICAqIDMuIFRoZSBuYW1lIHJlZ3VsYXIgZXhwcmVzc2lvbiBjYW4ndCBpbmNsdWRlIGFueSBzcGFjZXMuIFxuICAgICAqIDQuIFRoZSAnYml0cycgbXVzdCBiZSBpbiByYW5nZSBbMSwgNl0uIFxuICAgICAqIDUuIFRoZSAnYmVnaW5fbnVtYmVyJyBtdXN0IGJlIGluIHJhbmdlIFswLCA5OTk5OTldLiBcbiAgICAgKiA2LiBZb3UgY291bGQgb25seSBzcGVjaWZ5ICdiZWdpbl9udW1iZXInLiBUaGUgJ2JpdHMnIHdpbGwgYmUgc2V0IGFzIDYgYnkgZGVmYXVsdC4gXG4gICAgICogNy4gWW91IGFsc28gY291bGQgb25seSBzcGVjaWZ5IHRoZSBbXSBvciBbLF0uIFRoZSAnYmVnaW5fbnVtYmVyJyB3aWxsIGJlIHNldCBhcyAwIGJ5IGRlZmF1bHQsIHRoZSAnYml0cycgd2lsbCBiZSBzZXQgYXMgNiBieSBkZWZhdWx0LiBcbiAgICAgKiA4LiBJZiB0aGUgYml0cyBvZiAnYmVnaW5fbnVtYmVyJyBpcyBsZXNzIHRoYW4gdGhlICdiaXRzJyB5b3Ugc3BlY2lmaWVkLCBsaWtlIFsxMjM0LDFdLCB0aGUgJ2JpdHMnIHdpbGwgYmUgc2V0IGFzIDYgYnkgZGVmYXVsdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnN0YW5jZU5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbnRlcm5ldENoYXJnZVR5cGU6IEluc3RhbmNlIGludGVybmV0IGFjY2VzcyBjaGFyZ2UgdHlwZS5TdXBwb3J0ICdQYXlCeUJhbmR3aWR0aCcgYW5kICdQYXlCeVRyYWZmaWMnIG9ubHkuIERlZmF1bHQgaXMgUGF5QnlUcmFmZmljXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW50ZXJuZXRDaGFyZ2VUeXBlPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQ6IFNldCBpbnRlcm5ldCBvdXRwdXQgYmFuZHdpZHRoIG9mIGluc3RhbmNlLiBVbml0IGlzIE1icHMoTWVnYSBiaXQgcGVyIHNlY29uZCkuIFJhbmdlIGlzIFswLDIwMF0uIERlZmF1bHQgaXMgMS5XaGlsZSB0aGUgcHJvcGVydHkgaXMgbm90IDAsIHB1YmxpYyBpcCB3aWxsIGJlIGFzc2lnbmVkIGZvciBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnRlcm5ldE1heEJhbmR3aWR0aE91dD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGlvT3B0aW1pemVkOiBUaGUgJ29wdGltaXplZCcgaW5zdGFuY2UgY2FuIHByb3ZpZGUgYmV0dGVyIElPIHBlcmZvcm1hbmNlLiBTdXBwb3J0ICdub25lJyBhbmQgJ29wdGltaXplZCcgb25seSwgZGVmYXVsdCBpcyAnb3B0aW1pemVkJy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpb09wdGltaXplZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGlwdjZBZGRyZXNzQ291bnQ6IFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIHJhbmRvbWx5IGdlbmVyYXRlZCBJUHY2IGFkZHJlc3NlcyBmb3IgdGhlIGVsYXN0aWMgTklDLlxuICAgICAqIE5vdGUgWW91IGNhbm5vdCBzcGVjaWZ5IHRoZSBwYXJhbWV0ZXJzIElwdjZBZGRyZXNzZXMgYW5kIElwdjZBZGRyZXNzQ291bnQgYXQgdGhlIHNhbWUgdGltZS5cbiAgICAgKiBUaGUgY2hhbmdlIG9mIHRoZSBwcm9wZXJ0eSBkb2VzIG5vdCBhZmZlY3QgZXhpc3RpbmcgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGlwdjZBZGRyZXNzQ291bnQ/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpcHY2QWRkcmVzc2VzOiBTcGVjaWZ5IG9uZSBvciBtb3JlIElQdjYgYWRkcmVzc2VzIGZvciB0aGUgZWxhc3RpYyBOSUMuIEN1cnJlbnRseSwgdGhlIG1heGltdW0gbGlzdCBzaXplIGlzIDEuIEV4YW1wbGUgdmFsdWU6IDIwMDE6ZGI4OjEyMzQ6MWEwMDo6KioqIC5cbiAgICAgKiBOb3RlIFlvdSBjYW5ub3Qgc3BlY2lmeSB0aGUgcGFyYW1ldGVycyBJcHY2QWRkcmVzc2VzIGFuZCBJcHY2QWRkcmVzc0NvdW50IGF0IHRoZSBzYW1lIHRpbWUuXG4gICAgICogVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpcHY2QWRkcmVzc2VzPzogQXJyYXk8YW55IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGtleVBhaXJOYW1lOiBTU0gga2V5IHBhaXIgbmFtZS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkga2V5UGFpck5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBsYXVuY2hUZW1wbGF0ZUlkOiBJRCBvZiBsYXVuY2ggdGVtcGxhdGUuIExhdW5jaCB0ZW1wbGF0ZSBpZCBvciBuYW1lIG11c3QgYmUgc3BlY2lmaWVkIHRvIHVzZSBsYXVuY2ggdGVtcGxhdGVcbiAgICAgKi9cbiAgICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbGF1bmNoVGVtcGxhdGVOYW1lOiBOYW1lIG9mIGxhdW5jaCB0ZW1wbGF0ZS4gTGF1bmNoIHRlbXBsYXRlIGlkIG9yIG5hbWUgbXVzdCBiZSBzcGVjaWZpZWQgdG8gdXNlIGxhdW5jaCB0ZW1wbGF0ZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxhdW5jaFRlbXBsYXRlTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGxhdW5jaFRlbXBsYXRlVmVyc2lvbjogVmVyc2lvbiBvZiBsYXVuY2ggdGVtcGxhdGUuIERlZmF1bHQgdmVyc2lvbiBpcyB1c2VkIGlmIHZlcnNpb24gaXMgbm90IHNwZWNpZmllZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZVZlcnNpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBuZXR3b3JrSW50ZXJmYWNlUXVldWVOdW1iZXI6IFRoZSBudW1iZXIgb2YgcXVldWVzIHN1cHBvcnRlZCBieSB0aGUgcHJpbWFyeSBFTkkuIFRha2Ugbm90ZSBvZiB0aGUgZm9sbG93aW5nIGl0ZW1zOlxuICAgICAqIC0gVGhlIHZhbHVlIG9mIHRoaXMgcGFyYW1ldGVyIGNhbm5vdCBleGNlZWQgdGhlIG1heGltdW0gbnVtYmVyIG9mIHF1ZXVlcyBwZXIgRU5JIGFsbG93ZWQgZm9yIHRoZSBpbnN0YW5jZSB0eXBlLlxuICAgICAqIC0gVGhlIHRvdGFsIG51bWJlciBvZiBxdWV1ZXMgZm9yIGFsbCBFTklzIG9uIHRoZSBpbnN0YW5jZSBjYW5ub3QgZXhjZWVkIHRoZSBxdWV1ZSBxdW90YSBmb3IgdGhlIGluc3RhbmNlIHR5cGUuXG4gICAgICogLSBJZiBOZXR3b3JrSW50ZXJmYWNlLk4uSW5zdGFuY2VUeXBlIGlzIHNldCB0byBQcmltYXJ5LCB5b3UgY2Fubm90IHNwZWNpZnkgTmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyIGJ1dCBjYW4gc3BlY2lmeSBOZXR3b3JrSW50ZXJmYWNlLk4uUXVldWVOdW1iZXJcbiAgICAgKi9cbiAgICByZWFkb25seSBuZXR3b3JrSW50ZXJmYWNlUXVldWVOdW1iZXI/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBuZXR3b3JrT3B0aW9uczogTmV0d29yayBvcHRpb25zLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IG5ldHdvcmtPcHRpb25zPzogUm9zSW5zdGFuY2VHcm91cC5OZXR3b3JrT3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbmV0d29ya1R5cGU6IEluc3RhbmNlIG5ldHdvcmsgdHlwZS4gU3VwcG9ydCAndnBjJyBhbmQgJ2NsYXNzaWMnLCBmb3IgY29tcGF0aWJsZSByZWFzb24sIGRlZmF1bHQgaXMgJ2NsYXNzaWMnLiBJZiB2c3dpdGNoIGlkIGFuZCB2cGMgaWQgaXMgc3BlY2lmaWVkLCB0aGUgcHJvcGVydHkgd2lsbCBiZSBmb3JjZWQgdG8gYmUgc2V0IHRvICd2cGMnXG4gICAgICovXG4gICAgcmVhZG9ubHkgbmV0d29ya1R5cGU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBwYXNzd29yZDogUGFzc3dvcmQgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2UuIE11c3QgY29udGFpbiBhdCBsZWFzdCAzIHR5cGVzIG9mIHNwZWNpYWwgY2hhcmFjdGVyLCBsb3dlciBjaGFyYWN0ZXIsIHVwcGVyIGNoYXJhY3RlciwgbnVtYmVyLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBhc3N3b3JkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGFzc3dvcmRJbmhlcml0OiBTcGVjaWZpZXMgd2hldGhlciB0byB1c2UgdGhlIHBhc3N3b3JkIHByZXNldCBpbiB0aGUgaW1hZ2UuIFRvIHVzZSB0aGUgUGFzc3dvcmRJbmhlcml0IHBhcmFtZXRlciwgdGhlIFBhc3N3b3JkIHBhcmFtZXRlciBtdXN0IGJlIGVtcHR5IGFuZCB5b3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGUgc2VsZWN0ZWQgaW1hZ2UgaGFzIGEgcGFzc3dvcmQgY29uZmlndXJlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBwYXNzd29yZEluaGVyaXQ/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGVyaW9kOiBQcmVwYWlkIHRpbWUgcGVyaW9kLiBVbml0IGlzIG1vbnRoLCBpdCBjb3VsZCBiZSBmcm9tIDEgdG8gOSBvciAxMiwgMjQsIDM2LCA0OCwgNjAuIERlZmF1bHQgdmFsdWUgaXMgMS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGVyaW9kPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGVyaW9kVW5pdDogVW5pdCBvZiBwcmVwYWlkIHRpbWUgcGVyaW9kLCBpdCBjb3VsZCBiZSBXZWVrXFwvTW9udGhcXC9ZZWFyLiBEZWZhdWx0IHZhbHVlIGlzIE1vbnRoLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBwZXJpb2RVbml0Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcHJpdmF0ZUlwQWRkcmVzczogUHJpdmF0ZSBJUCBmb3IgdGhlIGluc3RhbmNlIGNyZWF0ZWQuIE9ubHkgd29ya3MgZm9yIFZQQyBpbnN0YW5jZSBhbmQgY2Fubm90IGR1cGxpY2F0ZWQgd2l0aCBleGlzdGluZyBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBwcml2YXRlSXBBZGRyZXNzPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcHJpdmF0ZVBvb2xPcHRpb25zOiBUaGUgb3B0aW9ucyBvZiB0aGUgcHJpdmF0ZSBwb29sLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHByaXZhdGVQb29sT3B0aW9ucz86IFJvc0luc3RhbmNlR3JvdXAuUHJpdmF0ZVBvb2xPcHRpb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSByYW1Sb2xlTmFtZTogSW5zdGFuY2UgUkFNIHJvbGUgbmFtZS4gVGhlIG5hbWUgaXMgcHJvdmlkZWQgYW5kIG1haW50YWluZWQgYnkgUmVzb3VyY2UgQWNjZXNzIE1hbmFnZW1lbnQgKFJBTSkgYW5kIGNhbiBiZSBxdWVyaWVkIHVzaW5nIExpc3RSb2xlcy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBSQU0gQVBJIENyZWF0ZVJvbGUgYW5kIExpc3RSb2xlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSByYW1Sb2xlTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHJlc291cmNlR3JvdXBJZDogUmVzb3VyY2UgZ3JvdXAgaWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcmVzb3VyY2VHcm91cElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc2NoZWR1bGVyT3B0aW9uczogdW5kZWZpbmVkXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2NoZWR1bGVyT3B0aW9ucz86IFJvc0luc3RhbmNlR3JvdXAuU2NoZWR1bGVyT3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc2VjdXJpdHlFbmhhbmNlbWVudFN0cmF0ZWd5OlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNlY3VyaXR5RW5oYW5jZW1lbnRTdHJhdGVneT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNlY3VyaXR5R3JvdXBJZDogU2VjdXJpdHkgZ3JvdXAgdG8gY3JlYXRlIGVjcyBpbnN0YW5jZS4gRm9yIGNsYXNzaWMgaW5zdGFuY2UgbmVlZCB0aGUgc2VjdXJpdHkgZ3JvdXAgbm90IGJlbG9uZyB0byBWUEMsIGZvciBWUEMgaW5zdGFuY2UsIHBsZWFzZSBtYWtlIHN1cmUgdGhlIHNlY3VyaXR5IGdyb3VwIGJlbG9uZyB0byBzcGVjaWZpZWQgVlBDLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNlY3VyaXR5R3JvdXBJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNlY3VyaXR5R3JvdXBJZHM6IFRoZSBJRHMgb2Ygc2VjdXJpdHkgZ3JvdXBzIE4gdG8gd2hpY2ggdGhlIGluc3RhbmNlIGJlbG9uZ3MuIFRoZSB2YWxpZCB2YWx1ZXMgb2YgTiBhcmUgYmFzZWQgb24gdGhlIG1heGltdW0gbnVtYmVyIG9mIHNlY3VyaXR5IGdyb3VwcyB0byB3aGljaCBhbiBpbnN0YW5jZSBjYW4gYmVsb25nLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIFNlY3VyaXR5IGdyb3VwIGxpbWl0cy5Ob3RlOiBZb3UgY2Fubm90IHNwZWNpZnkgYm90aCBTZWN1cml0eUdyb3VwSWQgYW5kIFNlY3VyaXR5R3JvdXBJZHMgYXQgdGhlIHNhbWUgdGltZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBzZWN1cml0eUdyb3VwSWRzPzogQXJyYXk8c3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNlY3VyaXR5T3B0aW9uczogU2VjdXJpdHkgb3B0aW9ucy5cbiAgICAgKi9cbiAgICByZWFkb25seSBzZWN1cml0eU9wdGlvbnM/OiBSb3NJbnN0YW5jZUdyb3VwLlNlY3VyaXR5T3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3BvdER1cmF0aW9uOiBUaGUgcHJvdGVjdGlvbiBwZXJpb2Qgb2YgdGhlIHByZWVtcHRpYmxlIGluc3RhbmNlLiBVbml0OiBob3Vycy4gVmFsaWQgdmFsdWVzOiAwLCAxLCAyLCAzLCA0LCA1LCBhbmQgNi5cbiAgICAgKiBQcm90ZWN0aW9uIHBlcmlvZHMgb2YgMiwgMywgNCwgNSwgYW5kIDYgaG91cnMgYXJlIGluIGludml0YXRpb25hbCBwcmV2aWV3LiBJZiB5b3Ugd2FudCB0byBzZXQgdGhpcyBwYXJhbWV0ZXIgdG8gb25lIG9mIHRoZXNlIHZhbHVlcywgc3VibWl0IGEgdGlja2V0LlxuICAgICAqIElmIHRoaXMgcGFyYW1ldGVyIGlzIHNldCB0byAwLCBubyBwcm90ZWN0aW9uIHBlcmlvZCBpcyBjb25maWd1cmVkIGZvciB0aGUgcHJlZW1wdGlibGUgaW5zdGFuY2UuXG4gICAgICogRGVmYXVsdCB2YWx1ZTogMS5cbiAgICAgKi9cbiAgICByZWFkb25seSBzcG90RHVyYXRpb24/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzcG90SW50ZXJydXB0aW9uQmVoYXZpb3I6IFRoZSBpbnRlcnJ1cHRpb24gbW9kZSBvZiB0aGUgcHJlZW1wdGlibGUgaW5zdGFuY2UuIERlZmF1bHQgdmFsdWU6IFRlcm1pbmF0ZS4gU2V0IHRoZSB2YWx1ZSB0byBUZXJtaW5hdGUsIHdoaWNoIHNwZWNpZmllcyB0byByZWxlYXNlIHRoZSBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBzcG90SW50ZXJydXB0aW9uQmVoYXZpb3I/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzcG90UHJpY2VMaW1pdDogVGhlIGhvdXJseSBwcmljZSB0aHJlc2hvbGQgb2YgYSBpbnN0YW5jZSwgYW5kIGl0IHRha2VzIGVmZmVjdCBvbmx5IHdoZW4gcGFyYW1ldGVyIEluc3RhbmNlQ2hhcmdlVHlwZSBpcyBQb3N0UGFpZC4gVGhyZWUgZGVjaW1hbHMgaXMgYWxsb3dlZCBhdCBtb3N0LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNwb3RQcmljZUxpbWl0Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3BvdFN0cmF0ZWd5OiBUaGUgc3BvdCBzdHJhdGVneSBvZiBhIFBheS1Bcy1Zb3UtR28gaW5zdGFuY2UsIGFuZCBpdCB0YWtlcyBlZmZlY3Qgb25seSB3aGVuIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUG9zdFBhaWQuIFZhbHVlIHJhbmdlOiBcIk5vU3BvdDogQSByZWd1bGFyIFBheS1Bcy1Zb3UtR28gaW5zdGFuY2VcIiwgXCJTcG90V2l0aFByaWNlTGltaXQ6IEEgcHJpY2UgdGhyZXNob2xkIGZvciBhIHNwb3QgaW5zdGFuY2UsIFwiXCJTcG90QXNQcmljZUdvOiBBIHByaWNlIHRoYXQgaXMgYmFzZWQgb24gdGhlIGhpZ2hlc3QgUGF5LUFzLVlvdS1HbyBpbnN0YW5jZS4gXCJEZWZhdWx0IHZhbHVlOiBOb1Nwb3QuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3BvdFN0cmF0ZWd5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3RvcmFnZVNldElkOiBUaGUgc3RvcmFnZSBzZXQgSUQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3RvcmFnZVNldElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3RvcmFnZVNldFBhcnRpdGlvbk51bWJlcjogVGhlIG1heGltdW0gbnVtYmVyIG9mIHBhcnRpdGlvbnMgaW4gdGhlIHN0b3JhZ2Ugc2V0LiBUaGUgdmFsdWUgbXVzdCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8gMi5cbiAgICAgKi9cbiAgICByZWFkb25seSBzdG9yYWdlU2V0UGFydGl0aW9uTnVtYmVyPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0F1dG9TbmFwc2hvdFBvbGljeUlkOiBBdXRvIHNuYXBzaG90IHBvbGljeSBJRC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrQXV0b1NuYXBzaG90UG9saWN5SWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrQnVyc3RpbmdFbmFibGVkOiBXaGV0aGVyIGVuYWJsZSBidXJzdGluZy5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrQnVyc3RpbmdFbmFibGVkPzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tDYXRlZ29yeTogQ2F0ZWdvcnkgb2Ygc3lzdGVtIGRpc2suIERlZmF1bHQgaXMgY2xvdWRfZWZmaWNpZW5jeS4gc3VwcG9ydCBjbG91ZHxjbG91ZF9lZmZpY2llbmN5fGNsb3VkX3NzZHxjbG91ZF9lc3NkfGVwaGVtZXJhbF9zc2R8Y2xvdWRfYXV0b3xjbG91ZF9lc3NkX2VudHJ5Lk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrQ2F0ZWdvcnk/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrRGVzY3JpcHRpb246IERlc2NyaXB0aW9uIG9mIGNyZWF0ZWQgc3lzdGVtIGRpc2suT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tEZXNjcmlwdGlvbj86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tEaXNrTmFtZTogTmFtZSBvZiBjcmVhdGVkIHN5c3RlbSBkaXNrLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRGlza05hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrRW5jcnlwdEFsZ29yaXRobTogVGhlIGFsZ29yaXRobSB0byB1c2UgdG8gZW5jcnlwdCB0aGUgc3lzdGVtIGRpc2suIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtIGFzZS0yNTZcbiAgICAgKiAtIHNtNC0xMjhcbiAgICAgKiBEZWZhdWx0IHZhbHVlOiBhc2UtMjU2LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tFbmNyeXB0QWxnb3JpdGhtPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0VuY3J5cHRlZDogU3BlY2lmaWVzIHdoZXRoZXIgdG8gZW5jcnlwdCB0aGUgc3lzdGVtIGRpc2suIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtIHRydWU6IGVuY3J5cHRzIHRoZSBzeXN0ZW0gZGlzay5cbiAgICAgKiAtIGZhbHNlOiBkb2VzIG5vdCBlbmNyeXB0IHRoZSBzeXN0ZW0gZGlzay5cbiAgICAgKiBEZWZhdWx0IHZhbHVlOiBmYWxzZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRW5jcnlwdGVkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0ttc0tleUlkOiBUaGUgSUQgb2YgdGhlIEtNUyBrZXkgdG8gdXNlIGZvciB0aGUgc3lzdGVtIGRpc2suXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0ttc0tleUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza1BlcmZvcm1hbmNlTGV2ZWw6IFRoZSBwZXJmb3JtYW5jZSBsZXZlbCBvZiB0aGUgZW5oYW5jZWQgU1NEIHVzZWQgYXMgdGhlIHN5c3RlbSBkaXNrLkRlZmF1bHQgdmFsdWU6IFBMMS4gVmFsaWQgdmFsdWVzOlBMMDogQSBzaW5nbGUgZW5oYW5jZWQgU1NEIGRlbGl2ZXJzIHVwIHRvIDEwLDAwMCByYW5kb20gcmVhZFxcL3dyaXRlIElPUFMuUEwxOiBBIHNpbmdsZSBlbmhhbmNlZCBTU0QgZGVsaXZlcnMgdXAgdG8gNTAsMDAwIHJhbmRvbSByZWFkXFwvd3JpdGUgSU9QUy5QTDI6IEEgc2luZ2xlIGVuaGFuY2VkIFNTRCBkZWxpdmVycyB1cCB0byAxMDAsMDAwIHJhbmRvbSByZWFkXFwvd3JpdGUgSU9QUy5QTDM6IEEgc2luZ2xlIGVuaGFuY2VkIFNTRCBkZWxpdmVycyB1cCB0byAxLDAwMCwwMDAgcmFuZG9tIHJlYWRcXC93cml0ZSBJT1BTLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tQZXJmb3JtYW5jZUxldmVsPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza1Byb3Zpc2lvbmVkSW9wczogUHJvdmlzaW9uaW5nIElPUFMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza1Byb3Zpc2lvbmVkSW9wcz86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tTaXplOiBEaXNrIHNpemUgb2YgdGhlIHN5c3RlbSBkaXNrLCByYW5nZSBmcm9tIDIwIHRvIDUwMCBHQi4gSWYgeW91IHNwZWNpZnkgd2l0aCB5b3VyIG93biBpbWFnZSwgbWFrZSBzdXJlIHRoZSBzeXN0ZW0gZGlzayBzaXplIGJpZ2dlciB0aGFuIGltYWdlIHNpemUuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza1NpemU/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZDogVGhlIElEIG9mIHRoZSBkZWRpY2F0ZWQgYmxvY2sgc3RvcmFnZSBjbHVzdGVyLiBJZiB5b3Ugd2FudCB0byB1c2UgZGlza3MgaW4gYSBkZWRpY2F0ZWQgYmxvY2sgc3RvcmFnZSBjbHVzdGVyIGFzIHN5c3RlbSBkaXNrcyB3aGVuIHlvdSBjcmVhdGUgaW5zdGFuY2VzLCB5b3UgbXVzdCBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tTdG9yYWdlQ2x1c3RlcklkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdGFnczogVGFncyB0byBhdHRhY2ggdG8gaW5zdGFuY2UuIE1heCBzdXBwb3J0IDIwIHRhZ3MgdG8gYWRkIGR1cmluZyBjcmVhdGUgaW5zdGFuY2UuIEVhY2ggdGFnIHdpdGggdHdvIHByb3BlcnRpZXMgS2V5IGFuZCBWYWx1ZSwgYW5kIEtleSBpcyByZXF1aXJlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSB0YWdzPzogUm9zSW5zdGFuY2VHcm91cC5UYWdzUHJvcGVydHlbXTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHRlbmFuY3k6IFNwZWNpZmllcyB3aGV0aGVyIHRvIGNyZWF0ZSB0aGUgaW5zdGFuY2Ugb24gYSBkZWRpY2F0ZWQgaG9zdC4gVmFsaWQgdmFsdWVzOlxuICAgICAqIC0gKipkZWZhdWx0Kio6IGNyZWF0ZXMgdGhlIGluc3RhbmNlIG9uIGEgbm9uLWRlZGljYXRlZCBob3N0LlxuICAgICAqIC0gKipob3N0Kio6IGNyZWF0ZXMgdGhlIGluc3RhbmNlIG9uIGEgZGVkaWNhdGVkIGhvc3QuIElmIHlvdSBkbyBub3Qgc3BlY2lmeSAqKkRlZGljYXRlZEhvc3RJZCoqLCBBbGliYWJhIENsb3VkIHNlbGVjdHMgYSBkZWRpY2F0ZWQgaG9zdCBmb3IgdGhlIGluc3RhbmNlLlxuICAgICAqIERlZmF1bHQgdmFsdWU6ICoqZGVmYXVsdCoqLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHRlbmFuY3k/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB1bmlxdWVTdWZmaXg6IFNwZWNpZmllcyB3aGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgYXBwZW5kIGluY3JlbWVudGFsIHN1ZmZpeGVzIHRvIHRoZSBob3N0bmFtZSBzcGVjaWZpZWQgYnkgdGhlICoqSG9zdE5hbWUqKiBwYXJhbWV0ZXIgYW5kIHRvIHRoZSBpbnN0YW5jZSBuYW1lIHNwZWNpZmllZCBieSB0aGUgKipJbnN0YW5jZU5hbWUqKiBwYXJhbWV0ZXIgd2hlbiB5b3UgYmF0Y2ggY3JlYXRlIGluc3RhbmNlcy4gVGhlIGluY3JlbWVudGFsIHN1ZmZpeGVzIGNhbiByYW5nZSBmcm9tIDAwMSB0byA5OTkuIFZhbGlkIHZhbHVlczpcbiAgICAgKiAtICoqdHJ1ZSoqOiBhcHBlbmRzIGluY3JlbWVudGFsIHN1ZmZpeGVzIHRvIHRoZSBob3N0bmFtZSBhbmQgdGhlIGluc3RhbmNlIG5hbWUuXG4gICAgICogLSAqKmZhbHNlKio6IGRvZXMgbm90IGFwcGVuZCBpbmNyZW1lbnRhbCBzdWZmaXhlcyB0byB0aGUgaG9zdG5hbWUgb3IgdGhlIGluc3RhbmNlIG5hbWUuXG4gICAgICogRGVmYXVsdCB2YWx1ZTogKipmYWxzZSoqLlxuICAgICAqIFdoZW4gdGhlICoqSG9zdE5hbWUqKiBvciAqKkluc3RhbmNlTmFtZSoqIHZhbHVlIGlzIHNldCBpbiB0aGUgbmFtZV9wcmVmaXhbYmVnaW5fbnVtYmVyLGJpdHNdIGZvcm1hdCB3aXRob3V0IGEgc3VmZml4IChuYW1lX3N1ZmZpeCksIHRoZSAqKlVuaXF1ZVN1ZmZpeCoqIHBhcmFtZXRlciBkb2VzIG5vdCB0YWtlIGVmZmVjdC4gVGhlIG5hbWVzIGFyZSBzb3J0ZWQgaW4gdGhlIHNwZWNpZmllZCBzZXF1ZW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSB1bmlxdWVTdWZmaXg/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdXBkYXRlUG9saWN5OiBTcGVjaWZ5IHRoZSBwb2xpY3kgYXQgdXBkYXRlLiBcbiAgICAgKiBUaGUgdmFsdWUgY2FuIGJlICdGb3JOZXdJbnN0YW5jZXMnIG9yICdGb3JBbGxJbnN0YW5jZXMnLlxuICAgICAqIElmIFVwZGF0ZVBvbGljeSBpcyAnRm9yQWxsSW5zdGFuY2UnLCBUaGUgdXBkYXRhYmxlIHBhcmFtZXRlcnMgYXJlIEluc3RhbmNlVHlwZSwgSW1hZ2VJZCwgU3lzdGVtRGlza1NpemUsIFN5c3RlbURpc2tDYXRlZ29yeSwgUGFzc3dvcmQsIFVzZXJEYXRhLEludGVybmV0Q2hhcmdlVHlwZSwgSW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQsIEludGVybmV0TWF4QmFuZHdpZHRoSW4uXG4gICAgICogVGhlIGRlZmF1bHQgaXMgJ0Zvck5ld0luc3RhbmNlcydcbiAgICAgKi9cbiAgICByZWFkb25seSB1cGRhdGVQb2xpY3k/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB1c2VBZGRpdGlvbmFsU2VydmljZTogU3BlY2lmaWVzIHdoZXRoZXIgdG8gdXNlIHRoZSBzeXN0ZW0gY29uZmlndXJhdGlvbnMgZm9yIHZpcnR1YWwgbWFjaGluZXMgcHJvdmlkZWQgYnkgQWxpYmFiYSBDbG91ZC4gU3lzdGVtIGNvbmZpZ3VyYXRpb25zIGZvciBXaW5kb3dzOiBOVFAgYW5kIEtNUy4gU3lzdGVtIGNvbmZpZ3VyYXRpb25zIGZvciBMaW51eDogTlRQIGFuZCBZVU0uXG4gICAgICovXG4gICAgcmVhZG9ubHkgdXNlQWRkaXRpb25hbFNlcnZpY2U/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdXNlckRhdGE6IFVzZXIgZGF0YSB0byBwYXNzIHRvIGluc3RhbmNlLiBbMSwgMTZLQl0gY2hhcmFjdGVycy5Vc2VyIGRhdGEgc2hvdWxkIG5vdCBiZSBiYXNlNjQgZW5jb2RlZC4gSWYgeW91IHdhbnQgdG8gcGFzcyBiYXNlNjQgZW5jb2RlZCBzdHJpbmcgdG8gdGhlIHByb3BlcnR5LCB1c2UgZnVuY3Rpb24gRm46OkJhc2U2NERlY29kZSB0byBkZWNvZGUgdGhlIGJhc2U2NCBzdHJpbmcgZmlyc3QuXG4gICAgICovXG4gICAgcmVhZG9ubHkgdXNlckRhdGE/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB2cGNJZDogVGhlIFZQQyBpZCB0byBjcmVhdGUgZWNzIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHZwY0lkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdlN3aXRjaElkOiBUaGUgdlN3aXRjaCBJZCB0byBjcmVhdGUgZWNzIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHZTd2l0Y2hJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHpvbmVJZDogVGhlIElEIG9mIHRoZSB6b25lIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBiZWxvbmdzLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgXG4gICAgICogY2FsbCB0aGUgRGVzY3JpYmVab25lcyBvcGVyYXRpb24gdG8gcXVlcnkgdGhlIG1vc3QgcmVjZW50IHpvbmUgbGlzdC4gXG4gICAgICogRGVmYXVsdCB2YWx1ZSBpcyBlbXB0eSwgd2hpY2ggbWVhbnMgcmFuZG9tIHNlbGVjdGlvbi5cbiAgICAgKi9cbiAgICByZWFkb25seSB6b25lSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB6b25lSWRzOiBab25lIGlkcyBmb3IgcXVlcnkgcGFyYW1ldGVyc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IHpvbmVJZHM/OiBBcnJheTxzdHJpbmcgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xufVxuXG4vKipcbiAqIFRoaXMgY2xhc3MgZW5jYXBzdWxhdGVzIGFuZCBleHRlbmRzIHRoZSBST1MgcmVzb3VyY2UgdHlwZSBgQUxJWVVOOjpFQ1M6Okluc3RhbmNlR3JvdXBgLCB3aGljaCBpcyB1c2VkIHRvIGNyZWF0ZSBFbGFzdGljIENvbXB1dGUgU2VydmljZSAoRUNTKSBpbnN0YW5jZXMgdGhhdCBoYXZlIHRoZSBzYW1lIGNvbmZpZ3VyYXRpb25zLlxuICogQE5vdGUgVGhpcyBjbGFzcyBtYXkgaGF2ZSBzb21lIG5ldyBmdW5jdGlvbnMgdG8gZmFjaWxpdGF0ZSBkZXZlbG9wbWVudCwgc28gaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIHRoaXMgY2xhc3MgaW5zdGVhZCBvZiBgUm9zSW5zdGFuY2VHcm91cGBmb3IgYSBtb3JlIGNvbnZlbmllbnQgZGV2ZWxvcG1lbnQgZXhwZXJpZW5jZS5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1pbnN0YW5jZWdyb3VwXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnN0YW5jZUdyb3VwIGV4dGVuZHMgcm9zLlJlc291cmNlIHtcbiAgICBwcm90ZWN0ZWQgc2NvcGU6IHJvcy5Db25zdHJ1Y3Q7XG4gICAgcHJvdGVjdGVkIGlkOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHByb3BzOiBJbnN0YW5jZUdyb3VwUHJvcHM7XG4gICAgcHJvdGVjdGVkIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIEhvc3ROYW1lczogSG9zdCBuYW1lcyBvZiBjcmVhdGVkIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ckhvc3ROYW1lczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIElubmVySXBzOiBJbm5lciBJUCBhZGRyZXNzIGxpc3Qgb2YgdGhlIHNwZWNpZmllZCBpbnN0YW5jZXMuIE9ubHkgZm9yIGNsYXNzaWNhbCBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJbm5lcklwczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIEluc3RhbmNlSWRzOiBUaGUgaW5zdGFuY2UgaWQgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ckluc3RhbmNlSWRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSXB2NkFkZHJlc3NJZHM6IElQdjYgYWRkcmVzcyBJRHMgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuIE5vdGU6IFRoZSByZXR1cm4gdHlwZSBpcyBhIHR3by10aWVyIGxpc3QuSWYgdGhlIGluc3RhbmNlIGRvZXMgbm90IGhhdmUgYW55IElQdjYgYWRkcmVzcywgdGhlIGVsZW1lbnQgYXQgdGhlIGNvcnJlc3BvbmRpbmcgcG9zaXRpb24gaW4gdGhlIGxpc3QgaXMgbnVsbC4gSWYgYWxsIGluc3RhbmNlcyBkb2VzIG5vdCBoYXZlIGFueSBJUHYgYWRkcmVzcywgd2lsbCByZXR1cm4gbnVsbC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0cklwdjZBZGRyZXNzSWRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSXB2NkFkZHJlc3NlczogSVB2NiBhZGRyZXNzZXMgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuIE5vdGU6IFRoZSByZXR1cm4gdHlwZSBpcyBhIHR3by10aWVyIGxpc3QuIElmIHRoZSBpbnN0YW5jZSBkb2VzIG5vdCBoYXZlIGFueSBJUHY2IGFkZHJlc3MsIHRoZSBlbGVtZW50IGF0IHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0aW9uIGluIHRoZSBsaXN0IGlzIG51bGwuIElmIGFsbCBpbnN0YW5jZXMgZG9lcyBub3QgaGF2ZSBhbnkgSVB2IGFkZHJlc3MsIHdpbGwgcmV0dXJuIG51bGwuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJcHY2QWRkcmVzc2VzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgT3JkZXJJZDogVGhlIG9yZGVyIGlkIGxpc3Qgb2YgY3JlYXRlZCBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ck9yZGVySWQ6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBQcml2YXRlSXBzOiBQcml2YXRlIElQIGFkZHJlc3MgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuIE9ubHkgZm9yIFZQQyBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0clByaXZhdGVJcHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBQdWJsaWNJcHM6IFB1YmxpYyBJUCBhZGRyZXNzIGxpc3Qgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRyUHVibGljSXBzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgWm9uZUlkczogWm9uZSBpZCBvZiBjcmVhdGVkIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0clpvbmVJZHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAgICogUGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAgICogUGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAgICovXG4gICAgY29uc3RydWN0b3Ioc2NvcGU6IHJvcy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBJbnN0YW5jZUdyb3VwUHJvcHMsIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OmJvb2xlYW4gPSB0cnVlKSB7XG4gICAgICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTtcbiAgICAgICAgdGhpcy5pZCA9IGlkO1xuICAgICAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgICAgIHRoaXMuZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgPSBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDtcblxuICAgICAgICBjb25zdCByb3NJbnN0YW5jZUdyb3VwID0gbmV3IFJvc0luc3RhbmNlR3JvdXAodGhpcywgaWQsICB7XG4gICAgICAgICAgICBkZWRpY2F0ZWRIb3N0SWQ6IHByb3BzLmRlZGljYXRlZEhvc3RJZCxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXBJZDogcHJvcHMucmVzb3VyY2VHcm91cElkLFxuICAgICAgICAgICAgc3lzdGVtRGlza0Rlc2NyaXB0aW9uOiBwcm9wcy5zeXN0ZW1EaXNrRGVzY3JpcHRpb24sXG4gICAgICAgICAgICBpbnN0YW5jZUNoYXJnZVR5cGU6IHByb3BzLmluc3RhbmNlQ2hhcmdlVHlwZSA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLmluc3RhbmNlQ2hhcmdlVHlwZSA9PT0gbnVsbCA/ICdQb3N0UGFpZCcgOiBwcm9wcy5pbnN0YW5jZUNoYXJnZVR5cGUsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrUHJvdmlzaW9uZWRJb3BzOiBwcm9wcy5zeXN0ZW1EaXNrUHJvdmlzaW9uZWRJb3BzLFxuICAgICAgICAgICAgc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG06IHByb3BzLnN5c3RlbURpc2tFbmNyeXB0QWxnb3JpdGhtLFxuICAgICAgICAgICAgcmFtUm9sZU5hbWU6IHByb3BzLnJhbVJvbGVOYW1lLFxuICAgICAgICAgICAgcHJpdmF0ZVBvb2xPcHRpb25zOiBwcm9wcy5wcml2YXRlUG9vbE9wdGlvbnMsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrUGVyZm9ybWFuY2VMZXZlbDogcHJvcHMuc3lzdGVtRGlza1BlcmZvcm1hbmNlTGV2ZWwsXG4gICAgICAgICAgICBpbWFnZUlkOiBwcm9wcy5pbWFnZUlkLFxuICAgICAgICAgICAgaW1hZ2VPcHRpb25zOiBwcm9wcy5pbWFnZU9wdGlvbnMsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrRGlza05hbWU6IHByb3BzLnN5c3RlbURpc2tEaXNrTmFtZSxcbiAgICAgICAgICAgIHN0b3JhZ2VTZXRJZDogcHJvcHMuc3RvcmFnZVNldElkLFxuICAgICAgICAgICAgdXNlQWRkaXRpb25hbFNlcnZpY2U6IHByb3BzLnVzZUFkZGl0aW9uYWxTZXJ2aWNlLFxuICAgICAgICAgICAgdGFnczogcHJvcHMudGFncyxcbiAgICAgICAgICAgIGhvc3ROYW1lOiBwcm9wcy5ob3N0TmFtZSxcbiAgICAgICAgICAgIHN5c3RlbURpc2tTdG9yYWdlQ2x1c3RlcklkOiBwcm9wcy5zeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZCxcbiAgICAgICAgICAgIGxhdW5jaFRlbXBsYXRlTmFtZTogcHJvcHMubGF1bmNoVGVtcGxhdGVOYW1lLFxuICAgICAgICAgICAgdXBkYXRlUG9saWN5OiBwcm9wcy51cGRhdGVQb2xpY3kgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy51cGRhdGVQb2xpY3kgPT09IG51bGwgPyAnRm9yTmV3SW5zdGFuY2VzJyA6IHByb3BzLnVwZGF0ZVBvbGljeSxcbiAgICAgICAgICAgIHN5c3RlbURpc2tLbXNLZXlJZDogcHJvcHMuc3lzdGVtRGlza0ttc0tleUlkLFxuICAgICAgICAgICAgY3B1T3B0aW9uczogcHJvcHMuY3B1T3B0aW9ucyxcbiAgICAgICAgICAgIHZTd2l0Y2hJZDogcHJvcHMudlN3aXRjaElkLFxuICAgICAgICAgICAgcGVyaW9kOiBwcm9wcy5wZXJpb2QgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5wZXJpb2QgPT09IG51bGwgPyAxIDogcHJvcHMucGVyaW9kLFxuICAgICAgICAgICAgaW1hZ2VGYW1pbHk6IHByb3BzLmltYWdlRmFtaWx5LFxuICAgICAgICAgICAgbGF1bmNoVGVtcGxhdGVJZDogcHJvcHMubGF1bmNoVGVtcGxhdGVJZCxcbiAgICAgICAgICAgIGRlbGV0aW9uUHJvdGVjdGlvbjogcHJvcHMuZGVsZXRpb25Qcm90ZWN0aW9uLFxuICAgICAgICAgICAgaHR0cEVuZHBvaW50OiBwcm9wcy5odHRwRW5kcG9pbnQsXG4gICAgICAgICAgICBzZWN1cml0eUdyb3VwSWRzOiBwcm9wcy5zZWN1cml0eUdyb3VwSWRzLFxuICAgICAgICAgICAgaW50ZXJuZXRDaGFyZ2VUeXBlOiBwcm9wcy5pbnRlcm5ldENoYXJnZVR5cGUgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5pbnRlcm5ldENoYXJnZVR5cGUgPT09IG51bGwgPyAnUGF5QnlUcmFmZmljJyA6IHByb3BzLmludGVybmV0Q2hhcmdlVHlwZSxcbiAgICAgICAgICAgIGRlcGxveW1lbnRTZXRJZDogcHJvcHMuZGVwbG95bWVudFNldElkLFxuICAgICAgICAgICAgc3BvdEludGVycnVwdGlvbkJlaGF2aW9yOiBwcm9wcy5zcG90SW50ZXJydXB0aW9uQmVoYXZpb3IgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5zcG90SW50ZXJydXB0aW9uQmVoYXZpb3IgPT09IG51bGwgPyAnVGVybWluYXRlJyA6IHByb3BzLnNwb3RJbnRlcnJ1cHRpb25CZWhhdmlvcixcbiAgICAgICAgICAgIGluc3RhbmNlTmFtZTogcHJvcHMuaW5zdGFuY2VOYW1lLFxuICAgICAgICAgICAgaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQ6IHByb3BzLmludGVybmV0TWF4QmFuZHdpZHRoT3V0ID09PSB1bmRlZmluZWQgfHwgcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQgPT09IG51bGwgPyAxIDogcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQsXG4gICAgICAgICAgICB2cGNJZDogcHJvcHMudnBjSWQsXG4gICAgICAgICAgICB1bmlxdWVTdWZmaXg6IHByb3BzLnVuaXF1ZVN1ZmZpeCA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLnVuaXF1ZVN1ZmZpeCA9PT0gbnVsbCA/IGZhbHNlIDogcHJvcHMudW5pcXVlU3VmZml4LFxuICAgICAgICAgICAgbGF1bmNoVGVtcGxhdGVWZXJzaW9uOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZVZlcnNpb24sXG4gICAgICAgICAgICBzZWN1cml0eU9wdGlvbnM6IHByb3BzLnNlY3VyaXR5T3B0aW9ucyxcbiAgICAgICAgICAgIGFmZmluaXR5OiBwcm9wcy5hZmZpbml0eSxcbiAgICAgICAgICAgIHNlY3VyaXR5RW5oYW5jZW1lbnRTdHJhdGVneTogcHJvcHMuc2VjdXJpdHlFbmhhbmNlbWVudFN0cmF0ZWd5LFxuICAgICAgICAgICAgYXV0b1JlbGVhc2VUaW1lOiBwcm9wcy5hdXRvUmVsZWFzZVRpbWUsXG4gICAgICAgICAgICBwZXJpb2RVbml0OiBwcm9wcy5wZXJpb2RVbml0ID09PSB1bmRlZmluZWQgfHwgcHJvcHMucGVyaW9kVW5pdCA9PT0gbnVsbCA/ICdNb250aCcgOiBwcm9wcy5wZXJpb2RVbml0LFxuICAgICAgICAgICAgdGVuYW5jeTogcHJvcHMudGVuYW5jeSxcbiAgICAgICAgICAgIHByaXZhdGVJcEFkZHJlc3M6IHByb3BzLnByaXZhdGVJcEFkZHJlc3MsXG4gICAgICAgICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICAgICAgICBkaXNrTWFwcGluZ3M6IHByb3BzLmRpc2tNYXBwaW5ncyxcbiAgICAgICAgICAgIHN5c3RlbURpc2tTaXplOiBwcm9wcy5zeXN0ZW1EaXNrU2l6ZSxcbiAgICAgICAgICAgIHVzZXJEYXRhOiBwcm9wcy51c2VyRGF0YSxcbiAgICAgICAgICAgIGF1dG9SZW5ldzogcHJvcHMuYXV0b1JlbmV3ID09PSB1bmRlZmluZWQgfHwgcHJvcHMuYXV0b1JlbmV3ID09PSBudWxsID8gJ0ZhbHNlJyA6IHByb3BzLmF1dG9SZW5ldyxcbiAgICAgICAgICAgIHNwb3REdXJhdGlvbjogcHJvcHMuc3BvdER1cmF0aW9uLFxuICAgICAgICAgICAgc3RvcmFnZVNldFBhcnRpdGlvbk51bWJlcjogcHJvcHMuc3RvcmFnZVNldFBhcnRpdGlvbk51bWJlcixcbiAgICAgICAgICAgIGlwdjZBZGRyZXNzZXM6IHByb3BzLmlwdjZBZGRyZXNzZXMsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrRW5jcnlwdGVkOiBwcm9wcy5zeXN0ZW1EaXNrRW5jcnlwdGVkLFxuICAgICAgICAgICAgbWF4QW1vdW50OiBwcm9wcy5tYXhBbW91bnQsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrQXV0b1NuYXBzaG90UG9saWN5SWQ6IHByb3BzLnN5c3RlbURpc2tBdXRvU25hcHNob3RQb2xpY3lJZCxcbiAgICAgICAgICAgIGRlbGV0aW9uRm9yY2U6IHByb3BzLmRlbGV0aW9uRm9yY2UgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5kZWxldGlvbkZvcmNlID09PSBudWxsID8gZmFsc2UgOiBwcm9wcy5kZWxldGlvbkZvcmNlLFxuICAgICAgICAgICAgbmV0d29ya1R5cGU6IHByb3BzLm5ldHdvcmtUeXBlLFxuICAgICAgICAgICAgaXB2NkFkZHJlc3NDb3VudDogcHJvcHMuaXB2NkFkZHJlc3NDb3VudCxcbiAgICAgICAgICAgIHNjaGVkdWxlck9wdGlvbnM6IHByb3BzLnNjaGVkdWxlck9wdGlvbnMsXG4gICAgICAgICAgICBzcG90UHJpY2VMaW1pdDogcHJvcHMuc3BvdFByaWNlTGltaXQsXG4gICAgICAgICAgICBob3N0TmFtZXM6IHByb3BzLmhvc3ROYW1lcyxcbiAgICAgICAgICAgIHpvbmVJZHM6IHByb3BzLnpvbmVJZHMsXG4gICAgICAgICAgICBpbnN0YW5jZVR5cGU6IHByb3BzLmluc3RhbmNlVHlwZSxcbiAgICAgICAgICAgIGFsbG9jYXRlUHVibGljSXA6IHByb3BzLmFsbG9jYXRlUHVibGljSXAgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5hbGxvY2F0ZVB1YmxpY0lwID09PSBudWxsID8gdHJ1ZSA6IHByb3BzLmFsbG9jYXRlUHVibGljSXAsXG4gICAgICAgICAgICBzcG90U3RyYXRlZ3k6IHByb3BzLnNwb3RTdHJhdGVneSxcbiAgICAgICAgICAgIHBhc3N3b3JkSW5oZXJpdDogcHJvcHMucGFzc3dvcmRJbmhlcml0LFxuICAgICAgICAgICAgcGFzc3dvcmQ6IHByb3BzLnBhc3N3b3JkLFxuICAgICAgICAgICAgYXV0b1JlbmV3UGVyaW9kOiBwcm9wcy5hdXRvUmVuZXdQZXJpb2QgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5hdXRvUmVuZXdQZXJpb2QgPT09IG51bGwgPyAxIDogcHJvcHMuYXV0b1JlbmV3UGVyaW9kLFxuICAgICAgICAgICAga2V5UGFpck5hbWU6IHByb3BzLmtleVBhaXJOYW1lLFxuICAgICAgICAgICAgaW9PcHRpbWl6ZWQ6IHByb3BzLmlvT3B0aW1pemVkID09PSB1bmRlZmluZWQgfHwgcHJvcHMuaW9PcHRpbWl6ZWQgPT09IG51bGwgPyAnb3B0aW1pemVkJyA6IHByb3BzLmlvT3B0aW1pemVkLFxuICAgICAgICAgICAgem9uZUlkOiBwcm9wcy56b25lSWQsXG4gICAgICAgICAgICBocGNDbHVzdGVySWQ6IHByb3BzLmhwY0NsdXN0ZXJJZCxcbiAgICAgICAgICAgIHNlY3VyaXR5R3JvdXBJZDogcHJvcHMuc2VjdXJpdHlHcm91cElkLFxuICAgICAgICAgICAgZGVwbG95bWVudFNldEdyb3VwTm86IHByb3BzLmRlcGxveW1lbnRTZXRHcm91cE5vLFxuICAgICAgICAgICAgc3lzdGVtRGlza0NhdGVnb3J5OiBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnkgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnkgPT09IG51bGwgPyAnY2xvdWRfZWZmaWNpZW5jeScgOiBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnksXG4gICAgICAgICAgICBzeXN0ZW1EaXNrQnVyc3RpbmdFbmFibGVkOiBwcm9wcy5zeXN0ZW1EaXNrQnVyc3RpbmdFbmFibGVkLFxuICAgICAgICAgICAgZW5pTWFwcGluZ3M6IHByb3BzLmVuaU1hcHBpbmdzLFxuICAgICAgICAgICAgbmV0d29ya09wdGlvbnM6IHByb3BzLm5ldHdvcmtPcHRpb25zLFxuICAgICAgICAgICAgaHR0cFRva2VuczogcHJvcHMuaHR0cFRva2VucyxcbiAgICAgICAgICAgIG5ldHdvcmtJbnRlcmZhY2VRdWV1ZU51bWJlcjogcHJvcHMubmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyLFxuICAgICAgICAgICAgY3JlZGl0U3BlY2lmaWNhdGlvbjogcHJvcHMuY3JlZGl0U3BlY2lmaWNhdGlvbixcbiAgICAgICAgfSwgZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgJiYgdGhpcy5zdGFjay5lbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCk7XG4gICAgICAgIHRoaXMucmVzb3VyY2UgPSByb3NJbnN0YW5jZUdyb3VwO1xuICAgICAgICB0aGlzLmF0dHJIb3N0TmFtZXMgPSByb3NJbnN0YW5jZUdyb3VwLmF0dHJIb3N0TmFtZXM7XG4gICAgICAgIHRoaXMuYXR0cklubmVySXBzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRySW5uZXJJcHM7XG4gICAgICAgIHRoaXMuYXR0ckluc3RhbmNlSWRzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRySW5zdGFuY2VJZHM7XG4gICAgICAgIHRoaXMuYXR0cklwdjZBZGRyZXNzSWRzID0gcm9zSW5zdGFuY2VHcm91cC5hdHRySXB2NkFkZHJlc3NJZHM7XG4gICAgICAgIHRoaXMuYXR0cklwdjZBZGRyZXNzZXMgPSByb3NJbnN0YW5jZUdyb3VwLmF0dHJJcHY2QWRkcmVzc2VzO1xuICAgICAgICB0aGlzLmF0dHJPcmRlcklkID0gcm9zSW5zdGFuY2VHcm91cC5hdHRyT3JkZXJJZDtcbiAgICAgICAgdGhpcy5hdHRyUHJpdmF0ZUlwcyA9IHJvc0luc3RhbmNlR3JvdXAuYXR0clByaXZhdGVJcHM7XG4gICAgICAgIHRoaXMuYXR0clB1YmxpY0lwcyA9IHJvc0luc3RhbmNlR3JvdXAuYXR0clB1YmxpY0lwcztcbiAgICAgICAgdGhpcy5hdHRyWm9uZUlkcyA9IHJvc0luc3RhbmNlR3JvdXAuYXR0clpvbmVJZHM7XG4gICAgfVxufVxuIl19
|
|
@@ -16,7 +16,7 @@ export interface SecurityGroupEgressesProps {
|
|
|
16
16
|
readonly securityGroupId: string | ros.IResolvable;
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
|
-
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupEgresses
|
|
19
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupEgresses`, which is used to associate multiple outbound rules with a security group at a time.
|
|
20
20
|
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosSecurityGroupEgresses`for a more convenient development experience.
|
|
21
21
|
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-securitygroupegresses
|
|
22
22
|
*/
|
|
@@ -5,7 +5,7 @@ const ros = require("@alicloud/ros-cdk-core");
|
|
|
5
5
|
const ecs_generated_1 = require("./ecs.generated");
|
|
6
6
|
Object.defineProperty(exports, "SecurityGroupEgressesProperty", { enumerable: true, get: function () { return ecs_generated_1.RosSecurityGroupEgresses; } });
|
|
7
7
|
/**
|
|
8
|
-
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupEgresses
|
|
8
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupEgresses`, which is used to associate multiple outbound rules with a security group at a time.
|
|
9
9
|
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosSecurityGroupEgresses`for a more convenient development experience.
|
|
10
10
|
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-securitygroupegresses
|
|
11
11
|
*/
|
|
@@ -29,4 +29,4 @@ class SecurityGroupEgresses extends ros.Resource {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
exports.SecurityGroupEgresses = SecurityGroupEgresses;
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHlncm91cGVncmVzc2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2VjdXJpdHlncm91cGVncmVzc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUE4QztBQUM5QyxtREFBMkQ7QUFFdEIsOEdBRjVCLHdDQUF3QixPQUVpQztBQW1CbEU7Ozs7R0FJRztBQUNILE1BQWEscUJBQXNCLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFNbkQ7Ozs7T0FJRztJQUNILFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBaUMsRUFBRSxtQ0FBMkMsSUFBSTtRQUM1SCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGdDQUFnQyxDQUFDO1FBRXpFLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSx3Q0FBd0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFHO1lBQ3JFLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZTtZQUN0QyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDakMsRUFBRSxnQ0FBZ0MsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFFBQVEsR0FBRyx3QkFBd0IsQ0FBQztJQUM3QyxDQUFDO0NBQ0o7QUF4QkQsc0RBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcm9zIGZyb20gJ0BhbGljbG91ZC9yb3MtY2RrLWNvcmUnO1xuaW1wb3J0IHsgUm9zU2VjdXJpdHlHcm91cEVncmVzc2VzIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zU2VjdXJpdHlHcm91cEVncmVzc2VzIGFzIFNlY3VyaXR5R3JvdXBFZ3Jlc3Nlc1Byb3BlcnR5IH07XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBgU2VjdXJpdHlHcm91cEVncmVzc2VzYC5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1zZWN1cml0eWdyb3VwZWdyZXNzZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eUdyb3VwRWdyZXNzZXNQcm9wcyB7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBwZXJtaXNzaW9uczogQSBsaXN0IG9mIHNlY3VyaXR5IGdyb3VwIHJ1bGVzLiBBIGh1bmRyZWQgYXQgbW9zdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBwZXJtaXNzaW9uczogQXJyYXk8Um9zU2VjdXJpdHlHcm91cEVncmVzc2VzLlBlcm1pc3Npb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHlncm91cGVncmVzc2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2VjdXJpdHlncm91cGVncmVzc2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUE4QztBQUM5QyxtREFBMkQ7QUFFdEIsOEdBRjVCLHdDQUF3QixPQUVpQztBQW1CbEU7Ozs7R0FJRztBQUNILE1BQWEscUJBQXNCLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFNbkQ7Ozs7T0FJRztJQUNILFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBaUMsRUFBRSxtQ0FBMkMsSUFBSTtRQUM1SCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGdDQUFnQyxDQUFDO1FBRXpFLE1BQU0sd0JBQXdCLEdBQUcsSUFBSSx3Q0FBd0IsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFHO1lBQ3JFLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZTtZQUN0QyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDakMsRUFBRSxnQ0FBZ0MsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLFFBQVEsR0FBRyx3QkFBd0IsQ0FBQztJQUM3QyxDQUFDO0NBQ0o7QUF4QkQsc0RBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcm9zIGZyb20gJ0BhbGljbG91ZC9yb3MtY2RrLWNvcmUnO1xuaW1wb3J0IHsgUm9zU2VjdXJpdHlHcm91cEVncmVzc2VzIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zU2VjdXJpdHlHcm91cEVncmVzc2VzIGFzIFNlY3VyaXR5R3JvdXBFZ3Jlc3Nlc1Byb3BlcnR5IH07XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBgU2VjdXJpdHlHcm91cEVncmVzc2VzYC5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1zZWN1cml0eWdyb3VwZWdyZXNzZXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN1cml0eUdyb3VwRWdyZXNzZXNQcm9wcyB7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBwZXJtaXNzaW9uczogQSBsaXN0IG9mIHNlY3VyaXR5IGdyb3VwIHJ1bGVzLiBBIGh1bmRyZWQgYXQgbW9zdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBwZXJtaXNzaW9uczogQXJyYXk8Um9zU2VjdXJpdHlHcm91cEVncmVzc2VzLlBlcm1pc3Npb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc2VjdXJpdHlHcm91cElkOiBJZCBvZiB0aGUgc2VjdXJpdHkgZ3JvdXAuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkOiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG59XG5cbi8qKlxuICogVGhpcyBjbGFzcyBlbmNhcHN1bGF0ZXMgYW5kIGV4dGVuZHMgdGhlIFJPUyByZXNvdXJjZSB0eXBlIGBBTElZVU46OkVDUzo6U2VjdXJpdHlHcm91cEVncmVzc2VzYCwgd2hpY2ggaXMgdXNlZCB0byBhc3NvY2lhdGUgbXVsdGlwbGUgb3V0Ym91bmQgcnVsZXMgd2l0aCBhIHNlY3VyaXR5IGdyb3VwIGF0IGEgdGltZS5cbiAqIEBOb3RlIFRoaXMgY2xhc3MgbWF5IGhhdmUgc29tZSBuZXcgZnVuY3Rpb25zIHRvIGZhY2lsaXRhdGUgZGV2ZWxvcG1lbnQsIHNvIGl0IGlzIHJlY29tbWVuZGVkIHRvIHVzZSB0aGlzIGNsYXNzIGluc3RlYWQgb2YgYFJvc1NlY3VyaXR5R3JvdXBFZ3Jlc3Nlc2Bmb3IgYSBtb3JlIGNvbnZlbmllbnQgZGV2ZWxvcG1lbnQgZXhwZXJpZW5jZS5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1zZWN1cml0eWdyb3VwZWdyZXNzZXNcbiAqL1xuZXhwb3J0IGNsYXNzIFNlY3VyaXR5R3JvdXBFZ3Jlc3NlcyBleHRlbmRzIHJvcy5SZXNvdXJjZSB7XG4gICAgcHJvdGVjdGVkIHNjb3BlOiByb3MuQ29uc3RydWN0O1xuICAgIHByb3RlY3RlZCBpZDogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBwcm9wczogU2VjdXJpdHlHcm91cEVncmVzc2VzUHJvcHM7XG4gICAgcHJvdGVjdGVkIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogUGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICAgKiBQYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICAgKiBQYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogcm9zLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNlY3VyaXR5R3JvdXBFZ3Jlc3Nlc1Byb3BzLCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDpib29sZWFuID0gdHJ1ZSkge1xuICAgICAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7XG4gICAgICAgIHRoaXMuaWQgPSBpZDtcbiAgICAgICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgICAgICB0aGlzLmVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50ID0gZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQ7XG5cbiAgICAgICAgY29uc3Qgcm9zU2VjdXJpdHlHcm91cEVncmVzc2VzID0gbmV3IFJvc1NlY3VyaXR5R3JvdXBFZ3Jlc3Nlcyh0aGlzLCBpZCwgIHtcbiAgICAgICAgICAgIHNlY3VyaXR5R3JvdXBJZDogcHJvcHMuc2VjdXJpdHlHcm91cElkLFxuICAgICAgICAgICAgcGVybWlzc2lvbnM6IHByb3BzLnBlcm1pc3Npb25zLFxuICAgICAgICB9LCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCAmJiB0aGlzLnN0YWNrLmVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50KTtcbiAgICAgICAgdGhpcy5yZXNvdXJjZSA9IHJvc1NlY3VyaXR5R3JvdXBFZ3Jlc3NlcztcbiAgICB9XG59XG4iXX0=
|
|
@@ -16,7 +16,7 @@ export interface SecurityGroupIngressesProps {
|
|
|
16
16
|
readonly securityGroupId: string | ros.IResolvable;
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
|
-
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupIngresses
|
|
19
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupIngresses`, which is used to associate multiple inbound rules with a security group at a time.
|
|
20
20
|
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosSecurityGroupIngresses`for a more convenient development experience.
|
|
21
21
|
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-securitygroupingresses
|
|
22
22
|
*/
|
|
@@ -5,7 +5,7 @@ const ros = require("@alicloud/ros-cdk-core");
|
|
|
5
5
|
const ecs_generated_1 = require("./ecs.generated");
|
|
6
6
|
Object.defineProperty(exports, "SecurityGroupIngressesProperty", { enumerable: true, get: function () { return ecs_generated_1.RosSecurityGroupIngresses; } });
|
|
7
7
|
/**
|
|
8
|
-
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupIngresses
|
|
8
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::SecurityGroupIngresses`, which is used to associate multiple inbound rules with a security group at a time.
|
|
9
9
|
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosSecurityGroupIngresses`for a more convenient development experience.
|
|
10
10
|
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-securitygroupingresses
|
|
11
11
|
*/
|
|
@@ -29,4 +29,4 @@ class SecurityGroupIngresses extends ros.Resource {
|
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
exports.SecurityGroupIngresses = SecurityGroupIngresses;
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHlncm91cGluZ3Jlc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNlY3VyaXR5Z3JvdXBpbmdyZXNzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLG1EQUE0RDtBQUV0QiwrR0FGN0IseUNBQXlCLE9BRWtDO0FBbUJwRTs7OztHQUlHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxHQUFHLENBQUMsUUFBUTtJQU1wRDs7OztPQUlHO0lBQ0gsWUFBWSxLQUFvQixFQUFFLEVBQVUsRUFBRSxLQUFrQyxFQUFFLG1DQUEyQyxJQUFJO1FBQzdILEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsZ0NBQWdDLEdBQUcsZ0NBQWdDLENBQUM7UUFFekUsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLHlDQUF5QixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUc7WUFDdkUsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO1lBQ3RDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztTQUNqQyxFQUFFLGdDQUFnQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsUUFBUSxHQUFHLHlCQUF5QixDQUFDO0lBQzlDLENBQUM7Q0FDSjtBQXhCRCx3REF3QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyByb3MgZnJvbSAnQGFsaWNsb3VkL3Jvcy1jZGstY29yZSc7XG5pbXBvcnQgeyBSb3NTZWN1cml0eUdyb3VwSW5ncmVzc2VzIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zU2VjdXJpdHlHcm91cEluZ3Jlc3NlcyBhcyBTZWN1cml0eUdyb3VwSW5ncmVzc2VzUHJvcGVydHkgfTtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIGBTZWN1cml0eUdyb3VwSW5ncmVzc2VzYC5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1zZWN1cml0eWdyb3VwaW5ncmVzc2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlHcm91cEluZ3Jlc3Nlc1Byb3BzIHtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBlcm1pc3Npb25zOiBBIGxpc3Qgb2Ygc2VjdXJpdHkgZ3JvdXAgcnVsZXMuIEEgaHVuZHJlZCBhdCBtb3N0LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBlcm1pc3Npb25zOiBBcnJheTxSb3NTZWN1cml0eUdyb3VwSW5ncmVzc2VzLlBlcm1pc3Npb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHlncm91cGluZ3Jlc3Nlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInNlY3VyaXR5Z3JvdXBpbmdyZXNzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLG1EQUE0RDtBQUV0QiwrR0FGN0IseUNBQXlCLE9BRWtDO0FBbUJwRTs7OztHQUlHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxHQUFHLENBQUMsUUFBUTtJQU1wRDs7OztPQUlHO0lBQ0gsWUFBWSxLQUFvQixFQUFFLEVBQVUsRUFBRSxLQUFrQyxFQUFFLG1DQUEyQyxJQUFJO1FBQzdILEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsZ0NBQWdDLEdBQUcsZ0NBQWdDLENBQUM7UUFFekUsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLHlDQUF5QixDQUFDLElBQUksRUFBRSxFQUFFLEVBQUc7WUFDdkUsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO1lBQ3RDLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztTQUNqQyxFQUFFLGdDQUFnQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsUUFBUSxHQUFHLHlCQUF5QixDQUFDO0lBQzlDLENBQUM7Q0FDSjtBQXhCRCx3REF3QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyByb3MgZnJvbSAnQGFsaWNsb3VkL3Jvcy1jZGstY29yZSc7XG5pbXBvcnQgeyBSb3NTZWN1cml0eUdyb3VwSW5ncmVzc2VzIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zU2VjdXJpdHlHcm91cEluZ3Jlc3NlcyBhcyBTZWN1cml0eUdyb3VwSW5ncmVzc2VzUHJvcGVydHkgfTtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIGBTZWN1cml0eUdyb3VwSW5ncmVzc2VzYC5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1zZWN1cml0eWdyb3VwaW5ncmVzc2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjdXJpdHlHcm91cEluZ3Jlc3Nlc1Byb3BzIHtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBlcm1pc3Npb25zOiBBIGxpc3Qgb2Ygc2VjdXJpdHkgZ3JvdXAgcnVsZXMuIEEgaHVuZHJlZCBhdCBtb3N0LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBlcm1pc3Npb25zOiBBcnJheTxSb3NTZWN1cml0eUdyb3VwSW5ncmVzc2VzLlBlcm1pc3Npb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc2VjdXJpdHlHcm91cElkOiBJZCBvZiB0aGUgc2VjdXJpdHkgZ3JvdXAuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkOiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG59XG5cbi8qKlxuICogVGhpcyBjbGFzcyBlbmNhcHN1bGF0ZXMgYW5kIGV4dGVuZHMgdGhlIFJPUyByZXNvdXJjZSB0eXBlIGBBTElZVU46OkVDUzo6U2VjdXJpdHlHcm91cEluZ3Jlc3Nlc2AsIHdoaWNoIGlzIHVzZWQgdG8gYXNzb2NpYXRlIG11bHRpcGxlIGluYm91bmQgcnVsZXMgd2l0aCBhIHNlY3VyaXR5IGdyb3VwIGF0IGEgdGltZS5cbiAqIEBOb3RlIFRoaXMgY2xhc3MgbWF5IGhhdmUgc29tZSBuZXcgZnVuY3Rpb25zIHRvIGZhY2lsaXRhdGUgZGV2ZWxvcG1lbnQsIHNvIGl0IGlzIHJlY29tbWVuZGVkIHRvIHVzZSB0aGlzIGNsYXNzIGluc3RlYWQgb2YgYFJvc1NlY3VyaXR5R3JvdXBJbmdyZXNzZXNgZm9yIGEgbW9yZSBjb252ZW5pZW50IGRldmVsb3BtZW50IGV4cGVyaWVuY2UuXG4gKiBTZWUgaHR0cHM6Ly93d3cuYWxpYmFiYWNsb3VkLmNvbS9oZWxwL3Jvcy9kZXZlbG9wZXItcmVmZXJlbmNlL2FsaXl1bi1lY3Mtc2VjdXJpdHlncm91cGluZ3Jlc3Nlc1xuICovXG5leHBvcnQgY2xhc3MgU2VjdXJpdHlHcm91cEluZ3Jlc3NlcyBleHRlbmRzIHJvcy5SZXNvdXJjZSB7XG4gICAgcHJvdGVjdGVkIHNjb3BlOiByb3MuQ29uc3RydWN0O1xuICAgIHByb3RlY3RlZCBpZDogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBwcm9wczogU2VjdXJpdHlHcm91cEluZ3Jlc3Nlc1Byb3BzO1xuICAgIHByb3RlY3RlZCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAgICogUGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAgICogUGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAgICovXG4gICAgY29uc3RydWN0b3Ioc2NvcGU6IHJvcy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTZWN1cml0eUdyb3VwSW5ncmVzc2VzUHJvcHMsIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OmJvb2xlYW4gPSB0cnVlKSB7XG4gICAgICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTtcbiAgICAgICAgdGhpcy5pZCA9IGlkO1xuICAgICAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgICAgIHRoaXMuZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgPSBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDtcblxuICAgICAgICBjb25zdCByb3NTZWN1cml0eUdyb3VwSW5ncmVzc2VzID0gbmV3IFJvc1NlY3VyaXR5R3JvdXBJbmdyZXNzZXModGhpcywgaWQsICB7XG4gICAgICAgICAgICBzZWN1cml0eUdyb3VwSWQ6IHByb3BzLnNlY3VyaXR5R3JvdXBJZCxcbiAgICAgICAgICAgIHBlcm1pc3Npb25zOiBwcm9wcy5wZXJtaXNzaW9ucyxcbiAgICAgICAgfSwgZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgJiYgdGhpcy5zdGFjay5lbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCk7XG4gICAgICAgIHRoaXMucmVzb3VyY2UgPSByb3NTZWN1cml0eUdyb3VwSW5ncmVzc2VzO1xuICAgIH1cbn1cbiJdfQ==
|
package/package.json
CHANGED