cdk8s-plus-31 2.0.5 → 2.0.7
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/.jsii +34 -34
- package/docs/typescript.md +16 -16
- package/lib/api-resource.js +10 -10
- package/lib/base.js +5 -5
- package/lib/config-map.js +10 -10
- package/lib/container.js +34 -34
- package/lib/cron-job.js +3 -3
- package/lib/daemon-set.js +2 -2
- package/lib/deployment.js +10 -10
- package/lib/handler.js +7 -7
- package/lib/horizontal-pod-autoscaler.js +16 -16
- package/lib/imports/k8s.js +2601 -2598
- package/lib/index.js +8 -3
- package/lib/ingress.js +7 -7
- package/lib/job.js +2 -2
- package/lib/namespace.js +10 -10
- package/lib/network-policy.js +30 -30
- package/lib/pod.js +72 -72
- package/lib/probe.js +9 -9
- package/lib/pv.js +12 -12
- package/lib/pvc.js +10 -10
- package/lib/role-binding.js +19 -19
- package/lib/role.js +16 -16
- package/lib/secret.js +13 -13
- package/lib/service-account.js +11 -11
- package/lib/service.js +3 -3
- package/lib/stateful-set.js +7 -7
- package/lib/utils.js +4 -5
- package/lib/volume.js +12 -12
- package/lib/workload.js +5 -5
- package/package.json +9 -11
package/lib/role.js
CHANGED
|
@@ -36,6 +36,12 @@ class ImportedRole extends constructs_1.Construct {
|
|
|
36
36
|
* as a unit by a RoleBinding.
|
|
37
37
|
*/
|
|
38
38
|
class Role extends base.Resource {
|
|
39
|
+
/**
|
|
40
|
+
* Imports a role from the cluster as a reference.
|
|
41
|
+
*/
|
|
42
|
+
static fromRoleName(scope, id, name) {
|
|
43
|
+
return new ImportedRole(scope, id, name);
|
|
44
|
+
}
|
|
39
45
|
constructor(scope, id, props = {}) {
|
|
40
46
|
super(scope, id);
|
|
41
47
|
this.resourceType = 'roles';
|
|
@@ -48,12 +54,6 @@ class Role extends base.Resource {
|
|
|
48
54
|
this.allow(rule.verbs, ...rule.resources);
|
|
49
55
|
}
|
|
50
56
|
}
|
|
51
|
-
/**
|
|
52
|
-
* Imports a role from the cluster as a reference.
|
|
53
|
-
*/
|
|
54
|
-
static fromRoleName(scope, id, name) {
|
|
55
|
-
return new ImportedRole(scope, id, name);
|
|
56
|
-
}
|
|
57
57
|
/**
|
|
58
58
|
* Rules associaated with this Role.
|
|
59
59
|
* Returns a copy, use `allow` to add rules.
|
|
@@ -149,7 +149,7 @@ class Role extends base.Resource {
|
|
|
149
149
|
* @param subjects a list of subjects to bind to
|
|
150
150
|
*/
|
|
151
151
|
bind(...subjects) {
|
|
152
|
-
const subjectsAddress = utils_1.address(...subjects);
|
|
152
|
+
const subjectsAddress = (0, utils_1.address)(...subjects);
|
|
153
153
|
const binding = new rb.RoleBinding(this, `RoleBinding${subjectsAddress}`, {
|
|
154
154
|
metadata: {
|
|
155
155
|
namespace: this.metadata.namespace,
|
|
@@ -176,7 +176,7 @@ class Role extends base.Resource {
|
|
|
176
176
|
}
|
|
177
177
|
exports.Role = Role;
|
|
178
178
|
_a = JSII_RTTI_SYMBOL_1;
|
|
179
|
-
Role[_a] = { fqn: "cdk8s-plus-31.Role", version: "2.0.
|
|
179
|
+
Role[_a] = { fqn: "cdk8s-plus-31.Role", version: "2.0.7" };
|
|
180
180
|
class ImportedClusterRole extends constructs_1.Construct {
|
|
181
181
|
constructor(scope, id, name) {
|
|
182
182
|
super(scope, id);
|
|
@@ -204,6 +204,12 @@ class ImportedClusterRole extends constructs_1.Construct {
|
|
|
204
204
|
* referenced as a unit by a RoleBinding or ClusterRoleBinding.
|
|
205
205
|
*/
|
|
206
206
|
class ClusterRole extends base.Resource {
|
|
207
|
+
/**
|
|
208
|
+
* Imports a role from the cluster as a reference.
|
|
209
|
+
*/
|
|
210
|
+
static fromClusterRoleName(scope, id, name) {
|
|
211
|
+
return new ImportedClusterRole(scope, id, name);
|
|
212
|
+
}
|
|
207
213
|
constructor(scope, id, props = {}) {
|
|
208
214
|
super(scope, id);
|
|
209
215
|
this.resourceType = 'clusterroles';
|
|
@@ -221,12 +227,6 @@ class ClusterRole extends base.Resource {
|
|
|
221
227
|
this.aggregate(key, value);
|
|
222
228
|
}
|
|
223
229
|
}
|
|
224
|
-
/**
|
|
225
|
-
* Imports a role from the cluster as a reference.
|
|
226
|
-
*/
|
|
227
|
-
static fromClusterRoleName(scope, id, name) {
|
|
228
|
-
return new ImportedClusterRole(scope, id, name);
|
|
229
|
-
}
|
|
230
230
|
/**
|
|
231
231
|
* Rules associaated with this Role.
|
|
232
232
|
* Returns a copy, use `allow` to add rules.
|
|
@@ -397,5 +397,5 @@ class ClusterRole extends base.Resource {
|
|
|
397
397
|
}
|
|
398
398
|
exports.ClusterRole = ClusterRole;
|
|
399
399
|
_b = JSII_RTTI_SYMBOL_1;
|
|
400
|
-
ClusterRole[_b] = { fqn: "cdk8s-plus-31.ClusterRole", version: "2.0.
|
|
401
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaUNBQStDO0FBQy9DLDJDQUF1QztBQUV2QywrQkFBK0I7QUFDL0IscUNBQXFDO0FBQ3JDLHFDQUFxQztBQUNyQyxtQ0FBa0M7QUFzQ2xDLE1BQU0sWUFBYSxTQUFRLHNCQUFTO0lBTWxDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsSUFBWTtRQUNwRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSEgsaUJBQVksR0FBRyxPQUFPLENBQUM7UUFJckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTywyQkFBMkIsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUVGO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxJQUFLLFNBQVEsSUFBSSxDQUFDLFFBQVE7SUFrQnJDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsUUFBbUIsRUFBRTtRQUM3RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBTEgsaUJBQVksR0FBRyxPQUFPLENBQUM7UUFFdEIsV0FBTSxHQUEwQixFQUFFLENBQUM7UUFLbEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcs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QkFDbEMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUNuRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7cUJBQ2xCLENBQUMsQ0FBQztpQkFDSjtnQkFDRCxJQUFJLFdBQVcsRUFBRTtvQkFDZixLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUNuRTthQUNGO1NBRUY7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFTywwQkFBMEI7UUFDaEMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2pELE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBRUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUMxRSxDQUFDOztBQWpPSCxrQ0FrT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcGlPYmplY3QsIExhenksIE5hbWVzIH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQXBpUmVzb3VyY2UsIElBcGlFbmRwb2ludCB9IGZyb20gJy4vYXBpLXJlc291cmNlJztcbmltcG9ydCAqIGFzIGJhc2UgZnJvbSAnLi9iYXNlJztcbmltcG9ydCAqIGFzIGs4cyBmcm9tICcuL2ltcG9ydHMvazhzJztcbmltcG9ydCAqIGFzIHJiIGZyb20gJy4vcm9sZS1iaW5kaW5nJztcbmltcG9ydCB7IGFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBBIHJlZmVyZW5jZSB0byBhbnkgUm9sZSBvciBDbHVzdGVyUm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJUm9sZSBleHRlbmRzIGJhc2UuSVJlc291cmNlIHtcblxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGBSb2xlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSb2xlUHJvcHMgZXh0ZW5kcyBiYXNlLlJlc291cmNlUHJvcHMge1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgcnVsZXMgdGhlIHJvbGUgc2hvdWxkIGFsbG93LlxuICAgKlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgcnVsZXM/OiBSb2xlUG9saWN5UnVsZVtdO1xufVxuXG4vKipcbiAqIFBvbGljeSBydWxlIG9mIGEgYFJvbGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVBvbGljeVJ1bGUge1xuXG4gIC8qKlxuICAgKiBWZXJicyB0byBhbGxvdy4gKGUuZyBbJ2dldCcsICd3YXRjaCddKVxuICAgKi9cbiAgcmVhZG9ubHkgdmVyYnM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZXMgdGhpcyBydWxlIGFwcGxpZXMgdG8uXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZXM6IElBcGlSZXNvdXJjZVtdO1xufVxuXG5jbGFzcyBJbXBvcnRlZFJvbGUgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJUm9sZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmFtZTogc3RyaW5nO1xuXG4gIHB1YmxpYyByZWFkb25seSByZXNvdXJjZVR5cGUgPSAncm9sZXMnO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5fbmFtZSA9IG5hbWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBpVmVyc2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBrOHMuS3ViZVJvbGUuR1ZLLmFwaVZlcnNpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwaUdyb3VwKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdyYmFjLmF1dGhvcml6YXRpb24uazhzLmlvJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQga2luZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBrOHMuS3ViZVJvbGUuR1ZLLmtpbmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxufVxuXG4vKipcbiAqIFJvbGUgaXMgYSBuYW1lc3BhY2VkLCBsb2dpY2FsIGdyb3VwaW5nIG9mIFBvbGljeVJ1bGVzIHRoYXQgY2FuIGJlIHJlZmVyZW5jZWRcbiAqIGFzIGEgdW5pdCBieSBhIFJvbGVCaW5kaW5nLlxuICovXG5leHBvcnQgY2xhc3MgUm9sZSBleHRlbmRzIGJhc2UuUmVzb3VyY2UgaW1wbGVtZW50cyBJUm9sZSB7XG5cbiAgLyoqXG4gICAqIEltcG9ydHMgYSByb2xlIGZyb20gdGhlIGNsdXN0ZXIgYXMgYSByZWZlcmVuY2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Sb2xlTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBJUm9sZSB7XG4gICAgcmV0dXJuIG5ldyBJbXBvcnRlZFJvbGUoc2NvcGUsIGlkLCBuYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGJhc2UuUmVzb3VyY2UuYXBpT2JqZWN0XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBpT2JqZWN0OiBBcGlPYmplY3Q7XG5cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlVHlwZSA9ICdyb2xlcyc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcnVsZXM6IEFycmF5PFJvbGVQb2xpY3lSdWxlPiA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmFwaU9iamVjdCA9IG5ldyBrOHMuS3ViZVJvbGUodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbWV0YWRhdGE6IHByb3BzLm1ldGFkYXRhLFxuICAgICAgcnVsZXM6IExhenkuYW55KHsgcHJvZHVjZTogKCkgPT4gdGhpcy5zeW50aGVzaXplUnVsZXMoKSB9KSxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgcnVsZSBvZiBwcm9wcy5ydWxlcyA/PyBbXSkge1xuICAgICAgdGhpcy5hbGxvdyhydWxlLnZlcmJzLCAuLi5ydWxlLnJlc291cmNlcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bGVzIGFzc29jaWFhdGVkIHdpdGggdGhpcyBSb2xlLlxuICAgKiBSZXR1cm5zIGEgY29weSwgdXNlIGBhbGxvd2AgdG8gYWRkIHJ1bGVzLlxuICAgKi9cbiAgcHVibGljIGdldCBydWxlcygpOiBSb2xlUG9saWN5UnVsZVtdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX3J1bGVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgcGVybWlzc2lvbiB0byBwZXJmb3JtIGEgbGlzdCBvZiBIVFRQIHZlcmJzIG9uIGEgY29sbGVjdGlvbiBvZlxuICAgKiByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL2FjY2Vzcy1hdXRobi1hdXRoei9hdXRob3JpemF0aW9uLyNkZXRlcm1pbmUtdGhlLXJlcXVlc3QtdmVyYlxuICAgKi9cbiAgcHVibGljIGFsbG93KHZlcmJzOiBzdHJpbmdbXSwgLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuX3J1bGVzLnB1c2goeyB2ZXJicywgcmVzb3VyY2VzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImNyZWF0ZVwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dDcmVhdGUoLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydjcmVhdGUnXSwgLi4ucmVzb3VyY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJnZXRcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93R2V0KC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZ2V0J10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwibGlzdFwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dMaXN0KC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnbGlzdCddLCAuLi5yZXNvdXJjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcIndhdGNoXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIHJlc291cmNlcyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1dhdGNoKC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnd2F0Y2gnXSwgLi4ucmVzb3VyY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJ1cGRhdGVcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93VXBkYXRlKC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsndXBkYXRlJ10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwicGF0Y2hcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93UGF0Y2goLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydwYXRjaCddLCAuLi5yZXNvdXJjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImRlbGV0ZVwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dEZWxldGUoLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydkZWxldGUnXSwgLi4ucmVzb3VyY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJkZWxldGVjb2xsZWN0aW9uXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIHJlc291cmNlcyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd0RlbGV0ZUNvbGxlY3Rpb24oLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydkZWxldGVjb2xsZWN0aW9uJ10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZ2V0XCIsIFwibGlzdFwiLCBhbmQgXCJ3YXRjaFwiIHBlcm1pc3Npb25zIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93UmVhZCguLi5yZXNvdXJjZXM6IElBcGlSZXNvdXJjZVtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2dldCcsICdsaXN0JywgJ3dhdGNoJ10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZ2V0XCIsIFwibGlzdFwiLCBcIndhdGNoXCIsIFwiY3JlYXRlXCIsIFwidXBkYXRlXCIsIFwicGF0Y2hcIiwgXCJkZWxldGVcIiwgYW5kXG4gICAqIFwiZGVsZXRlY29sbGVjdGlvblwiIHBlcm1pc3Npb25zIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93UmVhZFdyaXRlKC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZ2V0JywgJ2xpc3QnLCAnd2F0Y2gnLCAnY3JlYXRlJywgJ3VwZGF0ZScsICdwYXRjaCcsICdkZWxldGUnLCAnZGVsZXRlY29sbGVjdGlvbiddLCAuLi5yZXNvdXJjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIFJvbGVCaW5kaW5nIHRoYXQgYmluZHMgdGhlIHBlcm1pc3Npb25zIGluIHRoaXMgUm9sZVxuICAgKiB0byBhIGxpc3Qgb2Ygc3ViamVjdHMsIHRoYXQgd2lsbCBvbmx5IGFwcGx5IHRoaXMgcm9sZSdzIG5hbWVzcGFjZS5cbiAgICogQHBhcmFtIHN1YmplY3RzIGEgbGlzdCBvZiBzdWJqZWN0cyB0byBiaW5kIHRvXG4gICAqL1xuICBwdWJsaWMgYmluZCguLi5zdWJqZWN0czogcmIuSVN1YmplY3RbXSk6IHJiLlJvbGVCaW5kaW5nIHtcbiAgICBjb25zdCBzdWJqZWN0c0FkZHJlc3MgPSBhZGRyZXNzKC4uLnN1YmplY3RzKTtcbiAgICBjb25zdCBiaW5kaW5nID0gbmV3IHJiLlJvbGVCaW5kaW5nKHRoaXMsIGBSb2xlQmluZGluZyR7c3ViamVjdHNBZGRyZXNzfWAsIHtcbiAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgIG5hbWVzcGFjZTogdGhpcy5tZXRhZGF0YS5uYW1lc3BhY2UsXG4gICAgICB9LFxuICAgICAgcm9sZTogdGhpcyxcbiAgICB9KTtcbiAgICBiaW5kaW5nLmFkZFN1YmplY3RzKC4uLnN1YmplY3RzKTtcbiAgICByZXR1cm4gYmluZGluZztcbiAgfVxuXG4gIHByaXZhdGUgc3ludGhlc2l6ZVJ1bGVzKCk6IGs4cy5Qb2xpY3lSdWxlW10ge1xuICAgIGNvbnN0IHJ1bGVzOiBrOHMuUG9saWN5UnVsZVtdID0gW107XG4gICAgZm9yIChjb25zdCBydWxlIG9mIHRoaXMuX3J1bGVzKSB7XG4gICAgICBmb3IgKGNvbnN0IHJlc291cmNlIG9mIHJ1bGUucmVzb3VyY2VzKSB7XG4gICAgICAgIHJ1bGVzLnB1c2goe1xuICAgICAgICAgIHZlcmJzOiBydWxlLnZlcmJzLFxuICAgICAgICAgIGFwaUdyb3VwczogW3Jlc291cmNlLmFwaUdyb3VwID09PSAnY29yZScgPyAnJyA6IHJlc291cmNlLmFwaUdyb3VwXSxcbiAgICAgICAgICByZXNvdXJjZU5hbWVzOiByZXNvdXJjZS5yZXNvdXJjZU5hbWUgPyBbcmVzb3VyY2UucmVzb3VyY2VOYW1lXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICByZXNvdXJjZXM6IHJlc291cmNlLnJlc291cmNlVHlwZSA/IFtyZXNvdXJjZS5yZXNvdXJjZVR5cGVdIDogdW5kZWZpbmVkLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJ1bGVzO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNsdXN0ZXItbGV2ZWwgcm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2x1c3RlclJvbGUgZXh0ZW5kcyBiYXNlLklSZXNvdXJjZSB7XG5cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBgQ2x1c3RlclJvbGVgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJSb2xlUHJvcHMgZXh0ZW5kcyBiYXNlLlJlc291cmNlUHJvcHMge1xuXG4gIC8qKlxuICAgICogQSBsaXN0IG9mIHJ1bGVzIHRoZSByb2xlIHNob3VsZCBhbGxvdy5cbiAgICAqXG4gICAgKiBAZGVmYXVsdCBbXVxuICAgICovXG4gIHJlYWRvbmx5IHJ1bGVzPzogQ2x1c3RlclJvbGVQb2xpY3lSdWxlW107XG5cbiAgLyoqXG4gICAgKiBTcGVjaWZ5IGxhYmVscyB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGxvY2F0ZSBDbHVzdGVyUm9sZXMsIHdob3NlIHJ1bGVzXG4gICAgKiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgZmlsbGVkIGludG8gdGhpcyBDbHVzdGVyUm9sZSdzIHJ1bGVzLlxuICAgICovXG4gIHJlYWRvbmx5IGFnZ3JlZ2F0aW9uTGFiZWxzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBQb2xpY3kgcnVsZSBvZiBhIGBDbHVzdGVyUm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyUm9sZVBvbGljeVJ1bGUge1xuXG4gIC8qKlxuICAgKiBWZXJicyB0byBhbGxvdy4gKGUuZyBbJ2dldCcsICd3YXRjaCddKVxuICAgKi9cbiAgcmVhZG9ubHkgdmVyYnM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBFbmRwb2ludHMgdGhpcyBydWxlIGFwcGxpZXMgdG8uIENhbiBiZSBlaXRoZXIgYXBpIHJlc291cmNlc1xuICAgKiBvciBub24gYXBpIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50czogSUFwaUVuZHBvaW50W107XG59XG5cbmNsYXNzIEltcG9ydGVkQ2x1c3RlclJvbGUgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJQ2x1c3RlclJvbGUge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25hbWU6IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlOiBzdHJpbmcgPSAnY2x1c3RlcnJvbGVzJztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMuX25hbWUgPSBuYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX25hbWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwaVZlcnNpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gazhzLkt1YmVDbHVzdGVyUm9sZS5HVksuYXBpVmVyc2lvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBpR3JvdXAoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3JiYWMuYXV0aG9yaXphdGlvbi5rOHMuaW8nO1xuICB9XG5cbiAgcHVibGljIGdldCBraW5kKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGs4cy5LdWJlQ2x1c3RlclJvbGUuR1ZLLmtpbmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxufVxuXG4vKipcbiAqIENsdXN0ZXJSb2xlIGlzIGEgY2x1c3RlciBsZXZlbCwgbG9naWNhbCBncm91cGluZyBvZiBQb2xpY3lSdWxlcyB0aGF0IGNhbiBiZVxuICogcmVmZXJlbmNlZCBhcyBhIHVuaXQgYnkgYSBSb2xlQmluZGluZyBvciBDbHVzdGVyUm9sZUJpbmRpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBDbHVzdGVyUm9sZSBleHRlbmRzIGJhc2UuUmVzb3VyY2UgaW1wbGVtZW50cyBJQ2x1c3RlclJvbGUsIElSb2xlIHtcblxuICAvKipcbiAgICogSW1wb3J0cyBhIHJvbGUgZnJvbSB0aGUgY2x1c3RlciBhcyBhIHJlZmVyZW5jZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUNsdXN0ZXJSb2xlTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBJQ2x1c3RlclJvbGUge1xuICAgIHJldHVybiBuZXcgSW1wb3J0ZWRDbHVzdGVyUm9sZShzY29wZSwgaWQsIG5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgYmFzZS5SZXNvdXJjZS5hcGlPYmplY3RcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBhcGlPYmplY3Q6IEFwaU9iamVjdDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ2NsdXN0ZXJyb2xlcyc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbGFiZWxTZWxlY3RvcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBwcml2YXRlIHJlYWRvbmx5IF9ydWxlczogQXJyYXk8Q2x1c3RlclJvbGVQb2xpY3lSdWxlPiA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDbHVzdGVyUm9sZVByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5hcGlPYmplY3QgPSBuZXcgazhzLkt1YmVDbHVzdGVyUm9sZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgICBydWxlczogTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnN5bnRoZXNpemVSdWxlcygpIH0pLFxuICAgICAgYWdncmVnYXRpb25SdWxlOiBMYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMuc3ludGhlc2l6ZUFnZ3JlZ2F0aW9uUnVsZXMoKSB9KSxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgcnVsZSBvZiBwcm9wcy5ydWxlcyA/PyBbXSkge1xuICAgICAgdGhpcy5hbGxvdyhydWxlLnZlcmJzLCAuLi5ydWxlLmVuZHBvaW50cyk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocHJvcHMuYWdncmVnYXRpb25MYWJlbHMgPz8ge30pKSB7XG4gICAgICB0aGlzLmFnZ3JlZ2F0ZShrZXksIHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUnVsZXMgYXNzb2NpYWF0ZWQgd2l0aCB0aGlzIFJvbGUuXG4gICAqIFJldHVybnMgYSBjb3B5LCB1c2UgYGFsbG93YCB0byBhZGQgcnVsZXMuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHJ1bGVzKCk6IENsdXN0ZXJSb2xlUG9saWN5UnVsZVtdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX3J1bGVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgcGVybWlzc2lvbiB0byBwZXJmb3JtIGEgbGlzdCBvZiBIVFRQIHZlcmJzIG9uIGEgY29sbGVjdGlvbiBvZlxuICAgKiByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSBlbmRwb2ludHMgVGhlIGVuZHBvaW50cyhzKSB0byBhcHBseSB0b1xuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS9hY2Nlc3MtYXV0aG4tYXV0aHovYXV0aG9yaXphdGlvbi8jZGV0ZXJtaW5lLXRoZS1yZXF1ZXN0LXZlcmJcbiAgICovXG4gIHB1YmxpYyBhbGxvdyh2ZXJiczogc3RyaW5nW10sIC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLl9ydWxlcy5wdXNoKHsgdmVyYnMsIGVuZHBvaW50cyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJjcmVhdGVcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gZW5kcG9pbnRzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93Q3JlYXRlKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnY3JlYXRlJ10sIC4uLmVuZHBvaW50cyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZ2V0XCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd0dldCguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2dldCddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImxpc3RcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gZW5kcG9pbnRzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93TGlzdCguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2xpc3QnXSwgLi4uZW5kcG9pbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJ3YXRjaFwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSBlbmRwb2ludHMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dXYXRjaCguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ3dhdGNoJ10sIC4uLmVuZHBvaW50cyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwidXBkYXRlXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1VwZGF0ZSguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ3VwZGF0ZSddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcInBhdGNoXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1BhdGNoKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsncGF0Y2gnXSwgLi4uZW5kcG9pbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJkZWxldGVcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gZW5kcG9pbnRzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93RGVsZXRlKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZGVsZXRlJ10sIC4uLmVuZHBvaW50cyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZGVsZXRlY29sbGVjdGlvblwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSBlbmRwb2ludHMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dEZWxldGVDb2xsZWN0aW9uKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZGVsZXRlY29sbGVjdGlvbiddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImdldFwiLCBcImxpc3RcIiwgYW5kIFwid2F0Y2hcIiBwZXJtaXNzaW9ucyBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1JlYWQoLi4uZW5kcG9pbnRzOiBJQXBpRW5kcG9pbnRbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydnZXQnLCAnbGlzdCcsICd3YXRjaCddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImdldFwiLCBcImxpc3RcIiwgXCJ3YXRjaFwiLCBcImNyZWF0ZVwiLCBcInVwZGF0ZVwiLCBcInBhdGNoXCIsIFwiZGVsZXRlXCIsIGFuZFxuICAgKiBcImRlbGV0ZWNvbGxlY3Rpb25cIiBwZXJtaXNzaW9ucyBmb3IgdGhlIHJlc291cmNlcy5cbiAgICpcbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1JlYWRXcml0ZSguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2dldCcsICdsaXN0JywgJ3dhdGNoJywgJ2NyZWF0ZScsICd1cGRhdGUnLCAncGF0Y2gnLCAnZGVsZXRlJywgJ2RlbGV0ZWNvbGxlY3Rpb24nXSwgLi4uZW5kcG9pbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZ2dyZWdhdGUgcnVsZXMgZnJvbSByb2xlcyBtYXRjaGluZyB0aGlzIGxhYmVsIHNlbGVjdG9yLlxuICAgKi9cbiAgcHVibGljIGFnZ3JlZ2F0ZShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2xhYmVsU2VsZWN0b3Jba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbWJpbmVzIHRoZSBydWxlcyBvZiB0aGUgYXJndW1lbnQgQ2x1c3RlclJvbGUgaW50byB0aGlzIENsdXN0ZXJSb2xlXG4gICAqIHVzaW5nIGFnZ3JlZ2F0aW9uIGxhYmVscy5cbiAgICogQHBhcmFtIHJvbFxuICAgKi9cbiAgcHVibGljIGNvbWJpbmUocm9sOiBDbHVzdGVyUm9sZSk6IHZvaWQge1xuICAgIGNvbnN0IGtleSA9IGBjZGs4cy5jbHVzdGVyLXJvbGUvYWdncmVnYXRlLXRvLSR7TmFtZXMudG9MYWJlbFZhbHVlKHRoaXMpfWA7XG4gICAgY29uc3QgdmFsdWUgPSAndHJ1ZSc7XG4gICAgcm9sLm1ldGFkYXRhLmFkZExhYmVsKGtleSwgdmFsdWUpO1xuICAgIHRoaXMuYWdncmVnYXRlKGtleSwgdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIFJvbGVCaW5kaW5nIHRoYXQgYmluZHMgdGhlIHBlcm1pc3Npb25zIGluIHRoaXMgQ2x1c3RlclJvbGVcbiAgICogdG8gYSBsaXN0IG9mIHN1YmplY3RzLCB0aGF0IHdpbGwgb25seSBhcHBseSB0byB0aGUgZ2l2ZW4gbmFtZXNwYWNlLlxuICAgKiBAcGFyYW0gbmFtZXNwYWNlIHRoZSBuYW1lc3BhY2UgdG8gbGltaXQgcGVybWlzc2lvbnMgdG8uXG4gICAqIEBwYXJhbSBzdWJqZWN0cyBhIGxpc3Qgb2Ygc3ViamVjdHMgdG8gYmluZCB0b1xuICAgKi9cbiAgcHVibGljIGJpbmRJbk5hbWVzcGFjZShuYW1lc3BhY2U6IHN0cmluZywgLi4uc3ViamVjdHM6IHJiLklTdWJqZWN0W10pOiByYi5Sb2xlQmluZGluZyB7XG4gICAgY29uc3QgYmluZGluZyA9IG5ldyByYi5Sb2xlQmluZGluZyh0aGlzLCBgUm9sZUJpbmRpbmctJHtuYW1lc3BhY2V9YCwge1xuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgbmFtZXNwYWNlLFxuICAgICAgfSxcbiAgICAgIHJvbGU6IHRoaXMsXG4gICAgfSk7XG4gICAgYmluZGluZy5hZGRTdWJqZWN0cyguLi5zdWJqZWN0cyk7XG4gICAgcmV0dXJuIGJpbmRpbmc7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgQ2x1c3RlclJvbGVCaW5kaW5nIHRoYXQgYmluZHMgdGhlIHBlcm1pc3Npb25zIGluIHRoaXNcbiAgICogQ2x1c3RlclJvbGUgdG8gYSBsaXN0IG9mIHN1YmplY3RzLCB3aXRob3V0IG5hbWVzcGFjZSByZXN0cmljdGlvbnMuXG4gICAqIEBwYXJhbSBzdWJqZWN0cyBhIGxpc3Qgb2Ygc3ViamVjdHMgdG8gYmluZCB0b1xuICAgKi9cbiAgcHVibGljIGJpbmQoLi4uc3ViamVjdHM6IHJiLklTdWJqZWN0W10pOiByYi5DbHVzdGVyUm9sZUJpbmRpbmcge1xuICAgIGNvbnN0IGJpbmRpbmcgPSBuZXcgcmIuQ2x1c3RlclJvbGVCaW5kaW5nKHRoaXMsICdDbHVzdGVyUm9sZUJpbmRpbmcnLCB7XG4gICAgICByb2xlOiB0aGlzLFxuICAgIH0pO1xuICAgIGJpbmRpbmcuYWRkU3ViamVjdHMoLi4uc3ViamVjdHMpO1xuICAgIHJldHVybiBiaW5kaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW50aGVzaXplUnVsZXMoKTogazhzLlBvbGljeVJ1bGVbXSB7XG4gICAgY29uc3QgcnVsZXM6IGs4cy5Qb2xpY3lSdWxlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgdGhpcy5fcnVsZXMpIHtcbiAgICAgIGZvciAoY29uc3QgZW5kcG9pbnQgb2YgcnVsZS5lbmRwb2ludHMpIHtcbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBlbmRwb2ludC5hc0FwaVJlc291cmNlKCk7XG4gICAgICAgIGNvbnN0IG5vblJlc291cmNlID0gZW5kcG9pbnQuYXNOb25BcGlSZXNvdXJjZSgpO1xuXG4gICAgICAgIGlmIChyZXNvdXJjZSAmJiBub25SZXNvdXJjZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW5kcG9pbnQgbXVzdCBiZSBlaXRoZXIgcmVzb3VyY2Ugb3Igbm9uIHJlc291cmNlLiBub3QgYm90aC4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghcmVzb3VyY2UgJiYgIW5vblJlc291cmNlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFbmRwb2ludCBtdXN0IGJlIGVpdGhlciByZXNvdXJjZSBvciBub24gcmVzb3VyY2UuIG5vdCBuZWl0aGVyLicpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlc291cmNlKSB7XG4gICAgICAgICAgcnVsZXMucHVzaCh7XG4gICAgICAgICAgICBhcGlHcm91cHM6IFtyZXNvdXJjZS5hcGlHcm91cCA9PT0gJ2NvcmUnID8gJycgOiByZXNvdXJjZS5hcGlHcm91cF0sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFtyZXNvdXJjZS5yZXNvdXJjZVR5cGVdLFxuICAgICAgICAgICAgcmVzb3VyY2VOYW1lczogcmVzb3VyY2UucmVzb3VyY2VOYW1lID8gW3Jlc291cmNlLnJlc291cmNlTmFtZV0gOiBbXSxcbiAgICAgICAgICAgIHZlcmJzOiBydWxlLnZlcmJzLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChub25SZXNvdXJjZSkge1xuICAgICAgICAgIHJ1bGVzLnB1c2goeyB2ZXJiczogcnVsZS52ZXJicywgbm9uUmVzb3VyY2VVckxzOiBbbm9uUmVzb3VyY2VdIH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gICAgcmV0dXJuIHJ1bGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW50aGVzaXplQWdncmVnYXRpb25SdWxlcygpOiBrOHMuQWdncmVnYXRpb25SdWxlIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fbGFiZWxTZWxlY3RvcikubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB7IGNsdXN0ZXJSb2xlU2VsZWN0b3JzOiBbeyBtYXRjaExhYmVsczogdGhpcy5fbGFiZWxTZWxlY3RvciB9XSB9O1xuICB9XG59XG4iXX0=
|
|
400
|
+
ClusterRole[_b] = { fqn: "cdk8s-plus-31.ClusterRole", version: "2.0.7" };
|
|
401
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9yb2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaUNBQStDO0FBQy9DLDJDQUF1QztBQUV2QywrQkFBK0I7QUFDL0IscUNBQXFDO0FBQ3JDLHFDQUFxQztBQUNyQyxtQ0FBa0M7QUFzQ2xDLE1BQU0sWUFBYSxTQUFRLHNCQUFTO0lBTWxDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsSUFBWTtRQUNwRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSEgsaUJBQVksR0FBRyxPQUFPLENBQUM7UUFJckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTywyQkFBMkIsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUVGO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxJQUFLLFNBQVEsSUFBSSxDQUFDLFFBQVE7SUFFckM7O09BRUc7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLElBQVk7UUFDbkUsT0FBTyxJQUFJLFlBQVksQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFXRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQW1CLEVBQUU7UUFDN0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUxILGlCQUFZLEdBQUcsT0FBTyxDQUFDO1FBRXRCLFdBQU0sR0FBMEIsRUFBRSxDQUFDO1FBS2xELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDbEQsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLEtBQUssRUFBRSxZQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1NBQzNELENBQUMsQ0FBQztRQUVILEtBQUssTUFBTSxJQUFJLElBQUksS0FBSyxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFXLEtBQUs7UUFDZCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLEtBQUssQ0FBQyxLQUFlLEVBQUUsR0FBRyxTQUF5QjtRQUN4RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXLENBQUMsR0FBRyxTQUF5QjtRQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxDQUFDLEdBQUcsU0FBeUI7UUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFNBQVMsQ0FBQyxHQUFHLFNBQXlCO1FBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxVQUFVLENBQUMsR0FBRyxTQUF5QjtRQUM1QyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksV0FBVyxDQUFDLEdBQUcsU0FBeUI7UUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVUsQ0FBQyxHQUFHLFNBQXlCO1FBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXLENBQUMsR0FBRyxTQUF5QjtRQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0kscUJBQXFCLENBQUMsR0FBRyxTQUF5QjtRQUN2RCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsa0JBQWtCLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7O09BR0c7SUFDSSxTQUFTLENBQUMsR0FBRyxTQUF5QjtRQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLGNBQWMsQ0FBQyxHQUFHLFNBQXlCO1FBQ2hELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsa0JBQWtCLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ2hILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksSUFBSSxDQUFDLEdBQUcsUUFBdUI7UUFDcEMsTUFBTSxlQUFlLEdBQUcsSUFBQSxlQUFPLEVBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUM3QyxNQUFNLE9BQU8sR0FBRyxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLGNBQWMsZUFBZSxFQUFFLEVBQUU7WUFDeEUsUUFBUSxFQUFFO2dCQUNSLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVM7YUFDbkM7WUFDRCxJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUNqQyxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sZUFBZTtRQUNyQixNQUFNLEtBQUssR0FBcUIsRUFBRSxDQUFDO1FBQ25DLEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQy9CLEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN0QyxLQUFLLENBQUMsSUFBSSxDQUFDO29CQUNULEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztvQkFDakIsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztvQkFDbEUsYUFBYSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO29CQUMxRSxTQUFTLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7aUJBQ3ZFLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztBQWxLSCxvQkFtS0M7OztBQTZDRCxNQUFNLG1CQUFvQixTQUFRLHNCQUFTO0lBTXpDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsSUFBWTtRQUNwRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSEgsaUJBQVksR0FBVyxjQUFjLENBQUM7UUFJcEQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sR0FBRyxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTywyQkFBMkIsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxHQUFHLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUVGO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxXQUFZLFNBQVEsSUFBSSxDQUFDLFFBQVE7SUFFNUM7O09BRUc7SUFDSSxNQUFNLENBQUMsbUJBQW1CLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsSUFBWTtRQUMxRSxPQUFPLElBQUksbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBWUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUEwQixFQUFFO1FBQ3BFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFOSCxpQkFBWSxHQUFHLGNBQWMsQ0FBQztRQUU3QixtQkFBYyxHQUEyQixFQUFFLENBQUM7UUFDNUMsV0FBTSxHQUFpQyxFQUFFLENBQUM7UUFLekQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUN6RCxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDeEIsS0FBSyxFQUFFLFlBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDMUQsZUFBZSxFQUFFLFlBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFLEVBQUUsQ0FBQztTQUNoRixDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssQ0FBQyxLQUFLLElBQUksRUFBRSxFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVDLENBQUM7UUFFRCxLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUN6RSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQVcsS0FBSztRQUNkLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksS0FBSyxDQUFDLEtBQWUsRUFBRSxHQUFHLFNBQXlCO1FBQ3hELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVcsQ0FBQyxHQUFHLFNBQXlCO1FBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxRQUFRLENBQUMsR0FBRyxTQUF5QjtRQUMxQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksU0FBUyxDQUFDLEdBQUcsU0FBeUI7UUFDM0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVUsQ0FBQyxHQUFHLFNBQXlCO1FBQzVDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXLENBQUMsR0FBRyxTQUF5QjtRQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksVUFBVSxDQUFDLEdBQUcsU0FBeUI7UUFDNUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVcsQ0FBQyxHQUFHLFNBQXlCO1FBQzdDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxxQkFBcUIsQ0FBQyxHQUFHLFNBQXlCO1FBQ3ZELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFNBQVMsQ0FBQyxHQUFHLFNBQXlCO1FBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksY0FBYyxDQUFDLEdBQUcsU0FBeUI7UUFDaEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBQUM7SUFDaEgsQ0FBQztJQUVEOztPQUVHO0lBQ0ksU0FBUyxDQUFDLEdBQVcsRUFBRSxLQUFhO1FBQ3pDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksT0FBTyxDQUFDLEdBQWdCO1FBQzdCLE1BQU0sR0FBRyxHQUFHLG1DQUFtQyxhQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDMUUsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLEdBQUcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxlQUFlLENBQUMsU0FBaUIsRUFBRSxHQUFHLFFBQXVCO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLElBQUksRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsZUFBZSxTQUFTLEVBQUUsRUFBRTtZQUNuRSxRQUFRLEVBQUU7Z0JBQ1IsU0FBUzthQUNWO1lBQ0QsSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDakMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxJQUFJLENBQUMsR0FBRyxRQUF1QjtRQUNwQyxNQUFNLE9BQU8sR0FBRyxJQUFJLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7WUFDcEUsSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDakMsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVPLGVBQWU7UUFDckIsTUFBTSxLQUFLLEdBQXFCLEVBQUUsQ0FBQztRQUNuQyxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMvQixLQUFLLE1BQU0sUUFBUSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDdEMsTUFBTSxRQUFRLEdBQUcsUUFBUSxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUMxQyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztnQkFFaEQsSUFBSSxRQUFRLElBQUksV0FBVyxFQUFFLENBQUM7b0JBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkRBQTZELENBQUMsQ0FBQztnQkFDakYsQ0FBQztnQkFFRCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7b0JBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztnQkFDcEYsQ0FBQztnQkFFRCxJQUFJLFFBQVEsRUFBRSxDQUFDO29CQUNiLEtBQUssQ0FBQyxJQUFJLENBQUM7d0JBQ1QsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQzt3QkFDbEUsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQzt3QkFDbEMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO3dCQUNuRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7cUJBQ2xCLENBQUMsQ0FBQztnQkFDTCxDQUFDO2dCQUNELElBQUksV0FBVyxFQUFFLENBQUM7b0JBQ2hCLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxlQUFlLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3BFLENBQUM7WUFDSCxDQUFDO1FBRUgsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLDBCQUEwQjtRQUNoQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNsRCxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUMxRSxDQUFDOztBQWpPSCxrQ0FrT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcGlPYmplY3QsIExhenksIE5hbWVzIH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJQXBpUmVzb3VyY2UsIElBcGlFbmRwb2ludCB9IGZyb20gJy4vYXBpLXJlc291cmNlJztcbmltcG9ydCAqIGFzIGJhc2UgZnJvbSAnLi9iYXNlJztcbmltcG9ydCAqIGFzIGs4cyBmcm9tICcuL2ltcG9ydHMvazhzJztcbmltcG9ydCAqIGFzIHJiIGZyb20gJy4vcm9sZS1iaW5kaW5nJztcbmltcG9ydCB7IGFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcblxuLyoqXG4gKiBBIHJlZmVyZW5jZSB0byBhbnkgUm9sZSBvciBDbHVzdGVyUm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJUm9sZSBleHRlbmRzIGJhc2UuSVJlc291cmNlIHtcblxufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGBSb2xlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSb2xlUHJvcHMgZXh0ZW5kcyBiYXNlLlJlc291cmNlUHJvcHMge1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgcnVsZXMgdGhlIHJvbGUgc2hvdWxkIGFsbG93LlxuICAgKlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgcnVsZXM/OiBSb2xlUG9saWN5UnVsZVtdO1xufVxuXG4vKipcbiAqIFBvbGljeSBydWxlIG9mIGEgYFJvbGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVBvbGljeVJ1bGUge1xuXG4gIC8qKlxuICAgKiBWZXJicyB0byBhbGxvdy4gKGUuZyBbJ2dldCcsICd3YXRjaCddKVxuICAgKi9cbiAgcmVhZG9ubHkgdmVyYnM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZXMgdGhpcyBydWxlIGFwcGxpZXMgdG8uXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZXM6IElBcGlSZXNvdXJjZVtdO1xufVxuXG5jbGFzcyBJbXBvcnRlZFJvbGUgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJUm9sZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmFtZTogc3RyaW5nO1xuXG4gIHB1YmxpYyByZWFkb25seSByZXNvdXJjZVR5cGUgPSAncm9sZXMnO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5fbmFtZSA9IG5hbWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBpVmVyc2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBrOHMuS3ViZVJvbGUuR1ZLLmFwaVZlcnNpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwaUdyb3VwKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdyYmFjLmF1dGhvcml6YXRpb24uazhzLmlvJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQga2luZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBrOHMuS3ViZVJvbGUuR1ZLLmtpbmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxufVxuXG4vKipcbiAqIFJvbGUgaXMgYSBuYW1lc3BhY2VkLCBsb2dpY2FsIGdyb3VwaW5nIG9mIFBvbGljeVJ1bGVzIHRoYXQgY2FuIGJlIHJlZmVyZW5jZWRcbiAqIGFzIGEgdW5pdCBieSBhIFJvbGVCaW5kaW5nLlxuICovXG5leHBvcnQgY2xhc3MgUm9sZSBleHRlbmRzIGJhc2UuUmVzb3VyY2UgaW1wbGVtZW50cyBJUm9sZSB7XG5cbiAgLyoqXG4gICAqIEltcG9ydHMgYSByb2xlIGZyb20gdGhlIGNsdXN0ZXIgYXMgYSByZWZlcmVuY2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Sb2xlTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBJUm9sZSB7XG4gICAgcmV0dXJuIG5ldyBJbXBvcnRlZFJvbGUoc2NvcGUsIGlkLCBuYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGJhc2UuUmVzb3VyY2UuYXBpT2JqZWN0XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBpT2JqZWN0OiBBcGlPYmplY3Q7XG5cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlVHlwZSA9ICdyb2xlcyc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfcnVsZXM6IEFycmF5PFJvbGVQb2xpY3lSdWxlPiA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBSb2xlUHJvcHMgPSB7fSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmFwaU9iamVjdCA9IG5ldyBrOHMuS3ViZVJvbGUodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbWV0YWRhdGE6IHByb3BzLm1ldGFkYXRhLFxuICAgICAgcnVsZXM6IExhenkuYW55KHsgcHJvZHVjZTogKCkgPT4gdGhpcy5zeW50aGVzaXplUnVsZXMoKSB9KSxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgcnVsZSBvZiBwcm9wcy5ydWxlcyA/PyBbXSkge1xuICAgICAgdGhpcy5hbGxvdyhydWxlLnZlcmJzLCAuLi5ydWxlLnJlc291cmNlcyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bGVzIGFzc29jaWFhdGVkIHdpdGggdGhpcyBSb2xlLlxuICAgKiBSZXR1cm5zIGEgY29weSwgdXNlIGBhbGxvd2AgdG8gYWRkIHJ1bGVzLlxuICAgKi9cbiAgcHVibGljIGdldCBydWxlcygpOiBSb2xlUG9saWN5UnVsZVtdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX3J1bGVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgcGVybWlzc2lvbiB0byBwZXJmb3JtIGEgbGlzdCBvZiBIVFRQIHZlcmJzIG9uIGEgY29sbGVjdGlvbiBvZlxuICAgKiByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvcmVmZXJlbmNlL2FjY2Vzcy1hdXRobi1hdXRoei9hdXRob3JpemF0aW9uLyNkZXRlcm1pbmUtdGhlLXJlcXVlc3QtdmVyYlxuICAgKi9cbiAgcHVibGljIGFsbG93KHZlcmJzOiBzdHJpbmdbXSwgLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuX3J1bGVzLnB1c2goeyB2ZXJicywgcmVzb3VyY2VzIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImNyZWF0ZVwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dDcmVhdGUoLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydjcmVhdGUnXSwgLi4ucmVzb3VyY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJnZXRcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93R2V0KC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZ2V0J10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwibGlzdFwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dMaXN0KC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnbGlzdCddLCAuLi5yZXNvdXJjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcIndhdGNoXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIHJlc291cmNlcyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1dhdGNoKC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnd2F0Y2gnXSwgLi4ucmVzb3VyY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJ1cGRhdGVcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93VXBkYXRlKC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsndXBkYXRlJ10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwicGF0Y2hcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93UGF0Y2goLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydwYXRjaCddLCAuLi5yZXNvdXJjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImRlbGV0ZVwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSByZXNvdXJjZXMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dEZWxldGUoLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydkZWxldGUnXSwgLi4ucmVzb3VyY2VzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJkZWxldGVjb2xsZWN0aW9uXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIHJlc291cmNlcyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd0RlbGV0ZUNvbGxlY3Rpb24oLi4ucmVzb3VyY2VzOiBJQXBpUmVzb3VyY2VbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydkZWxldGVjb2xsZWN0aW9uJ10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZ2V0XCIsIFwibGlzdFwiLCBhbmQgXCJ3YXRjaFwiIHBlcm1pc3Npb25zIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93UmVhZCguLi5yZXNvdXJjZXM6IElBcGlSZXNvdXJjZVtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2dldCcsICdsaXN0JywgJ3dhdGNoJ10sIC4uLnJlc291cmNlcyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZ2V0XCIsIFwibGlzdFwiLCBcIndhdGNoXCIsIFwiY3JlYXRlXCIsIFwidXBkYXRlXCIsIFwicGF0Y2hcIiwgXCJkZWxldGVcIiwgYW5kXG4gICAqIFwiZGVsZXRlY29sbGVjdGlvblwiIHBlcm1pc3Npb25zIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKlxuICAgKiBAcGFyYW0gcmVzb3VyY2VzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93UmVhZFdyaXRlKC4uLnJlc291cmNlczogSUFwaVJlc291cmNlW10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZ2V0JywgJ2xpc3QnLCAnd2F0Y2gnLCAnY3JlYXRlJywgJ3VwZGF0ZScsICdwYXRjaCcsICdkZWxldGUnLCAnZGVsZXRlY29sbGVjdGlvbiddLCAuLi5yZXNvdXJjZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIFJvbGVCaW5kaW5nIHRoYXQgYmluZHMgdGhlIHBlcm1pc3Npb25zIGluIHRoaXMgUm9sZVxuICAgKiB0byBhIGxpc3Qgb2Ygc3ViamVjdHMsIHRoYXQgd2lsbCBvbmx5IGFwcGx5IHRoaXMgcm9sZSdzIG5hbWVzcGFjZS5cbiAgICogQHBhcmFtIHN1YmplY3RzIGEgbGlzdCBvZiBzdWJqZWN0cyB0byBiaW5kIHRvXG4gICAqL1xuICBwdWJsaWMgYmluZCguLi5zdWJqZWN0czogcmIuSVN1YmplY3RbXSk6IHJiLlJvbGVCaW5kaW5nIHtcbiAgICBjb25zdCBzdWJqZWN0c0FkZHJlc3MgPSBhZGRyZXNzKC4uLnN1YmplY3RzKTtcbiAgICBjb25zdCBiaW5kaW5nID0gbmV3IHJiLlJvbGVCaW5kaW5nKHRoaXMsIGBSb2xlQmluZGluZyR7c3ViamVjdHNBZGRyZXNzfWAsIHtcbiAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgIG5hbWVzcGFjZTogdGhpcy5tZXRhZGF0YS5uYW1lc3BhY2UsXG4gICAgICB9LFxuICAgICAgcm9sZTogdGhpcyxcbiAgICB9KTtcbiAgICBiaW5kaW5nLmFkZFN1YmplY3RzKC4uLnN1YmplY3RzKTtcbiAgICByZXR1cm4gYmluZGluZztcbiAgfVxuXG4gIHByaXZhdGUgc3ludGhlc2l6ZVJ1bGVzKCk6IGs4cy5Qb2xpY3lSdWxlW10ge1xuICAgIGNvbnN0IHJ1bGVzOiBrOHMuUG9saWN5UnVsZVtdID0gW107XG4gICAgZm9yIChjb25zdCBydWxlIG9mIHRoaXMuX3J1bGVzKSB7XG4gICAgICBmb3IgKGNvbnN0IHJlc291cmNlIG9mIHJ1bGUucmVzb3VyY2VzKSB7XG4gICAgICAgIHJ1bGVzLnB1c2goe1xuICAgICAgICAgIHZlcmJzOiBydWxlLnZlcmJzLFxuICAgICAgICAgIGFwaUdyb3VwczogW3Jlc291cmNlLmFwaUdyb3VwID09PSAnY29yZScgPyAnJyA6IHJlc291cmNlLmFwaUdyb3VwXSxcbiAgICAgICAgICByZXNvdXJjZU5hbWVzOiByZXNvdXJjZS5yZXNvdXJjZU5hbWUgPyBbcmVzb3VyY2UucmVzb3VyY2VOYW1lXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICByZXNvdXJjZXM6IHJlc291cmNlLnJlc291cmNlVHlwZSA/IFtyZXNvdXJjZS5yZXNvdXJjZVR5cGVdIDogdW5kZWZpbmVkLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHJ1bGVzO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNsdXN0ZXItbGV2ZWwgcm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2x1c3RlclJvbGUgZXh0ZW5kcyBiYXNlLklSZXNvdXJjZSB7XG5cbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBgQ2x1c3RlclJvbGVgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENsdXN0ZXJSb2xlUHJvcHMgZXh0ZW5kcyBiYXNlLlJlc291cmNlUHJvcHMge1xuXG4gIC8qKlxuICAgICogQSBsaXN0IG9mIHJ1bGVzIHRoZSByb2xlIHNob3VsZCBhbGxvdy5cbiAgICAqXG4gICAgKiBAZGVmYXVsdCBbXVxuICAgICovXG4gIHJlYWRvbmx5IHJ1bGVzPzogQ2x1c3RlclJvbGVQb2xpY3lSdWxlW107XG5cbiAgLyoqXG4gICAgKiBTcGVjaWZ5IGxhYmVscyB0aGF0IHNob3VsZCBiZSB1c2VkIHRvIGxvY2F0ZSBDbHVzdGVyUm9sZXMsIHdob3NlIHJ1bGVzXG4gICAgKiB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgZmlsbGVkIGludG8gdGhpcyBDbHVzdGVyUm9sZSdzIHJ1bGVzLlxuICAgICovXG4gIHJlYWRvbmx5IGFnZ3JlZ2F0aW9uTGFiZWxzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cblxuLyoqXG4gKiBQb2xpY3kgcnVsZSBvZiBhIGBDbHVzdGVyUm9sZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVyUm9sZVBvbGljeVJ1bGUge1xuXG4gIC8qKlxuICAgKiBWZXJicyB0byBhbGxvdy4gKGUuZyBbJ2dldCcsICd3YXRjaCddKVxuICAgKi9cbiAgcmVhZG9ubHkgdmVyYnM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBFbmRwb2ludHMgdGhpcyBydWxlIGFwcGxpZXMgdG8uIENhbiBiZSBlaXRoZXIgYXBpIHJlc291cmNlc1xuICAgKiBvciBub24gYXBpIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50czogSUFwaUVuZHBvaW50W107XG59XG5cbmNsYXNzIEltcG9ydGVkQ2x1c3RlclJvbGUgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJQ2x1c3RlclJvbGUge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25hbWU6IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlOiBzdHJpbmcgPSAnY2x1c3RlcnJvbGVzJztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMuX25hbWUgPSBuYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX25hbWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwaVZlcnNpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gazhzLkt1YmVDbHVzdGVyUm9sZS5HVksuYXBpVmVyc2lvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBpR3JvdXAoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3JiYWMuYXV0aG9yaXphdGlvbi5rOHMuaW8nO1xuICB9XG5cbiAgcHVibGljIGdldCBraW5kKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGs4cy5LdWJlQ2x1c3RlclJvbGUuR1ZLLmtpbmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxufVxuXG4vKipcbiAqIENsdXN0ZXJSb2xlIGlzIGEgY2x1c3RlciBsZXZlbCwgbG9naWNhbCBncm91cGluZyBvZiBQb2xpY3lSdWxlcyB0aGF0IGNhbiBiZVxuICogcmVmZXJlbmNlZCBhcyBhIHVuaXQgYnkgYSBSb2xlQmluZGluZyBvciBDbHVzdGVyUm9sZUJpbmRpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBDbHVzdGVyUm9sZSBleHRlbmRzIGJhc2UuUmVzb3VyY2UgaW1wbGVtZW50cyBJQ2x1c3RlclJvbGUsIElSb2xlIHtcblxuICAvKipcbiAgICogSW1wb3J0cyBhIHJvbGUgZnJvbSB0aGUgY2x1c3RlciBhcyBhIHJlZmVyZW5jZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUNsdXN0ZXJSb2xlTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBuYW1lOiBzdHJpbmcpOiBJQ2x1c3RlclJvbGUge1xuICAgIHJldHVybiBuZXcgSW1wb3J0ZWRDbHVzdGVyUm9sZShzY29wZSwgaWQsIG5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgYmFzZS5SZXNvdXJjZS5hcGlPYmplY3RcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBhcGlPYmplY3Q6IEFwaU9iamVjdDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ2NsdXN0ZXJyb2xlcyc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbGFiZWxTZWxlY3RvcjogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBwcml2YXRlIHJlYWRvbmx5IF9ydWxlczogQXJyYXk8Q2x1c3RlclJvbGVQb2xpY3lSdWxlPiA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDbHVzdGVyUm9sZVByb3BzID0ge30pIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5hcGlPYmplY3QgPSBuZXcgazhzLkt1YmVDbHVzdGVyUm9sZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgICBydWxlczogTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnN5bnRoZXNpemVSdWxlcygpIH0pLFxuICAgICAgYWdncmVnYXRpb25SdWxlOiBMYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMuc3ludGhlc2l6ZUFnZ3JlZ2F0aW9uUnVsZXMoKSB9KSxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgcnVsZSBvZiBwcm9wcy5ydWxlcyA/PyBbXSkge1xuICAgICAgdGhpcy5hbGxvdyhydWxlLnZlcmJzLCAuLi5ydWxlLmVuZHBvaW50cyk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocHJvcHMuYWdncmVnYXRpb25MYWJlbHMgPz8ge30pKSB7XG4gICAgICB0aGlzLmFnZ3JlZ2F0ZShrZXksIHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUnVsZXMgYXNzb2NpYWF0ZWQgd2l0aCB0aGlzIFJvbGUuXG4gICAqIFJldHVybnMgYSBjb3B5LCB1c2UgYGFsbG93YCB0byBhZGQgcnVsZXMuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHJ1bGVzKCk6IENsdXN0ZXJSb2xlUG9saWN5UnVsZVtdIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX3J1bGVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgcGVybWlzc2lvbiB0byBwZXJmb3JtIGEgbGlzdCBvZiBIVFRQIHZlcmJzIG9uIGEgY29sbGVjdGlvbiBvZlxuICAgKiByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSBlbmRwb2ludHMgVGhlIGVuZHBvaW50cyhzKSB0byBhcHBseSB0b1xuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL3JlZmVyZW5jZS9hY2Nlc3MtYXV0aG4tYXV0aHovYXV0aG9yaXphdGlvbi8jZGV0ZXJtaW5lLXRoZS1yZXF1ZXN0LXZlcmJcbiAgICovXG4gIHB1YmxpYyBhbGxvdyh2ZXJiczogc3RyaW5nW10sIC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLl9ydWxlcy5wdXNoKHsgdmVyYnMsIGVuZHBvaW50cyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJjcmVhdGVcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gZW5kcG9pbnRzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93Q3JlYXRlKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnY3JlYXRlJ10sIC4uLmVuZHBvaW50cyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZ2V0XCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd0dldCguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2dldCddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImxpc3RcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gZW5kcG9pbnRzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93TGlzdCguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2xpc3QnXSwgLi4uZW5kcG9pbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJ3YXRjaFwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSBlbmRwb2ludHMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dXYXRjaCguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ3dhdGNoJ10sIC4uLmVuZHBvaW50cyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwidXBkYXRlXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1VwZGF0ZSguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ3VwZGF0ZSddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcInBhdGNoXCIgcGVybWlzc2lvbiBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1BhdGNoKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsncGF0Y2gnXSwgLi4uZW5kcG9pbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgXCJkZWxldGVcIiBwZXJtaXNzaW9uIGZvciB0aGUgcmVzb3VyY2VzLlxuICAgKiBAcGFyYW0gZW5kcG9pbnRzIFRoZSByZXNvdXJjZShzKSB0byBhcHBseSB0b1xuICAgKi9cbiAgcHVibGljIGFsbG93RGVsZXRlKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZGVsZXRlJ10sIC4uLmVuZHBvaW50cyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIFwiZGVsZXRlY29sbGVjdGlvblwiIHBlcm1pc3Npb24gZm9yIHRoZSByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSBlbmRwb2ludHMgVGhlIHJlc291cmNlKHMpIHRvIGFwcGx5IHRvXG4gICAqL1xuICBwdWJsaWMgYWxsb3dEZWxldGVDb2xsZWN0aW9uKC4uLmVuZHBvaW50czogSUFwaUVuZHBvaW50W10pOiB2b2lkIHtcbiAgICB0aGlzLmFsbG93KFsnZGVsZXRlY29sbGVjdGlvbiddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImdldFwiLCBcImxpc3RcIiwgYW5kIFwid2F0Y2hcIiBwZXJtaXNzaW9ucyBmb3IgdGhlIHJlc291cmNlcy5cbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1JlYWQoLi4uZW5kcG9pbnRzOiBJQXBpRW5kcG9pbnRbXSk6IHZvaWQge1xuICAgIHRoaXMuYWxsb3coWydnZXQnLCAnbGlzdCcsICd3YXRjaCddLCAuLi5lbmRwb2ludHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBcImdldFwiLCBcImxpc3RcIiwgXCJ3YXRjaFwiLCBcImNyZWF0ZVwiLCBcInVwZGF0ZVwiLCBcInBhdGNoXCIsIFwiZGVsZXRlXCIsIGFuZFxuICAgKiBcImRlbGV0ZWNvbGxlY3Rpb25cIiBwZXJtaXNzaW9ucyBmb3IgdGhlIHJlc291cmNlcy5cbiAgICpcbiAgICogQHBhcmFtIGVuZHBvaW50cyBUaGUgcmVzb3VyY2UocykgdG8gYXBwbHkgdG9cbiAgICovXG4gIHB1YmxpYyBhbGxvd1JlYWRXcml0ZSguLi5lbmRwb2ludHM6IElBcGlFbmRwb2ludFtdKTogdm9pZCB7XG4gICAgdGhpcy5hbGxvdyhbJ2dldCcsICdsaXN0JywgJ3dhdGNoJywgJ2NyZWF0ZScsICd1cGRhdGUnLCAncGF0Y2gnLCAnZGVsZXRlJywgJ2RlbGV0ZWNvbGxlY3Rpb24nXSwgLi4uZW5kcG9pbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZ2dyZWdhdGUgcnVsZXMgZnJvbSByb2xlcyBtYXRjaGluZyB0aGlzIGxhYmVsIHNlbGVjdG9yLlxuICAgKi9cbiAgcHVibGljIGFnZ3JlZ2F0ZShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuX2xhYmVsU2VsZWN0b3Jba2V5XSA9IHZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbWJpbmVzIHRoZSBydWxlcyBvZiB0aGUgYXJndW1lbnQgQ2x1c3RlclJvbGUgaW50byB0aGlzIENsdXN0ZXJSb2xlXG4gICAqIHVzaW5nIGFnZ3JlZ2F0aW9uIGxhYmVscy5cbiAgICogQHBhcmFtIHJvbFxuICAgKi9cbiAgcHVibGljIGNvbWJpbmUocm9sOiBDbHVzdGVyUm9sZSk6IHZvaWQge1xuICAgIGNvbnN0IGtleSA9IGBjZGs4cy5jbHVzdGVyLXJvbGUvYWdncmVnYXRlLXRvLSR7TmFtZXMudG9MYWJlbFZhbHVlKHRoaXMpfWA7XG4gICAgY29uc3QgdmFsdWUgPSAndHJ1ZSc7XG4gICAgcm9sLm1ldGFkYXRhLmFkZExhYmVsKGtleSwgdmFsdWUpO1xuICAgIHRoaXMuYWdncmVnYXRlKGtleSwgdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIFJvbGVCaW5kaW5nIHRoYXQgYmluZHMgdGhlIHBlcm1pc3Npb25zIGluIHRoaXMgQ2x1c3RlclJvbGVcbiAgICogdG8gYSBsaXN0IG9mIHN1YmplY3RzLCB0aGF0IHdpbGwgb25seSBhcHBseSB0byB0aGUgZ2l2ZW4gbmFtZXNwYWNlLlxuICAgKiBAcGFyYW0gbmFtZXNwYWNlIHRoZSBuYW1lc3BhY2UgdG8gbGltaXQgcGVybWlzc2lvbnMgdG8uXG4gICAqIEBwYXJhbSBzdWJqZWN0cyBhIGxpc3Qgb2Ygc3ViamVjdHMgdG8gYmluZCB0b1xuICAgKi9cbiAgcHVibGljIGJpbmRJbk5hbWVzcGFjZShuYW1lc3BhY2U6IHN0cmluZywgLi4uc3ViamVjdHM6IHJiLklTdWJqZWN0W10pOiByYi5Sb2xlQmluZGluZyB7XG4gICAgY29uc3QgYmluZGluZyA9IG5ldyByYi5Sb2xlQmluZGluZyh0aGlzLCBgUm9sZUJpbmRpbmctJHtuYW1lc3BhY2V9YCwge1xuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgbmFtZXNwYWNlLFxuICAgICAgfSxcbiAgICAgIHJvbGU6IHRoaXMsXG4gICAgfSk7XG4gICAgYmluZGluZy5hZGRTdWJqZWN0cyguLi5zdWJqZWN0cyk7XG4gICAgcmV0dXJuIGJpbmRpbmc7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIGEgQ2x1c3RlclJvbGVCaW5kaW5nIHRoYXQgYmluZHMgdGhlIHBlcm1pc3Npb25zIGluIHRoaXNcbiAgICogQ2x1c3RlclJvbGUgdG8gYSBsaXN0IG9mIHN1YmplY3RzLCB3aXRob3V0IG5hbWVzcGFjZSByZXN0cmljdGlvbnMuXG4gICAqIEBwYXJhbSBzdWJqZWN0cyBhIGxpc3Qgb2Ygc3ViamVjdHMgdG8gYmluZCB0b1xuICAgKi9cbiAgcHVibGljIGJpbmQoLi4uc3ViamVjdHM6IHJiLklTdWJqZWN0W10pOiByYi5DbHVzdGVyUm9sZUJpbmRpbmcge1xuICAgIGNvbnN0IGJpbmRpbmcgPSBuZXcgcmIuQ2x1c3RlclJvbGVCaW5kaW5nKHRoaXMsICdDbHVzdGVyUm9sZUJpbmRpbmcnLCB7XG4gICAgICByb2xlOiB0aGlzLFxuICAgIH0pO1xuICAgIGJpbmRpbmcuYWRkU3ViamVjdHMoLi4uc3ViamVjdHMpO1xuICAgIHJldHVybiBiaW5kaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW50aGVzaXplUnVsZXMoKTogazhzLlBvbGljeVJ1bGVbXSB7XG4gICAgY29uc3QgcnVsZXM6IGs4cy5Qb2xpY3lSdWxlW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHJ1bGUgb2YgdGhpcy5fcnVsZXMpIHtcbiAgICAgIGZvciAoY29uc3QgZW5kcG9pbnQgb2YgcnVsZS5lbmRwb2ludHMpIHtcbiAgICAgICAgY29uc3QgcmVzb3VyY2UgPSBlbmRwb2ludC5hc0FwaVJlc291cmNlKCk7XG4gICAgICAgIGNvbnN0IG5vblJlc291cmNlID0gZW5kcG9pbnQuYXNOb25BcGlSZXNvdXJjZSgpO1xuXG4gICAgICAgIGlmIChyZXNvdXJjZSAmJiBub25SZXNvdXJjZSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW5kcG9pbnQgbXVzdCBiZSBlaXRoZXIgcmVzb3VyY2Ugb3Igbm9uIHJlc291cmNlLiBub3QgYm90aC4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghcmVzb3VyY2UgJiYgIW5vblJlc291cmNlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFbmRwb2ludCBtdXN0IGJlIGVpdGhlciByZXNvdXJjZSBvciBub24gcmVzb3VyY2UuIG5vdCBuZWl0aGVyLicpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHJlc291cmNlKSB7XG4gICAgICAgICAgcnVsZXMucHVzaCh7XG4gICAgICAgICAgICBhcGlHcm91cHM6IFtyZXNvdXJjZS5hcGlHcm91cCA9PT0gJ2NvcmUnID8gJycgOiByZXNvdXJjZS5hcGlHcm91cF0sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFtyZXNvdXJjZS5yZXNvdXJjZVR5cGVdLFxuICAgICAgICAgICAgcmVzb3VyY2VOYW1lczogcmVzb3VyY2UucmVzb3VyY2VOYW1lID8gW3Jlc291cmNlLnJlc291cmNlTmFtZV0gOiBbXSxcbiAgICAgICAgICAgIHZlcmJzOiBydWxlLnZlcmJzLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmIChub25SZXNvdXJjZSkge1xuICAgICAgICAgIHJ1bGVzLnB1c2goeyB2ZXJiczogcnVsZS52ZXJicywgbm9uUmVzb3VyY2VVckxzOiBbbm9uUmVzb3VyY2VdIH0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gICAgcmV0dXJuIHJ1bGVzO1xuICB9XG5cbiAgcHJpdmF0ZSBzeW50aGVzaXplQWdncmVnYXRpb25SdWxlcygpOiBrOHMuQWdncmVnYXRpb25SdWxlIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoT2JqZWN0LmtleXModGhpcy5fbGFiZWxTZWxlY3RvcikubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB7IGNsdXN0ZXJSb2xlU2VsZWN0b3JzOiBbeyBtYXRjaExhYmVsczogdGhpcy5fbGFiZWxTZWxlY3RvciB9XSB9O1xuICB9XG59XG4iXX0=
|
package/lib/secret.js
CHANGED
|
@@ -41,6 +41,12 @@ class ImportedSecret extends constructs_1.Construct {
|
|
|
41
41
|
* @see https://kubernetes.io/docs/concepts/configuration/secret
|
|
42
42
|
*/
|
|
43
43
|
class Secret extends base.Resource {
|
|
44
|
+
/**
|
|
45
|
+
* Imports a secret from the cluster as a reference.
|
|
46
|
+
*/
|
|
47
|
+
static fromSecretName(scope, id, name) {
|
|
48
|
+
return new ImportedSecret(scope, id, name);
|
|
49
|
+
}
|
|
44
50
|
constructor(scope, id, props = {}) {
|
|
45
51
|
super(scope, id);
|
|
46
52
|
this.resourceType = 'secrets';
|
|
@@ -53,12 +59,6 @@ class Secret extends base.Resource {
|
|
|
53
59
|
immutable: this.immutable,
|
|
54
60
|
});
|
|
55
61
|
}
|
|
56
|
-
/**
|
|
57
|
-
* Imports a secret from the cluster as a reference.
|
|
58
|
-
*/
|
|
59
|
-
static fromSecretName(scope, id, name) {
|
|
60
|
-
return new ImportedSecret(scope, id, name);
|
|
61
|
-
}
|
|
62
62
|
/**
|
|
63
63
|
* Adds a string data field to the secret.
|
|
64
64
|
* @param key Key
|
|
@@ -80,7 +80,7 @@ class Secret extends base.Resource {
|
|
|
80
80
|
}
|
|
81
81
|
exports.Secret = Secret;
|
|
82
82
|
_a = JSII_RTTI_SYMBOL_1;
|
|
83
|
-
Secret[_a] = { fqn: "cdk8s-plus-31.Secret", version: "2.0.
|
|
83
|
+
Secret[_a] = { fqn: "cdk8s-plus-31.Secret", version: "2.0.7" };
|
|
84
84
|
/**
|
|
85
85
|
* Create a secret for basic authentication.
|
|
86
86
|
*
|
|
@@ -101,7 +101,7 @@ class BasicAuthSecret extends Secret {
|
|
|
101
101
|
}
|
|
102
102
|
exports.BasicAuthSecret = BasicAuthSecret;
|
|
103
103
|
_b = JSII_RTTI_SYMBOL_1;
|
|
104
|
-
BasicAuthSecret[_b] = { fqn: "cdk8s-plus-31.BasicAuthSecret", version: "2.0.
|
|
104
|
+
BasicAuthSecret[_b] = { fqn: "cdk8s-plus-31.BasicAuthSecret", version: "2.0.7" };
|
|
105
105
|
/**
|
|
106
106
|
* Create a secret for ssh authentication.
|
|
107
107
|
*
|
|
@@ -121,7 +121,7 @@ class SshAuthSecret extends Secret {
|
|
|
121
121
|
}
|
|
122
122
|
exports.SshAuthSecret = SshAuthSecret;
|
|
123
123
|
_c = JSII_RTTI_SYMBOL_1;
|
|
124
|
-
SshAuthSecret[_c] = { fqn: "cdk8s-plus-31.SshAuthSecret", version: "2.0.
|
|
124
|
+
SshAuthSecret[_c] = { fqn: "cdk8s-plus-31.SshAuthSecret", version: "2.0.7" };
|
|
125
125
|
/**
|
|
126
126
|
* Create a secret for a service account token.
|
|
127
127
|
*
|
|
@@ -139,7 +139,7 @@ class ServiceAccountTokenSecret extends Secret {
|
|
|
139
139
|
}
|
|
140
140
|
exports.ServiceAccountTokenSecret = ServiceAccountTokenSecret;
|
|
141
141
|
_d = JSII_RTTI_SYMBOL_1;
|
|
142
|
-
ServiceAccountTokenSecret[_d] = { fqn: "cdk8s-plus-31.ServiceAccountTokenSecret", version: "2.0.
|
|
142
|
+
ServiceAccountTokenSecret[_d] = { fqn: "cdk8s-plus-31.ServiceAccountTokenSecret", version: "2.0.7" };
|
|
143
143
|
/**
|
|
144
144
|
* Create a secret for storing a TLS certificate and its associated key.
|
|
145
145
|
*
|
|
@@ -160,7 +160,7 @@ class TlsSecret extends Secret {
|
|
|
160
160
|
}
|
|
161
161
|
exports.TlsSecret = TlsSecret;
|
|
162
162
|
_e = JSII_RTTI_SYMBOL_1;
|
|
163
|
-
TlsSecret[_e] = { fqn: "cdk8s-plus-31.TlsSecret", version: "2.0.
|
|
163
|
+
TlsSecret[_e] = { fqn: "cdk8s-plus-31.TlsSecret", version: "2.0.7" };
|
|
164
164
|
/**
|
|
165
165
|
* Create a secret for storing credentials for accessing a container image
|
|
166
166
|
* registry.
|
|
@@ -181,5 +181,5 @@ class DockerConfigSecret extends Secret {
|
|
|
181
181
|
}
|
|
182
182
|
exports.DockerConfigSecret = DockerConfigSecret;
|
|
183
183
|
_f = JSII_RTTI_SYMBOL_1;
|
|
184
|
-
DockerConfigSecret[_f] = { fqn: "cdk8s-plus-31.DockerConfigSecret", version: "2.0.
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NlY3JldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDJDQUF1QztBQUN2QywrQkFBK0I7QUFDL0IsMkNBQWtFO0FBQ2xFLHFDQUFxQztBQWdFckMsTUFBTSxjQUFlLFNBQVEsc0JBQVM7SUFNcEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxJQUFZO1FBQ3BELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFISCxpQkFBWSxHQUFHLFNBQVMsQ0FBQztRQUl2QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sUUFBUSxDQUFDLEdBQVcsRUFBRSxPQUFtQztRQUM5RCxPQUFPLG9CQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBRUY7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBYSxNQUFPLFNBQVEsSUFBSSxDQUFDLFFBQVE7SUF1QnZDLFlBQW1CLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXFCLEVBQUc7UUFDdkUsS0FBSyxDQUFDLEtBQUss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QUlHO0FBQ0gsTUFBYSxTQUFVLFNBQVEsTUFBTTtJQUNuQyxZQUFtQixLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQjtRQUNwRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxtQkFBbUI7WUFDekIsVUFBVSxFQUFFO2dCQUNWLFNBQVMsRUFBRSxLQUFLLENBQUMsT0FBTztnQkFDeEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxNQUFNO2FBQ3hCO1lBQ0QsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtTQUN6QixDQUFDLENBQUM7SUFDTCxDQUFDOztBQVhILDhCQVlDOzs7QUFlRDs7Ozs7R0FLRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsTUFBTTtJQUM1QyxZQUFtQixLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUM3RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxnQ0FBZ0M7WUFDdEMsVUFBVSxFQUFFO2dCQUNWLG1CQUFtQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQzthQUNoRDtZQUNELFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7U0FDekIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFWSCxnREFXQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFwaU9iamVjdCB9IGZyb20gJ2NkazhzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0ICogYXMgYmFzZSBmcm9tICcuL2Jhc2UnO1xuaW1wb3J0IHsgRW52VmFsdWUsIEVudlZhbHVlRnJvbVNlY3JldE9wdGlvbnMgfSBmcm9tICcuL2NvbnRhaW5lcic7XG5pbXBvcnQgKiBhcyBrOHMgZnJvbSAnLi9pbXBvcnRzL2s4cyc7XG5pbXBvcnQgKiBhcyBzZXJ2aWNlYWNjb3VudCBmcm9tICcuL3NlcnZpY2UtYWNjb3VudCc7XG5cbi8qKlxuICogQ29tbW9uIHByb3BlcnRpZXMgZm9yIGBTZWNyZXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vblNlY3JldFByb3BzIGV4dGVuZHMgYmFzZS5SZXNvdXJjZVByb3BzIHtcblxuICAvKipcbiAgICogSWYgc2V0IHRvIHRydWUsIGVuc3VyZXMgdGhhdCBkYXRhIHN0b3JlZCBpbiB0aGUgU2VjcmV0IGNhbm5vdCBiZSB1cGRhdGVkIChvbmx5IG9iamVjdCBtZXRhZGF0YSBjYW4gYmUgbW9kaWZpZWQpLlxuICAgKiBJZiBub3Qgc2V0IHRvIHRydWUsIHRoZSBmaWVsZCBjYW4gYmUgbW9kaWZpZWQgYXQgYW55IHRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBpbW11dGFibGU/OiBib29sZWFuO1xuXG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFNlY3JldGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjcmV0UHJvcHMgZXh0ZW5kcyBDb21tb25TZWNyZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBzdHJpbmdEYXRhIGFsbG93cyBzcGVjaWZ5aW5nIG5vbi1iaW5hcnkgc2VjcmV0IGRhdGEgaW4gc3RyaW5nIGZvcm0uIEl0IGlzXG4gICAqIHByb3ZpZGVkIGFzIGEgd3JpdGUtb25seSBjb252ZW5pZW5jZSBtZXRob2QuIEFsbCBrZXlzIGFuZCB2YWx1ZXMgYXJlIG1lcmdlZFxuICAgKiBpbnRvIHRoZSBkYXRhIGZpZWxkIG9uIHdyaXRlLCBvdmVyd3JpdGluZyBhbnkgZXhpc3RpbmcgdmFsdWVzLiBJdCBpcyBuZXZlclxuICAgKiBvdXRwdXQgd2hlbiByZWFkaW5nIGZyb20gdGhlIEFQSS5cbiAgICovXG4gIHJlYWRvbmx5IHN0cmluZ0RhdGE/OiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCB0eXBlIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2VjcmV0LiAgVXNlZCB0byBmYWNpbGl0YXRlIHByb2dyYW1tYXRpY1xuICAgKiBoYW5kbGluZyBvZiBzZWNyZXQgZGF0YSBieSB2YXJpb3VzIGNvbnRyb2xsZXJzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB1bmRlZmluZWQgLSBEb24ndCBzZXQgYSB0eXBlLlxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IHN0cmluZztcblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTZWNyZXQgZXh0ZW5kcyBiYXNlLklSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBSZXR1cm5zIEVudlZhbHVlIG9iamVjdCBmcm9tIGEgc2VjcmV0J3Mga2V5LlxuICAgKiBAcGFyYW0ga2V5IFNlY3JldCdzIGtleVxuICAgKiBAcGFyYW0gb3B0aW9ucyBBZGRpdGlvbmFsIEVudlZhbHVlIG9wdGlvbnNcbiAgICovXG4gIGVudlZhbHVlKGtleTogc3RyaW5nLCBvcHRpb25zPzogRW52VmFsdWVGcm9tU2VjcmV0T3B0aW9ucyk6IEVudlZhbHVlO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzcGVjaWZpYyB2YWx1ZSBpbiBKU09OIHNlY3JldC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWNyZXRWYWx1ZSB7XG4gIC8qKlxuICAgKiBUaGUgc2VjcmV0XG4gICAqL1xuICByZWFkb25seSBzZWNyZXQ6IElTZWNyZXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBKU09OIGtleVxuICAgKi9cbiAgcmVhZG9ubHkga2V5OiBzdHJpbmc7XG59XG5cbmNsYXNzIEltcG9ydGVkU2VjcmV0IGV4dGVuZHMgQ29uc3RydWN0IGltcGxlbWVudHMgSVNlY3JldCB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfbmFtZTogc3RyaW5nO1xuXG4gIHB1YmxpYyByZWFkb25seSByZXNvdXJjZVR5cGUgPSAnc2VjcmV0cyc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLl9uYW1lID0gbmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9uYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBhcGlWZXJzaW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGs4cy5LdWJlU2VjcmV0LkdWSy5hcGlWZXJzaW9uO1xuICB9XG5cbiAgcHVibGljIGdldCBhcGlHcm91cCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHB1YmxpYyBnZXQga2luZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBrOHMuS3ViZVNlY3JldC5HVksua2luZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgcmVzb3VyY2VOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBlbnZWYWx1ZShrZXk6IHN0cmluZywgb3B0aW9ucz86IEVudlZhbHVlRnJvbVNlY3JldE9wdGlvbnMpOiBFbnZWYWx1ZSB7XG4gICAgcmV0dXJuIEVudlZhbHVlLmZyb21TZWNyZXRWYWx1ZSh7IHNlY3JldDogdGhpcywga2V5IH0sIG9wdGlvbnMpO1xuICB9XG5cbn1cblxuLyoqXG4gKiBLdWJlcm5ldGVzIFNlY3JldHMgbGV0IHlvdSBzdG9yZSBhbmQgbWFuYWdlIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbiwgc3VjaCBhc1xuICogcGFzc3dvcmRzLCBPQXV0aCB0b2tlbnMsIGFuZCBzc2gga2V5cy4gU3RvcmluZyBjb25maWRlbnRpYWwgaW5mb3JtYXRpb24gaW4gYVxuICogU2VjcmV0IGlzIHNhZmVyIGFuZCBtb3JlIGZsZXhpYmxlIHRoYW4gcHV0dGluZyBpdCB2ZXJiYXRpbSBpbiBhIFBvZFxuICogZGVmaW5pdGlvbiBvciBpbiBhIGNvbnRhaW5lciBpbWFnZS5cbiAqXG4gKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vc2VjcmV0XG4gKi9cbmV4cG9ydCBjbGFzcyBTZWNyZXQgZXh0ZW5kcyBiYXNlLlJlc291cmNlIGltcGxlbWVudHMgSVNlY3JldCB7XG5cbiAgLyoqXG4gICAqIEltcG9ydHMgYSBzZWNyZXQgZnJvbSB0aGUgY2x1c3RlciBhcyBhIHJlZmVyZW5jZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVNlY3JldE5hbWUoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nKTogSVNlY3JldCB7XG4gICAgcmV0dXJuIG5ldyBJbXBvcnRlZFNlY3JldChzY29wZSwgaWQsIG5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgYmFzZS5SZXNvdXJjZS5hcGlPYmplY3RcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBhcGlPYmplY3Q6IEFwaU9iamVjdDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ3NlY3JldHMnO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0aGUgc2VjcmV0IGlzIGltbXV0YWJsZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpbW11dGFibGU6IGJvb2xlYW47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBzdHJpbmdEYXRhOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2VjcmV0UHJvcHMgPSB7IH0pIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5zdHJpbmdEYXRhID0gcHJvcHMuc3RyaW5nRGF0YSA/PyB7fTtcblxuICAgIHRoaXMuaW1tdXRhYmxlID0gcHJvcHMuaW1tdXRhYmxlID8/IGZhbHNlO1xuICAgIHRoaXMuYXBpT2JqZWN0ID0gbmV3IGs4cy5LdWJlU2VjcmV0KHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG1ldGFkYXRhOiBwcm9wcy5tZXRhZGF0YSxcbiAgICAgIHR5cGU6IHByb3BzLnR5cGUsXG4gICAgICBzdHJpbmdEYXRhOiB0aGlzLnN0cmluZ0RhdGEsXG4gICAgICBpbW11dGFibGU6IHRoaXMuaW1tdXRhYmxlLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBzdHJpbmcgZGF0YSBmaWVsZCB0byB0aGUgc2VjcmV0LlxuICAgKiBAcGFyYW0ga2V5IEtleVxuICAgKiBAcGFyYW0gdmFsdWUgVmFsdWVcbiAgICovXG4gIHB1YmxpYyBhZGRTdHJpbmdEYXRhKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zdHJpbmdEYXRhW2tleV0gPSB2YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgc3RyaW5nIGRhdGEgYnkga2V5IG9yIHVuZGVmaW5lZFxuICAgKiBAcGFyYW0ga2V5IEtleVxuICAgKi9cbiAgcHVibGljIGdldFN0cmluZ0RhdGEoa2V5OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnN0cmluZ0RhdGFba2V5XTtcbiAgfVxuXG4gIHB1YmxpYyBlbnZWYWx1ZShrZXk6IHN0cmluZywgb3B0aW9ucz86IEVudlZhbHVlRnJvbVNlY3JldE9wdGlvbnMpOiBFbnZWYWx1ZSB7XG4gICAgcmV0dXJuIEVudlZhbHVlLmZyb21TZWNyZXRWYWx1ZSh7IHNlY3JldDogdGhpcywga2V5IH0sIG9wdGlvbnMpO1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEJhc2ljQXV0aFNlY3JldGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzaWNBdXRoU2VjcmV0UHJvcHMgZXh0ZW5kcyBDb21tb25TZWNyZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdXNlciBuYW1lIGZvciBhdXRoZW50aWNhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgdXNlcm5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHBhc3N3b3JkIG9yIHRva2VuIGZvciBhdXRoZW50aWNhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgcGFzc3dvcmQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBzZWNyZXQgZm9yIGJhc2ljIGF1dGhlbnRpY2F0aW9uLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9zZWNyZXQvI2Jhc2ljLWF1dGhlbnRpY2F0aW9uLXNlY3JldFxuICovXG5leHBvcnQgY2xhc3MgQmFzaWNBdXRoU2VjcmV0IGV4dGVuZHMgU2VjcmV0IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBCYXNpY0F1dGhTZWNyZXRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogJ2t1YmVybmV0ZXMuaW8vYmFzaWMtYXV0aCcsXG4gICAgICBzdHJpbmdEYXRhOiB7XG4gICAgICAgIHVzZXJuYW1lOiBwcm9wcy51c2VybmFtZSxcbiAgICAgICAgcGFzc3dvcmQ6IHByb3BzLnBhc3N3b3JkLFxuICAgICAgfSxcbiAgICAgIGltbXV0YWJsZTogcHJvcHMuaW1tdXRhYmxlLFxuICAgICAgbWV0YWRhdGE6IHByb3BzLm1ldGFkYXRhLFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFNzaEF1dGhTZWNyZXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNzaEF1dGhTZWNyZXRQcm9wcyBleHRlbmRzIENvbW1vblNlY3JldFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBTU0ggcHJpdmF0ZSBrZXkgdG8gdXNlXG4gICAqL1xuICByZWFkb25seSBzc2hQcml2YXRlS2V5OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgc2VjcmV0IGZvciBzc2ggYXV0aGVudGljYXRpb24uXG4gKlxuICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL3NlY3JldC8jc3NoLWF1dGhlbnRpY2F0aW9uLXNlY3JldHNcbiAqL1xuZXhwb3J0IGNsYXNzIFNzaEF1dGhTZWNyZXQgZXh0ZW5kcyBTZWNyZXQge1xuICBwdWJsaWMgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNzaEF1dGhTZWNyZXRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogJ2t1YmVybmV0ZXMuaW8vc3NoLWF1dGgnLFxuICAgICAgc3RyaW5nRGF0YToge1xuICAgICAgICAnc3NoLXByaXZhdGVrZXknOiBwcm9wcy5zc2hQcml2YXRlS2V5LFxuICAgICAgfSxcbiAgICAgIGltbXV0YWJsZTogcHJvcHMuaW1tdXRhYmxlLFxuICAgICAgbWV0YWRhdGE6IHByb3BzLm1ldGFkYXRhLFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFNlcnZpY2VBY2NvdW50VG9rZW5TZWNyZXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZpY2VBY2NvdW50VG9rZW5TZWNyZXRQcm9wcyBleHRlbmRzIENvbW1vblNlY3JldFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBzZXJ2aWNlIGFjY291bnQgdG8gc3RvcmUgYSBzZWNyZXQgZm9yXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlQWNjb3VudDogc2VydmljZWFjY291bnQuSVNlcnZpY2VBY2NvdW50O1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIHNlY3JldCBmb3IgYSBzZXJ2aWNlIGFjY291bnQgdG9rZW4uXG4gKlxuICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL3NlY3JldC8jc2VydmljZS1hY2NvdW50LXRva2VuLXNlY3JldHNcbiAqL1xuZXhwb3J0IGNsYXNzIFNlcnZpY2VBY2NvdW50VG9rZW5TZWNyZXQgZXh0ZW5kcyBTZWNyZXQge1xuICBwdWJsaWMgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNlcnZpY2VBY2NvdW50VG9rZW5TZWNyZXRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogJ2t1YmVybmV0ZXMuaW8vc2VydmljZS1hY2NvdW50LXRva2VuJyxcbiAgICAgIG1ldGFkYXRhOiBwcm9wcy5tZXRhZGF0YSxcbiAgICAgIGltbXV0YWJsZTogcHJvcHMuaW1tdXRhYmxlLFxuICAgIH0pO1xuXG4gICAgdGhpcy5tZXRhZGF0YS5hZGRBbm5vdGF0aW9uKCdrdWJlcm5ldGVzLmlvL3NlcnZpY2UtYWNjb3VudC5uYW1lJywgcHJvcHMuc2VydmljZUFjY291bnQubmFtZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgVGxzU2VjcmV0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUbHNTZWNyZXRQcm9wcyBleHRlbmRzIENvbW1vblNlY3JldFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBUTFMgY2VydFxuICAgKi9cbiAgcmVhZG9ubHkgdGxzQ2VydDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgVExTIGtleVxuICAgKi9cbiAgcmVhZG9ubHkgdGxzS2V5OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgc2VjcmV0IGZvciBzdG9yaW5nIGEgVExTIGNlcnRpZmljYXRlIGFuZCBpdHMgYXNzb2NpYXRlZCBrZXkuXG4gKlxuICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL3NlY3JldC8jdGxzLXNlY3JldHNcbiAqL1xuZXhwb3J0IGNsYXNzIFRsc1NlY3JldCBleHRlbmRzIFNlY3JldCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVGxzU2VjcmV0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6ICdrdWJlcm5ldGVzLmlvL3RscycsXG4gICAgICBzdHJpbmdEYXRhOiB7XG4gICAgICAgICd0bHMuY3J0JzogcHJvcHMudGxzQ2VydCxcbiAgICAgICAgJ3Rscy5rZXknOiBwcm9wcy50bHNLZXksXG4gICAgICB9LFxuICAgICAgaW1tdXRhYmxlOiBwcm9wcy5pbW11dGFibGUsXG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgRG9ja2VyQ29uZmlnU2VjcmV0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEb2NrZXJDb25maWdTZWNyZXRQcm9wcyBleHRlbmRzIENvbW1vblNlY3JldFByb3BzIHtcbiAgLyoqXG4gICAqIEpTT04gY29udGVudCB0byBwcm92aWRlIGZvciB0aGUgYH4vLmRvY2tlci9jb25maWcuanNvbmAgZmlsZS4gVGhpcyB3aWxsXG4gICAqIGJlIHN0cmluZ2lmaWVkIGFuZCBpbnNlcnRlZCBhcyBzdHJpbmdEYXRhLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5kb2NrZXIuY29tL2VuZ2luZS9yZWZlcmVuY2UvY29tbWFuZGxpbmUvY2xpLyNzYW1wbGUtY29uZmlndXJhdGlvbi1maWxlXG4gICAqL1xuICByZWFkb25seSBkYXRhOiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIHNlY3JldCBmb3Igc3RvcmluZyBjcmVkZW50aWFscyBmb3IgYWNjZXNzaW5nIGEgY29udGFpbmVyIGltYWdlXG4gKiByZWdpc3RyeS5cbiAqXG4gKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vc2VjcmV0LyNkb2NrZXItY29uZmlnLXNlY3JldHNcbiAqL1xuZXhwb3J0IGNsYXNzIERvY2tlckNvbmZpZ1NlY3JldCBleHRlbmRzIFNlY3JldCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRG9ja2VyQ29uZmlnU2VjcmV0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6ICdrdWJlcm5ldGVzLmlvL2RvY2tlcmNvbmZpZ2pzb24nLFxuICAgICAgc3RyaW5nRGF0YToge1xuICAgICAgICAnLmRvY2tlcmNvbmZpZ2pzb24nOiBKU09OLnN0cmluZ2lmeShwcm9wcy5kYXRhKSxcbiAgICAgIH0sXG4gICAgICBpbW11dGFibGU6IHByb3BzLmltbXV0YWJsZSxcbiAgICAgIG1ldGFkYXRhOiBwcm9wcy5tZXRhZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
184
|
+
DockerConfigSecret[_f] = { fqn: "cdk8s-plus-31.DockerConfigSecret", version: "2.0.7" };
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjcmV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NlY3JldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLDJDQUF1QztBQUN2QywrQkFBK0I7QUFDL0IsMkNBQWtFO0FBQ2xFLHFDQUFxQztBQWdFckMsTUFBTSxjQUFlLFNBQVEsc0JBQVM7SUFNcEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxJQUFZO1FBQ3BELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFISCxpQkFBWSxHQUFHLFNBQVMsQ0FBQztRQUl2QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDbkIsT0FBTyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVcsUUFBUTtRQUNqQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sUUFBUSxDQUFDLEdBQVcsRUFBRSxPQUFtQztRQUM5RCxPQUFPLG9CQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNsRSxDQUFDO0NBRUY7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBYSxNQUFPLFNBQVEsSUFBSSxDQUFDLFFBQVE7SUFFdkM7O09BRUc7SUFDSSxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLElBQVk7UUFD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RztBQUNILE1BQWEsU0FBVSxTQUFRLE1BQU07SUFDbkMsWUFBbUIsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBcUI7UUFDcEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsbUJBQW1CO1lBQ3pCLFVBQVUsRUFBRTtnQkFDVixTQUFTLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3hCLFNBQVMsRUFBRSxLQUFLLENBQUMsTUFBTTthQUN4QjtZQUNELFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVE7U0FDekIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFYSCw4QkFZQzs7O0FBZUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGtCQUFtQixTQUFRLE1BQU07SUFDNUMsWUFBbUIsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBOEI7UUFDN0UsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsZ0NBQWdDO1lBQ3RDLFVBQVUsRUFBRTtnQkFDVixtQkFBbUIsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7YUFDaEQ7WUFDRCxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVM7WUFDMUIsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1NBQ3pCLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBVkgsZ0RBV0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcGlPYmplY3QgfSBmcm9tICdjZGs4cyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCAqIGFzIGJhc2UgZnJvbSAnLi9iYXNlJztcbmltcG9ydCB7IEVudlZhbHVlLCBFbnZWYWx1ZUZyb21TZWNyZXRPcHRpb25zIH0gZnJvbSAnLi9jb250YWluZXInO1xuaW1wb3J0ICogYXMgazhzIGZyb20gJy4vaW1wb3J0cy9rOHMnO1xuaW1wb3J0ICogYXMgc2VydmljZWFjY291bnQgZnJvbSAnLi9zZXJ2aWNlLWFjY291bnQnO1xuXG4vKipcbiAqIENvbW1vbiBwcm9wZXJ0aWVzIGZvciBgU2VjcmV0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21tb25TZWNyZXRQcm9wcyBleHRlbmRzIGJhc2UuUmVzb3VyY2VQcm9wcyB7XG5cbiAgLyoqXG4gICAqIElmIHNldCB0byB0cnVlLCBlbnN1cmVzIHRoYXQgZGF0YSBzdG9yZWQgaW4gdGhlIFNlY3JldCBjYW5ub3QgYmUgdXBkYXRlZCAob25seSBvYmplY3QgbWV0YWRhdGEgY2FuIGJlIG1vZGlmaWVkKS5cbiAgICogSWYgbm90IHNldCB0byB0cnVlLCB0aGUgZmllbGQgY2FuIGJlIG1vZGlmaWVkIGF0IGFueSB0aW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgaW1tdXRhYmxlPzogYm9vbGVhbjtcblxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBTZWNyZXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3JldFByb3BzIGV4dGVuZHMgQ29tbW9uU2VjcmV0UHJvcHMge1xuICAvKipcbiAgICogc3RyaW5nRGF0YSBhbGxvd3Mgc3BlY2lmeWluZyBub24tYmluYXJ5IHNlY3JldCBkYXRhIGluIHN0cmluZyBmb3JtLiBJdCBpc1xuICAgKiBwcm92aWRlZCBhcyBhIHdyaXRlLW9ubHkgY29udmVuaWVuY2UgbWV0aG9kLiBBbGwga2V5cyBhbmQgdmFsdWVzIGFyZSBtZXJnZWRcbiAgICogaW50byB0aGUgZGF0YSBmaWVsZCBvbiB3cml0ZSwgb3ZlcndyaXRpbmcgYW55IGV4aXN0aW5nIHZhbHVlcy4gSXQgaXMgbmV2ZXJcbiAgICogb3V0cHV0IHdoZW4gcmVhZGluZyBmcm9tIHRoZSBBUEkuXG4gICAqL1xuICByZWFkb25seSBzdHJpbmdEYXRhPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgdHlwZSBhc3NvY2lhdGVkIHdpdGggdGhlIHNlY3JldC4gIFVzZWQgdG8gZmFjaWxpdGF0ZSBwcm9ncmFtbWF0aWNcbiAgICogaGFuZGxpbmcgb2Ygc2VjcmV0IGRhdGEgYnkgdmFyaW91cyBjb250cm9sbGVycy5cbiAgICpcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkIC0gRG9uJ3Qgc2V0IGEgdHlwZS5cbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBzdHJpbmc7XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2VjcmV0IGV4dGVuZHMgYmFzZS5JUmVzb3VyY2Uge1xuICAvKipcbiAgICogUmV0dXJucyBFbnZWYWx1ZSBvYmplY3QgZnJvbSBhIHNlY3JldCdzIGtleS5cbiAgICogQHBhcmFtIGtleSBTZWNyZXQncyBrZXlcbiAgICogQHBhcmFtIG9wdGlvbnMgQWRkaXRpb25hbCBFbnZWYWx1ZSBvcHRpb25zXG4gICAqL1xuICBlbnZWYWx1ZShrZXk6IHN0cmluZywgb3B0aW9ucz86IEVudlZhbHVlRnJvbVNlY3JldE9wdGlvbnMpOiBFbnZWYWx1ZTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc3BlY2lmaWMgdmFsdWUgaW4gSlNPTiBzZWNyZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VjcmV0VmFsdWUge1xuICAvKipcbiAgICogVGhlIHNlY3JldFxuICAgKi9cbiAgcmVhZG9ubHkgc2VjcmV0OiBJU2VjcmV0O1xuXG4gIC8qKlxuICAgKiBUaGUgSlNPTiBrZXlcbiAgICovXG4gIHJlYWRvbmx5IGtleTogc3RyaW5nO1xufVxuXG5jbGFzcyBJbXBvcnRlZFNlY3JldCBleHRlbmRzIENvbnN0cnVjdCBpbXBsZW1lbnRzIElTZWNyZXQge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25hbWU6IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ3NlY3JldHMnO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5fbmFtZSA9IG5hbWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fbmFtZTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBpVmVyc2lvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBrOHMuS3ViZVNlY3JldC5HVksuYXBpVmVyc2lvbjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYXBpR3JvdXAoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGtpbmQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gazhzLkt1YmVTZWNyZXQuR1ZLLmtpbmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxuICBwdWJsaWMgZW52VmFsdWUoa2V5OiBzdHJpbmcsIG9wdGlvbnM/OiBFbnZWYWx1ZUZyb21TZWNyZXRPcHRpb25zKTogRW52VmFsdWUge1xuICAgIHJldHVybiBFbnZWYWx1ZS5mcm9tU2VjcmV0VmFsdWUoeyBzZWNyZXQ6IHRoaXMsIGtleSB9LCBvcHRpb25zKTtcbiAgfVxuXG59XG5cbi8qKlxuICogS3ViZXJuZXRlcyBTZWNyZXRzIGxldCB5b3Ugc3RvcmUgYW5kIG1hbmFnZSBzZW5zaXRpdmUgaW5mb3JtYXRpb24sIHN1Y2ggYXNcbiAqIHBhc3N3b3JkcywgT0F1dGggdG9rZW5zLCBhbmQgc3NoIGtleXMuIFN0b3JpbmcgY29uZmlkZW50aWFsIGluZm9ybWF0aW9uIGluIGFcbiAqIFNlY3JldCBpcyBzYWZlciBhbmQgbW9yZSBmbGV4aWJsZSB0aGFuIHB1dHRpbmcgaXQgdmVyYmF0aW0gaW4gYSBQb2RcbiAqIGRlZmluaXRpb24gb3IgaW4gYSBjb250YWluZXIgaW1hZ2UuXG4gKlxuICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL3NlY3JldFxuICovXG5leHBvcnQgY2xhc3MgU2VjcmV0IGV4dGVuZHMgYmFzZS5SZXNvdXJjZSBpbXBsZW1lbnRzIElTZWNyZXQge1xuXG4gIC8qKlxuICAgKiBJbXBvcnRzIGEgc2VjcmV0IGZyb20gdGhlIGNsdXN0ZXIgYXMgYSByZWZlcmVuY2UuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TZWNyZXROYW1lKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IElTZWNyZXQge1xuICAgIHJldHVybiBuZXcgSW1wb3J0ZWRTZWNyZXQoc2NvcGUsIGlkLCBuYW1lKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGJhc2UuUmVzb3VyY2UuYXBpT2JqZWN0XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBpT2JqZWN0OiBBcGlPYmplY3Q7XG5cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlVHlwZSA9ICdzZWNyZXRzJztcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIHNlY3JldCBpcyBpbW11dGFibGUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaW1tdXRhYmxlOiBib29sZWFuO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgc3RyaW5nRGF0YTogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICBwdWJsaWMgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNlY3JldFByb3BzID0geyB9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuc3RyaW5nRGF0YSA9IHByb3BzLnN0cmluZ0RhdGEgPz8ge307XG5cbiAgICB0aGlzLmltbXV0YWJsZSA9IHByb3BzLmltbXV0YWJsZSA/PyBmYWxzZTtcbiAgICB0aGlzLmFwaU9iamVjdCA9IG5ldyBrOHMuS3ViZVNlY3JldCh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgICB0eXBlOiBwcm9wcy50eXBlLFxuICAgICAgc3RyaW5nRGF0YTogdGhpcy5zdHJpbmdEYXRhLFxuICAgICAgaW1tdXRhYmxlOiB0aGlzLmltbXV0YWJsZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgc3RyaW5nIGRhdGEgZmllbGQgdG8gdGhlIHNlY3JldC5cbiAgICogQHBhcmFtIGtleSBLZXlcbiAgICogQHBhcmFtIHZhbHVlIFZhbHVlXG4gICAqL1xuICBwdWJsaWMgYWRkU3RyaW5nRGF0YShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuc3RyaW5nRGF0YVtrZXldID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhIHN0cmluZyBkYXRhIGJ5IGtleSBvciB1bmRlZmluZWRcbiAgICogQHBhcmFtIGtleSBLZXlcbiAgICovXG4gIHB1YmxpYyBnZXRTdHJpbmdEYXRhKGtleTogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5zdHJpbmdEYXRhW2tleV07XG4gIH1cblxuICBwdWJsaWMgZW52VmFsdWUoa2V5OiBzdHJpbmcsIG9wdGlvbnM/OiBFbnZWYWx1ZUZyb21TZWNyZXRPcHRpb25zKTogRW52VmFsdWUge1xuICAgIHJldHVybiBFbnZWYWx1ZS5mcm9tU2VjcmV0VmFsdWUoeyBzZWNyZXQ6IHRoaXMsIGtleSB9LCBvcHRpb25zKTtcbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBCYXNpY0F1dGhTZWNyZXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhc2ljQXV0aFNlY3JldFByb3BzIGV4dGVuZHMgQ29tbW9uU2VjcmV0UHJvcHMge1xuICAvKipcbiAgICogVGhlIHVzZXIgbmFtZSBmb3IgYXV0aGVudGljYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHVzZXJuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXNzd29yZCBvciB0b2tlbiBmb3IgYXV0aGVudGljYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHBhc3N3b3JkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgc2VjcmV0IGZvciBiYXNpYyBhdXRoZW50aWNhdGlvbi5cbiAqXG4gKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL2NvbmZpZ3VyYXRpb24vc2VjcmV0LyNiYXNpYy1hdXRoZW50aWNhdGlvbi1zZWNyZXRcbiAqL1xuZXhwb3J0IGNsYXNzIEJhc2ljQXV0aFNlY3JldCBleHRlbmRzIFNlY3JldCB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQmFzaWNBdXRoU2VjcmV0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6ICdrdWJlcm5ldGVzLmlvL2Jhc2ljLWF1dGgnLFxuICAgICAgc3RyaW5nRGF0YToge1xuICAgICAgICB1c2VybmFtZTogcHJvcHMudXNlcm5hbWUsXG4gICAgICAgIHBhc3N3b3JkOiBwcm9wcy5wYXNzd29yZCxcbiAgICAgIH0sXG4gICAgICBpbW11dGFibGU6IHByb3BzLmltbXV0YWJsZSxcbiAgICAgIG1ldGFkYXRhOiBwcm9wcy5tZXRhZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBTc2hBdXRoU2VjcmV0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTc2hBdXRoU2VjcmV0UHJvcHMgZXh0ZW5kcyBDb21tb25TZWNyZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgU1NIIHByaXZhdGUga2V5IHRvIHVzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3NoUHJpdmF0ZUtleTogc3RyaW5nO1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIHNlY3JldCBmb3Igc3NoIGF1dGhlbnRpY2F0aW9uLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9zZWNyZXQvI3NzaC1hdXRoZW50aWNhdGlvbi1zZWNyZXRzXG4gKi9cbmV4cG9ydCBjbGFzcyBTc2hBdXRoU2VjcmV0IGV4dGVuZHMgU2VjcmV0IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTc2hBdXRoU2VjcmV0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6ICdrdWJlcm5ldGVzLmlvL3NzaC1hdXRoJyxcbiAgICAgIHN0cmluZ0RhdGE6IHtcbiAgICAgICAgJ3NzaC1wcml2YXRla2V5JzogcHJvcHMuc3NoUHJpdmF0ZUtleSxcbiAgICAgIH0sXG4gICAgICBpbW11dGFibGU6IHByb3BzLmltbXV0YWJsZSxcbiAgICAgIG1ldGFkYXRhOiBwcm9wcy5tZXRhZGF0YSxcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBTZXJ2aWNlQWNjb3VudFRva2VuU2VjcmV0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlQWNjb3VudFRva2VuU2VjcmV0UHJvcHMgZXh0ZW5kcyBDb21tb25TZWNyZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgc2VydmljZSBhY2NvdW50IHRvIHN0b3JlIGEgc2VjcmV0IGZvclxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZUFjY291bnQ6IHNlcnZpY2VhY2NvdW50LklTZXJ2aWNlQWNjb3VudDtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBzZWNyZXQgZm9yIGEgc2VydmljZSBhY2NvdW50IHRva2VuLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9zZWNyZXQvI3NlcnZpY2UtYWNjb3VudC10b2tlbi1zZWNyZXRzXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlQWNjb3VudFRva2VuU2VjcmV0IGV4dGVuZHMgU2VjcmV0IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTZXJ2aWNlQWNjb3VudFRva2VuU2VjcmV0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6ICdrdWJlcm5ldGVzLmlvL3NlcnZpY2UtYWNjb3VudC10b2tlbicsXG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgICBpbW11dGFibGU6IHByb3BzLmltbXV0YWJsZSxcbiAgICB9KTtcblxuICAgIHRoaXMubWV0YWRhdGEuYWRkQW5ub3RhdGlvbigna3ViZXJuZXRlcy5pby9zZXJ2aWNlLWFjY291bnQubmFtZScsIHByb3BzLnNlcnZpY2VBY2NvdW50Lm5hbWUpO1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFRsc1NlY3JldGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGxzU2VjcmV0UHJvcHMgZXh0ZW5kcyBDb21tb25TZWNyZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgVExTIGNlcnRcbiAgICovXG4gIHJlYWRvbmx5IHRsc0NlcnQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFRMUyBrZXlcbiAgICovXG4gIHJlYWRvbmx5IHRsc0tleTogc3RyaW5nO1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIHNlY3JldCBmb3Igc3RvcmluZyBhIFRMUyBjZXJ0aWZpY2F0ZSBhbmQgaXRzIGFzc29jaWF0ZWQga2V5LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9zZWNyZXQvI3Rscy1zZWNyZXRzXG4gKi9cbmV4cG9ydCBjbGFzcyBUbHNTZWNyZXQgZXh0ZW5kcyBTZWNyZXQge1xuICBwdWJsaWMgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFRsc1NlY3JldFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiAna3ViZXJuZXRlcy5pby90bHMnLFxuICAgICAgc3RyaW5nRGF0YToge1xuICAgICAgICAndGxzLmNydCc6IHByb3BzLnRsc0NlcnQsXG4gICAgICAgICd0bHMua2V5JzogcHJvcHMudGxzS2V5LFxuICAgICAgfSxcbiAgICAgIGltbXV0YWJsZTogcHJvcHMuaW1tdXRhYmxlLFxuICAgICAgbWV0YWRhdGE6IHByb3BzLm1ldGFkYXRhLFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYERvY2tlckNvbmZpZ1NlY3JldGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRG9ja2VyQ29uZmlnU2VjcmV0UHJvcHMgZXh0ZW5kcyBDb21tb25TZWNyZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBKU09OIGNvbnRlbnQgdG8gcHJvdmlkZSBmb3IgdGhlIGB+Ly5kb2NrZXIvY29uZmlnLmpzb25gIGZpbGUuIFRoaXMgd2lsbFxuICAgKiBiZSBzdHJpbmdpZmllZCBhbmQgaW5zZXJ0ZWQgYXMgc3RyaW5nRGF0YS5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZG9ja2VyLmNvbS9lbmdpbmUvcmVmZXJlbmNlL2NvbW1hbmRsaW5lL2NsaS8jc2FtcGxlLWNvbmZpZ3VyYXRpb24tZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YTogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBzZWNyZXQgZm9yIHN0b3JpbmcgY3JlZGVudGlhbHMgZm9yIGFjY2Vzc2luZyBhIGNvbnRhaW5lciBpbWFnZVxuICogcmVnaXN0cnkuXG4gKlxuICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9jb25jZXB0cy9jb25maWd1cmF0aW9uL3NlY3JldC8jZG9ja2VyLWNvbmZpZy1zZWNyZXRzXG4gKi9cbmV4cG9ydCBjbGFzcyBEb2NrZXJDb25maWdTZWNyZXQgZXh0ZW5kcyBTZWNyZXQge1xuICBwdWJsaWMgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERvY2tlckNvbmZpZ1NlY3JldFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiAna3ViZXJuZXRlcy5pby9kb2NrZXJjb25maWdqc29uJyxcbiAgICAgIHN0cmluZ0RhdGE6IHtcbiAgICAgICAgJy5kb2NrZXJjb25maWdqc29uJzogSlNPTi5zdHJpbmdpZnkocHJvcHMuZGF0YSksXG4gICAgICB9LFxuICAgICAgaW1tdXRhYmxlOiBwcm9wcy5pbW11dGFibGUsXG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
package/lib/service-account.js
CHANGED
|
@@ -52,6 +52,14 @@ class ImportedServiceAccount extends constructs_1.Construct {
|
|
|
52
52
|
* @see https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account
|
|
53
53
|
*/
|
|
54
54
|
class ServiceAccount extends base.Resource {
|
|
55
|
+
/**
|
|
56
|
+
* Imports a service account from the cluster as a reference.
|
|
57
|
+
* @param name The name of the service account resource.
|
|
58
|
+
* @param options additional options.
|
|
59
|
+
*/
|
|
60
|
+
static fromServiceAccountName(scope, id, name, options = {}) {
|
|
61
|
+
return new ImportedServiceAccount(scope, id, name, options);
|
|
62
|
+
}
|
|
55
63
|
constructor(scope, id, props = {}) {
|
|
56
64
|
super(scope, id);
|
|
57
65
|
this.resourceType = 'serviceaccounts';
|
|
@@ -59,18 +67,10 @@ class ServiceAccount extends base.Resource {
|
|
|
59
67
|
this.automountToken = props.automountToken ?? false;
|
|
60
68
|
this.apiObject = new k8s.KubeServiceAccount(this, 'Resource', {
|
|
61
69
|
metadata: props.metadata,
|
|
62
|
-
secrets: cdk8s_1.Lazy.any({ produce: () => utils_1.undefinedIfEmpty(this._secrets.map(s => ({ name: s.name }))) }),
|
|
70
|
+
secrets: cdk8s_1.Lazy.any({ produce: () => (0, utils_1.undefinedIfEmpty)(this._secrets.map(s => ({ name: s.name }))) }),
|
|
63
71
|
automountServiceAccountToken: this.automountToken,
|
|
64
72
|
});
|
|
65
73
|
}
|
|
66
|
-
/**
|
|
67
|
-
* Imports a service account from the cluster as a reference.
|
|
68
|
-
* @param name The name of the service account resource.
|
|
69
|
-
* @param options additional options.
|
|
70
|
-
*/
|
|
71
|
-
static fromServiceAccountName(scope, id, name, options = {}) {
|
|
72
|
-
return new ImportedServiceAccount(scope, id, name, options);
|
|
73
|
-
}
|
|
74
74
|
/**
|
|
75
75
|
* Allow a secret to be accessed by pods using this service account.
|
|
76
76
|
* @param secr The secret
|
|
@@ -101,5 +101,5 @@ class ServiceAccount extends base.Resource {
|
|
|
101
101
|
}
|
|
102
102
|
exports.ServiceAccount = ServiceAccount;
|
|
103
103
|
_a = JSII_RTTI_SYMBOL_1;
|
|
104
|
-
ServiceAccount[_a] = { fqn: "cdk8s-plus-31.ServiceAccount", version: "2.0.
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
ServiceAccount[_a] = { fqn: "cdk8s-plus-31.ServiceAccount", version: "2.0.7" };
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1hY2NvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NlcnZpY2UtYWNjb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGlDQUF3QztBQUN4QywyQ0FBdUM7QUFDdkMsK0JBQStCO0FBQy9CLHFDQUFxQztBQUdyQyxtQ0FBMkM7QUF1QzNDLE1BQU0sc0JBQXVCLFNBQVEsc0JBQVM7SUFPNUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxJQUFZLEVBQUUsVUFBeUMsRUFBRTtRQUNqRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBSEgsaUJBQVksR0FBRyxpQkFBaUIsQ0FBQztRQUkvQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksU0FBUyxDQUFDO0lBQzNELENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDL0IsQ0FBQztJQUNKLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDO0lBQy9DLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsSUFBVyxJQUFJO1FBQ2IsT0FBTyxHQUFHLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0NBRUY7QUFFRDs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQWEsY0FBZSxTQUFRLElBQUksQ0FBQyxRQUFRO0lBRS9DOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsc0JBQXNCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsSUFBWSxFQUFFLFVBQXlDLEVBQUU7UUFDMUgsT0FBTyxJQUFJLHNCQUFzQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFpQkQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUE2QixFQUFHO1FBQ3hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFYSCxpQkFBWSxHQUFHLGlCQUFpQixDQUFDO1FBYS9DLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxJQUFJLEtBQUssQ0FBQztRQUVwRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDNUQsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLE9BQU8sRUFBRSxZQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUEsd0JBQWdCLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2xHLDRCQUE0QixFQUFFLElBQUksQ0FBQyxjQUFjO1NBQ2xELENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxTQUFTLENBQUMsSUFBb0I7UUFDbkMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxzQkFBc0I7UUFDM0IsT0FBTztZQUNMLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTO1NBQ25DLENBQUM7SUFDSixDQUFDOztBQW5FSCx3Q0FxRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBcGlPYmplY3QsIExhenkgfSBmcm9tICdjZGs4cyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCAqIGFzIGJhc2UgZnJvbSAnLi9iYXNlJztcbmltcG9ydCAqIGFzIGs4cyBmcm9tICcuL2ltcG9ydHMvazhzJztcbmltcG9ydCAqIGFzIHJiIGZyb20gJy4vcm9sZS1iaW5kaW5nJztcbmltcG9ydCAqIGFzIHNlY3JldCBmcm9tICcuL3NlY3JldCc7XG5pbXBvcnQgeyB1bmRlZmluZWRJZkVtcHR5IH0gZnJvbSAnLi91dGlscyc7XG5cblxuZXhwb3J0IGludGVyZmFjZSBJU2VydmljZUFjY291bnQgZXh0ZW5kcyBiYXNlLklSZXNvdXJjZSwgcmIuSVN1YmplY3Qge1xuXG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgaW5pdGlhbGl6YXRpb24gb2YgYFNlcnZpY2VBY2NvdW50YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlQWNjb3VudFByb3BzIGV4dGVuZHMgYmFzZS5SZXNvdXJjZVByb3BzIHtcbiAgLyoqXG4gICAqIExpc3Qgb2Ygc2VjcmV0cyBhbGxvd2VkIHRvIGJlIHVzZWQgYnkgcG9kcyBydW5uaW5nIHVzaW5nIHRoaXNcbiAgICogU2VydmljZUFjY291bnQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9rdWJlcm5ldGVzLmlvL2RvY3MvY29uY2VwdHMvY29uZmlndXJhdGlvbi9zZWNyZXRcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldHM/OiBzZWNyZXQuSVNlY3JldFtdO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciBwb2RzIHJ1bm5pbmcgYXMgdGhpcyBzZXJ2aWNlIGFjY291bnRcbiAgICogc2hvdWxkIGhhdmUgYW4gQVBJIHRva2VuIGF1dG9tYXRpY2FsbHkgbW91bnRlZC4gQ2FuIGJlIG92ZXJyaWRkZW4gYXQgdGhlIHBvZCBsZXZlbC5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy90YXNrcy9jb25maWd1cmUtcG9kLWNvbnRhaW5lci9jb25maWd1cmUtc2VydmljZS1hY2NvdW50LyN1c2UtdGhlLWRlZmF1bHQtc2VydmljZS1hY2NvdW50LXRvLWFjY2Vzcy10aGUtYXBpLXNlcnZlclxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b21vdW50VG9rZW4/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZyb21TZXJ2aWNlQWNjb3VudE5hbWVPcHRpb25zIHtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG5hbWVzcGFjZSB0aGUgc2VydmljZSBhY2NvdW50IGJlbG9uZ3MgdG8uXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiZGVmYXVsdFwiXG4gICAqL1xuICByZWFkb25seSBuYW1lc3BhY2VOYW1lPzogc3RyaW5nO1xufVxuXG5jbGFzcyBJbXBvcnRlZFNlcnZpY2VBY2NvdW50IGV4dGVuZHMgQ29uc3RydWN0IGltcGxlbWVudHMgSVNlcnZpY2VBY2NvdW50IHtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uYW1lOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgX25hbWVzcGFjZU5hbWU6IHN0cmluZztcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ3NlcnZpY2VhY2NvdW50cyc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCBvcHRpb25zOiBGcm9tU2VydmljZUFjY291bnROYW1lT3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLl9uYW1lID0gbmFtZTtcbiAgICB0aGlzLl9uYW1lc3BhY2VOYW1lID0gb3B0aW9ucy5uYW1lc3BhY2VOYW1lID8/ICdkZWZhdWx0JztcbiAgfVxuXG4gIHB1YmxpYyB0b1N1YmplY3RDb25maWd1cmF0aW9uKCk6IHJiLlN1YmplY3RDb25maWd1cmF0aW9uIHtcbiAgICByZXR1cm4ge1xuICAgICAga2luZDogdGhpcy5raW5kLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgYXBpR3JvdXA6IHRoaXMuYXBpR3JvdXAsXG4gICAgICBuYW1lc3BhY2U6IHRoaXMuX25hbWVzcGFjZU5hbWUsXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9uYW1lO1xuICB9XG5cbiAgcHVibGljIGdldCBhcGlWZXJzaW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGs4cy5LdWJlU2VydmljZUFjY291bnQuR1ZLLmFwaVZlcnNpb247XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFwaUdyb3VwKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgcHVibGljIGdldCBraW5kKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGs4cy5LdWJlU2VydmljZUFjY291bnQuR1ZLLmtpbmQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHJlc291cmNlTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWU7XG4gIH1cblxufVxuXG4vKipcbiAqIEEgc2VydmljZSBhY2NvdW50IHByb3ZpZGVzIGFuIGlkZW50aXR5IGZvciBwcm9jZXNzZXMgdGhhdCBydW4gaW4gYSBQb2QuXG4gKlxuICogV2hlbiB5b3UgKGEgaHVtYW4pIGFjY2VzcyB0aGUgY2x1c3RlciAoZm9yIGV4YW1wbGUsIHVzaW5nIGt1YmVjdGwpLCB5b3UgYXJlXG4gKiBhdXRoZW50aWNhdGVkIGJ5IHRoZSBhcGlzZXJ2ZXIgYXMgYSBwYXJ0aWN1bGFyIFVzZXIgQWNjb3VudCAoY3VycmVudGx5IHRoaXNcbiAqIGlzIHVzdWFsbHkgYWRtaW4sIHVubGVzcyB5b3VyIGNsdXN0ZXIgYWRtaW5pc3RyYXRvciBoYXMgY3VzdG9taXplZCB5b3VyXG4gKiBjbHVzdGVyKS4gUHJvY2Vzc2VzIGluIGNvbnRhaW5lcnMgaW5zaWRlIHBvZHMgY2FuIGFsc28gY29udGFjdCB0aGUgYXBpc2VydmVyLlxuICogV2hlbiB0aGV5IGRvLCB0aGV5IGFyZSBhdXRoZW50aWNhdGVkIGFzIGEgcGFydGljdWxhciBTZXJ2aWNlIEFjY291bnQgKGZvclxuICogZXhhbXBsZSwgZGVmYXVsdCkuXG4gKlxuICogQHNlZSBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy90YXNrcy9jb25maWd1cmUtcG9kLWNvbnRhaW5lci9jb25maWd1cmUtc2VydmljZS1hY2NvdW50XG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlQWNjb3VudCBleHRlbmRzIGJhc2UuUmVzb3VyY2UgaW1wbGVtZW50cyBJU2VydmljZUFjY291bnQsIHJiLklTdWJqZWN0IHtcblxuICAvKipcbiAgICogSW1wb3J0cyBhIHNlcnZpY2UgYWNjb3VudCBmcm9tIHRoZSBjbHVzdGVyIGFzIGEgcmVmZXJlbmNlLlxuICAgKiBAcGFyYW0gbmFtZSBUaGUgbmFtZSBvZiB0aGUgc2VydmljZSBhY2NvdW50IHJlc291cmNlLlxuICAgKiBAcGFyYW0gb3B0aW9ucyBhZGRpdGlvbmFsIG9wdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21TZXJ2aWNlQWNjb3VudE5hbWUoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nLCBvcHRpb25zOiBGcm9tU2VydmljZUFjY291bnROYW1lT3B0aW9ucyA9IHt9KTogSVNlcnZpY2VBY2NvdW50IHtcbiAgICByZXR1cm4gbmV3IEltcG9ydGVkU2VydmljZUFjY291bnQoc2NvcGUsIGlkLCBuYW1lLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAc2VlIGJhc2UuUmVzb3VyY2UuYXBpT2JqZWN0XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBpT2JqZWN0OiBBcGlPYmplY3Q7XG5cbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlVHlwZSA9ICdzZXJ2aWNlYWNjb3VudHMnO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3NlY3JldHM6IHNlY3JldC5JU2VjcmV0W107XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IGEgdG9rZW4gaXMgYXV0b21hdGljYWxseSBtb3VudGVkIGZvciB0aGlzXG4gICAqIHNlcnZpY2UgYWNjb3VudC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdXRvbW91bnRUb2tlbjogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2VydmljZUFjY291bnRQcm9wcyA9IHsgfSkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLl9zZWNyZXRzID0gcHJvcHMuc2VjcmV0cyA/PyBbXTtcbiAgICB0aGlzLmF1dG9tb3VudFRva2VuID0gcHJvcHMuYXV0b21vdW50VG9rZW4gPz8gZmFsc2U7XG5cbiAgICB0aGlzLmFwaU9iamVjdCA9IG5ldyBrOHMuS3ViZVNlcnZpY2VBY2NvdW50KHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG1ldGFkYXRhOiBwcm9wcy5tZXRhZGF0YSxcbiAgICAgIHNlY3JldHM6IExhenkuYW55KHsgcHJvZHVjZTogKCkgPT4gdW5kZWZpbmVkSWZFbXB0eSh0aGlzLl9zZWNyZXRzLm1hcChzID0+ICh7IG5hbWU6IHMubmFtZSB9KSkpIH0pLFxuICAgICAgYXV0b21vdW50U2VydmljZUFjY291bnRUb2tlbjogdGhpcy5hdXRvbW91bnRUb2tlbixcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvdyBhIHNlY3JldCB0byBiZSBhY2Nlc3NlZCBieSBwb2RzIHVzaW5nIHRoaXMgc2VydmljZSBhY2NvdW50LlxuICAgKiBAcGFyYW0gc2VjciBUaGUgc2VjcmV0XG4gICAqL1xuICBwdWJsaWMgYWRkU2VjcmV0KHNlY3I6IHNlY3JldC5JU2VjcmV0KSB7XG4gICAgdGhpcy5fc2VjcmV0cy5wdXNoKHNlY3IpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2Ygc2VjcmV0cyBhbGxvd2VkIHRvIGJlIHVzZWQgYnkgcG9kcyBydW5uaW5nIHVzaW5nIHRoaXMgc2VydmljZVxuICAgKiBhY2NvdW50LlxuICAgKlxuICAgKiBSZXR1cm5zIGEgY29weS4gVG8gYWRkIGEgc2VjcmV0LCB1c2UgYGFkZFNlY3JldCgpYC5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2VjcmV0cygpIHtcbiAgICByZXR1cm4gWy4uLnRoaXMuX3NlY3JldHNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEBzZWUgSVN1YmVjdC50b1N1YmplY3RDb25maWd1cmF0aW9uKClcbiAgICovXG4gIHB1YmxpYyB0b1N1YmplY3RDb25maWd1cmF0aW9uKCk6IHJiLlN1YmplY3RDb25maWd1cmF0aW9uIHtcbiAgICByZXR1cm4ge1xuICAgICAga2luZDogdGhpcy5raW5kLFxuICAgICAgbmFtZTogdGhpcy5uYW1lLFxuICAgICAgYXBpR3JvdXA6IHRoaXMuYXBpR3JvdXAsXG4gICAgICBuYW1lc3BhY2U6IHRoaXMubWV0YWRhdGEubmFtZXNwYWNlLFxuICAgIH07XG4gIH1cblxufSJdfQ==
|
package/lib/service.js
CHANGED
|
@@ -41,7 +41,7 @@ var ServiceType;
|
|
|
41
41
|
* > Note: You need either kube-dns version 1.7 or CoreDNS version 0.0.8 or higher to use the ExternalName type.
|
|
42
42
|
*/
|
|
43
43
|
ServiceType["EXTERNAL_NAME"] = "ExternalName";
|
|
44
|
-
})(ServiceType
|
|
44
|
+
})(ServiceType || (exports.ServiceType = ServiceType = {}));
|
|
45
45
|
/**
|
|
46
46
|
* An abstract way to expose an application running on a set of Pods as a network service.
|
|
47
47
|
* With Kubernetes you don't need to modify your application to use an unfamiliar service discovery mechanism.
|
|
@@ -178,5 +178,5 @@ class Service extends base.Resource {
|
|
|
178
178
|
}
|
|
179
179
|
exports.Service = Service;
|
|
180
180
|
_a = JSII_RTTI_SYMBOL_1;
|
|
181
|
-
Service[_a] = { fqn: "cdk8s-plus-31.Service", version: "2.0.
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaUNBQXdDO0FBRXhDLCtCQUErQjtBQUUvQixxQ0FBcUM7QUFDckMscUNBQXFDO0FBMkhyQzs7Ozs7R0FLRztBQUNILElBQVksV0ErQlg7QUEvQkQsV0FBWSxXQUFXO0lBRXJCOzs7O09BSUc7SUFDSCx1Q0FBd0IsQ0FBQTtJQUV4Qjs7Ozs7T0FLRztJQUNILHFDQUFzQixDQUFBO0lBRXRCOzs7O09BSUc7SUFDSCw2Q0FBOEIsQ0FBQTtJQUU5Qjs7Ozs7T0FLRztJQUNILDZDQUE4QixDQUFBO0FBQ2hDLENBQUMsRUEvQlcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUErQnRCO0FBY0Q7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQWEsT0FBUSxTQUFRLElBQUksQ0FBQyxRQUFRO0lBK0J4QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFFBQXNCLEVBQUU7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQVRILGlCQUFZLEdBQUcsVUFBVSxDQUFDO1FBV3hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDckQsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO1lBQ3hCLElBQUksRUFBRSxZQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO1NBQ2xELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUNqQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFFdkMsSUFBSSxLQUFLLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRTtZ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O1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgKiBhcyBiYXNlIGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgKiBhcyBjb250YWluZXIgZnJvbSAnLi9jb250YWluZXInO1xuaW1wb3J0ICogYXMgazhzIGZyb20gJy4vaW1wb3J0cy9rOHMnO1xuaW1wb3J0ICogYXMgaW5ncmVzcyBmcm9tICcuL2luZ3Jlc3MnO1xuaW1wb3J0ICogYXMgcG9kIGZyb20gJy4vcG9kJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBgU2VydmljZWAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZVByb3BzIGV4dGVuZHMgYmFzZS5SZXNvdXJjZVByb3BzIHtcbiAgLyoqXG4gICAqIFdoaWNoIHBvZHMgc2hvdWxkIHRoZSBzZXJ2aWNlIHNlbGVjdCBhbmQgcm91dGUgdG8uXG4gICAqXG4gICAqIFlvdSBjYW4gcGFzcyBvbmUgb2YgdGhlIGZvbGxvd2luZzpcbiAgICpcbiAgICogLSBBbiBpbnN0YW5jZSBvZiBgUG9kYCBvciBhbnkgd29ya2xvYWQgcmVzb3VyY2UgKGUuZyBgRGVwbG95bWVudGAsIGBTdGF0ZWZ1bFNldGAsIC4uLilcbiAgICogLSBQb2RzIHNlbGVjdGVkIGJ5IHRoZSBgUG9kcy5zZWxlY3RgIGZ1bmN0aW9uLiBOb3RlIHRoYXQgaW4gdGhpcyBjYXNlIG9ubHkgbGFiZWxzIGNhbiBiZSBzcGVjaWZpZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdW5zZXQsIHRoZSBzZXJ2aWNlIGlzIGFzc3VtZWQgdG8gaGF2ZSBhbiBleHRlcm5hbCBwcm9jZXNzIG1hbmFnaW5nXG4gICAqIGl0cyBlbmRwb2ludHMsIHdoaWNoIEt1YmVybmV0ZXMgd2lsbCBub3QgbW9kaWZ5LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiAvLyBzZWxlY3QgdGhlIHBvZHMgb2YgYSBzcGVjaWZpYyBkZXBsb3ltZW50XG4gICAqIGNvbnN0IGJhY2tlbmQgPSBuZXcga3BsdXMuRGVwbG95bWVudCh0aGlzLCAnQmFja2VuZCcsIC4uLik7XG4gICAqIG5ldyBrcGx1cy5TZXJ2aWNlKHRoaXMsICdTZXJ2aWNlJywgeyBzZWxlY3RvcjogYmFja2VuZCB9KTtcbiAgICpcbiAgICogLy8gc2VsZWN0IGFsbCBwb2RzIGxhYmVsZWQgd2l0aCB0aGUgYHRpZXI9YmFja2VuZGAgbGFiZWxcbiAgICogY29uc3QgYmFja2VuZCA9IGtwbHVzLlBvZC5sYWJlbGVkKHsgdGllcjogJ2JhY2tlbmQnIH0pO1xuICAgKiBuZXcga3BsdXMuU2VydmljZSh0aGlzLCAnU2VydmljZScsIHsgc2VsZWN0b3I6IGJhY2tlbmQgfSk7XG4gICAqL1xuICByZWFkb25seSBzZWxlY3Rvcj86IHBvZC5JUG9kU2VsZWN0b3I7XG5cbiAgLyoqXG4gICAqIFRoZSBJUCBhZGRyZXNzIG9mIHRoZSBzZXJ2aWNlIGFuZCBpcyB1c3VhbGx5IGFzc2lnbmVkIHJhbmRvbWx5IGJ5IHRoZVxuICAgKiBtYXN0ZXIuIElmIGFuIGFkZHJlc3MgaXMgc3BlY2lmaWVkIG1hbnVhbGx5IGFuZCBpcyBub3QgaW4gdXNlIGJ5IG90aGVycywgaXRcbiAgICogd2lsbCBiZSBhbGxvY2F0ZWQgdG8gdGhlIHNlcnZpY2U7IG90aGVyd2lzZSwgY3JlYXRpb24gb2YgdGhlIHNlcnZpY2Ugd2lsbFxuICAgKiBmYWlsLiBUaGlzIGZpZWxkIGNhbiBub3QgYmUgY2hhbmdlZCB0aHJvdWdoIHVwZGF0ZXMuIFZhbGlkIHZhbHVlcyBhcmVcbiAgICogXCJOb25lXCIsIGVtcHR5IHN0cmluZyAoXCJcIiksIG9yIGEgdmFsaWQgSVAgYWRkcmVzcy4gXCJOb25lXCIgY2FuIGJlIHNwZWNpZmllZFxuICAgKiBmb3IgaGVhZGxlc3Mgc2VydmljZXMgd2hlbiBwcm94eWluZyBpcyBub3QgcmVxdWlyZWQuIE9ubHkgYXBwbGllcyB0byB0eXBlc1xuICAgKiBDbHVzdGVySVAsIE5vZGVQb3J0LCBhbmQgTG9hZEJhbGFuY2VyLiBJZ25vcmVkIGlmIHR5cGUgaXMgRXh0ZXJuYWxOYW1lLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL3NlcnZpY2VzLW5ldHdvcmtpbmcvc2VydmljZS8jdmlydHVhbC1pcHMtYW5kLXNlcnZpY2UtcHJveGllc1xuICAgKiBAZGVmYXVsdCAtIEF1dG9tYXRpY2FsbHkgYXNzaWduZWQuXG4gICAqXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVySVA/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBJUCBhZGRyZXNzZXMgZm9yIHdoaWNoIG5vZGVzIGluIHRoZSBjbHVzdGVyIHdpbGwgYWxzbyBhY2NlcHRcbiAgICogdHJhZmZpYyBmb3IgdGhpcyBzZXJ2aWNlLiBUaGVzZSBJUHMgYXJlIG5vdCBtYW5hZ2VkIGJ5IEt1YmVybmV0ZXMuIFRoZSB1c2VyXG4gICAqIGlzIHJlc3BvbnNpYmxlIGZvciBlbnN1cmluZyB0aGF0IHRyYWZmaWMgYXJyaXZlcyBhdCBhIG5vZGUgd2l0aCB0aGlzIElQLiBBXG4gICAqIGNvbW1vbiBleGFtcGxlIGlzIGV4dGVybmFsIGxvYWQtYmFsYW5jZXJzIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZVxuICAgKiBLdWJlcm5ldGVzIHN5c3RlbS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBleHRlcm5hbCBJUHMuXG4gICAqL1xuICByZWFkb25seSBleHRlcm5hbElQcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyB0aGUgU2VydmljZSBpcyBleHBvc2VkLlxuICAgKlxuICAgKiBNb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL3NlcnZpY2VzLW5ldHdvcmtpbmcvc2VydmljZS8jcHVibGlzaGluZy1zZXJ2aWNlcy1zZXJ2aWNlLXR5cGVzXG4gICAqXG4gICAqIEBkZWZhdWx0IFNlcnZpY2VUeXBlLkNsdXN0ZXJJUFxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IFNlcnZpY2VUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9ydHMgdGhpcyBzZXJ2aWNlIGJpbmRzIHRvLlxuICAgKlxuICAgKiBJZiB0aGUgc2VsZWN0b3Igb2YgdGhlIHNlcnZpY2UgaXMgYSBtYW5hZ2VkIHBvZCAvIHdvcmtsb2FkLFxuICAgKiBpdHMgcG9ydHMgd2lsbCBhcmUgYXV0b21hdGljYWxseSBleHRyYWN0ZWQgYW5kIHVzZWQgYXMgdGhlIGRlZmF1bHQgdmFsdWUuXG4gICAqIE90aGVyd2lzZSwgbm8gcG9ydHMgYXJlIGJvdW5kLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGVpdGhlciB0aGUgc2VsZWN0b3IgcG9ydHMsIG9yIG5vbmUuXG4gICAqL1xuICByZWFkb25seSBwb3J0cz86IFNlcnZpY2VQb3J0W107XG5cbiAgLyoqXG4gICAqIFRoZSBleHRlcm5hbE5hbWUgdG8gYmUgdXNlZCB3aGVuIFNlcnZpY2VUeXBlLkVYVEVSTkFMX05BTUUgaXMgc2V0XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZXh0ZXJuYWwgbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IGV4dGVybmFsTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBsaXN0IG9mIENJRFIgSVAgYWRkcmVzc2VzLCBpZiBzcGVjaWZpZWQgYW5kIHN1cHBvcnRlZCBieSB0aGUgcGxhdGZvcm0sXG4gICAqIHdpbGwgcmVzdHJpY3QgdHJhZmZpYyB0aHJvdWdoIHRoZSBjbG91ZC1wcm92aWRlciBsb2FkLWJhbGFuY2VyIHRvIHRoZSBzcGVjaWZpZWQgY2xpZW50IElQcy5cbiAgICpcbiAgICogTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy90YXNrcy9hY2Nlc3MtYXBwbGljYXRpb24tY2x1c3Rlci9jb25maWd1cmUtY2xvdWQtcHJvdmlkZXItZmlyZXdhbGwvXG4gICAqL1xuICByZWFkb25seSBsb2FkQmFsYW5jZXJTb3VyY2VSYW5nZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHB1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcyBpbmRpY2F0ZXMgdGhhdCBhbnkgYWdlbnQgd2hpY2ggZGVhbHMgd2l0aCBlbmRwb2ludHMgZm9yIHRoaXMgU2VydmljZVxuICAgKiBzaG91bGQgZGlzcmVnYXJkIGFueSBpbmRpY2F0aW9ucyBvZiByZWFkeS9ub3QtcmVhZHlcbiAgICpcbiAgICogTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2UvZ2VuZXJhdGVkL2t1YmVybmV0ZXMtYXBpL3YxLjMwLyNzZXJ2aWNlc3BlYy12MS1jb3JlXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hOb3RSZWFkeUFkZHJlc3Nlcz86IGJvb2xlYW47XG5cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBleHBvc2luZyBhIHNlcnZpY2UgdXNpbmcgYW4gaW5ncmVzcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvc2VTZXJ2aWNlVmlhSW5ncmVzc09wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiB0aGUgcGF0aFxuICAgKlxuICAgKiBAZGVmYXVsdCBIdHRwSW5ncmVzc1BhdGhUeXBlLlBSRUZJWFxuICAgKi9cbiAgcmVhZG9ubHkgcGF0aFR5cGU/OiBpbmdyZXNzLkh0dHBJbmdyZXNzUGF0aFR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBpbmdyZXNzIHRvIGFkZCBydWxlcyB0by5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBBbiBpbmdyZXNzIHdpbGwgYmUgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5ncmVzcz86IGluZ3Jlc3MuSW5ncmVzcztcbn1cblxuLyoqXG4gKiBGb3Igc29tZSBwYXJ0cyBvZiB5b3VyIGFwcGxpY2F0aW9uIChmb3IgZXhhbXBsZSwgZnJvbnRlbmRzKSB5b3UgbWF5IHdhbnQgdG8gZXhwb3NlIGEgU2VydmljZSBvbnRvIGFuXG4gKiBleHRlcm5hbCBJUCBhZGRyZXNzLCB0aGF0J3Mgb3V0c2lkZSBvZiB5b3VyIGNsdXN0ZXIuXG4gKiBLdWJlcm5ldGVzIFNlcnZpY2VUeXBlcyBhbGxvdyB5b3UgdG8gc3BlY2lmeSB3aGF0IGtpbmQgb2YgU2VydmljZSB5b3Ugd2FudC5cbiAqIFRoZSBkZWZhdWx0IGlzIENsdXN0ZXJJUC5cbiAqL1xuZXhwb3J0IGVudW0gU2VydmljZVR5cGUge1xuXG4gIC8qKlxuICAgKiBFeHBvc2VzIHRoZSBTZXJ2aWNlIG9uIGEgY2x1c3Rlci1pbnRlcm5hbCBJUC5cbiAgICogQ2hvb3NpbmcgdGhpcyB2YWx1ZSBtYWtlcyB0aGUgU2VydmljZSBvbmx5IHJlYWNoYWJsZSBmcm9tIHdpdGhpbiB0aGUgY2x1c3Rlci5cbiAgICogVGhpcyBpcyB0aGUgZGVmYXVsdCBTZXJ2aWNlVHlwZVxuICAgKi9cbiAgQ0xVU1RFUl9JUCA9ICdDbHVzdGVySVAnLFxuXG4gIC8qKlxuICAgKiBFeHBvc2VzIHRoZSBTZXJ2aWNlIG9uIGVhY2ggTm9kZSdzIElQIGF0IGEgc3RhdGljIHBvcnQgKHRoZSBOb2RlUG9ydCkuXG4gICAqIEEgQ2x1c3RlcklQIFNlcnZpY2UsIHRvIHdoaWNoIHRoZSBOb2RlUG9ydCBTZXJ2aWNlIHJvdXRlcywgaXMgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKiBZb3UnbGwgYmUgYWJsZSB0byBjb250YWN0IHRoZSBOb2RlUG9ydCBTZXJ2aWNlLCBmcm9tIG91dHNpZGUgdGhlIGNsdXN0ZXIsXG4gICAqIGJ5IHJlcXVlc3RpbmcgPE5vZGVJUD46PE5vZGVQb3J0Pi5cbiAgICovXG4gIE5PREVfUE9SVCA9ICdOb2RlUG9ydCcsXG5cbiAgLyoqXG4gICAqIEV4cG9zZXMgdGhlIFNlcnZpY2UgZXh0ZXJuYWxseSB1c2luZyBhIGNsb3VkIHByb3ZpZGVyJ3MgbG9hZCBiYWxhbmNlci5cbiAgICogTm9kZVBvcnQgYW5kIENsdXN0ZXJJUCBTZXJ2aWNlcywgdG8gd2hpY2ggdGhlIGV4dGVybmFsIGxvYWQgYmFsYW5jZXIgcm91dGVzLFxuICAgKiBhcmUgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKi9cbiAgTE9BRF9CQUxBTkNFUiA9ICdMb2FkQmFsYW5jZXInLFxuXG4gIC8qKlxuICAgKiBNYXBzIHRoZSBTZXJ2aWNlIHRvIHRoZSBjb250ZW50cyBvZiB0aGUgZXh0ZXJuYWxOYW1lIGZpZWxkIChlLmcuIGZvby5iYXIuZXhhbXBsZS5jb20pLCBieSByZXR1cm5pbmcgYSBDTkFNRSByZWNvcmQgd2l0aCBpdHMgdmFsdWUuXG4gICAqIE5vIHByb3h5aW5nIG9mIGFueSBraW5kIGlzIHNldCB1cC5cbiAgICpcbiAgICogPiBOb3RlOiBZb3UgbmVlZCBlaXRoZXIga3ViZS1kbnMgdmVyc2lvbiAxLjcgb3IgQ29yZUROUyB2ZXJzaW9uIDAuMC44IG9yIGhpZ2hlciB0byB1c2UgdGhlIEV4dGVybmFsTmFtZSB0eXBlLlxuICAgKi9cbiAgRVhURVJOQUxfTkFNRSA9ICdFeHRlcm5hbE5hbWUnXG59XG5cbi8qKlxuICogT3B0aW9ucyB0byBhZGQgYSBkZXBsb3ltZW50IHRvIGEgc2VydmljZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBZGREZXBsb3ltZW50T3B0aW9ucyBleHRlbmRzIFNlcnZpY2VCaW5kT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcG9ydCBudW1iZXIgdGhlIHNlcnZpY2Ugd2lsbCBiaW5kIHRvLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIENvcGllZCBmcm9tIHRoZSBmaXJzdCBjb250YWluZXIgb2YgdGhlIGRlcGxveW1lbnQuXG4gICAqL1xuICByZWFkb25seSBwb3J0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEFuIGFic3RyYWN0IHdheSB0byBleHBvc2UgYW4gYXBwbGljYXRpb24gcnVubmluZyBvbiBhIHNldCBvZiBQb2RzIGFzIGEgbmV0d29yayBzZXJ2aWNlLlxuICogV2l0aCBLdWJlcm5ldGVzIHlvdSBkb24ndCBuZWVkIHRvIG1vZGlmeSB5b3VyIGFwcGxpY2F0aW9uIHRvIHVzZSBhbiB1bmZhbWlsaWFyIHNlcnZpY2UgZGlzY292ZXJ5IG1lY2hhbmlzbS5cbiAqIEt1YmVybmV0ZXMgZ2l2ZXMgUG9kcyB0aGVpciBvd24gSVAgYWRkcmVzc2VzIGFuZCBhIHNpbmdsZSBETlMgbmFtZSBmb3IgYSBzZXQgb2YgUG9kcywgYW5kIGNhbiBsb2FkLWJhbGFuY2UgYWNyb3NzIHRoZW0uXG4gKlxuICogRm9yIGV4YW1wbGUsIGNvbnNpZGVyIGEgc3RhdGVsZXNzIGltYWdlLXByb2Nlc3NpbmcgYmFja2VuZCB3aGljaCBpcyBydW5uaW5nIHdpdGggMyByZXBsaWNhcy4gVGhvc2UgcmVwbGljYXMgYXJlIGZ1bmdpYmxl4oCUZnJvbnRlbmRzIGRvIG5vdCBjYXJlIHdoaWNoIGJhY2tlbmQgdGhleSB1c2UuXG4gKiBXaGlsZSB0aGUgYWN0dWFsIFBvZHMgdGhhdCBjb21wb3NlIHRoZSBiYWNrZW5kIHNldCBtYXkgY2hhbmdlLCB0aGUgZnJvbnRlbmQgY2xpZW50cyBzaG91bGQgbm90IG5lZWQgdG8gYmUgYXdhcmUgb2YgdGhhdCxcbiAqIG5vciBzaG91bGQgdGhleSBuZWVkIHRvIGtlZXAgdHJhY2sgb2YgdGhlIHNldCBvZiBiYWNrZW5kcyB0aGVtc2VsdmVzLlxuICogVGhlIFNlcnZpY2UgYWJzdHJhY3Rpb24gZW5hYmxlcyB0aGlzIGRlY291cGxpbmcuXG4gKlxuICogSWYgeW91J3JlIGFibGUgdG8gdXNlIEt1YmVybmV0ZXMgQVBJcyBmb3Igc2VydmljZSBkaXNjb3ZlcnkgaW4geW91ciBhcHBsaWNhdGlvbiwgeW91IGNhbiBxdWVyeSB0aGUgQVBJIHNlcnZlciBmb3IgRW5kcG9pbnRzLFxuICogdGhhdCBnZXQgdXBkYXRlZCB3aGVuZXZlciB0aGUgc2V0IG9mIFBvZHMgaW4gYSBTZXJ2aWNlIGNoYW5nZXMuIEZvciBub24tbmF0aXZlIGFwcGxpY2F0aW9ucywgS3ViZXJuZXRlcyBvZmZlcnMgd2F5cyB0byBwbGFjZSBhIG5ldHdvcmsgcG9ydFxuICogb3IgbG9hZCBiYWxhbmNlciBpbiBiZXR3ZWVuIHlvdXIgYXBwbGljYXRpb24gYW5kIHRoZSBiYWNrZW5kIFBvZHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlIGV4dGVuZHMgYmFzZS5SZXNvdXJjZSB7XG5cbiAgLyoqXG4gICAqIFRoZSBJUCBhZGRyZXNzIG9mIHRoZSBzZXJ2aWNlIGFuZCBpcyB1c3VhbGx5IGFzc2lnbmVkIHJhbmRvbWx5IGJ5IHRoZVxuICAgKiBtYXN0ZXIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2x1c3RlcklQPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyB0aGUgU2VydmljZSBpcyBleHBvc2VkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGU6IFNlcnZpY2VUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgZXh0ZXJuYWxOYW1lIHRvIGJlIHVzZWQgZm9yIEVYVEVSTkFMX05BTUUgdHlwZXNcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBleHRlcm5hbE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzZWUgYmFzZS5SZXNvdXJjZS5hcGlPYmplY3RcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBhcGlPYmplY3Q6IEFwaU9iamVjdDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ3NlcnZpY2VzJztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9leHRlcm5hbElQczogc3RyaW5nW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdG9yOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9wb3J0czogU2VydmljZVBvcnRbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzPzogc3RyaW5nW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX3B1Ymxpc2hOb3RSZWFkeUFkZHJlc3Nlcz86IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNlcnZpY2VQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuYXBpT2JqZWN0ID0gbmV3IGs4cy5LdWJlU2VydmljZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgICBzcGVjOiBMYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMuX3RvS3ViZSgpIH0pLFxuICAgIH0pO1xuXG4gICAgdGhpcy5jbHVzdGVySVAgPSBwcm9wcy5jbHVzdGVySVA7XG4gICAgdGhpcy5leHRlcm5hbE5hbWUgPSBwcm9wcy5leHRlcm5hbE5hbWU7XG5cbiAgICBpZiAocHJvcHMuZXh0ZXJuYWxOYW1lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHlwZSA9IFNlcnZpY2VUeXBlLkVYVEVSTkFMX05BTUU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHlwZSA9IHByb3BzLnR5cGUgPz8gU2VydmljZVR5cGUuQ0xVU1RFUl9JUDtcbiAgICB9XG5cbiAgICB0aGlzLl9leHRlcm5hbElQcyA9IHByb3BzLmV4dGVybmFsSVBzID8/IFtdO1xuICAgIHRoaXMuX3BvcnRzID0gW107XG4gICAgdGhpcy5fc2VsZWN0b3IgPSB7IH07XG4gICAgdGhpcy5fbG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzID0gcHJvcHMubG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzO1xuICAgIHRoaXMuX3B1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcyA9IHByb3BzLnB1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcztcblxuICAgIGlmIChwcm9wcy5zZWxlY3Rvcikge1xuICAgICAgdGhpcy5zZWxlY3QocHJvcHMuc2VsZWN0b3IpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgcG9ydCBvZiBwcm9wcy5wb3J0cyA/PyBbXSkge1xuICAgICAgdGhpcy5iaW5kKHBvcnQucG9ydCwgcG9ydCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9zZSBhIHNlcnZpY2UgdmlhIGFuIGluZ3Jlc3MgdXNpbmcgdGhlIHNwZWNpZmllZCBwYXRoLlxuICAgKlxuICAgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aCB0byBleHBvc2UgdGhlIHNlcnZpY2UgdW5kZXIuXG4gICAqIEBwYXJhbSBvcHRpb25zIEFkZGl0aW9uYWwgb3B0aW9ucy5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGBJbmdyZXNzYCByZXNvdXJjZSB0aGF0IHdhcyB1c2VkLlxuICAgKi9cbiAgcHVibGljIGV4cG9zZVZpYUluZ3Jlc3MocGF0aDogc3RyaW5nLCBvcHRpb25zOiBFeHBvc2VTZXJ2aWNlVmlhSW5ncmVzc09wdGlvbnMgPSB7fSk6IGluZ3Jlc3MuSW5ncmVzcyB7XG4gICAgY29uc3QgaW5nciA9IG9wdGlvbnMuaW5ncmVzcyA/PyBuZXcgaW5ncmVzcy5JbmdyZXNzKHRoaXMsICdJbmdyZXNzJyk7XG4gICAgaW5nci5hZGRSdWxlKHBhdGgsIGluZ3Jlc3MuSW5ncmVzc0JhY2tlbmQuZnJvbVNlcnZpY2UodGhpcyksIG9wdGlvbnMucGF0aFR5cGUpO1xuICAgIHJldHVybiBpbmdyO1xuICB9XG5cbiAgLyoqXG4gICAqIFBvcnRzIGZvciB0aGlzIHNlcnZpY2UuXG4gICAqXG4gICAqIFVzZSBgYmluZCgpYCB0byBiaW5kIGFkZGl0aW9uYWwgc2VydmljZSBwb3J0cy5cbiAgICovXG4gIHB1YmxpYyBnZXQgcG9ydHMoKSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLl9wb3J0c107XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBmaXJzdCBwb3J0IG9mIHRoZSBzZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIGdldCBwb3J0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIFsuLi50aGlzLl9wb3J0c11bMF0ucG9ydDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmUgYSBwb3J0IHRoZSBzZXJ2aWNlIHdpbGwgYmluZCB0by5cbiAgICogVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBtdWx0aXBsZSB0aW1lcy5cbiAgICpcbiAgICogQHBhcmFtIHBvcnQgVGhlIHBvcnQgZGVmaW5pdGlvbi5cbiAgICovXG4gIHB1YmxpYyBiaW5kKHBvcnQ6IG51bWJlciwgb3B0aW9uczogU2VydmljZUJpbmRPcHRpb25zID0geyB9KSB7XG4gICAgdGhpcy5fcG9ydHMucHVzaCh7IC4uLm9wdGlvbnMsIHBvcnQgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVxdWlyZSB0aGlzIHNlcnZpY2UgdG8gc2VsZWN0IHBvZHMgbWF0Y2hpbmcgdGhlIHNlbGVjdG9yLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgaW52b2tpbmcgdGhpcyBtZXRob2QgbXVsdGlwbGUgdGltZXMgYWN0cyBhcyBhbiBBTkQgb3BlcmF0b3JcbiAgICogb24gdGhlIHJlc3VsdGluZyBsYWJlbHMuXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0KHNlbGVjdG9yOiBwb2QuSVBvZFNlbGVjdG9yKSB7XG4gICAgY29uc3QgbGFiZWxzID0gc2VsZWN0b3IudG9Qb2RTZWxlY3RvckNvbmZpZygpLmxhYmVsU2VsZWN0b3IuX3RvS3ViZSgpLm1hdGNoTGFiZWxzID8/IHt9O1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGxhYmVscykpIHtcbiAgICAgIHRoaXMuX3NlbGVjdG9yW2tleV0gPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVxdWlyZSB0aGlzIHNlcnZpY2UgdG8gc2VsZWN0IHBvZHMgd2l0aCB0aGlzIGxhYmVsLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgaW52b2tpbmcgdGhpcyBtZXRob2QgbXVsdGlwbGUgdGltZXMgYWN0cyBhcyBhbiBBTkQgb3BlcmF0b3JcbiAgICogb24gdGhlIHJlc3VsdGluZyBsYWJlbHMuXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0TGFiZWwoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zZWxlY3RvcltrZXldID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX3RvS3ViZSgpOiBrOHMuU2VydmljZVNwZWMge1xuICAgIGlmICh0aGlzLl9wb3J0cy5sZW5ndGggPT09IDAgJiYgdGhpcy50eXBlICE9PSBTZXJ2aWNlVHlwZS5FWFRFUk5BTF9OQU1FKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Egc2VydmljZSBtdXN0IGJlIGNvbmZpZ3VyZWQgd2l0aCBhIHBvcnQnKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eXBlID09PSBTZXJ2aWNlVHlwZS5FWFRFUk5BTF9OQU1FICYmIHRoaXMuZXh0ZXJuYWxOYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQSBzZXJ2aWNlIHdpdGggdHlwZSBFWFRFUk5BTF9OQU1FIHJlcXVpcmVzIGFuIGV4dGVybmFsTmFtZSBwcm9wJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcG9ydHM6IGs4cy5TZXJ2aWNlUG9ydFtdID0gW107XG5cbiAgICBmb3IgKGNvbnN0IHBvcnQgb2YgdGhpcy5fcG9ydHMpIHtcbiAgICAgIHBvcnRzLnB1c2goe1xuICAgICAgICBuYW1lOiBwb3J0Lm5hbWUsXG4gICAgICAgIHBvcnQ6IHBvcnQucG9ydCxcbiAgICAgICAgdGFyZ2V0UG9ydDogcG9ydC50YXJnZXRQb3J0ID8gazhzLkludE9yU3RyaW5nLmZyb21OdW1iZXIocG9ydC50YXJnZXRQb3J0KSA6IHVuZGVmaW5lZCxcbiAgICAgICAgbm9kZVBvcnQ6IHBvcnQubm9kZVBvcnQsXG4gICAgICAgIHByb3RvY29sOiBwb3J0LnByb3RvY29sLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHlwZSAhPT0gU2VydmljZVR5cGUuRVhURVJOQUxfTkFNRSA/IHtcbiAgICAgIGNsdXN0ZXJJcDogdGhpcy5jbHVzdGVySVAsXG4gICAgICBleHRlcm5hbElQczogdGhpcy5fZXh0ZXJuYWxJUHMsXG4gICAgICBleHRlcm5hbE5hbWU6IHRoaXMuZXh0ZXJuYWxOYW1lLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgc2VsZWN0b3I6IHRoaXMuX3NlbGVjdG9yLFxuICAgICAgcG9ydHM6IHBvcnRzLFxuICAgICAgbG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzOiB0aGlzLl9sb2FkQmFsYW5jZXJTb3VyY2VSYW5nZXMsXG4gICAgICBwdWJsaXNoTm90UmVhZHlBZGRyZXNzZXM6IHRoaXMuX3B1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcyxcbiAgICB9IDoge1xuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgZXh0ZXJuYWxOYW1lOiB0aGlzLmV4dGVybmFsTmFtZSxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFNlcnZpY2UuYmluZGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZUJpbmRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoaXMgcG9ydCB3aXRoaW4gdGhlIHNlcnZpY2UuIFRoaXMgbXVzdCBiZSBhIEROU19MQUJFTC4gQWxsXG4gICAqIHBvcnRzIHdpdGhpbiBhIFNlcnZpY2VTcGVjIG11c3QgaGF2ZSB1bmlxdWUgbmFtZXMuIFRoaXMgbWFwcyB0byB0aGUgJ05hbWUnXG4gICAqIGZpZWxkIGluIEVuZHBvaW50UG9ydCBvYmplY3RzLiBPcHRpb25hbCBpZiBvbmx5IG9uZSBTZXJ2aWNlUG9ydCBpcyBkZWZpbmVkXG4gICAqIG9uIHRoaXMgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3J0IG9uIGVhY2ggbm9kZSBvbiB3aGljaCB0aGlzIHNlcnZpY2UgaXMgZXhwb3NlZCB3aGVuIHR5cGU9Tm9kZVBvcnRcbiAgICogb3IgTG9hZEJhbGFuY2VyLiBVc3VhbGx5IGFzc2lnbmVkIGJ5IHRoZSBzeXN0ZW0uIElmIHNwZWNpZmllZCwgaXQgd2lsbCBiZVxuICAgKiBhbGxvY2F0ZWQgdG8gdGhlIHNlcnZpY2UgaWYgdW51c2VkIG9yIGVsc2UgY3JlYXRpb24gb2YgdGhlIHNlcnZpY2Ugd2lsbFxuICAgKiBmYWlsLiBEZWZhdWx0IGlzIHRvIGF1dG8tYWxsb2NhdGUgYSBwb3J0IGlmIHRoZSBTZXJ2aWNlVHlwZSBvZiB0aGlzIFNlcnZpY2VcbiAgICogcmVxdWlyZXMgb25lLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL3NlcnZpY2VzLW5ldHdvcmtpbmcvc2VydmljZS8jdHlwZS1ub2RlcG9ydFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGF1dG8tYWxsb2NhdGUgYSBwb3J0IGlmIHRoZSBTZXJ2aWNlVHlwZSBvZiB0aGlzIFNlcnZpY2UgcmVxdWlyZXMgb25lLlxuICAgKi9cbiAgcmVhZG9ubHkgbm9kZVBvcnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBJUCBwcm90b2NvbCBmb3IgdGhpcyBwb3J0LiBTdXBwb3J0cyBcIlRDUFwiLCBcIlVEUFwiLCBhbmQgXCJTQ1RQXCIuIERlZmF1bHQgaXMgVENQLlxuICAgKlxuICAgKiBAZGVmYXVsdCBQcm90b2NvbC5UQ1BcbiAgICovXG4gIHJlYWRvbmx5IHByb3RvY29sPzogY29udGFpbmVyLlByb3RvY29sO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9ydCBudW1iZXIgdGhlIHNlcnZpY2Ugd2lsbCByZWRpcmVjdCB0by5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgdmFsdWUgb2YgYHBvcnRgIHdpbGwgYmUgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFBvcnQ/OiBudW1iZXI7XG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBvZiBhIHNlcnZpY2UgcG9ydC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlUG9ydCBleHRlbmRzIFNlcnZpY2VCaW5kT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3J0IG51bWJlciB0aGUgc2VydmljZSB3aWxsIGJpbmQgdG8uXG4gICAqL1xuICByZWFkb25seSBwb3J0OiBudW1iZXI7XG59XG4iXX0=
|
|
181
|
+
Service[_a] = { fqn: "cdk8s-plus-31.Service", version: "2.0.7" };
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaUNBQXdDO0FBRXhDLCtCQUErQjtBQUUvQixxQ0FBcUM7QUFDckMscUNBQXFDO0FBMkhyQzs7Ozs7R0FLRztBQUNILElBQVksV0ErQlg7QUEvQkQsV0FBWSxXQUFXO0lBRXJCOzs7O09BSUc7SUFDSCx1Q0FBd0IsQ0FBQTtJQUV4Qjs7Ozs7T0FLRztJQUNILHFDQUFzQixDQUFBO0lBRXRCOzs7O09BSUc7SUFDSCw2Q0FBOEIsQ0FBQTtJQUU5Qjs7Ozs7T0FLRztJQUNILDZDQUE4QixDQUFBO0FBQ2hDLENBQUMsRUEvQlcsV0FBVywyQkFBWCxXQUFXLFFBK0J0QjtBQWNEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDSCxNQUFhLE9BQVEsU0FBUSxJQUFJLENBQUMsUUFBUTtJQStCeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUFzQixFQUFFO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFUSCxpQkFBWSxHQUFHLFVBQVUsQ0FBQztRQVd4QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3JELFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN4QixJQUFJLEVBQUUsWUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztTQUNsRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDakMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBRXZDLElBQUksS0FBSyxDQUFDLFlBQVksS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNyQyxJ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S0gsMEJBb0tDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXBpT2JqZWN0LCBMYXp5IH0gZnJvbSAnY2RrOHMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgKiBhcyBiYXNlIGZyb20gJy4vYmFzZSc7XG5pbXBvcnQgKiBhcyBjb250YWluZXIgZnJvbSAnLi9jb250YWluZXInO1xuaW1wb3J0ICogYXMgazhzIGZyb20gJy4vaW1wb3J0cy9rOHMnO1xuaW1wb3J0ICogYXMgaW5ncmVzcyBmcm9tICcuL2luZ3Jlc3MnO1xuaW1wb3J0ICogYXMgcG9kIGZyb20gJy4vcG9kJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBgU2VydmljZWAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZVByb3BzIGV4dGVuZHMgYmFzZS5SZXNvdXJjZVByb3BzIHtcbiAgLyoqXG4gICAqIFdoaWNoIHBvZHMgc2hvdWxkIHRoZSBzZXJ2aWNlIHNlbGVjdCBhbmQgcm91dGUgdG8uXG4gICAqXG4gICAqIFlvdSBjYW4gcGFzcyBvbmUgb2YgdGhlIGZvbGxvd2luZzpcbiAgICpcbiAgICogLSBBbiBpbnN0YW5jZSBvZiBgUG9kYCBvciBhbnkgd29ya2xvYWQgcmVzb3VyY2UgKGUuZyBgRGVwbG95bWVudGAsIGBTdGF0ZWZ1bFNldGAsIC4uLilcbiAgICogLSBQb2RzIHNlbGVjdGVkIGJ5IHRoZSBgUG9kcy5zZWxlY3RgIGZ1bmN0aW9uLiBOb3RlIHRoYXQgaW4gdGhpcyBjYXNlIG9ubHkgbGFiZWxzIGNhbiBiZSBzcGVjaWZpZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdW5zZXQsIHRoZSBzZXJ2aWNlIGlzIGFzc3VtZWQgdG8gaGF2ZSBhbiBleHRlcm5hbCBwcm9jZXNzIG1hbmFnaW5nXG4gICAqIGl0cyBlbmRwb2ludHMsIHdoaWNoIEt1YmVybmV0ZXMgd2lsbCBub3QgbW9kaWZ5LlxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKlxuICAgKiAvLyBzZWxlY3QgdGhlIHBvZHMgb2YgYSBzcGVjaWZpYyBkZXBsb3ltZW50XG4gICAqIGNvbnN0IGJhY2tlbmQgPSBuZXcga3BsdXMuRGVwbG95bWVudCh0aGlzLCAnQmFja2VuZCcsIC4uLik7XG4gICAqIG5ldyBrcGx1cy5TZXJ2aWNlKHRoaXMsICdTZXJ2aWNlJywgeyBzZWxlY3RvcjogYmFja2VuZCB9KTtcbiAgICpcbiAgICogLy8gc2VsZWN0IGFsbCBwb2RzIGxhYmVsZWQgd2l0aCB0aGUgYHRpZXI9YmFja2VuZGAgbGFiZWxcbiAgICogY29uc3QgYmFja2VuZCA9IGtwbHVzLlBvZC5sYWJlbGVkKHsgdGllcjogJ2JhY2tlbmQnIH0pO1xuICAgKiBuZXcga3BsdXMuU2VydmljZSh0aGlzLCAnU2VydmljZScsIHsgc2VsZWN0b3I6IGJhY2tlbmQgfSk7XG4gICAqL1xuICByZWFkb25seSBzZWxlY3Rvcj86IHBvZC5JUG9kU2VsZWN0b3I7XG5cbiAgLyoqXG4gICAqIFRoZSBJUCBhZGRyZXNzIG9mIHRoZSBzZXJ2aWNlIGFuZCBpcyB1c3VhbGx5IGFzc2lnbmVkIHJhbmRvbWx5IGJ5IHRoZVxuICAgKiBtYXN0ZXIuIElmIGFuIGFkZHJlc3MgaXMgc3BlY2lmaWVkIG1hbnVhbGx5IGFuZCBpcyBub3QgaW4gdXNlIGJ5IG90aGVycywgaXRcbiAgICogd2lsbCBiZSBhbGxvY2F0ZWQgdG8gdGhlIHNlcnZpY2U7IG90aGVyd2lzZSwgY3JlYXRpb24gb2YgdGhlIHNlcnZpY2Ugd2lsbFxuICAgKiBmYWlsLiBUaGlzIGZpZWxkIGNhbiBub3QgYmUgY2hhbmdlZCB0aHJvdWdoIHVwZGF0ZXMuIFZhbGlkIHZhbHVlcyBhcmVcbiAgICogXCJOb25lXCIsIGVtcHR5IHN0cmluZyAoXCJcIiksIG9yIGEgdmFsaWQgSVAgYWRkcmVzcy4gXCJOb25lXCIgY2FuIGJlIHNwZWNpZmllZFxuICAgKiBmb3IgaGVhZGxlc3Mgc2VydmljZXMgd2hlbiBwcm94eWluZyBpcyBub3QgcmVxdWlyZWQuIE9ubHkgYXBwbGllcyB0byB0eXBlc1xuICAgKiBDbHVzdGVySVAsIE5vZGVQb3J0LCBhbmQgTG9hZEJhbGFuY2VyLiBJZ25vcmVkIGlmIHR5cGUgaXMgRXh0ZXJuYWxOYW1lLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL3NlcnZpY2VzLW5ldHdvcmtpbmcvc2VydmljZS8jdmlydHVhbC1pcHMtYW5kLXNlcnZpY2UtcHJveGllc1xuICAgKiBAZGVmYXVsdCAtIEF1dG9tYXRpY2FsbHkgYXNzaWduZWQuXG4gICAqXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVySVA/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBJUCBhZGRyZXNzZXMgZm9yIHdoaWNoIG5vZGVzIGluIHRoZSBjbHVzdGVyIHdpbGwgYWxzbyBhY2NlcHRcbiAgICogdHJhZmZpYyBmb3IgdGhpcyBzZXJ2aWNlLiBUaGVzZSBJUHMgYXJlIG5vdCBtYW5hZ2VkIGJ5IEt1YmVybmV0ZXMuIFRoZSB1c2VyXG4gICAqIGlzIHJlc3BvbnNpYmxlIGZvciBlbnN1cmluZyB0aGF0IHRyYWZmaWMgYXJyaXZlcyBhdCBhIG5vZGUgd2l0aCB0aGlzIElQLiBBXG4gICAqIGNvbW1vbiBleGFtcGxlIGlzIGV4dGVybmFsIGxvYWQtYmFsYW5jZXJzIHRoYXQgYXJlIG5vdCBwYXJ0IG9mIHRoZVxuICAgKiBLdWJlcm5ldGVzIHN5c3RlbS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBObyBleHRlcm5hbCBJUHMuXG4gICAqL1xuICByZWFkb25seSBleHRlcm5hbElQcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyB0aGUgU2VydmljZSBpcyBleHBvc2VkLlxuICAgKlxuICAgKiBNb3JlIGluZm86IGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL3NlcnZpY2VzLW5ldHdvcmtpbmcvc2VydmljZS8jcHVibGlzaGluZy1zZXJ2aWNlcy1zZXJ2aWNlLXR5cGVzXG4gICAqXG4gICAqIEBkZWZhdWx0IFNlcnZpY2VUeXBlLkNsdXN0ZXJJUFxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IFNlcnZpY2VUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9ydHMgdGhpcyBzZXJ2aWNlIGJpbmRzIHRvLlxuICAgKlxuICAgKiBJZiB0aGUgc2VsZWN0b3Igb2YgdGhlIHNlcnZpY2UgaXMgYSBtYW5hZ2VkIHBvZCAvIHdvcmtsb2FkLFxuICAgKiBpdHMgcG9ydHMgd2lsbCBhcmUgYXV0b21hdGljYWxseSBleHRyYWN0ZWQgYW5kIHVzZWQgYXMgdGhlIGRlZmF1bHQgdmFsdWUuXG4gICAqIE90aGVyd2lzZSwgbm8gcG9ydHMgYXJlIGJvdW5kLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGVpdGhlciB0aGUgc2VsZWN0b3IgcG9ydHMsIG9yIG5vbmUuXG4gICAqL1xuICByZWFkb25seSBwb3J0cz86IFNlcnZpY2VQb3J0W107XG5cbiAgLyoqXG4gICAqIFRoZSBleHRlcm5hbE5hbWUgdG8gYmUgdXNlZCB3aGVuIFNlcnZpY2VUeXBlLkVYVEVSTkFMX05BTUUgaXMgc2V0XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZXh0ZXJuYWwgbmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IGV4dGVybmFsTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBsaXN0IG9mIENJRFIgSVAgYWRkcmVzc2VzLCBpZiBzcGVjaWZpZWQgYW5kIHN1cHBvcnRlZCBieSB0aGUgcGxhdGZvcm0sXG4gICAqIHdpbGwgcmVzdHJpY3QgdHJhZmZpYyB0aHJvdWdoIHRoZSBjbG91ZC1wcm92aWRlciBsb2FkLWJhbGFuY2VyIHRvIHRoZSBzcGVjaWZpZWQgY2xpZW50IElQcy5cbiAgICpcbiAgICogTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy90YXNrcy9hY2Nlc3MtYXBwbGljYXRpb24tY2x1c3Rlci9jb25maWd1cmUtY2xvdWQtcHJvdmlkZXItZmlyZXdhbGwvXG4gICAqL1xuICByZWFkb25seSBsb2FkQmFsYW5jZXJTb3VyY2VSYW5nZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHB1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcyBpbmRpY2F0ZXMgdGhhdCBhbnkgYWdlbnQgd2hpY2ggZGVhbHMgd2l0aCBlbmRwb2ludHMgZm9yIHRoaXMgU2VydmljZVxuICAgKiBzaG91bGQgZGlzcmVnYXJkIGFueSBpbmRpY2F0aW9ucyBvZiByZWFkeS9ub3QtcmVhZHlcbiAgICpcbiAgICogTW9yZSBpbmZvOiBodHRwczovL2t1YmVybmV0ZXMuaW8vZG9jcy9yZWZlcmVuY2UvZ2VuZXJhdGVkL2t1YmVybmV0ZXMtYXBpL3YxLjMwLyNzZXJ2aWNlc3BlYy12MS1jb3JlXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hOb3RSZWFkeUFkZHJlc3Nlcz86IGJvb2xlYW47XG5cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBleHBvc2luZyBhIHNlcnZpY2UgdXNpbmcgYW4gaW5ncmVzcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvc2VTZXJ2aWNlVmlhSW5ncmVzc09wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiB0aGUgcGF0aFxuICAgKlxuICAgKiBAZGVmYXVsdCBIdHRwSW5ncmVzc1BhdGhUeXBlLlBSRUZJWFxuICAgKi9cbiAgcmVhZG9ubHkgcGF0aFR5cGU/OiBpbmdyZXNzLkh0dHBJbmdyZXNzUGF0aFR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBpbmdyZXNzIHRvIGFkZCBydWxlcyB0by5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBBbiBpbmdyZXNzIHdpbGwgYmUgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5ncmVzcz86IGluZ3Jlc3MuSW5ncmVzcztcbn1cblxuLyoqXG4gKiBGb3Igc29tZSBwYXJ0cyBvZiB5b3VyIGFwcGxpY2F0aW9uIChmb3IgZXhhbXBsZSwgZnJvbnRlbmRzKSB5b3UgbWF5IHdhbnQgdG8gZXhwb3NlIGEgU2VydmljZSBvbnRvIGFuXG4gKiBleHRlcm5hbCBJUCBhZGRyZXNzLCB0aGF0J3Mgb3V0c2lkZSBvZiB5b3VyIGNsdXN0ZXIuXG4gKiBLdWJlcm5ldGVzIFNlcnZpY2VUeXBlcyBhbGxvdyB5b3UgdG8gc3BlY2lmeSB3aGF0IGtpbmQgb2YgU2VydmljZSB5b3Ugd2FudC5cbiAqIFRoZSBkZWZhdWx0IGlzIENsdXN0ZXJJUC5cbiAqL1xuZXhwb3J0IGVudW0gU2VydmljZVR5cGUge1xuXG4gIC8qKlxuICAgKiBFeHBvc2VzIHRoZSBTZXJ2aWNlIG9uIGEgY2x1c3Rlci1pbnRlcm5hbCBJUC5cbiAgICogQ2hvb3NpbmcgdGhpcyB2YWx1ZSBtYWtlcyB0aGUgU2VydmljZSBvbmx5IHJlYWNoYWJsZSBmcm9tIHdpdGhpbiB0aGUgY2x1c3Rlci5cbiAgICogVGhpcyBpcyB0aGUgZGVmYXVsdCBTZXJ2aWNlVHlwZVxuICAgKi9cbiAgQ0xVU1RFUl9JUCA9ICdDbHVzdGVySVAnLFxuXG4gIC8qKlxuICAgKiBFeHBvc2VzIHRoZSBTZXJ2aWNlIG9uIGVhY2ggTm9kZSdzIElQIGF0IGEgc3RhdGljIHBvcnQgKHRoZSBOb2RlUG9ydCkuXG4gICAqIEEgQ2x1c3RlcklQIFNlcnZpY2UsIHRvIHdoaWNoIHRoZSBOb2RlUG9ydCBTZXJ2aWNlIHJvdXRlcywgaXMgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKiBZb3UnbGwgYmUgYWJsZSB0byBjb250YWN0IHRoZSBOb2RlUG9ydCBTZXJ2aWNlLCBmcm9tIG91dHNpZGUgdGhlIGNsdXN0ZXIsXG4gICAqIGJ5IHJlcXVlc3RpbmcgPE5vZGVJUD46PE5vZGVQb3J0Pi5cbiAgICovXG4gIE5PREVfUE9SVCA9ICdOb2RlUG9ydCcsXG5cbiAgLyoqXG4gICAqIEV4cG9zZXMgdGhlIFNlcnZpY2UgZXh0ZXJuYWxseSB1c2luZyBhIGNsb3VkIHByb3ZpZGVyJ3MgbG9hZCBiYWxhbmNlci5cbiAgICogTm9kZVBvcnQgYW5kIENsdXN0ZXJJUCBTZXJ2aWNlcywgdG8gd2hpY2ggdGhlIGV4dGVybmFsIGxvYWQgYmFsYW5jZXIgcm91dGVzLFxuICAgKiBhcmUgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKi9cbiAgTE9BRF9CQUxBTkNFUiA9ICdMb2FkQmFsYW5jZXInLFxuXG4gIC8qKlxuICAgKiBNYXBzIHRoZSBTZXJ2aWNlIHRvIHRoZSBjb250ZW50cyBvZiB0aGUgZXh0ZXJuYWxOYW1lIGZpZWxkIChlLmcuIGZvby5iYXIuZXhhbXBsZS5jb20pLCBieSByZXR1cm5pbmcgYSBDTkFNRSByZWNvcmQgd2l0aCBpdHMgdmFsdWUuXG4gICAqIE5vIHByb3h5aW5nIG9mIGFueSBraW5kIGlzIHNldCB1cC5cbiAgICpcbiAgICogPiBOb3RlOiBZb3UgbmVlZCBlaXRoZXIga3ViZS1kbnMgdmVyc2lvbiAxLjcgb3IgQ29yZUROUyB2ZXJzaW9uIDAuMC44IG9yIGhpZ2hlciB0byB1c2UgdGhlIEV4dGVybmFsTmFtZSB0eXBlLlxuICAgKi9cbiAgRVhURVJOQUxfTkFNRSA9ICdFeHRlcm5hbE5hbWUnXG59XG5cbi8qKlxuICogT3B0aW9ucyB0byBhZGQgYSBkZXBsb3ltZW50IHRvIGEgc2VydmljZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBZGREZXBsb3ltZW50T3B0aW9ucyBleHRlbmRzIFNlcnZpY2VCaW5kT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcG9ydCBudW1iZXIgdGhlIHNlcnZpY2Ugd2lsbCBiaW5kIHRvLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIENvcGllZCBmcm9tIHRoZSBmaXJzdCBjb250YWluZXIgb2YgdGhlIGRlcGxveW1lbnQuXG4gICAqL1xuICByZWFkb25seSBwb3J0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEFuIGFic3RyYWN0IHdheSB0byBleHBvc2UgYW4gYXBwbGljYXRpb24gcnVubmluZyBvbiBhIHNldCBvZiBQb2RzIGFzIGEgbmV0d29yayBzZXJ2aWNlLlxuICogV2l0aCBLdWJlcm5ldGVzIHlvdSBkb24ndCBuZWVkIHRvIG1vZGlmeSB5b3VyIGFwcGxpY2F0aW9uIHRvIHVzZSBhbiB1bmZhbWlsaWFyIHNlcnZpY2UgZGlzY292ZXJ5IG1lY2hhbmlzbS5cbiAqIEt1YmVybmV0ZXMgZ2l2ZXMgUG9kcyB0aGVpciBvd24gSVAgYWRkcmVzc2VzIGFuZCBhIHNpbmdsZSBETlMgbmFtZSBmb3IgYSBzZXQgb2YgUG9kcywgYW5kIGNhbiBsb2FkLWJhbGFuY2UgYWNyb3NzIHRoZW0uXG4gKlxuICogRm9yIGV4YW1wbGUsIGNvbnNpZGVyIGEgc3RhdGVsZXNzIGltYWdlLXByb2Nlc3NpbmcgYmFja2VuZCB3aGljaCBpcyBydW5uaW5nIHdpdGggMyByZXBsaWNhcy4gVGhvc2UgcmVwbGljYXMgYXJlIGZ1bmdpYmxl4oCUZnJvbnRlbmRzIGRvIG5vdCBjYXJlIHdoaWNoIGJhY2tlbmQgdGhleSB1c2UuXG4gKiBXaGlsZSB0aGUgYWN0dWFsIFBvZHMgdGhhdCBjb21wb3NlIHRoZSBiYWNrZW5kIHNldCBtYXkgY2hhbmdlLCB0aGUgZnJvbnRlbmQgY2xpZW50cyBzaG91bGQgbm90IG5lZWQgdG8gYmUgYXdhcmUgb2YgdGhhdCxcbiAqIG5vciBzaG91bGQgdGhleSBuZWVkIHRvIGtlZXAgdHJhY2sgb2YgdGhlIHNldCBvZiBiYWNrZW5kcyB0aGVtc2VsdmVzLlxuICogVGhlIFNlcnZpY2UgYWJzdHJhY3Rpb24gZW5hYmxlcyB0aGlzIGRlY291cGxpbmcuXG4gKlxuICogSWYgeW91J3JlIGFibGUgdG8gdXNlIEt1YmVybmV0ZXMgQVBJcyBmb3Igc2VydmljZSBkaXNjb3ZlcnkgaW4geW91ciBhcHBsaWNhdGlvbiwgeW91IGNhbiBxdWVyeSB0aGUgQVBJIHNlcnZlciBmb3IgRW5kcG9pbnRzLFxuICogdGhhdCBnZXQgdXBkYXRlZCB3aGVuZXZlciB0aGUgc2V0IG9mIFBvZHMgaW4gYSBTZXJ2aWNlIGNoYW5nZXMuIEZvciBub24tbmF0aXZlIGFwcGxpY2F0aW9ucywgS3ViZXJuZXRlcyBvZmZlcnMgd2F5cyB0byBwbGFjZSBhIG5ldHdvcmsgcG9ydFxuICogb3IgbG9hZCBiYWxhbmNlciBpbiBiZXR3ZWVuIHlvdXIgYXBwbGljYXRpb24gYW5kIHRoZSBiYWNrZW5kIFBvZHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlIGV4dGVuZHMgYmFzZS5SZXNvdXJjZSB7XG5cbiAgLyoqXG4gICAqIFRoZSBJUCBhZGRyZXNzIG9mIHRoZSBzZXJ2aWNlIGFuZCBpcyB1c3VhbGx5IGFzc2lnbmVkIHJhbmRvbWx5IGJ5IHRoZVxuICAgKiBtYXN0ZXIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2x1c3RlcklQPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGhvdyB0aGUgU2VydmljZSBpcyBleHBvc2VkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGU6IFNlcnZpY2VUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgZXh0ZXJuYWxOYW1lIHRvIGJlIHVzZWQgZm9yIEVYVEVSTkFMX05BTUUgdHlwZXNcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBleHRlcm5hbE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzZWUgYmFzZS5SZXNvdXJjZS5hcGlPYmplY3RcbiAgICovXG4gIHByb3RlY3RlZCByZWFkb25seSBhcGlPYmplY3Q6IEFwaU9iamVjdDtcblxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VUeXBlID0gJ3NlcnZpY2VzJztcblxuICBwcml2YXRlIHJlYWRvbmx5IF9leHRlcm5hbElQczogc3RyaW5nW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdG9yOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBwcml2YXRlIHJlYWRvbmx5IF9wb3J0czogU2VydmljZVBvcnRbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzPzogc3RyaW5nW107XG4gIHByaXZhdGUgcmVhZG9ubHkgX3B1Ymxpc2hOb3RSZWFkeUFkZHJlc3Nlcz86IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNlcnZpY2VQcm9wcyA9IHt9KSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuYXBpT2JqZWN0ID0gbmV3IGs4cy5LdWJlU2VydmljZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBtZXRhZGF0YTogcHJvcHMubWV0YWRhdGEsXG4gICAgICBzcGVjOiBMYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMuX3RvS3ViZSgpIH0pLFxuICAgIH0pO1xuXG4gICAgdGhpcy5jbHVzdGVySVAgPSBwcm9wcy5jbHVzdGVySVA7XG4gICAgdGhpcy5leHRlcm5hbE5hbWUgPSBwcm9wcy5leHRlcm5hbE5hbWU7XG5cbiAgICBpZiAocHJvcHMuZXh0ZXJuYWxOYW1lICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHlwZSA9IFNlcnZpY2VUeXBlLkVYVEVSTkFMX05BTUU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHlwZSA9IHByb3BzLnR5cGUgPz8gU2VydmljZVR5cGUuQ0xVU1RFUl9JUDtcbiAgICB9XG5cbiAgICB0aGlzLl9leHRlcm5hbElQcyA9IHByb3BzLmV4dGVybmFsSVBzID8/IFtdO1xuICAgIHRoaXMuX3BvcnRzID0gW107XG4gICAgdGhpcy5fc2VsZWN0b3IgPSB7IH07XG4gICAgdGhpcy5fbG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzID0gcHJvcHMubG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzO1xuICAgIHRoaXMuX3B1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcyA9IHByb3BzLnB1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcztcblxuICAgIGlmIChwcm9wcy5zZWxlY3Rvcikge1xuICAgICAgdGhpcy5zZWxlY3QocHJvcHMuc2VsZWN0b3IpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgcG9ydCBvZiBwcm9wcy5wb3J0cyA/PyBbXSkge1xuICAgICAgdGhpcy5iaW5kKHBvcnQucG9ydCwgcG9ydCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9zZSBhIHNlcnZpY2UgdmlhIGFuIGluZ3Jlc3MgdXNpbmcgdGhlIHNwZWNpZmllZCBwYXRoLlxuICAgKlxuICAgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aCB0byBleHBvc2UgdGhlIHNlcnZpY2UgdW5kZXIuXG4gICAqIEBwYXJhbSBvcHRpb25zIEFkZGl0aW9uYWwgb3B0aW9ucy5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGBJbmdyZXNzYCByZXNvdXJjZSB0aGF0IHdhcyB1c2VkLlxuICAgKi9cbiAgcHVibGljIGV4cG9zZVZpYUluZ3Jlc3MocGF0aDogc3RyaW5nLCBvcHRpb25zOiBFeHBvc2VTZXJ2aWNlVmlhSW5ncmVzc09wdGlvbnMgPSB7fSk6IGluZ3Jlc3MuSW5ncmVzcyB7XG4gICAgY29uc3QgaW5nciA9IG9wdGlvbnMuaW5ncmVzcyA/PyBuZXcgaW5ncmVzcy5JbmdyZXNzKHRoaXMsICdJbmdyZXNzJyk7XG4gICAgaW5nci5hZGRSdWxlKHBhdGgsIGluZ3Jlc3MuSW5ncmVzc0JhY2tlbmQuZnJvbVNlcnZpY2UodGhpcyksIG9wdGlvbnMucGF0aFR5cGUpO1xuICAgIHJldHVybiBpbmdyO1xuICB9XG5cbiAgLyoqXG4gICAqIFBvcnRzIGZvciB0aGlzIHNlcnZpY2UuXG4gICAqXG4gICAqIFVzZSBgYmluZCgpYCB0byBiaW5kIGFkZGl0aW9uYWwgc2VydmljZSBwb3J0cy5cbiAgICovXG4gIHB1YmxpYyBnZXQgcG9ydHMoKSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLl9wb3J0c107XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBmaXJzdCBwb3J0IG9mIHRoZSBzZXJ2aWNlLlxuICAgKi9cbiAgcHVibGljIGdldCBwb3J0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIFsuLi50aGlzLl9wb3J0c11bMF0ucG9ydDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWd1cmUgYSBwb3J0IHRoZSBzZXJ2aWNlIHdpbGwgYmluZCB0by5cbiAgICogVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCBtdWx0aXBsZSB0aW1lcy5cbiAgICpcbiAgICogQHBhcmFtIHBvcnQgVGhlIHBvcnQgZGVmaW5pdGlvbi5cbiAgICovXG4gIHB1YmxpYyBiaW5kKHBvcnQ6IG51bWJlciwgb3B0aW9uczogU2VydmljZUJpbmRPcHRpb25zID0geyB9KSB7XG4gICAgdGhpcy5fcG9ydHMucHVzaCh7IC4uLm9wdGlvbnMsIHBvcnQgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmVxdWlyZSB0aGlzIHNlcnZpY2UgdG8gc2VsZWN0IHBvZHMgbWF0Y2hpbmcgdGhlIHNlbGVjdG9yLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgaW52b2tpbmcgdGhpcyBtZXRob2QgbXVsdGlwbGUgdGltZXMgYWN0cyBhcyBhbiBBTkQgb3BlcmF0b3JcbiAgICogb24gdGhlIHJlc3VsdGluZyBsYWJlbHMuXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0KHNlbGVjdG9yOiBwb2QuSVBvZFNlbGVjdG9yKSB7XG4gICAgY29uc3QgbGFiZWxzID0gc2VsZWN0b3IudG9Qb2RTZWxlY3RvckNvbmZpZygpLmxhYmVsU2VsZWN0b3IuX3RvS3ViZSgpLm1hdGNoTGFiZWxzID8/IHt9O1xuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKGxhYmVscykpIHtcbiAgICAgIHRoaXMuX3NlbGVjdG9yW2tleV0gPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVxdWlyZSB0aGlzIHNlcnZpY2UgdG8gc2VsZWN0IHBvZHMgd2l0aCB0aGlzIGxhYmVsLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgaW52b2tpbmcgdGhpcyBtZXRob2QgbXVsdGlwbGUgdGltZXMgYWN0cyBhcyBhbiBBTkQgb3BlcmF0b3JcbiAgICogb24gdGhlIHJlc3VsdGluZyBsYWJlbHMuXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0TGFiZWwoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9zZWxlY3RvcltrZXldID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgX3RvS3ViZSgpOiBrOHMuU2VydmljZVNwZWMge1xuICAgIGlmICh0aGlzLl9wb3J0cy5sZW5ndGggPT09IDAgJiYgdGhpcy50eXBlICE9PSBTZXJ2aWNlVHlwZS5FWFRFUk5BTF9OQU1FKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Egc2VydmljZSBtdXN0IGJlIGNvbmZpZ3VyZWQgd2l0aCBhIHBvcnQnKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eXBlID09PSBTZXJ2aWNlVHlwZS5FWFRFUk5BTF9OQU1FICYmIHRoaXMuZXh0ZXJuYWxOYW1lID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQSBzZXJ2aWNlIHdpdGggdHlwZSBFWFRFUk5BTF9OQU1FIHJlcXVpcmVzIGFuIGV4dGVybmFsTmFtZSBwcm9wJyk7XG4gICAgfVxuXG4gICAgY29uc3QgcG9ydHM6IGs4cy5TZXJ2aWNlUG9ydFtdID0gW107XG5cbiAgICBmb3IgKGNvbnN0IHBvcnQgb2YgdGhpcy5fcG9ydHMpIHtcbiAgICAgIHBvcnRzLnB1c2goe1xuICAgICAgICBuYW1lOiBwb3J0Lm5hbWUsXG4gICAgICAgIHBvcnQ6IHBvcnQucG9ydCxcbiAgICAgICAgdGFyZ2V0UG9ydDogcG9ydC50YXJnZXRQb3J0ID8gazhzLkludE9yU3RyaW5nLmZyb21OdW1iZXIocG9ydC50YXJnZXRQb3J0KSA6IHVuZGVmaW5lZCxcbiAgICAgICAgbm9kZVBvcnQ6IHBvcnQubm9kZVBvcnQsXG4gICAgICAgIHByb3RvY29sOiBwb3J0LnByb3RvY29sLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudHlwZSAhPT0gU2VydmljZVR5cGUuRVhURVJOQUxfTkFNRSA/IHtcbiAgICAgIGNsdXN0ZXJJcDogdGhpcy5jbHVzdGVySVAsXG4gICAgICBleHRlcm5hbElQczogdGhpcy5fZXh0ZXJuYWxJUHMsXG4gICAgICBleHRlcm5hbE5hbWU6IHRoaXMuZXh0ZXJuYWxOYW1lLFxuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgc2VsZWN0b3I6IHRoaXMuX3NlbGVjdG9yLFxuICAgICAgcG9ydHM6IHBvcnRzLFxuICAgICAgbG9hZEJhbGFuY2VyU291cmNlUmFuZ2VzOiB0aGlzLl9sb2FkQmFsYW5jZXJTb3VyY2VSYW5nZXMsXG4gICAgICBwdWJsaXNoTm90UmVhZHlBZGRyZXNzZXM6IHRoaXMuX3B1Ymxpc2hOb3RSZWFkeUFkZHJlc3NlcyxcbiAgICB9IDoge1xuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgZXh0ZXJuYWxOYW1lOiB0aGlzLmV4dGVybmFsTmFtZSxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFNlcnZpY2UuYmluZGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmljZUJpbmRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoaXMgcG9ydCB3aXRoaW4gdGhlIHNlcnZpY2UuIFRoaXMgbXVzdCBiZSBhIEROU19MQUJFTC4gQWxsXG4gICAqIHBvcnRzIHdpdGhpbiBhIFNlcnZpY2VTcGVjIG11c3QgaGF2ZSB1bmlxdWUgbmFtZXMuIFRoaXMgbWFwcyB0byB0aGUgJ05hbWUnXG4gICAqIGZpZWxkIGluIEVuZHBvaW50UG9ydCBvYmplY3RzLiBPcHRpb25hbCBpZiBvbmx5IG9uZSBTZXJ2aWNlUG9ydCBpcyBkZWZpbmVkXG4gICAqIG9uIHRoaXMgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3J0IG9uIGVhY2ggbm9kZSBvbiB3aGljaCB0aGlzIHNlcnZpY2UgaXMgZXhwb3NlZCB3aGVuIHR5cGU9Tm9kZVBvcnRcbiAgICogb3IgTG9hZEJhbGFuY2VyLiBVc3VhbGx5IGFzc2lnbmVkIGJ5IHRoZSBzeXN0ZW0uIElmIHNwZWNpZmllZCwgaXQgd2lsbCBiZVxuICAgKiBhbGxvY2F0ZWQgdG8gdGhlIHNlcnZpY2UgaWYgdW51c2VkIG9yIGVsc2UgY3JlYXRpb24gb2YgdGhlIHNlcnZpY2Ugd2lsbFxuICAgKiBmYWlsLiBEZWZhdWx0IGlzIHRvIGF1dG8tYWxsb2NhdGUgYSBwb3J0IGlmIHRoZSBTZXJ2aWNlVHlwZSBvZiB0aGlzIFNlcnZpY2VcbiAgICogcmVxdWlyZXMgb25lLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8va3ViZXJuZXRlcy5pby9kb2NzL2NvbmNlcHRzL3NlcnZpY2VzLW5ldHdvcmtpbmcvc2VydmljZS8jdHlwZS1ub2RlcG9ydFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGF1dG8tYWxsb2NhdGUgYSBwb3J0IGlmIHRoZSBTZXJ2aWNlVHlwZSBvZiB0aGlzIFNlcnZpY2UgcmVxdWlyZXMgb25lLlxuICAgKi9cbiAgcmVhZG9ubHkgbm9kZVBvcnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBJUCBwcm90b2NvbCBmb3IgdGhpcyBwb3J0LiBTdXBwb3J0cyBcIlRDUFwiLCBcIlVEUFwiLCBhbmQgXCJTQ1RQXCIuIERlZmF1bHQgaXMgVENQLlxuICAgKlxuICAgKiBAZGVmYXVsdCBQcm90b2NvbC5UQ1BcbiAgICovXG4gIHJlYWRvbmx5IHByb3RvY29sPzogY29udGFpbmVyLlByb3RvY29sO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9ydCBudW1iZXIgdGhlIHNlcnZpY2Ugd2lsbCByZWRpcmVjdCB0by5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgdmFsdWUgb2YgYHBvcnRgIHdpbGwgYmUgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFBvcnQ/OiBudW1iZXI7XG59XG5cbi8qKlxuICogRGVmaW5pdGlvbiBvZiBhIHNlcnZpY2UgcG9ydC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2aWNlUG9ydCBleHRlbmRzIFNlcnZpY2VCaW5kT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3J0IG51bWJlciB0aGUgc2VydmljZSB3aWxsIGJpbmQgdG8uXG4gICAqL1xuICByZWFkb25seSBwb3J0OiBudW1iZXI7XG59XG4iXX0=
|