@alicloud/ros-cdk-ecs 1.0.21 → 1.0.23
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/activation.d.ts +10 -9
- package/lib/activation.js +8 -4
- package/lib/assignipv6addresses.d.ts +9 -8
- package/lib/assignipv6addresses.js +8 -4
- package/lib/assignprivateipaddresses.d.ts +9 -8
- package/lib/assignprivateipaddresses.js +8 -4
- package/lib/autoprovisioninggroup.d.ts +10 -9
- package/lib/autoprovisioninggroup.js +8 -4
- package/lib/autosnapshotpolicy.d.ts +10 -9
- package/lib/autosnapshotpolicy.js +8 -4
- package/lib/capacityreservation.d.ts +69 -0
- package/lib/capacityreservation.js +40 -0
- package/lib/command.d.ts +9 -8
- package/lib/command.js +8 -4
- package/lib/copyimage.d.ts +15 -9
- package/lib/copyimage.js +9 -4
- package/lib/customimage.d.ts +29 -12
- package/lib/customimage.js +16 -9
- package/lib/datasource/activations.d.ts +9 -8
- package/lib/datasource/activations.js +8 -4
- package/lib/datasource/autosnapshotpolicies.d.ts +9 -8
- package/lib/datasource/autosnapshotpolicies.js +8 -4
- package/lib/datasource/commands.d.ts +9 -8
- package/lib/datasource/commands.js +8 -4
- package/lib/datasource/dedicatedhostclusters.d.ts +9 -8
- package/lib/datasource/dedicatedhostclusters.js +8 -4
- package/lib/datasource/dedicatedhosts.d.ts +9 -8
- package/lib/datasource/dedicatedhosts.js +8 -4
- package/lib/datasource/deploymentsets.d.ts +9 -8
- package/lib/datasource/deploymentsets.js +8 -4
- package/lib/datasource/diskcategories.d.ts +9 -8
- package/lib/datasource/diskcategories.js +8 -4
- package/lib/datasource/disks.d.ts +10 -9
- package/lib/datasource/disks.js +8 -4
- package/lib/datasource/ecs.generated.d.ts +112 -166
- package/lib/datasource/ecs.generated.js +55 -55
- package/lib/datasource/hpcclusters.d.ts +9 -8
- package/lib/datasource/hpcclusters.js +8 -4
- package/lib/datasource/images.d.ts +10 -9
- package/lib/datasource/images.js +8 -4
- package/lib/datasource/instances.d.ts +10 -9
- package/lib/datasource/instances.js +8 -4
- package/lib/datasource/keypairs.d.ts +9 -8
- package/lib/datasource/keypairs.js +8 -4
- package/lib/datasource/managedinstances.d.ts +9 -8
- package/lib/datasource/managedinstances.js +8 -4
- package/lib/datasource/networkinterfaces.d.ts +9 -8
- package/lib/datasource/networkinterfaces.js +8 -4
- package/lib/datasource/recommendinstancetypes.d.ts +14 -13
- package/lib/datasource/recommendinstancetypes.js +8 -4
- package/lib/datasource/securitygroups.d.ts +9 -8
- package/lib/datasource/securitygroups.js +8 -4
- package/lib/datasource/snapshots.d.ts +9 -8
- package/lib/datasource/snapshots.js +8 -4
- package/lib/datasource/zones.d.ts +12 -11
- package/lib/datasource/zones.js +8 -4
- package/lib/dedicatedhost.d.ts +12 -11
- package/lib/dedicatedhost.js +8 -4
- package/lib/deploymentset.d.ts +24 -10
- package/lib/deploymentset.js +10 -4
- package/lib/disk.d.ts +11 -10
- package/lib/disk.js +8 -4
- package/lib/diskattachment.d.ts +10 -9
- package/lib/diskattachment.js +8 -4
- package/lib/ecs.generated.d.ts +2015 -497
- package/lib/ecs.generated.js +1961 -405
- package/lib/elasticityassurance.d.ts +78 -0
- package/lib/elasticityassurance.js +41 -0
- package/lib/forwardentry.d.ts +12 -11
- package/lib/forwardentry.js +8 -4
- package/lib/hpccluster.d.ts +11 -10
- package/lib/hpccluster.js +8 -4
- package/lib/imagecomponent.d.ts +59 -0
- package/lib/imagecomponent.js +38 -0
- package/lib/imagepipeline.d.ts +109 -0
- package/lib/imagepipeline.js +47 -0
- package/lib/imagesharepermission.d.ts +47 -0
- package/lib/imagesharepermission.js +35 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.js +6 -1
- package/lib/instance.d.ts +94 -14
- package/lib/instance.js +153 -25
- package/lib/instanceclone.d.ts +9 -8
- package/lib/instanceclone.js +8 -4
- package/lib/instancegroup.d.ts +125 -16
- package/lib/instancegroup.js +32 -8
- package/lib/instancegroupclone.d.ts +56 -11
- package/lib/instancegroupclone.js +38 -26
- package/lib/invocation.d.ts +63 -10
- package/lib/invocation.js +16 -5
- package/lib/joinsecuritygroup.d.ts +9 -8
- package/lib/joinsecuritygroup.js +8 -8
- package/lib/launchtemplate.d.ts +13 -12
- package/lib/launchtemplate.js +8 -4
- package/lib/networkinterface.d.ts +9 -8
- package/lib/networkinterface.js +8 -4
- package/lib/networkinterfaceattachment.d.ts +9 -8
- package/lib/networkinterfaceattachment.js +8 -4
- package/lib/networkinterfacepermission.d.ts +9 -8
- package/lib/networkinterfacepermission.js +8 -4
- package/lib/prefixlist.d.ts +11 -10
- package/lib/prefixlist.js +8 -4
- package/lib/ramroleattachment.d.ts +9 -8
- package/lib/ramroleattachment.js +8 -4
- package/lib/route.d.ts +9 -8
- package/lib/route.js +8 -4
- package/lib/runcommand.d.ts +54 -16
- package/lib/runcommand.js +15 -6
- package/lib/securitygroup.d.ts +9 -8
- package/lib/securitygroup.js +8 -4
- package/lib/securitygroupclone.d.ts +9 -8
- package/lib/securitygroupclone.js +8 -4
- package/lib/securitygroupegress.d.ts +10 -9
- package/lib/securitygroupegress.js +8 -8
- package/lib/securitygroupingress.d.ts +11 -10
- package/lib/securitygroupingress.js +8 -8
- package/lib/snapshot.d.ts +11 -10
- package/lib/snapshot.js +8 -4
- package/lib/snatentry.d.ts +11 -10
- package/lib/snatentry.js +8 -4
- package/lib/sshkeypair.d.ts +10 -9
- package/lib/sshkeypair.js +8 -4
- package/lib/sshkeypairattachment.d.ts +9 -8
- package/lib/sshkeypairattachment.js +8 -8
- package/lib/vpc.d.ts +12 -11
- package/lib/vpc.js +8 -4
- package/lib/vswitch.d.ts +9 -8
- package/lib/vswitch.js +8 -4
- package/package.json +1 -1
|
@@ -2,7 +2,8 @@ import * as ros from '@alicloud/ros-cdk-core';
|
|
|
2
2
|
import { RosInstanceGroupClone } from './ecs.generated';
|
|
3
3
|
export { RosInstanceGroupClone as InstanceGroupCloneProperty };
|
|
4
4
|
/**
|
|
5
|
-
* Properties for defining a `
|
|
5
|
+
* Properties for defining a `InstanceGroupClone`.
|
|
6
|
+
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instancegroupclone
|
|
6
7
|
*/
|
|
7
8
|
export interface InstanceGroupCloneProps {
|
|
8
9
|
/**
|
|
@@ -29,6 +30,10 @@ export interface InstanceGroupCloneProps {
|
|
|
29
30
|
* Property backendServerWeight: The weight of backend server of load balancer. From 0 to 100, 0 means offline. Default is 100.
|
|
30
31
|
*/
|
|
31
32
|
readonly backendServerWeight?: number | ros.IResolvable;
|
|
33
|
+
/**
|
|
34
|
+
* Property cpuOptions: Cpu options.
|
|
35
|
+
*/
|
|
36
|
+
readonly cpuOptions?: RosInstanceGroupClone.CpuOptionsProperty | ros.IResolvable;
|
|
32
37
|
/**
|
|
33
38
|
* Property deletionProtection: Whether an instance can be released manually through the console or API, deletion protection only support postPaid instance
|
|
34
39
|
*/
|
|
@@ -47,9 +52,18 @@ export interface InstanceGroupCloneProps {
|
|
|
47
52
|
*/
|
|
48
53
|
readonly diskMappings?: Array<RosInstanceGroupClone.DiskMappingsProperty | ros.IResolvable> | ros.IResolvable;
|
|
49
54
|
/**
|
|
50
|
-
* Property eniMappings: NetworkInterface to attach to instance. Max support
|
|
55
|
+
* Property eniMappings: NetworkInterface to attach to instance. Max support 2 ENIs.
|
|
51
56
|
*/
|
|
52
57
|
readonly eniMappings?: Array<RosInstanceGroupClone.EniMappingsProperty | ros.IResolvable> | ros.IResolvable;
|
|
58
|
+
/**
|
|
59
|
+
* Property hostNames: The hostname of instance N. You can use this parameter to specify different hostnames for multiple instances. Take note of the following items:
|
|
60
|
+
* - The maximum value of N must be the same as the Amount value. For example, if you set Amount to 2, you can use HostNames.1 and HostNames.2 to specify hostnames for the individual instances. Examples: HostNames.1=test1 and HostNames.2=test2.
|
|
61
|
+
* - You cannot specify both HostName and HostNames.N.
|
|
62
|
+
* - The hostname cannot start or end with a period (.) or hyphen (-). The hostname cannot contain consecutive periods (.) or hyphens (-).
|
|
63
|
+
* - For Windows instances, the hostname must be 2 to 15 characters in length and cannot contain periods (.) or contain only digits. The hostname can contain letters, digits, and hyphens (-).
|
|
64
|
+
* - For instances that run other operating systems such as Linux, the hostname must be 2 to 64 characters in length. You can use periods (.) to separate a hostname into multiple segments. Each segment can contain letters, digits, and hyphens (-).
|
|
65
|
+
*/
|
|
66
|
+
readonly hostNames?: Array<string | ros.IResolvable> | ros.IResolvable;
|
|
53
67
|
/**
|
|
54
68
|
* Property hpcClusterId: The HPC cluster ID to which the instance belongs.The change of the property does not affect existing instances.
|
|
55
69
|
*/
|
|
@@ -58,6 +72,10 @@ export interface InstanceGroupCloneProps {
|
|
|
58
72
|
* Property imageId: Image ID to create ecs instance.
|
|
59
73
|
*/
|
|
60
74
|
readonly imageId?: string | ros.IResolvable;
|
|
75
|
+
/**
|
|
76
|
+
* Property imageOptions: Image options.
|
|
77
|
+
*/
|
|
78
|
+
readonly imageOptions?: RosInstanceGroupClone.ImageOptionsProperty | ros.IResolvable;
|
|
61
79
|
/**
|
|
62
80
|
* Property instanceName: Display name of the instance, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'.
|
|
63
81
|
* Support to use the regular expression to set the different instance name for each ECS instance. InstanceName could be specified as 'name_prefix[begin_number,bits]name_suffix', such as 'testinstance[123,4]tail'. If you creates 3 instances with the instance name 'testinstance[123,4]tail', all the instances' names are testinstance0123tail, testinstance0124tail, testinstance0125tail.
|
|
@@ -112,6 +130,17 @@ export interface InstanceGroupCloneProps {
|
|
|
112
130
|
* Property loadBalancerIdToAttach: After the instance is created. Automatic attach it to the load balancer.
|
|
113
131
|
*/
|
|
114
132
|
readonly loadBalancerIdToAttach?: string | ros.IResolvable;
|
|
133
|
+
/**
|
|
134
|
+
* Property networkInterfaceQueueNumber: The number of queues supported by the primary ENI. Take note of the following items:
|
|
135
|
+
* - The value of this parameter cannot exceed the maximum number of queues per ENI allowed for the instance type.
|
|
136
|
+
* - The total number of queues for all ENIs on the instance cannot exceed the queue quota for the instance type.
|
|
137
|
+
* - If NetworkInterface.N.InstanceType is set to Primary, you cannot specify NetworkInterfaceQueueNumber but can specify NetworkInterface.N.QueueNumber
|
|
138
|
+
*/
|
|
139
|
+
readonly networkInterfaceQueueNumber?: number | ros.IResolvable;
|
|
140
|
+
/**
|
|
141
|
+
* Property networkOptions: Network options.
|
|
142
|
+
*/
|
|
143
|
+
readonly networkOptions?: RosInstanceGroupClone.NetworkOptionsProperty | ros.IResolvable;
|
|
115
144
|
/**
|
|
116
145
|
* Property password: Password of created ecs instance. Must contain at least 3 types of special character, lower character, upper character, number.
|
|
117
146
|
*/
|
|
@@ -125,7 +154,7 @@ export interface InstanceGroupCloneProps {
|
|
|
125
154
|
*/
|
|
126
155
|
readonly period?: number | ros.IResolvable;
|
|
127
156
|
/**
|
|
128
|
-
* Property periodUnit: Unit of prepaid time period, it could be Week
|
|
157
|
+
* Property periodUnit: Unit of prepaid time period, it could be Week\/Month\/Year. Default value is Month.Old instances will not be changed.
|
|
129
158
|
*/
|
|
130
159
|
readonly periodUnit?: string | ros.IResolvable;
|
|
131
160
|
/**
|
|
@@ -143,7 +172,11 @@ export interface InstanceGroupCloneProps {
|
|
|
143
172
|
/**
|
|
144
173
|
* Property securityGroupIds: The IDs of security groups N to which the instance belongs. The valid values of N are based on the maximum number of security groups to which an instance can belong. For more information, see Security group limits.Note: You cannot specify both SecurityGroupId and SecurityGroupIds at the same time.
|
|
145
174
|
*/
|
|
146
|
-
readonly securityGroupIds?: Array<
|
|
175
|
+
readonly securityGroupIds?: Array<string | ros.IResolvable> | ros.IResolvable;
|
|
176
|
+
/**
|
|
177
|
+
* Property securityOptions: Security options.
|
|
178
|
+
*/
|
|
179
|
+
readonly securityOptions?: RosInstanceGroupClone.SecurityOptionsProperty | ros.IResolvable;
|
|
147
180
|
/**
|
|
148
181
|
* Property spotPriceLimit: The hourly price threshold of a instance, and it takes effect only when parameter InstanceChargeType is PostPaid. Three decimals is allowed at most.
|
|
149
182
|
*/
|
|
@@ -202,6 +235,14 @@ export interface InstanceGroupCloneProps {
|
|
|
202
235
|
* Property tags: Tags to attach to instance. Max support 20 tags to add during create instance. Each tag with two properties Key and Value, and Key is required.
|
|
203
236
|
*/
|
|
204
237
|
readonly tags?: RosInstanceGroupClone.TagsProperty[];
|
|
238
|
+
/**
|
|
239
|
+
* Property uniqueSuffix: Specifies whether to automatically append incremental suffixes to the hostname specified by the **HostName** parameter and to the instance name specified by the **InstanceName** parameter when you batch create instances. The incremental suffixes can range from 001 to 999. Valid values:
|
|
240
|
+
* - **true**: appends incremental suffixes to the hostname and the instance name.
|
|
241
|
+
* - **false**: does not append incremental suffixes to the hostname or the instance name.
|
|
242
|
+
* Default value: **false**.
|
|
243
|
+
* When the **HostName** or **InstanceName** value is set in the name_prefix[begin_number,bits] format without a suffix (name_suffix), the **UniqueSuffix** parameter does not take effect. The names are sorted in the specified sequence.
|
|
244
|
+
*/
|
|
245
|
+
readonly uniqueSuffix?: boolean | ros.IResolvable;
|
|
205
246
|
/**
|
|
206
247
|
* Property updatePolicy: Specify the policy at update.
|
|
207
248
|
* The value can be 'ForNewInstances' or 'ForAllInstances'.
|
|
@@ -217,13 +258,15 @@ export interface InstanceGroupCloneProps {
|
|
|
217
258
|
readonly zoneId?: string | ros.IResolvable;
|
|
218
259
|
}
|
|
219
260
|
/**
|
|
220
|
-
*
|
|
261
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::InstanceGroupClone`, which is used to create clones of an Elastic Compute Service (ECS) instance.
|
|
262
|
+
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosInstanceGroupClone`for a more convenient development experience.
|
|
263
|
+
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instancegroupclone
|
|
221
264
|
*/
|
|
222
265
|
export declare class InstanceGroupClone extends ros.Resource {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
266
|
+
protected scope: ros.Construct;
|
|
267
|
+
protected id: string;
|
|
268
|
+
protected props: InstanceGroupCloneProps;
|
|
269
|
+
protected enableResourcePropertyConstraint: boolean;
|
|
227
270
|
/**
|
|
228
271
|
* Attribute HostNames: Host names of created instances.
|
|
229
272
|
*/
|
|
@@ -256,13 +299,15 @@ export declare class InstanceGroupClone extends ros.Resource {
|
|
|
256
299
|
* Attribute PublicIps: Public IP address list of created ecs instances.
|
|
257
300
|
*/
|
|
258
301
|
readonly attrPublicIps: ros.IResolvable;
|
|
302
|
+
/**
|
|
303
|
+
* Attribute RelatedOrderIds: The related order id list of created ecs instances
|
|
304
|
+
*/
|
|
305
|
+
readonly attrRelatedOrderIds: ros.IResolvable;
|
|
259
306
|
/**
|
|
260
307
|
* Attribute ZoneIds: Zone id of created instances.
|
|
261
308
|
*/
|
|
262
309
|
readonly attrZoneIds: ros.IResolvable;
|
|
263
310
|
/**
|
|
264
|
-
* Create a new `ALIYUN::ECS::InstanceGroupClone`.
|
|
265
|
-
*
|
|
266
311
|
* Param scope - scope in which this resource is defined
|
|
267
312
|
* Param id - scoped id of the resource
|
|
268
313
|
* Param props - resource properties
|
|
@@ -5,65 +5,76 @@ const ros = require("@alicloud/ros-cdk-core");
|
|
|
5
5
|
const ecs_generated_1 = require("./ecs.generated");
|
|
6
6
|
Object.defineProperty(exports, "InstanceGroupCloneProperty", { enumerable: true, get: function () { return ecs_generated_1.RosInstanceGroupClone; } });
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
8
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::InstanceGroupClone`, which is used to create clones of an Elastic Compute Service (ECS) instance.
|
|
9
|
+
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosInstanceGroupClone`for a more convenient development experience.
|
|
10
|
+
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-instancegroupclone
|
|
9
11
|
*/
|
|
10
12
|
class InstanceGroupClone extends ros.Resource {
|
|
11
13
|
/**
|
|
12
|
-
* Create a new `ALIYUN::ECS::InstanceGroupClone`.
|
|
13
|
-
*
|
|
14
14
|
* Param scope - scope in which this resource is defined
|
|
15
15
|
* Param id - scoped id of the resource
|
|
16
16
|
* Param props - resource properties
|
|
17
17
|
*/
|
|
18
18
|
constructor(scope, id, props, enableResourcePropertyConstraint = true) {
|
|
19
19
|
super(scope, id);
|
|
20
|
+
this.scope = scope;
|
|
21
|
+
this.id = id;
|
|
22
|
+
this.props = props;
|
|
23
|
+
this.enableResourcePropertyConstraint = enableResourcePropertyConstraint;
|
|
20
24
|
const rosInstanceGroupClone = new ecs_generated_1.RosInstanceGroupClone(this, id, {
|
|
21
|
-
description: props.description,
|
|
22
|
-
diskMappings: props.diskMappings,
|
|
23
25
|
resourceGroupId: props.resourceGroupId,
|
|
24
26
|
systemDiskDescription: props.systemDiskDescription,
|
|
25
27
|
systemDiskProvisionedIops: props.systemDiskProvisionedIops,
|
|
26
|
-
autoRenew: props.autoRenew === undefined || props.autoRenew === null ? 'False' : props.autoRenew,
|
|
27
|
-
ipv6Addresses: props.ipv6Addresses,
|
|
28
28
|
sourceInstanceId: props.sourceInstanceId,
|
|
29
|
-
systemDiskEncrypted: props.systemDiskEncrypted,
|
|
30
|
-
maxAmount: props.maxAmount,
|
|
31
|
-
systemDiskAutoSnapshotPolicyId: props.systemDiskAutoSnapshotPolicyId,
|
|
32
29
|
systemDiskEncryptAlgorithm: props.systemDiskEncryptAlgorithm,
|
|
33
30
|
ramRoleName: props.ramRoleName,
|
|
34
|
-
ipv6AddressCount: props.ipv6AddressCount,
|
|
35
31
|
imageId: props.imageId,
|
|
36
|
-
|
|
32
|
+
imageOptions: props.imageOptions,
|
|
37
33
|
systemDiskDiskName: props.systemDiskDiskName,
|
|
38
34
|
tags: props.tags,
|
|
39
|
-
spotStrategy: props.spotStrategy,
|
|
40
|
-
passwordInherit: props.passwordInherit,
|
|
41
|
-
password: props.password,
|
|
42
35
|
systemDiskStorageClusterId: props.systemDiskStorageClusterId,
|
|
43
|
-
autoRenewPeriod: props.autoRenewPeriod === undefined || props.autoRenewPeriod === null ? 1 : props.autoRenewPeriod,
|
|
44
36
|
backendServerWeight: props.backendServerWeight === undefined || props.backendServerWeight === null ? 100 : props.backendServerWeight,
|
|
45
|
-
keyPairName: props.keyPairName,
|
|
46
37
|
launchTemplateName: props.launchTemplateName,
|
|
47
38
|
updatePolicy: props.updatePolicy === undefined || props.updatePolicy === null ? 'ForNewInstances' : props.updatePolicy,
|
|
48
|
-
zoneId: props.zoneId,
|
|
49
39
|
systemDiskKmsKeyId: props.systemDiskKmsKeyId,
|
|
50
|
-
|
|
51
|
-
securityGroupId: props.securityGroupId,
|
|
40
|
+
cpuOptions: props.cpuOptions,
|
|
52
41
|
period: props.period === undefined || props.period === null ? 1 : props.period,
|
|
53
42
|
launchTemplateId: props.launchTemplateId,
|
|
54
43
|
deletionProtection: props.deletionProtection,
|
|
55
44
|
securityGroupIds: props.securityGroupIds,
|
|
56
|
-
loadBalancerIdToAttach: props.loadBalancerIdToAttach,
|
|
57
|
-
systemDiskCategory: props.systemDiskCategory === undefined || props.systemDiskCategory === null ? 'cloud_efficiency' : props.systemDiskCategory,
|
|
58
45
|
instanceName: props.instanceName,
|
|
59
|
-
eniMappings: props.eniMappings,
|
|
60
|
-
systemDiskBurstingEnabled: props.systemDiskBurstingEnabled,
|
|
61
46
|
deploymentSetId: props.deploymentSetId,
|
|
62
47
|
internetMaxBandwidthOut: props.internetMaxBandwidthOut,
|
|
63
|
-
|
|
48
|
+
uniqueSuffix: props.uniqueSuffix === undefined || props.uniqueSuffix === null ? false : props.uniqueSuffix,
|
|
49
|
+
securityOptions: props.securityOptions,
|
|
64
50
|
launchTemplateVersion: props.launchTemplateVersion,
|
|
65
51
|
periodUnit: props.periodUnit === undefined || props.periodUnit === null ? 'Month' : props.periodUnit,
|
|
66
52
|
autoReleaseTime: props.autoReleaseTime,
|
|
53
|
+
description: props.description,
|
|
54
|
+
diskMappings: props.diskMappings,
|
|
55
|
+
autoRenew: props.autoRenew === undefined || props.autoRenew === null ? 'False' : props.autoRenew,
|
|
56
|
+
ipv6Addresses: props.ipv6Addresses,
|
|
57
|
+
systemDiskEncrypted: props.systemDiskEncrypted,
|
|
58
|
+
maxAmount: props.maxAmount,
|
|
59
|
+
systemDiskAutoSnapshotPolicyId: props.systemDiskAutoSnapshotPolicyId,
|
|
60
|
+
ipv6AddressCount: props.ipv6AddressCount,
|
|
61
|
+
spotPriceLimit: props.spotPriceLimit,
|
|
62
|
+
hostNames: props.hostNames,
|
|
63
|
+
spotStrategy: props.spotStrategy,
|
|
64
|
+
passwordInherit: props.passwordInherit,
|
|
65
|
+
password: props.password,
|
|
66
|
+
autoRenewPeriod: props.autoRenewPeriod === undefined || props.autoRenewPeriod === null ? 1 : props.autoRenewPeriod,
|
|
67
|
+
keyPairName: props.keyPairName,
|
|
68
|
+
zoneId: props.zoneId,
|
|
69
|
+
hpcClusterId: props.hpcClusterId,
|
|
70
|
+
securityGroupId: props.securityGroupId,
|
|
71
|
+
loadBalancerIdToAttach: props.loadBalancerIdToAttach,
|
|
72
|
+
systemDiskCategory: props.systemDiskCategory === undefined || props.systemDiskCategory === null ? 'cloud_efficiency' : props.systemDiskCategory,
|
|
73
|
+
eniMappings: props.eniMappings,
|
|
74
|
+
systemDiskBurstingEnabled: props.systemDiskBurstingEnabled,
|
|
75
|
+
networkOptions: props.networkOptions,
|
|
76
|
+
networkInterfaceQueueNumber: props.networkInterfaceQueueNumber,
|
|
77
|
+
internetMaxBandwidthIn: props.internetMaxBandwidthIn === undefined || props.internetMaxBandwidthIn === null ? 200 : props.internetMaxBandwidthIn,
|
|
67
78
|
}, enableResourcePropertyConstraint && this.stack.enableResourcePropertyConstraint);
|
|
68
79
|
this.resource = rosInstanceGroupClone;
|
|
69
80
|
this.attrHostNames = rosInstanceGroupClone.attrHostNames;
|
|
@@ -74,8 +85,9 @@ class InstanceGroupClone extends ros.Resource {
|
|
|
74
85
|
this.attrOrderId = rosInstanceGroupClone.attrOrderId;
|
|
75
86
|
this.attrPrivateIps = rosInstanceGroupClone.attrPrivateIps;
|
|
76
87
|
this.attrPublicIps = rosInstanceGroupClone.attrPublicIps;
|
|
88
|
+
this.attrRelatedOrderIds = rosInstanceGroupClone.attrRelatedOrderIds;
|
|
77
89
|
this.attrZoneIds = rosInstanceGroupClone.attrZoneIds;
|
|
78
90
|
}
|
|
79
91
|
}
|
|
80
92
|
exports.InstanceGroupClone = InstanceGroupClone;
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2Vncm91cGNsb25lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW5zdGFuY2Vncm91cGNsb25lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUE4QztBQUM5QyxtREFBd0Q7QUFFdEIsMkdBRnpCLHFDQUFxQixPQUU4QjtBQXdRNUQ7O0dBRUc7QUFDSCxNQUFhLGtCQUFtQixTQUFRLEdBQUcsQ0FBQyxRQUFRO0lBb0RoRDs7Ozs7O09BTUc7SUFDSCxZQUFZLEtBQW9CLEVBQUUsRUFBVSxFQUFFLEtBQThCLEVBQUUsbUNBQTJDLElBQUk7UUFDekgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLHFCQUFxQixHQUFHLElBQUkscUNBQXFCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRztZQUMvRCxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO1lBQ2hDLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZTtZQUN0QyxxQkFBcUIsRUFBRSxLQUFLLENBQUMscUJBQXFCO1lBQ2xELHlCQUF5QixFQUFFLEtBQUssQ0FBQyx5QkFBeUI7WUFDMUQsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxTQUFTLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxTQUFTO1lBQ2hHLGFBQWEsRUFBRSxLQUFLLENBQUMsYUFBYTtZQUNsQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO1lBQ3hDLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxtQkFBbUI7WUFDOUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLDhCQUE4QixFQUFFLEtBQUssQ0FBQyw4QkFBOEI7WUFDcEUsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLDBCQUEwQjtZQUM1RCxXQUFXLEVBQUUsS0FB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O1FBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcscUJBQXFCLENBQUM7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxxQkFBcUIsQ0FBQyxhQUFhLENBQUM7UUFDekQsSUFBSSxDQUFDLFlBQVksR0FBRyxxQkFBcUIsQ0FBQyxZQUFZLENBQUM7UUFDdkQsSUFBSSxDQUFDLGVBQWUsR0FBRyxxQkFBcUIsQ0FBQyxlQUFlLENBQUM7UUFDN0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLHFCQUFxQixDQUFDLGtCQUFrQixDQUFDO1FBQ25FLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxxQkFBcUIsQ0FBQyxpQkFBaUIsQ0FBQztRQUNqRSxJQUFJLENBQUMsV0FBVyxHQUFHLHFCQUFxQixDQUFDLFdBQVcsQ0FBQztRQUNyRCxJQUFJLENBQUMsY0FBYyxHQUFHLHFCQUFxQixDQUFDLGNBQWMsQ0FBQztRQUMzRCxJQUFJLENBQUMsYUFBYSxHQUFHLHFCQUFxQixDQUFDLGFBQWEsQ0FBQztRQUN6RCxJQUFJLENBQUMsV0FBVyxHQUFHLHFCQUFxQixDQUFDLFdBQVcsQ0FBQztJQUN6RCxDQUFDO0NBQ0o7QUF6SEQsZ0RBeUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcm9zIGZyb20gJ0BhbGljbG91ZC9yb3MtY2RrLWNvcmUnO1xuaW1wb3J0IHsgUm9zSW5zdGFuY2VHcm91cENsb25lIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zSW5zdGFuY2VHcm91cENsb25lIGFzIEluc3RhbmNlR3JvdXBDbG9uZVByb3BlcnR5IH07XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBgQUxJWVVOOjpFQ1M6Okluc3RhbmNlR3JvdXBDbG9uZWBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnN0YW5jZUdyb3VwQ2xvbmVQcm9wcyB7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBtYXhBbW91bnQ6IE1heCBudW1iZXIgb2YgaW5zdGFuY2VzIHRvIGNyZWF0ZSwgc2hvdWxkIGJlIGJpZ2dlciB0aGFuICdNaW5BbW91bnQnIGFuZCBzbWFsbGVyIHRoYW4gMTAwMC5cbiAgICAgKi9cbiAgICByZWFkb25seSBtYXhBbW91bnQ6IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNvdXJjZUluc3RhbmNlSWQ6IFNvdXJjZSBlY3MgaW5zdGFuY2UgdXNlZCB0byBjb3B5IHByb3BlcnRpZXMgdG8gY2xvbmUgbmV3IGVjcyBpbnN0YW5jZS4gSXQgd2lsbCBjb3B5IHRoZSBJbnN0YW5jZVR5cGUsIEltYWdlSWQsIEludGVybmV0Q2hhcmdlVHlwZSwgSW50ZXJuZXRNYXhCYW5kd2lkdGhJbiwgSW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQgYW5kIHRoZSBzeXN0ZW0gZGlzayBhbmQgZGF0YSBkaXNrIGNvbmZpZ3VyYXRpb25zLiBJZiB0aGUgaW5zdGFuY2UgbmV0d29yayBpcyBWUEMsIGl0IHdpbGwgYWxzbyBjbG9uZSB0aGUgcmVsYXRpdmUgcHJvcGVydGllcy4gSWYgc3BlY2lmaWVkIGluc3RhbmNlIHdpdGggbW9yZSB0aGFuIG9uZSBzZWN1cml0eSBncm91cCwgaXQgd2lsbCB1c2UgdGhlIGZpcnN0IHNlY3VyaXR5IGdyb3VwIHRvIGNyZWF0ZSBpbnN0YW5jZS4geW91IGNhbiBhbHNvIHNwZWNpZnkgdGhlIFNlY3VyaXR5R3JvdXBJZCB0byBvdmVycmlkZSBpdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzb3VyY2VJbnN0YW5jZUlkOiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVsZWFzZVRpbWU6IEF1dG8gcmVsZWFzZSB0aW1lIGZvciBjcmVhdGVkIGluc3RhbmNlLCBGb2xsb3cgSVNPODYwMSBzdGFuZGFyZCB1c2luZyBVVEMgdGltZS4gZm9ybWF0IGlzICd5eXl5LU1NLWRkVEhIOm1tOnNzWicuIE5vdCBiaWdnZXIgdGhhbiAzIHllYXJzIGZyb20gdGhpcyBkYXkgb253YXJkc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dG9SZWxlYXNlVGltZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGF1dG9SZW5ldzogV2hldGhlciByZW5ldyB0aGUgZmVlIGF1dG9tYXRpY2FsbHk/IFdoZW4gdGhlIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUHJlUGFpZCwgaXQgd2lsbCB0YWtlIGVmZmVjdC4gUmFuZ2Ugb2YgdmFsdWU6VHJ1ZTogYXV0b21hdGljIHJlbmV3YWwuRmFsc2U6IG5vIGF1dG9tYXRpYyByZW5ld2FsLiBEZWZhdWx0IHZhbHVlIGlzIEZhbHNlLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBhdXRvUmVuZXc/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVuZXdQZXJpb2Q6IFRoZSB0aW1lIHBlcmlvZCBvZiBhdXRvIHJlbmV3LiBXaGVuIHRoZSBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFByZVBhaWQsIGl0IHdpbGwgdGFrZSBlZmZlY3QuSXQgY291bGQgYmUgMSwgMiwgMywgNiwgMTIsIDI0LCAzNiwgNDgsIDYwLiBEZWZhdWx0IHZhbHVlIGlzIDEuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dG9SZW5ld1BlcmlvZD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGJhY2tlbmRTZXJ2ZXJXZWlnaHQ6IFRoZSB3ZWlnaHQgb2YgYmFja2VuZCBzZXJ2ZXIgb2YgbG9hZCBiYWxhbmNlci4gRnJvbSAwIHRvIDEwMCwgMCBtZWFucyBvZmZsaW5lLiBEZWZhdWx0IGlzIDEwMC5cbiAgICAgKi9cbiAgICByZWFkb25seSBiYWNrZW5kU2VydmVyV2VpZ2h0PzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZGVsZXRpb25Qcm90ZWN0aW9uOiBXaGV0aGVyIGFuIGluc3RhbmNlIGNhbiBiZSByZWxlYXNlZCBtYW51YWxseSB0aHJvdWdoIHRoZSBjb25zb2xlIG9yIEFQSSwgZGVsZXRpb24gcHJvdGVjdGlvbiBvbmx5IHN1cHBvcnQgcG9zdFBhaWQgaW5zdGFuY2VcbiAgICAgKi9cbiAgICByZWFkb25seSBkZWxldGlvblByb3RlY3Rpb24/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZGVwbG95bWVudFNldElkOiBEZXBsb3ltZW50IHNldCBJRC4gVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBkZXBsb3ltZW50U2V0SWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZXNjcmlwdGlvbjogRGVzY3JpcHRpb24gb2YgdGhlIGluc3RhbmNlLCBbMiwgMjU2XSBjaGFyYWN0ZXJzLiBEbyBub3QgZmlsbCBvciBlbXB0eSwgdGhlIGRlZmF1bHQgaXMgZW1wdHkuIE9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRpc2tNYXBwaW5nczogRGlzayBtYXBwaW5ncyB0byBhdHRhY2ggdG8gaW5zdGFuY2UuIE1heCBzdXBwb3J0IDE2IGRpc2tzLlxuICAgICAqIElmIHRoZSBpbWFnZSBjb250YWlucyBhIGRhdGEgZGlzaywgeW91IGNhbiBzcGVjaWZ5IG90aGVyIHBhcmFtZXRlcnMgb2YgdGhlIGRhdGEgZGlzayB2aWEgdGhlIHNhbWUgdmFsdWUgb2YgcGFyYW1ldGVyIFwiRGV2aWNlXCIuIElmIHBhcmFtZXRlciBcIkNhdGVnb3J5XCIgaXMgbm90IHNwZWNpZmllZCwgaXQgd2lsbCBiZSBjbG91ZF9lZmZpY2llbmN5IGluc3RlYWQgb2YgXCJDYXRlZ29yeVwiIG9mIGRhdGEgZGlzayBpbiB0aGUgaW1hZ2UuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRpc2tNYXBwaW5ncz86IEFycmF5PFJvc0luc3RhbmNlR3JvdXBDbG9uZS5EaXNrTWFwcGluZ3NQcm9wZXJ0eSB8IHJvcy5JUmVzb2x2YWJsZT4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBlbmlNYXBwaW5nczogTmV0d29ya0ludGVyZmFjZSB0byBhdHRhY2ggdG8gaW5zdGFuY2UuIE1heCBzdXBwb3J0IDEgRU5JLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGVuaU1hcHBpbmdzPzogQXJyYXk8Um9zSW5zdGFuY2VHcm91cENsb25lLkVuaU1hcHBpbmdzUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaHBjQ2x1c3RlcklkOiBUaGUgSFBDIGNsdXN0ZXIgSUQgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGJlbG9uZ3MuVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBocGNDbHVzdGVySWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbWFnZUlkOiBJbWFnZSBJRCB0byBjcmVhdGUgZWNzIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGltYWdlSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbnN0YW5jZU5hbWU6IERpc3BsYXkgbmFtZSBvZiB0aGUgaW5zdGFuY2UsIFsyLCAxMjhdIEVuZ2xpc2ggb3IgQ2hpbmVzZSBjaGFyYWN0ZXJzLCBtdXN0IHN0YXJ0IHdpdGggYSBsZXR0ZXIgb3IgQ2hpbmVzZSBpbiBzaXplLCBjYW4gY29udGFpbiBudW1iZXJzLCAnXycgb3IgJy4nLCAnLScuIFxuICAgICAqIFN1cHBvcnQgdG8gdXNlIHRoZSByZWd1bGFyIGV4cHJlc3Npb24gdG8gc2V0IHRoZSBkaWZmZXJlbnQgaW5zdGFuY2UgbmFtZSBmb3IgZWFjaCBFQ1MgaW5zdGFuY2UuIEluc3RhbmNlTmFtZSBjb3VsZCBiZSBzcGVjaWZpZWQgYXMgJ25hbWVfcHJlZml4W2JlZ2luX251bWJlcixiaXRzXW5hbWVfc3VmZml4Jywgc3VjaCBhcyAndGVzdGluc3RhbmNlWzEyMyw0XXRhaWwnLiBJZiB5b3UgY3JlYXRlcyAzIGluc3RhbmNlcyB3aXRoIHRoZSBpbnN0YW5jZSBuYW1lICd0ZXN0aW5zdGFuY2VbMTIzLDRddGFpbCcsIGFsbCB0aGUgaW5zdGFuY2VzJyBuYW1lcyBhcmUgdGVzdGluc3RhbmNlMDEyM3RhaWwsIHRlc3RpbnN0YW5jZTAxMjR0YWlsLCB0ZXN0aW5zdGFuY2UwMTI1dGFpbC4gXG4gICAgICogVGhlICduYW1lX3ByZWZpeFtiZWdpbl9udW1iZXIsYml0c11uYW1lX3N1ZmZpeCcgc2hvdWxkIGZvbGxvdyB0aG9zZSBydWxlczogXG4gICAgICogMS4gJ25hbWVfcHJlZml4JyBpcyByZXF1aXJlZC4gXG4gICAgICogMi4gJ25hbWVfc3VmZml4JyBpcyBvcHRpb25hbC4gXG4gICAgICogMy4gVGhlIG5hbWUgcmVndWxhciBleHByZXNzaW9uIGNhbid0IGluY2x1ZGUgYW55IHNwYWNlcy4gXG4gICAgICogNC4gVGhlICdiaXRzJyBtdXN0IGJlIGluIHJhbmdlIFsxLCA2XS4gXG4gICAgICogNS4gVGhlICdiZWdpbl9udW1iZXInIG11c3QgYmUgaW4gcmFuZ2UgWzAsIDk5OTk5OV0uIFxuICAgICAqIDYuIFlvdSBjb3VsZCBvbmx5IHNwZWNpZnkgJ2JlZ2luX251bWJlcicuIFRoZSAnYml0cycgd2lsbCBiZSBzZXQgYXMgNiBieSBkZWZhdWx0LiBcbiAgICAgKiA3LiBZb3UgYWxzbyBjb3VsZCBvbmx5IHNwZWNpZnkgdGhlIFtdIG9yIFssXS4gVGhlICdiZWdpbl9udW1iZXInIHdpbGwgYmUgc2V0IGFzIDAgYnkgZGVmYXVsdCwgdGhlICdiaXRzJyB3aWxsIGJlIHNldCBhcyA2IGJ5IGRlZmF1bHQuIFxuICAgICAqIDguIElmIHRoZSBiaXRzIG9mICdiZWdpbl9udW1iZXInIGlzIGxlc3MgdGhhbiB0aGUgJ2JpdHMnIHlvdSBzcGVjaWZpZWQsIGxpa2UgWzEyMzQsMV0sIHRoZSAnYml0cycgd2lsbCBiZSBzZXQgYXMgNiBieSBkZWZhdWx0LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGluc3RhbmNlTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGludGVybmV0TWF4QmFuZHdpZHRoSW46IE1heCBpbnRlcm5ldCBvdXQgYmFuZCB3aWR0aCBzZXR0aW5nLCB1bml0IGluIE1icHMoTWVnYSBiaXQgcGVyIHNlY29uZCkuIFRoZSByYW5nZSBpcyBbMCwyMDBdLCBkZWZhdWx0IGlzIDIwMCBNYnBzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGludGVybmV0TWF4QmFuZHdpZHRoSW4/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbnRlcm5ldE1heEJhbmR3aWR0aE91dDogU2V0IGludGVybmV0IG91dHB1dCBiYW5kd2lkdGggb2YgaW5zdGFuY2UuIFVuaXQgaXMgTWJwcyhNZWdhIGJpdCBwZXIgc2Vjb25kKS4gUmFuZ2UgaXMgWzAsMjAwXS4gRGVmYXVsdCBpcyAxLldoaWxlIHRoZSBwcm9wZXJ0eSBpcyBub3QgMCwgcHVibGljIGlwIHdpbGwgYmUgYXNzaWduZWQgZm9yIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGludGVybmV0TWF4QmFuZHdpZHRoT3V0PzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaXB2NkFkZHJlc3NDb3VudDogU3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgcmFuZG9tbHkgZ2VuZXJhdGVkIElQdjYgYWRkcmVzc2VzIGZvciB0aGUgZWxhc3RpYyBOSUMuXG4gICAgICogTm90ZSBZb3UgY2Fubm90IHNwZWNpZnkgdGhlIHBhcmFtZXRlcnMgSXB2NkFkZHJlc3NlcyBhbmQgSXB2NkFkZHJlc3NDb3VudCBhdCB0aGUgc2FtZSB0aW1lLlxuICAgICAqIFRoZSBjaGFuZ2Ugb2YgdGhlIHByb3BlcnR5IGRvZXMgbm90IGFmZmVjdCBleGlzdGluZyBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaXB2NkFkZHJlc3NDb3VudD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGlwdjZBZGRyZXNzZXM6IFNwZWNpZnkgb25lIG9yIG1vcmUgSVB2NiBhZGRyZXNzZXMgZm9yIHRoZSBlbGFzdGljIE5JQy4gQ3VycmVudGx5LCB0aGUgbWF4aW11bSBsaXN0IHNpemUgaXMgMS4gRXhhbXBsZSB2YWx1ZTogMjAwMTpkYjg6MTIzNDoxYTAwOjoqKiogLlxuICAgICAqIE5vdGUgWW91IGNhbm5vdCBzcGVjaWZ5IHRoZSBwYXJhbWV0ZXJzIElwdjZBZGRyZXNzZXMgYW5kIElwdjZBZGRyZXNzQ291bnQgYXQgdGhlIHNhbWUgdGltZS5cbiAgICAgKiBUaGUgY2hhbmdlIG9mIHRoZSBwcm9wZXJ0eSBkb2VzIG5vdCBhZmZlY3QgZXhpc3RpbmcgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGlwdjZBZGRyZXNzZXM/OiBBcnJheTxhbnkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkga2V5UGFpck5hbWU6IFNTSCBrZXkgcGFpciBuYW1lLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBrZXlQYWlyTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGxhdW5jaFRlbXBsYXRlSWQ6IElEIG9mIGxhdW5jaCB0ZW1wbGF0ZS4gTGF1bmNoIHRlbXBsYXRlIGlkIG9yIG5hbWUgbXVzdCBiZSBzcGVjaWZpZWQgdG8gdXNlIGxhdW5jaCB0ZW1wbGF0ZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxhdW5jaFRlbXBsYXRlSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBsYXVuY2hUZW1wbGF0ZU5hbWU6IE5hbWUgb2YgbGF1bmNoIHRlbXBsYXRlLiBMYXVuY2ggdGVtcGxhdGUgaWQgb3IgbmFtZSBtdXN0IGJlIHNwZWNpZmllZCB0byB1c2UgbGF1bmNoIHRlbXBsYXRlXG4gICAgICovXG4gICAgcmVhZG9ubHkgbGF1bmNoVGVtcGxhdGVOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbGF1bmNoVGVtcGxhdGVWZXJzaW9uOiBWZXJzaW9uIG9mIGxhdW5jaCB0ZW1wbGF0ZS4gRGVmYXVsdCB2ZXJzaW9uIGlzIHVzZWQgaWYgdmVyc2lvbiBpcyBub3Qgc3BlY2lmaWVkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxhdW5jaFRlbXBsYXRlVmVyc2lvbj86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGxvYWRCYWxhbmNlcklkVG9BdHRhY2g6IEFmdGVyIHRoZSBpbnN0YW5jZSBpcyBjcmVhdGVkLiBBdXRvbWF0aWMgYXR0YWNoIGl0IHRvIHRoZSBsb2FkIGJhbGFuY2VyLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxvYWRCYWxhbmNlcklkVG9BdHRhY2g/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBwYXNzd29yZDogUGFzc3dvcmQgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2UuIE11c3QgY29udGFpbiBhdCBsZWFzdCAzIHR5cGVzIG9mIHNwZWNpYWwgY2hhcmFjdGVyLCBsb3dlciBjaGFyYWN0ZXIsIHVwcGVyIGNoYXJhY3RlciwgbnVtYmVyLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBhc3N3b3JkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGFzc3dvcmRJbmhlcml0OiBTcGVjaWZpZXMgd2hldGhlciB0byB1c2UgdGhlIHBhc3N3b3JkIHByZXNldCBpbiB0aGUgaW1hZ2UuIFRvIHVzZSB0aGUgUGFzc3dvcmRJbmhlcml0IHBhcmFtZXRlciwgdGhlIFBhc3N3b3JkIHBhcmFtZXRlciBtdXN0IGJlIGVtcHR5IGFuZCB5b3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGUgc2VsZWN0ZWQgaW1hZ2UgaGFzIGEgcGFzc3dvcmQgY29uZmlndXJlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBwYXNzd29yZEluaGVyaXQ/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGVyaW9kOiBQcmVwYWlkIHRpbWUgcGVyaW9kLiBVbml0IGlzIG1vbnRoLCBpdCBjb3VsZCBiZSBmcm9tIDEgdG8gOSBvciAxMiwgMjQsIDM2LCA0OCwgNjAuIERlZmF1bHQgdmFsdWUgaXMgMS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGVyaW9kPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGVyaW9kVW5pdDogVW5pdCBvZiBwcmVwYWlkIHRpbWUgcGVyaW9kLCBpdCBjb3VsZCBiZSBXZWVrL01vbnRoL1llYXIuIERlZmF1bHQgdmFsdWUgaXMgTW9udGguT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBlcmlvZFVuaXQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSByYW1Sb2xlTmFtZTogSW5zdGFuY2UgUkFNIHJvbGUgbmFtZS4gVGhlIG5hbWUgaXMgcHJvdmlkZWQgYW5kIG1haW50YWluZWQgYnkgUmVzb3VyY2UgQWNjZXNzIE1hbmFnZW1lbnQgKFJBTSkgYW5kIGNhbiBiZSBxdWVyaWVkIHVzaW5nIExpc3RSb2xlcy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBSQU0gQVBJIENyZWF0ZVJvbGUgYW5kIExpc3RSb2xlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSByYW1Sb2xlTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHJlc291cmNlR3JvdXBJZDogUmVzb3VyY2UgZ3JvdXAgaWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcmVzb3VyY2VHcm91cElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc2VjdXJpdHlHcm91cElkOiBTZWN1cml0eSBncm91cCB0byBjcmVhdGUgZWNzIGluc3RhbmNlLiBGb3IgY2xhc3NpYyBpbnN0YW5jZSBuZWVkIHRoZSBzZWN1cml0eSBncm91cCBub3QgYmVsb25nIHRvIFZQQywgZm9yIFZQQyBpbnN0YW5jZSwgcGxlYXNlIG1ha2Ugc3VyZSB0aGUgc2VjdXJpdHkgZ3JvdXAgYmVsb25nIHRvIHNwZWNpZmllZCBWUEMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc2VjdXJpdHlHcm91cElkczogVGhlIElEcyBvZiBzZWN1cml0eSBncm91cHMgTiB0byB3aGljaCB0aGUgaW5zdGFuY2UgYmVsb25ncy4gVGhlIHZhbGlkIHZhbHVlcyBvZiBOIGFyZSBiYXNlZCBvbiB0aGUgbWF4aW11bSBudW1iZXIgb2Ygc2VjdXJpdHkgZ3JvdXBzIHRvIHdoaWNoIGFuIGluc3RhbmNlIGNhbiBiZWxvbmcuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgU2VjdXJpdHkgZ3JvdXAgbGltaXRzLk5vdGU6IFlvdSBjYW5ub3Qgc3BlY2lmeSBib3RoIFNlY3VyaXR5R3JvdXBJZCBhbmQgU2VjdXJpdHlHcm91cElkcyBhdCB0aGUgc2FtZSB0aW1lLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNlY3VyaXR5R3JvdXBJZHM/OiBBcnJheTxhbnkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3BvdFByaWNlTGltaXQ6IFRoZSBob3VybHkgcHJpY2UgdGhyZXNob2xkIG9mIGEgaW5zdGFuY2UsIGFuZCBpdCB0YWtlcyBlZmZlY3Qgb25seSB3aGVuIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUG9zdFBhaWQuIFRocmVlIGRlY2ltYWxzIGlzIGFsbG93ZWQgYXQgbW9zdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzcG90UHJpY2VMaW1pdD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNwb3RTdHJhdGVneTogVGhlIHNwb3Qgc3RyYXRlZ3kgb2YgYSBQYXktQXMtWW91LUdvIGluc3RhbmNlLCBhbmQgaXQgdGFrZXMgZWZmZWN0IG9ubHkgd2hlbiBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFBvc3RQYWlkLiBWYWx1ZSByYW5nZTogXCJOb1Nwb3Q6IEEgcmVndWxhciBQYXktQXMtWW91LUdvIGluc3RhbmNlXCIsIFwiU3BvdFdpdGhQcmljZUxpbWl0OiBBIHByaWNlIHRocmVzaG9sZCBmb3IgYSBzcG90IGluc3RhbmNlLCBcIlwiU3BvdEFzUHJpY2VHbzogQSBwcmljZSB0aGF0IGlzIGJhc2VkIG9uIHRoZSBoaWdoZXN0IFBheS1Bcy1Zb3UtR28gaW5zdGFuY2UuIFwiRGVmYXVsdCB2YWx1ZTogTm9TcG90LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNwb3RTdHJhdGVneT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tBdXRvU25hcHNob3RQb2xpY3lJZDogQXV0byBzbmFwc2hvdCBwb2xpY3kgSUQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0F1dG9TbmFwc2hvdFBvbGljeUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0J1cnN0aW5nRW5hYmxlZDogV2hldGhlciBlbmFibGUgYnVyc3RpbmcuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0J1cnN0aW5nRW5hYmxlZD86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrQ2F0ZWdvcnk6IENhdGVnb3J5IG9mIHN5c3RlbSBkaXNrLiBEZWZhdWx0IGlzIGNsb3VkX2VmZmljaWVuY3kuIHN1cHBvcnQgY2xvdWR8Y2xvdWRfZWZmaWNpZW5jeXxjbG91ZF9zc2R8Y2xvdWRfZXNzZHxlcGhlbWVyYWxfc3NkfGNsb3VkX2F1dG98Y2xvdWRfZXNzZF9lbnRyeS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0NhdGVnb3J5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0Rlc2NyaXB0aW9uOiBEZXNjcmlwdGlvbiBvZiBjcmVhdGVkIHN5c3RlbSBkaXNrLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRGVzY3JpcHRpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrRGlza05hbWU6IE5hbWUgb2YgY3JlYXRlZCBzeXN0ZW0gZGlzay5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0Rpc2tOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG06IFRoZSBhbGdvcml0aG0gdG8gdXNlIHRvIGVuY3J5cHQgdGhlIHN5c3RlbSBkaXNrLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSBhc2UtMjU2XG4gICAgICogLSBzbTQtMTI4XG4gICAgICogRGVmYXVsdCB2YWx1ZTogYXNlLTI1Ni5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRW5jcnlwdEFsZ29yaXRobT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tFbmNyeXB0ZWQ6IFNwZWNpZmllcyB3aGV0aGVyIHRvIGVuY3J5cHQgdGhlIHN5c3RlbSBkaXNrLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSB0cnVlOiBlbmNyeXB0cyB0aGUgc3lzdGVtIGRpc2suXG4gICAgICogLSBmYWxzZTogZG9lcyBub3QgZW5jcnlwdCB0aGUgc3lzdGVtIGRpc2suXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0VuY3J5cHRlZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tLbXNLZXlJZDogVGhlIElEIG9mIHRoZSBLTVMga2V5IHRvIHVzZSBmb3IgdGhlIHN5c3RlbSBkaXNrLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tLbXNLZXlJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM6IFByb3Zpc2lvbmluZyBJT1BTLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZDogVGhlIElEIG9mIHRoZSBkZWRpY2F0ZWQgYmxvY2sgc3RvcmFnZSBjbHVzdGVyLiBJZiB5b3Ugd2FudCB0byB1c2UgZGlza3MgaW4gYSBkZWRpY2F0ZWQgYmxvY2sgc3RvcmFnZSBjbHVzdGVyIGFzIHN5c3RlbSBkaXNrcyB3aGVuIHlvdSBjcmVhdGUgaW5zdGFuY2VzLCB5b3UgbXVzdCBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tTdG9yYWdlQ2x1c3RlcklkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdGFnczogVGFncyB0byBhdHRhY2ggdG8gaW5zdGFuY2UuIE1heCBzdXBwb3J0IDIwIHRhZ3MgdG8gYWRkIGR1cmluZyBjcmVhdGUgaW5zdGFuY2UuIEVhY2ggdGFnIHdpdGggdHdvIHByb3BlcnRpZXMgS2V5IGFuZCBWYWx1ZSwgYW5kIEtleSBpcyByZXF1aXJlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSB0YWdzPzogUm9zSW5zdGFuY2VHcm91cENsb25lLlRhZ3NQcm9wZXJ0eVtdO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdXBkYXRlUG9saWN5OiBTcGVjaWZ5IHRoZSBwb2xpY3kgYXQgdXBkYXRlLiBcbiAgICAgKiBUaGUgdmFsdWUgY2FuIGJlICdGb3JOZXdJbnN0YW5jZXMnIG9yICdGb3JBbGxJbnN0YW5jZXMnLlxuICAgICAqIElmIFVwZGF0ZVBvbGljeSBpcyAnRm9yQWxsSW5zdGFuY2UnLCBUaGUgdXBkYXRhYmxlIHBhcmFtZXRlcnMgYXJlIEluc3RhbmNlVHlwZSwgSW1hZ2VJZCwgU3lzdGVtRGlza1NpemUsIFN5c3RlbURpc2tDYXRlZ29yeSwgUGFzc3dvcmQsIFVzZXJEYXRhLEludGVybmV0Q2hhcmdlVHlwZSwgSW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQsIEludGVybmV0TWF4QmFuZHdpZHRoSW4uXG4gICAgICogVGhlIGRlZmF1bHQgaXMgJ0Zvck5ld0luc3RhbmNlcydcbiAgICAgKi9cbiAgICByZWFkb25seSB1cGRhdGVQb2xpY3k/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB6b25lSWQ6IFRoZSBJRCBvZiB0aGUgem9uZSB0byB3aGljaCB0aGUgaW5zdGFuY2UgYmVsb25ncy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIFxuICAgICAqIGNhbGwgdGhlIERlc2NyaWJlWm9uZXMgb3BlcmF0aW9uIHRvIHF1ZXJ5IHRoZSBtb3N0IHJlY2VudCB6b25lIGxpc3QuIFxuICAgICAqIERlZmF1bHQgdmFsdWUgaXMgZW1wdHksIHdoaWNoIG1lYW5zIHJhbmRvbSBzZWxlY3Rpb24uXG4gICAgICovXG4gICAgcmVhZG9ubHkgem9uZUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xufVxuXG4vKipcbiAqIEEgUk9TIHJlc291cmNlIHR5cGU6ICBgQUxJWVVOOjpFQ1M6Okluc3RhbmNlR3JvdXBDbG9uZWBcbiAqL1xuZXhwb3J0IGNsYXNzIEluc3RhbmNlR3JvdXBDbG9uZSBleHRlbmRzIHJvcy5SZXNvdXJjZSB7XG5cbiAgICAvKipcbiAgICAgKiBBIGZhY3RvcnkgbWV0aG9kIHRoYXQgY3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGlzIGNsYXNzIGZyb20gYW4gb2JqZWN0XG4gICAgICogY29udGFpbmluZyB0aGUgcHJvcGVydGllcyBvZiB0aGlzIFJPUyByZXNvdXJjZSwgd2hpY2ggd2lsbCBiZSBhc3NpZ25lZCB0byBST1MgcmVzb3VyY2UuXG4gICAgICovXG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSG9zdE5hbWVzOiBIb3N0IG5hbWVzIG9mIGNyZWF0ZWQgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRySG9zdE5hbWVzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSW5uZXJJcHM6IElubmVyIElQIGFkZHJlc3MgbGlzdCBvZiB0aGUgc3BlY2lmaWVkIGluc3RhbmNlcy4gT25seSBmb3IgY2xhc3NpY2FsIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0cklubmVySXBzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSW5zdGFuY2VJZHM6IFRoZSBpbnN0YW5jZSBpZCBsaXN0IG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlc1xuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRySW5zdGFuY2VJZHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBJcHY2QWRkcmVzc0lkczogSVB2NiBhZGRyZXNzIElEcyBsaXN0IG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlcy4gTm90ZTogVGhlIHJldHVybiB0eXBlIGlzIGEgdHdvLXRpZXIgbGlzdC5JZiB0aGUgaW5zdGFuY2UgZG9lcyBub3QgaGF2ZSBhbnkgSVB2NiBhZGRyZXNzLCB0aGUgZWxlbWVudCBhdCB0aGUgY29ycmVzcG9uZGluZyBwb3NpdGlvbiBpbiB0aGUgbGlzdCBpcyBudWxsLiBJZiBhbGwgaW5zdGFuY2VzIGRvZXMgbm90IGhhdmUgYW55IElQdiBhZGRyZXNzLCB3aWxsIHJldHVybiBudWxsLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRySXB2NkFkZHJlc3NJZHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBJcHY2QWRkcmVzc2VzOiBJUHY2IGFkZHJlc3NlcyBsaXN0IG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlcy4gTm90ZTogVGhlIHJldHVybiB0eXBlIGlzIGEgdHdvLXRpZXIgbGlzdC4gSWYgdGhlIGluc3RhbmNlIGRvZXMgbm90IGhhdmUgYW55IElQdjYgYWRkcmVzcywgdGhlIGVsZW1lbnQgYXQgdGhlIGNvcnJlc3BvbmRpbmcgcG9zaXRpb24gaW4gdGhlIGxpc3QgaXMgbnVsbC4gSWYgYWxsIGluc3RhbmNlcyBkb2VzIG5vdCBoYXZlIGFueSBJUHYgYWRkcmVzcywgd2lsbCByZXR1cm4gbnVsbC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0cklwdjZBZGRyZXNzZXM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBPcmRlcklkOiBUaGUgb3JkZXIgaWQgbGlzdCBvZiBjcmVhdGVkIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRyT3JkZXJJZDogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIFByaXZhdGVJcHM6IFByaXZhdGUgSVAgYWRkcmVzcyBsaXN0IG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlcy4gT25seSBmb3IgVlBDIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRyUHJpdmF0ZUlwczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIFB1YmxpY0lwczogUHVibGljIElQIGFkZHJlc3MgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJQdWJsaWNJcHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBab25lSWRzOiBab25lIGlkIG9mIGNyZWF0ZWQgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRyWm9uZUlkczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlIGEgbmV3IGBBTElZVU46OkVDUzo6SW5zdGFuY2VHcm91cENsb25lYC5cbiAgICAgKlxuICAgICAqIFBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAgICogUGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAgICogUGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAgICovXG4gICAgY29uc3RydWN0b3Ioc2NvcGU6IHJvcy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBJbnN0YW5jZUdyb3VwQ2xvbmVQcm9wcywgZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQ6Ym9vbGVhbiA9IHRydWUpIHtcbiAgICAgICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgICAgICBjb25zdCByb3NJbnN0YW5jZUdyb3VwQ2xvbmUgPSBuZXcgUm9zSW5zdGFuY2VHcm91cENsb25lKHRoaXMsIGlkLCAge1xuICAgICAgICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgICAgICAgZGlza01hcHBpbmdzOiBwcm9wcy5kaXNrTWFwcGluZ3MsXG4gICAgICAgICAgICByZXNvdXJjZUdyb3VwSWQ6IHByb3BzLnJlc291cmNlR3JvdXBJZCxcbiAgICAgICAgICAgIHN5c3RlbURpc2tEZXNjcmlwdGlvbjogcHJvcHMuc3lzdGVtRGlza0Rlc2NyaXB0aW9uLFxuICAgICAgICAgICAgc3lzdGVtRGlza1Byb3Zpc2lvbmVkSW9wczogcHJvcHMuc3lzdGVtRGlza1Byb3Zpc2lvbmVkSW9wcyxcbiAgICAgICAgICAgIGF1dG9SZW5ldzogcHJvcHMuYXV0b1JlbmV3ID09PSB1bmRlZmluZWQgfHwgcHJvcHMuYXV0b1JlbmV3ID09PSBudWxsID8gJ0ZhbHNlJyA6IHByb3BzLmF1dG9SZW5ldyxcbiAgICAgICAgICAgIGlwdjZBZGRyZXNzZXM6IHByb3BzLmlwdjZBZGRyZXNzZXMsXG4gICAgICAgICAgICBzb3VyY2VJbnN0YW5jZUlkOiBwcm9wcy5zb3VyY2VJbnN0YW5jZUlkLFxuICAgICAgICAgICAgc3lzdGVtRGlza0VuY3J5cHRlZDogcHJvcHMuc3lzdGVtRGlza0VuY3J5cHRlZCxcbiAgICAgICAgICAgIG1heEFtb3VudDogcHJvcHMubWF4QW1vdW50LFxuICAgICAgICAgICAgc3lzdGVtRGlza0F1dG9TbmFwc2hvdFBvbGljeUlkOiBwcm9wcy5zeXN0ZW1EaXNrQXV0b1NuYXBzaG90UG9saWN5SWQsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrRW5jcnlwdEFsZ29yaXRobTogcHJvcHMuc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG0sXG4gICAgICAgICAgICByYW1Sb2xlTmFtZTogcHJvcHMucmFtUm9sZU5hbWUsXG4gICAgICAgICAgICBpcHY2QWRkcmVzc0NvdW50OiBwcm9wcy5pcHY2QWRkcmVzc0NvdW50LFxuICAgICAgICAgICAgaW1hZ2VJZDogcHJvcHMuaW1hZ2VJZCxcbiAgICAgICAgICAgIHNwb3RQcmljZUxpbWl0OiBwcm9wcy5zcG90UHJpY2VMaW1pdCxcbiAgICAgICAgICAgIHN5c3RlbURpc2tEaXNrTmFtZTogcHJvcHMuc3lzdGVtRGlza0Rpc2tOYW1lLFxuICAgICAgICAgICAgdGFnczogcHJvcHMudGFncyxcbiAgICAgICAgICAgIHNwb3RTdHJhdGVneTogcHJvcHMuc3BvdFN0cmF0ZWd5LFxuICAgICAgICAgICAgcGFzc3dvcmRJbmhlcml0OiBwcm9wcy5wYXNzd29yZEluaGVyaXQsXG4gICAgICAgICAgICBwYXNzd29yZDogcHJvcHMucGFzc3dvcmQsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZDogcHJvcHMuc3lzdGVtRGlza1N0b3JhZ2VDbHVzdGVySWQsXG4gICAgICAgICAgICBhdXRvUmVuZXdQZXJpb2Q6IHByb3BzLmF1dG9SZW5ld1BlcmlvZCA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLmF1dG9SZW5ld1BlcmlvZCA9PT0gbnVsbCA/IDEgOiBwcm9wcy5hdXRvUmVuZXdQZXJpb2QsXG4gICAgICAgICAgICBiYWNrZW5kU2VydmVyV2VpZ2h0OiBwcm9wcy5iYWNrZW5kU2VydmVyV2VpZ2h0ID09PSB1bmRlZmluZWQgfHwgcHJvcHMuYmFja2VuZFNlcnZlcldlaWdodCA9PT0gbnVsbCA/IDEwMCA6IHByb3BzLmJhY2tlbmRTZXJ2ZXJXZWlnaHQsXG4gICAgICAgICAgICBrZXlQYWlyTmFtZTogcHJvcHMua2V5UGFpck5hbWUsXG4gICAgICAgICAgICBsYXVuY2hUZW1wbGF0ZU5hbWU6IHByb3BzLmxhdW5jaFRlbXBsYXRlTmFtZSxcbiAgICAgICAgICAgIHVwZGF0ZVBvbGljeTogcHJvcHMudXBkYXRlUG9saWN5ID09PSB1bmRlZmluZWQgfHwgcHJvcHMudXBkYXRlUG9saWN5ID09PSBudWxsID8gJ0Zvck5ld0luc3RhbmNlcycgOiBwcm9wcy51cGRhdGVQb2xpY3ksXG4gICAgICAgICAgICB6b25lSWQ6IHByb3BzLnpvbmVJZCxcbiAgICAgICAgICAgIHN5c3RlbURpc2tLbXNLZXlJZDogcHJvcHMuc3lzdGVtRGlza0ttc0tleUlkLFxuICAgICAgICAgICAgaHBjQ2x1c3RlcklkOiBwcm9wcy5ocGNDbHVzdGVySWQsXG4gICAgICAgICAgICBzZWN1cml0eUdyb3VwSWQ6IHByb3BzLnNlY3VyaXR5R3JvdXBJZCxcbiAgICAgICAgICAgIHBlcmlvZDogcHJvcHMucGVyaW9kID09PSB1bmRlZmluZWQgfHwgcHJvcHMucGVyaW9kID09PSBudWxsID8gMSA6IHByb3BzLnBlcmlvZCxcbiAgICAgICAgICAgIGxhdW5jaFRlbXBsYXRlSWQ6IHByb3BzLmxhdW5jaFRlbXBsYXRlSWQsXG4gICAgICAgICAgICBkZWxldGlvblByb3RlY3Rpb246IHByb3BzLmRlbGV0aW9uUHJvdGVjdGlvbixcbiAgICAgICAgICAgIHNlY3VyaXR5R3JvdXBJZHM6IHByb3BzLnNlY3VyaXR5R3JvdXBJZHMsXG4gICAgICAgICAgICBsb2FkQmFsYW5jZXJJZFRvQXR0YWNoOiBwcm9wcy5sb2FkQmFsYW5jZXJJZFRvQXR0YWNoLFxuICAgICAgICAgICAgc3lzdGVtRGlza0NhdGVnb3J5OiBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnkgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnkgPT09IG51bGwgPyAnY2xvdWRfZWZmaWNpZW5jeScgOiBwcm9wcy5zeXN0ZW1EaXNrQ2F0ZWdvcnksXG4gICAgICAgICAgICBpbnN0YW5jZU5hbWU6IHByb3BzLmluc3RhbmNlTmFtZSxcbiAgICAgICAgICAgIGVuaU1hcHBpbmdzOiBwcm9wcy5lbmlNYXBwaW5ncyxcbiAgICAgICAgICAgIHN5c3RlbURpc2tCdXJzdGluZ0VuYWJsZWQ6IHByb3BzLnN5c3RlbURpc2tCdXJzdGluZ0VuYWJsZWQsXG4gICAgICAgICAgICBkZXBsb3ltZW50U2V0SWQ6IHByb3BzLmRlcGxveW1lbnRTZXRJZCxcbiAgICAgICAgICAgIGludGVybmV0TWF4QmFuZHdpZHRoT3V0OiBwcm9wcy5pbnRlcm5ldE1heEJhbmR3aWR0aE91dCxcbiAgICAgICAgICAgIGludGVybmV0TWF4QmFuZHdpZHRoSW46IHByb3BzLmludGVybmV0TWF4QmFuZHdpZHRoSW4gPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5pbnRlcm5ldE1heEJhbmR3aWR0aEluID09PSBudWxsID8gMjAwIDogcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhJbixcbiAgICAgICAgICAgIGxhdW5jaFRlbXBsYXRlVmVyc2lvbjogcHJvcHMubGF1bmNoVGVtcGxhdGVWZXJzaW9uLFxuICAgICAgICAgICAgcGVyaW9kVW5pdDogcHJvcHMucGVyaW9kVW5pdCA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLnBlcmlvZFVuaXQgPT09IG51bGwgPyAnTW9udGgnIDogcHJvcHMucGVyaW9kVW5pdCxcbiAgICAgICAgICAgIGF1dG9SZWxlYXNlVGltZTogcHJvcHMuYXV0b1JlbGVhc2VUaW1lLFxuICAgICAgICB9LCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCAmJiB0aGlzLnN0YWNrLmVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50KTtcbiAgICAgICAgdGhpcy5yZXNvdXJjZSA9IHJvc0luc3RhbmNlR3JvdXBDbG9uZTtcbiAgICAgICAgdGhpcy5hdHRySG9zdE5hbWVzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJIb3N0TmFtZXM7XG4gICAgICAgIHRoaXMuYXR0cklubmVySXBzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJJbm5lcklwcztcbiAgICAgICAgdGhpcy5hdHRySW5zdGFuY2VJZHMgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0ckluc3RhbmNlSWRzO1xuICAgICAgICB0aGlzLmF0dHJJcHY2QWRkcmVzc0lkcyA9IHJvc0luc3RhbmNlR3JvdXBDbG9uZS5hdHRySXB2NkFkZHJlc3NJZHM7XG4gICAgICAgIHRoaXMuYXR0cklwdjZBZGRyZXNzZXMgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0cklwdjZBZGRyZXNzZXM7XG4gICAgICAgIHRoaXMuYXR0ck9yZGVySWQgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0ck9yZGVySWQ7XG4gICAgICAgIHRoaXMuYXR0clByaXZhdGVJcHMgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0clByaXZhdGVJcHM7XG4gICAgICAgIHRoaXMuYXR0clB1YmxpY0lwcyA9IHJvc0luc3RhbmNlR3JvdXBDbG9uZS5hdHRyUHVibGljSXBzO1xuICAgICAgICB0aGlzLmF0dHJab25lSWRzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJab25lSWRzO1xuICAgIH1cbn1cbiJdfQ==
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2Vncm91cGNsb25lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaW5zdGFuY2Vncm91cGNsb25lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDhDQUE4QztBQUM5QyxtREFBd0Q7QUFFdEIsMkdBRnpCLHFDQUFxQixPQUU4QjtBQXdUNUQ7Ozs7R0FJRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUF3RGhEOzs7O09BSUc7SUFDSCxZQUFZLEtBQW9CLEVBQUUsRUFBVSxFQUFFLEtBQThCLEVBQUUsbUNBQTJDLElBQUk7UUFDekgsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxnQ0FBZ0MsR0FBRyxnQ0FBZ0MsQ0FBQztRQUV6RSxNQUFNLHFCQUFxQixHQUFHLElBQUkscUNBQXFCLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRztZQUMvRCxlQUFlLEVBQUUsS0FBSyxDQUFDLGVBQWU7WUFDdEMscUJBQXFCLEVBQUUsS0FBSyxDQUFDLHFCQUFxQjtZQUNsRCx5QkFBeUIsRUFBRSxLQUFLLENBQUMseUJBQXlCO1lBQzFELGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7WUFDeEMsMEJBQTBCLEVBQUUsS0FBSyxDQUFDLDBCQUEwQjtZQUM1RCxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTtZQUNoQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsa0JBQWtCO1lBQzVDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQiwwQkFBMEIsRUFBRSxLQUFLLENBQUMs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Q0FBQyxtQkFBbUIsR0FBRyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQztRQUNyRSxJQUFJLENBQUMsV0FBVyxHQUFHLHFCQUFxQixDQUFDLFdBQVcsQ0FBQztJQUN6RCxDQUFDO0NBQ0o7QUF2SUQsZ0RBdUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcm9zIGZyb20gJ0BhbGljbG91ZC9yb3MtY2RrLWNvcmUnO1xuaW1wb3J0IHsgUm9zSW5zdGFuY2VHcm91cENsb25lIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zSW5zdGFuY2VHcm91cENsb25lIGFzIEluc3RhbmNlR3JvdXBDbG9uZVByb3BlcnR5IH07XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgZGVmaW5pbmcgYSBgSW5zdGFuY2VHcm91cENsb25lYC5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1pbnN0YW5jZWdyb3VwY2xvbmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnN0YW5jZUdyb3VwQ2xvbmVQcm9wcyB7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBtYXhBbW91bnQ6IE1heCBudW1iZXIgb2YgaW5zdGFuY2VzIHRvIGNyZWF0ZSwgc2hvdWxkIGJlIGJpZ2dlciB0aGFuICdNaW5BbW91bnQnIGFuZCBzbWFsbGVyIHRoYW4gMTAwMC5cbiAgICAgKi9cbiAgICByZWFkb25seSBtYXhBbW91bnQ6IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNvdXJjZUluc3RhbmNlSWQ6IFNvdXJjZSBlY3MgaW5zdGFuY2UgdXNlZCB0byBjb3B5IHByb3BlcnRpZXMgdG8gY2xvbmUgbmV3IGVjcyBpbnN0YW5jZS4gSXQgd2lsbCBjb3B5IHRoZSBJbnN0YW5jZVR5cGUsIEltYWdlSWQsIEludGVybmV0Q2hhcmdlVHlwZSwgSW50ZXJuZXRNYXhCYW5kd2lkdGhJbiwgSW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQgYW5kIHRoZSBzeXN0ZW0gZGlzayBhbmQgZGF0YSBkaXNrIGNvbmZpZ3VyYXRpb25zLiBJZiB0aGUgaW5zdGFuY2UgbmV0d29yayBpcyBWUEMsIGl0IHdpbGwgYWxzbyBjbG9uZSB0aGUgcmVsYXRpdmUgcHJvcGVydGllcy4gSWYgc3BlY2lmaWVkIGluc3RhbmNlIHdpdGggbW9yZSB0aGFuIG9uZSBzZWN1cml0eSBncm91cCwgaXQgd2lsbCB1c2UgdGhlIGZpcnN0IHNlY3VyaXR5IGdyb3VwIHRvIGNyZWF0ZSBpbnN0YW5jZS4geW91IGNhbiBhbHNvIHNwZWNpZnkgdGhlIFNlY3VyaXR5R3JvdXBJZCB0byBvdmVycmlkZSBpdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzb3VyY2VJbnN0YW5jZUlkOiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVsZWFzZVRpbWU6IEF1dG8gcmVsZWFzZSB0aW1lIGZvciBjcmVhdGVkIGluc3RhbmNlLCBGb2xsb3cgSVNPODYwMSBzdGFuZGFyZCB1c2luZyBVVEMgdGltZS4gZm9ybWF0IGlzICd5eXl5LU1NLWRkVEhIOm1tOnNzWicuIE5vdCBiaWdnZXIgdGhhbiAzIHllYXJzIGZyb20gdGhpcyBkYXkgb253YXJkc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dG9SZWxlYXNlVGltZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGF1dG9SZW5ldzogV2hldGhlciByZW5ldyB0aGUgZmVlIGF1dG9tYXRpY2FsbHk/IFdoZW4gdGhlIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUHJlUGFpZCwgaXQgd2lsbCB0YWtlIGVmZmVjdC4gUmFuZ2Ugb2YgdmFsdWU6VHJ1ZTogYXV0b21hdGljIHJlbmV3YWwuRmFsc2U6IG5vIGF1dG9tYXRpYyByZW5ld2FsLiBEZWZhdWx0IHZhbHVlIGlzIEZhbHNlLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBhdXRvUmVuZXc/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBhdXRvUmVuZXdQZXJpb2Q6IFRoZSB0aW1lIHBlcmlvZCBvZiBhdXRvIHJlbmV3LiBXaGVuIHRoZSBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFByZVBhaWQsIGl0IHdpbGwgdGFrZSBlZmZlY3QuSXQgY291bGQgYmUgMSwgMiwgMywgNiwgMTIsIDI0LCAzNiwgNDgsIDYwLiBEZWZhdWx0IHZhbHVlIGlzIDEuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGF1dG9SZW5ld1BlcmlvZD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGJhY2tlbmRTZXJ2ZXJXZWlnaHQ6IFRoZSB3ZWlnaHQgb2YgYmFja2VuZCBzZXJ2ZXIgb2YgbG9hZCBiYWxhbmNlci4gRnJvbSAwIHRvIDEwMCwgMCBtZWFucyBvZmZsaW5lLiBEZWZhdWx0IGlzIDEwMC5cbiAgICAgKi9cbiAgICByZWFkb25seSBiYWNrZW5kU2VydmVyV2VpZ2h0PzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgY3B1T3B0aW9uczogQ3B1IG9wdGlvbnMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgY3B1T3B0aW9ucz86IFJvc0luc3RhbmNlR3JvdXBDbG9uZS5DcHVPcHRpb25zUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZWxldGlvblByb3RlY3Rpb246IFdoZXRoZXIgYW4gaW5zdGFuY2UgY2FuIGJlIHJlbGVhc2VkIG1hbnVhbGx5IHRocm91Z2ggdGhlIGNvbnNvbGUgb3IgQVBJLCBkZWxldGlvbiBwcm90ZWN0aW9uIG9ubHkgc3VwcG9ydCBwb3N0UGFpZCBpbnN0YW5jZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlbGV0aW9uUHJvdGVjdGlvbj86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBkZXBsb3ltZW50U2V0SWQ6IERlcGxveW1lbnQgc2V0IElELiBUaGUgY2hhbmdlIG9mIHRoZSBwcm9wZXJ0eSBkb2VzIG5vdCBhZmZlY3QgZXhpc3RpbmcgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlcGxveW1lbnRTZXRJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGRlc2NyaXB0aW9uOiBEZXNjcmlwdGlvbiBvZiB0aGUgaW5zdGFuY2UsIFsyLCAyNTZdIGNoYXJhY3RlcnMuIERvIG5vdCBmaWxsIG9yIGVtcHR5LCB0aGUgZGVmYXVsdCBpcyBlbXB0eS4gT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZGlza01hcHBpbmdzOiBEaXNrIG1hcHBpbmdzIHRvIGF0dGFjaCB0byBpbnN0YW5jZS4gTWF4IHN1cHBvcnQgMTYgZGlza3MuXG4gICAgICogSWYgdGhlIGltYWdlIGNvbnRhaW5zIGEgZGF0YSBkaXNrLCB5b3UgY2FuIHNwZWNpZnkgb3RoZXIgcGFyYW1ldGVycyBvZiB0aGUgZGF0YSBkaXNrIHZpYSB0aGUgc2FtZSB2YWx1ZSBvZiBwYXJhbWV0ZXIgXCJEZXZpY2VcIi4gSWYgcGFyYW1ldGVyIFwiQ2F0ZWdvcnlcIiBpcyBub3Qgc3BlY2lmaWVkLCBpdCB3aWxsIGJlIGNsb3VkX2VmZmljaWVuY3kgaW5zdGVhZCBvZiBcIkNhdGVnb3J5XCIgb2YgZGF0YSBkaXNrIGluIHRoZSBpbWFnZS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgZGlza01hcHBpbmdzPzogQXJyYXk8Um9zSW5zdGFuY2VHcm91cENsb25lLkRpc2tNYXBwaW5nc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGVuaU1hcHBpbmdzOiBOZXR3b3JrSW50ZXJmYWNlIHRvIGF0dGFjaCB0byBpbnN0YW5jZS4gTWF4IHN1cHBvcnQgMiBFTklzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGVuaU1hcHBpbmdzPzogQXJyYXk8Um9zSW5zdGFuY2VHcm91cENsb25lLkVuaU1hcHBpbmdzUHJvcGVydHkgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaG9zdE5hbWVzOiBUaGUgaG9zdG5hbWUgb2YgaW5zdGFuY2UgTi4gWW91IGNhbiB1c2UgdGhpcyBwYXJhbWV0ZXIgdG8gc3BlY2lmeSBkaWZmZXJlbnQgaG9zdG5hbWVzIGZvciBtdWx0aXBsZSBpbnN0YW5jZXMuIFRha2Ugbm90ZSBvZiB0aGUgZm9sbG93aW5nIGl0ZW1zOlxuICAgICAqIC0gVGhlIG1heGltdW0gdmFsdWUgb2YgTiBtdXN0IGJlIHRoZSBzYW1lIGFzIHRoZSBBbW91bnQgdmFsdWUuIEZvciBleGFtcGxlLCBpZiB5b3Ugc2V0IEFtb3VudCB0byAyLCB5b3UgY2FuIHVzZSBIb3N0TmFtZXMuMSBhbmQgSG9zdE5hbWVzLjIgdG8gc3BlY2lmeSBob3N0bmFtZXMgZm9yIHRoZSBpbmRpdmlkdWFsIGluc3RhbmNlcy4gRXhhbXBsZXM6IEhvc3ROYW1lcy4xPXRlc3QxIGFuZCBIb3N0TmFtZXMuMj10ZXN0Mi5cbiAgICAgKiAtIFlvdSBjYW5ub3Qgc3BlY2lmeSBib3RoIEhvc3ROYW1lIGFuZCBIb3N0TmFtZXMuTi5cbiAgICAgKiAtIFRoZSBob3N0bmFtZSBjYW5ub3Qgc3RhcnQgb3IgZW5kIHdpdGggYSBwZXJpb2QgKC4pIG9yIGh5cGhlbiAoLSkuIFRoZSBob3N0bmFtZSBjYW5ub3QgY29udGFpbiBjb25zZWN1dGl2ZSBwZXJpb2RzICguKSBvciBoeXBoZW5zICgtKS5cbiAgICAgKiAtIEZvciBXaW5kb3dzIGluc3RhbmNlcywgdGhlIGhvc3RuYW1lIG11c3QgYmUgMiB0byAxNSBjaGFyYWN0ZXJzIGluIGxlbmd0aCBhbmQgY2Fubm90IGNvbnRhaW4gcGVyaW9kcyAoLikgb3IgY29udGFpbiBvbmx5IGRpZ2l0cy4gVGhlIGhvc3RuYW1lIGNhbiBjb250YWluIGxldHRlcnMsIGRpZ2l0cywgYW5kIGh5cGhlbnMgKC0pLlxuICAgICAqIC0gRm9yIGluc3RhbmNlcyB0aGF0IHJ1biBvdGhlciBvcGVyYXRpbmcgc3lzdGVtcyBzdWNoIGFzIExpbnV4LCB0aGUgaG9zdG5hbWUgbXVzdCBiZSAyIHRvIDY0IGNoYXJhY3RlcnMgaW4gbGVuZ3RoLiBZb3UgY2FuIHVzZSBwZXJpb2RzICguKSB0byBzZXBhcmF0ZSBhIGhvc3RuYW1lIGludG8gbXVsdGlwbGUgc2VnbWVudHMuIEVhY2ggc2VnbWVudCBjYW4gY29udGFpbiBsZXR0ZXJzLCBkaWdpdHMsIGFuZCBoeXBoZW5zICgtKS5cbiAgICAgKi9cbiAgICByZWFkb25seSBob3N0TmFtZXM/OiBBcnJheTxzdHJpbmcgfCByb3MuSVJlc29sdmFibGU+IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaHBjQ2x1c3RlcklkOiBUaGUgSFBDIGNsdXN0ZXIgSUQgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGJlbG9uZ3MuVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBocGNDbHVzdGVySWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbWFnZUlkOiBJbWFnZSBJRCB0byBjcmVhdGUgZWNzIGluc3RhbmNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGltYWdlSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbWFnZU9wdGlvbnM6IEltYWdlIG9wdGlvbnMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgaW1hZ2VPcHRpb25zPzogUm9zSW5zdGFuY2VHcm91cENsb25lLkltYWdlT3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW5zdGFuY2VOYW1lOiBEaXNwbGF5IG5hbWUgb2YgdGhlIGluc3RhbmNlLCBbMiwgMTI4XSBFbmdsaXNoIG9yIENoaW5lc2UgY2hhcmFjdGVycywgbXVzdCBzdGFydCB3aXRoIGEgbGV0dGVyIG9yIENoaW5lc2UgaW4gc2l6ZSwgY2FuIGNvbnRhaW4gbnVtYmVycywgJ18nIG9yICcuJywgJy0nLiBcbiAgICAgKiBTdXBwb3J0IHRvIHVzZSB0aGUgcmVndWxhciBleHByZXNzaW9uIHRvIHNldCB0aGUgZGlmZmVyZW50IGluc3RhbmNlIG5hbWUgZm9yIGVhY2ggRUNTIGluc3RhbmNlLiBJbnN0YW5jZU5hbWUgY291bGQgYmUgc3BlY2lmaWVkIGFzICduYW1lX3ByZWZpeFtiZWdpbl9udW1iZXIsYml0c11uYW1lX3N1ZmZpeCcsIHN1Y2ggYXMgJ3Rlc3RpbnN0YW5jZVsxMjMsNF10YWlsJy4gSWYgeW91IGNyZWF0ZXMgMyBpbnN0YW5jZXMgd2l0aCB0aGUgaW5zdGFuY2UgbmFtZSAndGVzdGluc3RhbmNlWzEyMyw0XXRhaWwnLCBhbGwgdGhlIGluc3RhbmNlcycgbmFtZXMgYXJlIHRlc3RpbnN0YW5jZTAxMjN0YWlsLCB0ZXN0aW5zdGFuY2UwMTI0dGFpbCwgdGVzdGluc3RhbmNlMDEyNXRhaWwuIFxuICAgICAqIFRoZSAnbmFtZV9wcmVmaXhbYmVnaW5fbnVtYmVyLGJpdHNdbmFtZV9zdWZmaXgnIHNob3VsZCBmb2xsb3cgdGhvc2UgcnVsZXM6IFxuICAgICAqIDEuICduYW1lX3ByZWZpeCcgaXMgcmVxdWlyZWQuIFxuICAgICAqIDIuICduYW1lX3N1ZmZpeCcgaXMgb3B0aW9uYWwuIFxuICAgICAqIDMuIFRoZSBuYW1lIHJlZ3VsYXIgZXhwcmVzc2lvbiBjYW4ndCBpbmNsdWRlIGFueSBzcGFjZXMuIFxuICAgICAqIDQuIFRoZSAnYml0cycgbXVzdCBiZSBpbiByYW5nZSBbMSwgNl0uIFxuICAgICAqIDUuIFRoZSAnYmVnaW5fbnVtYmVyJyBtdXN0IGJlIGluIHJhbmdlIFswLCA5OTk5OTldLiBcbiAgICAgKiA2LiBZb3UgY291bGQgb25seSBzcGVjaWZ5ICdiZWdpbl9udW1iZXInLiBUaGUgJ2JpdHMnIHdpbGwgYmUgc2V0IGFzIDYgYnkgZGVmYXVsdC4gXG4gICAgICogNy4gWW91IGFsc28gY291bGQgb25seSBzcGVjaWZ5IHRoZSBbXSBvciBbLF0uIFRoZSAnYmVnaW5fbnVtYmVyJyB3aWxsIGJlIHNldCBhcyAwIGJ5IGRlZmF1bHQsIHRoZSAnYml0cycgd2lsbCBiZSBzZXQgYXMgNiBieSBkZWZhdWx0LiBcbiAgICAgKiA4LiBJZiB0aGUgYml0cyBvZiAnYmVnaW5fbnVtYmVyJyBpcyBsZXNzIHRoYW4gdGhlICdiaXRzJyB5b3Ugc3BlY2lmaWVkLCBsaWtlIFsxMjM0LDFdLCB0aGUgJ2JpdHMnIHdpbGwgYmUgc2V0IGFzIDYgYnkgZGVmYXVsdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnN0YW5jZU5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpbnRlcm5ldE1heEJhbmR3aWR0aEluOiBNYXggaW50ZXJuZXQgb3V0IGJhbmQgd2lkdGggc2V0dGluZywgdW5pdCBpbiBNYnBzKE1lZ2EgYml0IHBlciBzZWNvbmQpLiBUaGUgcmFuZ2UgaXMgWzAsMjAwXSwgZGVmYXVsdCBpcyAyMDAgTWJwcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnRlcm5ldE1heEJhbmR3aWR0aEluPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQ6IFNldCBpbnRlcm5ldCBvdXRwdXQgYmFuZHdpZHRoIG9mIGluc3RhbmNlLiBVbml0IGlzIE1icHMoTWVnYSBiaXQgcGVyIHNlY29uZCkuIFJhbmdlIGlzIFswLDIwMF0uIERlZmF1bHQgaXMgMS5XaGlsZSB0aGUgcHJvcGVydHkgaXMgbm90IDAsIHB1YmxpYyBpcCB3aWxsIGJlIGFzc2lnbmVkIGZvciBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnRlcm5ldE1heEJhbmR3aWR0aE91dD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGlwdjZBZGRyZXNzQ291bnQ6IFNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIHJhbmRvbWx5IGdlbmVyYXRlZCBJUHY2IGFkZHJlc3NlcyBmb3IgdGhlIGVsYXN0aWMgTklDLlxuICAgICAqIE5vdGUgWW91IGNhbm5vdCBzcGVjaWZ5IHRoZSBwYXJhbWV0ZXJzIElwdjZBZGRyZXNzZXMgYW5kIElwdjZBZGRyZXNzQ291bnQgYXQgdGhlIHNhbWUgdGltZS5cbiAgICAgKiBUaGUgY2hhbmdlIG9mIHRoZSBwcm9wZXJ0eSBkb2VzIG5vdCBhZmZlY3QgZXhpc3RpbmcgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGlwdjZBZGRyZXNzQ291bnQ/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBpcHY2QWRkcmVzc2VzOiBTcGVjaWZ5IG9uZSBvciBtb3JlIElQdjYgYWRkcmVzc2VzIGZvciB0aGUgZWxhc3RpYyBOSUMuIEN1cnJlbnRseSwgdGhlIG1heGltdW0gbGlzdCBzaXplIGlzIDEuIEV4YW1wbGUgdmFsdWU6IDIwMDE6ZGI4OjEyMzQ6MWEwMDo6KioqIC5cbiAgICAgKiBOb3RlIFlvdSBjYW5ub3Qgc3BlY2lmeSB0aGUgcGFyYW1ldGVycyBJcHY2QWRkcmVzc2VzIGFuZCBJcHY2QWRkcmVzc0NvdW50IGF0IHRoZSBzYW1lIHRpbWUuXG4gICAgICogVGhlIGNoYW5nZSBvZiB0aGUgcHJvcGVydHkgZG9lcyBub3QgYWZmZWN0IGV4aXN0aW5nIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpcHY2QWRkcmVzc2VzPzogQXJyYXk8YW55IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGtleVBhaXJOYW1lOiBTU0gga2V5IHBhaXIgbmFtZS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkga2V5UGFpck5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBsYXVuY2hUZW1wbGF0ZUlkOiBJRCBvZiBsYXVuY2ggdGVtcGxhdGUuIExhdW5jaCB0ZW1wbGF0ZSBpZCBvciBuYW1lIG11c3QgYmUgc3BlY2lmaWVkIHRvIHVzZSBsYXVuY2ggdGVtcGxhdGVcbiAgICAgKi9cbiAgICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbGF1bmNoVGVtcGxhdGVOYW1lOiBOYW1lIG9mIGxhdW5jaCB0ZW1wbGF0ZS4gTGF1bmNoIHRlbXBsYXRlIGlkIG9yIG5hbWUgbXVzdCBiZSBzcGVjaWZpZWQgdG8gdXNlIGxhdW5jaCB0ZW1wbGF0ZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxhdW5jaFRlbXBsYXRlTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGxhdW5jaFRlbXBsYXRlVmVyc2lvbjogVmVyc2lvbiBvZiBsYXVuY2ggdGVtcGxhdGUuIERlZmF1bHQgdmVyc2lvbiBpcyB1c2VkIGlmIHZlcnNpb24gaXMgbm90IHNwZWNpZmllZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZVZlcnNpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBsb2FkQmFsYW5jZXJJZFRvQXR0YWNoOiBBZnRlciB0aGUgaW5zdGFuY2UgaXMgY3JlYXRlZC4gQXV0b21hdGljIGF0dGFjaCBpdCB0byB0aGUgbG9hZCBiYWxhbmNlci5cbiAgICAgKi9cbiAgICByZWFkb25seSBsb2FkQmFsYW5jZXJJZFRvQXR0YWNoPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyOiBUaGUgbnVtYmVyIG9mIHF1ZXVlcyBzdXBwb3J0ZWQgYnkgdGhlIHByaW1hcnkgRU5JLiBUYWtlIG5vdGUgb2YgdGhlIGZvbGxvd2luZyBpdGVtczpcbiAgICAgKiAtIFRoZSB2YWx1ZSBvZiB0aGlzIHBhcmFtZXRlciBjYW5ub3QgZXhjZWVkIHRoZSBtYXhpbXVtIG51bWJlciBvZiBxdWV1ZXMgcGVyIEVOSSBhbGxvd2VkIGZvciB0aGUgaW5zdGFuY2UgdHlwZS5cbiAgICAgKiAtIFRoZSB0b3RhbCBudW1iZXIgb2YgcXVldWVzIGZvciBhbGwgRU5JcyBvbiB0aGUgaW5zdGFuY2UgY2Fubm90IGV4Y2VlZCB0aGUgcXVldWUgcXVvdGEgZm9yIHRoZSBpbnN0YW5jZSB0eXBlLlxuICAgICAqIC0gSWYgTmV0d29ya0ludGVyZmFjZS5OLkluc3RhbmNlVHlwZSBpcyBzZXQgdG8gUHJpbWFyeSwgeW91IGNhbm5vdCBzcGVjaWZ5IE5ldHdvcmtJbnRlcmZhY2VRdWV1ZU51bWJlciBidXQgY2FuIHNwZWNpZnkgTmV0d29ya0ludGVyZmFjZS5OLlF1ZXVlTnVtYmVyXG4gICAgICovXG4gICAgcmVhZG9ubHkgbmV0d29ya0ludGVyZmFjZVF1ZXVlTnVtYmVyPzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgbmV0d29ya09wdGlvbnM6IE5ldHdvcmsgb3B0aW9ucy5cbiAgICAgKi9cbiAgICByZWFkb25seSBuZXR3b3JrT3B0aW9ucz86IFJvc0luc3RhbmNlR3JvdXBDbG9uZS5OZXR3b3JrT3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGFzc3dvcmQ6IFBhc3N3b3JkIG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlLiBNdXN0IGNvbnRhaW4gYXQgbGVhc3QgMyB0eXBlcyBvZiBzcGVjaWFsIGNoYXJhY3RlciwgbG93ZXIgY2hhcmFjdGVyLCB1cHBlciBjaGFyYWN0ZXIsIG51bWJlci5cbiAgICAgKi9cbiAgICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBhc3N3b3JkSW5oZXJpdDogU3BlY2lmaWVzIHdoZXRoZXIgdG8gdXNlIHRoZSBwYXNzd29yZCBwcmVzZXQgaW4gdGhlIGltYWdlLiBUbyB1c2UgdGhlIFBhc3N3b3JkSW5oZXJpdCBwYXJhbWV0ZXIsIHRoZSBQYXNzd29yZCBwYXJhbWV0ZXIgbXVzdCBiZSBlbXB0eSBhbmQgeW91IG11c3QgbWFrZSBzdXJlIHRoYXQgdGhlIHNlbGVjdGVkIGltYWdlIGhhcyBhIHBhc3N3b3JkIGNvbmZpZ3VyZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGFzc3dvcmRJbmhlcml0PzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBlcmlvZDogUHJlcGFpZCB0aW1lIHBlcmlvZC4gVW5pdCBpcyBtb250aCwgaXQgY291bGQgYmUgZnJvbSAxIHRvIDkgb3IgMTIsIDI0LCAzNiwgNDgsIDYwLiBEZWZhdWx0IHZhbHVlIGlzIDEuT2xkIGluc3RhbmNlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBlcmlvZD86IG51bWJlciB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBlcmlvZFVuaXQ6IFVuaXQgb2YgcHJlcGFpZCB0aW1lIHBlcmlvZCwgaXQgY291bGQgYmUgV2Vla1xcL01vbnRoXFwvWWVhci4gRGVmYXVsdCB2YWx1ZSBpcyBNb250aC5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGVyaW9kVW5pdD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHJhbVJvbGVOYW1lOiBJbnN0YW5jZSBSQU0gcm9sZSBuYW1lLiBUaGUgbmFtZSBpcyBwcm92aWRlZCBhbmQgbWFpbnRhaW5lZCBieSBSZXNvdXJjZSBBY2Nlc3MgTWFuYWdlbWVudCAoUkFNKSBhbmQgY2FuIGJlIHF1ZXJpZWQgdXNpbmcgTGlzdFJvbGVzLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIFJBTSBBUEkgQ3JlYXRlUm9sZSBhbmQgTGlzdFJvbGVzLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJhbVJvbGVOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcmVzb3VyY2VHcm91cElkOiBSZXNvdXJjZSBncm91cCBpZC5cbiAgICAgKi9cbiAgICByZWFkb25seSByZXNvdXJjZUdyb3VwSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzZWN1cml0eUdyb3VwSWQ6IFNlY3VyaXR5IGdyb3VwIHRvIGNyZWF0ZSBlY3MgaW5zdGFuY2UuIEZvciBjbGFzc2ljIGluc3RhbmNlIG5lZWQgdGhlIHNlY3VyaXR5IGdyb3VwIG5vdCBiZWxvbmcgdG8gVlBDLCBmb3IgVlBDIGluc3RhbmNlLCBwbGVhc2UgbWFrZSBzdXJlIHRoZSBzZWN1cml0eSBncm91cCBiZWxvbmcgdG8gc3BlY2lmaWVkIFZQQy5cbiAgICAgKi9cbiAgICByZWFkb25seSBzZWN1cml0eUdyb3VwSWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzZWN1cml0eUdyb3VwSWRzOiBUaGUgSURzIG9mIHNlY3VyaXR5IGdyb3VwcyBOIHRvIHdoaWNoIHRoZSBpbnN0YW5jZSBiZWxvbmdzLiBUaGUgdmFsaWQgdmFsdWVzIG9mIE4gYXJlIGJhc2VkIG9uIHRoZSBtYXhpbXVtIG51bWJlciBvZiBzZWN1cml0eSBncm91cHMgdG8gd2hpY2ggYW4gaW5zdGFuY2UgY2FuIGJlbG9uZy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBTZWN1cml0eSBncm91cCBsaW1pdHMuTm90ZTogWW91IGNhbm5vdCBzcGVjaWZ5IGJvdGggU2VjdXJpdHlHcm91cElkIGFuZCBTZWN1cml0eUdyb3VwSWRzIGF0IHRoZSBzYW1lIHRpbWUuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkcz86IEFycmF5PHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZT4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzZWN1cml0eU9wdGlvbnM6IFNlY3VyaXR5IG9wdGlvbnMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2VjdXJpdHlPcHRpb25zPzogUm9zSW5zdGFuY2VHcm91cENsb25lLlNlY3VyaXR5T3B0aW9uc1Byb3BlcnR5IHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3BvdFByaWNlTGltaXQ6IFRoZSBob3VybHkgcHJpY2UgdGhyZXNob2xkIG9mIGEgaW5zdGFuY2UsIGFuZCBpdCB0YWtlcyBlZmZlY3Qgb25seSB3aGVuIHBhcmFtZXRlciBJbnN0YW5jZUNoYXJnZVR5cGUgaXMgUG9zdFBhaWQuIFRocmVlIGRlY2ltYWxzIGlzIGFsbG93ZWQgYXQgbW9zdC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzcG90UHJpY2VMaW1pdD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHNwb3RTdHJhdGVneTogVGhlIHNwb3Qgc3RyYXRlZ3kgb2YgYSBQYXktQXMtWW91LUdvIGluc3RhbmNlLCBhbmQgaXQgdGFrZXMgZWZmZWN0IG9ubHkgd2hlbiBwYXJhbWV0ZXIgSW5zdGFuY2VDaGFyZ2VUeXBlIGlzIFBvc3RQYWlkLiBWYWx1ZSByYW5nZTogXCJOb1Nwb3Q6IEEgcmVndWxhciBQYXktQXMtWW91LUdvIGluc3RhbmNlXCIsIFwiU3BvdFdpdGhQcmljZUxpbWl0OiBBIHByaWNlIHRocmVzaG9sZCBmb3IgYSBzcG90IGluc3RhbmNlLCBcIlwiU3BvdEFzUHJpY2VHbzogQSBwcmljZSB0aGF0IGlzIGJhc2VkIG9uIHRoZSBoaWdoZXN0IFBheS1Bcy1Zb3UtR28gaW5zdGFuY2UuIFwiRGVmYXVsdCB2YWx1ZTogTm9TcG90LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHNwb3RTdHJhdGVneT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tBdXRvU25hcHNob3RQb2xpY3lJZDogQXV0byBzbmFwc2hvdCBwb2xpY3kgSUQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0F1dG9TbmFwc2hvdFBvbGljeUlkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0J1cnN0aW5nRW5hYmxlZDogV2hldGhlciBlbmFibGUgYnVyc3RpbmcuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0J1cnN0aW5nRW5hYmxlZD86IGJvb2xlYW4gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrQ2F0ZWdvcnk6IENhdGVnb3J5IG9mIHN5c3RlbSBkaXNrLiBEZWZhdWx0IGlzIGNsb3VkX2VmZmljaWVuY3kuIHN1cHBvcnQgY2xvdWR8Y2xvdWRfZWZmaWNpZW5jeXxjbG91ZF9zc2R8Y2xvdWRfZXNzZHxlcGhlbWVyYWxfc3NkfGNsb3VkX2F1dG98Y2xvdWRfZXNzZF9lbnRyeS5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0NhdGVnb3J5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0Rlc2NyaXB0aW9uOiBEZXNjcmlwdGlvbiBvZiBjcmVhdGVkIHN5c3RlbSBkaXNrLk9sZCBpbnN0YW5jZXMgd2lsbCBub3QgYmUgY2hhbmdlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRGVzY3JpcHRpb24/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrRGlza05hbWU6IE5hbWUgb2YgY3JlYXRlZCBzeXN0ZW0gZGlzay5PbGQgaW5zdGFuY2VzIHdpbGwgbm90IGJlIGNoYW5nZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0Rpc2tOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG06IFRoZSBhbGdvcml0aG0gdG8gdXNlIHRvIGVuY3J5cHQgdGhlIHN5c3RlbSBkaXNrLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSBhc2UtMjU2XG4gICAgICogLSBzbTQtMTI4XG4gICAgICogRGVmYXVsdCB2YWx1ZTogYXNlLTI1Ni5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeXN0ZW1EaXNrRW5jcnlwdEFsZ29yaXRobT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tFbmNyeXB0ZWQ6IFNwZWNpZmllcyB3aGV0aGVyIHRvIGVuY3J5cHQgdGhlIHN5c3RlbSBkaXNrLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSB0cnVlOiBlbmNyeXB0cyB0aGUgc3lzdGVtIGRpc2suXG4gICAgICogLSBmYWxzZTogZG9lcyBub3QgZW5jcnlwdCB0aGUgc3lzdGVtIGRpc2suXG4gICAgICogRGVmYXVsdCB2YWx1ZTogZmFsc2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc3lzdGVtRGlza0VuY3J5cHRlZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tLbXNLZXlJZDogVGhlIElEIG9mIHRoZSBLTVMga2V5IHRvIHVzZSBmb3IgdGhlIHN5c3RlbSBkaXNrLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tLbXNLZXlJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM6IFByb3Zpc2lvbmluZyBJT1BTLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM/OiBudW1iZXIgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeXN0ZW1EaXNrU3RvcmFnZUNsdXN0ZXJJZDogVGhlIElEIG9mIHRoZSBkZWRpY2F0ZWQgYmxvY2sgc3RvcmFnZSBjbHVzdGVyLiBJZiB5b3Ugd2FudCB0byB1c2UgZGlza3MgaW4gYSBkZWRpY2F0ZWQgYmxvY2sgc3RvcmFnZSBjbHVzdGVyIGFzIHN5c3RlbSBkaXNrcyB3aGVuIHlvdSBjcmVhdGUgaW5zdGFuY2VzLCB5b3UgbXVzdCBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5c3RlbURpc2tTdG9yYWdlQ2x1c3RlcklkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdGFnczogVGFncyB0byBhdHRhY2ggdG8gaW5zdGFuY2UuIE1heCBzdXBwb3J0IDIwIHRhZ3MgdG8gYWRkIGR1cmluZyBjcmVhdGUgaW5zdGFuY2UuIEVhY2ggdGFnIHdpdGggdHdvIHByb3BlcnRpZXMgS2V5IGFuZCBWYWx1ZSwgYW5kIEtleSBpcyByZXF1aXJlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSB0YWdzPzogUm9zSW5zdGFuY2VHcm91cENsb25lLlRhZ3NQcm9wZXJ0eVtdO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdW5pcXVlU3VmZml4OiBTcGVjaWZpZXMgd2hldGhlciB0byBhdXRvbWF0aWNhbGx5IGFwcGVuZCBpbmNyZW1lbnRhbCBzdWZmaXhlcyB0byB0aGUgaG9zdG5hbWUgc3BlY2lmaWVkIGJ5IHRoZSAqKkhvc3ROYW1lKiogcGFyYW1ldGVyIGFuZCB0byB0aGUgaW5zdGFuY2UgbmFtZSBzcGVjaWZpZWQgYnkgdGhlICoqSW5zdGFuY2VOYW1lKiogcGFyYW1ldGVyIHdoZW4geW91IGJhdGNoIGNyZWF0ZSBpbnN0YW5jZXMuIFRoZSBpbmNyZW1lbnRhbCBzdWZmaXhlcyBjYW4gcmFuZ2UgZnJvbSAwMDEgdG8gOTk5LiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSAqKnRydWUqKjogYXBwZW5kcyBpbmNyZW1lbnRhbCBzdWZmaXhlcyB0byB0aGUgaG9zdG5hbWUgYW5kIHRoZSBpbnN0YW5jZSBuYW1lLlxuICAgICAqIC0gKipmYWxzZSoqOiBkb2VzIG5vdCBhcHBlbmQgaW5jcmVtZW50YWwgc3VmZml4ZXMgdG8gdGhlIGhvc3RuYW1lIG9yIHRoZSBpbnN0YW5jZSBuYW1lLlxuICAgICAqIERlZmF1bHQgdmFsdWU6ICoqZmFsc2UqKi5cbiAgICAgKiBXaGVuIHRoZSAqKkhvc3ROYW1lKiogb3IgKipJbnN0YW5jZU5hbWUqKiB2YWx1ZSBpcyBzZXQgaW4gdGhlIG5hbWVfcHJlZml4W2JlZ2luX251bWJlcixiaXRzXSBmb3JtYXQgd2l0aG91dCBhIHN1ZmZpeCAobmFtZV9zdWZmaXgpLCB0aGUgKipVbmlxdWVTdWZmaXgqKiBwYXJhbWV0ZXIgZG9lcyBub3QgdGFrZSBlZmZlY3QuIFRoZSBuYW1lcyBhcmUgc29ydGVkIGluIHRoZSBzcGVjaWZpZWQgc2VxdWVuY2UuXG4gICAgICovXG4gICAgcmVhZG9ubHkgdW5pcXVlU3VmZml4PzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHVwZGF0ZVBvbGljeTogU3BlY2lmeSB0aGUgcG9saWN5IGF0IHVwZGF0ZS4gXG4gICAgICogVGhlIHZhbHVlIGNhbiBiZSAnRm9yTmV3SW5zdGFuY2VzJyBvciAnRm9yQWxsSW5zdGFuY2VzJy5cbiAgICAgKiBJZiBVcGRhdGVQb2xpY3kgaXMgJ0ZvckFsbEluc3RhbmNlJywgVGhlIHVwZGF0YWJsZSBwYXJhbWV0ZXJzIGFyZSBJbnN0YW5jZVR5cGUsIEltYWdlSWQsIFN5c3RlbURpc2tTaXplLCBTeXN0ZW1EaXNrQ2F0ZWdvcnksIFBhc3N3b3JkLCBVc2VyRGF0YSxJbnRlcm5ldENoYXJnZVR5cGUsIEludGVybmV0TWF4QmFuZHdpZHRoT3V0LCBJbnRlcm5ldE1heEJhbmR3aWR0aEluLlxuICAgICAqIFRoZSBkZWZhdWx0IGlzICdGb3JOZXdJbnN0YW5jZXMnXG4gICAgICovXG4gICAgcmVhZG9ubHkgdXBkYXRlUG9saWN5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgem9uZUlkOiBUaGUgSUQgb2YgdGhlIHpvbmUgdG8gd2hpY2ggdGhlIGluc3RhbmNlIGJlbG9uZ3MuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBcbiAgICAgKiBjYWxsIHRoZSBEZXNjcmliZVpvbmVzIG9wZXJhdGlvbiB0byBxdWVyeSB0aGUgbW9zdCByZWNlbnQgem9uZSBsaXN0LiBcbiAgICAgKiBEZWZhdWx0IHZhbHVlIGlzIGVtcHR5LCB3aGljaCBtZWFucyByYW5kb20gc2VsZWN0aW9uLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHpvbmVJZD86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcbn1cblxuLyoqXG4gKiBUaGlzIGNsYXNzIGVuY2Fwc3VsYXRlcyBhbmQgZXh0ZW5kcyB0aGUgUk9TIHJlc291cmNlIHR5cGUgYEFMSVlVTjo6RUNTOjpJbnN0YW5jZUdyb3VwQ2xvbmVgLCB3aGljaCBpcyB1c2VkIHRvIGNyZWF0ZSBjbG9uZXMgb2YgYW4gRWxhc3RpYyBDb21wdXRlIFNlcnZpY2UgKEVDUykgaW5zdGFuY2UuXG4gKiBATm90ZSBUaGlzIGNsYXNzIG1heSBoYXZlIHNvbWUgbmV3IGZ1bmN0aW9ucyB0byBmYWNpbGl0YXRlIGRldmVsb3BtZW50LCBzbyBpdCBpcyByZWNvbW1lbmRlZCB0byB1c2UgdGhpcyBjbGFzcyBpbnN0ZWFkIG9mIGBSb3NJbnN0YW5jZUdyb3VwQ2xvbmVgZm9yIGEgbW9yZSBjb252ZW5pZW50IGRldmVsb3BtZW50IGV4cGVyaWVuY2UuXG4gKiBTZWUgaHR0cHM6Ly93d3cuYWxpYmFiYWNsb3VkLmNvbS9oZWxwL3Jvcy9kZXZlbG9wZXItcmVmZXJlbmNlL2FsaXl1bi1lY3MtaW5zdGFuY2Vncm91cGNsb25lXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnN0YW5jZUdyb3VwQ2xvbmUgZXh0ZW5kcyByb3MuUmVzb3VyY2Uge1xuICAgIHByb3RlY3RlZCBzY29wZTogcm9zLkNvbnN0cnVjdDtcbiAgICBwcm90ZWN0ZWQgaWQ6IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgcHJvcHM6IEluc3RhbmNlR3JvdXBDbG9uZVByb3BzO1xuICAgIHByb3RlY3RlZCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBIb3N0TmFtZXM6IEhvc3QgbmFtZXMgb2YgY3JlYXRlZCBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJIb3N0TmFtZXM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBJbm5lcklwczogSW5uZXIgSVAgYWRkcmVzcyBsaXN0IG9mIHRoZSBzcGVjaWZpZWQgaW5zdGFuY2VzLiBPbmx5IGZvciBjbGFzc2ljYWwgaW5zdGFuY2VzLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRySW5uZXJJcHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBJbnN0YW5jZUlkczogVGhlIGluc3RhbmNlIGlkIGxpc3Qgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2VzXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnN0YW5jZUlkczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIElwdjZBZGRyZXNzSWRzOiBJUHY2IGFkZHJlc3MgSURzIGxpc3Qgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2VzLiBOb3RlOiBUaGUgcmV0dXJuIHR5cGUgaXMgYSB0d28tdGllciBsaXN0LklmIHRoZSBpbnN0YW5jZSBkb2VzIG5vdCBoYXZlIGFueSBJUHY2IGFkZHJlc3MsIHRoZSBlbGVtZW50IGF0IHRoZSBjb3JyZXNwb25kaW5nIHBvc2l0aW9uIGluIHRoZSBsaXN0IGlzIG51bGwuIElmIGFsbCBpbnN0YW5jZXMgZG9lcyBub3QgaGF2ZSBhbnkgSVB2IGFkZHJlc3MsIHdpbGwgcmV0dXJuIG51bGwuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJcHY2QWRkcmVzc0lkczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIElwdjZBZGRyZXNzZXM6IElQdjYgYWRkcmVzc2VzIGxpc3Qgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2VzLiBOb3RlOiBUaGUgcmV0dXJuIHR5cGUgaXMgYSB0d28tdGllciBsaXN0LiBJZiB0aGUgaW5zdGFuY2UgZG9lcyBub3QgaGF2ZSBhbnkgSVB2NiBhZGRyZXNzLCB0aGUgZWxlbWVudCBhdCB0aGUgY29ycmVzcG9uZGluZyBwb3NpdGlvbiBpbiB0aGUgbGlzdCBpcyBudWxsLiBJZiBhbGwgaW5zdGFuY2VzIGRvZXMgbm90IGhhdmUgYW55IElQdiBhZGRyZXNzLCB3aWxsIHJldHVybiBudWxsLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRySXB2NkFkZHJlc3Nlczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIE9yZGVySWQ6IFRoZSBvcmRlciBpZCBsaXN0IG9mIGNyZWF0ZWQgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJPcmRlcklkOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgUHJpdmF0ZUlwczogUHJpdmF0ZSBJUCBhZGRyZXNzIGxpc3Qgb2YgY3JlYXRlZCBlY3MgaW5zdGFuY2VzLiBPbmx5IGZvciBWUEMgaW5zdGFuY2UuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJQcml2YXRlSXBzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgUHVibGljSXBzOiBQdWJsaWMgSVAgYWRkcmVzcyBsaXN0IG9mIGNyZWF0ZWQgZWNzIGluc3RhbmNlcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0clB1YmxpY0lwczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIFJlbGF0ZWRPcmRlcklkczogVGhlIHJlbGF0ZWQgb3JkZXIgaWQgbGlzdCBvZiBjcmVhdGVkIGVjcyBpbnN0YW5jZXNcbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0clJlbGF0ZWRPcmRlcklkczogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIFpvbmVJZHM6IFpvbmUgaWQgb2YgY3JlYXRlZCBpbnN0YW5jZXMuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJab25lSWRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgICAqIFBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgICAqIFBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHNjb3BlOiByb3MuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogSW5zdGFuY2VHcm91cENsb25lUHJvcHMsIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OmJvb2xlYW4gPSB0cnVlKSB7XG4gICAgICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgICAgIHRoaXMuc2NvcGUgPSBzY29wZTtcbiAgICAgICAgdGhpcy5pZCA9IGlkO1xuICAgICAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgICAgIHRoaXMuZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgPSBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDtcblxuICAgICAgICBjb25zdCByb3NJbnN0YW5jZUdyb3VwQ2xvbmUgPSBuZXcgUm9zSW5zdGFuY2VHcm91cENsb25lKHRoaXMsIGlkLCAge1xuICAgICAgICAgICAgcmVzb3VyY2VHcm91cElkOiBwcm9wcy5yZXNvdXJjZUdyb3VwSWQsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrRGVzY3JpcHRpb246IHByb3BzLnN5c3RlbURpc2tEZXNjcmlwdGlvbixcbiAgICAgICAgICAgIHN5c3RlbURpc2tQcm92aXNpb25lZElvcHM6IHByb3BzLnN5c3RlbURpc2tQcm92aXNpb25lZElvcHMsXG4gICAgICAgICAgICBzb3VyY2VJbnN0YW5jZUlkOiBwcm9wcy5zb3VyY2VJbnN0YW5jZUlkLFxuICAgICAgICAgICAgc3lzdGVtRGlza0VuY3J5cHRBbGdvcml0aG06IHByb3BzLnN5c3RlbURpc2tFbmNyeXB0QWxnb3JpdGhtLFxuICAgICAgICAgICAgcmFtUm9sZU5hbWU6IHByb3BzLnJhbVJvbGVOYW1lLFxuICAgICAgICAgICAgaW1hZ2VJZDogcHJvcHMuaW1hZ2VJZCxcbiAgICAgICAgICAgIGltYWdlT3B0aW9uczogcHJvcHMuaW1hZ2VPcHRpb25zLFxuICAgICAgICAgICAgc3lzdGVtRGlza0Rpc2tOYW1lOiBwcm9wcy5zeXN0ZW1EaXNrRGlza05hbWUsXG4gICAgICAgICAgICB0YWdzOiBwcm9wcy50YWdzLFxuICAgICAgICAgICAgc3lzdGVtRGlza1N0b3JhZ2VDbHVzdGVySWQ6IHByb3BzLnN5c3RlbURpc2tTdG9yYWdlQ2x1c3RlcklkLFxuICAgICAgICAgICAgYmFja2VuZFNlcnZlcldlaWdodDogcHJvcHMuYmFja2VuZFNlcnZlcldlaWdodCA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLmJhY2tlbmRTZXJ2ZXJXZWlnaHQgPT09IG51bGwgPyAxMDAgOiBwcm9wcy5iYWNrZW5kU2VydmVyV2VpZ2h0LFxuICAgICAgICAgICAgbGF1bmNoVGVtcGxhdGVOYW1lOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZU5hbWUsXG4gICAgICAgICAgICB1cGRhdGVQb2xpY3k6IHByb3BzLnVwZGF0ZVBvbGljeSA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLnVwZGF0ZVBvbGljeSA9PT0gbnVsbCA/ICdGb3JOZXdJbnN0YW5jZXMnIDogcHJvcHMudXBkYXRlUG9saWN5LFxuICAgICAgICAgICAgc3lzdGVtRGlza0ttc0tleUlkOiBwcm9wcy5zeXN0ZW1EaXNrS21zS2V5SWQsXG4gICAgICAgICAgICBjcHVPcHRpb25zOiBwcm9wcy5jcHVPcHRpb25zLFxuICAgICAgICAgICAgcGVyaW9kOiBwcm9wcy5wZXJpb2QgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5wZXJpb2QgPT09IG51bGwgPyAxIDogcHJvcHMucGVyaW9kLFxuICAgICAgICAgICAgbGF1bmNoVGVtcGxhdGVJZDogcHJvcHMubGF1bmNoVGVtcGxhdGVJZCxcbiAgICAgICAgICAgIGRlbGV0aW9uUHJvdGVjdGlvbjogcHJvcHMuZGVsZXRpb25Qcm90ZWN0aW9uLFxuICAgICAgICAgICAgc2VjdXJpdHlHcm91cElkczogcHJvcHMuc2VjdXJpdHlHcm91cElkcyxcbiAgICAgICAgICAgIGluc3RhbmNlTmFtZTogcHJvcHMuaW5zdGFuY2VOYW1lLFxuICAgICAgICAgICAgZGVwbG95bWVudFNldElkOiBwcm9wcy5kZXBsb3ltZW50U2V0SWQsXG4gICAgICAgICAgICBpbnRlcm5ldE1heEJhbmR3aWR0aE91dDogcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhPdXQsXG4gICAgICAgICAgICB1bmlxdWVTdWZmaXg6IHByb3BzLnVuaXF1ZVN1ZmZpeCA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLnVuaXF1ZVN1ZmZpeCA9PT0gbnVsbCA/IGZhbHNlIDogcHJvcHMudW5pcXVlU3VmZml4LFxuICAgICAgICAgICAgc2VjdXJpdHlPcHRpb25zOiBwcm9wcy5zZWN1cml0eU9wdGlvbnMsXG4gICAgICAgICAgICBsYXVuY2hUZW1wbGF0ZVZlcnNpb246IHByb3BzLmxhdW5jaFRlbXBsYXRlVmVyc2lvbixcbiAgICAgICAgICAgIHBlcmlvZFVuaXQ6IHByb3BzLnBlcmlvZFVuaXQgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5wZXJpb2RVbml0ID09PSBudWxsID8gJ01vbnRoJyA6IHByb3BzLnBlcmlvZFVuaXQsXG4gICAgICAgICAgICBhdXRvUmVsZWFzZVRpbWU6IHByb3BzLmF1dG9SZWxlYXNlVGltZSxcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgICAgICAgIGRpc2tNYXBwaW5nczogcHJvcHMuZGlza01hcHBpbmdzLFxuICAgICAgICAgICAgYXV0b1JlbmV3OiBwcm9wcy5hdXRvUmVuZXcgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5hdXRvUmVuZXcgPT09IG51bGwgPyAnRmFsc2UnIDogcHJvcHMuYXV0b1JlbmV3LFxuICAgICAgICAgICAgaXB2NkFkZHJlc3NlczogcHJvcHMuaXB2NkFkZHJlc3NlcyxcbiAgICAgICAgICAgIHN5c3RlbURpc2tFbmNyeXB0ZWQ6IHByb3BzLnN5c3RlbURpc2tFbmNyeXB0ZWQsXG4gICAgICAgICAgICBtYXhBbW91bnQ6IHByb3BzLm1heEFtb3VudCxcbiAgICAgICAgICAgIHN5c3RlbURpc2tBdXRvU25hcHNob3RQb2xpY3lJZDogcHJvcHMuc3lzdGVtRGlza0F1dG9TbmFwc2hvdFBvbGljeUlkLFxuICAgICAgICAgICAgaXB2NkFkZHJlc3NDb3VudDogcHJvcHMuaXB2NkFkZHJlc3NDb3VudCxcbiAgICAgICAgICAgIHNwb3RQcmljZUxpbWl0OiBwcm9wcy5zcG90UHJpY2VMaW1pdCxcbiAgICAgICAgICAgIGhvc3ROYW1lczogcHJvcHMuaG9zdE5hbWVzLFxuICAgICAgICAgICAgc3BvdFN0cmF0ZWd5OiBwcm9wcy5zcG90U3RyYXRlZ3ksXG4gICAgICAgICAgICBwYXNzd29yZEluaGVyaXQ6IHByb3BzLnBhc3N3b3JkSW5oZXJpdCxcbiAgICAgICAgICAgIHBhc3N3b3JkOiBwcm9wcy5wYXNzd29yZCxcbiAgICAgICAgICAgIGF1dG9SZW5ld1BlcmlvZDogcHJvcHMuYXV0b1JlbmV3UGVyaW9kID09PSB1bmRlZmluZWQgfHwgcHJvcHMuYXV0b1JlbmV3UGVyaW9kID09PSBudWxsID8gMSA6IHByb3BzLmF1dG9SZW5ld1BlcmlvZCxcbiAgICAgICAgICAgIGtleVBhaXJOYW1lOiBwcm9wcy5rZXlQYWlyTmFtZSxcbiAgICAgICAgICAgIHpvbmVJZDogcHJvcHMuem9uZUlkLFxuICAgICAgICAgICAgaHBjQ2x1c3RlcklkOiBwcm9wcy5ocGNDbHVzdGVySWQsXG4gICAgICAgICAgICBzZWN1cml0eUdyb3VwSWQ6IHByb3BzLnNlY3VyaXR5R3JvdXBJZCxcbiAgICAgICAgICAgIGxvYWRCYWxhbmNlcklkVG9BdHRhY2g6IHByb3BzLmxvYWRCYWxhbmNlcklkVG9BdHRhY2gsXG4gICAgICAgICAgICBzeXN0ZW1EaXNrQ2F0ZWdvcnk6IHByb3BzLnN5c3RlbURpc2tDYXRlZ29yeSA9PT0gdW5kZWZpbmVkIHx8IHByb3BzLnN5c3RlbURpc2tDYXRlZ29yeSA9PT0gbnVsbCA/ICdjbG91ZF9lZmZpY2llbmN5JyA6IHByb3BzLnN5c3RlbURpc2tDYXRlZ29yeSxcbiAgICAgICAgICAgIGVuaU1hcHBpbmdzOiBwcm9wcy5lbmlNYXBwaW5ncyxcbiAgICAgICAgICAgIHN5c3RlbURpc2tCdXJzdGluZ0VuYWJsZWQ6IHByb3BzLnN5c3RlbURpc2tCdXJzdGluZ0VuYWJsZWQsXG4gICAgICAgICAgICBuZXR3b3JrT3B0aW9uczogcHJvcHMubmV0d29ya09wdGlvbnMsXG4gICAgICAgICAgICBuZXR3b3JrSW50ZXJmYWNlUXVldWVOdW1iZXI6IHByb3BzLm5ldHdvcmtJbnRlcmZhY2VRdWV1ZU51bWJlcixcbiAgICAgICAgICAgIGludGVybmV0TWF4QmFuZHdpZHRoSW46IHByb3BzLmludGVybmV0TWF4QmFuZHdpZHRoSW4gPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5pbnRlcm5ldE1heEJhbmR3aWR0aEluID09PSBudWxsID8gMjAwIDogcHJvcHMuaW50ZXJuZXRNYXhCYW5kd2lkdGhJbixcbiAgICAgICAgfSwgZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQgJiYgdGhpcy5zdGFjay5lbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCk7XG4gICAgICAgIHRoaXMucmVzb3VyY2UgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmU7XG4gICAgICAgIHRoaXMuYXR0ckhvc3ROYW1lcyA9IHJvc0luc3RhbmNlR3JvdXBDbG9uZS5hdHRySG9zdE5hbWVzO1xuICAgICAgICB0aGlzLmF0dHJJbm5lcklwcyA9IHJvc0luc3RhbmNlR3JvdXBDbG9uZS5hdHRySW5uZXJJcHM7XG4gICAgICAgIHRoaXMuYXR0ckluc3RhbmNlSWRzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJJbnN0YW5jZUlkcztcbiAgICAgICAgdGhpcy5hdHRySXB2NkFkZHJlc3NJZHMgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0cklwdjZBZGRyZXNzSWRzO1xuICAgICAgICB0aGlzLmF0dHJJcHY2QWRkcmVzc2VzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJJcHY2QWRkcmVzc2VzO1xuICAgICAgICB0aGlzLmF0dHJPcmRlcklkID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJPcmRlcklkO1xuICAgICAgICB0aGlzLmF0dHJQcml2YXRlSXBzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJQcml2YXRlSXBzO1xuICAgICAgICB0aGlzLmF0dHJQdWJsaWNJcHMgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0clB1YmxpY0lwcztcbiAgICAgICAgdGhpcy5hdHRyUmVsYXRlZE9yZGVySWRzID0gcm9zSW5zdGFuY2VHcm91cENsb25lLmF0dHJSZWxhdGVkT3JkZXJJZHM7XG4gICAgICAgIHRoaXMuYXR0clpvbmVJZHMgPSByb3NJbnN0YW5jZUdyb3VwQ2xvbmUuYXR0clpvbmVJZHM7XG4gICAgfVxufVxuIl19
|
package/lib/invocation.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ import * as ros from '@alicloud/ros-cdk-core';
|
|
|
2
2
|
import { RosInvocation } from './ecs.generated';
|
|
3
3
|
export { RosInvocation as InvocationProperty };
|
|
4
4
|
/**
|
|
5
|
-
* Properties for defining a `
|
|
5
|
+
* Properties for defining a `Invocation`.
|
|
6
|
+
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-invocation
|
|
6
7
|
*/
|
|
7
8
|
export interface InvocationProps {
|
|
8
9
|
/**
|
|
@@ -17,6 +18,23 @@ export interface InvocationProps {
|
|
|
17
18
|
* Property commandName: The name of command. Only system commands whose provide is AlibabaCloud are supported
|
|
18
19
|
*/
|
|
19
20
|
readonly commandName?: string | ros.IResolvable;
|
|
21
|
+
/**
|
|
22
|
+
* Property containerId: The ID of the container. Only 64-bit hexadecimal strings are supported. You can use container IDs that are prefixed with docker:\/\/, containerd:\/\/, or cri-o:\/\/ to specify container runtimes.
|
|
23
|
+
* Take note of the following items:
|
|
24
|
+
* - If you specify this parameter, Cloud Assistant runs scripts in the specified container of the instance.
|
|
25
|
+
* - If you specify this parameter, make sure that the version of Cloud Assistant Agent installed on Linux instances is 2.2.3.344 or later.- If you specify this parameter, Username that is specified in a request to call this operation and WorkingDir that is specified in a request to call the CreateCommand operation do not take effect. You can run the command only in the default working directory of the container by using the default user of the container.
|
|
26
|
+
* - If you specify this parameter, only shell scripts can be run in Linux containers. You cannot add a command in the format similar to #!\/usr\/bin\/python at the beginning of a script to specify a script interpreter.
|
|
27
|
+
*/
|
|
28
|
+
readonly containerId?: string | ros.IResolvable;
|
|
29
|
+
/**
|
|
30
|
+
* Property containerName: The name of the container.
|
|
31
|
+
* Take note of the following items:
|
|
32
|
+
* - If you specify this parameter, Cloud Assistant runs scripts in the specified container of the instance.
|
|
33
|
+
* - If you specify this parameter, make sure that the version of Cloud Assistant Agent installed on Linux instances is 2.2.3.344 or later.
|
|
34
|
+
* - If you specify this parameter, Username that is specified in a request to call this operation and WorkingDir that is specified in a request to call the CreateCommand operation do not take effect. You can run the command only in the default working directory of the container by using the default user of the container.
|
|
35
|
+
* - If you specify this parameter, only shell scripts can be run in Linux containers. You cannot add a command in the format similar to #!\/usr\/bin\/python at the beginning of a script to specify a script interpreter.
|
|
36
|
+
*/
|
|
37
|
+
readonly containerName?: string | ros.IResolvable;
|
|
20
38
|
/**
|
|
21
39
|
* Property frequency: The frequency of timing execution (the shortest frequency is performed every 1 minute). It iss mandatory when Timing is True.The value rule follows the rules of the cron expression.
|
|
22
40
|
*/
|
|
@@ -33,23 +51,60 @@ export interface InvocationProps {
|
|
|
33
51
|
readonly parameters?: {
|
|
34
52
|
[key: string]: (any | ros.IResolvable);
|
|
35
53
|
} | ros.IResolvable;
|
|
54
|
+
/**
|
|
55
|
+
* Property repeatMode: Specifies how to run the command. Valid values:
|
|
56
|
+
* - **Once**: immediately runs the command.
|
|
57
|
+
* - **Period**: runs the command on a schedule. If you set this parameter to Period, you must specify **Frequency**.
|
|
58
|
+
* - **NextRebootOnly**: runs the command the next time the instance is started.
|
|
59
|
+
* - **EveryReboot*: runs the command every time the instance is started.
|
|
60
|
+
* Default value:
|
|
61
|
+
* - If you do not specify Frequency, the default value is Once.
|
|
62
|
+
* - If you specify **Frequency**, **Period** is used as the value of RepeatMode regardless of whether RepeatMode is set to Period.
|
|
63
|
+
*/
|
|
64
|
+
readonly repeatMode?: string | ros.IResolvable;
|
|
65
|
+
/**
|
|
66
|
+
* Property resourceGroupId: The ID of the resource group to which to assign the command executions. The instances specified by InstanceIds must belong to the specified resource group.
|
|
67
|
+
*/
|
|
68
|
+
readonly resourceGroupId?: string | ros.IResolvable;
|
|
36
69
|
/**
|
|
37
70
|
* Property sync: Whether to invoke synchronously.
|
|
38
71
|
*/
|
|
39
72
|
readonly sync?: boolean | ros.IResolvable;
|
|
40
73
|
/**
|
|
41
|
-
* Property
|
|
74
|
+
* Property tags: Tags to attach to invocation. Max support 20 tags to add during create invocation. Each tag with two properties Key and Value, and Key is required.
|
|
42
75
|
*/
|
|
43
|
-
readonly
|
|
76
|
+
readonly tags?: RosInvocation.TagsProperty[];
|
|
77
|
+
/**
|
|
78
|
+
* Property timeout: The timeout period for the command execution. Unit: seconds.
|
|
79
|
+
* - The timeout period cannot be less than 10 seconds.
|
|
80
|
+
* - A timeout error occurs if the command cannot be run because the process slows down or because a specific module or Cloud Assistant Agent does not exist. When the specified timeout period ends, the command process is forcefully terminated.
|
|
81
|
+
* - If you do not specify this parameter, the timeout period that is specified when the command is created is used.
|
|
82
|
+
* - This timeout period is applicable only to this execution. The timeout period of the command is not modified.
|
|
83
|
+
*/
|
|
84
|
+
readonly timeout?: number | ros.IResolvable;
|
|
85
|
+
/**
|
|
86
|
+
* Property username: The username to use to run the command on instances. The username can be up to 255 characters in length.
|
|
87
|
+
* - For Linux instances, the root username is used by default.
|
|
88
|
+
* - For Windows instances, the System username is used by default.
|
|
89
|
+
* You can also specify other usernames that already exist in the instances to run the command. For security purposes, we recommend that you run Cloud Assistant commands as a regular user.
|
|
90
|
+
*/
|
|
91
|
+
readonly username?: string | ros.IResolvable;
|
|
92
|
+
/**
|
|
93
|
+
* Property windowsPasswordName: The name of the password to use to run the command on Windows instances. The name can be up to 255 characters in length.
|
|
94
|
+
* If you do not want to use the default System user to run the command on Windows instances, specify both **WindowsPasswordName** and **Username**. To mitigate the risk of password leaks, the password is stored in plaintext in Operation Orchestration Service (OOS) Parameter Store, and only the name of the password is passed in by using WindowsPasswordName.
|
|
95
|
+
*/
|
|
96
|
+
readonly windowsPasswordName?: string | ros.IResolvable;
|
|
44
97
|
}
|
|
45
98
|
/**
|
|
46
|
-
*
|
|
99
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::Invocation`, which is used to run a Cloud Assistant command on Elastic Compute Service (ECS) instances.
|
|
100
|
+
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosInvocation`for a more convenient development experience.
|
|
101
|
+
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-invocation
|
|
47
102
|
*/
|
|
48
103
|
export declare class Invocation extends ros.Resource {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
104
|
+
protected scope: ros.Construct;
|
|
105
|
+
protected id: string;
|
|
106
|
+
protected props: InvocationProps;
|
|
107
|
+
protected enableResourcePropertyConstraint: boolean;
|
|
53
108
|
/**
|
|
54
109
|
* Attribute InvokeId: The id of command execution.
|
|
55
110
|
*/
|
|
@@ -63,8 +118,6 @@ export declare class Invocation extends ros.Resource {
|
|
|
63
118
|
*/
|
|
64
119
|
readonly attrInvokeResults: ros.IResolvable;
|
|
65
120
|
/**
|
|
66
|
-
* Create a new `ALIYUN::ECS::Invocation`.
|
|
67
|
-
*
|
|
68
121
|
* Param scope - scope in which this resource is defined
|
|
69
122
|
* Param id - scoped id of the resource
|
|
70
123
|
* Param props - resource properties
|
package/lib/invocation.js
CHANGED
|
@@ -5,26 +5,37 @@ const ros = require("@alicloud/ros-cdk-core");
|
|
|
5
5
|
const ecs_generated_1 = require("./ecs.generated");
|
|
6
6
|
Object.defineProperty(exports, "InvocationProperty", { enumerable: true, get: function () { return ecs_generated_1.RosInvocation; } });
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
8
|
+
* This class encapsulates and extends the ROS resource type `ALIYUN::ECS::Invocation`, which is used to run a Cloud Assistant command on Elastic Compute Service (ECS) instances.
|
|
9
|
+
* @Note This class may have some new functions to facilitate development, so it is recommended to use this class instead of `RosInvocation`for a more convenient development experience.
|
|
10
|
+
* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-ecs-invocation
|
|
9
11
|
*/
|
|
10
12
|
class Invocation extends ros.Resource {
|
|
11
13
|
/**
|
|
12
|
-
* Create a new `ALIYUN::ECS::Invocation`.
|
|
13
|
-
*
|
|
14
14
|
* Param scope - scope in which this resource is defined
|
|
15
15
|
* Param id - scoped id of the resource
|
|
16
16
|
* Param props - resource properties
|
|
17
17
|
*/
|
|
18
18
|
constructor(scope, id, props, enableResourcePropertyConstraint = true) {
|
|
19
19
|
super(scope, id);
|
|
20
|
+
this.scope = scope;
|
|
21
|
+
this.id = id;
|
|
22
|
+
this.props = props;
|
|
23
|
+
this.enableResourcePropertyConstraint = enableResourcePropertyConstraint;
|
|
20
24
|
const rosInvocation = new ecs_generated_1.RosInvocation(this, id, {
|
|
21
25
|
parameters: props.parameters,
|
|
22
|
-
|
|
26
|
+
resourceGroupId: props.resourceGroupId,
|
|
27
|
+
timeout: props.timeout,
|
|
28
|
+
windowsPasswordName: props.windowsPasswordName,
|
|
29
|
+
repeatMode: props.repeatMode,
|
|
30
|
+
username: props.username,
|
|
31
|
+
containerName: props.containerName,
|
|
32
|
+
containerId: props.containerId,
|
|
23
33
|
frequency: props.frequency,
|
|
24
34
|
commandName: props.commandName,
|
|
25
35
|
commandId: props.commandId,
|
|
26
36
|
sync: props.sync === undefined || props.sync === null ? false : props.sync,
|
|
27
37
|
instanceIds: props.instanceIds,
|
|
38
|
+
tags: props.tags,
|
|
28
39
|
}, enableResourcePropertyConstraint && this.stack.enableResourcePropertyConstraint);
|
|
29
40
|
this.resource = rosInvocation;
|
|
30
41
|
this.attrInvokeId = rosInvocation.attrInvokeId;
|
|
@@ -33,4 +44,4 @@ class Invocation extends ros.Resource {
|
|
|
33
44
|
}
|
|
34
45
|
}
|
|
35
46
|
exports.Invocation = Invocation;
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2NhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludm9jYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLG1EQUFnRDtBQUV0QixtR0FGakIsNkJBQWEsT0FFc0I7QUFpRDVDOztHQUVHO0FBQ0gsTUFBYSxVQUFXLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFzQnhDOzs7Ozs7T0FNRztJQUNILFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBc0IsRUFBRSxtQ0FBMkMsSUFBSTtRQUNqSCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sYUFBYSxHQUFHLElBQUksNkJBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFHO1lBQy9DLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtZQUM1QixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDMUIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJO1lBQzFFLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztTQUNqQyxFQUFFLGdDQUFnQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsUUFBUSxHQUFHLGFBQWEsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUM7UUFDL0MsSUFBSSxDQUFDLG1CQUFtQixHQUFHLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQztRQUM3RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsYUFBYSxDQUFDLGlCQUFpQixDQUFDO0lBQzdELENBQUM7Q0FDSjtBQTlDRCxnQ0E4Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyByb3MgZnJvbSAnQGFsaWNsb3VkL3Jvcy1jZGstY29yZSc7XG5pbXBvcnQgeyBSb3NJbnZvY2F0aW9uIH0gZnJvbSAnLi9lY3MuZ2VuZXJhdGVkJztcbi8vIEdlbmVyYXRlZCBmcm9tIHRoZSBBbGlDbG91ZCBST1MgUmVzb3VyY2UgU3BlY2lmaWNhdGlvblxuZXhwb3J0IHsgUm9zSW52b2NhdGlvbiBhcyBJbnZvY2F0aW9uUHJvcGVydHkgfTtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBkZWZpbmluZyBhIGBBTElZVU46OkVDUzo6SW52b2NhdGlvbmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnZvY2F0aW9uUHJvcHMge1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW5zdGFuY2VJZHM6IFRoZSBpbnN0YW5jZSBpZCBsaXN0LiBJbnN0YW5jZXMgc3RhdHVzIG11c3QgYmUgcnVubmluZy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnN0YW5jZUlkczogQXJyYXk8YW55IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGNvbW1hbmRJZDogVGhlIGlkIG9mIGNvbW1hbmQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgY29tbWFuZElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgY29tbWFuZE5hbWU6IFRoZSBuYW1lIG9mIGNvbW1hbmQuIE9ubHkgc3lzdGVtIGNvbW1hbmRzIHdob3NlIHByb3ZpZGUgaXMgQWxpYmFiYUNsb3VkIGFyZSBzdXBwb3J0ZWRcbiAgICAgKi9cbiAgICByZWFkb25seSBjb21tYW5kTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGZyZXF1ZW5jeTogVGhlIGZyZXF1ZW5jeSBvZiB0aW1pbmcgZXhlY3V0aW9uICh0aGUgc2hvcnRlc3QgZnJlcXVlbmN5IGlzIHBlcmZvcm1lZCBldmVyeSAxIG1pbnV0ZSkuIEl0IGlzcyBtYW5kYXRvcnkgd2hlbiBUaW1pbmcgaXMgVHJ1ZS5UaGUgdmFsdWUgcnVsZSBmb2xsb3dzIHRoZSBydWxlcyBvZiB0aGUgY3JvbiBleHByZXNzaW9uLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IGZyZXF1ZW5jeT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHBhcmFtZXRlcnM6IFRoZSBrZXktdmFsdWUgcGFpcnMgb2YgY3VzdG9tIHBhcmFtZXRlcnMgcGFzc2VkIGluIHdoZW4gdGhlIHNjcmlwdCBjb250YWlucyBjdXN0b20gcGFyYW1ldGVycy5cbiAgICAgKiBOdW1iZXIgb2YgY3VzdG9tIHBhcmFtZXRlcnM6IDAgdG8gMTAuXG4gICAgICogVGhlIGtleSBjYW5ub3QgYmUgYW4gZW1wdHkgc3RyaW5nLiBJdCBjYW4gYmUgdXAgdG8gNjQgY2hhcmFjdGVycyBpbiBsZW5ndGguXG4gICAgICogVGhlIHZhbHVlIGNhbiBiZSBhbiBlbXB0eSBzdHJpbmcuXG4gICAgICogQWZ0ZXIgdGhlIGN1c3RvbSBwYXJhbWV0ZXJzIGFuZCB0aGUgb3JpZ2luYWwgc2NyaXB0IGNvbnRlbnQgYXJlIEJhc2U2NCBlbmNvZGVkLCB0aGUgdG90YWwgc2l6ZSBjYW5ub3QgZXhjZWVkIDE2IEtCLlxuICAgICAqIFRoZSBzZXQgb2YgY3VzdG9tIHBhcmFtZXRlciBuYW1lcyBtdXN0IGJlIGEgc3Vic2V0IG9mIHRoZSBwYXJhbWV0ZXIgc2V0IHRoYXQgaXMgZGVmaW5lZCB3aGVuIHlvdSBjcmVhdGVkIHRoZSBzY3JpcHQuIFlvdSBjYW4gdXNlIGFuIGVtcHR5IHN0cmluZyB0byByZXByZXNlbnQgdGhlIHBhcmFtZXRlcnMgdGhhdCBhcmUgbm90IHBhc3NlZCBpbi5cbiAgICAgKiBEZWZhdWx0IHZhbHVlOiBudWxsLCBpbmRpY2F0aW5nIHRoYXQgdGhpcyBwYXJhbWV0ZXIgaXMgY2FuY2VsZWQgYW5kIGN1c3RvbWVyIHBhcmFtZXRlcnMgYXJlIGRpc2FibGVkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiB7IFtrZXk6IHN0cmluZ106IChhbnkgfCByb3MuSVJlc29sdmFibGUpIH0gfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBzeW5jOiBXaGV0aGVyIHRvIGludm9rZSBzeW5jaHJvbm91c2x5LlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHN5bmM/OiBib29sZWFuIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdGltZWQ6IFdoZXRoZXIgaXQgaXMgdGltZWQgZXhlY3V0aW9uLiBEZWZhdWx0IGlzIEZhbHNlLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHRpbWVkPzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcbn1cblxuLyoqXG4gKiBBIFJPUyByZXNvdXJjZSB0eXBlOiAgYEFMSVlVTjo6RUNTOjpJbnZvY2F0aW9uYFxuICovXG5leHBvcnQgY2xhc3MgSW52b2NhdGlvbiBleHRlbmRzIHJvcy5SZXNvdXJjZSB7XG5cbiAgICAvKipcbiAgICAgKiBBIGZhY3RvcnkgbWV0aG9kIHRoYXQgY3JlYXRlcyBhIG5ldyBpbnN0YW5jZSBvZiB0aGlzIGNsYXNzIGZyb20gYW4gb2JqZWN0XG4gICAgICogY29udGFpbmluZyB0aGUgcHJvcGVydGllcyBvZiB0aGlzIFJPUyByZXNvdXJjZSwgd2hpY2ggd2lsbCBiZSBhc3NpZ25lZCB0byBST1MgcmVzb3VyY2UuXG4gICAgICovXG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSW52b2tlSWQ6IFRoZSBpZCBvZiBjb21tYW5kIGV4ZWN1dGlvbi5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ckludm9rZUlkOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSW52b2tlSW5zdGFuY2VzOiBUaGUgSW52b2tlSW5zdGFuY2VzIG9mIGNvbW1hbmQuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnZva2VJbnN0YW5jZXM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIEF0dHJpYnV0ZSBJbnZva2VSZXN1bHRzOiBUaGUgcmVzdWx0cyBvZiBpbnZva2UgY29tbWFuZC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgYXR0ckludm9rZVJlc3VsdHM6IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZSBhIG5ldyBgQUxJWVVOOjpFQ1M6Okludm9jYXRpb25gLlxuICAgICAqXG4gICAgICogUGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICAgKiBQYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICAgKiBQYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihzY29wZTogcm9zLkNvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEludm9jYXRpb25Qcm9wcywgZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQ6Ym9vbGVhbiA9IHRydWUpIHtcbiAgICAgICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgICAgICBjb25zdCByb3NJbnZvY2F0aW9uID0gbmV3IFJvc0ludm9jYXRpb24odGhpcywgaWQsICB7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzOiBwcm9wcy5wYXJhbWV0ZXJzLFxuICAgICAgICAgICAgdGltZWQ6IHByb3BzLnRpbWVkLFxuICAgICAgICAgICAgZnJlcXVlbmN5OiBwcm9wcy5mcmVxdWVuY3ksXG4gICAgICAgICAgICBjb21tYW5kTmFtZTogcHJvcHMuY29tbWFuZE5hbWUsXG4gICAgICAgICAgICBjb21tYW5kSWQ6IHByb3BzLmNvbW1hbmRJZCxcbiAgICAgICAgICAgIHN5bmM6IHByb3BzLnN5bmMgPT09IHVuZGVmaW5lZCB8fCBwcm9wcy5zeW5jID09PSBudWxsID8gZmFsc2UgOiBwcm9wcy5zeW5jLFxuICAgICAgICAgICAgaW5zdGFuY2VJZHM6IHByb3BzLmluc3RhbmNlSWRzLFxuICAgICAgICB9LCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludCAmJiB0aGlzLnN0YWNrLmVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50KTtcbiAgICAgICAgdGhpcy5yZXNvdXJjZSA9IHJvc0ludm9jYXRpb247XG4gICAgICAgIHRoaXMuYXR0ckludm9rZUlkID0gcm9zSW52b2NhdGlvbi5hdHRySW52b2tlSWQ7XG4gICAgICAgIHRoaXMuYXR0ckludm9rZUluc3RhbmNlcyA9IHJvc0ludm9jYXRpb24uYXR0ckludm9rZUluc3RhbmNlcztcbiAgICAgICAgdGhpcy5hdHRySW52b2tlUmVzdWx0cyA9IHJvc0ludm9jYXRpb24uYXR0ckludm9rZVJlc3VsdHM7XG4gICAgfVxufVxuIl19
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2NhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImludm9jYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsOENBQThDO0FBQzlDLG1EQUFnRDtBQUV0QixtR0FGakIsNkJBQWEsT0FFc0I7QUE2RzVDOzs7O0dBSUc7QUFDSCxNQUFhLFVBQVcsU0FBUSxHQUFHLENBQUMsUUFBUTtJQXFCeEM7Ozs7T0FJRztJQUNILFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBc0IsRUFBRSxtQ0FBMkMsSUFBSTtRQUNqSCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ2IsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLGdDQUFnQyxHQUFHLGdDQUFnQyxDQUFDO1FBRXpFLE1BQU0sYUFBYSxHQUFHLElBQUksNkJBQWEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFHO1lBQy9DLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtZQUM1QixlQUFlLEVBQUUsS0FBSyxDQUFDLGVBQWU7WUFDdEMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxtQkFBbUI7WUFDOUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO1lBQzVCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWE7WUFDbEMsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSTtZQUMxRSxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1NBQ25CLEVBQUUsZ0NBQWdDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1FBQ3BGLElBQUksQ0FBQyxRQUFRLEdBQUcsYUFBYSxDQUFDO1FBQzlCLElBQUksQ0FBQyxZQUFZLEdBQUcsYUFBYSxDQUFDLFlBQVksQ0FBQztRQUMvQyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsYUFBYSxDQUFDLG1CQUFtQixDQUFDO1FBQzdELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxhQUFhLENBQUMsaUJBQWlCLENBQUM7SUFDN0QsQ0FBQztDQUNKO0FBdERELGdDQXNEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHJvcyBmcm9tICdAYWxpY2xvdWQvcm9zLWNkay1jb3JlJztcbmltcG9ydCB7IFJvc0ludm9jYXRpb24gfSBmcm9tICcuL2Vjcy5nZW5lcmF0ZWQnO1xuLy8gR2VuZXJhdGVkIGZyb20gdGhlIEFsaUNsb3VkIFJPUyBSZXNvdXJjZSBTcGVjaWZpY2F0aW9uXG5leHBvcnQgeyBSb3NJbnZvY2F0aW9uIGFzIEludm9jYXRpb25Qcm9wZXJ0eSB9O1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGRlZmluaW5nIGEgYEludm9jYXRpb25gLlxuICogU2VlIGh0dHBzOi8vd3d3LmFsaWJhYmFjbG91ZC5jb20vaGVscC9yb3MvZGV2ZWxvcGVyLXJlZmVyZW5jZS9hbGl5dW4tZWNzLWludm9jYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnZvY2F0aW9uUHJvcHMge1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgaW5zdGFuY2VJZHM6IFRoZSBpbnN0YW5jZSBpZCBsaXN0LiBJbnN0YW5jZXMgc3RhdHVzIG11c3QgYmUgcnVubmluZy5cbiAgICAgKi9cbiAgICByZWFkb25seSBpbnN0YW5jZUlkczogQXJyYXk8YW55IHwgcm9zLklSZXNvbHZhYmxlPiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGNvbW1hbmRJZDogVGhlIGlkIG9mIGNvbW1hbmQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgY29tbWFuZElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgY29tbWFuZE5hbWU6IFRoZSBuYW1lIG9mIGNvbW1hbmQuIE9ubHkgc3lzdGVtIGNvbW1hbmRzIHdob3NlIHByb3ZpZGUgaXMgQWxpYmFiYUNsb3VkIGFyZSBzdXBwb3J0ZWRcbiAgICAgKi9cbiAgICByZWFkb25seSBjb21tYW5kTmFtZT86IHN0cmluZyB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IGNvbnRhaW5lcklkOiBUaGUgSUQgb2YgdGhlIGNvbnRhaW5lci4gT25seSA2NC1iaXQgaGV4YWRlY2ltYWwgc3RyaW5ncyBhcmUgc3VwcG9ydGVkLiBZb3UgY2FuIHVzZSBjb250YWluZXIgSURzIHRoYXQgYXJlIHByZWZpeGVkIHdpdGggZG9ja2VyOlxcL1xcLywgY29udGFpbmVyZDpcXC9cXC8sIG9yIGNyaS1vOlxcL1xcLyB0byBzcGVjaWZ5IGNvbnRhaW5lciBydW50aW1lcy5cbiAgICAgKiBUYWtlIG5vdGUgb2YgdGhlIGZvbGxvd2luZyBpdGVtczpcbiAgICAgKiAtIElmIHlvdSBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLCBDbG91ZCBBc3Npc3RhbnQgcnVucyBzY3JpcHRzIGluIHRoZSBzcGVjaWZpZWQgY29udGFpbmVyIG9mIHRoZSBpbnN0YW5jZS5cbiAgICAgKiAtIElmIHlvdSBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLCBtYWtlIHN1cmUgdGhhdCB0aGUgdmVyc2lvbiBvZiBDbG91ZCBBc3Npc3RhbnQgQWdlbnQgaW5zdGFsbGVkIG9uIExpbnV4IGluc3RhbmNlcyBpcyAyLjIuMy4zNDQgb3IgbGF0ZXIuLSBJZiB5b3Ugc3BlY2lmeSB0aGlzIHBhcmFtZXRlciwgVXNlcm5hbWUgdGhhdCBpcyBzcGVjaWZpZWQgaW4gYSByZXF1ZXN0IHRvIGNhbGwgdGhpcyBvcGVyYXRpb24gYW5kIFdvcmtpbmdEaXIgdGhhdCBpcyBzcGVjaWZpZWQgaW4gYSByZXF1ZXN0IHRvIGNhbGwgdGhlIENyZWF0ZUNvbW1hbmQgb3BlcmF0aW9uIGRvIG5vdCB0YWtlIGVmZmVjdC4gWW91IGNhbiBydW4gdGhlIGNvbW1hbmQgb25seSBpbiB0aGUgZGVmYXVsdCB3b3JraW5nIGRpcmVjdG9yeSBvZiB0aGUgY29udGFpbmVyIGJ5IHVzaW5nIHRoZSBkZWZhdWx0IHVzZXIgb2YgdGhlIGNvbnRhaW5lci4gXG4gICAgICogLSBJZiB5b3Ugc3BlY2lmeSB0aGlzIHBhcmFtZXRlciwgb25seSBzaGVsbCBzY3JpcHRzIGNhbiBiZSBydW4gaW4gTGludXggY29udGFpbmVycy4gWW91IGNhbm5vdCBhZGQgYSBjb21tYW5kIGluIHRoZSBmb3JtYXQgc2ltaWxhciB0byAjIVxcL3VzclxcL2JpblxcL3B5dGhvbiBhdCB0aGUgYmVnaW5uaW5nIG9mIGEgc2NyaXB0IHRvIHNwZWNpZnkgYSBzY3JpcHQgaW50ZXJwcmV0ZXIuXG4gICAgICovXG4gICAgcmVhZG9ubHkgY29udGFpbmVySWQ/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBjb250YWluZXJOYW1lOiBUaGUgbmFtZSBvZiB0aGUgY29udGFpbmVyLlxuICAgICAqIFRha2Ugbm90ZSBvZiB0aGUgZm9sbG93aW5nIGl0ZW1zOlxuICAgICAqIC0gSWYgeW91IHNwZWNpZnkgdGhpcyBwYXJhbWV0ZXIsIENsb3VkIEFzc2lzdGFudCBydW5zIHNjcmlwdHMgaW4gdGhlIHNwZWNpZmllZCBjb250YWluZXIgb2YgdGhlIGluc3RhbmNlLlxuICAgICAqIC0gSWYgeW91IHNwZWNpZnkgdGhpcyBwYXJhbWV0ZXIsIG1ha2Ugc3VyZSB0aGF0IHRoZSB2ZXJzaW9uIG9mIENsb3VkIEFzc2lzdGFudCBBZ2VudCBpbnN0YWxsZWQgb24gTGludXggaW5zdGFuY2VzIGlzIDIuMi4zLjM0NCBvciBsYXRlci5cbiAgICAgKiAtIElmIHlvdSBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLCBVc2VybmFtZSB0aGF0IGlzIHNwZWNpZmllZCBpbiBhIHJlcXVlc3QgdG8gY2FsbCB0aGlzIG9wZXJhdGlvbiBhbmQgV29ya2luZ0RpciB0aGF0IGlzIHNwZWNpZmllZCBpbiBhIHJlcXVlc3QgdG8gY2FsbCB0aGUgQ3JlYXRlQ29tbWFuZCBvcGVyYXRpb24gZG8gbm90IHRha2UgZWZmZWN0LiBZb3UgY2FuIHJ1biB0aGUgY29tbWFuZCBvbmx5IGluIHRoZSBkZWZhdWx0IHdvcmtpbmcgZGlyZWN0b3J5IG9mIHRoZSBjb250YWluZXIgYnkgdXNpbmcgdGhlIGRlZmF1bHQgdXNlciBvZiB0aGUgY29udGFpbmVyLiBcbiAgICAgKiAtIElmIHlvdSBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLCBvbmx5IHNoZWxsIHNjcmlwdHMgY2FuIGJlIHJ1biBpbiBMaW51eCBjb250YWluZXJzLiBZb3UgY2Fubm90IGFkZCBhIGNvbW1hbmQgaW4gdGhlIGZvcm1hdCBzaW1pbGFyIHRvICMhXFwvdXNyXFwvYmluXFwvcHl0aG9uIGF0IHRoZSBiZWdpbm5pbmcgb2YgYSBzY3JpcHQgdG8gc3BlY2lmeSBhIHNjcmlwdCBpbnRlcnByZXRlci5cbiAgICAgKi9cbiAgICByZWFkb25seSBjb250YWluZXJOYW1lPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgZnJlcXVlbmN5OiBUaGUgZnJlcXVlbmN5IG9mIHRpbWluZyBleGVjdXRpb24gKHRoZSBzaG9ydGVzdCBmcmVxdWVuY3kgaXMgcGVyZm9ybWVkIGV2ZXJ5IDEgbWludXRlKS4gSXQgaXNzIG1hbmRhdG9yeSB3aGVuIFRpbWluZyBpcyBUcnVlLlRoZSB2YWx1ZSBydWxlIGZvbGxvd3MgdGhlIHJ1bGVzIG9mIHRoZSBjcm9uIGV4cHJlc3Npb24uXG4gICAgICovXG4gICAgcmVhZG9ubHkgZnJlcXVlbmN5Pzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgcGFyYW1ldGVyczogVGhlIGtleS12YWx1ZSBwYWlycyBvZiBjdXN0b20gcGFyYW1ldGVycyBwYXNzZWQgaW4gd2hlbiB0aGUgc2NyaXB0IGNvbnRhaW5zIGN1c3RvbSBwYXJhbWV0ZXJzLlxuICAgICAqIE51bWJlciBvZiBjdXN0b20gcGFyYW1ldGVyczogMCB0byAxMC5cbiAgICAgKiBUaGUga2V5IGNhbm5vdCBiZSBhbiBlbXB0eSBzdHJpbmcuIEl0IGNhbiBiZSB1cCB0byA2NCBjaGFyYWN0ZXJzIGluIGxlbmd0aC5cbiAgICAgKiBUaGUgdmFsdWUgY2FuIGJlIGFuIGVtcHR5IHN0cmluZy5cbiAgICAgKiBBZnRlciB0aGUgY3VzdG9tIHBhcmFtZXRlcnMgYW5kIHRoZSBvcmlnaW5hbCBzY3JpcHQgY29udGVudCBhcmUgQmFzZTY0IGVuY29kZWQsIHRoZSB0b3RhbCBzaXplIGNhbm5vdCBleGNlZWQgMTYgS0IuXG4gICAgICogVGhlIHNldCBvZiBjdXN0b20gcGFyYW1ldGVyIG5hbWVzIG11c3QgYmUgYSBzdWJzZXQgb2YgdGhlIHBhcmFtZXRlciBzZXQgdGhhdCBpcyBkZWZpbmVkIHdoZW4geW91IGNyZWF0ZWQgdGhlIHNjcmlwdC4gWW91IGNhbiB1c2UgYW4gZW1wdHkgc3RyaW5nIHRvIHJlcHJlc2VudCB0aGUgcGFyYW1ldGVycyB0aGF0IGFyZSBub3QgcGFzc2VkIGluLlxuICAgICAqIERlZmF1bHQgdmFsdWU6IG51bGwsIGluZGljYXRpbmcgdGhhdCB0aGlzIHBhcmFtZXRlciBpcyBjYW5jZWxlZCBhbmQgY3VzdG9tZXIgcGFyYW1ldGVycyBhcmUgZGlzYWJsZWQuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcGFyYW1ldGVycz86IHsgW2tleTogc3RyaW5nXTogKGFueSB8IHJvcy5JUmVzb2x2YWJsZSkgfSB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHJlcGVhdE1vZGU6IFNwZWNpZmllcyBob3cgdG8gcnVuIHRoZSBjb21tYW5kLiBWYWxpZCB2YWx1ZXM6XG4gICAgICogLSAqKk9uY2UqKjogaW1tZWRpYXRlbHkgcnVucyB0aGUgY29tbWFuZC5cbiAgICAgKiAtICoqUGVyaW9kKio6IHJ1bnMgdGhlIGNvbW1hbmQgb24gYSBzY2hlZHVsZS4gSWYgeW91IHNldCB0aGlzIHBhcmFtZXRlciB0byBQZXJpb2QsIHlvdSBtdXN0IHNwZWNpZnkgKipGcmVxdWVuY3kqKi5cbiAgICAgKiAtICoqTmV4dFJlYm9vdE9ubHkqKjogcnVucyB0aGUgY29tbWFuZCB0aGUgbmV4dCB0aW1lIHRoZSBpbnN0YW5jZSBpcyBzdGFydGVkLlxuICAgICAqIC0gKipFdmVyeVJlYm9vdCo6IHJ1bnMgdGhlIGNvbW1hbmQgZXZlcnkgdGltZSB0aGUgaW5zdGFuY2UgaXMgc3RhcnRlZC5cbiAgICAgKiBEZWZhdWx0IHZhbHVlOlxuICAgICAqIC0gSWYgeW91IGRvIG5vdCBzcGVjaWZ5IEZyZXF1ZW5jeSwgdGhlIGRlZmF1bHQgdmFsdWUgaXMgT25jZS5cbiAgICAgKiAtIElmIHlvdSBzcGVjaWZ5ICoqRnJlcXVlbmN5KiosICoqUGVyaW9kKiogaXMgdXNlZCBhcyB0aGUgdmFsdWUgb2YgUmVwZWF0TW9kZSByZWdhcmRsZXNzIG9mIHdoZXRoZXIgUmVwZWF0TW9kZSBpcyBzZXQgdG8gUGVyaW9kLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHJlcGVhdE1vZGU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSByZXNvdXJjZUdyb3VwSWQ6IFRoZSBJRCBvZiB0aGUgcmVzb3VyY2UgZ3JvdXAgdG8gd2hpY2ggdG8gYXNzaWduIHRoZSBjb21tYW5kIGV4ZWN1dGlvbnMuIFRoZSBpbnN0YW5jZXMgc3BlY2lmaWVkIGJ5IEluc3RhbmNlSWRzIG11c3QgYmVsb25nIHRvIHRoZSBzcGVjaWZpZWQgcmVzb3VyY2UgZ3JvdXAuXG4gICAgICovXG4gICAgcmVhZG9ubHkgcmVzb3VyY2VHcm91cElkPzogc3RyaW5nIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgc3luYzogV2hldGhlciB0byBpbnZva2Ugc3luY2hyb25vdXNseS5cbiAgICAgKi9cbiAgICByZWFkb25seSBzeW5jPzogYm9vbGVhbiB8IHJvcy5JUmVzb2x2YWJsZTtcblxuICAgIC8qKlxuICAgICAqIFByb3BlcnR5IHRhZ3M6IFRhZ3MgdG8gYXR0YWNoIHRvIGludm9jYXRpb24uIE1heCBzdXBwb3J0IDIwIHRhZ3MgdG8gYWRkIGR1cmluZyBjcmVhdGUgaW52b2NhdGlvbi4gRWFjaCB0YWcgd2l0aCB0d28gcHJvcGVydGllcyBLZXkgYW5kIFZhbHVlLCBhbmQgS2V5IGlzIHJlcXVpcmVkLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHRhZ3M/OiBSb3NJbnZvY2F0aW9uLlRhZ3NQcm9wZXJ0eVtdO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdGltZW91dDogVGhlIHRpbWVvdXQgcGVyaW9kIGZvciB0aGUgY29tbWFuZCBleGVjdXRpb24uIFVuaXQ6IHNlY29uZHMuXG4gICAgICogLSBUaGUgdGltZW91dCBwZXJpb2QgY2Fubm90IGJlIGxlc3MgdGhhbiAxMCBzZWNvbmRzLlxuICAgICAqIC0gQSB0aW1lb3V0IGVycm9yIG9jY3VycyBpZiB0aGUgY29tbWFuZCBjYW5ub3QgYmUgcnVuIGJlY2F1c2UgdGhlIHByb2Nlc3Mgc2xvd3MgZG93biBvciBiZWNhdXNlIGEgc3BlY2lmaWMgbW9kdWxlIG9yIENsb3VkIEFzc2lzdGFudCBBZ2VudCBkb2VzIG5vdCBleGlzdC4gV2hlbiB0aGUgc3BlY2lmaWVkIHRpbWVvdXQgcGVyaW9kIGVuZHMsIHRoZSBjb21tYW5kIHByb2Nlc3MgaXMgZm9yY2VmdWxseSB0ZXJtaW5hdGVkLlxuICAgICAqIC0gSWYgeW91IGRvIG5vdCBzcGVjaWZ5IHRoaXMgcGFyYW1ldGVyLCB0aGUgdGltZW91dCBwZXJpb2QgdGhhdCBpcyBzcGVjaWZpZWQgd2hlbiB0aGUgY29tbWFuZCBpcyBjcmVhdGVkIGlzIHVzZWQuXG4gICAgICogLSBUaGlzIHRpbWVvdXQgcGVyaW9kIGlzIGFwcGxpY2FibGUgb25seSB0byB0aGlzIGV4ZWN1dGlvbi4gVGhlIHRpbWVvdXQgcGVyaW9kIG9mIHRoZSBjb21tYW5kIGlzIG5vdCBtb2RpZmllZC5cbiAgICAgKi9cbiAgICByZWFkb25seSB0aW1lb3V0PzogbnVtYmVyIHwgcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogUHJvcGVydHkgdXNlcm5hbWU6IFRoZSB1c2VybmFtZSB0byB1c2UgdG8gcnVuIHRoZSBjb21tYW5kIG9uIGluc3RhbmNlcy4gVGhlIHVzZXJuYW1lIGNhbiBiZSB1cCB0byAyNTUgY2hhcmFjdGVycyBpbiBsZW5ndGguXG4gICAgICogLSBGb3IgTGludXggaW5zdGFuY2VzLCB0aGUgcm9vdCB1c2VybmFtZSBpcyB1c2VkIGJ5IGRlZmF1bHQuXG4gICAgICogLSBGb3IgV2luZG93cyBpbnN0YW5jZXMsIHRoZSBTeXN0ZW0gdXNlcm5hbWUgaXMgdXNlZCBieSBkZWZhdWx0LlxuICAgICAqIFlvdSBjYW4gYWxzbyBzcGVjaWZ5IG90aGVyIHVzZXJuYW1lcyB0aGF0IGFscmVhZHkgZXhpc3QgaW4gdGhlIGluc3RhbmNlcyB0byBydW4gdGhlIGNvbW1hbmQuIEZvciBzZWN1cml0eSBwdXJwb3Nlcywgd2UgcmVjb21tZW5kIHRoYXQgeW91IHJ1biBDbG91ZCBBc3Npc3RhbnQgY29tbWFuZHMgYXMgYSByZWd1bGFyIHVzZXIuXG4gICAgICovXG4gICAgcmVhZG9ubHkgdXNlcm5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSB3aW5kb3dzUGFzc3dvcmROYW1lOiBUaGUgbmFtZSBvZiB0aGUgcGFzc3dvcmQgdG8gdXNlIHRvIHJ1biB0aGUgY29tbWFuZCBvbiBXaW5kb3dzIGluc3RhbmNlcy4gVGhlIG5hbWUgY2FuIGJlIHVwIHRvIDI1NSBjaGFyYWN0ZXJzIGluIGxlbmd0aC5cbiAgICAgKiBJZiB5b3UgZG8gbm90IHdhbnQgdG8gdXNlIHRoZSBkZWZhdWx0IFN5c3RlbSB1c2VyIHRvIHJ1biB0aGUgY29tbWFuZCBvbiBXaW5kb3dzIGluc3RhbmNlcywgc3BlY2lmeSBib3RoICoqV2luZG93c1Bhc3N3b3JkTmFtZSoqIGFuZCAqKlVzZXJuYW1lKiouIFRvIG1pdGlnYXRlIHRoZSByaXNrIG9mIHBhc3N3b3JkIGxlYWtzLCB0aGUgcGFzc3dvcmQgaXMgc3RvcmVkIGluIHBsYWludGV4dCBpbiBPcGVyYXRpb24gT3JjaGVzdHJhdGlvbiBTZXJ2aWNlIChPT1MpIFBhcmFtZXRlciBTdG9yZSwgYW5kIG9ubHkgdGhlIG5hbWUgb2YgdGhlIHBhc3N3b3JkIGlzIHBhc3NlZCBpbiBieSB1c2luZyBXaW5kb3dzUGFzc3dvcmROYW1lLlxuICAgICAqL1xuICAgIHJlYWRvbmx5IHdpbmRvd3NQYXNzd29yZE5hbWU/OiBzdHJpbmcgfCByb3MuSVJlc29sdmFibGU7XG59XG5cbi8qKlxuICogVGhpcyBjbGFzcyBlbmNhcHN1bGF0ZXMgYW5kIGV4dGVuZHMgdGhlIFJPUyByZXNvdXJjZSB0eXBlIGBBTElZVU46OkVDUzo6SW52b2NhdGlvbmAsIHdoaWNoIGlzIHVzZWQgdG8gcnVuIGEgQ2xvdWQgQXNzaXN0YW50IGNvbW1hbmQgb24gRWxhc3RpYyBDb21wdXRlIFNlcnZpY2UgKEVDUykgaW5zdGFuY2VzLlxuICogQE5vdGUgVGhpcyBjbGFzcyBtYXkgaGF2ZSBzb21lIG5ldyBmdW5jdGlvbnMgdG8gZmFjaWxpdGF0ZSBkZXZlbG9wbWVudCwgc28gaXQgaXMgcmVjb21tZW5kZWQgdG8gdXNlIHRoaXMgY2xhc3MgaW5zdGVhZCBvZiBgUm9zSW52b2NhdGlvbmBmb3IgYSBtb3JlIGNvbnZlbmllbnQgZGV2ZWxvcG1lbnQgZXhwZXJpZW5jZS5cbiAqIFNlZSBodHRwczovL3d3dy5hbGliYWJhY2xvdWQuY29tL2hlbHAvcm9zL2RldmVsb3Blci1yZWZlcmVuY2UvYWxpeXVuLWVjcy1pbnZvY2F0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZvY2F0aW9uIGV4dGVuZHMgcm9zLlJlc291cmNlIHtcbiAgICBwcm90ZWN0ZWQgc2NvcGU6IHJvcy5Db25zdHJ1Y3Q7XG4gICAgcHJvdGVjdGVkIGlkOiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIHByb3BzOiBJbnZvY2F0aW9uUHJvcHM7XG4gICAgcHJvdGVjdGVkIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIEludm9rZUlkOiBUaGUgaWQgb2YgY29tbWFuZCBleGVjdXRpb24uXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnZva2VJZDogcm9zLklSZXNvbHZhYmxlO1xuXG4gICAgLyoqXG4gICAgICogQXR0cmlidXRlIEludm9rZUluc3RhbmNlczogVGhlIEludm9rZUluc3RhbmNlcyBvZiBjb21tYW5kLlxuICAgICAqL1xuICAgIHB1YmxpYyByZWFkb25seSBhdHRySW52b2tlSW5zdGFuY2VzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBBdHRyaWJ1dGUgSW52b2tlUmVzdWx0czogVGhlIHJlc3VsdHMgb2YgaW52b2tlIGNvbW1hbmQuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnZva2VSZXN1bHRzOiByb3MuSVJlc29sdmFibGU7XG5cbiAgICAvKipcbiAgICAgKiBQYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgICAqIFBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgICAqIFBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHNjb3BlOiByb3MuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogSW52b2NhdGlvblByb3BzLCBlbmFibGVSZXNvdXJjZVByb3BlcnR5Q29uc3RyYWludDpib29sZWFuID0gdHJ1ZSkge1xuICAgICAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgICAgICB0aGlzLnNjb3BlID0gc2NvcGU7XG4gICAgICAgIHRoaXMuaWQgPSBpZDtcbiAgICAgICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgICAgICB0aGlzLmVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50ID0gZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQ7XG5cbiAgICAgICAgY29uc3Qgcm9zSW52b2NhdGlvbiA9IG5ldyBSb3NJbnZvY2F0aW9uKHRoaXMsIGlkLCAge1xuICAgICAgICAgICAgcGFyYW1ldGVyczogcHJvcHMucGFyYW1ldGVycyxcbiAgICAgICAgICAgIHJlc291cmNlR3JvdXBJZDogcHJvcHMucmVzb3VyY2VHcm91cElkLFxuICAgICAgICAgICAgdGltZW91dDogcHJvcHMudGltZW91dCxcbiAgICAgICAgICAgIHdpbmRvd3NQYXNzd29yZE5hbWU6IHByb3BzLndpbmRvd3NQYXNzd29yZE5hbWUsXG4gICAgICAgICAgICByZXBlYXRNb2RlOiBwcm9wcy5yZXBlYXRNb2RlLFxuICAgICAgICAgICAgdXNlcm5hbWU6IHByb3BzLnVzZXJuYW1lLFxuICAgICAgICAgICAgY29udGFpbmVyTmFtZTogcHJvcHMuY29udGFpbmVyTmFtZSxcbiAgICAgICAgICAgIGNvbnRhaW5lcklkOiBwcm9wcy5jb250YWluZXJJZCxcbiAgICAgICAgICAgIGZyZXF1ZW5jeTogcHJvcHMuZnJlcXVlbmN5LFxuICAgICAgICAgICAgY29tbWFuZE5hbWU6IHByb3BzLmNvbW1hbmROYW1lLFxuICAgICAgICAgICAgY29tbWFuZElkOiBwcm9wcy5jb21tYW5kSWQsXG4gICAgICAgICAgICBzeW5jOiBwcm9wcy5zeW5jID09PSB1bmRlZmluZWQgfHwgcHJvcHMuc3luYyA9PT0gbnVsbCA/IGZhbHNlIDogcHJvcHMuc3luYyxcbiAgICAgICAgICAgIGluc3RhbmNlSWRzOiBwcm9wcy5pbnN0YW5jZUlkcyxcbiAgICAgICAgICAgIHRhZ3M6IHByb3BzLnRhZ3MsXG4gICAgICAgIH0sIGVuYWJsZVJlc291cmNlUHJvcGVydHlDb25zdHJhaW50ICYmIHRoaXMuc3RhY2suZW5hYmxlUmVzb3VyY2VQcm9wZXJ0eUNvbnN0cmFpbnQpO1xuICAgICAgICB0aGlzLnJlc291cmNlID0gcm9zSW52b2NhdGlvbjtcbiAgICAgICAgdGhpcy5hdHRySW52b2tlSWQgPSByb3NJbnZvY2F0aW9uLmF0dHJJbnZva2VJZDtcbiAgICAgICAgdGhpcy5hdHRySW52b2tlSW5zdGFuY2VzID0gcm9zSW52b2NhdGlvbi5hdHRySW52b2tlSW5zdGFuY2VzO1xuICAgICAgICB0aGlzLmF0dHJJbnZva2VSZXN1bHRzID0gcm9zSW52b2NhdGlvbi5hdHRySW52b2tlUmVzdWx0cztcbiAgICB9XG59XG4iXX0=
|