aws-cdk-neuronx-patterns 0.0.16 → 0.0.17
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 +2 -2
- package/lib/base/aws-batch/neuronx-batch-compute-environment.js +1 -1
- package/lib/base/aws-batch/neuronx-batch-ecs-job-definition.js +1 -1
- package/lib/base/aws-batch/neuronx-batch.js +1 -1
- package/lib/base/aws-ecs-patterns/application-load-balanced-neuronx-service.js +2 -2
- package/lib/base/neuronx/deep-learning-containers.js +1 -1
- package/lib/base/neuronx/model.js +2 -2
- package/lib/base/neuronx/neuron-optimized-machine-image.js +1 -1
- package/lib/base/neuronx/neuronx-instance-type.js +3 -3
- package/lib/base/neuronx-compiler/neuronx-compiler.js +1 -1
- package/lib/base/server-engine/vllm-engine/vllm-engine-argments.js +3 -3
- package/lib/vllm-nxd-inference/vllm-nxd-inference-compiler.js +2 -2
- package/lib/vllm-nxd-inference/vllm-nxd-inference-ecs-patterns.js +4 -4
- package/package.json +1 -1
package/.jsii
CHANGED
|
@@ -11688,6 +11688,6 @@
|
|
|
11688
11688
|
"symbolId": "src/base/server-engine/vllm-engine/vllm-engine-argments:VllmTask"
|
|
11689
11689
|
}
|
|
11690
11690
|
},
|
|
11691
|
-
"version": "0.0.
|
|
11692
|
-
"fingerprint": "
|
|
11691
|
+
"version": "0.0.17",
|
|
11692
|
+
"fingerprint": "pZEHkOvO1RWAt8xmxhNqGAHClTFB4xlyNFkA5PirFuA="
|
|
11693
11693
|
}
|
|
@@ -41,5 +41,5 @@ class NeuronxBatchComputeEnvironment extends constructs_1.Construct {
|
|
|
41
41
|
}
|
|
42
42
|
exports.NeuronxBatchComputeEnvironment = NeuronxBatchComputeEnvironment;
|
|
43
43
|
_a = JSII_RTTI_SYMBOL_1;
|
|
44
|
-
NeuronxBatchComputeEnvironment[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxBatchComputeEnvironment", version: "0.0.
|
|
44
|
+
NeuronxBatchComputeEnvironment[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxBatchComputeEnvironment", version: "0.0.17" };
|
|
45
45
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV1cm9ueC1iYXRjaC1jb21wdXRlLWVudmlyb25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jhc2UvYXdzLWJhdGNoL25ldXJvbngtYmF0Y2gtY29tcHV0ZS1lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLCtDQUErQztBQUMvQyxpREFBcUQ7QUFFckQsMkNBQXVDO0FBQ3ZDLHdDQUF5RDtBQVF6RDs7R0FFRztBQUNILE1BQWEsOEJBQ1gsU0FBUSxzQkFBUztJQVdqQixZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUEwQztRQUUxQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLElBQUk7WUFDN0I7Z0JBQ0UsS0FBSyxFQUFFLElBQUkscUNBQTJCLENBQ3BDLElBQUksRUFDSiw2QkFBNkIsQ0FDOUI7Z0JBQ0QsU0FBUyxFQUFFLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVO2FBQ2hEO1NBQ0YsQ0FBQztRQUNGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQ3ZELElBQUksRUFDSixVQUFVLEVBQ1Y7WUFDRSxHQUFHLEtBQUs7WUFDUixNQUFNO1NBQ1AsQ0FDRixDQUFDO1FBQ0YsSUFDRSxLQUFLLENBQUMsY0FBYztZQUNwQixLQUFLLENBQUMsY0FBYyxZQUFZLHdCQUFjLEVBQzlDLENBQUM7WUFFQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUNwQixDQUFDLG1CQUFtQixDQUNuQix5Q0FBeUMsRUFDekMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsQ0FDekMsQ0FBQztRQUNKLENBQUM7UUFFRCxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQztRQUNqRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQztRQUNuRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFDN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztRQUM3QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFhLENBQUM7SUFDbEQsQ0FBQztJQUNELGtCQUFrQixDQUFDLE1BQXFCO1FBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0MsQ0FBQzs7QUExREgsd0VBMkRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVtb3ZhbFBvbGljeSwgUmVzb3VyY2VFbnZpcm9ubWVudCwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGJhdGNoIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYmF0Y2hcIjtcbmltcG9ydCB7IExhdW5jaFRlbXBsYXRlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IElSb2xlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBOZXVyb25PcHRpbWl6ZWRNYWNoaW5lSW1hZ2UgfSBmcm9tIFwiLi4vbmV1cm9ueFwiO1xuXG4vKipcbiAqIFByb3BzIG9mIE5ldXJvbnhCYXRjaC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXVyb254QmF0Y2hDb21wdXRlRW52aXJvbm1lbnRQcm9wc1xuICBleHRlbmRzIGJhdGNoLk1hbmFnZWRFYzJFY3NDb21wdXRlRW52aXJvbm1lbnRQcm9wcyB7fVxuXG4vKipcbiAqIE5ldXJvbnggYmF0Y2ggY29uc3RydWN0LlxuICovXG5leHBvcnQgY2xhc3MgTmV1cm9ueEJhdGNoQ29tcHV0ZUVudmlyb25tZW50XG4gIGV4dGVuZHMgQ29uc3RydWN0XG4gIGltcGxlbWVudHMgYmF0Y2guSUNvbXB1dGVFbnZpcm9ubWVudFxue1xuICByZWFkb25seSBjb21wdXRlRW52aXJvbm1lbnROYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGNvbXB1dGVFbnZpcm9ubWVudEFybjogc3RyaW5nO1xuICByZWFkb25seSBzZXJ2aWNlUm9sZT86IElSb2xlIHwgdW5kZWZpbmVkO1xuICByZWFkb25seSBlbmFibGVkOiBib29sZWFuO1xuICByZWFkb25seSBzdGFjazogU3RhY2s7XG4gIHJlYWRvbmx5IGVudjogUmVzb3VyY2VFbnZpcm9ubWVudDtcbiAgcmVhZG9ubHkgaW5zdGFuY2VSb2xlOiBJUm9sZTtcbiAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZTogYmF0Y2guTWFuYWdlZEVjMkVjc0NvbXB1dGVFbnZpcm9ubWVudDtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBOZXVyb254QmF0Y2hDb21wdXRlRW52aXJvbm1lbnRQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGltYWdlcyA9IHByb3BzLmltYWdlcyA/PyBbXG4gICAgICB7XG4gICAgICAgIGltYWdlOiBuZXcgTmV1cm9uT3B0aW1pemVkTWFjaGluZUltYWdlKFxuICAgICAgICAgIHRoaXMsXG4gICAgICAgICAgXCJOZXVyb25PcHRpbWl6ZWRNYWNoaW5lSW1hZ2VcIixcbiAgICAgICAgKSxcbiAgICAgICAgaW1hZ2VUeXBlOiBiYXRjaC5FY3NNYWNoaW5lSW1hZ2VUeXBlLkVDU19BTDIwMjMsXG4gICAgICB9LFxuICAgIF07XG4gICAgdGhpcy5yZXNvdXJjZSA9IG5ldyBiYXRjaC5NYW5hZ2VkRWMyRWNzQ29tcHV0ZUVudmlyb25tZW50KFxuICAgICAgdGhpcyxcbiAgICAgIFwiUmVzb3VyY2VcIixcbiAgICAgIHtcbiAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgIGltYWdlcyxcbiAgICAgIH0sXG4gICAgKTtcbiAgICBpZiAoXG4gICAgICBwcm9wcy5sYXVuY2hUZW1wbGF0ZSAmJlxuICAgICAgcHJvcHMubGF1bmNoVGVtcGxhdGUgaW5zdGFuY2VvZiBMYXVuY2hUZW1wbGF0ZVxuICAgICkge1xuICAgICAgKFxuICAgICAgICB0aGlzLnJlc291cmNlLm5vZGUuZGVmYXVsdENoaWxkIGFzIGJhdGNoLkNmbkNvbXB1dGVFbnZpcm9ubWVudFxuICAgICAgKS5hZGRQcm9wZXJ0eU92ZXJyaWRlKFxuICAgICAgICBcIkNvbXB1dGVSZXNvdXJjZXMuTGF1bmNoVGVtcGxhdGUuVmVyc2lvblwiLFxuICAgICAgICBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXRlc3RWZXJzaW9uTnVtYmVyLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmNvbXB1dGVFbnZpcm9ubWVudEFybiA9IHRoaXMucmVzb3VyY2UuY29tcHV0ZUVudmlyb25tZW50QXJuO1xuICAgIHRoaXMuY29tcHV0ZUVudmlyb25tZW50TmFtZSA9IHRoaXMucmVzb3VyY2UuY29tcHV0ZUVudmlyb25tZW50TmFtZTtcbiAgICB0aGlzLmVuYWJsZWQgPSB0aGlzLnJlc291cmNlLmVuYWJsZWQ7XG4gICAgdGhpcy5lbnYgPSB0aGlzLnJlc291cmNlLmVudjtcbiAgICB0aGlzLnNlcnZpY2VSb2xlID0gdGhpcy5yZXNvdXJjZS5zZXJ2aWNlUm9sZTtcbiAgICB0aGlzLnN0YWNrID0gdGhpcy5yZXNvdXJjZS5zdGFjaztcbiAgICB0aGlzLmluc3RhbmNlUm9sZSA9IHRoaXMucmVzb3VyY2UuaW5zdGFuY2VSb2xlITtcbiAgfVxuICBhcHBseVJlbW92YWxQb2xpY3kocG9saWN5OiBSZW1vdmFsUG9saWN5KTogdm9pZCB7XG4gICAgdGhpcy5yZXNvdXJjZS5hcHBseVJlbW92YWxQb2xpY3kocG9saWN5KTtcbiAgfVxufVxuIl19
|
|
@@ -55,5 +55,5 @@ class NeuronxBatchEcsJobDefinition extends constructs_1.Construct {
|
|
|
55
55
|
}
|
|
56
56
|
exports.NeuronxBatchEcsJobDefinition = NeuronxBatchEcsJobDefinition;
|
|
57
57
|
_a = JSII_RTTI_SYMBOL_1;
|
|
58
|
-
NeuronxBatchEcsJobDefinition[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxBatchEcsJobDefinition", version: "0.0.
|
|
58
|
+
NeuronxBatchEcsJobDefinition[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxBatchEcsJobDefinition", version: "0.0.17" };
|
|
59
59
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV1cm9ueC1iYXRjaC1lY3Mtam9iLWRlZmluaXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFzZS9hd3MtYmF0Y2gvbmV1cm9ueC1iYXRjaC1lY3Mtam9iLWRlZmluaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFNQSwrQ0FBK0M7QUFFL0MsMkNBQXVDO0FBWXZDOztHQUVHO0FBQ0gsTUFBYSw0QkFDWCxTQUFRLHNCQUFTO0lBYWpCLFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQXdDO1FBRXhDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsTUFBTSxlQUFlLEdBQ25CLEtBQUssQ0FBQyxlQUFlO1lBQ3JCLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNyRCxlQUFlLENBQUMsVUFBVSxDQUN4QixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDWixNQUFNLEVBQUUsS0FBSyxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLEtBQUs7U0FDekQsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDcEIsUUFBUSxFQUFFLGNBQWMsS0FBSyxFQUFFO1lBQy9CLGFBQWEsRUFBRSxjQUFjLEtBQUssRUFBRTtZQUNwQyxXQUFXLEVBQUU7Z0JBQ1gsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUk7Z0JBQzNCLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDLENBQ0osQ0FBQztRQUNGLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUMzRCxHQUFHLEtBQUs7WUFDUixTQUFTLEVBQUUsSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQzVDLElBQUksRUFDSixxQkFBcUIsRUFDckI7Z0JBQ0UsR0FBRyxLQUFLO2dCQUNSLGVBQWU7YUFDaEIsQ0FDRjtTQUNGLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDO1FBQ3pELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUM7UUFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQztRQUNqRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDO1FBQ3JELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDO1FBQzNELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDckMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUNqQyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO0lBQy9CLENBQUM7SUFDRCxrQkFBa0IsQ0FBQyxNQUFxQjtRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxRQUE2QjtRQUM1QyxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRDs7T0FFRztJQUNILGNBQWMsQ0FBQyxRQUFvQixFQUFFLEtBQXNCO1FBQ3pELElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDOztBQW5FSCxvRUFvRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEdXJhdGlvbixcbiAgUmVtb3ZhbFBvbGljeSxcbiAgUmVzb3VyY2VFbnZpcm9ubWVudCxcbiAgU3RhY2ssXG59IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgYmF0Y2ggZnJvbSBcImF3cy1jZGstbGliL2F3cy1iYXRjaFwiO1xuaW1wb3J0IHsgSUdyYW50YWJsZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgSU5ldXJvbnhJbnN0YW5jZVR5cGUgfSBmcm9tIFwiLi4vbmV1cm9ueFwiO1xuXG4vKipcbiAqIFByb3BzIG9mIE5ldXJvbnhCYXRjaC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXVyb254QmF0Y2hFY3NKb2JEZWZpbml0aW9uUHJvcHNcbiAgZXh0ZW5kcyBiYXRjaC5FY3NFYzJDb250YWluZXJEZWZpbml0aW9uUHJvcHMsXG4gICAgYmF0Y2guSm9iRGVmaW5pdGlvblByb3BzIHtcbiAgcmVhZG9ubHkgbmV1cm9ueEluc3RhbmNlVHlwZTogSU5ldXJvbnhJbnN0YW5jZVR5cGU7XG59XG5cbi8qKlxuICogTmV1cm9ueCBiYXRjaCBjb25zdHJ1Y3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBOZXVyb254QmF0Y2hFY3NKb2JEZWZpbml0aW9uXG4gIGV4dGVuZHMgQ29uc3RydWN0XG4gIGltcGxlbWVudHMgYmF0Y2guSUpvYkRlZmluaXRpb25cbntcbiAgcmVhZG9ubHkgam9iRGVmaW5pdGlvbkFybjogc3RyaW5nO1xuICByZWFkb25seSBqb2JEZWZpbml0aW9uTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBwYXJhbWV0ZXJzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbiAgcmVhZG9ubHkgcmV0cnlBdHRlbXB0cz86IG51bWJlcjtcbiAgcmVhZG9ubHkgcmV0cnlTdHJhdGVnaWVzOiBiYXRjaC5SZXRyeVN0cmF0ZWd5W107XG4gIHJlYWRvbmx5IHNjaGVkdWxpbmdQcmlvcml0eT86IG51bWJlcjtcbiAgcmVhZG9ubHkgdGltZW91dD86IER1cmF0aW9uO1xuICByZWFkb25seSBzdGFjazogU3RhY2s7XG4gIHJlYWRvbmx5IGVudjogUmVzb3VyY2VFbnZpcm9ubWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZTogYmF0Y2guRWNzSm9iRGVmaW5pdGlvbjtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBOZXVyb254QmF0Y2hFY3NKb2JEZWZpbml0aW9uUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgY29uc3QgbGludXhQYXJhbWV0ZXJzID1cbiAgICAgIHByb3BzLmxpbnV4UGFyYW1ldGVycyA/P1xuICAgICAgbmV3IGJhdGNoLkxpbnV4UGFyYW1ldGVycyh0aGlzLCBcIkxpbnV4UGFyYW1ldGVyc1wiKTtcbiAgICBsaW51eFBhcmFtZXRlcnMuYWRkRGV2aWNlcyhcbiAgICAgIC4uLkFycmF5LmZyb20oe1xuICAgICAgICBsZW5ndGg6IHByb3BzLm5ldXJvbnhJbnN0YW5jZVR5cGUuYWNjZWxlcmF0b3JDaGlwcy5jaGlwcyxcbiAgICAgIH0pLm1hcCgoXywgaW5kZXgpID0+ICh7XG4gICAgICAgIGhvc3RQYXRoOiBgL2Rldi9uZXVyb24ke2luZGV4fWAsXG4gICAgICAgIGNvbnRhaW5lclBhdGg6IGAvZGV2L25ldXJvbiR7aW5kZXh9YCxcbiAgICAgICAgcGVybWlzc2lvbnM6IFtcbiAgICAgICAgICBiYXRjaC5EZXZpY2VQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgICAgYmF0Y2guRGV2aWNlUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgXSxcbiAgICAgIH0pKSxcbiAgICApO1xuICAgIHRoaXMucmVzb3VyY2UgPSBuZXcgYmF0Y2guRWNzSm9iRGVmaW5pdGlvbih0aGlzLCBcIlJlc291cmNlXCIsIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY29udGFpbmVyOiBuZXcgYmF0Y2guRWNzRWMyQ29udGFpbmVyRGVmaW5pdGlvbihcbiAgICAgICAgdGhpcyxcbiAgICAgICAgXCJDb250YWluZXJEZWZpbml0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgICBsaW51eFBhcmFtZXRlcnMsXG4gICAgICAgIH0sXG4gICAgICApLFxuICAgIH0pO1xuICAgIHRoaXMuam9iRGVmaW5pdGlvbkFybiA9IHRoaXMucmVzb3VyY2Uuam9iRGVmaW5pdGlvbkFybjtcbiAgICB0aGlzLmpvYkRlZmluaXRpb25OYW1lID0gdGhpcy5yZXNvdXJjZS5qb2JEZWZpbml0aW9uTmFtZTtcbiAgICB0aGlzLnBhcmFtZXRlcnMgPSB0aGlzLnJlc291cmNlLnBhcmFtZXRlcnM7XG4gICAgdGhpcy5yZXRyeUF0dGVtcHRzID0gdGhpcy5yZXNvdXJjZS5yZXRyeUF0dGVtcHRzO1xuICAgIHRoaXMucmV0cnlTdHJhdGVnaWVzID0gdGhpcy5yZXNvdXJjZS5yZXRyeVN0cmF0ZWdpZXM7XG4gICAgdGhpcy5zY2hlZHVsaW5nUHJpb3JpdHkgPSB0aGlzLnJlc291cmNlLnNjaGVkdWxpbmdQcmlvcml0eTtcbiAgICB0aGlzLnRpbWVvdXQgPSB0aGlzLnJlc291cmNlLnRpbWVvdXQ7XG4gICAgdGhpcy5zdGFjayA9IHRoaXMucmVzb3VyY2Uuc3RhY2s7XG4gICAgdGhpcy5lbnYgPSB0aGlzLnJlc291cmNlLmVudjtcbiAgfVxuICBhcHBseVJlbW92YWxQb2xpY3kocG9saWN5OiBSZW1vdmFsUG9saWN5KTogdm9pZCB7XG4gICAgdGhpcy5yZXNvdXJjZS5hcHBseVJlbW92YWxQb2xpY3kocG9saWN5KTtcbiAgfVxuICBhZGRSZXRyeVN0cmF0ZWd5KHN0cmF0ZWd5OiBiYXRjaC5SZXRyeVN0cmF0ZWd5KTogdm9pZCB7XG4gICAgdGhpcy5yZXNvdXJjZS5hZGRSZXRyeVN0cmF0ZWd5KHN0cmF0ZWd5KTtcbiAgfVxuICAvKipcbiAgICogR3JhbnRzIHRoZSBgYmF0Y2g6c3VibWl0Sm9iYCBwZXJtaXNzaW9uIHRvIHRoZSBpZGVudGl0eSBvbiBib3RoIHRoaXMgam9iIGRlZmluaXRpb24gYW5kIHRoZSBgcXVldWVgXG4gICAqL1xuICBncmFudFN1Ym1pdEpvYihpZGVudGl0eTogSUdyYW50YWJsZSwgcXVldWU6IGJhdGNoLklKb2JRdWV1ZSk6IHZvaWQge1xuICAgIHRoaXMucmVzb3VyY2UuZ3JhbnRTdWJtaXRKb2IoaWRlbnRpdHksIHF1ZXVlKTtcbiAgfVxufVxuIl19
|
|
@@ -58,5 +58,5 @@ class NeuronxBatch extends constructs_1.Construct {
|
|
|
58
58
|
}
|
|
59
59
|
exports.NeuronxBatch = NeuronxBatch;
|
|
60
60
|
_a = JSII_RTTI_SYMBOL_1;
|
|
61
|
-
NeuronxBatch[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxBatch", version: "0.0.
|
|
61
|
+
NeuronxBatch[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxBatch", version: "0.0.17" };
|
|
62
62
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV1cm9ueC1iYXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXNlL2F3cy1iYXRjaC9uZXVyb254LWJhdGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsK0NBQStDO0FBQy9DLDJDQUEyQztBQUMzQywyQ0FBdUM7QUFDdkMsd0NBQStFO0FBb0MvRTs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLHNCQUFTO0lBR3pDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBd0I7UUFDaEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLGNBQWMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQ3BFLFlBQVksRUFBRTtnQkFDWjtvQkFDRSxVQUFVLEVBQUUsV0FBVztvQkFDdkIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztpQkFDbEU7YUFDRjtTQUNGLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FDakUsSUFBSSxFQUNKLG9CQUFvQixFQUNwQjtZQUNFLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRztZQUNkLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtZQUM1QixhQUFhLEVBQUUsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsWUFBWSxDQUFDO1lBQ3ZELHlCQUF5QixFQUFFLEtBQUs7WUFDaEMsTUFBTSxFQUFFO2dCQUNOO29CQUNFLEtBQUssRUFBRSxJQUFJLHFDQUEyQixDQUFDLElBQUksRUFBRSxhQUFhLENBQUM7b0JBQzNELFNBQVMsRUFBRSxLQUFLLENBQUMsbUJBQW1CLENBQUMsVUFBVTtpQkFDaEQ7YUFDRjtZQUNELGNBQWM7WUFDZCxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7U0FDakIsQ0FDRixDQUFDO1FBRUEsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxZQUM5QixDQUFDLG1CQUFtQixDQUNuQix5Q0FBeUMsRUFDekMsY0FBYyxDQUFDLG1CQUFtQixDQUNuQyxDQUFDO1FBQ0YsTUFBTSxlQUFlLEdBQ25CLEtBQUssQ0FBQyxlQUFlO1lBQ3JCLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUNyRCxlQUFlLENBQUMsVUFBVSxDQUN4QixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDWixNQUFNLEVBQUUsS0FBSyxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLEtBQUs7U0FDekQsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDcEIsUUFBUSxFQUFFLGNBQWMsS0FBSyxFQUFFO1lBQy9CLGFBQWEsRUFBRSxjQUFjLEtBQUssRUFBRTtZQUNwQyxXQUFXLEVBQUU7Z0JBQ1gsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUk7Z0JBQzNCLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLO2FBQzdCO1NBQ0YsQ0FBQyxDQUFDLENBQ0osQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUNyRSxTQUFTLEVBQUUsSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQzVDLElBQUksRUFDSixxQkFBcUIsRUFDckI7Z0JBQ0UsR0FBRyxLQUFLO2dCQUNSLGVBQWU7YUFDaEIsQ0FDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBOURILG9DQStEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpemUgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGJhdGNoIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYmF0Y2hcIjtcbmltcG9ydCAqIGFzIGVjMiBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjMlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IElOZXVyb254SW5zdGFuY2VUeXBlLCBOZXVyb25PcHRpbWl6ZWRNYWNoaW5lSW1hZ2UgfSBmcm9tIFwiLi4vbmV1cm9ueFwiO1xuXG4vKipcbiAqIFByb3BzIG9mIE5ldXJvbnhCYXRjaC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXVyb254QmF0Y2hQcm9wc1xuICBleHRlbmRzIGJhdGNoLkVjc0VjMkNvbnRhaW5lckRlZmluaXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBWUEMgaW4gd2hpY2ggdGhpcyB3aWxsIGxhdW5jaCB3b3JrZXIgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuICAvKipcbiAgICogVGhlIGluc3RhbmNlIHR5cGUgb2Ygd29ya2VyIGluc3RhbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbmV1cm9ueEluc3RhbmNlVHlwZTogSU5ldXJvbnhJbnN0YW5jZVR5cGU7XG4gIC8qKlxuICAgKiBUaGUgcm9vdCB2b2x1bWUgb2Ygd29ya2VyIGluc3RhbmNlLlxuICAgKiBAZGVmYXVsdCAtIE4gYmlsaW9uIHBhcmFtZXRlcnMgKiA1R2lCIEVCU1xuICAgKi9cbiAgcmVhZG9ubHkgdm9sdW1lU2l6ZTogU2l6ZTtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHVzZSBzcG90IGluc3RhbmNlcy5cbiAgICogU3BvdCBpbnN0YW5jZXMgYXJlIGxlc3MgZXhwZW5zaXZlIEVDMiBpbnN0YW5jZXMgdGhhdCBjYW4gYmUgcmVjbGFpbWVkIGJ5IEVDMiBhdCBhbnkgdGltZTtcbiAgICogeW91ciBqb2Igd2lsbCBiZSBnaXZlbiB0d28gbWludXRlcyBvZiBub3RpY2UgYmVmb3JlIHJlY2xhbWF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3BvdD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgVlBDIFN1Ym5ldHMgdGhpcyBDb21wdXRlIEVudmlyb25tZW50IHdpbGwgbGF1bmNoIGluc3RhbmNlcyBpbi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBuZXcgc3VibmV0cyB3aWxsIGJlIGNyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IHZwY1N1Ym5ldHM/OiBlYzIuU3VibmV0U2VsZWN0aW9uO1xufVxuXG4vKipcbiAqIE5ldXJvbnggYmF0Y2ggY29uc3RydWN0LlxuICovXG5leHBvcnQgY2xhc3MgTmV1cm9ueEJhdGNoIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgY29tcHV0ZUVudmlyb25tZW50OiBiYXRjaC5NYW5hZ2VkRWMyRWNzQ29tcHV0ZUVudmlyb25tZW50O1xuICByZWFkb25seSBqb2JEZWZpbml0aW9uOiBiYXRjaC5FY3NKb2JEZWZpbml0aW9uO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV1cm9ueEJhdGNoUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IGxhdW5jaFRlbXBsYXRlID0gbmV3IGVjMi5MYXVuY2hUZW1wbGF0ZSh0aGlzLCBcIkxhdW5jaFRlbXBsYXRlXCIsIHtcbiAgICAgIGJsb2NrRGV2aWNlczogW1xuICAgICAgICB7XG4gICAgICAgICAgZGV2aWNlTmFtZTogXCIvZGV2L3h2ZGFcIixcbiAgICAgICAgICB2b2x1bWU6IGVjMi5CbG9ja0RldmljZVZvbHVtZS5lYnMocHJvcHMudm9sdW1lU2l6ZS50b0dpYmlieXRlcygpKSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSk7XG4gICAgdGhpcy5jb21wdXRlRW52aXJvbm1lbnQgPSBuZXcgYmF0Y2guTWFuYWdlZEVjMkVjc0NvbXB1dGVFbnZpcm9ubWVudChcbiAgICAgIHRoaXMsXG4gICAgICBcIkNvbXB1dGVFbnZpcm9ubWVudFwiLFxuICAgICAge1xuICAgICAgICB2cGM6IHByb3BzLnZwYyxcbiAgICAgICAgdnBjU3VibmV0czogcHJvcHMudnBjU3VibmV0cyxcbiAgICAgICAgaW5zdGFuY2VUeXBlczogW3Byb3BzLm5ldXJvbnhJbnN0YW5jZVR5cGUuaW5zdGFuY2VUeXBlXSxcbiAgICAgICAgdXNlT3B0aW1hbEluc3RhbmNlQ2xhc3NlczogZmFsc2UsXG4gICAgICAgIGltYWdlczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGltYWdlOiBuZXcgTmV1cm9uT3B0aW1pemVkTWFjaGluZUltYWdlKHRoaXMsIFwiTWFjaGluSW1hZ2VcIiksXG4gICAgICAgICAgICBpbWFnZVR5cGU6IGJhdGNoLkVjc01hY2hpbmVJbWFnZVR5cGUuRUNTX0FMMjAyMyxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBsYXVuY2hUZW1wbGF0ZSxcbiAgICAgICAgc3BvdDogcHJvcHMuc3BvdCxcbiAgICAgIH0sXG4gICAgKTtcbiAgICAoXG4gICAgICB0aGlzLmNvbXB1dGVFbnZpcm9ubWVudC5ub2RlLmRlZmF1bHRDaGlsZCBhcyBiYXRjaC5DZm5Db21wdXRlRW52aXJvbm1lbnRcbiAgICApLmFkZFByb3BlcnR5T3ZlcnJpZGUoXG4gICAgICBcIkNvbXB1dGVSZXNvdXJjZXMuTGF1bmNoVGVtcGxhdGUuVmVyc2lvblwiLFxuICAgICAgbGF1bmNoVGVtcGxhdGUubGF0ZXN0VmVyc2lvbk51bWJlcixcbiAgICApO1xuICAgIGNvbnN0IGxpbnV4UGFyYW1ldGVycyA9XG4gICAgICBwcm9wcy5saW51eFBhcmFtZXRlcnMgPz9cbiAgICAgIG5ldyBiYXRjaC5MaW51eFBhcmFtZXRlcnModGhpcywgXCJMaW51eFBhcmFtZXRlcnNcIik7XG4gICAgbGludXhQYXJhbWV0ZXJzLmFkZERldmljZXMoXG4gICAgICAuLi5BcnJheS5mcm9tKHtcbiAgICAgICAgbGVuZ3RoOiBwcm9wcy5uZXVyb254SW5zdGFuY2VUeXBlLmFjY2VsZXJhdG9yQ2hpcHMuY2hpcHMsXG4gICAgICB9KS5tYXAoKF8sIGluZGV4KSA9PiAoe1xuICAgICAgICBob3N0UGF0aDogYC9kZXYvbmV1cm9uJHtpbmRleH1gLFxuICAgICAgICBjb250YWluZXJQYXRoOiBgL2Rldi9uZXVyb24ke2luZGV4fWAsXG4gICAgICAgIHBlcm1pc3Npb25zOiBbXG4gICAgICAgICAgYmF0Y2guRGV2aWNlUGVybWlzc2lvbi5SRUFELFxuICAgICAgICAgIGJhdGNoLkRldmljZVBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgIF0sXG4gICAgICB9KSksXG4gICAgKTtcbiAgICB0aGlzLmpvYkRlZmluaXRpb24gPSBuZXcgYmF0Y2guRWNzSm9iRGVmaW5pdGlvbih0aGlzLCBcIkpvYkRlZmluaXRpb25cIiwge1xuICAgICAgY29udGFpbmVyOiBuZXcgYmF0Y2guRWNzRWMyQ29udGFpbmVyRGVmaW5pdGlvbihcbiAgICAgICAgdGhpcyxcbiAgICAgICAgXCJDb250YWluZXJEZWZpbml0aW9uXCIsXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5wcm9wcyxcbiAgICAgICAgICBsaW51eFBhcmFtZXRlcnMsXG4gICAgICAgIH0sXG4gICAgICApLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -58,7 +58,7 @@ class NeuronxTaskDefinition extends ecs.Ec2TaskDefinition {
|
|
|
58
58
|
}
|
|
59
59
|
exports.NeuronxTaskDefinition = NeuronxTaskDefinition;
|
|
60
60
|
_a = JSII_RTTI_SYMBOL_1;
|
|
61
|
-
NeuronxTaskDefinition[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxTaskDefinition", version: "0.0.
|
|
61
|
+
NeuronxTaskDefinition[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxTaskDefinition", version: "0.0.17" };
|
|
62
62
|
class ApplicationLoadBalancedNeuronxService extends aws_ecs_patterns_1.ApplicationLoadBalancedEc2Service {
|
|
63
63
|
constructor(scope, id, props) {
|
|
64
64
|
const neuronxTaskDefinition = props.taskDefinition;
|
|
@@ -132,5 +132,5 @@ mount-s3 ${neuronxTaskDefinition.compiledModel.bucket.bucketName} /mnt/${neuronx
|
|
|
132
132
|
}
|
|
133
133
|
exports.ApplicationLoadBalancedNeuronxService = ApplicationLoadBalancedNeuronxService;
|
|
134
134
|
_b = JSII_RTTI_SYMBOL_1;
|
|
135
|
-
ApplicationLoadBalancedNeuronxService[_b] = { fqn: "aws-cdk-neuronx-patterns.ApplicationLoadBalancedNeuronxService", version: "0.0.
|
|
135
|
+
ApplicationLoadBalancedNeuronxService[_b] = { fqn: "aws-cdk-neuronx-patterns.ApplicationLoadBalancedNeuronxService", version: "0.0.17" };
|
|
136
136
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbG9hZC1iYWxhbmNlZC1uZXVyb254LXNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFzZS9hd3MtZWNzLXBhdHRlcm5zL2FwcGxpY2F0aW9uLWxvYWQtYmFsYW5jZWQtbmV1cm9ueC1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQXVDO0FBQ3ZDLGlFQUlxQztBQUNyQyxpREFBcUQ7QUFDckQsMkNBQTJDO0FBQzNDLG1FQUdzQztBQUV0Qyx3Q0FJb0I7QUE4QnBCLE1BQWEscUJBQ1gsU0FBUSxHQUFHLENBQUMsaUJBQWlCO0lBUTdCLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsTUFBTSxtQkFBbUIsR0FDdkIsS0FBSyxDQUFDLG1CQUFtQixJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUM7UUFDM0UsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUMsa0JBQWtCLElBQUksQ0FBQyxDQUFDO1FBQ3pELE1BQU0sZ0JBQWdCLEdBQ3BCLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQztRQUN6RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLEdBQUcsS0FBSztZQUNSLG9CQUFvQixFQUFFO2dCQUNwQixHQUFHLENBQUMsS0FBSyxDQUFDLG9CQUFvQixJQUFJLEVBQUUsQ0FBQztnQkFDckMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FDOUIscUJBQXFCLGdCQUFnQixFQUFFLENBQ3hDO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FDN0IsR0FBRyxLQUFLLENBQUMsSUFBSSxD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QyxRQUFRLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUM1QixDQUFDO1FBQ0YscUJBQXFCLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RSxNQUFNLFFBQVEsR0FBRyxJQUFJLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUscUJBQXFCLEVBQUU7WUFDeEUsZ0JBQWdCO1NBQ2pCLENBQUMsQ0FBQztRQUNILE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUMzQyxDQUFDOztBQTFGSCxzRkEyRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtcbiAgQXV0b1NjYWxpbmdHcm91cCxcbiAgQmxvY2tEZXZpY2VWb2x1bWUsXG4gIEVic0RldmljZVZvbHVtZVR5cGUsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYXV0b3NjYWxpbmdcIjtcbmltcG9ydCB7IFBvcnQsIFVzZXJEYXRhIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCAqIGFzIGVjcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRFYzJTZXJ2aWNlLFxuICBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZEVjMlNlcnZpY2VQcm9wcyxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3MtcGF0dGVybnNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBJTmV1cm9ueEluc3RhbmNlVHlwZSxcbiAgTmV1cm9uT3B0aW1pemVkTWFjaGluZUltYWdlLFxuICBQeXRvcmNoVHJhaW5pbmdOZXVyb254SW1hZ2UsXG59IGZyb20gXCIuLi9uZXVyb254XCI7XG5pbXBvcnQgeyBOZXVyb254Q29tcGlsZWRNb2RlbCB9IGZyb20gXCIuLi9uZXVyb254LWNvbXBpbGVyXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV1cm9ueFRhc2tEZWZpbml0aW9uUHJvcHNCYXNlXG4gIGV4dGVuZHMgZWNzLkVjMlRhc2tEZWZpbml0aW9uUHJvcHMge1xuICAvKipcbiAgICogVGhlIGluc3RhbmNlIHR5cGUgb2YgY29tcGlsZSB3b3JrZXIgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBuZXVyb254SW5zdGFuY2VUeXBlPzogSU5ldXJvbnhJbnN0YW5jZVR5cGU7XG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHRlbnNvciBwYXJhbGxlbCBzaXplLlxuICAgKiBAZGVmYXVsdCAtIDFcbiAgICovXG4gIHJlYWRvbmx5IHRlbnNvclBhcmFsbGVsU2l6ZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZXVyb254VGFza0RlZmluaXRpb25Qcm9wc1xuICBleHRlbmRzIE5ldXJvbnhUYXNrRGVmaW5pdGlvblByb3BzQmFzZSB7XG4gIC8qKlxuICAgKiBUaGUgbW9kZWwgdG8gYmUgY29tcGlsZWQuXG4gICAqL1xuICByZWFkb25seSBjb21waWxlZE1vZGVsOiBOZXVyb254Q29tcGlsZWRNb2RlbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTmV1cm9ueFRhc2tEZWZpbml0aW9uIGV4dGVuZHMgZWNzLklFYzJUYXNrRGVmaW5pdGlvbiB7XG4gIHJlYWRvbmx5IG5ldXJvbnhJbnN0YW5jZVR5cGU6IElOZXVyb254SW5zdGFuY2VUeXBlO1xuICByZWFkb25seSB0ZW5zb3JQYXJhbGxlbFNpemU6IG51bWJlcjtcbiAgcmVhZG9ubHkgdGFza3NQZXJJbnN0YW5jZTogbnVtYmVyO1xuICByZWFkb25seSBjb21waWxlZE1vZGVsOiBOZXVyb254Q29tcGlsZWRNb2RlbDtcbn1cbmV4cG9ydCBjbGFzcyBOZXVyb254VGFza0RlZmluaXRpb25cbiAgZXh0ZW5kcyBlY3MuRWMyVGFza0RlZmluaXRpb25cbiAgaW1wbGVtZW50cyBJTmV1cm9ueFRhc2tEZWZpbml0aW9uXG57XG4gIHJlYWRvbmx5IG5ldXJvbnhJbnN0YW5jZVR5cGU6IElOZXVyb254SW5zdGFuY2VUeXBlO1xuICByZWFkb25seSB0ZW5zb3JQYXJhbGxlbFNpemU6IG51bWJlcjtcbiAgcmVhZG9ubHkgdGFza3NQZXJJbnN0YW5jZTogbnVtYmVyO1xuICByZWFkb25seSBjb21waWxlZE1vZGVsOiBOZXVyb254Q29tcGlsZWRNb2RlbDtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGxpbnV4UGFyYW1ldGVyczogZWNzLkxpbnV4UGFyYW1ldGVycztcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE5ldXJvbnhUYXNrRGVmaW5pdGlvblByb3BzKSB7XG4gICAgY29uc3QgbmV1cm9ueEluc3RhbmNlVHlwZSA9XG4gICAgICBwcm9wcy5uZXVyb254SW5zdGFuY2VUeXBlID8/IHByb3BzLmNvbXBpbGVkTW9kZWwuY29tcGlsZVRpbWVJbnN0YW5jZVR5cGU7XG4gICAgY29uc3QgdGVuc29yUGFyYWxsZWxTaXplID0gcHJvcHMudGVuc29yUGFyYWxsZWxTaXplID8/IDE7XG4gICAgY29uc3QgdGFza3NQZXJJbnN0YW5jZSA9XG4gICAgICBuZXVyb254SW5zdGFuY2VUeXBlLmFjY2VsZXJhdG9yQ2hpcHMubmV1cm9ueENvcmVzIC8gdGVuc29yUGFyYWxsZWxTaXplO1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBwbGFjZW1lbnRDb25zdHJhaW50czogW1xuICAgICAgICAuLi4ocHJvcHMucGxhY2VtZW50Q29uc3RyYWludHMgPz8gW10pLFxuICAgICAgICBlY3MuUGxhY2VtZW50Q29uc3RyYWludC5tZW1iZXJPZihcbiAgICAgICAgICBgcnVubmluZ1Rhc2tzQ291bnQ8JHt0YXNrc1Blckluc3RhbmNlfWAsXG4gICAgICAgICksXG4gICAgICBdLFxuICAgIH0pO1xuICAgIHRoaXMubGludXhQYXJhbWV0ZXJzID0gbmV3IGVjcy5MaW51eFBhcmFtZXRlcnModGhpcywgXCJMaW51eFBhcmFtZXRlcnNcIik7XG4gICAgdGhpcy5saW51eFBhcmFtZXRlcnMuYWRkRGV2aWNlcyhcbiAgICAgIC4uLkFycmF5LmZyb20oe1xuICAgICAgICBsZW5ndGg6IG5ldXJvbnhJbnN0YW5jZVR5cGU/LmFjY2VsZXJhdG9yQ2hpcHMuY2hpcHMgPz8gMSxcbiAgICAgIH0pLm1hcDxlY3MuRGV2aWNlPigoXywgaW5kZXgpID0+ICh7XG4gICAgICAgIGhvc3RQYXRoOiBgL2Rldi9uZXVyb24ke2luZGV4fWAsXG4gICAgICAgIGNvbnRhaW5lclBhdGg6IGAvZGV2L25ldXJvbiR7aW5kZXh9YCxcbiAgICAgICAgcGVybWlzc2lvbnM6IFtlY3MuRGV2aWNlUGVybWlzc2lvbi5SRUFELCBlY3MuRGV2aWNlUGVybWlzc2lvbi5XUklURV0sXG4gICAgICB9KSksXG4gICAgKTtcbiAgICBpZiAodGhpcy5leGVjdXRpb25Sb2xlKSB7XG4gICAgICBwcm9wcy5jb21waWxlZE1vZGVsLmJ1Y2tldC5ncmFudFJlYWQodGhpcy5leGVjdXRpb25Sb2xlKTtcbiAgICB9XG4gICAgcHJvcHMuY29tcGlsZWRNb2RlbC5idWNrZXQuZ3JhbnRSZWFkKHRoaXMudGFza1JvbGUpO1xuICAgIHRoaXMuY29tcGlsZWRNb2RlbCA9IHByb3BzLmNvbXBpbGVkTW9kZWw7XG4gICAgdGhpcy5uZXVyb254SW5zdGFuY2VUeXBlID0gbmV1cm9ueEluc3RhbmNlVHlwZTtcbiAgICB0aGlzLnRlbnNvclBhcmFsbGVsU2l6ZSA9IHRlbnNvclBhcmFsbGVsU2l6ZTtcbiAgICB0aGlzLnRhc2tzUGVySW5zdGFuY2UgPSB0YXNrc1Blckluc3RhbmNlO1xuICB9XG5cbiAgYWRkQ29udGFpbmVyV2l0aERlZmF1bHQoXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogZWNzLkNvbnRhaW5lckRlZmluaXRpb25PcHRpb25zLFxuICApOiBlY3MuQ29udGFpbmVyRGVmaW5pdGlvbiB7XG4gICAgY29uc3QgY29udGFpbmVyID0gc3VwZXIuYWRkQ29udGFpbmVyKGlkLCB7XG4gICAgICBsb2dnaW5nOiBlY3MuTG9nRHJpdmVyLmF3c0xvZ3Moe1xuICAgICAgICBzdHJlYW1QcmVmaXg6IGlkLFxuICAgICAgfSksXG4gICAgICBsaW51eFBhcmFtZXRlcnM6IHRoaXMubGludXhQYXJhbWV0ZXJzLFxuICAgICAgbWVtb3J5UmVzZXJ2YXRpb25NaUI6IE1hdGguY2VpbChcbiAgICAgICAgKHRoaXMubmV1cm9ueEluc3RhbmNlVHlwZS5tZW1vcnkudG9NZWJpYnl0ZXMoKSAqIDAuOCkgL1xuICAgICAgICAgIHRoaXMudGFza3NQZXJJbnN0YW5jZSxcbiAgICAgICksXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KTtcbiAgICBjb250YWluZXIuYWRkTW91bnRQb2ludHMoe1xuICAgICAgc291cmNlVm9sdW1lOiBcIm1vZGVsXCIsXG4gICAgICBjb250YWluZXJQYXRoOiBcIi9vcHQvbWwvbW9kZWxcIixcbiAgICAgIHJlYWRPbmx5OiBmYWxzZSxcbiAgICB9KTtcbiAgICByZXR1cm4gY29udGFpbmVyO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWROZXVyb254U2VydmljZVByb3BzXG4gIGV4dGVuZHMgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRFYzJTZXJ2aWNlUHJvcHMge31cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZE5ldXJvbnhTZXJ2aWNlIGV4dGVuZHMgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRFYzJTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZE5ldXJvbnhTZXJ2aWNlUHJvcHMsXG4gICkge1xuICAgIGNvbnN0IG5ldXJvbnhUYXNrRGVmaW5pdGlvbiA9IHByb3BzLnRhc2tEZWZpbml0aW9uO1xuICAgIGlmIChcbiAgICAgICFuZXVyb254VGFza0RlZmluaXRpb24gfHxcbiAgICAgICEobmV1cm9ueFRhc2tEZWZpbml0aW9uIGluc3RhbmNlb2YgTmV1cm9ueFRhc2tEZWZpbml0aW9uKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwidGFza0RlZmluaXRpb24gbXVzdCBleHRlbmQgTmV1cm9ueFRhc2tEZWZpbml0aW9uXCIpO1xuICAgIH1cbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIGhlYWx0aENoZWNrR3JhY2VQZXJpb2Q6XG4gICAgICAgIHByb3BzLmhlYWx0aENoZWNrR3JhY2VQZXJpb2QgPz8gRHVyYXRpb24ubWludXRlcygxNSksXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNsdXN0ZXIgPSB0aGlzLmdldERlZmF1bHRDbHVzdGVyKHRoaXMsIHByb3BzLnZwYyk7XG5cbiAgICAvLyBpbnN0YWxsIGFuZCBtb3VudCBtb3VudHBvaW50IGZvciBzM1xuICAgIGNvbnN0IHVzZXJEYXRhID0gVXNlckRhdGEuZm9yTGludXgoKTtcbiAgICB1c2VyRGF0YS5hZGRDb21tYW5kcyhgXG4jIS9iaW4vYmFzaCAtZVxuXG4jIEluc3RhbGwgTW91bnRwb2ludFxuTVBfUlBNPSQobWt0ZW1wIC0tc3VmZml4PS5ycG0pXG5jdXJsIGh0dHBzOi8vczMuYW1hem9uYXdzLmNvbS9tb3VudHBvaW50LXMzLXJlbGVhc2UvbGF0ZXN0L3g4Nl82NC9tb3VudC1zMy5ycG0gPiAkTVBfUlBNXG5cbiMgY2xvdWQtaW5pdCBpbnN0YWxscyBjb25mbGljdCB3aXRoIFNTTSBhZ2VudDogaHR0cHM6Ly9naXRodWIuY29tL2FtYXpvbmxpbnV4L2FtYXpvbi1saW51eC0yMDIzL2lzc3Vlcy8zOTdcbmF0dGVtcHQ9MFxubWF4X2F0dGVtcHRzPTVcbnVudGlsIGRuZiBpbnN0YWxsIC15ICRNUF9SUE07IGRvXG4gICAgYXR0ZW1wdD0kKChhdHRlbXB0ICsgMSkpXG4gICAgaWYgWyAkYXR0ZW1wdCAtZ2UgJG1heF9hdHRlbXB0cyBdOyB0aGVuXG4gICAgICAgIGVjaG8gXCJGYWlsZWQgdG8gaW5zdGFsbCBtb3VudC1zMyBhZnRlciAkbWF4X2F0dGVtcHRzIGF0dGVtcHRzLiBFeGl0aW5nLlwiXG4gICAgICAgIGV4aXQgMVxuICAgIGZpXG4gICAgZWNobyBcImRuZiBpbnN0YWxsIG1vdW50LXMzIGZhaWxlZCAoYXR0ZW1wdCAkYXR0ZW1wdC8kbWF4X2F0dGVtcHRzKSwgcmV0cnlpbmcgaW4gMyBzZWNvbmRzLi4uXCJcbiAgICBzbGVlcCAzXG5kb25lXG5cbnJtICRNUF9SUE1cblxuIyBTZXR1cCB0aGUgZnN0YWIgZmlsZSBhbmQgY3JlYXRlIHRoZSBtb3VudFxubWtkaXIgLS1wYXJlbnRzIC9tbnQvJHtuZXVyb254VGFza0RlZmluaXRpb24uY29tcGlsZWRNb2RlbC5idWNrZXQuYnVja2V0TmFtZX1cbm1vdW50LXMzICR7bmV1cm9ueFRhc2tEZWZpbml0aW9uLmNvbXBpbGVkTW9kZWwuYnVja2V0LmJ1Y2tldE5hbWV9IC9tbnQvJHtuZXVyb254VGFza0RlZmluaXRpb24uY29tcGlsZWRNb2RlbC5idWNrZXQuYnVja2V0TmFtZX0gLS1hbGxvdy1vdGhlciAtLWZpbGUtbW9kZT02NDQgLS1kaXItbW9kZT03NTVgKTtcblxuICAgIG5ldXJvbnhUYXNrRGVmaW5pdGlvbi5hZGRWb2x1bWUoe1xuICAgICAgbmFtZTogXCJtb2RlbFwiLFxuICAgICAgaG9zdDoge1xuICAgICAgICBzb3VyY2VQYXRoOiBgL21udC8ke25ldXJvbnhUYXNrRGVmaW5pdGlvbi5jb21waWxlZE1vZGVsLmJ1Y2tldC5idWNrZXROYW1lfWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3Qgdm9sdW1lU2l6ZSA9IE1hdGguY2VpbChcbiAgICAgIFB5dG9yY2hUcmFpbmluZ05ldXJvbnhJbWFnZS5zaXplLnRvR2liaWJ5dGVzKCkgK1xuICAgICAgICBOZXVyb25PcHRpbWl6ZWRNYWNoaW5lSW1hZ2Uuc2l6ZS50b0dpYmlieXRlcygpLFxuICAgICk7XG4gICAgY29uc3QgYXV0b1NjYWxpbmdHcm91cCA9IG5ldyBBdXRvU2NhbGluZ0dyb3VwKHRoaXMsIFwiQXV0b1NjYWxpbmdHcm91cFwiLCB7XG4gICAgICB2cGM6IGNsdXN0ZXIudnBjLFxuICAgICAgaW5zdGFuY2VUeXBlOiBuZXVyb254VGFza0RlZmluaXRpb24ubmV1cm9ueEluc3RhbmNlVHlwZS5pbnN0YW5jZVR5cGUsXG4gICAgICBtYWNoaW5lSW1hZ2U6IG5ldyBOZXVyb25PcHRpbWl6ZWRNYWNoaW5lSW1hZ2UoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiTmV1cm9uT3B0aW1pemVkTWFjaGluZUltYWdlXCIsXG4gICAgICApLFxuICAgICAgYmxvY2tEZXZpY2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBkZXZpY2VOYW1lOiBcIi9kZXYveHZkYVwiLFxuICAgICAgICAgIHZvbHVtZTogQmxvY2tEZXZpY2VWb2x1bWUuZWJzKHZvbHVtZVNpemUsIHtcbiAgICAgICAgICAgIHZvbHVtZVR5cGU6IEVic0RldmljZVZvbHVtZVR5cGUuR1AzLFxuICAgICAgICAgICAgZW5jcnlwdGVkOiB0cnVlLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHVzZXJEYXRhLFxuICAgICAgZGVzaXJlZENhcGFjaXR5OiBNYXRoLmNlaWwoXG4gICAgICAgIChwcm9wcy5kZXNpcmVkQ291bnQgPz8gMSkgLyBuZXVyb254VGFza0RlZmluaXRpb24udGFza3NQZXJJbnN0YW5jZSxcbiAgICAgICksXG4gICAgfSk7XG4gICAgYXV0b1NjYWxpbmdHcm91cC5jb25uZWN0aW9ucy5hbGxvd0Zyb20oXG4gICAgICB0aGlzLmxvYWRCYWxhbmNlcixcbiAgICAgIFBvcnQudGNwUmFuZ2UoMzI3NjgsIDYwOTk5KSxcbiAgICApO1xuICAgIG5ldXJvbnhUYXNrRGVmaW5pdGlvbi5jb21waWxlZE1vZGVsLmJ1Y2tldC5ncmFudFJlYWQoYXV0b1NjYWxpbmdHcm91cCk7XG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgZWNzLkFzZ0NhcGFjaXR5UHJvdmlkZXIodGhpcywgXCJBc2dDYXBhY2l0eVByb3ZpZGVyXCIsIHtcbiAgICAgIGF1dG9TY2FsaW5nR3JvdXAsXG4gICAgfSk7XG4gICAgY2x1c3Rlci5hZGRBc2dDYXBhY2l0eVByb3ZpZGVyKHByb3ZpZGVyKTtcbiAgfVxufVxuIl19
|
|
@@ -47,6 +47,6 @@ class PytorchTrainingNeuronxImage extends NeuronxImage {
|
|
|
47
47
|
}
|
|
48
48
|
exports.PytorchTrainingNeuronxImage = PytorchTrainingNeuronxImage;
|
|
49
49
|
_a = JSII_RTTI_SYMBOL_1;
|
|
50
|
-
PytorchTrainingNeuronxImage[_a] = { fqn: "aws-cdk-neuronx-patterns.PytorchTrainingNeuronxImage", version: "0.0.
|
|
50
|
+
PytorchTrainingNeuronxImage[_a] = { fqn: "aws-cdk-neuronx-patterns.PytorchTrainingNeuronxImage", version: "0.0.17" };
|
|
51
51
|
PytorchTrainingNeuronxImage.imageName = "public.ecr.aws/neuron/pytorch-training-neuronx";
|
|
52
52
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcC1sZWFybmluZy1jb250YWluZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jhc2UvbmV1cm9ueC9kZWVwLWxlYXJuaW5nLWNvbnRhaW5lcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBbUM7QUFPbkMsTUFBZSxZQUFZO0lBNEZ6QixNQUFNLENBQUMsY0FBYyxDQUNuQixjQUFzQixFQUN0QixhQUFxQixFQUNyQixjQUFzQixFQUN0QixhQUFxQjtRQUVyQixPQUFPO1lBQ0wsVUFBVSxFQUFFLGNBQWM7WUFDMUIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLFFBQVEsRUFBRSxHQUFHLGNBQWMsY0FBYyxhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxjQUFjLFVBQVUsYUFBYSxFQUFFO1NBQ3RILENBQUM7SUFDSixDQUFDOztBQXRHZSxpQkFBSSxHQUFHLGtCQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0FBQzFDLHdCQUF3QjtBQUNSLHVCQUFVLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FDdEQsUUFBUSxFQUNSLE1BQU0sRUFDTixPQUFPLEVBQ1AsT0FBTyxDQUNSLENBQUM7QUFDRix3QkFBd0I7QUFDUix1QkFBVSxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQ3RELFFBQVEsRUFDUixNQUFNLEVBQ04sT0FBTyxFQUNQLE9BQU8sQ0FDUixDQUFDO0FBQ0Ysd0JBQXdCO0FBQ1IsdUJBQVUsR0FBRyxZQUFZLENBQUMsY0FBYyxDQUN0RCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLENBQ1IsQ0FBQztBQUNGLHdCQUF3QjtBQUNSLHVCQUFVLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FDdEQsUUFBUSxFQUNSLE1BQU0sRUFDTixPQUFPLEVBQ1AsT0FBTyxDQUNSLENBQUM7QUFDRix3QkFBd0I7QUFDUix1QkFBVSxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQ3RELFFBQVEsRUFDUixNQUFNLEVBQ04sT0FBTyxFQUNQLE9BQU8sQ0FDUixDQUFDO0FBQ0Ysd0JBQXdCO0FBQ1IsdUJBQVUsR0FBRyxZQUFZLENBQUMsY0FBYyxDQUN0RCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLENBQ1IsQ0FBQztBQUNGLHdCQUF3QjtBQUNSLHVCQUFVLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FDdEQsUUFBUSxFQUNSLE1BQU0sRUFDTixPQUFPLEVBQ1AsT0FBTyxDQUNSLENBQUM7QUFDRix3QkFBd0I7QUFDUix1QkFBVSxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQ3RELFFBQVEsRUFDUixNQUFNLEVBQ04sT0FBTyxFQUNQLE9BQU8sQ0FDUixDQUFDO0FBQ0Ysd0JBQXdCO0FBQ1IsdUJBQVUsR0FBRyxZQUFZLENBQUMsY0FBYyxDQUN0RCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLENBQ1IsQ0FBQztBQUNGLHdCQUF3QjtBQUNSLHVCQUFVLEdBQUcsWUFBWSxDQUFDLGNBQWMsQ0FDdEQsUUFBUSxFQUNSLE1BQU0sRUFDTixPQUFPLEVBQ1AsT0FBTyxDQUNSLENBQUM7QUFDRix3QkFBd0I7QUFDUix1QkFBVSxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQ3RELFFBQVEsRUFDUixNQUFNLEVBQ04sT0FBTyxFQUNQLE9BQU8sQ0FDUixDQUFDO0FBQ0Ysd0JBQXdCO0FBQ1IsdUJBQVUsR0FBRyxZQUFZLENBQUMsY0FBYyxDQUN0RCxRQUFRLEVBQ1IsTUFBTSxFQUNOLE9BQU8sRUFDUCxPQUFPLENBQ1IsQ0FBQztBQUNGLHdCQUF3QjtBQUNSLG1CQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7S0FDbEQsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUNyQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ3hDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQWtCLENBQUM7QUFpQjVDLE1BQWEsMkJBQTRCLFNBQVEsWUFBWTs7QUFBN0Qsa0VBRUM7OztBQURpQixxQ0FBUyxHQUFHLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2l6ZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIElOZXVyb254SW1hZ2Uge1xuICByZWFkb25seSBpbWFnZU5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgaW1hZ2VUYWc6IHN0cmluZztcbiAgcmVhZG9ubHkgc2RrVmVyc2lvbjogc3RyaW5nO1xufVxuYWJzdHJhY3QgY2xhc3MgTmV1cm9ueEltYWdlIHtcbiAgc3RhdGljIHJlYWRvbmx5IHNpemUgPSBTaXplLmdpYmlieXRlcygzMCk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjMuMCAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjNfMCA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjMuMFwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi42LjBcIixcbiAgICBcIjIyLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjIuMCAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjJfMCA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjIuMFwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi41LjFcIixcbiAgICBcIjIyLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjEuMSAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjFfMSA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjEuMVwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi41LjFcIixcbiAgICBcIjIyLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjEuMCAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjFfMCA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjEuMFwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi41LjFcIixcbiAgICBcIjIyLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjAuMiAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjBfMiA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjAuMlwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjAuMSAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjBfMSA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjAuMVwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMjAuMCAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMjBfMCA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMjAuMFwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMTkuMSAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMTlfMSA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMTkuMVwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMTkuMCAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMTlfMCA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMTkuMFwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMTguMiAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMThfMiA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMTguMlwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMTguMSAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMThfMSA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMTguMVwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBOZXVyb24gU0RLIDIuMTguMCAqL1xuICBzdGF0aWMgcmVhZG9ubHkgU0RLXzJfMThfMCA9IE5ldXJvbnhJbWFnZS5mcm9tU2RrVmVyc2lvbihcbiAgICBcIjIuMTguMFwiLFxuICAgIFwiMy4xMFwiLFxuICAgIFwiMi4xLjJcIixcbiAgICBcIjIwLjA0XCIsXG4gICk7XG4gIC8qKiBMYXRlc3QgTmV1cm9uIFNESyAqL1xuICBzdGF0aWMgcmVhZG9ubHkgTEFURVNUID0gT2JqZWN0LmVudHJpZXMoTmV1cm9ueEltYWdlKVxuICAgIC5maWx0ZXIoKFtrXSkgPT4gay5zdGFydHNXaXRoKFwiU0RLX1wiKSlcbiAgICAuc29ydCgoW2sxXSwgW2syXSkgPT4gKGsxIDwgazIgPyAxIDogLTEpKVxuICAgIC5tYXAoKFtfLCB2XSkgPT4gdilbMF0gYXMgSU5ldXJvbnhJbWFnZTtcblxuICBzdGF0aWMgZnJvbVNka1ZlcnNpb24oXG4gICAgbmV1cm9ueFZlcnNpb246IHN0cmluZyxcbiAgICBweXRob25WZXJzaW9uOiBzdHJpbmcsXG4gICAgcHl0b3JjaFZlcnNpb246IHN0cmluZyxcbiAgICB1YnVudHVWZXJzaW9uOiBzdHJpbmcsXG4gICk6IElOZXVyb254SW1hZ2Uge1xuICAgIHJldHVybiB7XG4gICAgICBzZGtWZXJzaW9uOiBuZXVyb254VmVyc2lvbixcbiAgICAgIGltYWdlTmFtZTogdGhpcy5pbWFnZU5hbWUsXG4gICAgICBpbWFnZVRhZzogYCR7cHl0b3JjaFZlcnNpb259LW5ldXJvbngtcHkke3B5dGhvblZlcnNpb24ucmVwbGFjZShcIi5cIiwgXCJcIil9LXNkayR7bmV1cm9ueFZlcnNpb259LXVidW50dSR7dWJ1bnR1VmVyc2lvbn1gLFxuICAgIH07XG4gIH1cbiAgcHJvdGVjdGVkIHN0YXRpYyByZWFkb25seSBpbWFnZU5hbWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIFB5dG9yY2hUcmFpbmluZ05ldXJvbnhJbWFnZSBleHRlbmRzIE5ldXJvbnhJbWFnZSB7XG4gIHN0YXRpYyByZWFkb25seSBpbWFnZU5hbWUgPSBcInB1YmxpYy5lY3IuYXdzL25ldXJvbi9weXRvcmNoLXRyYWluaW5nLW5ldXJvbnhcIjtcbn1cbiJdfQ==
|
|
@@ -84,7 +84,7 @@ class Parameters {
|
|
|
84
84
|
}
|
|
85
85
|
exports.Parameters = Parameters;
|
|
86
86
|
_a = JSII_RTTI_SYMBOL_1;
|
|
87
|
-
Parameters[_a] = { fqn: "aws-cdk-neuronx-patterns.Parameters", version: "0.0.
|
|
87
|
+
Parameters[_a] = { fqn: "aws-cdk-neuronx-patterns.Parameters", version: "0.0.17" };
|
|
88
88
|
/**
|
|
89
89
|
* Compile target model.
|
|
90
90
|
*/
|
|
@@ -149,5 +149,5 @@ class Model {
|
|
|
149
149
|
}
|
|
150
150
|
exports.Model = Model;
|
|
151
151
|
_b = JSII_RTTI_SYMBOL_1;
|
|
152
|
-
Model[_b] = { fqn: "aws-cdk-neuronx-patterns.Model", version: "0.0.
|
|
152
|
+
Model[_b] = { fqn: "aws-cdk-neuronx-patterns.Model", version: "0.0.17" };
|
|
153
153
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFzZS9uZXVyb254L21vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTBDO0FBRzFDLElBQVksWUFHWDtBQUhELFdBQVksWUFBWTtJQUN0QixnRUFBaUIsQ0FBQTtJQUNqQiw2REFBZSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxZQUFZLDRCQUFaLFlBQVksUUFHdkI7QUFFRDs7R0FFRztBQUNILElBQVksVUFLWDtBQUxELFdBQVksVUFBVTtJQUNwQjs7T0FFRztJQUNILHVCQUFTLENBQUE7QUFDWCxDQUFDLEVBTFcsVUFBVSwwQkFBVixVQUFVLFFBS3JCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLFFBYVg7QUFiRCxXQUFZLFFBQVE7SUFDbEI7O09BRUc7SUFDSCw2RUFBMkIsQ0FBQTtJQUMzQjs7T0FFRztJQUNILHVEQUFnQixDQUFBO0lBQ2hCOztPQUVHO0lBQ0gscUZBQStCLENBQUE7QUFDakMsQ0FBQyxFQWJXLFFBQVEsd0JBQVIsUUFBUSxRQWFuQjtBQUVEOztHQUVHO0FBQ0gsTUFBYSxVQUFVO0lBQ3JCOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsT0FBTyxDQUFDLFVBQWtCO1FBQy9CLE9BQU8sSUFBSSxVQUFVLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFDRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFrQjtRQUMvQixPQUFPLElBQUksVUFBVSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBQ0Q7SUFDRTs7T0FFRztJQUNjLFVBQWtCO1FBQWxCLGVBQVUsR0FBVixVQUFVLENBQVE7SUFDbEMsQ0FBQztJQUNKOzs7T0FHRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO0lBQ25DLENBQUM7SUFDRDs7O09BR0c7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TixNQUFNLENBQVU7UUFDaEIsV0FBTSxHQUFOLE1BQU0sQ0FBUztJQUN2QixDQUFDOztBQWxFTixzQkFtRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTaXplLCBUb2tlbiB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgSUJ1Y2tldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcblxuZXhwb3J0IGVudW0gRGF0YVR5cGVCaXRzIHtcbiAgQkYxNl9PUl9GUDE2ID0gMTYsXG4gIEZQOF9PUl9JTlQ4ID0gOCxcbn1cblxuLyoqXG4gKiBRdWFudCBkYXRhIHR5cGUuXG4gKi9cbmV4cG9ydCBlbnVtIFF1YW50RHR5cGUge1xuICAvKipcbiAgICogaW50OCB3ZWlnaHQgc3RvcmFnZS5cbiAgICovXG4gIFM4ID0gXCJzOFwiLFxufVxuXG4vKipcbiAqIE9wdGltaXphdGlvbiBsZXZlbC5cbiAqL1xuZXhwb3J0IGVudW0gT3B0TGV2ZWwge1xuICAvKipcbiAgICogZW5hYmxlcyB0aGUgY29yZSBwZXJmb3JtYW5jZSBvcHRpbWl6YXRpb25zIGluIHRoZSBjb21waWxlciwgd2hpbGUgYWxzbyBtaW5pbWl6aW5nIGNvbXBpbGUgdGltZS5cbiAgICovXG4gIE1JTklNSVpJTkdfQ09NUElMRV9USU1FID0gMSxcbiAgLyoqXG4gICAqIHByb3ZpZGVzIHRoZSBiZXN0IGJhbGFuY2UgYmV0d2VlbiBtb2RlbCBwZXJmb3JtYW5jZSBhbmQgY29tcGlsZSB0aW1lLlxuICAgKi9cbiAgQkVTVF9CQUxBTkNFID0gMixcbiAgLyoqXG4gICAqIG1heSBwcm92aWRlIGFkZGl0aW9uYWwgbW9kZWwgZXhlY3V0aW9uIHBlcmZvcm1hbmNlIGJ1dCBtYXkgaW5jdXIgbG9uZ2VyIGNvbXBpbGUgdGltZXMgYW5kIGhpZ2hlciBob3N0IG1lbW9yeSB1c2FnZSBkdXJpbmcgbW9kZWwgY29tcGlsYXRpb24uXG4gICAqL1xuICBNT0RFTF9FWEVDVVRJT05fUEVSRk9STUFOQ0UgPSAzLFxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGFtb3VudCBvZiBwYXJhbWV0ZXJzLlxuICovXG5leHBvcnQgY2xhc3MgUGFyYW1ldGVycyB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBQYXJhbWV0ZXJzIHJlcHJlc2VudGluZyBhbiBhbW91bnQgbWlsbGlvbi5cbiAgICogQHBhcmFtIHBhcmFtZXRlcnMgbnVtYmVyIG9mIHBhcmFtZXRlcnMgbWlsbGlvblhcbiAgICogQHJldHVybnMgcGFyYW1ldGVyc1xuICAgKi9cbiAgc3RhdGljIG1pbGxpb24ocGFyYW1ldGVyczogbnVtYmVyKSB7XG4gICAgcmV0dXJuIG5ldyBQYXJhbWV0ZXJzKHBhcmFtZXRlcnMgKiAxMDAwMDAwKTtcbiAgfVxuICAvKipcbiAgICogQ3JlYXRlIGEgUGFyYW1ldGVycyByZXByZXNlbnRpbmcgYW4gYW1vdW50IGJpbGxpb24uXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJzIG51bWJlciBvZiBwYXJhbWV0ZXJzIGJpbGxpb25YXG4gICAqIEByZXR1cm5zIHBhcmFtZXRlcnNcbiAgICovXG4gIHN0YXRpYyBiaWxsaW9uKHBhcmFtZXRlcnM6IG51bWJlcikge1xuICAgIHJldHVybiBuZXcgUGFyYW1ldGVycyhwYXJhbWV0ZXJzICogMTAwMDAwMDAwMCk7XG4gIH1cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICAvKipcbiAgICAgKiBudW1iZXIgb2YgcGFyZW10ZXJzLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcGFyYW1ldGVyczogbnVtYmVyLFxuICApIHt9XG4gIC8qKlxuICAgKiBSZXR1cm4gdGhpcyBudW1iZXIgb2YgcGFyYW1ldGVycyBhcyBtaWxsaW9uLlxuICAgKiBAcmV0dXJucyBUaGlzIG51bWJlciBvZiBwYXJhbWV0ZXJzIGFzIG1pbGxpb24uXG4gICAqL1xuICB0b01pbGxpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMucGFyYW1ldGVycyAvIDEwMDAwMDA7XG4gIH1cbiAgLyoqXG4gICAqIFJldHVybiB0aGlzIG51bWJlciBvZiBwYXJhbWV0ZXJzIGFzIGJpbGxpb24uXG4gICAqIEByZXR1cm5zIFRoaXMgbnVtYmVyIG9mIHBhcmFtZXRlcnMgYXMgYmlsbGlvbi5cbiAgICovXG4gIHRvQmlsbGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5wYXJhbWV0ZXJzIC8gMTAwMDAwMDAwMDtcbiAgfVxuICB3ZWlnaHRTaXplKCkge1xuICAgIHJldHVybiBTaXplLmdpYmlieXRlcyh0aGlzLnRvQmlsbGlvbigpICogMi41KTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vZGVsQ29uZmlnIHtcbiAgcmVhZG9ubHkgbGF5ZXJzOiBudW1iZXI7XG4gIHJlYWRvbmx5IGVtYmVkZGluZ0RpbWVuc2lvbjogbnVtYmVyO1xuICByZWFkb25seSBhdHRlbnRpb25IZWFkczogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvbXBpbGUgdGFyZ2V0IG1vZGVsIGJhc2ljIGluZnJvbWF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kZWxPcHRpb25zIHtcbiAgcmVhZG9ubHkgcGFyYW1ldGVyczogUGFyYW1ldGVycztcbiAgcmVhZG9ubHkgY29uZmlnPzogTW9kZWxDb25maWc7XG4gIHJlYWRvbmx5IG1vZGVsTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb21waWxlIHRhcmdldCBtb2RlbC5cbiAqL1xuZXhwb3J0IGNsYXNzIE1vZGVsIHtcbiAgLyoqXG4gICAqIG1vZGVsIGluZm9ybWF0aW9ucyBhdCBIdWdnaW5nRmFjZVxuICAgKiBAcGFyYW0gbW9kZWxJZCBtb2RlbCBpZCBvbiB0aGUgSHVnZ2luZ0ZhY2VcbiAgICogQHBhcmFtIG9wdGlvbnMgbW9kZWwgYmFzaWMgaW5mb3JtYXRpb25cbiAgICogQHJldHVybnMgbW9kZWwgaW5zdGFuY2VcbiAgICovXG4gIHN0YXRpYyBmcm9tSHVnZ2luZ0ZhY2UobW9kZWxJZDogc3RyaW5nLCBvcHRpb25zPzogTW9kZWxPcHRpb25zKSB7XG4gICAgY29uc3QgcGFyYW1ldGVycyA9IG9wdGlvbnM/LnBhcmFtZXRlcnMgPz8gTW9kZWwubWF5YmVQYXJhbXMobW9kZWxJZCk7XG4gICAgaWYgKCFwYXJhbWV0ZXJzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhlIG51bWJlciBvZiBwYXJhbWV0ZXJzIGNhbm5vdCBiZSBpbmZlcnJlZCBmcm9tIHRoZSBtb2RlbCBJRC4gU2V0IG9wdGlvbmFsIHBhcmFtZXRlcnMuXCIsXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IE1vZGVsKG1vZGVsSWQsIG9wdGlvbnM/Lm1vZGVsTmFtZSA/PyBtb2RlbElkLCB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgcGFyYW1ldGVycyxcbiAgICB9KTtcbiAgfVxuICAvKipcbiAgICogbW9kZWwgaW5mb3JtYXRpb25zIGF0IFMzIEJ1Y2tldFxuICAgKiBAcGFyYW0gYnVja2V0IE1vZGVsIHN0b3JlZCBTMyBCdWNrZXRcbiAgICogQHBhcmFtIHByZWZpeCBNb2RlbCBzdG9yZWQgb2JqZWN0cyBwcmVmaXhcbiAgICogQHBhcmFtIG9wdGlvbnMgbW9kZWwgYmFzaWMgaW5mb3JtYXRpb25cbiAgICogQHJldHVybnMgbW9kZWwgaW5zdGFuY2VcbiAgICovXG4gIHN0YXRpYyBmcm9tQnVja2V0KGJ1Y2tldDogSUJ1Y2tldCwgcHJlZml4OiBzdHJpbmcsIG9wdGlvbnM/OiBNb2RlbE9wdGlvbnMpIHtcbiAgICBpZiAoVG9rZW4uaXNVbnJlc29sdmVkKHByZWZpeCkgJiYgIW9wdGlvbnM/Lm1vZGVsTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiTW9kZWxOYW1lIGlzIHJlcXVpcmVkIHdoZW4gcHJlZml4IGlzIHVucmVzb2x2ZWRcIik7XG4gICAgfVxuICAgIGNvbnN0IG1vZGVsTmFtZSA9IG9wdGlvbnM/Lm1vZGVsTmFtZSA/PyBwcmVmaXguc3BsaXQoXCIvXCIpLnNsaWNlKC0xKVswXTtcbiAgICBjb25zdCBwYXJhbWV0ZXJzID0gb3B0aW9ucz8ucGFyYW1ldGVycyA/PyBNb2RlbC5tYXliZVBhcmFtcyhtb2RlbE5hbWUpO1xuICAgIGlmICghcGFyYW1ldGVycykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIlRoZSBudW1iZXIgb2YgcGFyYW1ldGVycyBjYW5ub3QgYmUgaW5mZXJyZWQgZnJvbSB0aGUgbW9kZWwgSUQuIFNldCBvcHRpb25hbCBwYXJhbWV0ZXJzLlwiLFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBNb2RlbChcbiAgICAgIGJ1Y2tldC5zM1VybEZvck9iamVjdChwcmVmaXgpLFxuICAgICAgbW9kZWxOYW1lLFxuICAgICAgeyAuLi5vcHRpb25zLCBwYXJhbWV0ZXJzIH0sXG4gICAgICBidWNrZXQsXG4gICAgICBwcmVmaXgsXG4gICAgKTtcbiAgfVxuICBwcml2YXRlIHN0YXRpYyBtYXliZVBhcmFtcyhzb3VyY2U6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBiaWxsaW9uID0gc291cmNlLm1hdGNoKC8tKFxcZCspW2JCXS8pO1xuICAgICAgaWYgKGJpbGxpb24/LlsxXSkge1xuICAgICAgICByZXR1cm4gUGFyYW1ldGVycy5iaWxsaW9uKHBhcnNlSW50KGJpbGxpb25bMV0pKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1pbGxpb24gPSBzb3VyY2UubWF0Y2goLy0oXFxkKylbbU1dLyk7XG4gICAgICBpZiAobWlsbGlvbj8uWzFdKSB7XG4gICAgICAgIHJldHVybiBQYXJhbWV0ZXJzLm1pbGxpb24ocGFyc2VJbnQobWlsbGlvblsxXSkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gTk9QXG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihcbiAgICByZWFkb25seSBtb2RlbElkOiBzdHJpbmcsXG4gICAgcmVhZG9ubHkgbW9kZWxOYW1lOiBzdHJpbmcsXG4gICAgcmVhZG9ubHkgb3B0aW9uczogTW9kZWxPcHRpb25zLFxuICAgIHJlYWRvbmx5IGJ1Y2tldD86IElCdWNrZXQsXG4gICAgcmVhZG9ubHkgcHJlZml4Pzogc3RyaW5nLFxuICApIHt9XG59XG4iXX0=
|
|
@@ -42,6 +42,6 @@ class NeuronOptimizedMachineImage extends constructs_1.Construct {
|
|
|
42
42
|
}
|
|
43
43
|
exports.NeuronOptimizedMachineImage = NeuronOptimizedMachineImage;
|
|
44
44
|
_a = JSII_RTTI_SYMBOL_1;
|
|
45
|
-
NeuronOptimizedMachineImage[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronOptimizedMachineImage", version: "0.0.
|
|
45
|
+
NeuronOptimizedMachineImage[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronOptimizedMachineImage", version: "0.0.17" };
|
|
46
46
|
NeuronOptimizedMachineImage.size = aws_cdk_lib_1.Size.gibibytes(30);
|
|
47
47
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV1cm9uLW9wdGltaXplZC1tYWNoaW5lLWltYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jhc2UvbmV1cm9ueC9uZXVyb24tb3B0aW1pemVkLW1hY2hpbmUtaW1hZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBbUQ7QUFDbkQsaURBSzZCO0FBQzdCLHVEQUEwRTtBQUMxRSwyQ0FBMkM7QUFDM0MsbUVBQXdEO0FBQ3hELDJDQUF1QztBQUN2Qyw2QkFBNkI7QUFFN0IsTUFBYSwyQkFDWCxTQUFRLHNCQUFTO0lBS2pCLElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFlBQVksS0FBZ0IsRUFBRSxFQUFVO1FBQ3RDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsTUFBTSxRQUFRLEdBQUcsSUFBSSwyQkFBUSxDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRTtZQUN4RCxjQUFjLEVBQUUsSUFBSSw4QkFBaUIsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7Z0JBQ2hFLElBQUksRUFBRSxpQkFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO2dCQUNqRSxPQUFPLEVBQUUsZUFBZTtnQkFDeEIsT0FBTyxFQUFFLG9CQUFPLENBQUMsYUFBYTtnQkFDOUIsSUFBSSxFQUFFLHNDQUFzQzthQUM3QyxDQUFDO1NBQ0gsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLDRCQUFjLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRTtZQUNyRCxZQUFZLEVBQUUsUUFBUSxDQUFDLFlBQVk7WUFDbkMsWUFBWSxFQUFFLG9CQUFvQjtZQUNsQyxVQUFVLEVBQUU7Z0JBQ1YsS0FBSyxFQUFFLEdBQUcsQ0FBQyxlQUFlLENBQUMsdUJBQXVCLENBQ2hELElBQUksRUFDSixPQUFPLEVBQ1AscUVBQXFFLENBQ3RFLENBQUMsV0FBVzthQUNkO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFFBQVEsQ0FBQyxNQUFpQjtRQUN4QixPQUFPO1lBQ0wsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLE1BQU0sRUFBRSw2QkFBbUIsQ0FBQyxLQUFLO1lBQ2pDLFFBQVEsRUFBRSxrQkFBUSxDQUFDLFFBQVEsRUFBRTtTQUM5QixDQUFDO0lBQ0osQ0FBQzs7QUF2Q0gsa0VBd0NDOzs7QUFwQ2lCLGdDQUFJLEdBQUcsa0JBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXN0b21SZXNvdXJjZSwgU2l6ZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtcbiAgSU1hY2hpbmVJbWFnZSxcbiAgTWFjaGluZUltYWdlQ29uZmlnLFxuICBPcGVyYXRpbmdTeXN0ZW1UeXBlLFxuICBVc2VyRGF0YSxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IENvZGUsIFJ1bnRpbWUsIFNpbmdsZXRvbkZ1bmN0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCAqIGFzIHNzbSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNzbVwiO1xuaW1wb3J0IHsgUHJvdmlkZXIgfSBmcm9tIFwiYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcblxuZXhwb3J0IGNsYXNzIE5ldXJvbk9wdGltaXplZE1hY2hpbmVJbWFnZVxuICBleHRlbmRzIENvbnN0cnVjdFxuICBpbXBsZW1lbnRzIElNYWNoaW5lSW1hZ2VcbntcbiAgc3RhdGljIHJlYWRvbmx5IHNpemUgPSBTaXplLmdpYmlieXRlcygzMCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzb3VyY2U6IEN1c3RvbVJlc291cmNlO1xuICBnZXQgaW1hZ2VJZCgpIHtcbiAgICByZXR1cm4gdGhpcy5yZXNvdXJjZS5nZXRBdHRTdHJpbmcoXCJpbWFnZV9pZFwiKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgUHJvdmlkZXIodGhpcywgXCJOZXVyb254QW1pUHJvdmlkZXJcIiwge1xuICAgICAgb25FdmVudEhhbmRsZXI6IG5ldyBTaW5nbGV0b25GdW5jdGlvbih0aGlzLCBcIk5ldXJvbnhBbWlGdW5jdGlvblwiLCB7XG4gICAgICAgIGNvZGU6IENvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsIFwicHJpdmF0ZS9uZXVyb254LWFtaVwiKSksXG4gICAgICAgIGhhbmRsZXI6IFwiaW5kZXgub25FdmVudFwiLFxuICAgICAgICBydW50aW1lOiBSdW50aW1lLk5PREVKU19MQVRFU1QsXG4gICAgICAgIHV1aWQ6IFwiMDhjOTg1MGEtNmYxMy00ZWQ0LTllMmQtNzg4OGQ3YjVhMjU4XCIsXG4gICAgICB9KSxcbiAgICB9KTtcbiAgICB0aGlzLnJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsIFwiTmV1cm9ueEFtaVwiLCB7XG4gICAgICBzZXJ2aWNlVG9rZW46IHByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICAgIHJlc291cmNlVHlwZTogXCJDdXN0b206Ok5ldXJvbnhBbWlcIixcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgaW1hZ2U6IHNzbS5TdHJpbmdQYXJhbWV0ZXIuZnJvbVN0cmluZ1BhcmFtZXRlck5hbWUoXG4gICAgICAgICAgdGhpcyxcbiAgICAgICAgICBcIkltYWdlXCIsXG4gICAgICAgICAgXCIvYXdzL3NlcnZpY2UvZWNzL29wdGltaXplZC1hbWkvYW1hem9uLWxpbnV4LTIwMjMvbmV1cm9uL3JlY29tbWVuZGVkXCIsXG4gICAgICAgICkuc3RyaW5nVmFsdWUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG4gIGdldEltYWdlKF9zY29wZTogQ29uc3RydWN0KTogTWFjaGluZUltYWdlQ29uZmlnIHtcbiAgICByZXR1cm4ge1xuICAgICAgaW1hZ2VJZDogdGhpcy5pbWFnZUlkLFxuICAgICAgb3NUeXBlOiBPcGVyYXRpbmdTeXN0ZW1UeXBlLkxJTlVYLFxuICAgICAgdXNlckRhdGE6IFVzZXJEYXRhLmZvckxpbnV4KCksXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
@@ -14,7 +14,7 @@ class Inferentia2Chips {
|
|
|
14
14
|
}
|
|
15
15
|
exports.Inferentia2Chips = Inferentia2Chips;
|
|
16
16
|
_a = JSII_RTTI_SYMBOL_1;
|
|
17
|
-
Inferentia2Chips[_a] = { fqn: "aws-cdk-neuronx-patterns.Inferentia2Chips", version: "0.0.
|
|
17
|
+
Inferentia2Chips[_a] = { fqn: "aws-cdk-neuronx-patterns.Inferentia2Chips", version: "0.0.17" };
|
|
18
18
|
class Trainium1Chips {
|
|
19
19
|
constructor(chips) {
|
|
20
20
|
this.chips = chips;
|
|
@@ -24,7 +24,7 @@ class Trainium1Chips {
|
|
|
24
24
|
}
|
|
25
25
|
exports.Trainium1Chips = Trainium1Chips;
|
|
26
26
|
_b = JSII_RTTI_SYMBOL_1;
|
|
27
|
-
Trainium1Chips[_b] = { fqn: "aws-cdk-neuronx-patterns.Trainium1Chips", version: "0.0.
|
|
27
|
+
Trainium1Chips[_b] = { fqn: "aws-cdk-neuronx-patterns.Trainium1Chips", version: "0.0.17" };
|
|
28
28
|
class NeuronxInstanceTypeBase {
|
|
29
29
|
constructor(props) {
|
|
30
30
|
this.instanceType = props.instanceType;
|
|
@@ -70,7 +70,7 @@ class NeuronxInstanceType {
|
|
|
70
70
|
}
|
|
71
71
|
exports.NeuronxInstanceType = NeuronxInstanceType;
|
|
72
72
|
_c = JSII_RTTI_SYMBOL_1;
|
|
73
|
-
NeuronxInstanceType[_c] = { fqn: "aws-cdk-neuronx-patterns.NeuronxInstanceType", version: "0.0.
|
|
73
|
+
NeuronxInstanceType[_c] = { fqn: "aws-cdk-neuronx-patterns.NeuronxInstanceType", version: "0.0.17" };
|
|
74
74
|
/**
|
|
75
75
|
* inf2.xlarge
|
|
76
76
|
*/
|
|
@@ -133,5 +133,5 @@ class NeuronxCompiler extends constructs_1.Construct {
|
|
|
133
133
|
}
|
|
134
134
|
exports.NeuronxCompiler = NeuronxCompiler;
|
|
135
135
|
_a = JSII_RTTI_SYMBOL_1;
|
|
136
|
-
NeuronxCompiler[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxCompiler", version: "0.0.
|
|
136
|
+
NeuronxCompiler[_a] = { fqn: "aws-cdk-neuronx-patterns.NeuronxCompiler", version: "0.0.17" };
|
|
137
137
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV1cm9ueC1jb21waWxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXNlL25ldXJvbngtY29tcGlsZXIvbmV1cm9ueC1jb21waWxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUFtRTtBQUNuRSwrQ0FBK0M7QUFDL0MsMkNBQTJDO0FBRTNDLGlEQUE0QztBQUM1Qyx1REFBMEU7QUFFMUUsbUVBQXdEO0FBQ3hELDJDQUF1QztBQUN2QywrQkFBNEI7QUFDNUIsNENBR3NCO0FBQ3RCLHdDQU1vQjtBQW1HcEI7OztHQUdHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLHNCQUFTO0lBVTVDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLFVBQVUsR0FBRyxrQkFBSSxDQUFDLFNBQVMsQ0FDL0IsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxHQUFHLEdBQUcsQ0FDakQsQ0FBQztRQUNGLE1BQU0sVUFBVSxHQUNkLEtBQUssQ0FBQyxVQUFVLEVBQUUsV0FBVyxFQUFFO1lBQy9CLElBQUksQ0FBQyxJQUFJLENBQ1AsVUFBVSxDQUFDLFdBQVcsRUFBRTtnQkFDdEIscUNBQTJCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDOUMscUNBQTJCLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUNqRCxDQUFDO1FBQ0osTUFBTSxjQUFjLEdBQUcsSUFBSSxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtZQUNwRSxZQUFZLEVBQUU7Z0JBQ1o7b0JBQ0UsVUFBVSxFQUFFLFdBQVc7b0JBQ3ZCLE1BQU0sRUFBRSxHQUFHLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRTt3QkFDNUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxt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QUF3QjtnQkFDdEMsVUFBVSxFQUFFO29CQUNWLGdCQUFnQixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsZ0JBQWdCO29CQUNyRCxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXO29CQUN0QyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO2lCQUN4QzthQUNGLENBQUMsQ0FBQztZQUNILElBQUksQ0FBQyxhQUFhLEdBQUc7Z0JBQ25CLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVM7Z0JBQy9CLHVCQUF1QixFQUFFLElBQUksQ0FBQyxtQkFBbUI7Z0JBQ2pELE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtnQkFDbkIsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUMvQixVQUFVLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQzVDO2dCQUNELFFBQVEsRUFBRSxVQUFVLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUFDO2dCQUNyRCxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7YUFDNUIsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQzs7QUFsSkgsMENBbUpDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UsIER1cmF0aW9uLCBTaXplLCBUYWdzIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBiYXRjaCBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWJhdGNoXCI7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IENvbnRhaW5lckltYWdlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCB7IEdyYW50IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IENvZGUsIFJ1bnRpbWUsIFNpbmdsZXRvbkZ1bmN0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IElCdWNrZXQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXMzXCI7XG5pbXBvcnQgeyBQcm92aWRlciB9IGZyb20gXCJhd3MtY2RrLWxpYi9jdXN0b20tcmVzb3VyY2VzXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQge1xuICBOZXVyb254QmF0Y2hDb21wdXRlRW52aXJvbm1lbnQsXG4gIE5ldXJvbnhCYXRjaEVjc0pvYkRlZmluaXRpb24sXG59IGZyb20gXCIuLi9hd3MtYmF0Y2hcIjtcbmltcG9ydCB7XG4gIElOZXVyb254SW5zdGFuY2VUeXBlLFxuICBNb2RlbCxcbiAgTmV1cm9uT3B0aW1pemVkTWFjaGluZUltYWdlLFxuICBOZXVyb254SW5zdGFuY2VUeXBlLFxuICBQeXRvcmNoVHJhaW5pbmdOZXVyb254SW1hZ2UsXG59IGZyb20gXCIuLi9uZXVyb254XCI7XG5cbi8qKlxuICogQ29tcGlsZSBydW50aW1lLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElOZXVyb254Q29udGFpbmVySW1hZ2Uge1xuICAvKipcbiAgICogQW4gaW1hZ2Ugb2YgdGhlIGNvbnRhaW5lciB3aGVyZSB0aGUgY29tcGlsZSBqb2IgaXMgZXhlY3V0ZWQuXG4gICAqL1xuICByZWFkb25seSBpbWFnZTogQ29udGFpbmVySW1hZ2U7XG4gIC8qKlxuICAgKiBOZXVyb254IHZlcnNpb24gaW5jbHVkZWQgaW4gY29udGFpbmVyIGltYWdlLlxuICAgKi9cbiAgcmVhZG9ubHkgc2RrVmVyc2lvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BzIG9mIE5ldXJvbnhDb21waWxlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOZXVyb254Q29tcGlsZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBWUEMgaW4gd2hpY2ggdGhpcyB3aWxsIGxhdW5jaCBjb21waWxlIHdvcmtlciBpbnN0YW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG4gIC8qKlxuICAgKiBUaGUgYnVja2V0IHRvIHVwbG9hZCBjb21waWxlZCBhcnRpZmFjdHMuXG4gICAqL1xuICByZWFkb25seSBidWNrZXQ6IElCdWNrZXQ7XG4gIC8qKlxuICAgKiBTZWNyZXRzIHRvIHBhc3MgdG8gdGhlIGNvbnRhaW5lci5cbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldHM/OiB7IFtrZXk6IHN0cmluZ106IGJhdGNoLlNlY3JldCB9O1xuICAvKipcbiAgICogUzMgUHJlZml4IHRoYXQgY29tcGlsZWQgYXJ0aWZhY3QgdXBsb2FkZWQuXG4gICAqIFRoaXMgcHJvcGVydHkgaXMgbm90IGRlcGVuZHMgb24gY29tcGlsZSBqb2IgZmluaXNoLlxuICAgKi9cbiAgcmVhZG9ubHkgYXJ0aWZhY3RTM1ByZWZpeDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGluc3RhbmNlIHR5cGUgb2YgY29tcGlsZSB3b3JrZXIgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBuZXVyb254SW5zdGFuY2VUeXBlOiBJTmV1cm9ueEluc3RhbmNlVHlwZTtcbiAgLyoqXG4gICAqIFRoZSBtb2RlbCB0byBiZSBjb21waWxlZC5cbiAgICovXG4gIHJlYWRvbmx5IG1vZGVsOiBNb2RlbDtcbiAgLyoqXG4gICAqIEFuIGltYWdlIG9mIHRoZSBjb250YWluZXIgd2hlcmUgdGhlIGNvbXBpbGUgam9iIGlzIGV4ZWN1dGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2U6IElOZXVyb254Q29udGFpbmVySW1hZ2U7XG4gIHJlYWRvbmx5IGNvbW1hbmQ/OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIFRoZSByb290IHZvbHVtZSBvZiB3b3JrZXIgaW5zdGFuY2UuXG4gICAqIEBkZWZhdWx0IC0gTiBiaWxpb24gcGFyYW1ldGVycyAqIDVHaUIgRUJTXG4gICAqL1xuICByZWFkb25seSB2b2x1bWVTaXplPzogU2l6ZTtcbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHVzZSBzcG90IGluc3RhbmNlcy4gU3BvdCBpbnN0YW5jZXMgYXJlIGxlc3MgZXhwZW5zaXZlIEVDMiBpbnN0YW5jZXMgdGhhdCBjYW4gYmUgcmVjbGFpbWVkIGJ5IEVDMiBhdCBhbnkgdGltZTsgeW91ciBqb2Igd2lsbCBiZSBnaXZlbiB0d28gbWludXRlcyBvZiBub3RpY2UgYmVmb3JlIHJlY2xhbWF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc3BvdD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgVlBDIFN1Ym5ldHMgdGhpcyBDb21wdXRlIEVudmlyb25tZW50IHdpbGwgbGF1bmNoIGluc3RhbmNlcyBpbi5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBuZXcgc3VibmV0cyB3aWxsIGJlIGNyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IHZwY1N1Ym5ldHM/OiBlYzIuU3VibmV0U2VsZWN0aW9uO1xuICAvKipcbiAgICogVGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBwYXNzIHRvIHRoZSBjb250YWluZXIuXG4gICAqIFRoaXMgaXMgb25seSBhcHBsaWNhYmxlIHdoZW4gdXNpbmcgY29udGFpbmVyIHJ1bnRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnQ/OiB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5ldXJvbnhDb21waWxlZE1vZGVsIHtcbiAgcmVhZG9ubHkgY29tcGlsZVRpbWVJbnN0YW5jZVR5cGU6IElOZXVyb254SW5zdGFuY2VUeXBlO1xuICAvKipcbiAgICogVGhlIGJ1Y2tldCB0byB1cGxvYWQgY29tcGlsZWQgYXJ0aWZhY3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0OiBJQnVja2V0O1xuICAvKipcbiAgICogUzMgVVJMIHRoYXQgY29tcGlsZWQgYXJ0aWZhY3QgdXBsb2FkZWQuXG4gICAqL1xuICByZWFkb25seSBzM1VyaTogc3RyaW5nO1xuICAvKipcbiAgICogUzMgcHJlZml4IHRoYXQgY29tcGlsZWQgYXJ0aWZhY3QgdXBsb2FkZWQuXG4gICAqL1xuICByZWFkb25seSBzM1ByZWZpeDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG1vZGVsIG5hbWUuXG4gICAqL1xuICByZWFkb25seSBtb2RlbE5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgd2VpZ2h0U2l6ZTogU2l6ZTtcbn1cblxuLyoqXG4gKiBOZXVyb254IGNvbXBpbGVyIGNvbnN0cnVjdC5cbiAqIENvbXBpbGUgdGhlIG1vZGVsIHRvIHdvcmsgd2l0aCBJbmZlcmVudGlhMiBhbmQgVHJhaW5pdW0xIGFuZCB1cGxvYWQgaXQgdG8gYW4gUzMgYnVja2V0LlxuICovXG5leHBvcnQgY2xhc3MgTmV1cm9ueENvbXBpbGVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSBjb21waWxlZE1vZGVsPzogTmV1cm9ueENvbXBpbGVkTW9kZWw7XG4gIHByaXZhdGUgcmVhZG9ubHkgcHJvdmlkZXI6IFByb3ZpZGVyO1xuICBwcml2YXRlIHJlYWRvbmx5IGpvYkRlZmluaXRpb246IE5ldXJvbnhCYXRjaEVjc0pvYkRlZmluaXRpb247XG4gIHByaXZhdGUgcmVhZG9ubHkgam9iUXVldWU6IGJhdGNoLkpvYlF1ZXVlO1xuICBwcml2YXRlIHJlYWRvbmx5IGFydGlmYWN0UzNQcmVmaXg6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSB3ZWlnaHRTaXplOiBTaXplO1xuICBwcml2YXRlIHJlYWRvbmx5IG5ldXJvbnhJbnN0YW5jZVR5cGU6IElOZXVyb254SW5zdGFuY2VUeXBlO1xuICBwcml2YXRlIHJlYWRvbmx5IG1vZGVsOiBNb2RlbDtcbiAgcHJpdmF0ZSByZWFkb25seSBidWNrZXQ6IElCdWNrZXQ7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOZXVyb254Q29tcGlsZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgY29uc3Qgd2VpZ2h0U2l6ZSA9IFNpemUuZ2liaWJ5dGVzKFxuICAgICAgcHJvcHMubW9kZWwub3B0aW9ucy5wYXJhbWV0ZXJzLnRvQmlsbGlvbigpICogMi41LFxuICAgICk7XG4gICAgY29uc3Qgdm9sdW1lU2l6ZSA9XG4gICAgICBwcm9wcy52b2x1bWVTaXplPy50b0dpYmlieXRlcygpID8/XG4gICAgICBNYXRoLmNlaWwoXG4gICAgICAgIHdlaWdodFNpemUudG9HaWJpYnl0ZXMoKSArXG4gICAgICAgICAgUHl0b3JjaFRyYWluaW5nTmV1cm9ueEltYWdlLnNpemUudG9HaWJpYnl0ZXMoKSArXG4gICAgICAgICAgTmV1cm9uT3B0aW1pemVkTWFjaGluZUltYWdlLnNpemUudG9HaWJpYnl0ZXMoKSxcbiAgICAgICk7XG4gICAgY29uc3QgbGF1bmNoVGVtcGxhdGUgPSBuZXcgZWMyLkxhdW5jaFRlbXBsYXRlKHRoaXMsIFwiTGF1bmNoVGVtcGxhdGVcIiwge1xuICAgICAgYmxvY2tEZXZpY2VzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBkZXZpY2VOYW1lOiBcIi9kZXYveHZkYVwiLFxuICAgICAgICAgIHZvbHVtZTogZWMyLkJsb2NrRGV2aWNlVm9sdW1lLmVicyh2b2x1bWVTaXplLCB7XG4gICAgICAgICAgICB2b2x1bWVUeXBlOiBlYzIuRWJzRGV2aWNlVm9sdW1lVHlwZS5HUDMsXG4gICAgICAgICAgICBlbmNyeXB0ZWQ6IHRydWUsXG4gICAgICAgICAgfSksXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuXG4gICAgY29uc3QgbmV1cm9ueEluc3RhbmNlVHlwZSA9XG4gICAgICBwcm9wcy5uZXVyb254SW5zdGFuY2VUeXBlID8/IE5ldXJvbnhJbnN0YW5jZVR5cGUuSU5GMl80OFhMQVJHRTtcbiAgICBjb25zdCBjb21wdXRlRW52aXJvbm1lbnQgPSBuZXcgTmV1cm9ueEJhdGNoQ29tcHV0ZUVudmlyb25tZW50KFxuICAgICAgdGhpcyxcbiAgICAgIFwiQ29tcHV0ZUVudmlyb25tZW50XCIsXG4gICAgICB7XG4gICAgICAgIHZwYzogcHJvcHMudnBjLFxuICAgICAgICB2cGNTdWJuZXRzOiBwcm9wcy52cGNTdWJuZXRzLFxuICAgICAgICBpbnN0YW5jZVR5cGVzOiBbbmV1cm9ueEluc3RhbmNlVHlwZS5pbnN0YW5jZVR5cGVdLFxuICAgICAgICB1c2VPcHRpbWFsSW5zdGFuY2VDbGFzc2VzOiBmYWxzZSxcbiAgICAgICAgbGF1bmNoVGVtcGxhdGUsXG4gICAgICAgIHNwb3Q6IHByb3BzLnNwb3QsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBUYWdzLm9mKGNvbXB1dGVFbnZpcm9ubWVudCkuYWRkKFwiTmFtZVwiLCBcIm5ldXJvbngtY29tcGlsZS13b3JrZXJcIik7XG4gICAgdGhpcy5qb2JRdWV1ZSA9IG5ldyBiYXRjaC5Kb2JRdWV1ZSh0aGlzLCBcIkpvYlF1ZXVlXCIsIHtcbiAgICAgIGNvbXB1dGVFbnZpcm9ubWVudHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbXB1dGVFbnZpcm9ubWVudCxcbiAgICAgICAgICBvcmRlcjogMSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICBqb2JTdGF0ZVRpbWVMaW1pdEFjdGlvbnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHN0YXRlOiBiYXRjaC5Kb2JTdGF0ZVRpbWVMaW1pdEFjdGlvbnNTdGF0ZS5SVU5OQUJMRSxcbiAgICAgICAgICByZWFzb246IGJhdGNoLkpvYlN0YXRlVGltZUxpbWl0QWN0aW9uc1JlYXNvbi5KT0JfUkVTT1VSQ0VfUkVRVUlSRU1FTlQsXG4gICAgICAgICAgbWF4VGltZTogRHVyYXRpb24ubWludXRlcygxMCksXG4gICAgICAgICAgYWN0aW9uOiBiYXRjaC5Kb2JTdGF0ZVRpbWVMaW1pdEFjdGlvbnNBY3Rpb24uQ0FOQ0VMLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KTtcbiAgICBwcm9wcy5tb2RlbC5idWNrZXQ/LmdyYW50UmVhZChjb21wdXRlRW52aXJvbm1lbnQuaW5zdGFuY2VSb2xlKTtcbiAgICBwcm9wcy5idWNrZXQuZ3JhbnRSZWFkV3JpdGUoY29tcHV0ZUVudmlyb25tZW50Lmluc3RhbmNlUm9sZSk7XG4gICAgdGhpcy5qb2JEZWZpbml0aW9uID0gbmV3IE5ldXJvbnhCYXRjaEVjc0pvYkRlZmluaXRpb24oXG4gICAgICB0aGlzLFxuICAgICAgXCJKb2JEZWZpbml0aW9uXCIsXG4gICAgICB7XG4gICAgICAgIG5ldXJvbnhJbnN0YW5jZVR5cGUsXG4gICAgICAgIGltYWdlOiBwcm9wcy5pbWFnZS5pbWFnZSxcbiAgICAgICAgLy8gVGhlIGZsbG93aW5nIGNvbW1hbmQgd2FzIGV4ZWN1dGVkIG9uIGluZjIuOHhsYXJnZVxuICAgICAgICAvLyBzaC01LjIkIGZyZWUgLWJcbiAgICAgICAgLy8gXHRcdFx0dG90YWxcdFx0XHRcdFx0dXNlZFx0XHRcdGZyZWVcdFx0XHRcdFx0c2hhcmVkXHRidWZmL2NhY2hlXHRhdmFpbGFibGVcbiAgICAgICAgLy8gTWVtOlx0MTMyMjY1NzY2OTEyXHQ4NjYzMjAzODRcdDEzMDM0MTc4NTYwMFx0NjY3NjQ4XHQxMDU3NjYwOTI4XHQxMzA1MjkxNDg5MjhcbiAgICAgICAgLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2JhdGNoL2xhdGVzdC91c2VyZ3VpZGUvbWVtb3J5LW1hbmFnZW1lbnQuaHRtbFxuICAgICAgICBtZW1vcnk6IFNpemUubWViaWJ5dGVzKFxuICAgICAgICAgIE1hdGguY2VpbChuZXVyb254SW5zdGFuY2VUeXBlLm1lbW9yeS50b01lYmlieXRlcygpICogMC45NSksXG4gICAgICAgICksXG4gICAgICAgIGNwdTogbmV1cm9ueEluc3RhbmNlVHlwZS52Q3B1LFxuICAgICAgICBlbnZpcm9ubWVudDogcHJvcHMuZW52aXJvbm1lbnQsXG4gICAgICAgIGNvbW1hbmQ6IHByb3BzLmNvbW1hbmQsXG4gICAgICAgIHNlY3JldHM6IHByb3BzLnNlY3JldHMsXG4gICAgICB9LFxuICAgICk7XG5cbiAgICBjb25zdCBqb2JTdWJtaXRGdW5jdGlvbiA9IG5ldyBTaW5nbGV0b25GdW5jdGlvbih0aGlzLCBcIkpvYlN1Ym1pdEZ1bmN0aW9uXCIsIHtcbiAgICAgIGNvZGU6IENvZGUuZnJvbUFzc2V0KGpvaW4oX19kaXJuYW1lLCBcInByaXZhdGUvYXdhaXQtY29tcGlsZS1qb2JcIikpLFxuICAgICAgaGFuZGxlcjogXCJpbmRleC5vbkV2ZW50XCIsXG4gICAgICBydW50aW1lOiBSdW50aW1lLk5PREVKU19MQVRFU1QsXG4gICAgICB1dWlkOiBcIjEzNjFmNDY5LTVjOTItNGM0Ni05ZTExLTVkMWRiZjkyNWJhY1wiLFxuICAgIH0pO1xuICAgIHRoaXMuam9iRGVmaW5pdGlvbi5ncmFudFN1Ym1pdEpvYihqb2JTdWJtaXRGdW5jdGlvbiwgdGhpcy5qb2JRdWV1ZSk7XG4gICAgY29uc3Qgam9iTW9uaXRvcmluZ0Z1bmN0aW9uID0gbmV3IFNpbmdsZXRvbkZ1bmN0aW9uKFxuICAgICAgdGhpcyxcbiAgICAgIFwiSm9iTW9uaXRvcmluZ0Z1bmN0aW9uXCIsXG4gICAgICB7XG4gICAgICAgIGNvZGU6IENvZGUuZnJvbUFzc2V0KGpvaW4oX19kaXJuYW1lLCBcInByaXZhdGUvYXdhaXQtY29tcGlsZS1qb2JcIikpLFxuICAgICAgICBoYW5kbGVyOiBcImluZGV4LmlzQ29tcGxldGVcIixcbiAgICAgICAgcnVudGltZTogUnVudGltZS5OT0RFSlNfTEFURVNULFxuICAgICAgICB1dWlkOiBcImRmMTZkYmE4LTVmNzctNDgwYy1hNmFkLWNmZGY3NGMzZGU2MlwiLFxuICAgICAgfSxcbiAgICApO1xuICAgIEdyYW50LmFkZFRvUHJpbmNpcGFsKHtcbiAgICAgIHJlc291cmNlQXJuczogW1wiKlwiXSxcbiAgICAgIGdyYW50ZWU6IGpvYk1vbml0b3JpbmdGdW5jdGlvbixcbiAgICAgIGFjdGlvbnM6IFtcImJhdGNoOkRlc2NyaWJlSm9ic1wiXSxcbiAgICB9KTtcbiAgICB0aGlzLnByb3ZpZGVyID0gbmV3IFByb3ZpZGVyKHRoaXMsIFwiQ29tcGlsZUpvYlByb3ZpZGVyXCIsIHtcbiAgICAgIG9uRXZlbnRIYW5kbGVyOiBqb2JTdWJtaXRGdW5jdGlvbixcbiAgICAgIGlzQ29tcGxldGVIYW5kbGVyOiBqb2JNb25pdG9yaW5nRnVuY3Rpb24sXG4gICAgICBxdWVyeUludGVydmFsOiBEdXJhdGlvbi5taW51dGVzKDEpLFxuICAgICAgdG90YWxUaW1lb3V0OiBEdXJhdGlvbi5ob3VycygxKSxcbiAgICB9KTtcbiAgICB0aGlzLm1vZGVsID0gcHJvcHMubW9kZWw7XG4gICAgdGhpcy5idWNrZXQgPSBwcm9wcy5idWNrZXQ7XG4gICAgdGhpcy5hcnRpZmFjdFMzUHJlZml4ID0gcHJvcHMuYXJ0aWZhY3RTM1ByZWZpeDtcbiAgICB0aGlzLndlaWdodFNpemUgPSB3ZWlnaHRTaXplO1xuICAgIHRoaXMubmV1cm9ueEluc3RhbmNlVHlwZSA9IG5ldXJvbnhJbnN0YW5jZVR5cGU7XG4gIH1cbiAgY29tcGlsZSgpIHtcbiAgICBpZiAoIXRoaXMuY29tcGlsZWRNb2RlbCkge1xuICAgICAgY29uc3QgY29tcGlsZUpvYiA9IG5ldyBDdXN0b21SZXNvdXJjZSh0aGlzLCBcIk5ldXJvbnhDb21waWxlXCIsIHtcbiAgICAgICAgc2VydmljZVRva2VuOiB0aGlzLnByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICAgICAgcmVzb3VyY2VUeXBlOiBcIkN1c3RvbTo6TmV1cm9ueENvbXBpbGVcIixcbiAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgIGpvYkRlZmluaXRpb25Bcm46IHRoaXMuam9iRGVmaW5pdGlvbi5qb2JEZWZpbml0aW9uQXJuLFxuICAgICAgICAgIGpvYlF1ZXVlQXJuOiB0aGlzLmpvYlF1ZXVlLmpvYlF1ZXVlQXJuLFxuICAgICAgICAgIGFydGlmYWN0UzNQcmVmaXg6IHRoaXMuYXJ0aWZhY3RTM1ByZWZpeCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5jb21waWxlZE1vZGVsID0ge1xuICAgICAgICBtb2RlbE5hbWU6IHRoaXMubW9kZWwubW9kZWxOYW1lLFxuICAgICAgICBjb21waWxlVGltZUluc3RhbmNlVHlwZTogdGhpcy5uZXVyb254SW5zdGFuY2VUeXBlLFxuICAgICAgICBidWNrZXQ6IHRoaXMuYnVja2V0LFxuICAgICAgICBzM1VyaTogdGhpcy5idWNrZXQuczNVcmxGb3JPYmplY3QoXG4gICAgICAgICAgY29tcGlsZUpvYi5nZXRBdHRTdHJpbmcoXCJBcnRpZmFjdFMzUHJlZml4XCIpLFxuICAgICAgICApLFxuICAgICAgICBzM1ByZWZpeDogY29tcGlsZUpvYi5nZXRBdHRTdHJpbmcoXCJBcnRpZmFjdFMzUHJlZml4XCIpLFxuICAgICAgICB3ZWlnaHRTaXplOiB0aGlzLndlaWdodFNpemUsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jb21waWxlZE1vZGVsO1xuICB9XG59XG4iXX0=
|
|
@@ -340,7 +340,7 @@ class VllmEngineArgumentsParser {
|
|
|
340
340
|
return [`--${key}`, ...value.map((v) => `${v}`)];
|
|
341
341
|
}
|
|
342
342
|
if (typeof value === "object") {
|
|
343
|
-
return [`--${key}`,
|
|
343
|
+
return [`--${key}`, JSON.stringify(value)];
|
|
344
344
|
}
|
|
345
345
|
return [`--${key}`, `${value}`];
|
|
346
346
|
});
|
|
@@ -349,5 +349,5 @@ class VllmEngineArgumentsParser {
|
|
|
349
349
|
}
|
|
350
350
|
exports.VllmEngineArgumentsParser = VllmEngineArgumentsParser;
|
|
351
351
|
_a = JSII_RTTI_SYMBOL_1;
|
|
352
|
-
VllmEngineArgumentsParser[_a] = { fqn: "aws-cdk-neuronx-patterns.VllmEngineArgumentsParser", version: "0.0.
|
|
353
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmxsbS1lbmdpbmUtYXJnbWVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFzZS9zZXJ2ZXItZW5naW5lL3ZsbG0tZW5naW5lL3ZsbG0tZW5naW5lLWFyZ21lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUE7O0dBRUc7QUFDSCxJQUFZLGVBT1g7QUFQRCxXQUFZLGVBQWU7SUFDekIsa0NBQWUsQ0FBQTtJQUNmLGdDQUFhLENBQUE7SUFDYixzQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBZSxDQUFBO0lBQ2Ysd0NBQXFCLENBQUE7SUFDckIsa0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBUFcsZUFBZSwrQkFBZixlQUFlLFFBTzFCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLFVBYVg7QUFiRCxXQUFZLFVBQVU7SUFDcEIsMkJBQWEsQ0FBQTtJQUNiLHVCQUFTLENBQUE7SUFDVCx5Q0FBMkIsQ0FBQTtJQUMzQixpQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBZSxDQUFBO0lBQ2YsdUNBQXlCLENBQUE7SUFDekIsNkNBQStCLENBQUE7SUFDL0IsMkJBQWEsQ0FBQTtJQUNiLDJDQUE2QixDQUFBO0lBQzdCLGlDQUFtQixDQUFBO0lBQ25CLCtDQUFpQyxDQUFBO0lBQ2pDLGlEQUFtQyxDQUFBO0FBQ3JDLENBQUMsRUFiVyxVQUFVLDBCQUFWLFVBQVUsUUFhckI7QUFFRDs7R0FFRztBQUNILElBQVksUUF5Qlg7QUF6QkQsV0FBWSxRQUFRO0lBQ2xCOztPQUVHO0lBQ0gseUJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gseUJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsK0JBQW1CLENBQUE7SUFDbkI7O09BRUc7SUFDSCxpQ0FBcUIsQ0FBQTtJQUNyQjs7T0FFRztJQUNILDJCQUFlLENBQUE7SUFDZjs7T0FFRztJQUNILCtCQUFtQixDQUFBO0FBQ3JCLENBQUMsRUF6QlcsUUFBUSx3QkFBUixRQUFRLFFBeUJuQjtBQUVEOztH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QUssR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ25DLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuRCxDQUFDO1lBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwRCxDQUFDO1lBQ0QsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFNLEVBQUUsR0FBRyxXQUFXLENBQUMsQ0FBQztJQUN2QyxDQUFDOztBQXZDSCw4REF3Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWNyZXQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWJhdGNoXCI7XG5cbi8qKlxuICogTG9nIGxldmVsIG9wdGlvbnMgZm9yIFV2aWNvcm5cbiAqL1xuZXhwb3J0IGVudW0gVXZpY29ybkxvZ0xldmVsIHtcbiAgREVCVUcgPSBcImRlYnVnXCIsXG4gIElORk8gPSBcImluZm9cIixcbiAgV0FSTklORyA9IFwid2FybmluZ1wiLFxuICBFUlJPUiA9IFwiZXJyb3JcIixcbiAgQ1JJVElDQUwgPSBcImNyaXRpY2FsXCIsXG4gIFRSQUNFID0gXCJ0cmFjZVwiLFxufVxuXG4vKipcbiAqIEF2YWlsYWJsZSBtb2RlbCB3ZWlnaHQgbG9hZGluZyBmb3JtYXRzXG4gKi9cbmV4cG9ydCBlbnVtIExvYWRGb3JtYXQge1xuICBBVVRPID0gXCJhdXRvXCIsXG4gIFBUID0gXCJwdFwiLFxuICBTQUZFVEVOU09SUyA9IFwic2FmZXRlbnNvcnNcIixcbiAgTlBDQUNIRSA9IFwibnBjYWNoZVwiLFxuICBEVU1NWSA9IFwiZHVtbXlcIixcbiAgVEVOU09SSVpFUiA9IFwidGVuc29yaXplclwiLFxuICBTSEFSREVEX1NUQVRFID0gXCJzaGFyZGVkX3N0YXRlXCIsXG4gIEdHVUYgPSBcImdndWZcIixcbiAgQklUU0FOREJZVEVTID0gXCJiaXRzYW5kYnl0ZXNcIixcbiAgTUlTVFJBTCA9IFwibWlzdHJhbFwiLFxuICBSVU5BSV9TVFJFQU1FUiA9IFwicnVuYWlfc3RyZWFtZXJcIixcbiAgRkFTVFNBRkVURU5TT1JTID0gXCJmYXN0c2FmZXRlbnNvcnNcIixcbn1cblxuLyoqXG4gKiBEYXRhIHR5cGVzIGZvciBtb2RlbCB3ZWlnaHRzIGFuZCBhY3RpdmF0aW9uc1xuICovXG5leHBvcnQgZW51bSBEYXRhVHlwZSB7XG4gIC8qKlxuICAgKiDigJxhdXRv4oCdIHdpbGwgdXNlIEZQMTYgcHJlY2lzaW9uIGZvciBGUDMyIGFuZCBGUDE2IG1vZGVscywgYW5kIEJGMTYgcHJlY2lzaW9uIGZvciBCRjE2IG1vZGVscy5cbiAgICovXG4gIEFVVE8gPSBcImF1dG9cIixcbiAgLyoqXG4gICAqIOKAnGhhbGbigJ0gZm9yIEZQMTYuIFJlY29tbWVuZGVkIGZvciBBV1EgcXVhbnRpemF0aW9uLlxuICAgKi9cbiAgSEFMRiA9IFwiaGFsZlwiLFxuICAvKipcbiAgICog4oCcZmxvYXQxNuKAnSBpcyB0aGUgc2FtZSBhcyDigJxoYWxm4oCdLlxuICAgKi9cbiAgRkxPQVQxNiA9IFwiZmxvYXQxNlwiLFxuICAvKipcbiAgICog4oCcYmZsb2F0MTbigJ0gZm9yIGEgYmFsYW5jZSBiZXR3ZWVuIHByZWNpc2lvbiBhbmQgcmFuZ2UuXG4gICAqL1xuICBCRkxPQVQxNiA9IFwiYmZsb2F0MTZcIixcbiAgLyoqXG4gICAqIOKAnGZsb2F04oCdIGlzIHNob3J0aGFuZCBmb3IgRlAzMiBwcmVjaXNpb24uXG4gICAqL1xuICBGTE9BVCA9IFwiZmxvYXRcIixcbiAgLyoqXG4gICAqIOKAnGZsb2F0MzLigJ0gZm9yIEZQMzIgcHJlY2lzaW9uLlxuICAgKi9cbiAgRkxPQVQzMiA9IFwiZmxvYXQzMlwiLFxufVxuXG4vKipcbiAqIFRoZSBmb2xkZXIgcGF0aCB0byB0aGUgZ2VuZXJhdGlvbiBjb25maWcuXG4gKi9cbmV4cG9ydCBlbnVtIEdlbmVyYXRpb25Db25maWcge1xuICBBVVRPID0gXCJhdXRvXCIsXG4gIFZMTE0gPSBcInZsbG1cIixcbn1cblxuLyoqXG4gKiBBdmFpbGFibGUgZ3VpZGVkIGRlY29kaW5nIGJhY2tlbmRzXG4gKi9cbmV4cG9ydCBlbnVtIEd1aWRlZERlY29kaW5nQmFja2VuZCB7XG4gIEFVVE8gPSBcImF1dG9cIixcbiAgT1VUTElORVMgPSBcIm91dGxpbmVzXCIsXG4gIExNX0ZPUk1BVF9FTkZPUkNFUiA9IFwibG0tZm9ybWF0LWVuZm9yY2VyXCIsXG4gIFhHUkFNTUFSID0gXCJ4Z3JhbW1hclwiLFxufVxuXG4vKipcbiAqIEF2YWlsYWJsZSByZWFzb25pbmcgcGFyc2Vyc1xuICovXG5leHBvcnQgZW51bSBSZWFzb25pbmdQYXJzZXIge1xuICBERUVQU0VFS19SMSA9IFwiZGVlcHNlZWtfcjFcIixcbiAgR1JBTklURSA9IFwiZ3Jhbml0ZVwiLFxufVxuXG4vKipcbiAqIE1vZGVsIGltcGxlbWVudGF0aW9uIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gTW9kZWxJbXBsIHtcbiAgLyoqXG4gICAqIOKAnGF1dG/igJ0gd2lsbCB0cnkgdG8gdXNlIHRoZSB2TExNIGltcGxlbWVudGF0aW9uIGlmIGl0IGV4aXN0cyBhbmQgZmFsbCBiYWNrIHRvIHRoZSBUcmFuc2Zvcm1lcnNcbiAgICogaW1wbGVtZW50YXRpb24gaWYgbm8gdkxMTSBpbXBsZW1lbnRhdGlvbiBpcyBhdmFpbGFibGUuXG4gICAqL1xuICBBVVRPID0gXCJhdXRvXCIsXG4gIC8qKlxuICAgKiDigJx2bGxt4oCdIHdpbGwgdXNlIHRoZSB2TExNIG1vZGVsIGltcGxlbWVudGF0aW9uLlxuICAgKi9cbiAgVkxMTSA9IFwidmxsbVwiLFxuICAvKipcbiAgICog4oCcdHJhbnNmb3JtZXJz4oCdIHdpbGwgdXNlIHRoZSBUcmFuc2Zvcm1lcnMgbW9kZWwgaW1wbGVtZW50YXRpb24uXG4gICAqL1xuICBUUkFOU0ZPUk1FUlMgPSBcInRyYW5zZm9ybWVyc1wiLFxufVxuXG4vKipcbiAqIERpc3RyaWJ1dGVkIGV4ZWN1dGlvbiBiYWNrZW5kIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gRGlzdHJpYnV0ZWRFeGVjdXRvckJhY2tlbmQge1xuICBSQVkgPSBcInJheVwiLFxuICBNUCA9IFwibXBcIixcbiAgVU5JID0gXCJ1bmlcIixcbiAgRVhURVJOQUxfTEFVTkNIRVIgPSBcImV4dGVybmFsX2xhdW5jaGVyXCIsXG59XG5cbi8qKlxuICogQ2FjaGUgYmxvY2sgc2l6ZSBvcHRpb25zIGluIG51bWJlciBvZiB0b2tlbnNcbiAqL1xuZXhwb3J0IGVudW0gQmxvY2tTaXplIHtcbiAgU0laRV84ID0gOCxcbiAgU0laRV8xNiA9IDE2LFxuICBTSVpFXzMyID0gMzIsXG4gIFNJWkVfNjQgPSA2NCxcbiAgU0laRV8xMjggPSAxMjgsXG59XG5cbi8qKlxuICogS1YgY2FjaGUgZGF0YSB0eXBlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gS3ZDYWNoZUR0eXBlIHtcbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBGUDggPSBcImZwOFwiLFxuICBGUDhfRTRNMyA9IFwiZnA4X2U0bTNcIixcbiAgRlA4X0U1TTIgPSBcImZwOF9lNW0yXCIsXG59XG5cbi8qKlxuICogSGFzaCBhbGdvcml0aG0gb3B0aW9ucyBmb3IgcHJlZml4IGNhY2hpbmdcbiAqL1xuZXhwb3J0IGVudW0gUHJlZml4Q2FjaGluZ0hhc2hBbGdvIHtcbiAgLyoqXG4gICAqIOKAnGJ1aWx0aW7igJ0gaXMgUHl0aG9u4oCZcyBidWlsdC1pbiBoYXNoLlxuICAgKi9cbiAgQlVJTFRJTiA9IFwiYnVpbHRpblwiLFxuICAvKipcbiAgICog4oCcc2hhMjU24oCdIGlzIGNvbGxpc2lvbiByZXNpc3RhbnQgYnV0IHdpdGggY2VydGFpbiBvdmVyaGVhZHMuXG4gICAqL1xuICBTSEEyNTYgPSBcInNoYTI1NlwiLFxufVxuXG4vKipcbiAqIFF1YW50aXphdGlvbiBtZXRob2RzXG4gKi9cbmV4cG9ydCBlbnVtIFF1YW50aXphdGlvbiB7XG4gIEFRTE0gPSBcImFxbG1cIixcbiAgQVdRID0gXCJhd3FcIixcbiAgREVFUFNQRUVERlAgPSBcImRlZXBzcGVlZGZwXCIsXG4gIFRQVV9JTlQ4ID0gXCJ0cHVfaW50OFwiLFxuICBGUDggPSBcImZwOFwiLFxuICBQVFBDX0ZQOCA9IFwicHRwY19mcDhcIixcbiAgRkJHRU1NX0ZQOCA9IFwiZmJnZW1tX2ZwOFwiLFxuICBNT0RFTE9QVCA9IFwibW9kZWxvcHRcIixcbiAgTlZGUDQgPSBcIm52ZnA0XCIsXG4gIE1BUkxJTiA9IFwibWFybGluXCIsXG4gIEdHVUYgPSBcImdndWZcIixcbiAgR1BUUV9NQVJMSU5fMjQgPSBcImdwdHFfbWFybGluXzI0XCIsXG4gIEdQVFFfTUFSTElOID0gXCJncHRxX21hcmxpblwiLFxuICBBV1FfTUFSTElOID0gXCJhd3FfbWFybGluXCIsXG4gIEdQVFEgPSBcImdwdHFcIixcbiAgQ09NUFJFU1NFRF9URU5TT1JTID0gXCJjb21wcmVzc2VkLXRlbnNvcnNcIixcbiAgQklUU0FOREJZVEVTID0gXCJiaXRzYW5kYnl0ZXNcIixcbiAgUVFRID0gXCJxcXFcIixcbiAgSFFRID0gXCJocXFcIixcbiAgRVhQRVJUU19JTlQ4ID0gXCJleHBlcnRzX2ludDhcIixcbiAgTkVVUk9OX1FVQU5UID0gXCJuZXVyb25fcXVhbnRcIixcbiAgSVBFWCA9IFwiaXBleFwiLFxuICBRVUFSSyA9IFwicXVhcmtcIixcbiAgTU9FX1dOQTE2ID0gXCJtb2Vfd25hMTZcIixcbiAgVE9SQ0hBTyA9IFwidG9yY2hhb1wiLFxuICBOT05FID0gXCJOb25lXCIsXG59XG5cbi8qKlxuICogVG9rZW5pemVyIG1vZGUgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBUb2tlbml6ZXJNb2RlIHtcbiAgLyoqXG4gICAqIOKAnGF1dG/igJ0gd2lsbCB1c2UgdGhlIGZhc3QgdG9rZW5pemVyIGlmIGF2YWlsYWJsZS5cbiAgICovXG4gIEFVVE8gPSBcImF1dG9cIixcbiAgLyoqXG4gICAqIOKAnHNsb3figJ0gd2lsbCBhbHdheXMgdXNlIHRoZSBzbG93IHRva2VuaXplci5cbiAgICovXG4gIFNMT1cgPSBcInNsb3dcIixcbiAgLyoqXG4gICAqIOKAnG1pc3RyYWzigJ0gd2lsbCBhbHdheXMgdXNlIHRoZSBtaXN0cmFsX2NvbW1vbiB0b2tlbml6ZXIuXG4gICAqL1xuICBNSVNUUkFMID0gXCJtaXN0cmFsXCIsXG4gIC8qKlxuICAgKiDigJxjdXN0b23igJ0gd2lsbCB1c2Ug4oCTdG9rZW5pemVyIHRvIHNlbGVjdCB0aGUgcHJlcmVnaXN0ZXJlZCB0b2tlbml6ZXIuXG4gICAqL1xuICBDVVNUT00gPSBcImN1c3RvbVwiLFxufVxuXG4vKipcbiAqIE1vZGVsIGNvbmZpZyBmb3JtYXQgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBDb25maWdGb3JtYXQge1xuICAvKipcbiAgICog4oCcYXV0b+KAnSB3aWxsIHRyeSB0byBsb2FkIHRoZSBjb25maWcgaW4gaGYgZm9ybWF0IGlmIGF2YWlsYWJsZSBlbHNlIGl0IHdpbGwgdHJ5IHRvIGxvYWQgaW4gbWlzdHJhbCBmb3JtYXRcbiAgICovXG4gIEFVVE8gPSBcImF1dG9cIixcbiAgSEYgPSBcImhmXCIsXG4gIE1JU1RSQUwgPSBcIm1pc3RyYWxcIixcbn1cblxuLyoqXG4gKiBUb2tlbml6ZXIgcG9vbCB0eXBlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gVG9rZW5pemVyUG9vbFR5cGUge1xuICBSQVkgPSBcInJheVwiLFxufVxuXG4vKipcbiAqIERldmljZSB0eXBlIG9wdGlvbnMgZm9yIHZMTE0gZXhlY3V0aW9uXG4gKi9cbmV4cG9ydCBlbnVtIERldmljZSB7XG4gIEFVVE8gPSBcImF1dG9cIixcbiAgQ1VEQSA9IFwiY3VkYVwiLFxuICBORVVST04gPSBcIm5ldXJvblwiLFxuICBDUFUgPSBcImNwdVwiLFxuICBUUFUgPSBcInRwdVwiLFxuICBYUFUgPSBcInhwdVwiLFxuICBIUFUgPSBcImhwdVwiLFxufVxuXG4vKipcbiAqIExvUkEgZGF0YSB0eXBlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gTG9yYUR0eXBlIHtcbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBGTE9BVDE2ID0gXCJmbG9hdDE2XCIsXG4gIEJGTE9BVDE2ID0gXCJiZmxvYXQxNlwiLFxufVxuXG4vKipcbiAqIEZvcm1hdCBvcHRpb25zIGZvciByZW5kZXJpbmcgbWVzc2FnZSBjb250ZW50IHdpdGhpbiBhIGNoYXQgdGVtcGxhdGVcbiAqL1xuZXhwb3J0IGVudW0gQ2hhdFRlbXBsYXRlQ29udGVudEZvcm1hdCB7XG4gIEFVVE8gPSBcImF1dG9cIixcbiAgU1RSSU5HID0gXCJzdHJpbmdcIixcbiAgT1BFTkFJID0gXCJvcGVuYWlcIixcbn1cblxuLyoqXG4gKiBUb29sIGNhbGwgcGFyc2VyIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGVudW0gVG9vbENhbGxQYXJzZXIge1xuICBHUkFOSVRFXzIwQl9GQyA9IFwiZ3Jhbml0ZS0yMGItZmNcIixcbiAgR1JBTklURSA9IFwiZ3Jhbml0ZVwiLFxuICBIRVJNRVMgPSBcImhlcm1lc1wiLFxuICBJTlRFUk5MTSA9IFwiaW50ZXJubG1cIixcbiAgSkFNQkEgPSBcImphbWJhXCIsXG4gIExMQU1BM19KU09OID0gXCJsbGFtYTNfanNvblwiLFxuICBNSVNUUkFMID0gXCJtaXN0cmFsXCIsXG4gIFBISTRfTUlOSV9KU09OID0gXCJwaGk0X21pbmlfanNvblwiLFxuICBQWVRIT05JQyA9IFwicHl0aG9uaWNcIixcbn1cblxuLyoqXG4gKiBUYXNrIG9wdGlvbnMgZm9yIG1vZGVsIHVzYWdlXG4gKi9cbmV4cG9ydCBlbnVtIFZsbG1UYXNrIHtcbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBHRU5FUkFURSA9IFwiZ2VuZXJhdGVcIixcbiAgRU1CRURESU5HID0gXCJlbWJlZGRpbmdcIixcbiAgRU1CRUQgPSBcImVtYmVkXCIsXG4gIENMQVNTSUZZID0gXCJjbGFzc2lmeVwiLFxuICBTQ09SRSA9IFwic2NvcmVcIixcbiAgUkVXQVJEID0gXCJyZXdhcmRcIixcbiAgVFJBTlNDUklQVElPTiA9IFwidHJhbnNjcmlwdGlvblwiLFxufVxuXG4vKipcbiAqIFByZWVtcHRpb24gbW9kZS5cbiAqL1xuZXhwb3J0IGVudW0gUHJlZW1wdGlvbk1vZGUge1xuICBSRUNPTVBVVEUgPSBcInJlY29tcHV0ZVwiLFxuICBTV0FQID0gXCJzd2FwXCIsXG59XG5cbi8qKlxuICogU2NoZWR1bGluZyBwb2xpY3kgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBTY2hlZHVsaW5nUG9saWN5IHtcbiAgRkNGUyA9IFwiZmNmc1wiLFxuICBQUklPUklUWSA9IFwicHJpb3JpdHlcIixcbn1cblxuLyoqXG4gKiBWbGxtTmFtZWRBcmd1bWVudHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtTmFtZWRBcmd1bWVudHMge1xuICAvKipcbiAgICogSG9zdCBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaG9zdD86IHN0cmluZztcblxuICAvKipcbiAgICogUG9ydCBudW1iZXIuXG4gICAqIEBkZWZhdWx0IDgwMDBcbiAgICovXG4gIHJlYWRvbmx5IHBvcnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIExvZyBsZXZlbCBmb3IgdXZpY29ybi5cbiAgICogQGRlZmF1bHQgVXZpY29ybkxvZ0xldmVsLklORk9cbiAgICovXG4gIHJlYWRvbmx5IHV2aWNvcm5Mb2dMZXZlbD86IFV2aWNvcm5Mb2dMZXZlbDtcblxuICAvKipcbiAgICogRGlzYWJsZSB1dmljb3JuIGFjY2VzcyBsb2cuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlVXZpY29ybkFjY2Vzc0xvZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93IGNyZWRlbnRpYWxzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dDcmVkZW50aWFscz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93ZWQgb3JpZ2lucy5cbiAgICogQGRlZmF1bHQgWycqJ11cbiAgICovXG4gIHJlYWRvbmx5IGFsbG93ZWRPcmlnaW5zPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEFsbG93ZWQgbWV0aG9kcy5cbiAgICogQGRlZmF1bHQgWycqJ11cbiAgICovXG4gIHJlYWRvbmx5IGFsbG93ZWRNZXRob2RzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEFsbG93ZWQgaGVhZGVycy5cbiAgICogQGRlZmF1bHQgWycqJ11cbiAgICovXG4gIHJlYWRvbmx5IGFsbG93ZWRIZWFkZXJzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIElmIHByb3ZpZGVkLCB0aGUgc2VydmVyIHdpbGwgcmVxdWlyZSB0aGlzIGtleSB0byBiZSBwcmVzZW50ZWQgaW4gdGhlIGhlYWRlci5cbiAgICovXG4gIHJlYWRvbmx5IGFwaUtleT86IHN0cmluZztcblxuICAvKipcbiAgICogTG9SQSBtb2R1bGUgY29uZmlndXJhdGlvbnMuXG4gICAqIEBleGFtcGxlIHtcIm5hbWVcIjogXCJuYW1lXCIsIFwicGF0aFwiOiBcImxvcmFfcGF0aFwiLCBcImJhc2VfbW9kZWxfbmFtZVwiOiBcImlkXCJ9XG4gICAqL1xuICByZWFkb25seSBsb3JhTW9kdWxlcz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIFByb21wdCBhZGFwdGVyIGNvbmZpZ3VyYXRpb25zIGluIHRoZSBmb3JtYXQgbmFtZT1wYXRoLiBNdWx0aXBsZSBhZGFwdGVycyBjYW4gYmUgc3BlY2lmaWVkLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvbXB0QWRhcHRlcnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIGZpbGUgcGF0aCB0byB0aGUgY2hhdCB0ZW1wbGF0ZSwgb3IgdGhlIHRlbXBsYXRlIGluIHNpbmdsZS1saW5lIGZvcm0gZm9yIHRoZSBzcGVjaWZpZWQgbW9kZWwuXG4gICAqL1xuICByZWFkb25seSBjaGF0VGVtcGxhdGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb3JtYXQgdG8gcmVuZGVyIG1lc3NhZ2UgY29udGVudCB3aXRoaW4gYSBjaGF0IHRlbXBsYXRlLlxuICAgKiAtIOKAnHN0cmluZ+KAnSB3aWxsIHJlbmRlciB0aGUgY29udGVudCBhcyBhIHN0cmluZy5cbiAgICogICAtIEV4YW1wbGU6IGBcIkhlbGxvIFdvcmxkXCJgXG4gICAqIC0g4oCcb3BlbmFp4oCdIHdpbGwgcmVuZGVyIHRoZSBjb250ZW50IGFzIGEgbGlzdCBvZiBkaWN0aW9uYXJpZXMsIHNpbWlsYXIgdG8gT3BlbkFJIHNjaGVtYS5cbiAgICogICAtIEV4YW1wbGU6IGBbe1widHlwZVwiOiBcInRleHRcIiwgXCJ0ZXh0XCI6IFwiSGVsbG8gd29ybGQhXCJ9XWBcbiAgICogQGRlZmF1bHQgQ2hhdFRlbXBsYXRlQ29udGVudEZvcm1hdC5BVVRPXG4gICAqL1xuICByZWFkb25seSBjaGF0VGVtcGxhdGVDb250ZW50Rm9ybWF0PzogQ2hhdFRlbXBsYXRlQ29udGVudEZvcm1hdDtcblxuICAvKipcbiAgICogVGhlIHJvbGUgbmFtZSB0byByZXR1cm4gaWYgYHJlcXVlc3QuYWRkX2dlbmVyYXRpb25fcHJvbXB0PXRydWVgLlxuICAgKiBAZGVmYXVsdCBcImFzc2lzdGFudFwiXG4gICAqL1xuICByZWFkb25seSByZXNwb25zZVJvbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmaWxlIHBhdGggdG8gdGhlIFNTTCBrZXkgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IHNzbEtleWZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmaWxlIHBhdGggdG8gdGhlIFNTTCBjZXJ0IGZpbGUuXG4gICAqL1xuICByZWFkb25seSBzc2xDZXJ0ZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENBIGNlcnRpZmljYXRlcyBmaWxlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3NsQ2FDZXJ0cz86IHN0cmluZztcblxuICAvKipcbiAgICogUmVmcmVzaCBTU0wgQ29udGV4dCB3aGVuIFNTTCBjZXJ0aWZpY2F0ZSBmaWxlcyBjaGFuZ2UuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVTc2xSZWZyZXNoPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBjbGllbnQgY2VydGlmaWNhdGUgaXMgcmVxdWlyZWQgKHNlZSBzdGRsaWIgc3NsIG1vZHVsZSdzKS5cbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgcmVhZG9ubHkgc3NsQ2VydFJlcXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEZhc3RBUEkgcm9vdF9wYXRoIHdoZW4gYXBwIGlzIGJlaGluZCBhIHBhdGggYmFzZWQgcm91dGluZyBwcm94eS5cbiAgICovXG4gIHJlYWRvbmx5IHJvb3RQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIEFTR0kgbWlkZGxld2FyZSB0byBhcHBseSB0byB0aGUgYXBwLlxuICAgKiBXZSBhY2NlcHQgbXVsdGlwbGUg4oCTbWlkZGxld2FyZSBhcmd1bWVudHMuIFRoZSB2YWx1ZSBzaG91bGQgYmUgYW4gaW1wb3J0IHBhdGguXG4gICAqIElmIGEgZnVuY3Rpb24gaXMgcHJvdmlkZWQsIHZMTE0gd2lsbCBhZGQgaXQgdG8gdGhlIHNlcnZlciB1c2luZyBgQGFwcC5taWRkbGV3YXJlKCdodHRwJylgLlxuICAgKiBJZiBhIGNsYXNzIGlzIHByb3ZpZGVkLCB2TExNIHdpbGwgYWRkIGl0IHRvIHRoZSBzZXJ2ZXIgdXNpbmcgYGFwcC5hZGRfbWlkZGxld2FyZSgpYC5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IG1pZGRsZXdhcmU/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogV2hlbiBgLS1tYXgtbG9ncHJvYnNgIGlzIHNwZWNpZmllZCxcbiAgICogcmVwcmVzZW50cyBzaW5nbGUgdG9rZW5zIGFzIHN0cmluZ3Mgb2YgdGhlIGZvcm0gJ3Rva2VuX2lkOnt0b2tlbl9pZH0nIHNvIHRoYXQgdG9rZW5zIHRoYXQgYXJlIG5vdCBKU09OLWVuY29kYWJsZSBjYW4gYmUgaWRlbnRpZmllZC4uXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSByZXR1cm5Ub2tlbnNBc1Rva2VuSWRzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgc3BlY2lmaWVkLCB3aWxsIHJ1biB0aGUgT3BlbkFJIGZyb250ZW5kIHNlcnZlciBpbiB0aGUgc2FtZSBwcm9jZXNzIGFzIHRoZSBtb2RlbCBzZXJ2aW5nIGVuZ2luZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVGcm9udGVuZE11bHRpcHJvY2Vzc2luZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElmIHNwZWNpZmllZCwgQVBJIHNlcnZlciB3aWxsIGFkZCBYLVJlcXVlc3QtSWQgaGVhZGVyIHRvIHJlc3BvbnNlcy5cbiAgICpcbiAgICogQ2F1dGlvbjogdGhpcyBodXJ0cyBwZXJmb3JtYW5jZSBhdCBoaWdoIFFQUy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVJlcXVlc3RJZEhlYWRlcnM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgYXV0byB0b29sIGNob2ljZSBmb3Igc3VwcG9ydGVkIG1vZGVscy5cbiAgICogVXNlIGAtLXRvb2wtY2FsbC1wYXJzZXJgIHRvIHNwZWNpZnkgd2hpY2ggcGFyc2VyIHRvIHVzZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUF1dG9Ub29sQ2hvaWNlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2VsZWN0IHRoZSB0b29sIGNhbGwgcGFyc2VyIGRlcGVuZGluZyBvbiB0aGUgbW9kZWwgdGhhdCB5b3XigJlyZSB1c2luZy5cbiAgICogVGhpcyBpcyB1c2VkIHRvIHBhcnNlIHRoZSBtb2RlbC1nZW5lcmF0ZWQgdG9vbCBjYWxsIGludG8gT3BlbkFJIEFQSSBmb3JtYXQuXG4gICAqXG4gICAqIFJlcXVpcmVkIGZvciBgLS1lbmFibGUtYXV0by10b29sLWNob2ljZWAuXG4gICAqL1xuICByZWFkb25seSB0b29sQ2FsbFBhcnNlcj86IFRvb2xDYWxsUGFyc2VyO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IHRoZSB0b29sIHBhcnNlciBwbHVnaW4uXG4gICAqIEBkZWZhdWx0IFwiXCJcbiAgICovXG4gIHJlYWRvbmx5IHRvb2xQYXJzZXJQbHVnaW4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb3IgcGF0aCBvZiB0aGUgaHVnZ2luZ2ZhY2UgbW9kZWwgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCBcImZhY2Vib29rL29wdC0xMjVtXCJcbiAgICovXG4gIHJlYWRvbmx5IG1vZGVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGFzayB0byB1c2UgdGhlIG1vZGVsIGZvci5cbiAgICogRWFjaCB2TExNIGluc3RhbmNlIG9ubHkgc3VwcG9ydHMgb25lIHRhc2ssIGV2ZW4gaWYgdGhlIHNhbWUgbW9kZWwgY2FuIGJlIHVzZWQgZm9yIG11bHRpcGxlIHRhc2tzLlxuICAgKiBXaGVuIHRoZSBtb2RlbCBvbmx5IHN1cHBvcnRzIG9uZSB0YXNrLCBcImF1dG9cIiBjYW4gYmUgdXNlZCB0byBzZWxlY3QgaXQ7IG90aGVyd2lzZSxcbiAgICogeW91IG11c3Qgc3BlY2lmeSBleHBsaWNpdGx5IHdoaWNoIHRhc2sgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCBWbGxtVGFzay5BVVRPXG4gICAqL1xuICByZWFkb25seSB0YXNrPzogVmxsbVRhc2s7XG5cbiAgLyoqXG4gICAqIE5hbWUgb3IgcGF0aCBvZiB0aGUgaHVnZ2luZ2ZhY2UgdG9rZW5pemVyIHRvIHVzZS5cbiAgICogSWYgdW5zcGVjaWZpZWQsIG1vZGVsIG5hbWUgb3IgcGF0aCB3aWxsIGJlIHVzZWQuXG4gICAqL1xuICByZWFkb25seSB0b2tlbml6ZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb3IgcGF0aCBvZiB0aGUgaHVnZ2luZ2ZhY2UgY29uZmlnIHRvIHVzZS5cbiAgICogSWYgdW5zcGVjaWZpZWQsIG1vZGVsIG5hbWUgb3IgcGF0aCB3aWxsIGJlIHVzZWQuXG4gICAqL1xuICByZWFkb25seSBoZkNvbmZpZ1BhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNraXAgaW5pdGlhbGl6YXRpb24gb2YgdG9rZW5pemVyIGFuZCBkZXRva2VuaXplci5cbiAgICogRXhwZWN0cyB2YWxpZCBwcm9tcHRfdG9rZW5faWRzIGFuZCBOb25lIGZvciBwcm9tcHQgZnJvbSB0aGUgaW5wdXQuXG4gICAqIFRoZSBnZW5lcmF0ZWQgb3V0cHV0IHdpbGwgY29udGFpbiB0b2tlbiBpZHMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBza2lwVG9rZW5pemVySW5pdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBzcGVjaWZpYyBtb2RlbCB2ZXJzaW9uIHRvIHVzZS4gSXQgY2FuIGJlIGEgYnJhbmNoIG5hbWUsIGEgdGFnIG5hbWUsIG9yIGEgY29tbWl0IGlkLlxuICAgKiBJZiB1bnNwZWNpZmllZCwgd2lsbCB1c2UgdGhlIGRlZmF1bHQgdmVyc2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IHJldmlzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3BlY2lmaWMgcmV2aXNpb24gdG8gdXNlIGZvciB0aGUgbW9kZWwgY29kZSBvbiBIdWdnaW5nIEZhY2UgSHViLlxuICAgKiBJdCBjYW4gYmUgYSBicmFuY2ggbmFtZSwgYSB0YWcgbmFtZSwgb3IgYSBjb21taXQgaWQuIElmIHVuc3BlY2lmaWVkLCB3aWxsIHVzZSB0aGUgZGVmYXVsdCB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgY29kZVJldmlzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXZpc2lvbiBvZiB0aGUgaHVnZ2luZ2ZhY2UgdG9rZW5pemVyIHRvIHVzZS5cbiAgICogSXQgY2FuIGJlIGEgYnJhbmNoIG5hbWUsIGEgdGFnIG5hbWUsIG9yIGEgY29tbWl0IGlkLiBJZiB1bnNwZWNpZmllZCwgd2lsbCB1c2UgdGhlIGRlZmF1bHQgdmVyc2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IHRva2VuaXplclJldmlzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdG9rZW5pemVyIG1vZGUuXG4gICAqIEBkZWZhdWx0IFRva2VuaXplck1vZGUuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgdG9rZW5pemVyTW9kZT86IFRva2VuaXplck1vZGU7XG5cbiAgLyoqXG4gICAqIFRydXN0IHJlbW90ZSBjb2RlIGZyb20gaHVnZ2luZ2ZhY2UuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSB0cnVzdFJlbW90ZUNvZGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBbGxvd2luZyBBUEkgcmVxdWVzdHMgdG8gcmVhZCBsb2NhbCBpbWFnZXMgb3IgdmlkZW9zIGZyb20gZGlyZWN0b3JpZXMgc3BlY2lmaWVkIGJ5IHRoZSBzZXJ2ZXIgZmlsZSBzeXN0ZW0uXG4gICAqIFRoaXMgaXMgYSBzZWN1cml0eSByaXNrLiBTaG91bGQgb25seSBiZSBlbmFibGVkIGluIHRydXN0ZWQgZW52aXJvbm1lbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZExvY2FsTWVkaWFQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZm9ybWF0IG9mIHRoZSBtb2RlbCBjb25maWcgdG8gbG9hZC5cbiAgICogQGRlZmF1bHQgQ29uZmlnRm9ybWF0LkFVVE9cbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZ0Zvcm1hdD86IENvbmZpZ0Zvcm1hdDtcblxuICAvKipcbiAgICogRGF0YSB0eXBlIGZvciBtb2RlbCB3ZWlnaHRzIGFuZCBhY3RpdmF0aW9ucy5cbiAgICogQGRlZmF1bHQgRGF0YVR5cGUuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgZHR5cGU/OiBEYXRhVHlwZTtcblxuICAvKipcbiAgICogTW9kZWwgY29udGV4dCBsZW5ndGguXG4gICAqL1xuICByZWFkb25seSBtYXhNb2RlbExlbj86IG51bWJlcjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgcmVnZXggcGF0dGVybiBzcGVjaWZ5aW5nIHZhbGlkIGxvZ2l0cyBwcm9jZXNzb3IgcXVhbGlmaWVkIG5hbWVzIHRoYXQgY2FuIGJlIHBhc3NlZFxuICAgKiB3aXRoIHRoZSBsb2dpdHNfcHJvY2Vzc29ycyBleHRyYSBjb21wbGV0aW9uIGFyZ3VtZW50LiBEZWZhdWx0cyB0byBOb25lLCB3aGljaCBhbGxvd3Mgbm8gcHJvY2Vzc29ycy5cbiAgICovXG4gIHJlYWRvbmx5IGxvZ2l0c1Byb2Nlc3NvclBhdHRlcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoaWNoIGltcGxlbWVudGF0aW9uIG9mIHRoZSBtb2RlbCB0byB1c2UuXG4gICAqIEBkZWZhdWx0IE1vZGVsSW1wbC5BVVRPXG4gICAqL1xuICByZWFkb25seSBtb2RlbEltcGw/OiBNb2RlbEltcGw7XG5cbiAgLyoqXG4gICAqIERpc2FibGVzIHNsaWRpbmcgd2luZG93LCBjYXBwaW5nIHRvIHNsaWRpbmcgd2luZG93IHNpemUuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlU2xpZGluZ1dpbmRvdz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEJsb2NrIG1hbmFnZXIgdjEgaGFzIGJlZW4gcmVtb3ZlZCBhbmQgU2VsZkF0dG5CbG9ja1NwYWNlTWFuYWdlciAoaS5lLiBibG9jayBtYW5hZ2VyIHYyKSBpcyBub3cgdGhlIGRlZmF1bHQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQGRlcHJlY2F0ZWQgU2V0dGluZyB0aGlzIGZsYWcgdG8gVHJ1ZSBvciBGYWxzZSBoYXMgbm8gZWZmZWN0IG9uIHZMTE0gYmVoYXZpb3IuXG4gICAqL1xuICByZWFkb25seSB1c2VWMkJsb2NrTWFuYWdlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJhbmRvbSBzZWVkIGZvciBvcGVyYXRpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VlZD86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBsb2cgcHJvYnMgdG8gcmV0dXJuIGxvZ3Byb2JzIGlzIHNwZWNpZmllZCBpbiBTYW1wbGluZ1BhcmFtcy5cbiAgICogQGRlZmF1bHQgMjBcbiAgICovXG4gIHJlYWRvbmx5IG1heExvZ3Byb2JzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEaXNhYmxlIGxvZ2dpbmcgc3RhdGlzdGljcy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVMb2dTdGF0cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB1c2VkIHRvIHF1YW50aXplIHRoZSB3ZWlnaHRzLlxuICAgKiBJZiBOb25lLCB3ZSBmaXJzdCBjaGVjayB0aGUgcXVhbnRpemF0aW9uX2NvbmZpZyBhdHRyaWJ1dGUgaW4gdGhlIG1vZGVsIGNvbmZpZyBmaWxlLlxuICAgKiBJZiB0aGF0IGlzIE5vbmUsIHdlIGFzc3VtZSB0aGUgbW9kZWwgd2VpZ2h0cyBhcmUgbm90IHF1YW50aXplZCBhbmQgdXNlIGR0eXBlIHRvIGRldGVybWluZSB0aGUgZGF0YSB0eXBlIG9mIHRoZSB3ZWlnaHRzLlxuICAgKi9cbiAgcmVhZG9ubHkgcXVhbnRpemF0aW9uPzogUXVhbnRpemF0aW9uO1xuXG4gIC8qKlxuICAgKiBSb1BFIHNjYWxpbmcgY29uZmlndXJhdGlvbiBpbiBKU09OIGZvcm1hdC5cbiAgICogQGV4YW1wbGUge1wicm9wZV90eXBlXCI6XCJkeW5hbWljXCIsXCJmYWN0b3JcIjoyLjB9XG4gICAqL1xuICByZWFkb25seSByb3BlU2NhbGluZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIFJvUEUgdGhldGEuIFVzZSB3aXRoIHJvcGVfc2NhbGluZy5cbiAgICogSW4gc29tZSBjYXNlcywgY2hhbmdpbmcgdGhlIFJvUEUgdGhldGEgaW1wcm92ZXMgdGhlIHBlcmZvcm1hbmNlIG9mIHRoZSBzY2FsZWQgbW9kZWwuXG4gICAqL1xuICByZWFkb25seSByb3BlVGhldGE/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB0b2tlbiB0byB1c2UgYXMgSFRUUCBiZWFyZXIgYXV0aG9yaXphdGlvbiBmb3IgcmVtb3RlIGZpbGVzLlxuICAgKiBJZiBwcm92aWRlZCwgdGhlIFNlY3JldCB3aWxsIGJlIHBhc3NlZCBhcyBIRl9UT0tFTiBzZWNyZXQgdG8gY29tcGlsZSBlbnZpcm9ubWVudC5cbiAgICovXG4gIHJlYWRvbmx5IGhmVG9rZW4/OiBTZWNyZXQ7XG5cbiAgLyoqXG4gICAqIEV4dHJhIGFyZ3VtZW50cyBmb3IgdGhlIEh1Z2dpbmdGYWNlIGNvbmZpZy5cbiAgICogVGhpcyBzaG91bGQgYmUgYSBvYmplY3QgdGhhdCB3aWxsIGJlIHBhcnNlZCBpbnRvIGEgZGljdGlvbmFyeS5cbiAgICovXG4gIHJlYWRvbmx5IGhmT3ZlcnJpZGVzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKipcbiAgICogQWx3YXlzIHVzZSBlYWdlci1tb2RlIFB5VG9yY2guXG4gICAqIElmIEZhbHNlLCB3aWxsIHVzZSBlYWdlciBtb2RlIGFuZCBDVURBIGdyYXBoIGluIGh5YnJpZCBmb3IgbWF4aW1hbCBwZXJmb3JtYW5jZSBhbmQgZmxleGliaWxpdHkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlbmZvcmNlRWFnZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIHNlcXVlbmNlIGxlbmd0aCBjb3ZlcmVkIGJ5IENVREEgZ3JhcGhzLlxuICAgKiBXaGVuIGEgc2VxdWVuY2UgaGFzIGNvbnRleHQgbGVuZ3RoIGxhcmdlciB0aGFuIHRoaXMsIHdlIGZhbGwgYmFjayB0byBlYWdlciBtb2RlLlxuICAgKiBBZGRpdGlvbmFsbHkgZm9yIGVuY29kZXItZGVjb2RlciBtb2RlbHMsIGlmIHRoZSBzZXF1ZW5jZSBsZW5ndGggb2YgdGhlIGVuY29kZXIgaW5wdXQgaXMgbGFyZ2VyIHRoYW4gdGhpcyxcbiAgICogd2UgZmFsbCBiYWNrIHRvIHRoZSBlYWdlciBtb2RlLlxuICAgKiBAZGVmYXVsdCA4MTkyXG4gICAqL1xuICByZWFkb25seSBtYXhTZXFMZW5Ub0NhcHR1cmU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIG11bHRpbW9kYWwgaW5wdXQgbWFwcGluZy9wcm9jZXNzaW5nLCBlLmcuLCBpbWFnZSBwcm9jZXNzb3IuXG4gICAqIEBleGFtcGxlIHtcIm51bV9jcm9wc1wiOiA0fVxuICAgKi9cbiAgcmVhZG9ubHkgbW1Qcm9jZXNzb3JLd2FyZ3M/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGVuIGRpc2FibGVzIGNhY2hpbmcgb2YgdGhlIG11bHRpLW1vZGFsIHByZXByb2Nlc3Nvci9tYXBwZXIuIChub3QgcmVjb21tZW5kZWQpXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlTW1QcmVwcm9jZXNzb3JDYWNoZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBwYXR0ZXJuKHMpIHRvIGlnbm9yZSB3aGVuIGxvYWRpbmcgdGhlIG1vZGVsLkRlZmF1bHQgdG8gb3JpZ2luYWwvKipcXC8qIHRvIGF2b2lkXG4gICAqIHJlcGVhdGVkIGxvYWRpbmcgb2YgbGxhbWHigJlzIGNoZWNrcG9pbnRzLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgaWdub3JlUGF0dGVybnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIG1vZGVsIG5hbWUocykgdXNlZCBpbiB0aGUgQVBJLlxuICAgKiBJZiBtdWx0aXBsZSBuYW1lcyBhcmUgcHJvdmlkZWQsIHRoZSBzZXJ2ZXIgd2lsbCByZXNwb25kIHRvIGFueSBvZiB0aGUgcHJvdmlkZWQgbmFtZXMuXG4gICAqIFRoZSBtb2RlbCBuYW1lIGluIHRoZSBtb2RlbCBmaWVsZCBvZiBhIHJlc3BvbnNlIHdpbGwgYmUgdGhlIGZpcnN0IG5hbWUgaW4gdGhpcyBsaXN0LlxuICAgKiBJZiBub3Qgc3BlY2lmaWVkLCB0aGUgbW9kZWwgbmFtZSB3aWxsIGJlIHRoZSBzYW1lIGFzIHRoZSBgLS1tb2RlbGAgYXJndW1lbnQuXG4gICAqIE5vdGVkIHRoYXQgdGhpcyBuYW1lKHMpIHdpbGwgYWxzbyBiZSB1c2VkIGluIG1vZGVsX25hbWUgdGFnIGNvbnRlbnQgb2YgcHJvbWV0aGV1cyBtZXRyaWNzLFxuICAgKiBpZiBtdWx0aXBsZSBuYW1lcyBwcm92aWRlZCwgbWV0cmljcyB0YWcgd2lsbCB0YWtlIHRoZSBmaXJzdCBvbmUuXG4gICAqL1xuICByZWFkb25seSBzZXJ2ZWRNb2RlbE5hbWU/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTmFtZSBvciBwYXRoIG9mIHRoZSBRTG9SQSBhZGFwdGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcWxvcmFBZGFwdGVyTmFtZU9yUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlIGRlcHJlY2F0ZWQgUHJvbWV0aGV1cyBtZXRyaWNzIHRoYXQgaGF2ZSBiZWVuIGhpZGRlbiBzaW5jZSB0aGUgc3BlY2lmaWVkIHZlcnNpb24uXG4gICAqIEZvciBleGFtcGxlLCBpZiBhIHByZXZpb3VzbHkgZGVwcmVjYXRlZCBtZXRyaWMgaGFzIGJlZW4gaGlkZGVuIHNpbmNlIHRoZSB2MC43LjAgcmVsZWFzZSxcbiAgICogeW91IHVzZSDigJNzaG93LWhpZGRlbi1tZXRyaWNzLWZvci12ZXJzaW9uPTAuNyBhcyBhIHRlbXBvcmFyeSBlc2NhcGUgaGF0Y2ggd2hpbGUgeW91IG1pZ3JhdGUgdG8gbmV3IG1ldHJpY3MuXG4gICAqIFRoZSBtZXRyaWMgaXMgbGlrZWx5IHRvIGJlIHJlbW92ZWQgY29tcGxldGVseSBpbiBhbiB1cGNvbWluZyByZWxlYXNlLlxuICAgKi9cbiAgcmVhZG9ubHkgc2hvd0hpZGRlbk1ldHJpY3NGb3JWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUYXJnZXQgVVJMIHRvIHdoaWNoIE9wZW5UZWxlbWV0cnkgdHJhY2VzIHdpbGwgYmUgc2VudC5cbiAgICovXG4gIHJlYWRvbmx5IG90bHBUcmFjZXNFbmRwb2ludD86IHN0cmluZztcblxuICAvKipcbiAgICogVmFsaWQgY2hvaWNlcyBhcmUgbW9kZWwsd29ya2VyLGFsbC5cbiAgICogSXQgbWFrZXMgc2Vuc2UgdG8gc2V0IHRoaXMgb25seSBpZiAtLW90bHAtdHJhY2VzLWVuZHBvaW50IGlzIHNldC5cbiAgICogSWYgc2V0LCBpdCB3aWxsIGNvbGxlY3QgZGV0YWlsZWQgdHJhY2VzIGZvciB0aGUgc3BlY2lmaWVkIG1vZHVsZXMuXG4gICAqIFRoaXMgaW52b2x2ZXMgdXNlIG9mIHBvc3NpYmx5IGNvc3RseSBhbmQgb3IgYmxvY2tpbmcgb3BlcmF0aW9ucyBhbmQgaGVuY2UgbWlnaHQgaGF2ZSBhIHBlcmZvcm1hbmNlIGltcGFjdC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbGxlY3REZXRhaWxlZFRyYWNlcz86IHN0cmluZztcblxuICAvKipcbiAgICogRGlzYWJsZSBhc3luYyBvdXRwdXQgcHJvY2Vzc2luZy4gVGhpcyBtYXkgcmVzdWx0IGluIGxvd2VyIHBlcmZvcm1hbmNlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUFzeW5jT3V0cHV0UHJvYz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBzY2hlZHVsZXIgY2xhc3MgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCBcInZsbG0uY29yZS5zY2hlZHVsZXIuU2NoZWR1bGVyXCJcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlckNscz86IHN0cmluZztcblxuICAvKipcbiAgICogT3ZlcnJpZGUgb3Igc2V0IG5ldXJvbiBkZXZpY2UgY29uZmlndXJhdGlvbi5cbiAgICogQGV4YW1wbGUge1wiY2FzdF9sb2dpdHNfZHR5cGVcIjogXCJibG9hdDE2XCJ9XG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZU5ldXJvbkNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlIG9yIHNldCB0aGUgcG9vbGluZyBtZXRob2QgZm9yIHBvb2xpbmcgbW9kZWxzLlxuICAgKiBAZXhhbXBsZSB7XCJwb29saW5nX3R5cGVcIjogXCJtZWFuXCIsIFwibm9ybWFsaXplXCI6IGZhbHNlfVxuICAgKi9cbiAgcmVhZG9ubHkgb3ZlcnJpZGVQb29sZXJDb25maWc/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiB0b3JjaC5jb21waWxlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBtb2RlbC5cbiAgICogV2hlbiBpdCBpcyBhIG51bWJlciAoMCwgMSwgMiwgMyksIGl0IHdpbGwgYmUgaW50ZXJwcmV0ZWQgYXMgdGhlIG9wdGltaXphdGlvbiBsZXZlbC5cbiAgICpcbiAgICogTk9URTogbGV2ZWwgMCBpcyB0aGUgZGVmYXVsdCBsZXZlbCB3aXRob3V0IGFueSBvcHRpbWl6YXRpb24uXG4gICAqIGxldmVsIDEgYW5kIDIgYXJlIGZvciBpbnRlcm5hbCB0ZXN0aW5nIG9ubHkuIGxldmVsIDMgaXMgdGhlIHJlY29tbWVuZGVkIGxldmVsIGZvciBwcm9kdWN0aW9uLlxuICAgKiBUbyBzcGVjaWZ5IHRoZSBmdWxsIGNvbXBpbGF0aW9uIGNvbmZpZywgdXNlIGEgSlNPTiBzdHJpbmcsXG4gICAqIGUuZy4gYHtcImxldmVsXCI6IDMsIFwiY3VkYWdyYXBoX2NhcHR1cmVfc2l6ZXNcIjogWzEsIDIsIDQsIDhdfWAgRm9sbG93aW5nIHRoZSBjb252ZW50aW9uIG9mIHRyYWRpdGlvbmFsIGNvbXBpbGVycyxcbiAgICogdXNpbmcgLU8gd2l0aG91dCBzcGFjZSBpcyBhbHNvIHN1cHBvcnRlZC4gLU8zIGlzIGVxdWl2YWxlbnQgdG8gLU8gMy5cbiAgICovXG4gIHJlYWRvbmx5IGNvbXBpbGF0aW9uQ29uZmlnPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKipcbiAgICogQ29uZmlndXJhdGlvbnMgZm9yIGRpc3RyaWJ1dGVkIEtWIGNhY2hlIHRyYW5zZmVyIGluIG9iamVjdC5cbiAgICovXG4gIHJlYWRvbmx5IGt2VHJhbnNmZXJDb25maWc/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya2VyIGNsYXNzIHRvIHVzZSBmb3IgZGlzdHJpYnV0ZWQgZXhlY3V0aW9uLlxuICAgKiBAZGVmYXVsdCBcImF1dG9cIlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2VyQ2xzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgd29ya2VyIGV4dGVuc2lvbiBjbGFzcy5cbiAgICogQGRlZmF1bHQgXCJcIlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2VyRXh0ZW5zaW9uQ2xzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZm9sZGVyIHBhdGggdG8gdGhlIGdlbmVyYXRpb24gY29uZmlnLiBEZWZhdWx0cyB0byDigJhhdXRv4oCZLFxuICAgKiB0aGUgZ2VuZXJhdGlvbiBjb25maWcgd2lsbCBiZSBsb2FkZWQgZnJvbSBtb2RlbCBwYXRoLiBJZiBzZXQgdG8g4oCYdmxsbeKAmSxcbiAgICogbm8gZ2VuZXJhdGlvbiBjb25maWcgaXMgbG9hZGVkLCB2TExNIGRlZmF1bHRzIHdpbGwgYmUgdXNlZC5cbiAgICogSWYgc2V0IHRvIGEgZm9sZGVyIHBhdGgsIHRoZSBnZW5lcmF0aW9uIGNvbmZpZyB3aWxsIGJlIGxvYWRlZCBmcm9tIHRoZSBzcGVjaWZpZWQgZm9sZGVyIHBhdGguXG4gICAqIElmIG1heF9uZXdfdG9rZW5zIGlzIHNwZWNpZmllZCBpbiBnZW5lcmF0aW9uIGNvbmZpZyxcbiAgICogdGhlbiBpdCBzZXRzIGEgc2VydmVyLXdpZGUgbGltaXQgb24gdGhlIG51bWJlciBvZiBvdXRwdXQgdG9rZW5zIGZvciBhbGwgcmVxdWVzdHMuXG4gICAqIEBkZWZhdWx0IFwiYXV0b1wiXG4gICAqL1xuICByZWFkb25seSBnZW5lcmF0aW9uQ29uZmlnPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgb3Igc2V0cyBnZW5lcmF0aW9uIGNvbmZpZy5cbiAgICogSWYgdXNlZCB3aXRoIOKAk2dlbmVyYXRpb24tY29uZmlnPWF1dG8sIHRoZSBvdmVycmlkZSBwYXJhbWV0ZXJzIHdpbGwgYmUgbWVyZ2VkIHdpdGggdGhlIGRlZmF1bHQgY29uZmlnIGZyb20gdGhlIG1vZGVsLlxuICAgKiBJZiBnZW5lcmF0aW9uLWNvbmZpZyBpcyBOb25lLCBvbmx5IHRoZSBvdmVycmlkZSBwYXJhbWV0ZXJzIGFyZSB1c2VkLlxuICAgKiBAZXhhbXBsZSB7XCJ0ZW1wZXJhdHVyZVwiOiAwLjV9XG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZUdlbmVyYXRpb25Db25maWc/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBFbmFibGUgc2xlZXAgbW9kZSBmb3IgdGhlIGVuZ2luZS4gKG9ubHkgY3VkYSBwbGF0Zm9ybSBpcyBzdXBwb3J0ZWQpXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVTbGVlcE1vZGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGNvbmZpZyBmb3Igc3BlY2lmaWVkIHBsYXRmb3JtLlxuICAgKiBEaWZmZXJlbnQgcGxhdGZvcm1zIG1heSBzdXBwb3J0IGRpZmZlcmVudCBjb25maWdzLlxuICAgKiBNYWtlIHN1cmUgdGhlIGNvbmZpZ3MgYXJlIHZhbGlkIGZvciB0aGUgcGxhdGZvcm0geW91IGFyZSB1c2luZy5cbiAgICogVGhlIGlucHV0IGZvcm1hdCBpcyBsaWtlIOKAmHvigJxjb25maWdfa2V54oCdOuKAnWNvbmZpZ192YWx1ZeKAnX3igJlcbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxDb25maWc/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBFbmFibGUgcmVhc29uaW5nX2NvbnRlbnQgZm9yIHRoZSBtb2RlbC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVJlYXNvbmluZz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERpc2FibGUgY2FzY2FkZSBhdHRlbnRpb24gZm9yIFYxLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUNhc2NhZGVBdHRuPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGlzYWJsZSBsb2dnaW5nIHJlcXVlc3RzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUxvZ1JlcXVlc3RzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBwcm9tcHQgY2hhcmFjdGVycyBvciBwcm9tcHQgSUQgbnVtYmVycyBpbiBsb2cuXG4gICAqL1xuICByZWFkb25seSBtYXhMb2dMZW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERpc2FibGUgRmFzdEFQSSdzIE9wZW5BUEkgc2NoZW1hLCBTd2FnZ2VyIFVJLCBhbmQgUmVEb2MgZW5kcG9pbnQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlRmFzdEFwaURvY3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgcHJvbXB0X3Rva2Vuc19kZXRhaWxzIGluIHVzYWdlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlUHJvbXB0VG9rZW5zRGV0YWlscz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSB0cmFja2luZyBzZXJ2ZXJfbG9hZF9tZXRyaWNzIGluIHRoZSBhcHAgc3RhdGUuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVTZXJ2ZXJMb2FkVHJhY2tpbmc/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIGxvYWRpbmcgdGhlIG1vZGVsIHdlaWdodHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbUxvYWRDb25maWcge1xuICAvKipcbiAgICogVGhlIGZvcm1hdCBvZiB0aGUgbW9kZWwgd2VpZ2h0cyB0byBsb2FkOlxuICAgKiAtIOKAnGF1dG/igJ0gd2lsbCB0cnkgdG8gbG9hZCB0aGUgd2VpZ2h0cyBpbiB0aGUgc2FmZXRlbnNvcnMgZm9ybWF0IGFuZCBmYWxsIGJhY2sgdG8gdGhlIHB5dG9yY2ggYmluIGZvcm1hdCBpZiBzYWZldGVuc29ycyBmb3JtYXQgaXMgbm90IGF2YWlsYWJsZS5cbiAgICogLSDigJxwdOKAnSB3aWxsIGxvYWQgdGhlIHdlaWdodHMgaW4gdGhlIHB5dG9yY2ggYmluIGZvcm1hdC5cbiAgICogLSDigJxzYWZldGVuc29yc+KAnSB3aWxsIGxvYWQgdGhlIHdlaWdodHMgaW4gdGhlIHNhZmV0ZW5zb3JzIGZvcm1hdC5cbiAgICogLSDigJxucGNhY2hl4oCdIHdpbGwgbG9hZCB0aGUgd2VpZ2h0cyBpbiBweXRvcmNoIGZvcm1hdCBhbmQgc3RvcmUgYSBudW1weSBjYWNoZSB0byBzcGVlZCB1cCB0aGUgbG9hZGluZy5cbiAgICogLSDigJxkdW1teeKAnSB3aWxsIGluaXRpYWxpemUgdGhlIHdlaWdodHMgd2l0aCByYW5kb20gdmFsdWVzLCB3aGljaCBpcyBtYWlubHkgZm9yIHByb2ZpbGluZy5cbiAgICogLSDigJx0ZW5zb3JpemVy4oCdIHdpbGwgdXNlIENvcmVXZWF2ZeKAmXMgdGVuc29yaXplciBsaWJyYXJ5IGZvciBmYXN0IHdlaWdodCBsb2FkaW5nLiBTZWUgdGhlIFRlbnNvcml6ZSB2TExNIE1vZGVsIHNjcmlwdCBpbiB0aGUgRXhhbXBsZXMgc2VjdGlvbiBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAgICogLSDigJxydW5haV9zdHJlYW1lcuKAnSB3aWxsIGxvYWQgdGhlIFNhZmV0ZW5zb3JzIHdlaWdodHMgdXNpbmcgUnVuOmFpIE1vZGVsIFN0cmVhbWVyLlxuICAgKiAtIOKAnGJpdHNhbmRieXRlc+KAnSB3aWxsIGxvYWQgdGhlIHdlaWdodHMgdXNpbmcgYml0c2FuZGJ5dGVzIHF1YW50aXphdGlvbi5cbiAgICogLSDigJxzaGFyZGVkX3N0YXRl4oCdIHdpbGwgbG9hZCB3ZWlnaHRzIGZyb20gcHJlLXNoYXJkZWQgY2hlY2twb2ludCBmaWxlcywgc3VwcG9ydGluZyBlZmZpY2llbnQgbG9hZGluZyBvZiB0ZW5zb3ItcGFyYWxsZWwgbW9kZWxzLlxuICAgKiAtIOKAnGdndWbigJ0gd2lsbCBsb2FkIHdlaWdodHMgZnJvbSBHR1VGIGZvcm1hdCBmaWxlcyAoZGV0YWlscyBzcGVjaWZpZWQgaW4gZ2dtbC1vcmcvZ2dtbCkuXG4gICAqIC0g4oCcbWlzdHJhbOKAnSB3aWxsIGxvYWQgd2VpZ2h0cyBmcm9tIGNvbnNvbGlkYXRlZCBzYWZldGVuc29ycyBmaWxlcyB1c2VkIGJ5IE1pc3RyYWwgbW9kZWxzLlxuICAgKiBAZGVmYXVsdCBMb2FkRm9ybWF0LkFVVE9cbiAgICovXG4gIHJlYWRvbmx5IGxvYWRGb3JtYXQ/OiBMb2FkRm9ybWF0O1xuXG4gIC8qKlxuICAgKiBEaXJlY3RvcnkgdG8gZG93bmxvYWQgYW5kIGxvYWQgdGhlIHdlaWdodHMsIGRlZmF1bHQgdG8gdGhlIGRlZmF1bHQgY2FjaGUgZGlyZWN0b3J5IG9mIEh1Z2dpbmcgRmFjZS5cbiAgICovXG4gIHJlYWRvbmx5IGRvd25sb2FkRGlyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFeHRyYSBjb25maWcgZm9yIG1vZGVsIGxvYWRlci4gVGhpcyB3aWxsIGJlIHBhc3NlZCB0byB0aGUgbW9kZWwgbG9hZGVyIGNvcnJlc3BvbmRpbmcgdG8gdGhlIGNob3NlbiBsb2FkX2Zvcm1hdC5cbiAgICogVGhpcyBzaG91bGQgYmUgYSBvYmplY3QgdGhhdCB3aWxsIGJlIHBhcnNlZCBpbnRvIGEgZGljdGlvbmFyeS5cbiAgICogQGRlZmF1bHQge31cbiAgICovXG4gIHJlYWRvbmx5IG1vZGVsTG9hZGVyRXh0cmFDb25maWc/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSB0cWRtIGZvciBzaG93aW5nIHByb2dyZXNzIGJhciB3aGVuIGxvYWRpbmcgbW9kZWwgd2VpZ2h0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdXNlVHFkbU9uTG9hZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogRGF0YWNsYXNzIHdoaWNoIGNvbnRhaW5zIHRoZSBkZWNvZGluZyBzdHJhdGVneSBvZiB0aGUgZW5naW5lLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1EZWNvZGluZ0NvbmZpZyB7XG4gIC8qKlxuICAgKiBXaGljaCBlbmdpbmUgd2lsbCBiZSB1c2VkIGZvciBndWlkZWQgZGVjb2RpbmcgKEpTT04gc2NoZW1hIC8gcmVnZXggZXRjKSBieSBkZWZhdWx0LlxuICAgKiBXaXRoIOKAnGF1dG/igJ0sIHdlIHdpbGwgbWFrZSBvcGluaW9uYXRlZCBjaG9pY2VzIGJhc2VkIG9uIHJlcXVlc3QgY29udGVudHMgYW5kIHdoYXQgdGhlIGJhY2tlbmQgbGlicmFyaWVzIGN1cnJlbnRseSBzdXBwb3J0LFxuICAgKiBzbyB0aGUgYmVoYXZpb3IgaXMgc3ViamVjdCB0byBjaGFuZ2UgaW4gZWFjaCByZWxlYXNlLlxuICAgKiBAZGVmYXVsdCBHdWlkZWREZWNvZGluZ0JhY2tlbmQuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgZ3VpZGVkRGVjb2RpbmdCYWNrZW5kPzogR3VpZGVkRGVjb2RpbmdCYWNrZW5kO1xuXG4gIC8qKlxuICAgKiBTZWxlY3QgdGhlIHJlYXNvbmluZyBwYXJzZXIgZGVwZW5kaW5nIG9uIHRoZSBtb2RlbCB0aGF0IHlvdeKAmXJlIHVzaW5nLlxuICAgKiBUaGlzIGlzIHVzZWQgdG8gcGFyc2UgdGhlIHJlYXNvbmluZyBjb250ZW50IGludG8gT3BlbkFJIEFQSSBmb3JtYXQuIFJlcXVpcmVkIGZvciDigJNlbmFibGUtcmVhc29uaW5nLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVhc29uaW5nUGFyc2VyPzogUmVhc29uaW5nUGFyc2VyO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBkaXN0cmlidXRlZCBleGVjdXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbVBhcmFsbGVsQ29uZmlnIHtcbiAgLyoqXG4gICAqIEJhY2tlbmQgdG8gdXNlIGZvciBkaXN0cmlidXRlZCBtb2RlbCB3b3JrZXJzLCBlaXRoZXIg4oCccmF54oCdIG9yIOKAnG1w4oCdIChtdWx0aXByb2Nlc3NpbmcpLlxuICAgKiBJZiB0aGUgcHJvZHVjdCBvZiBwaXBlbGluZV9wYXJhbGxlbF9zaXplIGFuZCB0ZW5zb3JfcGFyYWxsZWxfc2l6ZSBpcyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gdGhlIG51bWJlciBvZiBHUFVzIGF2YWlsYWJsZSxcbiAgICog4oCcbXDigJ0gd2lsbCBiZSB1c2VkIHRvIGtlZXAgcHJvY2Vzc2luZyBvbiBhIHNpbmdsZSBob3N0LiBPdGhlcndpc2UsIHRoaXMgd2lsbCBkZWZhdWx0IHRvIOKAnHJheeKAnSBpZiBSYXkgaXMgaW5zdGFsbGVkIGFuZCBmYWlsIG90aGVyd2lzZS5cbiAgICogTm90ZSB0aGF0IHRwdSBhbmQgaHB1IG9ubHkgc3VwcG9ydCBSYXkgZm9yIGRpc3RyaWJ1dGVkIGluZmVyZW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGVkRXhlY3V0b3JCYWNrZW5kPzogRGlzdHJpYnV0ZWRFeGVjdXRvckJhY2tlbmQ7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBwaXBlbGluZSBwYXJhbGxlbCBncm91cHMuXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IHBpcGVsaW5lUGFyYWxsZWxTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGVuc29yIHBhcmFsbGVsIGdyb3Vwcy5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgdGVuc29yUGFyYWxsZWxTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZGF0YSBwYXJhbGxlbCBncm91cHMuXG4gICAqIE1vRSBsYXllcnMgd2lsbCBiZSBzaGFyZGVkIGFjY29yZGluZyB0byB0aGUgcHJvZHVjdCBvZiB0aGUgdGVuc29yIHBhcmFsbGVsIHNpemUgYW5kIGRhdGEgcGFyYWxsZWwgc2l6ZS5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVBhcmFsbGVsU2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVXNlIGV4cGVydCBwYXJhbGxlbGlzbSBpbnN0ZWFkIG9mIHRlbnNvciBwYXJhbGxlbGlzbSBmb3IgTW9FIGxheWVycy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUV4cGVydFBhcmFsbGVsPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgcGFyYWxsYWwgbG9hZGluZyB3b3JrZXJzIHdoZW4gbG9hZGluZyBtb2RlbCBzZXF1ZW50aWFsbHkgaW4gbXVsdGlwbGUgYmF0Y2hlcy5cbiAgICogVG8gYXZvaWQgUkFNIE9PTSB3aGVuIHVzaW5nIHRlbnNvciBwYXJhbGxlbCBhbmQgbGFyZ2UgbW9kZWxzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4UGFyYWxsZWxMb2FkaW5nV29ya2Vycz86IG51bWJlcjtcblxuICAvKipcbiAgICogV2hldGhlciB0byBwcm9maWxlIFJheSB3b3JrZXJzIHdpdGggbnNpZ2h0LlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5yYXkuaW8vZW4vbGF0ZXN0L3JheS1vYnNlcnZhYmlsaXR5L3VzZXItZ3VpZGVzL3Byb2ZpbGluZy5odG1sI3Byb2ZpbGluZy1uc2lnaHQtcHJvZmlsZXJcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJheVdvcmtlcnNVc2VOc2lnaHQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEaXNhYmxlIHRoZSBjdXN0b20gYWxsLXJlZHVjZSBrZXJuZWwgYW5kIGZhbGwgYmFjayB0byBOQ0NMLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUN1c3RvbUFsbFJlZHVjZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIEtWIGNhY2hlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1DYWNoZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBTaXplIG9mIGEgY29udGlndW91cyBjYWNoZSBibG9jayBpbiBudW1iZXIgb2YgdG9rZW5zLlxuICAgKiBUaGlzIGlzIGlnbm9yZWQgb24gbmV1cm9uIGRldmljZXMgYW5kIHNldCB0byDigJNtYXgtbW9kZWwtbGVuLiBPbiBDVURBIGRldmljZXMsIG9ubHkgYmxvY2sgc2l6ZXMgdXAgdG8gMzIgYXJlIHN1cHBvcnRlZC5cbiAgICogT24gSFBVIGRldmljZXMsIGJsb2NrIHNpemUgZGVmYXVsdHMgdG8gMTI4LlxuICAgKi9cbiAgcmVhZG9ubHkgYmxvY2tTaXplPzogQmxvY2tTaXplO1xuXG4gIC8qKlxuICAgKiBUaGUgZnJhY3Rpb24gb2YgR1BVIG1lbW9yeSB0byBiZSB1c2VkIGZvciB0aGUgbW9kZWwgZXhlY3V0b3IsIHdoaWNoIGNhbiByYW5nZSBmcm9tIDAgdG8gMS5cbiAgICogRm9yIGV4YW1wbGUsIGEgdmFsdWUgb2YgMC41IHdvdWxkIGltcGx5IDUwJSBHUFUgbWVtb3J5IHV0aWxpemF0aW9uLlxuICAgKiBJZiB1bnNwZWNpZmllZCwgd2lsbCB1c2UgdGhlIGRlZmF1bHQgdmFsdWUgb2YgMC45LiBUaGlzIGlzIGEgcGVyLWluc3RhbmNlIGxpbWl0LFxuICAgKiBhbmQgb25seSBhcHBsaWVzIHRvIHRoZSBjdXJyZW50IHZMTE0gaW5zdGFuY2UuXG4gICAqIEl0IGRvZXMgbm90IG1hdHRlciBpZiB5b3UgaGF2ZSBhbm90aGVyIHZMTE0gaW5zdGFuY2UgcnVubmluZyBvbiB0aGUgc2FtZSBHUFUuIEZvciBleGFtcGxlLFxuICAgKiBpZiB5b3UgaGF2ZSB0d28gdkxMTSBpbnN0YW5jZXMgcnVubmluZyBvbiB0aGUgc2FtZSBHUFUsIHlvdSBjYW4gc2V0IHRoZSBHUFUgbWVtb3J5IHV0aWxpemF0aW9uIHRvIDAuNSBmb3IgZWFjaCBpbnN0YW5jZS5cbiAgICogQGRlZmF1bHQgMC45XG4gICAqL1xuICByZWFkb25seSBncHVNZW1vcnlVdGlsaXphdGlvbj86IG51bWJlcjtcblxuICAvKipcbiAgICogU2l6ZSBvZiB0aGUgQ1BVIHN3YXAgc3BhY2UgcGVyIEdQVSAoaW4gR2lCKS5cbiAgICogQGRlZmF1bHQgNFxuICAgKi9cbiAgcmVhZG9ubHkgc3dhcFNwYWNlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEYXRhIHR5cGUgZm9yIGt2IGNhY2hlIHN0b3JhZ2UuIElmIOKAnGF1dG/igJ0sIHdpbGwgdXNlIG1vZGVsIGRhdGEgdHlwZS5cbiAgICogQ1VEQSAxMS44KyBzdXBwb3J0cyBmcDggKD1mcDhfZTRtMykgYW5kIGZwOF9lNW0yLiBST0NtIChBTUQgR1BVKSBzdXBwb3J0cyBmcDggKD1mcDhfZTRtMykuXG4gICAqIEBkZWZhdWx0IEt2Q2FjaGVEdHlwZS5BVVRPXG4gICAqL1xuICByZWFkb25seSBrdkNhY2hlRHR5cGU/OiBLdkNhY2hlRHR5cGU7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBHUFUgYmxvY2tzIHRvIHVzZS4gVGhpcyBvdmVycmlkZXMgdGhlIHByb2ZpbGVkIG51bV9ncHVfYmxvY2tzIGlmIHNwZWNpZmllZC5cbiAgICogRG9lcyBub3RoaW5nIGlmIE5vbmUuIFVzZWQgZm9yIHRlc3RpbmcgcHJlZW1wdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IG51bUdwdUJsb2Nrc092ZXJyaWRlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBwcmVmaXggY2FjaGluZy4gRGlzYWJsZWQgYnkgZGVmYXVsdCBmb3IgVjAuIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3IgVjEuXG4gICAqL1xuICByZWFkb25seSBlbmFibGVQcmVmaXhDYWNoaW5nPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0IHRoZSBoYXNoIGFsZ29yaXRobSBmb3IgcHJlZml4IGNhY2hpbmcuXG4gICAqIEBkZWZhdWx0IFByZWZpeENhY2hpbmdIYXNoQWxnby5CVUlMVElOXG4gICAqL1xuICByZWFkb25seSBwcmVmaXhDYWNoaW5nSGFzaEFsZ28/OiBQcmVmaXhDYWNoaW5nSGFzaEFsZ287XG5cbiAgLyoqXG4gICAqIFRoZSBzcGFjZSBpbiBHaUIgdG8gb2ZmbG9hZCB0byBDUFUsIHBlciBHUFUuXG4gICAqIERlZmF1bHQgaXMgMCwgd2hpY2ggbWVhbnMgbm8gb2ZmbG9hZGluZy4gSW50dWl0aXZlbHksXG4gICAqIHRoaXMgYXJndW1lbnQgY2FuIGJlIHNlZW4gYXMgYSB2aXJ0dWFsIHdheSB0byBpbmNyZWFzZSB0aGUgR1BVIG1lbW9yeSBzaXplLlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IGhhdmUgb25lIDI0IEdCIEdQVSBhbmQgc2V0IHRoaXMgdG8gMTAsIHZpcnR1YWxseSB5b3UgY2FuIHRoaW5rIG9mIGl0IGFzIGEgMzQgR0IgR1BVLlxuICAgKiBUaGVuIHlvdSBjYW4gbG9hZCBhIDEzQiBtb2RlbCB3aXRoIEJGMTYgd2VpZ2h0LCB3aGljaCByZXF1aXJlcyBhdCBsZWFzdCAyNkdCIEdQVSBtZW1vcnkuXG4gICAqXG4gICAqIE5vdGUgdGhhdCB0aGlzIHJlcXVpcmVzIGZhc3QgQ1BVLUdQVSBpbnRlcmNvbm5lY3QsXG4gICAqIGFzIHBhcnQgb2YgdGhlIG1vZGVsIGlzIGxvYWRlZCBmcm9tIENQVSBtZW1vcnkgdG8gR1BVIG1lbW9yeSBvbiB0aGUgZmx5IGluIGVhY2ggbW9kZWwgZm9yd2FyZCBwYXNzLlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICByZWFkb25seSBjcHVPZmZsb2FkR2I/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoaXMgZW5hYmxlcyBkeW5hbWljIGNhbGN1bGF0aW9uIG9mIGtfc2NhbGUgYW5kIHZfc2NhbGUgd2hlbiBrdl9jYWNoZV9kdHlwZSBpcyBmcDguXG4gICAqIElmIEZhbHNlLCB0aGUgc2NhbGVzIHdpbGwgYmUgbG9hZGVkIGZyb20gdGhlIG1vZGVsIGNoZWNrcG9pbnQgaWYgYXZhaWxhYmxlLiBPdGhlcndpc2UsIHRoZSBzY2FsZXMgd2lsbCBkZWZhdWx0IHRvIDEuMC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGNhbGN1bGF0ZUt2U2NhbGVzPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb250cm9scyB0aGUgYmVoYXZpb3Igb2YgbXVsdGltb2RhbCBtb2RlbHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbU11bHRpTW9kYWxDb25maWcge1xuICAvKipcbiAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGlucHV0IGl0ZW1zIGFsbG93ZWQgcGVyIHByb21wdCBmb3IgZWFjaCBtb2RhbGl0eS5cbiAgICogVGhpcyBzaG91bGQgYmUgYSBvYmplY3QgdGhhdCB3aWxsIGJlIHBhcnNlZCBpbnRvIGEgZGljdGlvbmFyeS4gRGVmYXVsdHMgdG8gMSAoVjApIG9yIDk5OSAoVjEpIGZvciBlYWNoIG1vZGFsaXR5LlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKi9cbiAgcmVhZG9ubHkgbGltaXRNbVBlclByb21wdD86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgTG9SQS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtTG9yYUNvbmZpZyB7XG4gIC8qKlxuICAgKiBJZiBUcnVlLCBlbmFibGUgaGFuZGxpbmcgb2YgTG9SQSBhZGFwdGVycy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUxvcmE/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiBUcnVlLCBlbmFibGUgYmlhcyBmb3IgTG9SQSBhZGFwdGVycy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUxvcmFCaWFzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTWF4IG51bWJlciBvZiBMb1JBcyBpbiBhIHNpbmdsZSBiYXRjaC5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TG9yYXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heCBMb1JBIHJhbmsuXG4gICAqIEBkZWZhdWx0IDE2XG4gICAqL1xuICByZWFkb25seSBtYXhMb3JhUmFuaz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBzaXplIG9mIGV4dHJhIHZvY2FidWxhcnkgdGhhdCBjYW4gYmUgcHJlc2VudCBpbiBhIExvUkEgYWRhcHRlciAoYWRkZWQgdG8gdGhlIGJhc2UgbW9kZWwgdm9jYWJ1bGFyeSkuXG4gICAqIEBkZWZhdWx0IDI1NlxuICAgKi9cbiAgcmVhZG9ubHkgbG9yYUV4dHJhVm9jYWJTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEYXRhIHR5cGUgZm9yIExvUkEuIElmIGF1dG8sIHdpbGwgZGVmYXVsdCB0byBiYXNlIG1vZGVsIGR0eXBlLlxuICAgKiBAZGVmYXVsdCBMb3JhRHR5cGUuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgbG9yYUR0eXBlPzogTG9yYUR0eXBlO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IG11bHRpcGxlIHNjYWxpbmcgZmFjdG9ycyAod2hpY2ggY2FuIGJlIGRpZmZlcmVudCBmcm9tIGJhc2UgbW9kZWwgc2NhbGluZyBmYWN0b3JzZWUgZWcuIExvbmcgTG9SQSlcbiAgICogdG8gYWxsb3cgZm9yIG11bHRpcGxlIExvUkEgYWRhcHRlcnMgdHJhaW5lZCB3aXRoIHRob3NlIHNjYWxpbmcgZmFjdG9ycyB0byBiZSB1c2VkIGF0IHRoZSBzYW1lIHRpbWUuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIG9ubHkgYWRhcHRlcnMgdHJhaW5lZCB3aXRoIHRoZSBiYXNlIG1vZGVsIHNjYWxpbmcgZmFjdG9yIGFyZSBhbGxvd2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9uZ0xvcmFTY2FsaW5nRmFjdG9ycz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgTG9SQXMgdG8gc3RvcmUgaW4gQ1BVIG1lbW9yeS4gTXVzdCBiZSA+PSB0aGFuIG1heF9sb3Jhcy5cbiAgICovXG4gIHJlYWRvbmx5IG1heENwdUxvcmFzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBCeSBkZWZhdWx0LCBvbmx5IGhhbGYgb2YgdGhlIExvUkEgY29tcHV0YXRpb24gaXMgc2hhcmRlZCB3aXRoIHRlbnNvciBwYXJhbGxlbGlzbS5cbiAgICogRW5hYmxpbmcgdGhpcyB3aWxsIHVzZSB0aGUgZnVsbHkgc2hhcmRlZCBsYXllcnMuXG4gICAqIEF0IGhpZ2ggc2VxdWVuY2UgbGVuZ3RoLCBtYXggcmFuayBvciB0ZW5zb3IgcGFyYWxsZWwgc2l6ZSwgdGhpcyBpcyBsaWtlbHkgZmFzdGVyLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZnVsbHlTaGFyZGVkTG9yYXM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIFByb21wdEFkYXB0ZXJzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1Qcm9tcHRBZGFwdGVyQ29uZmlnIHtcbiAgLyoqXG4gICAqIElmIFRydWUsIGVuYWJsZSBoYW5kbGluZyBvZiBQcm9tcHRBZGFwdGVycy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVByb21wdEFkYXB0ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNYXggbnVtYmVyIG9mIFByb21wdEFkYXB0ZXJzIGluIGEgYmF0Y2guXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IG1heFByb21wdEFkYXB0ZXJzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXggbnVtYmVyIG9mIFByb21wdEFkYXB0ZXJzIHRva2Vucy5cbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4UHJvbXB0QWRhcHRlclRva2VuPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1EZXZpY2VDb25maWcge1xuICAvKipcbiAgICogRGV2aWNlIHR5cGUgZm9yIHZMTE0gZXhlY3V0aW9uLlxuICAgKiBAZGVmYXVsdCBEZXZpY2UuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgZGV2aWNlPzogRGV2aWNlO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHNwZWN1bGF0aXZlIGRlY29kaW5nLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1TcGVjdWxhdGl2ZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbnMgZm9yIHNwZWN1bGF0aXZlIGRlY29kaW5nLiBTaG91bGQgYmUgYSBvYmplY3QuXG4gICAqL1xuICByZWFkb25seSBzcGVjdWxhdGl2ZUNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbVNjaGVkdWxlckNvbmZpZyB7XG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiB0b2tlbnMgdG8gYmUgcHJvY2Vzc2VkIGluIGEgc2luZ2xlIGl0ZXJhdGlvbi5cbiAgICpcbiAgICogVGhpcyBjb25maWcgaGFzIG5vIHN0YXRpYyBkZWZhdWx0LiBJZiBsZWZ0IHVuc3BlY2lmaWVkIGJ5IHRoZSB1c2VyLCBpdCB3aWxsIGJlIHNldCBpbiBFbmdpbmVBcmdzLmNyZWF0ZV9lbmdpbmVfY29uZmlnIGJhc2VkIG9uIHRoZSB1c2FnZSBjb250ZXh0LlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TnVtQmF0Y2hlZFRva2Vucz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2Ygc2VxdWVuY2VzIHRvIGJlIHByb2Nlc3NlZCBpbiBhIHNpbmdsZSBpdGVyYXRpb24uXG4gICAqXG4gICAqIFRoaXMgY29uZmlnIGhhcyBubyBzdGF0aWMgZGVmYXVsdC4gSWYgbGVmdCB1bnNwZWNpZmllZCBieSB0aGUgdXNlciwgaXQgd2lsbCBiZSBzZXQgaW4gRW5naW5lQXJncy5jcmVhdGVfZW5naW5lX2NvbmZpZyBiYXNlZCBvbiB0aGUgdXNhZ2UgY29udGV4dC5cbiAgICovXG4gIHJlYWRvbmx5IG1heE51bVNlcXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEZvciBjaHVua2VkIHByZWZpbGwsIHRoZSBtYXhpbXVtIG51bWJlciBvZiBzZXF1ZW5jZXMgdGhhdCBjYW4gYmUgcGFydGlhbGx5IHByZWZpbGxlZCBjb25jdXJyZW50bHkuXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IG1heE51bVBhcnRpYWxQcmVmaWxscz86IG51bWJlcjtcblxuICAvKipcbiAgICogRm9yIGNodW5rZWQgcHJlZmlsbCwgdGhlIG1heGltdW0gbnVtYmVyIG9mIHByb21wdHMgbG9uZ2VyIHRoYW4gbG9uZ19wcmVmaWxsX3Rva2VuX3RocmVzaG9sZCB0aGF0IHdpbGwgYmUgcHJlZmlsbGVkIGNvbmN1cnJlbnRseS5cbiAgICogU2V0dGluZyB0aGlzIGxlc3MgdGhhbiBtYXhfbnVtX3BhcnRpYWxfcHJlZmlsbHMgd2lsbCBhbGxvdyBzaG9ydGVyIHByb21wdHMgdG8ganVtcCB0aGUgcXVldWUgaW4gZnJvbnQgb2YgbG9uZ2VyIHByb21wdHMgaW4gc29tZSBjYXNlcywgaW1wcm92aW5nIGxhdGVuY3kuXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IG1heExvbmdQYXJ0aWFsUHJlZmlsbHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEZvciBjaHVua2VkIHByZWZpbGwsIGEgcmVxdWVzdCBpcyBjb25zaWRlcmVkIGxvbmcgaWYgdGhlIHByb21wdCBpcyBsb25nZXIgdGhhbiB0aGlzIG51bWJlciBvZiB0b2tlbnMuXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHJlYWRvbmx5IGxvbmdQcmVmaWxsVG9rZW5UaHJlc2hvbGQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2Ygc2xvdHMgdG8gYWxsb2NhdGUgcGVyIHNlcXVlbmNlIHBlciBzdGVwLFxuICAgKiBiZXlvbmQgdGhlIGtub3duIHRva2VuIGlkcy4gVGhpcyBpcyB1c2VkIGluIHNwZWN1bGF0aXZlIGRlY29kaW5nIHRvIHN0b3JlIEtWIGFjdGl2YXRpb25zIG9mIHRva2Vuc1xuICAgKiB3aGljaCBtYXkgb3IgbWF5IG5vdCBiZSBhY2NlcHRlZC5cbiAgICpcbiAgICogTk9URTogVGhpcyB3aWxsIGJlIHJlcGxhY2VkIGJ5IHNwZWN1bGF0aXZlIGNvbmZpZyBpbiB0aGUgZnV0dXJlOyBpdCBpcyBwcmVzZW50IHRvIGVuYWJsZSBjb3JyZWN0bmVzcyB0ZXN0cyB1bnRpbCB0aGVuLlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICByZWFkb25seSBudW1Mb29rYWhlYWRTbG90cz86IG51bWJlcjtcblxuICAvKipcbiAgICogQXBwbHkgYSBkZWxheSAob2YgZGVsYXkgZmFjdG9yIG11bHRpcGxpZWQgYnkgcHJldmlvdXMgcHJvbXB0IGxhdGVuY3kpIGJlZm9yZSBzY2hlZHVsaW5nIG5leHQgcHJvbXB0LlxuICAgKiBAZGVmYXVsdCAwLjBcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlckRlbGF5RmFjdG9yPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHBlcmZvcm0gcHJlZW1wdGlvbiBieSBzd2FwcGluZyBvciByZWNvbXB1dGF0aW9uLlxuICAgKiBJZiBub3Qgc3BlY2lmaWVkLCB3ZSBkZXRlcm1pbmUgdGhlIG1vZGUgYXMgZm9sbG93czpcbiAgICogV2UgdXNlIHJlY29tcHV0YXRpb24gYnkgZGVmYXVsdCBzaW5jZSBpdCBpbmN1cnMgbG93ZXIgb3ZlcmhlYWQgdGhhbiBzd2FwcGluZy5cbiAgICogSG93ZXZlciwgd2hlbiB0aGUgc2VxdWVuY2UgZ3JvdXAgaGFzIG11bHRpcGxlIHNlcXVlbmNlcyAoZS5nLiwgYmVhbSBzZWFyY2gpLFxuICAgKiByZWNvbXB1dGF0aW9uIGlzIG5vdCBjdXJyZW50bHkgc3VwcG9ydGVkLiBJbiBzdWNoIGEgY2FzZSwgd2UgdXNlIHN3YXBwaW5nIGluc3RlYWQuXG4gICAqL1xuICByZWFkb25seSBwcmVlbXB0aW9uTW9kZT86IFByZWVtcHRpb25Nb2RlO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBmb3J3YXJkIHN0ZXBzIHBlciBzY2hlZHVsZXIgY2FsbC5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbnVtU2NoZWR1bGVyU3RlcHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIElmIEZhbHNlLCB0aGVuIG11bHRpLXN0ZXAgd2lsbCBzdHJlYW0gb3V0cHV0cyBhdCB0aGUgZW5kIG9mIGFsbCBzdGVwc1xuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBtdWx0aVN0ZXBTdHJlYW1PdXRwdXRzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHNjaGVkdWxpbmcgcG9saWN5IHRvIHVzZTpcbiAgICogLSDigJxmY2Zz4oCdIG1lYW5zIGZpcnN0IGNvbWUgZmlyc3Qgc2VydmVkLCBpLmUuIHJlcXVlc3RzIGFyZSBoYW5kbGVkIGluIG9yZGVyIG9mIGFycml2YWwuXG4gICAqIC0g4oCccHJpb3JpdHnigJ0gbWVhbnMgcmVxdWVzdHMgYXJlIGhhbmRsZWQgYmFzZWQgb24gZ2l2ZW4gcHJpb3JpdHkgKGxvd2VyIHZhbHVlIG1lYW5zIGVhcmxpZXIgaGFuZGxpbmcpIGFuZCB0aW1lIG9mIGFycml2YWwgZGVjaWRpbmcgYW55IHRpZXMpLlxuICAgKiBAZGVmYXVsdCBTY2hlZHVsaW5nUG9saWN5LkZDRlNcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxpbmdQb2xpY3k/OiBTY2hlZHVsaW5nUG9saWN5O1xuXG4gIC8qKlxuICAgKiBJZiBUcnVlLCBwcmVmaWxsIHJlcXVlc3RzIGNhbiBiZSBjaHVua2VkIGJhc2VkIG9uIHRoZSByZW1haW5pbmcgbWF4X251bV9iYXRjaGVkX3Rva2Vucy5cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZUNodW5rZWRQcmVmaWxsPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgc2V0IHRvIHRydWUgYW5kIGNodW5rZWQgcHJlZmlsbCBpcyBlbmFibGVkLCB3ZSBkbyBub3Qgd2FudCB0byBwYXJ0aWFsbHkgc2NoZWR1bGUgYSBtdWx0aW1vZGFsIGl0ZW0uXG4gICAqIE9ubHkgdXNlZCBpbiBWMSBUaGlzIGVuc3VyZXMgdGhhdCBpZiBhIHJlcXVlc3QgaGFzIGEgbWl4ZWQgcHJvbXB0IChsaWtlIHRleHQgdG9rZW5zIFRUVFQgZm9sbG93ZWQgYnkgaW1hZ2UgdG9rZW5zIElJSUlJSUlJSUkpXG4gICAqIHdoZXJlIG9ubHkgc29tZSBpbWFnZSB0b2tlbnMgY2FuIGJlIHNjaGVkdWxlZCAobGlrZSBUVFRUSUlJSUksIGxlYXZpbmcgSUlJSUkpLFxuICAgKiBpdCB3aWxsIGJlIHNjaGVkdWxlZCBhcyBUVFRUIGluIG9uZSBzdGVwIGFuZCBJSUlJSUlJSUlJIGluIHRoZSBuZXh0LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUNodW5rZWRNbUlucHV0PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIHZMTE0gc2VydmVyIGNvbW1hbmQgbGluZSBhcmd1bWVudHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtRW5naW5lQXJndW1lbnRzXG4gIGV4dGVuZHMgVmxsbU5hbWVkQXJndW1lbnRzLFxuICAgIFZsbG1Mb2FkQ29uZmlnLFxuICAgIFZsbG1EZWNvZGluZ0NvbmZpZyxcbiAgICBWbGxtUGFyYWxsZWxDb25maWcsXG4gICAgVmxsbUNhY2hlQ29uZmlnLFxuICAgIFZsbG1NdWx0aU1vZGFsQ29uZmlnLFxuICAgIFZsbG1Mb3JhQ29uZmlnLFxuICAgIFZsbG1Qcm9tcHRBZGFwdGVyQ29uZmlnLFxuICAgIFZsbG1EZXZpY2VDb25maWcsXG4gICAgVmxsbVNwZWN1bGF0aXZlQ29uZmlnLFxuICAgIFZsbG1TY2hlZHVsZXJDb25maWcge31cblxuY29uc3QganNvblZhbHVlUHJvcGVydGllczogKGtleW9mIFZsbG1FbmdpbmVBcmd1bWVudHMpW10gPSBbXG4gIFwiYWxsb3dlZE9yaWdpbnNcIixcbiAgXCJhbGxvd2VkSGVhZGVyc1wiLFxuICBcImFsbG93ZWRNZXRob2RzXCIsXG5dO1xuY29uc3QgaWdub3JlS2V5czogKGtleW9mIFZsbG1FbmdpbmVBcmd1bWVudHMpW10gPSBbXCJtb2RlbFwiLCBcImhmVG9rZW5cIl07XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWbGxtRW5naW5lQXJndW1lbnRzUGFyc2VyIHtcbiAgLyoqXG4gICAqIENvbnZlcnQgdkxMTSBlbmdpbmUgYXJndW1lbnRzIChjYW1lbCBjYXNlKSB0byBjb25maWcgKGtlYmFiIGNhc2UpXG4gICAqIEBwYXJhbSBhcmdzIHZMTE0gZW5naW5lIGFyZ3VtZW50c1xuICAgKiBAcmV0dXJucyB2TExNIGVuZ2luZSBjb25maWdcbiAgICogQHNlZSBodHRwczovL2RvY3MudmxsbS5haS9lbi9sYXRlc3Qvc2VydmluZy9vcGVuYWlfY29tcGF0aWJsZV9zZXJ2ZXIuaHRtbCNjb25maWd1cmF0aW9uLWZpbGVcbiAgICovXG4gIHN0YXRpYyBjb25maWcoYXJnczogVmxsbUVuZ2luZUFyZ3VtZW50cykge1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyhhcmdzKVxuICAgICAgLmZpbHRlcigoW2tleV0pID0+ICFpZ25vcmVLZXlzLmluY2x1ZGVzKGtleSBhcyBrZXlvZiBWbGxtRW5naW5lQXJndW1lbnRzKSlcbiAgICAgIC5yZWR1Y2U8eyBba2V5IGluIHN0cmluZ106IGFueSB9PigocHJldiwgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IGsgPSBrZXkucmVwbGFjZSgvW0EtWl0vZywgKG1hdGNoKSA9PiBgLSR7bWF0Y2gudG9Mb3dlckNhc2UoKX1gKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGpzb25WYWx1ZVByb3BlcnRpZXMuaW5jbHVkZXMoa2V5IGFzIGtleW9mIFZsbG1FbmdpbmVBcmd1bWVudHMpIHx8XG4gICAgICAgICAgKCFBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB0eXBlb2YgdmFsdWUgPT09IFwib2JqZWN0XCIpXG4gICAgICAgICkge1xuICAgICAgICAgIHZhbHVlID0gSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHByZXZba10gPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuIHByZXY7XG4gICAgICB9LCB7fSk7XG4gIH1cbiAgc3RhdGljIGNsaShhcmdzOiBWbGxtRW5naW5lQXJndW1lbnRzKSB7XG4gICAgY29uc3QgZ2VuZXJhbEFyZ3MgPSBPYmplY3QuZW50cmllcyhhcmdzKVxuICAgICAgLmZpbHRlcigoW2tleV0pID0+ICFpZ25vcmVLZXlzLmluY2x1ZGVzKGtleSBhcyBrZXlvZiBWbGxtRW5naW5lQXJndW1lbnRzKSlcbiAgICAgIC5mbGF0TWFwKChbaywgdmFsdWVdKSA9PiB7XG4gICAgICAgIGNvbnN0IGtleSA9IGsucmVwbGFjZSgvW0EtWl0vZywgKG1hdGNoKSA9PiBgLSR7bWF0Y2gudG9Mb3dlckNhc2UoKX1gKTtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJib29sZWFuXCIpIHtcbiAgICAgICAgICByZXR1cm4gdmFsdWUgPyBbYC0tJHtrZXl9YF0gOiBbXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICByZXR1cm4gW2AtLSR7a2V5fWAsIC4uLnZhbHVlLm1hcCgodikgPT4gYCR7dn1gKV07XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICAgIHJldHVybiBbYC0tJHtrZXl9YCwgYCcke0pTT04uc3RyaW5naWZ5KHZhbHVlKX0nYF07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFtgLS0ke2tleX1gLCBgJHt2YWx1ZX1gXTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBbYXJncy5tb2RlbCEsIC4uLmdlbmVyYWxBcmdzXTtcbiAgfVxufVxuIl19
|
|
352
|
+
VllmEngineArgumentsParser[_a] = { fqn: "aws-cdk-neuronx-patterns.VllmEngineArgumentsParser", version: "0.0.17" };
|
|
353
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmxsbS1lbmdpbmUtYXJnbWVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFzZS9zZXJ2ZXItZW5naW5lL3ZsbG0tZW5naW5lL3ZsbG0tZW5naW5lLWFyZ21lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUE7O0dBRUc7QUFDSCxJQUFZLGVBT1g7QUFQRCxXQUFZLGVBQWU7SUFDekIsa0NBQWUsQ0FBQTtJQUNmLGdDQUFhLENBQUE7SUFDYixzQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBZSxDQUFBO0lBQ2Ysd0NBQXFCLENBQUE7SUFDckIsa0NBQWUsQ0FBQTtBQUNqQixDQUFDLEVBUFcsZUFBZSwrQkFBZixlQUFlLFFBTzFCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLFVBYVg7QUFiRCxXQUFZLFVBQVU7SUFDcEIsMkJBQWEsQ0FBQTtJQUNiLHVCQUFTLENBQUE7SUFDVCx5Q0FBMkIsQ0FBQTtJQUMzQixpQ0FBbUIsQ0FBQTtJQUNuQiw2QkFBZSxDQUFBO0lBQ2YsdUNBQXlCLENBQUE7SUFDekIsNkNBQStCLENBQUE7SUFDL0IsMkJBQWEsQ0FBQTtJQUNiLDJDQUE2QixDQUFBO0lBQzdCLGlDQUFtQixDQUFBO0lBQ25CLCtDQUFpQyxDQUFBO0lBQ2pDLGlEQUFtQyxDQUFBO0FBQ3JDLENBQUMsRUFiVyxVQUFVLDBCQUFWLFVBQVUsUUFhckI7QUFFRDs7R0FFRztBQUNILElBQVksUUF5Qlg7QUF6QkQsV0FBWSxRQUFRO0lBQ2xCOztPQUVHO0lBQ0gseUJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gseUJBQWEsQ0FBQTtJQUNiOztPQUVHO0lBQ0gsK0JBQW1CLENBQUE7SUFDbkI7O09BRUc7SUFDSCxpQ0FBcUIsQ0FBQTtJQUNyQjs7T0FFRztJQUNILDJCQUFlLENBQUE7SUFDZjs7T0FFRztJQUNILCtCQUFtQixDQUFBO0FBQ3JCLENBQUMsRUF6QlcsUUFBUSx3QkFBUixRQUFRLFFBeUJuQjtBQUVEOztH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QUssR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ25DLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNuRCxDQUFDO1lBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsT0FBTyxDQUFDLEtBQUssR0FBRyxFQUFFLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQzdDLENBQUM7WUFDRCxPQUFPLENBQUMsS0FBSyxHQUFHLEVBQUUsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDbEMsQ0FBQyxDQUFDLENBQUM7UUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQU0sRUFBRSxHQUFHLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7O0FBdkNILDhEQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlY3JldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYmF0Y2hcIjtcblxuLyoqXG4gKiBMb2cgbGV2ZWwgb3B0aW9ucyBmb3IgVXZpY29yblxuICovXG5leHBvcnQgZW51bSBVdmljb3JuTG9nTGV2ZWwge1xuICBERUJVRyA9IFwiZGVidWdcIixcbiAgSU5GTyA9IFwiaW5mb1wiLFxuICBXQVJOSU5HID0gXCJ3YXJuaW5nXCIsXG4gIEVSUk9SID0gXCJlcnJvclwiLFxuICBDUklUSUNBTCA9IFwiY3JpdGljYWxcIixcbiAgVFJBQ0UgPSBcInRyYWNlXCIsXG59XG5cbi8qKlxuICogQXZhaWxhYmxlIG1vZGVsIHdlaWdodCBsb2FkaW5nIGZvcm1hdHNcbiAqL1xuZXhwb3J0IGVudW0gTG9hZEZvcm1hdCB7XG4gIEFVVE8gPSBcImF1dG9cIixcbiAgUFQgPSBcInB0XCIsXG4gIFNBRkVURU5TT1JTID0gXCJzYWZldGVuc29yc1wiLFxuICBOUENBQ0hFID0gXCJucGNhY2hlXCIsXG4gIERVTU1ZID0gXCJkdW1teVwiLFxuICBURU5TT1JJWkVSID0gXCJ0ZW5zb3JpemVyXCIsXG4gIFNIQVJERURfU1RBVEUgPSBcInNoYXJkZWRfc3RhdGVcIixcbiAgR0dVRiA9IFwiZ2d1ZlwiLFxuICBCSVRTQU5EQllURVMgPSBcImJpdHNhbmRieXRlc1wiLFxuICBNSVNUUkFMID0gXCJtaXN0cmFsXCIsXG4gIFJVTkFJX1NUUkVBTUVSID0gXCJydW5haV9zdHJlYW1lclwiLFxuICBGQVNUU0FGRVRFTlNPUlMgPSBcImZhc3RzYWZldGVuc29yc1wiLFxufVxuXG4vKipcbiAqIERhdGEgdHlwZXMgZm9yIG1vZGVsIHdlaWdodHMgYW5kIGFjdGl2YXRpb25zXG4gKi9cbmV4cG9ydCBlbnVtIERhdGFUeXBlIHtcbiAgLyoqXG4gICAqIOKAnGF1dG/igJ0gd2lsbCB1c2UgRlAxNiBwcmVjaXNpb24gZm9yIEZQMzIgYW5kIEZQMTYgbW9kZWxzLCBhbmQgQkYxNiBwcmVjaXNpb24gZm9yIEJGMTYgbW9kZWxzLlxuICAgKi9cbiAgQVVUTyA9IFwiYXV0b1wiLFxuICAvKipcbiAgICog4oCcaGFsZuKAnSBmb3IgRlAxNi4gUmVjb21tZW5kZWQgZm9yIEFXUSBxdWFudGl6YXRpb24uXG4gICAqL1xuICBIQUxGID0gXCJoYWxmXCIsXG4gIC8qKlxuICAgKiDigJxmbG9hdDE24oCdIGlzIHRoZSBzYW1lIGFzIOKAnGhhbGbigJ0uXG4gICAqL1xuICBGTE9BVDE2ID0gXCJmbG9hdDE2XCIsXG4gIC8qKlxuICAgKiDigJxiZmxvYXQxNuKAnSBmb3IgYSBiYWxhbmNlIGJldHdlZW4gcHJlY2lzaW9uIGFuZCByYW5nZS5cbiAgICovXG4gIEJGTE9BVDE2ID0gXCJiZmxvYXQxNlwiLFxuICAvKipcbiAgICog4oCcZmxvYXTigJ0gaXMgc2hvcnRoYW5kIGZvciBGUDMyIHByZWNpc2lvbi5cbiAgICovXG4gIEZMT0FUID0gXCJmbG9hdFwiLFxuICAvKipcbiAgICog4oCcZmxvYXQzMuKAnSBmb3IgRlAzMiBwcmVjaXNpb24uXG4gICAqL1xuICBGTE9BVDMyID0gXCJmbG9hdDMyXCIsXG59XG5cbi8qKlxuICogVGhlIGZvbGRlciBwYXRoIHRvIHRoZSBnZW5lcmF0aW9uIGNvbmZpZy5cbiAqL1xuZXhwb3J0IGVudW0gR2VuZXJhdGlvbkNvbmZpZyB7XG4gIEFVVE8gPSBcImF1dG9cIixcbiAgVkxMTSA9IFwidmxsbVwiLFxufVxuXG4vKipcbiAqIEF2YWlsYWJsZSBndWlkZWQgZGVjb2RpbmcgYmFja2VuZHNcbiAqL1xuZXhwb3J0IGVudW0gR3VpZGVkRGVjb2RpbmdCYWNrZW5kIHtcbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBPVVRMSU5FUyA9IFwib3V0bGluZXNcIixcbiAgTE1fRk9STUFUX0VORk9SQ0VSID0gXCJsbS1mb3JtYXQtZW5mb3JjZXJcIixcbiAgWEdSQU1NQVIgPSBcInhncmFtbWFyXCIsXG59XG5cbi8qKlxuICogQXZhaWxhYmxlIHJlYXNvbmluZyBwYXJzZXJzXG4gKi9cbmV4cG9ydCBlbnVtIFJlYXNvbmluZ1BhcnNlciB7XG4gIERFRVBTRUVLX1IxID0gXCJkZWVwc2Vla19yMVwiLFxuICBHUkFOSVRFID0gXCJncmFuaXRlXCIsXG59XG5cbi8qKlxuICogTW9kZWwgaW1wbGVtZW50YXRpb24gb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBNb2RlbEltcGwge1xuICAvKipcbiAgICog4oCcYXV0b+KAnSB3aWxsIHRyeSB0byB1c2UgdGhlIHZMTE0gaW1wbGVtZW50YXRpb24gaWYgaXQgZXhpc3RzIGFuZCBmYWxsIGJhY2sgdG8gdGhlIFRyYW5zZm9ybWVyc1xuICAgKiBpbXBsZW1lbnRhdGlvbiBpZiBubyB2TExNIGltcGxlbWVudGF0aW9uIGlzIGF2YWlsYWJsZS5cbiAgICovXG4gIEFVVE8gPSBcImF1dG9cIixcbiAgLyoqXG4gICAqIOKAnHZsbG3igJ0gd2lsbCB1c2UgdGhlIHZMTE0gbW9kZWwgaW1wbGVtZW50YXRpb24uXG4gICAqL1xuICBWTExNID0gXCJ2bGxtXCIsXG4gIC8qKlxuICAgKiDigJx0cmFuc2Zvcm1lcnPigJ0gd2lsbCB1c2UgdGhlIFRyYW5zZm9ybWVycyBtb2RlbCBpbXBsZW1lbnRhdGlvbi5cbiAgICovXG4gIFRSQU5TRk9STUVSUyA9IFwidHJhbnNmb3JtZXJzXCIsXG59XG5cbi8qKlxuICogRGlzdHJpYnV0ZWQgZXhlY3V0aW9uIGJhY2tlbmQgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBEaXN0cmlidXRlZEV4ZWN1dG9yQmFja2VuZCB7XG4gIFJBWSA9IFwicmF5XCIsXG4gIE1QID0gXCJtcFwiLFxuICBVTkkgPSBcInVuaVwiLFxuICBFWFRFUk5BTF9MQVVOQ0hFUiA9IFwiZXh0ZXJuYWxfbGF1bmNoZXJcIixcbn1cblxuLyoqXG4gKiBDYWNoZSBibG9jayBzaXplIG9wdGlvbnMgaW4gbnVtYmVyIG9mIHRva2Vuc1xuICovXG5leHBvcnQgZW51bSBCbG9ja1NpemUge1xuICBTSVpFXzggPSA4LFxuICBTSVpFXzE2ID0gMTYsXG4gIFNJWkVfMzIgPSAzMixcbiAgU0laRV82NCA9IDY0LFxuICBTSVpFXzEyOCA9IDEyOCxcbn1cblxuLyoqXG4gKiBLViBjYWNoZSBkYXRhIHR5cGUgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBLdkNhY2hlRHR5cGUge1xuICBBVVRPID0gXCJhdXRvXCIsXG4gIEZQOCA9IFwiZnA4XCIsXG4gIEZQOF9FNE0zID0gXCJmcDhfZTRtM1wiLFxuICBGUDhfRTVNMiA9IFwiZnA4X2U1bTJcIixcbn1cblxuLyoqXG4gKiBIYXNoIGFsZ29yaXRobSBvcHRpb25zIGZvciBwcmVmaXggY2FjaGluZ1xuICovXG5leHBvcnQgZW51bSBQcmVmaXhDYWNoaW5nSGFzaEFsZ28ge1xuICAvKipcbiAgICog4oCcYnVpbHRpbuKAnSBpcyBQeXRob27igJlzIGJ1aWx0LWluIGhhc2guXG4gICAqL1xuICBCVUlMVElOID0gXCJidWlsdGluXCIsXG4gIC8qKlxuICAgKiDigJxzaGEyNTbigJ0gaXMgY29sbGlzaW9uIHJlc2lzdGFudCBidXQgd2l0aCBjZXJ0YWluIG92ZXJoZWFkcy5cbiAgICovXG4gIFNIQTI1NiA9IFwic2hhMjU2XCIsXG59XG5cbi8qKlxuICogUXVhbnRpemF0aW9uIG1ldGhvZHNcbiAqL1xuZXhwb3J0IGVudW0gUXVhbnRpemF0aW9uIHtcbiAgQVFMTSA9IFwiYXFsbVwiLFxuICBBV1EgPSBcImF3cVwiLFxuICBERUVQU1BFRURGUCA9IFwiZGVlcHNwZWVkZnBcIixcbiAgVFBVX0lOVDggPSBcInRwdV9pbnQ4XCIsXG4gIEZQOCA9IFwiZnA4XCIsXG4gIFBUUENfRlA4ID0gXCJwdHBjX2ZwOFwiLFxuICBGQkdFTU1fRlA4ID0gXCJmYmdlbW1fZnA4XCIsXG4gIE1PREVMT1BUID0gXCJtb2RlbG9wdFwiLFxuICBOVkZQNCA9IFwibnZmcDRcIixcbiAgTUFSTElOID0gXCJtYXJsaW5cIixcbiAgR0dVRiA9IFwiZ2d1ZlwiLFxuICBHUFRRX01BUkxJTl8yNCA9IFwiZ3B0cV9tYXJsaW5fMjRcIixcbiAgR1BUUV9NQVJMSU4gPSBcImdwdHFfbWFybGluXCIsXG4gIEFXUV9NQVJMSU4gPSBcImF3cV9tYXJsaW5cIixcbiAgR1BUUSA9IFwiZ3B0cVwiLFxuICBDT01QUkVTU0VEX1RFTlNPUlMgPSBcImNvbXByZXNzZWQtdGVuc29yc1wiLFxuICBCSVRTQU5EQllURVMgPSBcImJpdHNhbmRieXRlc1wiLFxuICBRUVEgPSBcInFxcVwiLFxuICBIUVEgPSBcImhxcVwiLFxuICBFWFBFUlRTX0lOVDggPSBcImV4cGVydHNfaW50OFwiLFxuICBORVVST05fUVVBTlQgPSBcIm5ldXJvbl9xdWFudFwiLFxuICBJUEVYID0gXCJpcGV4XCIsXG4gIFFVQVJLID0gXCJxdWFya1wiLFxuICBNT0VfV05BMTYgPSBcIm1vZV93bmExNlwiLFxuICBUT1JDSEFPID0gXCJ0b3JjaGFvXCIsXG4gIE5PTkUgPSBcIk5vbmVcIixcbn1cblxuLyoqXG4gKiBUb2tlbml6ZXIgbW9kZSBvcHRpb25zXG4gKi9cbmV4cG9ydCBlbnVtIFRva2VuaXplck1vZGUge1xuICAvKipcbiAgICog4oCcYXV0b+KAnSB3aWxsIHVzZSB0aGUgZmFzdCB0b2tlbml6ZXIgaWYgYXZhaWxhYmxlLlxuICAgKi9cbiAgQVVUTyA9IFwiYXV0b1wiLFxuICAvKipcbiAgICog4oCcc2xvd+KAnSB3aWxsIGFsd2F5cyB1c2UgdGhlIHNsb3cgdG9rZW5pemVyLlxuICAgKi9cbiAgU0xPVyA9IFwic2xvd1wiLFxuICAvKipcbiAgICog4oCcbWlzdHJhbOKAnSB3aWxsIGFsd2F5cyB1c2UgdGhlIG1pc3RyYWxfY29tbW9uIHRva2VuaXplci5cbiAgICovXG4gIE1JU1RSQUwgPSBcIm1pc3RyYWxcIixcbiAgLyoqXG4gICAqIOKAnGN1c3RvbeKAnSB3aWxsIHVzZSDigJN0b2tlbml6ZXIgdG8gc2VsZWN0IHRoZSBwcmVyZWdpc3RlcmVkIHRva2VuaXplci5cbiAgICovXG4gIENVU1RPTSA9IFwiY3VzdG9tXCIsXG59XG5cbi8qKlxuICogTW9kZWwgY29uZmlnIGZvcm1hdCBvcHRpb25zXG4gKi9cbmV4cG9ydCBlbnVtIENvbmZpZ0Zvcm1hdCB7XG4gIC8qKlxuICAgKiDigJxhdXRv4oCdIHdpbGwgdHJ5IHRvIGxvYWQgdGhlIGNvbmZpZyBpbiBoZiBmb3JtYXQgaWYgYXZhaWxhYmxlIGVsc2UgaXQgd2lsbCB0cnkgdG8gbG9hZCBpbiBtaXN0cmFsIGZvcm1hdFxuICAgKi9cbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBIRiA9IFwiaGZcIixcbiAgTUlTVFJBTCA9IFwibWlzdHJhbFwiLFxufVxuXG4vKipcbiAqIFRva2VuaXplciBwb29sIHR5cGUgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBUb2tlbml6ZXJQb29sVHlwZSB7XG4gIFJBWSA9IFwicmF5XCIsXG59XG5cbi8qKlxuICogRGV2aWNlIHR5cGUgb3B0aW9ucyBmb3IgdkxMTSBleGVjdXRpb25cbiAqL1xuZXhwb3J0IGVudW0gRGV2aWNlIHtcbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBDVURBID0gXCJjdWRhXCIsXG4gIE5FVVJPTiA9IFwibmV1cm9uXCIsXG4gIENQVSA9IFwiY3B1XCIsXG4gIFRQVSA9IFwidHB1XCIsXG4gIFhQVSA9IFwieHB1XCIsXG4gIEhQVSA9IFwiaHB1XCIsXG59XG5cbi8qKlxuICogTG9SQSBkYXRhIHR5cGUgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBMb3JhRHR5cGUge1xuICBBVVRPID0gXCJhdXRvXCIsXG4gIEZMT0FUMTYgPSBcImZsb2F0MTZcIixcbiAgQkZMT0FUMTYgPSBcImJmbG9hdDE2XCIsXG59XG5cbi8qKlxuICogRm9ybWF0IG9wdGlvbnMgZm9yIHJlbmRlcmluZyBtZXNzYWdlIGNvbnRlbnQgd2l0aGluIGEgY2hhdCB0ZW1wbGF0ZVxuICovXG5leHBvcnQgZW51bSBDaGF0VGVtcGxhdGVDb250ZW50Rm9ybWF0IHtcbiAgQVVUTyA9IFwiYXV0b1wiLFxuICBTVFJJTkcgPSBcInN0cmluZ1wiLFxuICBPUEVOQUkgPSBcIm9wZW5haVwiLFxufVxuXG4vKipcbiAqIFRvb2wgY2FsbCBwYXJzZXIgb3B0aW9uc1xuICovXG5leHBvcnQgZW51bSBUb29sQ2FsbFBhcnNlciB7XG4gIEdSQU5JVEVfMjBCX0ZDID0gXCJncmFuaXRlLTIwYi1mY1wiLFxuICBHUkFOSVRFID0gXCJncmFuaXRlXCIsXG4gIEhFUk1FUyA9IFwiaGVybWVzXCIsXG4gIElOVEVSTkxNID0gXCJpbnRlcm5sbVwiLFxuICBKQU1CQSA9IFwiamFtYmFcIixcbiAgTExBTUEzX0pTT04gPSBcImxsYW1hM19qc29uXCIsXG4gIE1JU1RSQUwgPSBcIm1pc3RyYWxcIixcbiAgUEhJNF9NSU5JX0pTT04gPSBcInBoaTRfbWluaV9qc29uXCIsXG4gIFBZVEhPTklDID0gXCJweXRob25pY1wiLFxufVxuXG4vKipcbiAqIFRhc2sgb3B0aW9ucyBmb3IgbW9kZWwgdXNhZ2VcbiAqL1xuZXhwb3J0IGVudW0gVmxsbVRhc2sge1xuICBBVVRPID0gXCJhdXRvXCIsXG4gIEdFTkVSQVRFID0gXCJnZW5lcmF0ZVwiLFxuICBFTUJFRERJTkcgPSBcImVtYmVkZGluZ1wiLFxuICBFTUJFRCA9IFwiZW1iZWRcIixcbiAgQ0xBU1NJRlkgPSBcImNsYXNzaWZ5XCIsXG4gIFNDT1JFID0gXCJzY29yZVwiLFxuICBSRVdBUkQgPSBcInJld2FyZFwiLFxuICBUUkFOU0NSSVBUSU9OID0gXCJ0cmFuc2NyaXB0aW9uXCIsXG59XG5cbi8qKlxuICogUHJlZW1wdGlvbiBtb2RlLlxuICovXG5leHBvcnQgZW51bSBQcmVlbXB0aW9uTW9kZSB7XG4gIFJFQ09NUFVURSA9IFwicmVjb21wdXRlXCIsXG4gIFNXQVAgPSBcInN3YXBcIixcbn1cblxuLyoqXG4gKiBTY2hlZHVsaW5nIHBvbGljeSBvcHRpb25zXG4gKi9cbmV4cG9ydCBlbnVtIFNjaGVkdWxpbmdQb2xpY3kge1xuICBGQ0ZTID0gXCJmY2ZzXCIsXG4gIFBSSU9SSVRZID0gXCJwcmlvcml0eVwiLFxufVxuXG4vKipcbiAqIFZsbG1OYW1lZEFyZ3VtZW50c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1OYW1lZEFyZ3VtZW50cyB7XG4gIC8qKlxuICAgKiBIb3N0IG5hbWUuXG4gICAqL1xuICByZWFkb25seSBob3N0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQb3J0IG51bWJlci5cbiAgICogQGRlZmF1bHQgODAwMFxuICAgKi9cbiAgcmVhZG9ubHkgcG9ydD86IG51bWJlcjtcblxuICAvKipcbiAgICogTG9nIGxldmVsIGZvciB1dmljb3JuLlxuICAgKiBAZGVmYXVsdCBVdmljb3JuTG9nTGV2ZWwuSU5GT1xuICAgKi9cbiAgcmVhZG9ubHkgdXZpY29ybkxvZ0xldmVsPzogVXZpY29ybkxvZ0xldmVsO1xuXG4gIC8qKlxuICAgKiBEaXNhYmxlIHV2aWNvcm4gYWNjZXNzIGxvZy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVVdmljb3JuQWNjZXNzTG9nPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWxsb3cgY3JlZGVudGlhbHMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBhbGxvd0NyZWRlbnRpYWxzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWxsb3dlZCBvcmlnaW5zLlxuICAgKiBAZGVmYXVsdCBbJyonXVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZE9yaWdpbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQWxsb3dlZCBtZXRob2RzLlxuICAgKiBAZGVmYXVsdCBbJyonXVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZE1ldGhvZHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQWxsb3dlZCBoZWFkZXJzLlxuICAgKiBAZGVmYXVsdCBbJyonXVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZEhlYWRlcnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogSWYgcHJvdmlkZWQsIHRoZSBzZXJ2ZXIgd2lsbCByZXF1aXJlIHRoaXMga2V5IHRvIGJlIHByZXNlbnRlZCBpbiB0aGUgaGVhZGVyLlxuICAgKi9cbiAgcmVhZG9ubHkgYXBpS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMb1JBIG1vZHVsZSBjb25maWd1cmF0aW9ucy5cbiAgICogQGV4YW1wbGUge1wibmFtZVwiOiBcIm5hbWVcIiwgXCJwYXRoXCI6IFwibG9yYV9wYXRoXCIsIFwiYmFzZV9tb2RlbF9uYW1lXCI6IFwiaWRcIn1cbiAgICovXG4gIHJlYWRvbmx5IGxvcmFNb2R1bGVzPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKipcbiAgICogUHJvbXB0IGFkYXB0ZXIgY29uZmlndXJhdGlvbnMgaW4gdGhlIGZvcm1hdCBuYW1lPXBhdGguIE11bHRpcGxlIGFkYXB0ZXJzIGNhbiBiZSBzcGVjaWZpZWQuXG4gICAqL1xuICByZWFkb25seSBwcm9tcHRBZGFwdGVycz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsZSBwYXRoIHRvIHRoZSBjaGF0IHRlbXBsYXRlLCBvciB0aGUgdGVtcGxhdGUgaW4gc2luZ2xlLWxpbmUgZm9ybSBmb3IgdGhlIHNwZWNpZmllZCBtb2RlbC5cbiAgICovXG4gIHJlYWRvbmx5IGNoYXRUZW1wbGF0ZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZvcm1hdCB0byByZW5kZXIgbWVzc2FnZSBjb250ZW50IHdpdGhpbiBhIGNoYXQgdGVtcGxhdGUuXG4gICAqIC0g4oCcc3RyaW5n4oCdIHdpbGwgcmVuZGVyIHRoZSBjb250ZW50IGFzIGEgc3RyaW5nLlxuICAgKiAgIC0gRXhhbXBsZTogYFwiSGVsbG8gV29ybGRcImBcbiAgICogLSDigJxvcGVuYWnigJ0gd2lsbCByZW5kZXIgdGhlIGNvbnRlbnQgYXMgYSBsaXN0IG9mIGRpY3Rpb25hcmllcywgc2ltaWxhciB0byBPcGVuQUkgc2NoZW1hLlxuICAgKiAgIC0gRXhhbXBsZTogYFt7XCJ0eXBlXCI6IFwidGV4dFwiLCBcInRleHRcIjogXCJIZWxsbyB3b3JsZCFcIn1dYFxuICAgKiBAZGVmYXVsdCBDaGF0VGVtcGxhdGVDb250ZW50Rm9ybWF0LkFVVE9cbiAgICovXG4gIHJlYWRvbmx5IGNoYXRUZW1wbGF0ZUNvbnRlbnRGb3JtYXQ/OiBDaGF0VGVtcGxhdGVDb250ZW50Rm9ybWF0O1xuXG4gIC8qKlxuICAgKiBUaGUgcm9sZSBuYW1lIHRvIHJldHVybiBpZiBgcmVxdWVzdC5hZGRfZ2VuZXJhdGlvbl9wcm9tcHQ9dHJ1ZWAuXG4gICAqIEBkZWZhdWx0IFwiYXNzaXN0YW50XCJcbiAgICovXG4gIHJlYWRvbmx5IHJlc3BvbnNlUm9sZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZpbGUgcGF0aCB0byB0aGUgU1NMIGtleSBmaWxlLlxuICAgKi9cbiAgcmVhZG9ubHkgc3NsS2V5ZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZpbGUgcGF0aCB0byB0aGUgU1NMIGNlcnQgZmlsZS5cbiAgICovXG4gIHJlYWRvbmx5IHNzbENlcnRmaWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQ0EgY2VydGlmaWNhdGVzIGZpbGUuXG4gICAqL1xuICByZWFkb25seSBzc2xDYUNlcnRzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZWZyZXNoIFNTTCBDb250ZXh0IHdoZW4gU1NMIGNlcnRpZmljYXRlIGZpbGVzIGNoYW5nZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVNzbFJlZnJlc2g/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGNsaWVudCBjZXJ0aWZpY2F0ZSBpcyByZXF1aXJlZCAoc2VlIHN0ZGxpYiBzc2wgbW9kdWxlJ3MpLlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICByZWFkb25seSBzc2xDZXJ0UmVxcz86IG51bWJlcjtcblxuICAvKipcbiAgICogRmFzdEFQSSByb290X3BhdGggd2hlbiBhcHAgaXMgYmVoaW5kIGEgcGF0aCBiYXNlZCByb3V0aW5nIHByb3h5LlxuICAgKi9cbiAgcmVhZG9ubHkgcm9vdFBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgQVNHSSBtaWRkbGV3YXJlIHRvIGFwcGx5IHRvIHRoZSBhcHAuXG4gICAqIFdlIGFjY2VwdCBtdWx0aXBsZSDigJNtaWRkbGV3YXJlIGFyZ3VtZW50cy4gVGhlIHZhbHVlIHNob3VsZCBiZSBhbiBpbXBvcnQgcGF0aC5cbiAgICogSWYgYSBmdW5jdGlvbiBpcyBwcm92aWRlZCwgdkxMTSB3aWxsIGFkZCBpdCB0byB0aGUgc2VydmVyIHVzaW5nIGBAYXBwLm1pZGRsZXdhcmUoJ2h0dHAnKWAuXG4gICAqIElmIGEgY2xhc3MgaXMgcHJvdmlkZWQsIHZMTE0gd2lsbCBhZGQgaXQgdG8gdGhlIHNlcnZlciB1c2luZyBgYXBwLmFkZF9taWRkbGV3YXJlKClgLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgbWlkZGxld2FyZT86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXaGVuIGAtLW1heC1sb2dwcm9ic2AgaXMgc3BlY2lmaWVkLFxuICAgKiByZXByZXNlbnRzIHNpbmdsZSB0b2tlbnMgYXMgc3RyaW5ncyBvZiB0aGUgZm9ybSAndG9rZW5faWQ6e3Rva2VuX2lkfScgc28gdGhhdCB0b2tlbnMgdGhhdCBhcmUgbm90IEpTT04tZW5jb2RhYmxlIGNhbiBiZSBpZGVudGlmaWVkLi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJldHVyblRva2Vuc0FzVG9rZW5JZHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiBzcGVjaWZpZWQsIHdpbGwgcnVuIHRoZSBPcGVuQUkgZnJvbnRlbmQgc2VydmVyIGluIHRoZSBzYW1lIHByb2Nlc3MgYXMgdGhlIG1vZGVsIHNlcnZpbmcgZW5naW5lLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUZyb250ZW5kTXVsdGlwcm9jZXNzaW5nPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgc3BlY2lmaWVkLCBBUEkgc2VydmVyIHdpbGwgYWRkIFgtUmVxdWVzdC1JZCBoZWFkZXIgdG8gcmVzcG9uc2VzLlxuICAgKlxuICAgKiBDYXV0aW9uOiB0aGlzIGh1cnRzIHBlcmZvcm1hbmNlIGF0IGhpZ2ggUVBTLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlUmVxdWVzdElkSGVhZGVycz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBhdXRvIHRvb2wgY2hvaWNlIGZvciBzdXBwb3J0ZWQgbW9kZWxzLlxuICAgKiBVc2UgYC0tdG9vbC1jYWxsLXBhcnNlcmAgdG8gc3BlY2lmeSB3aGljaCBwYXJzZXIgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlQXV0b1Rvb2xDaG9pY2U/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTZWxlY3QgdGhlIHRvb2wgY2FsbCBwYXJzZXIgZGVwZW5kaW5nIG9uIHRoZSBtb2RlbCB0aGF0IHlvdeKAmXJlIHVzaW5nLlxuICAgKiBUaGlzIGlzIHVzZWQgdG8gcGFyc2UgdGhlIG1vZGVsLWdlbmVyYXRlZCB0b29sIGNhbGwgaW50byBPcGVuQUkgQVBJIGZvcm1hdC5cbiAgICpcbiAgICogUmVxdWlyZWQgZm9yIGAtLWVuYWJsZS1hdXRvLXRvb2wtY2hvaWNlYC5cbiAgICovXG4gIHJlYWRvbmx5IHRvb2xDYWxsUGFyc2VyPzogVG9vbENhbGxQYXJzZXI7XG5cbiAgLyoqXG4gICAqIFNwZWNpZnkgdGhlIHRvb2wgcGFyc2VyIHBsdWdpbi5cbiAgICogQGRlZmF1bHQgXCJcIlxuICAgKi9cbiAgcmVhZG9ubHkgdG9vbFBhcnNlclBsdWdpbj86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvciBwYXRoIG9mIHRoZSBodWdnaW5nZmFjZSBtb2RlbCB0byB1c2UuXG4gICAqIEBkZWZhdWx0IFwiZmFjZWJvb2svb3B0LTEyNW1cIlxuICAgKi9cbiAgcmVhZG9ubHkgbW9kZWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0YXNrIHRvIHVzZSB0aGUgbW9kZWwgZm9yLlxuICAgKiBFYWNoIHZMTE0gaW5zdGFuY2Ugb25seSBzdXBwb3J0cyBvbmUgdGFzaywgZXZlbiBpZiB0aGUgc2FtZSBtb2RlbCBjYW4gYmUgdXNlZCBmb3IgbXVsdGlwbGUgdGFza3MuXG4gICAqIFdoZW4gdGhlIG1vZGVsIG9ubHkgc3VwcG9ydHMgb25lIHRhc2ssIFwiYXV0b1wiIGNhbiBiZSB1c2VkIHRvIHNlbGVjdCBpdDsgb3RoZXJ3aXNlLFxuICAgKiB5b3UgbXVzdCBzcGVjaWZ5IGV4cGxpY2l0bHkgd2hpY2ggdGFzayB0byB1c2UuXG4gICAqIEBkZWZhdWx0IFZsbG1UYXNrLkFVVE9cbiAgICovXG4gIHJlYWRvbmx5IHRhc2s/OiBWbGxtVGFzaztcblxuICAvKipcbiAgICogTmFtZSBvciBwYXRoIG9mIHRoZSBodWdnaW5nZmFjZSB0b2tlbml6ZXIgdG8gdXNlLlxuICAgKiBJZiB1bnNwZWNpZmllZCwgbW9kZWwgbmFtZSBvciBwYXRoIHdpbGwgYmUgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHRva2VuaXplcj86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvciBwYXRoIG9mIHRoZSBodWdnaW5nZmFjZSBjb25maWcgdG8gdXNlLlxuICAgKiBJZiB1bnNwZWNpZmllZCwgbW9kZWwgbmFtZSBvciBwYXRoIHdpbGwgYmUgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IGhmQ29uZmlnUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogU2tpcCBpbml0aWFsaXphdGlvbiBvZiB0b2tlbml6ZXIgYW5kIGRldG9rZW5pemVyLlxuICAgKiBFeHBlY3RzIHZhbGlkIHByb21wdF90b2tlbl9pZHMgYW5kIE5vbmUgZm9yIHByb21wdCBmcm9tIHRoZSBpbnB1dC5cbiAgICogVGhlIGdlbmVyYXRlZCBvdXRwdXQgd2lsbCBjb250YWluIHRva2VuIGlkcy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNraXBUb2tlbml6ZXJJbml0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHNwZWNpZmljIG1vZGVsIHZlcnNpb24gdG8gdXNlLiBJdCBjYW4gYmUgYSBicmFuY2ggbmFtZSwgYSB0YWcgbmFtZSwgb3IgYSBjb21taXQgaWQuXG4gICAqIElmIHVuc3BlY2lmaWVkLCB3aWxsIHVzZSB0aGUgZGVmYXVsdCB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgcmV2aXNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzcGVjaWZpYyByZXZpc2lvbiB0byB1c2UgZm9yIHRoZSBtb2RlbCBjb2RlIG9uIEh1Z2dpbmcgRmFjZSBIdWIuXG4gICAqIEl0IGNhbiBiZSBhIGJyYW5jaCBuYW1lLCBhIHRhZyBuYW1lLCBvciBhIGNvbW1pdCBpZC4gSWYgdW5zcGVjaWZpZWQsIHdpbGwgdXNlIHRoZSBkZWZhdWx0IHZlcnNpb24uXG4gICAqL1xuICByZWFkb25seSBjb2RlUmV2aXNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJldmlzaW9uIG9mIHRoZSBodWdnaW5nZmFjZSB0b2tlbml6ZXIgdG8gdXNlLlxuICAgKiBJdCBjYW4gYmUgYSBicmFuY2ggbmFtZSwgYSB0YWcgbmFtZSwgb3IgYSBjb21taXQgaWQuIElmIHVuc3BlY2lmaWVkLCB3aWxsIHVzZSB0aGUgZGVmYXVsdCB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgdG9rZW5pemVyUmV2aXNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0b2tlbml6ZXIgbW9kZS5cbiAgICogQGRlZmF1bHQgVG9rZW5pemVyTW9kZS5BVVRPXG4gICAqL1xuICByZWFkb25seSB0b2tlbml6ZXJNb2RlPzogVG9rZW5pemVyTW9kZTtcblxuICAvKipcbiAgICogVHJ1c3QgcmVtb3RlIGNvZGUgZnJvbSBodWdnaW5nZmFjZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHRydXN0UmVtb3RlQ29kZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93aW5nIEFQSSByZXF1ZXN0cyB0byByZWFkIGxvY2FsIGltYWdlcyBvciB2aWRlb3MgZnJvbSBkaXJlY3RvcmllcyBzcGVjaWZpZWQgYnkgdGhlIHNlcnZlciBmaWxlIHN5c3RlbS5cbiAgICogVGhpcyBpcyBhIHNlY3VyaXR5IHJpc2suIFNob3VsZCBvbmx5IGJlIGVuYWJsZWQgaW4gdHJ1c3RlZCBlbnZpcm9ubWVudHMuXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkTG9jYWxNZWRpYVBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb3JtYXQgb2YgdGhlIG1vZGVsIGNvbmZpZyB0byBsb2FkLlxuICAgKiBAZGVmYXVsdCBDb25maWdGb3JtYXQuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgY29uZmlnRm9ybWF0PzogQ29uZmlnRm9ybWF0O1xuXG4gIC8qKlxuICAgKiBEYXRhIHR5cGUgZm9yIG1vZGVsIHdlaWdodHMgYW5kIGFjdGl2YXRpb25zLlxuICAgKiBAZGVmYXVsdCBEYXRhVHlwZS5BVVRPXG4gICAqL1xuICByZWFkb25seSBkdHlwZT86IERhdGFUeXBlO1xuXG4gIC8qKlxuICAgKiBNb2RlbCBjb250ZXh0IGxlbmd0aC5cbiAgICovXG4gIHJlYWRvbmx5IG1heE1vZGVsTGVuPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCByZWdleCBwYXR0ZXJuIHNwZWNpZnlpbmcgdmFsaWQgbG9naXRzIHByb2Nlc3NvciBxdWFsaWZpZWQgbmFtZXMgdGhhdCBjYW4gYmUgcGFzc2VkXG4gICAqIHdpdGggdGhlIGxvZ2l0c19wcm9jZXNzb3JzIGV4dHJhIGNvbXBsZXRpb24gYXJndW1lbnQuIERlZmF1bHRzIHRvIE5vbmUsIHdoaWNoIGFsbG93cyBubyBwcm9jZXNzb3JzLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9naXRzUHJvY2Vzc29yUGF0dGVybj86IHN0cmluZztcblxuICAvKipcbiAgICogV2hpY2ggaW1wbGVtZW50YXRpb24gb2YgdGhlIG1vZGVsIHRvIHVzZS5cbiAgICogQGRlZmF1bHQgTW9kZWxJbXBsLkFVVE9cbiAgICovXG4gIHJlYWRvbmx5IG1vZGVsSW1wbD86IE1vZGVsSW1wbDtcblxuICAvKipcbiAgICogRGlzYWJsZXMgc2xpZGluZyB3aW5kb3csIGNhcHBpbmcgdG8gc2xpZGluZyB3aW5kb3cgc2l6ZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVTbGlkaW5nV2luZG93PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQmxvY2sgbWFuYWdlciB2MSBoYXMgYmVlbiByZW1vdmVkIGFuZCBTZWxmQXR0bkJsb2NrU3BhY2VNYW5hZ2VyIChpLmUuIGJsb2NrIG1hbmFnZXIgdjIpIGlzIG5vdyB0aGUgZGVmYXVsdC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAZGVwcmVjYXRlZCBTZXR0aW5nIHRoaXMgZmxhZyB0byBUcnVlIG9yIEZhbHNlIGhhcyBubyBlZmZlY3Qgb24gdkxMTSBiZWhhdmlvci5cbiAgICovXG4gIHJlYWRvbmx5IHVzZVYyQmxvY2tNYW5hZ2VyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUmFuZG9tIHNlZWQgZm9yIG9wZXJhdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBzZWVkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXggbnVtYmVyIG9mIGxvZyBwcm9icyB0byByZXR1cm4gbG9ncHJvYnMgaXMgc3BlY2lmaWVkIGluIFNhbXBsaW5nUGFyYW1zLlxuICAgKiBAZGVmYXVsdCAyMFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TG9ncHJvYnM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERpc2FibGUgbG9nZ2luZyBzdGF0aXN0aWNzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGlzYWJsZUxvZ1N0YXRzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTWV0aG9kIHVzZWQgdG8gcXVhbnRpemUgdGhlIHdlaWdodHMuXG4gICAqIElmIE5vbmUsIHdlIGZpcnN0IGNoZWNrIHRoZSBxdWFudGl6YXRpb25fY29uZmlnIGF0dHJpYnV0ZSBpbiB0aGUgbW9kZWwgY29uZmlnIGZpbGUuXG4gICAqIElmIHRoYXQgaXMgTm9uZSwgd2UgYXNzdW1lIHRoZSBtb2RlbCB3ZWlnaHRzIGFyZSBub3QgcXVhbnRpemVkIGFuZCB1c2UgZHR5cGUgdG8gZGV0ZXJtaW5lIHRoZSBkYXRhIHR5cGUgb2YgdGhlIHdlaWdodHMuXG4gICAqL1xuICByZWFkb25seSBxdWFudGl6YXRpb24/OiBRdWFudGl6YXRpb247XG5cbiAgLyoqXG4gICAqIFJvUEUgc2NhbGluZyBjb25maWd1cmF0aW9uIGluIEpTT04gZm9ybWF0LlxuICAgKiBAZXhhbXBsZSB7XCJyb3BlX3R5cGVcIjpcImR5bmFtaWNcIixcImZhY3RvclwiOjIuMH1cbiAgICovXG4gIHJlYWRvbmx5IHJvcGVTY2FsaW5nPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKipcbiAgICogUm9QRSB0aGV0YS4gVXNlIHdpdGggcm9wZV9zY2FsaW5nLlxuICAgKiBJbiBzb21lIGNhc2VzLCBjaGFuZ2luZyB0aGUgUm9QRSB0aGV0YSBpbXByb3ZlcyB0aGUgcGVyZm9ybWFuY2Ugb2YgdGhlIHNjYWxlZCBtb2RlbC5cbiAgICovXG4gIHJlYWRvbmx5IHJvcGVUaGV0YT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHRva2VuIHRvIHVzZSBhcyBIVFRQIGJlYXJlciBhdXRob3JpemF0aW9uIGZvciByZW1vdGUgZmlsZXMuXG4gICAqIElmIHByb3ZpZGVkLCB0aGUgU2VjcmV0IHdpbGwgYmUgcGFzc2VkIGFzIEhGX1RPS0VOIHNlY3JldCB0byBjb21waWxlIGVudmlyb25tZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgaGZUb2tlbj86IFNlY3JldDtcblxuICAvKipcbiAgICogRXh0cmEgYXJndW1lbnRzIGZvciB0aGUgSHVnZ2luZ0ZhY2UgY29uZmlnLlxuICAgKiBUaGlzIHNob3VsZCBiZSBhIG9iamVjdCB0aGF0IHdpbGwgYmUgcGFyc2VkIGludG8gYSBkaWN0aW9uYXJ5LlxuICAgKi9cbiAgcmVhZG9ubHkgaGZPdmVycmlkZXM/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBBbHdheXMgdXNlIGVhZ2VyLW1vZGUgUHlUb3JjaC5cbiAgICogSWYgRmFsc2UsIHdpbGwgdXNlIGVhZ2VyIG1vZGUgYW5kIENVREEgZ3JhcGggaW4gaHlicmlkIGZvciBtYXhpbWFsIHBlcmZvcm1hbmNlIGFuZCBmbGV4aWJpbGl0eS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuZm9yY2VFYWdlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE1heGltdW0gc2VxdWVuY2UgbGVuZ3RoIGNvdmVyZWQgYnkgQ1VEQSBncmFwaHMuXG4gICAqIFdoZW4gYSBzZXF1ZW5jZSBoYXMgY29udGV4dCBsZW5ndGggbGFyZ2VyIHRoYW4gdGhpcywgd2UgZmFsbCBiYWNrIHRvIGVhZ2VyIG1vZGUuXG4gICAqIEFkZGl0aW9uYWxseSBmb3IgZW5jb2Rlci1kZWNvZGVyIG1vZGVscywgaWYgdGhlIHNlcXVlbmNlIGxlbmd0aCBvZiB0aGUgZW5jb2RlciBpbnB1dCBpcyBsYXJnZXIgdGhhbiB0aGlzLFxuICAgKiB3ZSBmYWxsIGJhY2sgdG8gdGhlIGVhZ2VyIG1vZGUuXG4gICAqIEBkZWZhdWx0IDgxOTJcbiAgICovXG4gIHJlYWRvbmx5IG1heFNlcUxlblRvQ2FwdHVyZT86IG51bWJlcjtcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIGZvciB0aGUgbXVsdGltb2RhbCBpbnB1dCBtYXBwaW5nL3Byb2Nlc3NpbmcsIGUuZy4sIGltYWdlIHByb2Nlc3Nvci5cbiAgICogQGV4YW1wbGUge1wibnVtX2Nyb3BzXCI6IDR9XG4gICAqL1xuICByZWFkb25seSBtbVByb2Nlc3Nvckt3YXJncz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIHRoZW4gZGlzYWJsZXMgY2FjaGluZyBvZiB0aGUgbXVsdGktbW9kYWwgcHJlcHJvY2Vzc29yL21hcHBlci4gKG5vdCByZWNvbW1lbmRlZClcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVNbVByZXByb2Nlc3NvckNhY2hlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHBhdHRlcm4ocykgdG8gaWdub3JlIHdoZW4gbG9hZGluZyB0aGUgbW9kZWwuRGVmYXVsdCB0byBvcmlnaW5hbC8qKlxcLyogdG8gYXZvaWRcbiAgICogcmVwZWF0ZWQgbG9hZGluZyBvZiBsbGFtYeKAmXMgY2hlY2twb2ludHMuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICByZWFkb25seSBpZ25vcmVQYXR0ZXJucz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9kZWwgbmFtZShzKSB1c2VkIGluIHRoZSBBUEkuXG4gICAqIElmIG11bHRpcGxlIG5hbWVzIGFyZSBwcm92aWRlZCwgdGhlIHNlcnZlciB3aWxsIHJlc3BvbmQgdG8gYW55IG9mIHRoZSBwcm92aWRlZCBuYW1lcy5cbiAgICogVGhlIG1vZGVsIG5hbWUgaW4gdGhlIG1vZGVsIGZpZWxkIG9mIGEgcmVzcG9uc2Ugd2lsbCBiZSB0aGUgZmlyc3QgbmFtZSBpbiB0aGlzIGxpc3QuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHRoZSBtb2RlbCBuYW1lIHdpbGwgYmUgdGhlIHNhbWUgYXMgdGhlIGAtLW1vZGVsYCBhcmd1bWVudC5cbiAgICogTm90ZWQgdGhhdCB0aGlzIG5hbWUocykgd2lsbCBhbHNvIGJlIHVzZWQgaW4gbW9kZWxfbmFtZSB0YWcgY29udGVudCBvZiBwcm9tZXRoZXVzIG1ldHJpY3MsXG4gICAqIGlmIG11bHRpcGxlIG5hbWVzIHByb3ZpZGVkLCBtZXRyaWNzIHRhZyB3aWxsIHRha2UgdGhlIGZpcnN0IG9uZS5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZlZE1vZGVsTmFtZT86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9yIHBhdGggb2YgdGhlIFFMb1JBIGFkYXB0ZXIuXG4gICAqL1xuICByZWFkb25seSBxbG9yYUFkYXB0ZXJOYW1lT3JQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgZGVwcmVjYXRlZCBQcm9tZXRoZXVzIG1ldHJpY3MgdGhhdCBoYXZlIGJlZW4gaGlkZGVuIHNpbmNlIHRoZSBzcGVjaWZpZWQgdmVyc2lvbi5cbiAgICogRm9yIGV4YW1wbGUsIGlmIGEgcHJldmlvdXNseSBkZXByZWNhdGVkIG1ldHJpYyBoYXMgYmVlbiBoaWRkZW4gc2luY2UgdGhlIHYwLjcuMCByZWxlYXNlLFxuICAgKiB5b3UgdXNlIOKAk3Nob3ctaGlkZGVuLW1ldHJpY3MtZm9yLXZlcnNpb249MC43IGFzIGEgdGVtcG9yYXJ5IGVzY2FwZSBoYXRjaCB3aGlsZSB5b3UgbWlncmF0ZSB0byBuZXcgbWV0cmljcy5cbiAgICogVGhlIG1ldHJpYyBpcyBsaWtlbHkgdG8gYmUgcmVtb3ZlZCBjb21wbGV0ZWx5IGluIGFuIHVwY29taW5nIHJlbGVhc2UuXG4gICAqL1xuICByZWFkb25seSBzaG93SGlkZGVuTWV0cmljc0ZvclZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhcmdldCBVUkwgdG8gd2hpY2ggT3BlblRlbGVtZXRyeSB0cmFjZXMgd2lsbCBiZSBzZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgb3RscFRyYWNlc0VuZHBvaW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBWYWxpZCBjaG9pY2VzIGFyZSBtb2RlbCx3b3JrZXIsYWxsLlxuICAgKiBJdCBtYWtlcyBzZW5zZSB0byBzZXQgdGhpcyBvbmx5IGlmIC0tb3RscC10cmFjZXMtZW5kcG9pbnQgaXMgc2V0LlxuICAgKiBJZiBzZXQsIGl0IHdpbGwgY29sbGVjdCBkZXRhaWxlZCB0cmFjZXMgZm9yIHRoZSBzcGVjaWZpZWQgbW9kdWxlcy5cbiAgICogVGhpcyBpbnZvbHZlcyB1c2Ugb2YgcG9zc2libHkgY29zdGx5IGFuZCBvciBibG9ja2luZyBvcGVyYXRpb25zIGFuZCBoZW5jZSBtaWdodCBoYXZlIGEgcGVyZm9ybWFuY2UgaW1wYWN0LlxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdERldGFpbGVkVHJhY2VzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEaXNhYmxlIGFzeW5jIG91dHB1dCBwcm9jZXNzaW5nLiBUaGlzIG1heSByZXN1bHQgaW4gbG93ZXIgcGVyZm9ybWFuY2UuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlQXN5bmNPdXRwdXRQcm9jPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHNjaGVkdWxlciBjbGFzcyB0byB1c2UuXG4gICAqIEBkZWZhdWx0IFwidmxsbS5jb3JlLnNjaGVkdWxlci5TY2hlZHVsZXJcIlxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGVyQ2xzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZSBvciBzZXQgbmV1cm9uIGRldmljZSBjb25maWd1cmF0aW9uLlxuICAgKiBAZXhhbXBsZSB7XCJjYXN0X2xvZ2l0c19kdHlwZVwiOiBcImJsb2F0MTZcIn1cbiAgICovXG4gIHJlYWRvbmx5IG92ZXJyaWRlTmV1cm9uQ29uZmlnPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcblxuICAvKipcbiAgICogT3ZlcnJpZGUgb3Igc2V0IHRoZSBwb29saW5nIG1ldGhvZCBmb3IgcG9vbGluZyBtb2RlbHMuXG4gICAqIEBleGFtcGxlIHtcInBvb2xpbmdfdHlwZVwiOiBcIm1lYW5cIiwgXCJub3JtYWxpemVcIjogZmFsc2V9XG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZVBvb2xlckNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIHRvcmNoLmNvbXBpbGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIG1vZGVsLlxuICAgKiBXaGVuIGl0IGlzIGEgbnVtYmVyICgwLCAxLCAyLCAzKSwgaXQgd2lsbCBiZSBpbnRlcnByZXRlZCBhcyB0aGUgb3B0aW1pemF0aW9uIGxldmVsLlxuICAgKlxuICAgKiBOT1RFOiBsZXZlbCAwIGlzIHRoZSBkZWZhdWx0IGxldmVsIHdpdGhvdXQgYW55IG9wdGltaXphdGlvbi5cbiAgICogbGV2ZWwgMSBhbmQgMiBhcmUgZm9yIGludGVybmFsIHRlc3Rpbmcgb25seS4gbGV2ZWwgMyBpcyB0aGUgcmVjb21tZW5kZWQgbGV2ZWwgZm9yIHByb2R1Y3Rpb24uXG4gICAqIFRvIHNwZWNpZnkgdGhlIGZ1bGwgY29tcGlsYXRpb24gY29uZmlnLCB1c2UgYSBKU09OIHN0cmluZyxcbiAgICogZS5nLiBge1wibGV2ZWxcIjogMywgXCJjdWRhZ3JhcGhfY2FwdHVyZV9zaXplc1wiOiBbMSwgMiwgNCwgOF19YCBGb2xsb3dpbmcgdGhlIGNvbnZlbnRpb24gb2YgdHJhZGl0aW9uYWwgY29tcGlsZXJzLFxuICAgKiB1c2luZyAtTyB3aXRob3V0IHNwYWNlIGlzIGFsc28gc3VwcG9ydGVkLiAtTzMgaXMgZXF1aXZhbGVudCB0byAtTyAzLlxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGlsYXRpb25Db25maWc/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9O1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9ucyBmb3IgZGlzdHJpYnV0ZWQgS1YgY2FjaGUgdHJhbnNmZXIgaW4gb2JqZWN0LlxuICAgKi9cbiAgcmVhZG9ubHkga3ZUcmFuc2ZlckNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIFRoZSB3b3JrZXIgY2xhc3MgdG8gdXNlIGZvciBkaXN0cmlidXRlZCBleGVjdXRpb24uXG4gICAqIEBkZWZhdWx0IFwiYXV0b1wiXG4gICAqL1xuICByZWFkb25seSB3b3JrZXJDbHM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB3b3JrZXIgZXh0ZW5zaW9uIGNsYXNzLlxuICAgKiBAZGVmYXVsdCBcIlwiXG4gICAqL1xuICByZWFkb25seSB3b3JrZXJFeHRlbnNpb25DbHM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb2xkZXIgcGF0aCB0byB0aGUgZ2VuZXJhdGlvbiBjb25maWcuIERlZmF1bHRzIHRvIOKAmGF1dG/igJksXG4gICAqIHRoZSBnZW5lcmF0aW9uIGNvbmZpZyB3aWxsIGJlIGxvYWRlZCBmcm9tIG1vZGVsIHBhdGguIElmIHNldCB0byDigJh2bGxt4oCZLFxuICAgKiBubyBnZW5lcmF0aW9uIGNvbmZpZyBpcyBsb2FkZWQsIHZMTE0gZGVmYXVsdHMgd2lsbCBiZSB1c2VkLlxuICAgKiBJZiBzZXQgdG8gYSBmb2xkZXIgcGF0aCwgdGhlIGdlbmVyYXRpb24gY29uZmlnIHdpbGwgYmUgbG9hZGVkIGZyb20gdGhlIHNwZWNpZmllZCBmb2xkZXIgcGF0aC5cbiAgICogSWYgbWF4X25ld190b2tlbnMgaXMgc3BlY2lmaWVkIGluIGdlbmVyYXRpb24gY29uZmlnLFxuICAgKiB0aGVuIGl0IHNldHMgYSBzZXJ2ZXItd2lkZSBsaW1pdCBvbiB0aGUgbnVtYmVyIG9mIG91dHB1dCB0b2tlbnMgZm9yIGFsbCByZXF1ZXN0cy5cbiAgICogQGRlZmF1bHQgXCJhdXRvXCJcbiAgICovXG4gIHJlYWRvbmx5IGdlbmVyYXRpb25Db25maWc/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBvciBzZXRzIGdlbmVyYXRpb24gY29uZmlnLlxuICAgKiBJZiB1c2VkIHdpdGgg4oCTZ2VuZXJhdGlvbi1jb25maWc9YXV0bywgdGhlIG92ZXJyaWRlIHBhcmFtZXRlcnMgd2lsbCBiZSBtZXJnZWQgd2l0aCB0aGUgZGVmYXVsdCBjb25maWcgZnJvbSB0aGUgbW9kZWwuXG4gICAqIElmIGdlbmVyYXRpb24tY29uZmlnIGlzIE5vbmUsIG9ubHkgdGhlIG92ZXJyaWRlIHBhcmFtZXRlcnMgYXJlIHVzZWQuXG4gICAqIEBleGFtcGxlIHtcInRlbXBlcmF0dXJlXCI6IDAuNX1cbiAgICovXG4gIHJlYWRvbmx5IG92ZXJyaWRlR2VuZXJhdGlvbkNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBzbGVlcCBtb2RlIGZvciB0aGUgZW5naW5lLiAob25seSBjdWRhIHBsYXRmb3JtIGlzIHN1cHBvcnRlZClcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVNsZWVwTW9kZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgY29uZmlnIGZvciBzcGVjaWZpZWQgcGxhdGZvcm0uXG4gICAqIERpZmZlcmVudCBwbGF0Zm9ybXMgbWF5IHN1cHBvcnQgZGlmZmVyZW50IGNvbmZpZ3MuXG4gICAqIE1ha2Ugc3VyZSB0aGUgY29uZmlncyBhcmUgdmFsaWQgZm9yIHRoZSBwbGF0Zm9ybSB5b3UgYXJlIHVzaW5nLlxuICAgKiBUaGUgaW5wdXQgZm9ybWF0IGlzIGxpa2Ug4oCYe+KAnGNvbmZpZ19rZXnigJ064oCdY29uZmlnX3ZhbHVl4oCdfeKAmVxuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbENvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIEVuYWJsZSByZWFzb25pbmdfY29udGVudCBmb3IgdGhlIG1vZGVsLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlUmVhc29uaW5nPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRGlzYWJsZSBjYXNjYWRlIGF0dGVudGlvbiBmb3IgVjEuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlQ2FzY2FkZUF0dG4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEaXNhYmxlIGxvZ2dpbmcgcmVxdWVzdHMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlTG9nUmVxdWVzdHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNYXggbnVtYmVyIG9mIHByb21wdCBjaGFyYWN0ZXJzIG9yIHByb21wdCBJRCBudW1iZXJzIGluIGxvZy5cbiAgICovXG4gIHJlYWRvbmx5IG1heExvZ0xlbj86IG51bWJlcjtcblxuICAvKipcbiAgICogRGlzYWJsZSBGYXN0QVBJJ3MgT3BlbkFQSSBzY2hlbWEsIFN3YWdnZXIgVUksIGFuZCBSZURvYyBlbmRwb2ludC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVGYXN0QXBpRG9jcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBwcm9tcHRfdG9rZW5zX2RldGFpbHMgaW4gdXNhZ2UuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBlbmFibGVQcm9tcHRUb2tlbnNEZXRhaWxzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRW5hYmxlIHRyYWNraW5nIHNlcnZlcl9sb2FkX21ldHJpY3MgaW4gdGhlIGFwcCBzdGF0ZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVNlcnZlckxvYWRUcmFja2luZz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgbG9hZGluZyB0aGUgbW9kZWwgd2VpZ2h0cy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtTG9hZENvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgZm9ybWF0IG9mIHRoZSBtb2RlbCB3ZWlnaHRzIHRvIGxvYWQ6XG4gICAqIC0g4oCcYXV0b+KAnSB3aWxsIHRyeSB0byBsb2FkIHRoZSB3ZWlnaHRzIGluIHRoZSBzYWZldGVuc29ycyBmb3JtYXQgYW5kIGZhbGwgYmFjayB0byB0aGUgcHl0b3JjaCBiaW4gZm9ybWF0IGlmIHNhZmV0ZW5zb3JzIGZvcm1hdCBpcyBub3QgYXZhaWxhYmxlLlxuICAgKiAtIOKAnHB04oCdIHdpbGwgbG9hZCB0aGUgd2VpZ2h0cyBpbiB0aGUgcHl0b3JjaCBiaW4gZm9ybWF0LlxuICAgKiAtIOKAnHNhZmV0ZW5zb3Jz4oCdIHdpbGwgbG9hZCB0aGUgd2VpZ2h0cyBpbiB0aGUgc2FmZXRlbnNvcnMgZm9ybWF0LlxuICAgKiAtIOKAnG5wY2FjaGXigJ0gd2lsbCBsb2FkIHRoZSB3ZWlnaHRzIGluIHB5dG9yY2ggZm9ybWF0IGFuZCBzdG9yZSBhIG51bXB5IGNhY2hlIHRvIHNwZWVkIHVwIHRoZSBsb2FkaW5nLlxuICAgKiAtIOKAnGR1bW154oCdIHdpbGwgaW5pdGlhbGl6ZSB0aGUgd2VpZ2h0cyB3aXRoIHJhbmRvbSB2YWx1ZXMsIHdoaWNoIGlzIG1haW5seSBmb3IgcHJvZmlsaW5nLlxuICAgKiAtIOKAnHRlbnNvcml6ZXLigJ0gd2lsbCB1c2UgQ29yZVdlYXZl4oCZcyB0ZW5zb3JpemVyIGxpYnJhcnkgZm9yIGZhc3Qgd2VpZ2h0IGxvYWRpbmcuIFNlZSB0aGUgVGVuc29yaXplIHZMTE0gTW9kZWwgc2NyaXB0IGluIHRoZSBFeGFtcGxlcyBzZWN0aW9uIGZvciBtb3JlIGluZm9ybWF0aW9uLlxuICAgKiAtIOKAnHJ1bmFpX3N0cmVhbWVy4oCdIHdpbGwgbG9hZCB0aGUgU2FmZXRlbnNvcnMgd2VpZ2h0cyB1c2luZyBSdW46YWkgTW9kZWwgU3RyZWFtZXIuXG4gICAqIC0g4oCcYml0c2FuZGJ5dGVz4oCdIHdpbGwgbG9hZCB0aGUgd2VpZ2h0cyB1c2luZyBiaXRzYW5kYnl0ZXMgcXVhbnRpemF0aW9uLlxuICAgKiAtIOKAnHNoYXJkZWRfc3RhdGXigJ0gd2lsbCBsb2FkIHdlaWdodHMgZnJvbSBwcmUtc2hhcmRlZCBjaGVja3BvaW50IGZpbGVzLCBzdXBwb3J0aW5nIGVmZmljaWVudCBsb2FkaW5nIG9mIHRlbnNvci1wYXJhbGxlbCBtb2RlbHMuXG4gICAqIC0g4oCcZ2d1ZuKAnSB3aWxsIGxvYWQgd2VpZ2h0cyBmcm9tIEdHVUYgZm9ybWF0IGZpbGVzIChkZXRhaWxzIHNwZWNpZmllZCBpbiBnZ21sLW9yZy9nZ21sKS5cbiAgICogLSDigJxtaXN0cmFs4oCdIHdpbGwgbG9hZCB3ZWlnaHRzIGZyb20gY29uc29saWRhdGVkIHNhZmV0ZW5zb3JzIGZpbGVzIHVzZWQgYnkgTWlzdHJhbCBtb2RlbHMuXG4gICAqIEBkZWZhdWx0IExvYWRGb3JtYXQuQVVUT1xuICAgKi9cbiAgcmVhZG9ubHkgbG9hZEZvcm1hdD86IExvYWRGb3JtYXQ7XG5cbiAgLyoqXG4gICAqIERpcmVjdG9yeSB0byBkb3dubG9hZCBhbmQgbG9hZCB0aGUgd2VpZ2h0cywgZGVmYXVsdCB0byB0aGUgZGVmYXVsdCBjYWNoZSBkaXJlY3Rvcnkgb2YgSHVnZ2luZyBGYWNlLlxuICAgKi9cbiAgcmVhZG9ubHkgZG93bmxvYWREaXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEV4dHJhIGNvbmZpZyBmb3IgbW9kZWwgbG9hZGVyLiBUaGlzIHdpbGwgYmUgcGFzc2VkIHRvIHRoZSBtb2RlbCBsb2FkZXIgY29ycmVzcG9uZGluZyB0byB0aGUgY2hvc2VuIGxvYWRfZm9ybWF0LlxuICAgKiBUaGlzIHNob3VsZCBiZSBhIG9iamVjdCB0aGF0IHdpbGwgYmUgcGFyc2VkIGludG8gYSBkaWN0aW9uYXJ5LlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kZWxMb2FkZXJFeHRyYUNvbmZpZz86IHsgW2tleTogc3RyaW5nXTogYW55IH07XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZW5hYmxlIHRxZG0gZm9yIHNob3dpbmcgcHJvZ3Jlc3MgYmFyIHdoZW4gbG9hZGluZyBtb2RlbCB3ZWlnaHRzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSB1c2VUcWRtT25Mb2FkPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBEYXRhY2xhc3Mgd2hpY2ggY29udGFpbnMgdGhlIGRlY29kaW5nIHN0cmF0ZWd5IG9mIHRoZSBlbmdpbmUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbURlY29kaW5nQ29uZmlnIHtcbiAgLyoqXG4gICAqIFdoaWNoIGVuZ2luZSB3aWxsIGJlIHVzZWQgZm9yIGd1aWRlZCBkZWNvZGluZyAoSlNPTiBzY2hlbWEgLyByZWdleCBldGMpIGJ5IGRlZmF1bHQuXG4gICAqIFdpdGgg4oCcYXV0b+KAnSwgd2Ugd2lsbCBtYWtlIG9waW5pb25hdGVkIGNob2ljZXMgYmFzZWQgb24gcmVxdWVzdCBjb250ZW50cyBhbmQgd2hhdCB0aGUgYmFja2VuZCBsaWJyYXJpZXMgY3VycmVudGx5IHN1cHBvcnQsXG4gICAqIHNvIHRoZSBiZWhhdmlvciBpcyBzdWJqZWN0IHRvIGNoYW5nZSBpbiBlYWNoIHJlbGVhc2UuXG4gICAqIEBkZWZhdWx0IEd1aWRlZERlY29kaW5nQmFja2VuZC5BVVRPXG4gICAqL1xuICByZWFkb25seSBndWlkZWREZWNvZGluZ0JhY2tlbmQ/OiBHdWlkZWREZWNvZGluZ0JhY2tlbmQ7XG5cbiAgLyoqXG4gICAqIFNlbGVjdCB0aGUgcmVhc29uaW5nIHBhcnNlciBkZXBlbmRpbmcgb24gdGhlIG1vZGVsIHRoYXQgeW914oCZcmUgdXNpbmcuXG4gICAqIFRoaXMgaXMgdXNlZCB0byBwYXJzZSB0aGUgcmVhc29uaW5nIGNvbnRlbnQgaW50byBPcGVuQUkgQVBJIGZvcm1hdC4gUmVxdWlyZWQgZm9yIOKAk2VuYWJsZS1yZWFzb25pbmcuXG4gICAqL1xuICByZWFkb25seSByZWFzb25pbmdQYXJzZXI/OiBSZWFzb25pbmdQYXJzZXI7XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIGRpc3RyaWJ1dGVkIGV4ZWN1dGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtUGFyYWxsZWxDb25maWcge1xuICAvKipcbiAgICogQmFja2VuZCB0byB1c2UgZm9yIGRpc3RyaWJ1dGVkIG1vZGVsIHdvcmtlcnMsIGVpdGhlciDigJxyYXnigJ0gb3Ig4oCcbXDigJ0gKG11bHRpcHJvY2Vzc2luZykuXG4gICAqIElmIHRoZSBwcm9kdWN0IG9mIHBpcGVsaW5lX3BhcmFsbGVsX3NpemUgYW5kIHRlbnNvcl9wYXJhbGxlbF9zaXplIGlzIGxlc3MgdGhhbiBvciBlcXVhbCB0byB0aGUgbnVtYmVyIG9mIEdQVXMgYXZhaWxhYmxlLFxuICAgKiDigJxtcOKAnSB3aWxsIGJlIHVzZWQgdG8ga2VlcCBwcm9jZXNzaW5nIG9uIGEgc2luZ2xlIGhvc3QuIE90aGVyd2lzZSwgdGhpcyB3aWxsIGRlZmF1bHQgdG8g4oCccmF54oCdIGlmIFJheSBpcyBpbnN0YWxsZWQgYW5kIGZhaWwgb3RoZXJ3aXNlLlxuICAgKiBOb3RlIHRoYXQgdHB1IGFuZCBocHUgb25seSBzdXBwb3J0IFJheSBmb3IgZGlzdHJpYnV0ZWQgaW5mZXJlbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGlzdHJpYnV0ZWRFeGVjdXRvckJhY2tlbmQ/OiBEaXN0cmlidXRlZEV4ZWN1dG9yQmFja2VuZDtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIHBpcGVsaW5lIHBhcmFsbGVsIGdyb3Vwcy5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgcGlwZWxpbmVQYXJhbGxlbFNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiB0ZW5zb3IgcGFyYWxsZWwgZ3JvdXBzLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSB0ZW5zb3JQYXJhbGxlbFNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBkYXRhIHBhcmFsbGVsIGdyb3Vwcy5cbiAgICogTW9FIGxheWVycyB3aWxsIGJlIHNoYXJkZWQgYWNjb3JkaW5nIHRvIHRoZSBwcm9kdWN0IG9mIHRoZSB0ZW5zb3IgcGFyYWxsZWwgc2l6ZSBhbmQgZGF0YSBwYXJhbGxlbCBzaXplLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBkYXRhUGFyYWxsZWxTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBVc2UgZXhwZXJ0IHBhcmFsbGVsaXNtIGluc3RlYWQgb2YgdGVuc29yIHBhcmFsbGVsaXNtIGZvciBNb0UgbGF5ZXJzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlRXhwZXJ0UGFyYWxsZWw/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBwYXJhbGxhbCBsb2FkaW5nIHdvcmtlcnMgd2hlbiBsb2FkaW5nIG1vZGVsIHNlcXVlbnRpYWxseSBpbiBtdWx0aXBsZSBiYXRjaGVzLlxuICAgKiBUbyBhdm9pZCBSQU0gT09NIHdoZW4gdXNpbmcgdGVuc29yIHBhcmFsbGVsIGFuZCBsYXJnZSBtb2RlbHMuXG4gICAqL1xuICByZWFkb25seSBtYXhQYXJhbGxlbExvYWRpbmdXb3JrZXJzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHByb2ZpbGUgUmF5IHdvcmtlcnMgd2l0aCBuc2lnaHQuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLnJheS5pby9lbi9sYXRlc3QvcmF5LW9ic2VydmFiaWxpdHkvdXNlci1ndWlkZXMvcHJvZmlsaW5nLmh0bWwjcHJvZmlsaW5nLW5zaWdodC1wcm9maWxlclxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcmF5V29ya2Vyc1VzZU5zaWdodD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERpc2FibGUgdGhlIGN1c3RvbSBhbGwtcmVkdWNlIGtlcm5lbCBhbmQgZmFsbCBiYWNrIHRvIE5DQ0wuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlQ3VzdG9tQWxsUmVkdWNlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUgS1YgY2FjaGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbUNhY2hlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFNpemUgb2YgYSBjb250aWd1b3VzIGNhY2hlIGJsb2NrIGluIG51bWJlciBvZiB0b2tlbnMuXG4gICAqIFRoaXMgaXMgaWdub3JlZCBvbiBuZXVyb24gZGV2aWNlcyBhbmQgc2V0IHRvIOKAk21heC1tb2RlbC1sZW4uIE9uIENVREEgZGV2aWNlcywgb25seSBibG9jayBzaXplcyB1cCB0byAzMiBhcmUgc3VwcG9ydGVkLlxuICAgKiBPbiBIUFUgZGV2aWNlcywgYmxvY2sgc2l6ZSBkZWZhdWx0cyB0byAxMjguXG4gICAqL1xuICByZWFkb25seSBibG9ja1NpemU/OiBCbG9ja1NpemU7XG5cbiAgLyoqXG4gICAqIFRoZSBmcmFjdGlvbiBvZiBHUFUgbWVtb3J5IHRvIGJlIHVzZWQgZm9yIHRoZSBtb2RlbCBleGVjdXRvciwgd2hpY2ggY2FuIHJhbmdlIGZyb20gMCB0byAxLlxuICAgKiBGb3IgZXhhbXBsZSwgYSB2YWx1ZSBvZiAwLjUgd291bGQgaW1wbHkgNTAlIEdQVSBtZW1vcnkgdXRpbGl6YXRpb24uXG4gICAqIElmIHVuc3BlY2lmaWVkLCB3aWxsIHVzZSB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAwLjkuIFRoaXMgaXMgYSBwZXItaW5zdGFuY2UgbGltaXQsXG4gICAqIGFuZCBvbmx5IGFwcGxpZXMgdG8gdGhlIGN1cnJlbnQgdkxMTSBpbnN0YW5jZS5cbiAgICogSXQgZG9lcyBub3QgbWF0dGVyIGlmIHlvdSBoYXZlIGFub3RoZXIgdkxMTSBpbnN0YW5jZSBydW5uaW5nIG9uIHRoZSBzYW1lIEdQVS4gRm9yIGV4YW1wbGUsXG4gICAqIGlmIHlvdSBoYXZlIHR3byB2TExNIGluc3RhbmNlcyBydW5uaW5nIG9uIHRoZSBzYW1lIEdQVSwgeW91IGNhbiBzZXQgdGhlIEdQVSBtZW1vcnkgdXRpbGl6YXRpb24gdG8gMC41IGZvciBlYWNoIGluc3RhbmNlLlxuICAgKiBAZGVmYXVsdCAwLjlcbiAgICovXG4gIHJlYWRvbmx5IGdwdU1lbW9yeVV0aWxpemF0aW9uPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTaXplIG9mIHRoZSBDUFUgc3dhcCBzcGFjZSBwZXIgR1BVIChpbiBHaUIpLlxuICAgKiBAZGVmYXVsdCA0XG4gICAqL1xuICByZWFkb25seSBzd2FwU3BhY2U/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERhdGEgdHlwZSBmb3Iga3YgY2FjaGUgc3RvcmFnZS4gSWYg4oCcYXV0b+KAnSwgd2lsbCB1c2UgbW9kZWwgZGF0YSB0eXBlLlxuICAgKiBDVURBIDExLjgrIHN1cHBvcnRzIGZwOCAoPWZwOF9lNG0zKSBhbmQgZnA4X2U1bTIuIFJPQ20gKEFNRCBHUFUpIHN1cHBvcnRzIGZwOCAoPWZwOF9lNG0zKS5cbiAgICogQGRlZmF1bHQgS3ZDYWNoZUR0eXBlLkFVVE9cbiAgICovXG4gIHJlYWRvbmx5IGt2Q2FjaGVEdHlwZT86IEt2Q2FjaGVEdHlwZTtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIEdQVSBibG9ja3MgdG8gdXNlLiBUaGlzIG92ZXJyaWRlcyB0aGUgcHJvZmlsZWQgbnVtX2dwdV9ibG9ja3MgaWYgc3BlY2lmaWVkLlxuICAgKiBEb2VzIG5vdGhpbmcgaWYgTm9uZS4gVXNlZCBmb3IgdGVzdGluZyBwcmVlbXB0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgbnVtR3B1QmxvY2tzT3ZlcnJpZGU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gZW5hYmxlIHByZWZpeCBjYWNoaW5nLiBEaXNhYmxlZCBieSBkZWZhdWx0IGZvciBWMC4gRW5hYmxlZCBieSBkZWZhdWx0IGZvciBWMS5cbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVByZWZpeENhY2hpbmc/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTZXQgdGhlIGhhc2ggYWxnb3JpdGhtIGZvciBwcmVmaXggY2FjaGluZy5cbiAgICogQGRlZmF1bHQgUHJlZml4Q2FjaGluZ0hhc2hBbGdvLkJVSUxUSU5cbiAgICovXG4gIHJlYWRvbmx5IHByZWZpeENhY2hpbmdIYXNoQWxnbz86IFByZWZpeENhY2hpbmdIYXNoQWxnbztcblxuICAvKipcbiAgICogVGhlIHNwYWNlIGluIEdpQiB0byBvZmZsb2FkIHRvIENQVSwgcGVyIEdQVS5cbiAgICogRGVmYXVsdCBpcyAwLCB3aGljaCBtZWFucyBubyBvZmZsb2FkaW5nLiBJbnR1aXRpdmVseSxcbiAgICogdGhpcyBhcmd1bWVudCBjYW4gYmUgc2VlbiBhcyBhIHZpcnR1YWwgd2F5IHRvIGluY3JlYXNlIHRoZSBHUFUgbWVtb3J5IHNpemUuXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgaGF2ZSBvbmUgMjQgR0IgR1BVIGFuZCBzZXQgdGhpcyB0byAxMCwgdmlydHVhbGx5IHlvdSBjYW4gdGhpbmsgb2YgaXQgYXMgYSAzNCBHQiBHUFUuXG4gICAqIFRoZW4geW91IGNhbiBsb2FkIGEgMTNCIG1vZGVsIHdpdGggQkYxNiB3ZWlnaHQsIHdoaWNoIHJlcXVpcmVzIGF0IGxlYXN0IDI2R0IgR1BVIG1lbW9yeS5cbiAgICpcbiAgICogTm90ZSB0aGF0IHRoaXMgcmVxdWlyZXMgZmFzdCBDUFUtR1BVIGludGVyY29ubmVjdCxcbiAgICogYXMgcGFydCBvZiB0aGUgbW9kZWwgaXMgbG9hZGVkIGZyb20gQ1BVIG1lbW9yeSB0byBHUFUgbWVtb3J5IG9uIHRoZSBmbHkgaW4gZWFjaCBtb2RlbCBmb3J3YXJkIHBhc3MuXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHJlYWRvbmx5IGNwdU9mZmxvYWRHYj86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhpcyBlbmFibGVzIGR5bmFtaWMgY2FsY3VsYXRpb24gb2Yga19zY2FsZSBhbmQgdl9zY2FsZSB3aGVuIGt2X2NhY2hlX2R0eXBlIGlzIGZwOC5cbiAgICogSWYgRmFsc2UsIHRoZSBzY2FsZXMgd2lsbCBiZSBsb2FkZWQgZnJvbSB0aGUgbW9kZWwgY2hlY2twb2ludCBpZiBhdmFpbGFibGUuIE90aGVyd2lzZSwgdGhlIHNjYWxlcyB3aWxsIGRlZmF1bHQgdG8gMS4wLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY2FsY3VsYXRlS3ZTY2FsZXM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbnRyb2xzIHRoZSBiZWhhdmlvciBvZiBtdWx0aW1vZGFsIG1vZGVscy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtTXVsdGlNb2RhbENvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaW5wdXQgaXRlbXMgYWxsb3dlZCBwZXIgcHJvbXB0IGZvciBlYWNoIG1vZGFsaXR5LlxuICAgKiBUaGlzIHNob3VsZCBiZSBhIG9iamVjdCB0aGF0IHdpbGwgYmUgcGFyc2VkIGludG8gYSBkaWN0aW9uYXJ5LiBEZWZhdWx0cyB0byAxIChWMCkgb3IgOTk5IChWMSkgZm9yIGVhY2ggbW9kYWxpdHkuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqL1xuICByZWFkb25seSBsaW1pdE1tUGVyUHJvbXB0PzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBMb1JBLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1Mb3JhQ29uZmlnIHtcbiAgLyoqXG4gICAqIElmIFRydWUsIGVuYWJsZSBoYW5kbGluZyBvZiBMb1JBIGFkYXB0ZXJzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlTG9yYT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElmIFRydWUsIGVuYWJsZSBiaWFzIGZvciBMb1JBIGFkYXB0ZXJzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlTG9yYUJpYXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBNYXggbnVtYmVyIG9mIExvUkFzIGluIGEgc2luZ2xlIGJhdGNoLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBtYXhMb3Jhcz86IG51bWJlcjtcblxuICAvKipcbiAgICogTWF4IExvUkEgcmFuay5cbiAgICogQGRlZmF1bHQgMTZcbiAgICovXG4gIHJlYWRvbmx5IG1heExvcmFSYW5rPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIHNpemUgb2YgZXh0cmEgdm9jYWJ1bGFyeSB0aGF0IGNhbiBiZSBwcmVzZW50IGluIGEgTG9SQSBhZGFwdGVyIChhZGRlZCB0byB0aGUgYmFzZSBtb2RlbCB2b2NhYnVsYXJ5KS5cbiAgICogQGRlZmF1bHQgMjU2XG4gICAqL1xuICByZWFkb25seSBsb3JhRXh0cmFWb2NhYlNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERhdGEgdHlwZSBmb3IgTG9SQS4gSWYgYXV0bywgd2lsbCBkZWZhdWx0IHRvIGJhc2UgbW9kZWwgZHR5cGUuXG4gICAqIEBkZWZhdWx0IExvcmFEdHlwZS5BVVRPXG4gICAqL1xuICByZWFkb25seSBsb3JhRHR5cGU/OiBMb3JhRHR5cGU7XG5cbiAgLyoqXG4gICAqIFNwZWNpZnkgbXVsdGlwbGUgc2NhbGluZyBmYWN0b3JzICh3aGljaCBjYW4gYmUgZGlmZmVyZW50IGZyb20gYmFzZSBtb2RlbCBzY2FsaW5nIGZhY3RvcnNlZSBlZy4gTG9uZyBMb1JBKVxuICAgKiB0byBhbGxvdyBmb3IgbXVsdGlwbGUgTG9SQSBhZGFwdGVycyB0cmFpbmVkIHdpdGggdGhvc2Ugc2NhbGluZyBmYWN0b3JzIHRvIGJlIHVzZWQgYXQgdGhlIHNhbWUgdGltZS5cbiAgICogSWYgbm90IHNwZWNpZmllZCwgb25seSBhZGFwdGVycyB0cmFpbmVkIHdpdGggdGhlIGJhc2UgbW9kZWwgc2NhbGluZyBmYWN0b3IgYXJlIGFsbG93ZWQuXG4gICAqL1xuICByZWFkb25seSBsb25nTG9yYVNjYWxpbmdGYWN0b3JzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBMb1JBcyB0byBzdG9yZSBpbiBDUFUgbWVtb3J5LiBNdXN0IGJlID49IHRoYW4gbWF4X2xvcmFzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Q3B1TG9yYXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEJ5IGRlZmF1bHQsIG9ubHkgaGFsZiBvZiB0aGUgTG9SQSBjb21wdXRhdGlvbiBpcyBzaGFyZGVkIHdpdGggdGVuc29yIHBhcmFsbGVsaXNtLlxuICAgKiBFbmFibGluZyB0aGlzIHdpbGwgdXNlIHRoZSBmdWxseSBzaGFyZGVkIGxheWVycy5cbiAgICogQXQgaGlnaCBzZXF1ZW5jZSBsZW5ndGgsIG1heCByYW5rIG9yIHRlbnNvciBwYXJhbGxlbCBzaXplLCB0aGlzIGlzIGxpa2VseSBmYXN0ZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBmdWxseVNoYXJkZWRMb3Jhcz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgUHJvbXB0QWRhcHRlcnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbVByb21wdEFkYXB0ZXJDb25maWcge1xuICAvKipcbiAgICogSWYgVHJ1ZSwgZW5hYmxlIGhhbmRsaW5nIG9mIFByb21wdEFkYXB0ZXJzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlUHJvbXB0QWRhcHRlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE1heCBudW1iZXIgb2YgUHJvbXB0QWRhcHRlcnMgaW4gYSBiYXRjaC5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4UHJvbXB0QWRhcHRlcnM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1heCBudW1iZXIgb2YgUHJvbXB0QWRhcHRlcnMgdG9rZW5zLlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICByZWFkb25seSBtYXhQcm9tcHRBZGFwdGVyVG9rZW4/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbURldmljZUNvbmZpZyB7XG4gIC8qKlxuICAgKiBEZXZpY2UgdHlwZSBmb3IgdkxMTSBleGVjdXRpb24uXG4gICAqIEBkZWZhdWx0IERldmljZS5BVVRPXG4gICAqL1xuICByZWFkb25seSBkZXZpY2U/OiBEZXZpY2U7XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3Igc3BlY3VsYXRpdmUgZGVjb2RpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbVNwZWN1bGF0aXZlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBjb25maWd1cmF0aW9ucyBmb3Igc3BlY3VsYXRpdmUgZGVjb2RpbmcuIFNob3VsZCBiZSBhIG9iamVjdC5cbiAgICovXG4gIHJlYWRvbmx5IHNwZWN1bGF0aXZlQ29uZmlnPzogeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWbGxtU2NoZWR1bGVyQ29uZmlnIHtcbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIHRva2VucyB0byBiZSBwcm9jZXNzZWQgaW4gYSBzaW5nbGUgaXRlcmF0aW9uLlxuICAgKlxuICAgKiBUaGlzIGNvbmZpZyBoYXMgbm8gc3RhdGljIGRlZmF1bHQuIElmIGxlZnQgdW5zcGVjaWZpZWQgYnkgdGhlIHVzZXIsIGl0IHdpbGwgYmUgc2V0IGluIEVuZ2luZUFyZ3MuY3JlYXRlX2VuZ2luZV9jb25maWcgYmFzZWQgb24gdGhlIHVzYWdlIGNvbnRleHQuXG4gICAqL1xuICByZWFkb25seSBtYXhOdW1CYXRjaGVkVG9rZW5zPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIG51bWJlciBvZiBzZXF1ZW5jZXMgdG8gYmUgcHJvY2Vzc2VkIGluIGEgc2luZ2xlIGl0ZXJhdGlvbi5cbiAgICpcbiAgICogVGhpcyBjb25maWcgaGFzIG5vIHN0YXRpYyBkZWZhdWx0LiBJZiBsZWZ0IHVuc3BlY2lmaWVkIGJ5IHRoZSB1c2VyLCBpdCB3aWxsIGJlIHNldCBpbiBFbmdpbmVBcmdzLmNyZWF0ZV9lbmdpbmVfY29uZmlnIGJhc2VkIG9uIHRoZSB1c2FnZSBjb250ZXh0LlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TnVtU2Vxcz86IG51bWJlcjtcblxuICAvKipcbiAgICogRm9yIGNodW5rZWQgcHJlZmlsbCwgdGhlIG1heGltdW0gbnVtYmVyIG9mIHNlcXVlbmNlcyB0aGF0IGNhbiBiZSBwYXJ0aWFsbHkgcHJlZmlsbGVkIGNvbmN1cnJlbnRseS5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TnVtUGFydGlhbFByZWZpbGxzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGb3IgY2h1bmtlZCBwcmVmaWxsLCB0aGUgbWF4aW11bSBudW1iZXIgb2YgcHJvbXB0cyBsb25nZXIgdGhhbiBsb25nX3ByZWZpbGxfdG9rZW5fdGhyZXNob2xkIHRoYXQgd2lsbCBiZSBwcmVmaWxsZWQgY29uY3VycmVudGx5LlxuICAgKiBTZXR0aW5nIHRoaXMgbGVzcyB0aGFuIG1heF9udW1fcGFydGlhbF9wcmVmaWxscyB3aWxsIGFsbG93IHNob3J0ZXIgcHJvbXB0cyB0byBqdW1wIHRoZSBxdWV1ZSBpbiBmcm9udCBvZiBsb25nZXIgcHJvbXB0cyBpbiBzb21lIGNhc2VzLCBpbXByb3ZpbmcgbGF0ZW5jeS5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4TG9uZ1BhcnRpYWxQcmVmaWxscz86IG51bWJlcjtcblxuICAvKipcbiAgICogRm9yIGNodW5rZWQgcHJlZmlsbCwgYSByZXF1ZXN0IGlzIGNvbnNpZGVyZWQgbG9uZyBpZiB0aGUgcHJvbXB0IGlzIGxvbmdlciB0aGFuIHRoaXMgbnVtYmVyIG9mIHRva2Vucy5cbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgcmVhZG9ubHkgbG9uZ1ByZWZpbGxUb2tlblRocmVzaG9sZD86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBzbG90cyB0byBhbGxvY2F0ZSBwZXIgc2VxdWVuY2UgcGVyIHN0ZXAsXG4gICAqIGJleW9uZCB0aGUga25vd24gdG9rZW4gaWRzLiBUaGlzIGlzIHVzZWQgaW4gc3BlY3VsYXRpdmUgZGVjb2RpbmcgdG8gc3RvcmUgS1YgYWN0aXZhdGlvbnMgb2YgdG9rZW5zXG4gICAqIHdoaWNoIG1heSBvciBtYXkgbm90IGJlIGFjY2VwdGVkLlxuICAgKlxuICAgKiBOT1RFOiBUaGlzIHdpbGwgYmUgcmVwbGFjZWQgYnkgc3BlY3VsYXRpdmUgY29uZmlnIGluIHRoZSBmdXR1cmU7IGl0IGlzIHByZXNlbnQgdG8gZW5hYmxlIGNvcnJlY3RuZXNzIHRlc3RzIHVudGlsIHRoZW4uXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIHJlYWRvbmx5IG51bUxvb2thaGVhZFNsb3RzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBcHBseSBhIGRlbGF5IChvZiBkZWxheSBmYWN0b3IgbXVsdGlwbGllZCBieSBwcmV2aW91cyBwcm9tcHQgbGF0ZW5jeSkgYmVmb3JlIHNjaGVkdWxpbmcgbmV4dCBwcm9tcHQuXG4gICAqIEBkZWZhdWx0IDAuMFxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGVyRGVsYXlGYWN0b3I/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcGVyZm9ybSBwcmVlbXB0aW9uIGJ5IHN3YXBwaW5nIG9yIHJlY29tcHV0YXRpb24uXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHdlIGRldGVybWluZSB0aGUgbW9kZSBhcyBmb2xsb3dzOlxuICAgKiBXZSB1c2UgcmVjb21wdXRhdGlvbiBieSBkZWZhdWx0IHNpbmNlIGl0IGluY3VycyBsb3dlciBvdmVyaGVhZCB0aGFuIHN3YXBwaW5nLlxuICAgKiBIb3dldmVyLCB3aGVuIHRoZSBzZXF1ZW5jZSBncm91cCBoYXMgbXVsdGlwbGUgc2VxdWVuY2VzIChlLmcuLCBiZWFtIHNlYXJjaCksXG4gICAqIHJlY29tcHV0YXRpb24gaXMgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQuIEluIHN1Y2ggYSBjYXNlLCB3ZSB1c2Ugc3dhcHBpbmcgaW5zdGVhZC5cbiAgICovXG4gIHJlYWRvbmx5IHByZWVtcHRpb25Nb2RlPzogUHJlZW1wdGlvbk1vZGU7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGZvcndhcmQgc3RlcHMgcGVyIHNjaGVkdWxlciBjYWxsLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICByZWFkb25seSBudW1TY2hlZHVsZXJTdGVwcz86IG51bWJlcjtcblxuICAvKipcbiAgICogSWYgRmFsc2UsIHRoZW4gbXVsdGktc3RlcCB3aWxsIHN0cmVhbSBvdXRwdXRzIGF0IHRoZSBlbmQgb2YgYWxsIHN0ZXBzXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG11bHRpU3RlcFN0cmVhbU91dHB1dHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgc2NoZWR1bGluZyBwb2xpY3kgdG8gdXNlOlxuICAgKiAtIOKAnGZjZnPigJ0gbWVhbnMgZmlyc3QgY29tZSBmaXJzdCBzZXJ2ZWQsIGkuZS4gcmVxdWVzdHMgYXJlIGhhbmRsZWQgaW4gb3JkZXIgb2YgYXJyaXZhbC5cbiAgICogLSDigJxwcmlvcml0eeKAnSBtZWFucyByZXF1ZXN0cyBhcmUgaGFuZGxlZCBiYXNlZCBvbiBnaXZlbiBwcmlvcml0eSAobG93ZXIgdmFsdWUgbWVhbnMgZWFybGllciBoYW5kbGluZykgYW5kIHRpbWUgb2YgYXJyaXZhbCBkZWNpZGluZyBhbnkgdGllcykuXG4gICAqIEBkZWZhdWx0IFNjaGVkdWxpbmdQb2xpY3kuRkNGU1xuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGluZ1BvbGljeT86IFNjaGVkdWxpbmdQb2xpY3k7XG5cbiAgLyoqXG4gICAqIElmIFRydWUsIHByZWZpbGwgcmVxdWVzdHMgY2FuIGJlIGNodW5rZWQgYmFzZWQgb24gdGhlIHJlbWFpbmluZyBtYXhfbnVtX2JhdGNoZWRfdG9rZW5zLlxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlQ2h1bmtlZFByZWZpbGw/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiBzZXQgdG8gdHJ1ZSBhbmQgY2h1bmtlZCBwcmVmaWxsIGlzIGVuYWJsZWQsIHdlIGRvIG5vdCB3YW50IHRvIHBhcnRpYWxseSBzY2hlZHVsZSBhIG11bHRpbW9kYWwgaXRlbS5cbiAgICogT25seSB1c2VkIGluIFYxIFRoaXMgZW5zdXJlcyB0aGF0IGlmIGEgcmVxdWVzdCBoYXMgYSBtaXhlZCBwcm9tcHQgKGxpa2UgdGV4dCB0b2tlbnMgVFRUVCBmb2xsb3dlZCBieSBpbWFnZSB0b2tlbnMgSUlJSUlJSUlJSSlcbiAgICogd2hlcmUgb25seSBzb21lIGltYWdlIHRva2VucyBjYW4gYmUgc2NoZWR1bGVkIChsaWtlIFRUVFRJSUlJSSwgbGVhdmluZyBJSUlJSSksXG4gICAqIGl0IHdpbGwgYmUgc2NoZWR1bGVkIGFzIFRUVFQgaW4gb25lIHN0ZXAgYW5kIElJSUlJSUlJSUkgaW4gdGhlIG5leHQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlQ2h1bmtlZE1tSW5wdXQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgdkxMTSBzZXJ2ZXIgY29tbWFuZCBsaW5lIGFyZ3VtZW50c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1FbmdpbmVBcmd1bWVudHNcbiAgZXh0ZW5kcyBWbGxtTmFtZWRBcmd1bWVudHMsXG4gICAgVmxsbUxvYWRDb25maWcsXG4gICAgVmxsbURlY29kaW5nQ29uZmlnLFxuICAgIFZsbG1QYXJhbGxlbENvbmZpZyxcbiAgICBWbGxtQ2FjaGVDb25maWcsXG4gICAgVmxsbU11bHRpTW9kYWxDb25maWcsXG4gICAgVmxsbUxvcmFDb25maWcsXG4gICAgVmxsbVByb21wdEFkYXB0ZXJDb25maWcsXG4gICAgVmxsbURldmljZUNvbmZpZyxcbiAgICBWbGxtU3BlY3VsYXRpdmVDb25maWcsXG4gICAgVmxsbVNjaGVkdWxlckNvbmZpZyB7fVxuXG5jb25zdCBqc29uVmFsdWVQcm9wZXJ0aWVzOiAoa2V5b2YgVmxsbUVuZ2luZUFyZ3VtZW50cylbXSA9IFtcbiAgXCJhbGxvd2VkT3JpZ2luc1wiLFxuICBcImFsbG93ZWRIZWFkZXJzXCIsXG4gIFwiYWxsb3dlZE1ldGhvZHNcIixcbl07XG5jb25zdCBpZ25vcmVLZXlzOiAoa2V5b2YgVmxsbUVuZ2luZUFyZ3VtZW50cylbXSA9IFtcIm1vZGVsXCIsIFwiaGZUb2tlblwiXTtcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZsbG1FbmdpbmVBcmd1bWVudHNQYXJzZXIge1xuICAvKipcbiAgICogQ29udmVydCB2TExNIGVuZ2luZSBhcmd1bWVudHMgKGNhbWVsIGNhc2UpIHRvIGNvbmZpZyAoa2ViYWIgY2FzZSlcbiAgICogQHBhcmFtIGFyZ3MgdkxMTSBlbmdpbmUgYXJndW1lbnRzXG4gICAqIEByZXR1cm5zIHZMTE0gZW5naW5lIGNvbmZpZ1xuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy52bGxtLmFpL2VuL2xhdGVzdC9zZXJ2aW5nL29wZW5haV9jb21wYXRpYmxlX3NlcnZlci5odG1sI2NvbmZpZ3VyYXRpb24tZmlsZVxuICAgKi9cbiAgc3RhdGljIGNvbmZpZyhhcmdzOiBWbGxtRW5naW5lQXJndW1lbnRzKSB7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGFyZ3MpXG4gICAgICAuZmlsdGVyKChba2V5XSkgPT4gIWlnbm9yZUtleXMuaW5jbHVkZXMoa2V5IGFzIGtleW9mIFZsbG1FbmdpbmVBcmd1bWVudHMpKVxuICAgICAgLnJlZHVjZTx7IFtrZXkgaW4gc3RyaW5nXTogYW55IH0+KChwcmV2LCBba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3QgayA9IGtleS5yZXBsYWNlKC9bQS1aXS9nLCAobWF0Y2gpID0+IGAtJHttYXRjaC50b0xvd2VyQ2FzZSgpfWApO1xuICAgICAgICBpZiAoXG4gICAgICAgICAganNvblZhbHVlUHJvcGVydGllcy5pbmNsdWRlcyhrZXkgYXMga2V5b2YgVmxsbUVuZ2luZUFyZ3VtZW50cykgfHxcbiAgICAgICAgICAoIUFycmF5LmlzQXJyYXkodmFsdWUpICYmIHR5cGVvZiB2YWx1ZSA9PT0gXCJvYmplY3RcIilcbiAgICAgICAgKSB7XG4gICAgICAgICAgdmFsdWUgPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgcHJldltrXSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gcHJldjtcbiAgICAgIH0sIHt9KTtcbiAgfVxuICBzdGF0aWMgY2xpKGFyZ3M6IFZsbG1FbmdpbmVBcmd1bWVudHMpIHtcbiAgICBjb25zdCBnZW5lcmFsQXJncyA9IE9iamVjdC5lbnRyaWVzKGFyZ3MpXG4gICAgICAuZmlsdGVyKChba2V5XSkgPT4gIWlnbm9yZUtleXMuaW5jbHVkZXMoa2V5IGFzIGtleW9mIFZsbG1FbmdpbmVBcmd1bWVudHMpKVxuICAgICAgLmZsYXRNYXAoKFtrLCB2YWx1ZV0pID0+IHtcbiAgICAgICAgY29uc3Qga2V5ID0gay5yZXBsYWNlKC9bQS1aXS9nLCAobWF0Y2gpID0+IGAtJHttYXRjaC50b0xvd2VyQ2FzZSgpfWApO1xuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcImJvb2xlYW5cIikge1xuICAgICAgICAgIHJldHVybiB2YWx1ZSA/IFtgLS0ke2tleX1gXSA6IFtdO1xuICAgICAgICB9XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICAgIHJldHVybiBbYC0tJHtrZXl9YCwgLi4udmFsdWUubWFwKCh2KSA9PiBgJHt2fWApXTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIHZhbHVlID09PSBcIm9iamVjdFwiKSB7XG4gICAgICAgICAgcmV0dXJuIFtgLS0ke2tleX1gLCBKU09OLnN0cmluZ2lmeSh2YWx1ZSldO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBbYC0tJHtrZXl9YCwgYCR7dmFsdWV9YF07XG4gICAgICB9KTtcbiAgICByZXR1cm4gW2FyZ3MubW9kZWwhLCAuLi5nZW5lcmFsQXJnc107XG4gIH1cbn1cbiJdfQ==
|
|
@@ -28,7 +28,7 @@ class VllmNxdInferenceCompileImage extends vllm_nxd_inference_ecs_patterns_1.Vll
|
|
|
28
28
|
}
|
|
29
29
|
exports.VllmNxdInferenceCompileImage = VllmNxdInferenceCompileImage;
|
|
30
30
|
_a = JSII_RTTI_SYMBOL_1;
|
|
31
|
-
VllmNxdInferenceCompileImage[_a] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceCompileImage", version: "0.0.
|
|
31
|
+
VllmNxdInferenceCompileImage[_a] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceCompileImage", version: "0.0.17" };
|
|
32
32
|
/**
|
|
33
33
|
* Neuronx compiler construct for vLLM on NxD Inference.
|
|
34
34
|
* Compile the model to work with Neuronx instance and upload it to an S3 bucket.
|
|
@@ -111,5 +111,5 @@ class VllmNxdInferenceCompiler extends constructs_1.Construct {
|
|
|
111
111
|
}
|
|
112
112
|
exports.VllmNxdInferenceCompiler = VllmNxdInferenceCompiler;
|
|
113
113
|
_b = JSII_RTTI_SYMBOL_1;
|
|
114
|
-
VllmNxdInferenceCompiler[_b] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceCompiler", version: "0.0.
|
|
114
|
+
VllmNxdInferenceCompiler[_b] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceCompiler", version: "0.0.17" };
|
|
115
115
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmxsbS1ueGQtaW5mZXJlbmNlLWNvbXBpbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ZsbG0tbnhkLWluZmVyZW5jZS92bGxtLW54ZC1pbmZlcmVuY2UtY29tcGlsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFHQSxpREFBcUQ7QUFFckQsMkNBQXVDO0FBQ3ZDLG1DQUFvQztBQUNwQywrQkFBNEI7QUFDNUIsNkNBVXlCO0FBQ3pCLCtEQUlrQztBQUNsQyxtRUFHMkM7QUFDM0MsdUZBQThFO0FBRTlFOztHQUVHO0FBQ0gsTUFBYSw0QkFBNkIsU0FBUSwyREFBeUI7SUFLekUsWUFBWSxZQUEyQjtRQUNyQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDcEIsSUFBSSxDQUFDLEtBQUssR0FBRyx3QkFBYyxDQUFDLFNBQVMsQ0FDbkMsSUFBQSxXQUFJLEVBQUMsU0FBUyxFQUFFLDBDQUEwQyxDQUFDLEVBQzNEO1lBQ0UsU0FBUyxFQUFFO2dCQUNULFVBQVUsRUFBRSxZQUFZLENBQUMsU0FBUztnQkFDbEMsU0FBUyxFQUFFLFlBQVksQ0FBQyxRQUFRO2dCQUNoQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGFBQWE7YUFDcEM7U0FDRixDQUNGLENBQUM7SUFDSixDQUFDOztBQWpCSCxvRUFrQkM7OztBQXNFRDs7O0dBR0c7QUFDSCxNQUFhLHdCQUF5QixTQUFRLHNCQUFTO0lBR3JELFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQW1DO1FBRW5DLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxXQUFXLElBQUksR0FBRyxDQUFDO1FBQ3ZELE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsVUFBVSxJQUFJLENBQUMsQ0FBQztRQUNuRCxNQUFNLGVBQWUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8s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QUFFLGtCQUFrQixDQUFDLFFBQVEsRUFBRTtZQUNsRCxRQUFRLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPO1lBQzdCLFVBQVUsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLFNBQVM7WUFDakMseUJBQXlCLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUM7U0FDekUsQ0FBQztRQUNGLE1BQU0sT0FBTyxHQUFvQyxFQUFFLENBQUM7UUFDcEQsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDNUMsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLElBQUksa0NBQWUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3JELEdBQUcsS0FBSztZQUNSLG1CQUFtQixFQUFFLHlCQUF5QixDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQjtZQUNyRSxnQkFBZ0I7WUFDaEIsS0FBSyxFQUFFLEtBQUs7WUFDWixPQUFPLEVBQUUsV0FBVztZQUNwQixXQUFXO1lBQ1gsT0FBTztTQUNSLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFDRDs7O09BR0c7SUFDSCxPQUFPO1FBQ0wsT0FBTztZQUNMLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDMUIsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ2dCLENBQUM7SUFDNUMsQ0FBQzs7QUF6R0gsNERBMEdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2l6ZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgYmF0Y2ggZnJvbSBcImF3cy1jZGstbGliL2F3cy1iYXRjaFwiO1xuaW1wb3J0IHsgSVZwYywgU3VibmV0U2VsZWN0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IENvbnRhaW5lckltYWdlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lY3NcIjtcbmltcG9ydCB7IElCdWNrZXQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXMzXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gXCJjcnlwdG9cIjtcbmltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtcbiAgY2FsY01lbW9yeUZvb3RwcmludCxcbiAgY2FsY1RlbnNvclBhcmFsbGVsLFxuICBEYXRhVHlwZUJpdHMsXG4gIElOZXVyb254SW1hZ2UsXG4gIElOZXVyb254SW5zdGFuY2VUeXBlLFxuICBpbmZlck1lbW9yeUZvb3RwcmludEZyb21QYXJhbWV0ZXJzLFxuICBNb2RlbCxcbiAgTmV1cm9ueEluc3RhbmNlVHlwZSxcbiAgUHl0b3JjaFRyYWluaW5nTmV1cm9ueEltYWdlLFxufSBmcm9tIFwiLi4vYmFzZS9uZXVyb254XCI7XG5pbXBvcnQge1xuICBJTmV1cm9ueENvbnRhaW5lckltYWdlLFxuICBOZXVyb254Q29tcGlsZWRNb2RlbCxcbiAgTmV1cm9ueENvbXBpbGVyLFxufSBmcm9tIFwiLi4vYmFzZS9uZXVyb254LWNvbXBpbGVyXCI7XG5pbXBvcnQge1xuICBWbGxtRW5naW5lQXJndW1lbnRzLFxuICBWbGxtRW5naW5lQXJndW1lbnRzUGFyc2VyLFxufSBmcm9tIFwiLi4vYmFzZS9zZXJ2ZXItZW5naW5lL3ZsbG0tZW5naW5lXCI7XG5pbXBvcnQgeyBWbGxtTnhkSW5mZXJlbmNlSW1hZ2VCYXNlIH0gZnJvbSBcIi4vdmxsbS1ueGQtaW5mZXJlbmNlLWVjcy1wYXR0ZXJuc1wiO1xuXG4vKipcbiAqIENvbXBpbGUgcnVudGltZSBjb250YWluZXIgaW1hZ2UgZm9yIHZMTE0gTnhEIEluZmVyZW5jZVxuICovXG5leHBvcnQgY2xhc3MgVmxsbU54ZEluZmVyZW5jZUNvbXBpbGVJbWFnZSBleHRlbmRzIFZsbG1OeGRJbmZlcmVuY2VJbWFnZUJhc2Uge1xuICAvKipcbiAgICogVGhlIGNvbnRhaW5lciBpbWFnZS5cbiAgICovXG4gIHJlYWRvbmx5IGltYWdlOiBDb250YWluZXJJbWFnZTtcbiAgY29uc3RydWN0b3IobmVydW9ueEltYWdlOiBJTmV1cm9ueEltYWdlKSB7XG4gICAgc3VwZXIobmVydW9ueEltYWdlKTtcbiAgICB0aGlzLmltYWdlID0gQ29udGFpbmVySW1hZ2UuZnJvbUFzc2V0KFxuICAgICAgam9pbihfX2Rpcm5hbWUsIFwiLi4vLi4vc2NyaXB0cy9jb21waWxlL3ZsbG0tbnhkLWluZmVyZW5jZVwiKSxcbiAgICAgIHtcbiAgICAgICAgYnVpbGRBcmdzOiB7XG4gICAgICAgICAgSU1BR0VfTkFNRTogbmVydW9ueEltYWdlLmltYWdlTmFtZSxcbiAgICAgICAgICBJTUFHRV9UQUc6IG5lcnVvbnhJbWFnZS5pbWFnZVRhZyxcbiAgICAgICAgICBWTExNX0dJVF9CUkFOQ0g6IHRoaXMudmxsbUdpdEJyYW5jaCxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIFByb3BzIG9mIFZsbG1OeGRJbmZlcmVuY2VDb21waWxlci5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWbGxtTnhkSW5mZXJlbmNlQ29tcGlsZVByb3BzIHtcbiAgLyoqXG4gICAqIFZQQyBpbiB3aGljaCB0aGlzIHdpbGwgbGF1bmNoIGNvbXBpbGUgd29ya2VyIGluc3RhbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xuICAvKipcbiAgICogVGhlIGJ1Y2tldCB0byB1cGxvYWQgY29tcGlsZWQgYXJ0aWZhY3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVja2V0OiBJQnVja2V0O1xuICAvKipcbiAgICogVGhlIGluc3RhbmNlIHR5cGUgb2YgY29tcGlsZSB3b3JrZXIgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBuZXVyb254SW5zdGFuY2VUeXBlPzogSU5ldXJvbnhJbnN0YW5jZVR5cGU7XG4gIC8qKlxuICAgKiBUaGUgbW9kZWwgdG8gYmUgY29tcGlsZWQuXG4gICAqL1xuICByZWFkb25seSBtb2RlbDogTW9kZWw7XG4gIC8qKlxuICAgKiBUaGUgcm9vdCB2b2x1bWUgb2Ygd29ya2VyIGluc3RhbmNlLlxuICAgKiBAZGVmYXVsdCAtIE4gYmlsaW9uIHBhcmFtZXRlcnMgKiA1R2lCIEVCU1xuICAgKi9cbiAgcmVhZG9ubHkgdm9sdW1lU2l6ZT86IFNpemU7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byB1c2Ugc3BvdCBpbnN0YW5jZXMuIFNwb3QgaW5zdGFuY2VzIGFyZSBsZXNzIGV4cGVuc2l2ZSBFQzIgaW5zdGFuY2VzIHRoYXQgY2FuIGJlIHJlY2xhaW1lZCBieSBFQzIgYXQgYW55IHRpbWU7IHlvdXIgam9iIHdpbGwgYmUgZ2l2ZW4gdHdvIG1pbnV0ZXMgb2Ygbm90aWNlIGJlZm9yZSByZWNsYW1hdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNwb3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIFZQQyBTdWJuZXRzIHRoaXMgQ29tcHV0ZSBFbnZpcm9ubWVudCB3aWxsIGxhdW5jaCBpbnN0YW5jZXMgaW4uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbmV3IHN1Ym5ldHMgd2lsbCBiZSBjcmVhdGVkXG4gICAqL1xuICByZWFkb25seSB2cGNTdWJuZXRzPzogU3VibmV0U2VsZWN0aW9uO1xuICAvKipcbiAgICogVGhlIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBwYXNzIHRvIHRoZSBjb250YWluZXIuXG4gICAqIFRoaXMgaXMgb25seSBhcHBsaWNhYmxlIHdoZW4gdXNpbmcgY29udGFpbmVyIHJ1bnRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gTm8gZW52aXJvbm1lbnQgdmFyaWFibGVzLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnQ/OiB7XG4gICAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xuICB9O1xuICAvKipcbiAgICogVGhlIGFyZ3VtZW50cyB0byBwYXNzIHRvIHRoZSB2bGxtIGVuZ2luZS5cbiAgICogQGRlZmF1bHQgLSBubyBzcGVjaWZpYyB2YWx1ZXMuIHVzZSBkZWZhdWx0IHZhbHVlcy5cbiAgICovXG4gIHJlYWRvbmx5IHZsbG1BcmdzPzogVmxsbUVuZ2luZUFyZ3VtZW50cztcbiAgLyoqXG4gICAqIEFuIGltYWdlIG9mIHRoZSBjb250YWluZXIgd2hlcmUgdGhlIGNvbXBpbGUgam9iIGlzIGV4ZWN1dGVkLlxuICAgKiBAZGVmYXVsdCAtIGxhdGVzdCBpbWFnZVxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2U/OiBJTmV1cm9ueENvbnRhaW5lckltYWdlO1xufVxuXG4vKipcbiAqIFRoZSBtb2RlbCBjb21waWxlZCBieSBOZXVyb254IGNvbXBpbGVyLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFZsbG1OeGRJbmZlcmVuY2VDb21waWxlZE1vZGVsIGV4dGVuZHMgTmV1cm9ueENvbXBpbGVkTW9kZWwge1xuICAvKipcbiAgICogUGFzc2VkIHRvIHRoZSB2bGxtIGVuZ2luZSBhdCBjb21waWxlIHRpbWUuXG4gICAqL1xuICByZWFkb25seSB2bGxtQXJnczogVmxsbUVuZ2luZUFyZ3VtZW50cztcbn1cblxuLyoqXG4gKiBOZXVyb254IGNvbXBpbGVyIGNvbnN0cnVjdCBmb3IgdkxMTSBvbiBOeEQgSW5mZXJlbmNlLlxuICogQ29tcGlsZSB0aGUgbW9kZWwgdG8gd29yayB3aXRoIE5ldXJvbnggaW5zdGFuY2UgYW5kIHVwbG9hZCBpdCB0byBhbiBTMyBidWNrZXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBWbGxtTnhkSW5mZXJlbmNlQ29tcGlsZXIgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwcml2YXRlIHJlYWRvbmx5IHZsbG1BcmdzOiBWbGxtRW5naW5lQXJndW1lbnRzO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbXBpbGVyOiBOZXVyb254Q29tcGlsZXI7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogVmxsbU54ZEluZmVyZW5jZUNvbXBpbGVQcm9wcyxcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICBjb25zdCBtYXhNb2RlbExlbiA9IHByb3BzLnZsbG1BcmdzPy5tYXhNb2RlbExlbiA/PyAxMjg7XG4gICAgY29uc3QgbWF4TnVtU2VxcyA9IHByb3BzLnZsbG1BcmdzPy5tYXhOdW1TZXFzID8/IDE7XG4gICAgY29uc3QgbWVtb3J5Rm9vdHByaW50ID0gcHJvcHMubW9kZWwub3B0aW9ucy5jb25maWdcbiAgICAgID8gY2FsY01lbW9yeUZvb3RwcmludChcbiAgICAgICAgICBwcm9wcy5tb2RlbC5vcHRpb25zLmNvbmZpZy5lbWJlZGRpbmdEaW1lbnNpb24sXG4gICAgICAgICAgcHJvcHMubW9kZWwub3B0aW9ucy5jb25maWcubGF5ZXJzLFxuICAgICAgICAgIERhdGFUeXBlQml0cy5CRjE2X09SX0ZQMTYsXG4gICAgICAgICAgbWF4TW9kZWxMZW4sXG4gICAgICAgICAgbWF4TnVtU2VxcyxcbiAgICAgICAgKVxuICAgICAgOiBpbmZlck1lbW9yeUZvb3RwcmludEZyb21QYXJhbWV0ZXJzKFxuICAgICAgICAgIHByb3BzLm1vZGVsLm9wdGlvbnMucGFyYW1ldGVycyxcbiAgICAgICAgICBtYXhNb2RlbExlbixcbiAgICAgICAgICBtYXhOdW1TZXFzLFxuICAgICAgICApO1xuICAgIGNvbnN0IG5ldXJvbnhJbnN0YW5jZVR5cGVzID0gcHJvcHMubmV1cm9ueEluc3RhbmNlVHlwZVxuICAgICAgPyBbcHJvcHMubmV1cm9ueEluc3RhbmNlVHlwZV1cbiAgICAgIDogW1xuICAgICAgICAgIE5ldXJvbnhJbnN0YW5jZVR5cGUuSU5GMl84WExBUkdFLFxuICAgICAgICAgIE5ldXJvbnhJbnN0YW5jZVR5cGUuSU5GMl8yNFhMQVJHRSxcbiAgICAgICAgICBOZXVyb254SW5zdGFuY2VUeXBlLklORjJfNDhYTEFSR0UsXG4gICAgICAgIF07XG4gICAgY29uc3QgYXZhaWxhYmxlSW5zdGFuY2VQYXR0ZXJucyA9IG5ldXJvbnhJbnN0YW5jZVR5cGVzXG4gICAgICAuZmxhdE1hcCgobmV1cm9ueEluc3RhbmNlVHlwZSkgPT5cbiAgICAgICAgY2FsY1RlbnNvclBhcmFsbGVsKFxuICAgICAgICAgIG5ldXJvbnhJbnN0YW5jZVR5cGUsXG4gICAgICAgICAgbWVtb3J5Rm9vdHByaW50LFxuICAgICAgICAgIHByb3BzLm1vZGVsLm9wdGlvbnMuY29uZmlnPy5hdHRlbnRpb25IZWFkcyxcbiAgICAgICAgKS5tYXAoKHYpID0+ICh7XG4gICAgICAgICAgbmV1cm9ueEluc3RhbmNlVHlwZSxcbiAgICAgICAgICAuLi52LFxuICAgICAgICB9KSksXG4gICAgICApXG4gICAgICAuZmlsdGVyKFxuICAgICAgICAoaW5zdGFuY2VUeXBlKSA9PlxuICAgICAgICAgICFwcm9wcy52bGxtQXJncz8udGVuc29yUGFyYWxsZWxTaXplIHx8XG4gICAgICAgICAgaW5zdGFuY2VUeXBlLnRwID09PSBwcm9wcy52bGxtQXJncy50ZW5zb3JQYXJhbGxlbFNpemUsXG4gICAgICApO1xuICAgIGlmIChhdmFpbGFibGVJbnN0YW5jZVBhdHRlcm5zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgTm8gYXZhaWxhYmxlIGluc3RhbmNlIHR5cGUuIFlvdSBjYW4gdXNlIHRlbnNvclBhcmFsbGVsU2l6ZSBhcmUgJHthdmFpbGFibGVJbnN0YW5jZVBhdHRlcm5zLm1hcCgocCkgPT4gcC50cCkuam9pbihcIiwgXCIpfS5gLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgdGVuc29yUGFyYWxsZWxTaXplID0gYXZhaWxhYmxlSW5zdGFuY2VQYXR0ZXJuc1swXS50cDtcbiAgICBjb25zdCBpbWFnZSA9XG4gICAgICBwcm9wcy5pbWFnZSA/P1xuICAgICAgbmV3IFZsbG1OeGRJbmZlcmVuY2VDb21waWxlSW1hZ2UoUHl0b3JjaFRyYWluaW5nTmV1cm9ueEltYWdlLkxBVEVTVCk7XG4gICAgY29uc3QgdmxsbUFyZ3MgPSB7XG4gICAgICAuLi5wcm9wcy52bGxtQXJncyxcbiAgICAgIG1vZGVsOiBwcm9wcy5tb2RlbC5tb2RlbElkLFxuICAgICAgc2VydmVkTW9kZWxOYW1lOiBbcHJvcHMubW9kZWwubW9kZWxOYW1lXSxcbiAgICAgIG1heE1vZGVsTGVuLFxuICAgICAgbWF4TnVtU2VxcyxcbiAgICAgIHRlbnNvclBhcmFsbGVsU2l6ZSxcbiAgICB9IHNhdGlzZmllcyBWbGxtRW5naW5lQXJndW1lbnRzO1xuXG4gICAgLy8gY2hhbmdlIGRpcm5hbWUgZXZlcnkgZW5naW5lIGFyZ3MgcGF0dGVybnNcbiAgICBjb25zdCBoYXNoID0gKHN0cjogc3RyaW5nKSA9PlxuICAgICAgY3JlYXRlSGFzaChcInNoYTI1NlwiKS51cGRhdGUoc3RyKS5kaWdlc3QoXCJoZXhcIik7XG4gICAgY29uc3QgYXJ0aWZhY3RTM1ByZWZpeCA9IGBzZGstJHtpbWFnZS5zZGtWZXJzaW9ufS8ke2hhc2goSlNPTi5zdHJpbmdpZnkodmxsbUFyZ3MpKX1gO1xuICAgIGNvbnN0IHZsbG1DbGlBcmdzID0gVmxsbUVuZ2luZUFyZ3VtZW50c1BhcnNlci5jbGkodmxsbUFyZ3MpO1xuICAgIGNvbnN0IGVudmlyb25tZW50OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgLi4ucHJvcHMuZW52aXJvbm1lbnQsXG4gICAgICBWTExNX05FVVJPTl9GUkFNRVdPUks6IFwibmV1cm9ueC1kaXN0cmlidXRlZC1pbmZlcmVuY2VcIixcbiAgICAgIE5FVVJPTl9DT01QSUxFRF9BUlRJRkFDVFM6IFwibmV1cm9uLWNvbXBpbGVkLWFydGlmYWN0c1wiLFxuICAgICAgTkVVUk9OX1JUX05VTV9DT1JFUzogdGVuc29yUGFyYWxsZWxTaXplLnRvU3RyaW5nKCksXG4gICAgICBNT0RFTF9JRDogcHJvcHMubW9kZWwubW9kZWxJZCxcbiAgICAgIE1PREVMX05BTUU6IHByb3BzLm1vZGVsLm1vZGVsTmFtZSxcbiAgICAgIENPTVBJTEVEX0FSVElGQUNUU19TM19VUkk6IHByb3BzLmJ1Y2tldC5zM1VybEZvck9iamVjdChhcnRpZmFjdFMzUHJlZml4KSxcbiAgICB9O1xuICAgIGNvbnN0IHNlY3JldHM6IHsgW2tleTogc3RyaW5nXTogYmF0Y2guU2VjcmV0IH0gPSB7fTtcbiAgICBpZiAocHJvcHMudmxsbUFyZ3M/LmhmVG9rZW4pIHtcbiAgICAgIHNlY3JldHMuSEZfVE9LRU4gPSBwcm9wcy52bGxtQXJncy5oZlRva2VuO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbXBpbGVyID0gbmV3IE5ldXJvbnhDb21waWxlcih0aGlzLCBcIlJlc291cmNlXCIsIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgbmV1cm9ueEluc3RhbmNlVHlwZTogYXZhaWxhYmxlSW5zdGFuY2VQYXR0ZXJuc1swXS5uZXVyb254SW5zdGFuY2VUeXBlLFxuICAgICAgYXJ0aWZhY3RTM1ByZWZpeCxcbiAgICAgIGltYWdlOiBpbWFnZSxcbiAgICAgIGNvbW1hbmQ6IHZsbG1DbGlBcmdzLFxuICAgICAgZW52aXJvbm1lbnQsXG4gICAgICBzZWNyZXRzLFxuICAgIH0pO1xuICAgIHRoaXMudmxsbUFyZ3MgPSB2bGxtQXJncztcbiAgICB0aGlzLmNvbXBpbGVyID0gY29tcGlsZXI7XG4gIH1cbiAgLyoqXG4gICAqIENvbXBpbGUgdGhlIG1vZGVsIGFuZCByZXR1cm4gdGhlIGNvbXBpbGVkIG1vZGVsLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcGlsZWQgbW9kZWwuXG4gICAqL1xuICBjb21waWxlKCk6IFZsbG1OeGRJbmZlcmVuY2VDb21waWxlZE1vZGVsIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4udGhpcy5jb21waWxlci5jb21waWxlKCksXG4gICAgICB2bGxtQXJnczogdGhpcy52bGxtQXJncyxcbiAgICB9IHNhdGlzZmllcyBWbGxtTnhkSW5mZXJlbmNlQ29tcGlsZWRNb2RlbDtcbiAgfVxufVxuIl19
|
|
@@ -27,7 +27,7 @@ class VllmNxdInferenceImageBase {
|
|
|
27
27
|
}
|
|
28
28
|
exports.VllmNxdInferenceImageBase = VllmNxdInferenceImageBase;
|
|
29
29
|
_a = JSII_RTTI_SYMBOL_1;
|
|
30
|
-
VllmNxdInferenceImageBase[_a] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceImageBase", version: "0.0.
|
|
30
|
+
VllmNxdInferenceImageBase[_a] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceImageBase", version: "0.0.17" };
|
|
31
31
|
/**
|
|
32
32
|
* Inference container image for vLLM on NxD Inference.
|
|
33
33
|
* @example new VllmNxdInferenceImage(PytorchTrainingNeuronxImage.LATEST)
|
|
@@ -46,7 +46,7 @@ class VllmNxdInferenceImage extends VllmNxdInferenceImageBase {
|
|
|
46
46
|
}
|
|
47
47
|
exports.VllmNxdInferenceImage = VllmNxdInferenceImage;
|
|
48
48
|
_b = JSII_RTTI_SYMBOL_1;
|
|
49
|
-
VllmNxdInferenceImage[_b] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceImage", version: "0.0.
|
|
49
|
+
VllmNxdInferenceImage[_b] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceImage", version: "0.0.17" };
|
|
50
50
|
/**
|
|
51
51
|
* Task definition for VllmNxdInference.
|
|
52
52
|
*/
|
|
@@ -94,7 +94,7 @@ class VllmNxdInferenceTaskDefinition extends aws_ecs_patterns_1.NeuronxTaskDefin
|
|
|
94
94
|
}
|
|
95
95
|
exports.VllmNxdInferenceTaskDefinition = VllmNxdInferenceTaskDefinition;
|
|
96
96
|
_c = JSII_RTTI_SYMBOL_1;
|
|
97
|
-
VllmNxdInferenceTaskDefinition[_c] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceTaskDefinition", version: "0.0.
|
|
97
|
+
VllmNxdInferenceTaskDefinition[_c] = { fqn: "aws-cdk-neuronx-patterns.VllmNxdInferenceTaskDefinition", version: "0.0.17" };
|
|
98
98
|
/**
|
|
99
99
|
* ApplicationLoadBalancedVllmNxDInferenceService is a wrapper of ApplicationLoadBalancedNeuronxServiceBase.
|
|
100
100
|
* It provides a simple way to deploy vLLM on NxD Inference.
|
|
@@ -133,5 +133,5 @@ class ApplicationLoadBalancedVllmNxDInferenceService extends constructs_1.Constr
|
|
|
133
133
|
}
|
|
134
134
|
exports.ApplicationLoadBalancedVllmNxDInferenceService = ApplicationLoadBalancedVllmNxDInferenceService;
|
|
135
135
|
_d = JSII_RTTI_SYMBOL_1;
|
|
136
|
-
ApplicationLoadBalancedVllmNxDInferenceService[_d] = { fqn: "aws-cdk-neuronx-patterns.ApplicationLoadBalancedVllmNxDInferenceService", version: "0.0.
|
|
136
|
+
ApplicationLoadBalancedVllmNxDInferenceService[_d] = { fqn: "aws-cdk-neuronx-patterns.ApplicationLoadBalancedVllmNxDInferenceService", version: "0.0.17" };
|
|
137
137
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmxsbS1ueGQtaW5mZXJlbmNlLWVjcy1wYXR0ZXJucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92bGxtLW54ZC1pbmZlcmVuY2UvdmxsbS1ueGQtaW5mZXJlbmNlLWVjcy1wYXR0ZXJucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUF1QztBQUN2QywyQ0FBMkM7QUFNM0MsMkNBQXVDO0FBQ3ZDLCtCQUE0QjtBQUM1QiwrREFLa0M7QUFDbEMsNkNBQTZFO0FBRTdFLG1FQUE4RTtBQUc5RTs7R0FFRztBQUNILE1BQXNCLHlCQUF5QjtJQVc3QyxZQUFZLFlBQTJCO1FBQ3JDLElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQztJQUM1QyxDQUFDO0lBQ0Q7OztPQUdHO0lBQ0gsSUFBSSxhQUFhO1FBQ2YsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQzs7QUFwQkgsOERBcUJDOzs7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHlCQUF5QjtJQUVsRSxZQUFZLFlBQTJCO1FBQ3JDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUN2QyxJQUFBLFdBQUksRUFBQyxTQUFTLEVBQUUsNENBQTRDLENBQUMsRUFDN0Q7WUFDRSxTQUFTLEVBQUU7Z0JBQ1QsVUFBVSxFQUFFLFlBQVksQ0FBQyxTQUFTO2dCQUNsQyxTQUFTLEVBQUUsWUFBWSxDQUFDLFFBQVE7Z0JBQ2hDLGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYTthQUNwQztTQUNGLENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBZEgsc0RBZUM7OztBQTJCRDs7R0FFRztBQUNILE1BQWEsOEJBQStCLFNBQVEsd0NBQXFCO0lBQ3ZFLFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNWLEtBQTBDO1FBRTFDLE1BQU0sbUJBQW1CLEdBQ3ZCLEtBQUssQ0FBQyxtQkFBbUIsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLHVCQUF1QixDQUFDO1FBQzNFLE1BQU0sa0JBQWtCLEdBQ3RCLEtBQUssQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLGtCQUFrQixJQUFJLENBQUMsQ0FBQztRQUN2RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLEdBQUcsS0FBSztZQUNSLG1CQUFtQjtZQUNuQixrQkFBa0I7U0FDbkIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxLQUFLLEdBQ1QsS0FBSyxDQUFDLEtBQUs7WUFDWCxJQUFJLHFCQUFxQixDQUFDLHFDQUEyQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hFLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUM7UUFDdkQsTUFBTSxXQUFXLEdBQUcsdUNBQXlCLENBQUMsR0FBRyxDQUMvQyxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FDN0IsQ0FBQztRQUNGLGdDQUFnQztRQUNoQyxNQUFNLFdBQVcsR0FBMkI7WUFDMUMsR0FBRyxLQUFLLENBQUMsV0FBVztZQUNwQixxQkFBcUIsRUFBRSwrQkFBK0I7WUFDdEQseUJBQXlCLEVBQUUsMkJBQTJCO1lBQ3RELG1CQUFtQixFQUFFLGtCQUFrQixDQUFDLFFBQVEsRUFBRTtZQUNsRCxVQUFVLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxTQUFTO1lBQ3pDLHlCQUF5QixFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSztZQUNwRCw0QkFBNEIsRUFBRSxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQVE7U0FDM0QsQ0FBQztRQUVGLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUU7WUFDbkMsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFlBQVksRUFBRTtnQkFDWjtvQkFDRSxhQUFhLEVBQUUsSUFBSTtpQkFDcEI7YUFDRjtZQUNELFdBQVcsRUFBRTtnQkFDWCxPQUFPLEVBQUU7b0JBQ1AsV0FBVztvQkFDWCw0QkFBNEIsSUFBSSxtQkFBbUI7aUJBQ3BEO2dCQUNELFdBQVcsRUFBRSxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFDakM7WUFDRCxPQUFPLEVBQUUsV0FBVztZQUNwQixXQUFXO1NBQ1osQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFsREgsd0VBbURDOzs7QUFRRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBQ0gsTUFBYSw4Q0FBK0MsU0FBUSxzQkFBUztJQU0zRSxZQUNFLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixLQUEwRDtRQUUxRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLE1BQU0sUUFBUSxHQUFHLElBQUksd0RBQXFDLENBQ3hELElBQUksRUFDSixVQUFVLEVBQ1YsS0FBSyxDQUNOLENBQUM7UUFDRixRQUFRLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDO1lBQ3hDLElBQUksRUFBRSxTQUFTO1NBQ2hCLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUM7UUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsV0FBVyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQztRQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUM7SUFDaEQsQ0FBQzs7QUF6Qkgsd0dBMEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGVjcyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25MaXN0ZW5lcixcbiAgQXBwbGljYXRpb25Mb2FkQmFsYW5jZXIsXG4gIEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWROZXVyb254U2VydmljZSxcbiAgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWROZXVyb254U2VydmljZVByb3BzLFxuICBOZXVyb254VGFza0RlZmluaXRpb24sXG4gIE5ldXJvbnhUYXNrRGVmaW5pdGlvblByb3BzQmFzZSxcbn0gZnJvbSBcIi4uL2Jhc2UvYXdzLWVjcy1wYXR0ZXJuc1wiO1xuaW1wb3J0IHsgSU5ldXJvbnhJbWFnZSwgUHl0b3JjaFRyYWluaW5nTmV1cm9ueEltYWdlIH0gZnJvbSBcIi4uL2Jhc2UvbmV1cm9ueFwiO1xuaW1wb3J0IHsgSU5ldXJvbnhDb250YWluZXJJbWFnZSB9IGZyb20gXCIuLi9iYXNlL25ldXJvbngtY29tcGlsZXJcIjtcbmltcG9ydCB7IFZsbG1FbmdpbmVBcmd1bWVudHNQYXJzZXIgfSBmcm9tIFwiLi4vYmFzZS9zZXJ2ZXItZW5naW5lL3ZsbG0tZW5naW5lXCI7XG5pbXBvcnQgeyBWbGxtTnhkSW5mZXJlbmNlQ29tcGlsZWRNb2RlbCB9IGZyb20gXCIuL3ZsbG0tbnhkLWluZmVyZW5jZS1jb21waWxlclwiO1xuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIFZsbG1OeGRJbmZlcmVuY2VJbWFnZS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZsbG1OeGRJbmZlcmVuY2VJbWFnZUJhc2VcbiAgaW1wbGVtZW50cyBJTmV1cm9ueENvbnRhaW5lckltYWdlXG57XG4gIC8qKlxuICAgKiBUaGUgY29udGFpbmVyIGltYWdlLlxuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgaW1hZ2U6IGVjcy5Db250YWluZXJJbWFnZTtcbiAgLyoqXG4gICAqIFRoZSBuZXVyb254IFNESyB2ZXJzaW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgc2RrVmVyc2lvbjogc3RyaW5nO1xuICBjb25zdHJ1Y3RvcihuZXJ1b254SW1hZ2U6IElOZXVyb254SW1hZ2UpIHtcbiAgICB0aGlzLnNka1ZlcnNpb24gPSBuZXJ1b254SW1hZ2Uuc2RrVmVyc2lvbjtcbiAgfVxuICAvKipcbiAgICogVGhlIEdpdCBicmFuY2ggbmFtZSBmb3IgYXdzLW5ldXJvbi91cHN0cmVhbWluZy10by12bGxtLlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MtbmV1cm9uL3Vwc3RyZWFtaW5nLXRvLXZsbG1cbiAgICovXG4gIGdldCB2bGxtR2l0QnJhbmNoKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFwibWFpblwiO1xuICB9XG59XG5cbi8qKlxuICogSW5mZXJlbmNlIGNvbnRhaW5lciBpbWFnZSBmb3IgdkxMTSBvbiBOeEQgSW5mZXJlbmNlLlxuICogQGV4YW1wbGUgbmV3IFZsbG1OeGRJbmZlcmVuY2VJbWFnZShQeXRvcmNoVHJhaW5pbmdOZXVyb254SW1hZ2UuTEFURVNUKVxuICovXG5leHBvcnQgY2xhc3MgVmxsbU54ZEluZmVyZW5jZUltYWdlIGV4dGVuZHMgVmxsbU54ZEluZmVyZW5jZUltYWdlQmFzZSB7XG4gIHJlYWRvbmx5IGltYWdlOiBlY3MuQ29udGFpbmVySW1hZ2U7XG4gIGNvbnN0cnVjdG9yKG5lcnVvbnhJbWFnZTogSU5ldXJvbnhJbWFnZSkge1xuICAgIHN1cGVyKG5lcnVvbnhJbWFnZSk7XG4gICAgdGhpcy5pbWFnZSA9IGVjcy5Db250YWluZXJJbWFnZS5mcm9tQXNzZXQoXG4gICAgICBqb2luKF9fZGlybmFtZSwgXCIuLi8uLi9zY3JpcHRzL2luZmVyZW5jZS92bGxtLW54ZC1pbmZlcmVuY2VcIiksXG4gICAgICB7XG4gICAgICAgIGJ1aWxkQXJnczoge1xuICAgICAgICAgIElNQUdFX05BTUU6IG5lcnVvbnhJbWFnZS5pbWFnZU5hbWUsXG4gICAgICAgICAgSU1BR0VfVEFHOiBuZXJ1b254SW1hZ2UuaW1hZ2VUYWcsXG4gICAgICAgICAgVkxMTV9HSVRfQlJBTkNIOiB0aGlzLnZsbG1HaXRCcmFuY2gsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICk7XG4gIH1cbn1cblxuLyoqXG4gKiBUYXNrIGRlZmluaXRpb24gZm9yIFZsbG1OeGRJbmZlcmVuY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmxsbU54ZEluZmVyZW5jZVRhc2tEZWZpbml0aW9uUHJvcHNcbiAgZXh0ZW5kcyBOZXVyb254VGFza0RlZmluaXRpb25Qcm9wc0Jhc2Uge1xuICAvKipcbiAgICogVGhlIG1vZGVsIHRvIGJlIGNvbXBpbGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGlsZWRNb2RlbDogVmxsbU54ZEluZmVyZW5jZUNvbXBpbGVkTW9kZWw7XG4gIC8qKlxuICAgKiBUaGUgaW1hZ2UgdG8gYmUgdXNlZCBmb3IgdGhlIGNvbnRhaW5lci5cbiAgICogQGRlZmF1bHQgLSBsYXRlc3QgVmxsbU54ZEluZmVyZW5jZUltYWdlXG4gICAqL1xuICByZWFkb25seSBpbWFnZT86IFZsbG1OeGRJbmZlcmVuY2VJbWFnZTtcbiAgLyoqXG4gICAqIFRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gcGFzcyB0byB0aGUgY29udGFpbmVyLlxuICAgKiBUaGlzIGlzIG9ubHkgYXBwbGljYWJsZSB3aGVuIHVzaW5nIGNvbnRhaW5lciBydW50aW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50Pzoge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZztcbiAgfTtcbn1cblxuLyoqXG4gKiBUYXNrIGRlZmluaXRpb24gZm9yIFZsbG1OeGRJbmZlcmVuY2UuXG4gKi9cbmV4cG9ydCBjbGFzcyBWbGxtTnhkSW5mZXJlbmNlVGFza0RlZmluaXRpb24gZXh0ZW5kcyBOZXVyb254VGFza0RlZmluaXRpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IFZsbG1OeGRJbmZlcmVuY2VUYXNrRGVmaW5pdGlvblByb3BzLFxuICApIHtcbiAgICBjb25zdCBuZXVyb254SW5zdGFuY2VUeXBlID1cbiAgICAgIHByb3BzLm5ldXJvbnhJbnN0YW5jZVR5cGUgPz8gcHJvcHMuY29tcGlsZWRNb2RlbC5jb21waWxlVGltZUluc3RhbmNlVHlwZTtcbiAgICBjb25zdCB0ZW5zb3JQYXJhbGxlbFNpemUgPVxuICAgICAgcHJvcHMuY29tcGlsZWRNb2RlbC52bGxtQXJncy50ZW5zb3JQYXJhbGxlbFNpemUgPz8gMTtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgbmV1cm9ueEluc3RhbmNlVHlwZSxcbiAgICAgIHRlbnNvclBhcmFsbGVsU2l6ZSxcbiAgICB9KTtcbiAgICBjb25zdCBpbWFnZSA9XG4gICAgICBwcm9wcy5pbWFnZSA/P1xuICAgICAgbmV3IFZsbG1OeGRJbmZlcmVuY2VJbWFnZShQeXRvcmNoVHJhaW5pbmdOZXVyb254SW1hZ2UuTEFURVNUKTtcbiAgICBjb25zdCBwb3J0ID0gcHJvcHMuY29tcGlsZWRNb2RlbC52bGxtQXJncy5wb3J0ID8/IDgwMDA7XG4gICAgY29uc3QgdmxsbUNsaUFyZ3MgPSBWbGxtRW5naW5lQXJndW1lbnRzUGFyc2VyLmNsaShcbiAgICAgIHByb3BzLmNvbXBpbGVkTW9kZWwudmxsbUFyZ3MsXG4gICAgKTtcbiAgICAvLyBQcmVwYXJlIGVudmlyb25tZW50IHZhcmlhYmxlc1xuICAgIGNvbnN0IGVudmlyb25tZW50OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge1xuICAgICAgLi4ucHJvcHMuZW52aXJvbm1lbnQsXG4gICAgICBWTExNX05FVVJPTl9GUkFNRVdPUks6IFwibmV1cm9ueC1kaXN0cmlidXRlZC1pbmZlcmVuY2VcIixcbiAgICAgIE5FVVJPTl9DT01QSUxFRF9BUlRJRkFDVFM6IFwibmV1cm9uLWNvbXBpbGVkLWFydGlmYWN0c1wiLFxuICAgICAgTkVVUk9OX1JUX05VTV9DT1JFUzogdGVuc29yUGFyYWxsZWxTaXplLnRvU3RyaW5nKCksXG4gICAgICBNT0RFTF9OQU1FOiBwcm9wcy5jb21waWxlZE1vZGVsLm1vZGVsTmFtZSxcbiAgICAgIENPTVBJTEVEX0FSVElGQUNUU19TM19VUkk6IHByb3BzLmNvbXBpbGVkTW9kZWwuczNVcmksXG4gICAgICBDT01QSUxFRF9BUlRJRkFDVFNfUzNfUFJFRklYOiBwcm9wcy5jb21waWxlZE1vZGVsLnMzUHJlZml4LFxuICAgIH07XG5cbiAgICB0aGlzLmFkZENvbnRhaW5lcldpdGhEZWZhdWx0KFwidkxMTVwiLCB7XG4gICAgICBpbWFnZTogaW1hZ2UuaW1hZ2UsXG4gICAgICBwb3J0TWFwcGluZ3M6IFtcbiAgICAgICAge1xuICAgICAgICAgIGNvbnRhaW5lclBvcnQ6IHBvcnQsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgaGVhbHRoQ2hlY2s6IHtcbiAgICAgICAgY29tbWFuZDogW1xuICAgICAgICAgIFwiQ01ELVNIRUxMXCIsXG4gICAgICAgICAgYGN1cmwgLWYgaHR0cDovL2xvY2FsaG9zdDoke3BvcnR9L2hlYWx0aCB8fCBleGl0IDFgLFxuICAgICAgICBdLFxuICAgICAgICBzdGFydFBlcmlvZDogRHVyYXRpb24ubWludXRlcyg1KSxcbiAgICAgIH0sXG4gICAgICBjb21tYW5kOiB2bGxtQ2xpQXJncyxcbiAgICAgIGVudmlyb25tZW50LFxuICAgIH0pO1xuICB9XG59XG5cbi8qKlxuICogUHJvcHMgZm9yIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkVmxsbU54REluZmVyZW5jZVNlcnZpY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRWbGxtTnhESW5mZXJlbmNlU2VydmljZVByb3BzXG4gIGV4dGVuZHMgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWROZXVyb254U2VydmljZVByb3BzIHt9XG5cbi8qKlxuICogQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRWbGxtTnhESW5mZXJlbmNlU2VydmljZSBpcyBhIHdyYXBwZXIgb2YgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWROZXVyb254U2VydmljZUJhc2UuXG4gKiBJdCBwcm92aWRlcyBhIHNpbXBsZSB3YXkgdG8gZGVwbG95IHZMTE0gb24gTnhEIEluZmVyZW5jZS5cbiAqIEBleGFtcGxlXG4gKiBjb25zdCBjb21waWxlciA9IG5ldyBWbGxtTnhkSW5mZXJlbmNlQ29tcGlsZXIodGhpcywgXCJDb21waWxlclwiLCB7XG4gKiAgIHZwYyxcbiAqICAgYnVja2V0LFxuICogICBtb2RlbDogTW9kZWwuZnJvbUh1Z2dpbmdGYWNlKFwiZXhhbXBsZS9leGFtcGxlLTdiLWNoYXRcIiksXG4gKiB9KTtcbiAqIGNvbnN0IGNvbXBpbGVkTW9kZWwgPSBjb21waWxlci5jb21waWxlKCk7XG4gKiBjb25zdCB0YXNrRGVmaW5pdGlvbiA9IG5ldyBWbGxtTnhkSW5mZXJlbmNlVGFza0RlZmluaXRpb24oXG4gKiAgIHRoaXMsXG4gKiAgIFwiVGFza0RlZmluaXRpb25cIixcbiAqICAge1xuICogICAgIHZwYyxcbiAqICAgICBjb21waWxlZE1vZGVsLFxuICogICB9LFxuICogKTtcbiAqIG5ldyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZFZsbG1OeERJbmZlcmVuY2VTZXJ2aWNlKHRoaXMsIFwiU2VydmljZVwiLCB7XG4gKiAgIHRhc2tEZWZpbml0aW9uLFxuICogfSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZFZsbG1OeERJbmZlcmVuY2VTZXJ2aWNlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgbG9hZEJhbGFuY2VyOiBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlcjtcbiAgcmVhZG9ubHkgbGlzdGVuZXI6IEFwcGxpY2F0aW9uTGlzdGVuZXI7XG4gIHJlYWRvbmx5IHRhcmdldEdyb3VwOiBBcHBsaWNhdGlvblRhcmdldEdyb3VwO1xuICByZWFkb25seSBzZXJ2aWNlOiBlY3MuRWMyU2VydmljZTtcbiAgcmVhZG9ubHkgdGFza0RlZmluaXRpb246IGVjcy5FYzJUYXNrRGVmaW5pdGlvbjtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZFZsbG1OeERJbmZlcmVuY2VTZXJ2aWNlUHJvcHMsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWROZXVyb254U2VydmljZShcbiAgICAgIHRoaXMsXG4gICAgICBcIlJlc291cmNlXCIsXG4gICAgICBwcm9wcyxcbiAgICApO1xuICAgIHJlc291cmNlLnRhcmdldEdyb3VwLmNvbmZpZ3VyZUhlYWx0aENoZWNrKHtcbiAgICAgIHBhdGg6IFwiL2hlYWx0aFwiLFxuICAgIH0pO1xuICAgIHRoaXMubG9hZEJhbGFuY2VyID0gcmVzb3VyY2UubG9hZEJhbGFuY2VyO1xuICAgIHRoaXMubGlzdGVuZXIgPSByZXNvdXJjZS5saXN0ZW5lcjtcbiAgICB0aGlzLnRhcmdldEdyb3VwID0gcmVzb3VyY2UudGFyZ2V0R3JvdXA7XG4gICAgdGhpcy5zZXJ2aWNlID0gcmVzb3VyY2Uuc2VydmljZTtcbiAgICB0aGlzLnRhc2tEZWZpbml0aW9uID0gcmVzb3VyY2UudGFza0RlZmluaXRpb247XG4gIH1cbn1cbiJdfQ==
|