@horietakehiro/aws-cdk-utul 0.41.58 → 0.41.60

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.
Files changed (31) hide show
  1. package/lib/types/cfn-resource-types/aws-datazone-environmentblueprintconfiguration.d.ts +10 -0
  2. package/lib/types/cfn-resource-types/aws-datazone-environmentblueprintconfiguration.js +1 -1
  3. package/lib/types/cfn-resource-types/aws-datazone-projectprofile.d.ts +1 -0
  4. package/lib/types/cfn-resource-types/aws-datazone-projectprofile.js +1 -1
  5. package/lib/types/cfn-resource-types/aws-docdb-globalcluster.d.ts +60 -0
  6. package/lib/types/cfn-resource-types/aws-docdb-globalcluster.js +3 -0
  7. package/lib/types/cfn-resource-types/aws-ec2-ipampool.d.ts +1 -1
  8. package/lib/types/cfn-resource-types/aws-ec2-ipampool.js +1 -1
  9. package/lib/types/cfn-resource-types/aws-ecs-capacityprovider.d.ts +1 -1
  10. package/lib/types/cfn-resource-types/aws-ecs-capacityprovider.js +1 -1
  11. package/lib/types/cfn-resource-types/aws-gamelift-containerfleet.d.ts +142 -142
  12. package/lib/types/cfn-resource-types/aws-gamelift-containerfleet.js +1 -1
  13. package/lib/types/cfn-resource-types/aws-gamelift-fleet.d.ts +123 -123
  14. package/lib/types/cfn-resource-types/aws-gamelift-fleet.js +1 -1
  15. package/lib/types/cfn-resource-types/aws-kafkaconnect-connector.d.ts +1 -1
  16. package/lib/types/cfn-resource-types/aws-kafkaconnect-connector.js +1 -1
  17. package/lib/types/cfn-resource-types/aws-mediapackagev2-originendpoint.d.ts +8 -0
  18. package/lib/types/cfn-resource-types/aws-mediapackagev2-originendpoint.js +1 -1
  19. package/lib/types/cfn-resource-types/aws-quicksight-actionconnector.d.ts +148 -0
  20. package/lib/types/cfn-resource-types/aws-quicksight-actionconnector.js +3 -0
  21. package/lib/types/cfn-resource-types/aws-quicksight-custompermissions.d.ts +27 -15
  22. package/lib/types/cfn-resource-types/aws-quicksight-custompermissions.js +1 -1
  23. package/lib/types/cfn-resource-types/aws-rtbfabric-inboundexternallink.d.ts +2 -0
  24. package/lib/types/cfn-resource-types/aws-rtbfabric-inboundexternallink.js +1 -1
  25. package/lib/types/cfn-resource-types/aws-sagemaker-userprofile.d.ts +1 -1
  26. package/lib/types/cfn-resource-types/aws-sagemaker-userprofile.js +1 -1
  27. package/lib/types/cfn-resource-types/aws-wisdom-aiagent.d.ts +81 -2
  28. package/lib/types/cfn-resource-types/aws-wisdom-aiagent.js +1 -1
  29. package/lib/types/cfn-resource-types.d.ts +4 -0
  30. package/lib/types/cfn-resource-types.js +28 -24
  31. package/package.json +1 -1
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWdhbWVsaWZ0LWNvbnRhaW5lcmZsZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWdhbWVsaWZ0LWNvbnRhaW5lcmZsZWV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBMb2NhdGlvbiA9IHN0cmluZ1xuLyoqXG4gKiBBIGxpc3Qgb2YgZmxlZXQgYWN0aW9ucyB0aGF0IGhhdmUgYmVlbiBzdXNwZW5kZWQgaW4gdGhlIGZsZWV0IGxvY2F0aW9uLlxuICogXG4gKiBAbWF4SXRlbXMgMVxuICovXG5leHBvcnQgdHlwZSBTdG9wcGVkQWN0aW9ucyA9IChcIkFVVE9fU0NBTElOR1wiKVtdXG4vKipcbiAqIENvbmZpZ3VyZXMgdGhlIHNlcnZpY2UgdGhhdCBwcm92aWRlcyBsb2dzLlxuICovXG5leHBvcnQgdHlwZSBMb2dEZXN0aW5hdGlvbiA9IChcIk5PTkVcIiB8IFwiQ0xPVURXQVRDSFwiIHwgXCJTM1wiKVxuXG4vKipcbiAqIFRoZSBBV1M6OkdhbWVMaWZ0OjpDb250YWluZXJGbGVldCByZXNvdXJjZSBjcmVhdGVzIGFuIEFtYXpvbiBHYW1lTGlmdCAoR2FtZUxpZnQpIGNvbnRhaW5lciBmbGVldCB0byBob3N0IGdhbWUgc2VydmVycy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBfQVdTX0dBTUVMSUZUX0NPTlRBSU5FUkZMRUVUIHtcbi8qKlxuICogVW5pcXVlIGZsZWV0IElEXG4gKi9cbkZsZWV0SWQ/OiBzdHJpbmdcbi8qKlxuICogQSB1bmlxdWUgaWRlbnRpZmllciBmb3IgYW4gQVdTIElBTSByb2xlIHRoYXQgbWFuYWdlcyBhY2Nlc3MgdG8geW91ciBBV1Mgc2VydmljZXMuIENyZWF0ZSBhIHJvbGUgb3IgbG9vayB1cCBhIHJvbGUncyBBUk4gZnJvbSB0aGUgSUFNIGRhc2hib2FyZCBpbiB0aGUgQVdTIE1hbmFnZW1lbnQgQ29uc29sZS5cbiAqL1xuRmxlZXRSb2xlQXJuOiBzdHJpbmdcbi8qKlxuICogQSBodW1hbi1yZWFkYWJsZSBkZXNjcmlwdGlvbiBvZiBhIGZsZWV0LlxuICovXG5EZXNjcmlwdGlvbj86IHN0cmluZ1xuLyoqXG4gKiBUaGUgbmFtZSBvZiB0aGUgY29udGFpbmVyIGdyb3VwIGRlZmluaXRpb24gdGhhdCB3aWxsIGJlIGNyZWF0ZWQgcGVyIGdhbWUgc2VydmVyLiBZb3UgbXVzdCBzcGVjaWZ5IEdBTUVfU0VSVkVSIGNvbnRhaW5lciBncm91cC4gWW91IGhhdmUgdGhlIG9wdGlvbiB0byBhbHNvIHNwZWNpZnkgb25lIFBFUl9JTlNUQU5DRSBjb250YWluZXIgZ3JvdXAuXG4gKi9cbkdhbWVTZXJ2ZXJDb250YWluZXJHcm91cERlZmluaXRpb25OYW1lPzogc3RyaW5nXG4vKipcbiAqIFRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgZ2FtZSBzZXJ2ZXIgY29udGFpbmVyIGdyb3VwIGRlZmluaXRpb24uIFRoaXMgZmllbGQgd2lsbCBiZSBlbXB0eSBpZiBHYW1lU2VydmVyQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uTmFtZSBpcyBub3Qgc3BlY2lmaWVkLlxuICovXG5HYW1lU2VydmVyQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uQXJuPzogc3RyaW5nXG4vKipcbiAqIFRoZSBuYW1lIG9mIHRoZSBjb250YWluZXIgZ3JvdXAgZGVmaW5pdGlvbiB0aGF0IHdpbGwgYmUgY3JlYXRlZCBwZXIgaW5zdGFuY2UuIFRoaXMgZmllbGQgaXMgb3B0aW9uYWwgaWYgeW91IHNwZWNpZnkgR2FtZVNlcnZlckNvbnRhaW5lckdyb3VwRGVmaW5pdGlvbk5hbWUuXG4gKi9cblBlckluc3RhbmNlQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uTmFtZT86IHN0cmluZ1xuLyoqXG4gKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIHBlciBpbnN0YW5jZSBjb250YWluZXIgZ3JvdXAgZGVmaW5pdGlvbi4gVGhpcyBmaWVsZCB3aWxsIGJlIGVtcHR5IGlmIFBlckluc3RhbmNlQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uTmFtZSBpcyBub3Qgc3BlY2lmaWVkLlxuICovXG5QZXJJbnN0YW5jZUNvbnRhaW5lckdyb3VwRGVmaW5pdGlvbkFybj86IHN0cmluZ1xuSW5zdGFuY2VDb25uZWN0aW9uUG9ydFJhbmdlPzogQ29ubmVjdGlvblBvcnRSYW5nZVxuLyoqXG4gKiBBIHJhbmdlIG9mIElQIGFkZHJlc3NlcyBhbmQgcG9ydCBzZXR0aW5ncyB0aGF0IGFsbG93IGluYm91bmQgdHJhZmZpYyB0byBjb25uZWN0IHRvIHNlcnZlciBwcm9jZXNzZXMgb24gYW4gQW1hem9uIEdhbWVMaWZ0IHNlcnZlci5cbiAqIFxuICogQG1heEl0ZW1zIDUwXG4gKi9cbkluc3RhbmNlSW5ib3VuZFBlcm1pc3Npb25zPzogSXBQZXJtaXNzaW9uW11cbi8qKlxuICogVGhlIG51bWJlciBvZiBkZXNpcmVkIGdhbWUgc2VydmVyIGNvbnRhaW5lciBncm91cHMgcGVyIGluc3RhbmNlLCBhIG51bWJlciBiZXR3ZWVuIDEtNTAwMC5cbiAqL1xuR2FtZVNlcnZlckNvbnRhaW5lckdyb3Vwc1Blckluc3RhbmNlPzogbnVtYmVyXG4vKipcbiAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBnYW1lIHNlcnZlciBjb250YWluZXIgZ3JvdXBzIHBlciBpbnN0YW5jZSwgYSBudW1iZXIgYmV0d2VlbiAxLTUwMDAuXG4gKi9cbk1heGltdW1HYW1lU2VydmVyQ29udGFpbmVyR3JvdXBzUGVySW5zdGFuY2U/OiBudW1iZXJcbi8qKlxuICogQSB0aW1lIHN0YW1wIGluZGljYXRpbmcgd2hlbiB0aGlzIGRhdGEgb2JqZWN0IHdhcyBjcmVhdGVkLiBGb3JtYXQgaXMgYSBudW1iZXIgZXhwcmVzc2VkIGluIFVuaXggdGltZSBhcyBtaWxsaXNlY29uZHMgKGZvciBleGFtcGxlIFwiMTQ2OTQ5ODQ2OC4wNTdcIikuXG4gKi9cbkNyZWF0aW9uVGltZT86IHN0cmluZ1xuLyoqXG4gKiBUaGUgY3VycmVudCBzdGF0dXMgb2YgdGhlIGNvbnRhaW5lciBmbGVldC5cbiAqL1xuU3RhdHVzPzogKFwiUEVORElOR1wiIHwgXCJDUkVBVElOR1wiIHwgXCJDUkVBVEVEXCIgfCBcIkFDVElWQVRJTkdcIiB8IFwiQUNUSVZFXCIgfCBcIlVQREFUSU5HXCIgfCBcIkRFTEVUSU5HXCIpXG5EZXBsb3ltZW50RGV0YWlscz86IERlcGxveW1lbnREZXRhaWxzXG5EZXBsb3ltZW50Q29uZmlndXJhdGlvbj86IERlcGxveW1lbnRDb25maWd1cmF0aW9uXG4vKipcbiAqIFRoZSBuYW1lIG9mIGFuIEVDMiBpbnN0YW5jZSB0eXBlIHRoYXQgaXMgc3VwcG9ydGVkIGluIEFtYXpvbiBHYW1lTGlmdC4gQSBmbGVldCBpbnN0YW5jZSB0eXBlIGRldGVybWluZXMgdGhlIGNvbXB1dGluZyByZXNvdXJjZXMgb2YgZWFjaCBpbnN0YW5jZSBpbiB0aGUgZmxlZXQsIGluY2x1ZGluZyBDUFUsIG1lbW9yeSwgc3RvcmFnZSwgYW5kIG5ldHdvcmtpbmcgY2FwYWNpdHkuIEFtYXpvbiBHYW1lTGlmdCBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIEVDMiBpbnN0YW5jZSB0eXBlcy4gU2VlIEFtYXpvbiBFQzIgSW5zdGFuY2UgVHlwZXMgZm9yIGRldGFpbGVkIGRlc2NyaXB0aW9ucy5cbiAqL1xuSW5zdGFuY2VUeXBlPzogc3RyaW5nXG4vKipcbiAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHVzZSBPbi1EZW1hbmQgaW5zdGFuY2VzIG9yIFNwb3QgaW5zdGFuY2VzIGZvciB0aGlzIGZsZWV0LiBJZiBlbXB0eSwgdGhlIGRlZmF1bHQgaXMgT05fREVNQU5ELiBCb3RoIGNhdGVnb3JpZXMgb2YgaW5zdGFuY2VzIHVzZSBpZGVudGljYWwgaGFyZHdhcmUgYW5kIGNvbmZpZ3VyYXRpb25zIGJhc2VkIG9uIHRoZSBpbnN0YW5jZSB0eXBlIHNlbGVjdGVkIGZvciB0aGlzIGZsZWV0LlxuICovXG5CaWxsaW5nVHlwZT86IChcIk9OX0RFTUFORFwiIHwgXCJTUE9UXCIpXG4vKipcbiAqIEBtYXhJdGVtcyAxMDBcbiAqL1xuTG9jYXRpb25zPzogTG9jYXRpb25Db25maWd1cmF0aW9uW11cbi8qKlxuICogQSBsaXN0IG9mIHJ1bGVzIHRoYXQgY29udHJvbCBob3cgYSBmbGVldCBpcyBzY2FsZWQuXG4gKiBcbiAqIEBtYXhJdGVtcyA1MFxuICovXG5TY2FsaW5nUG9saWNpZXM/OiBTY2FsaW5nUG9saWN5W11cbi8qKlxuICogVGhlIG5hbWUgb2YgYW4gQW1hem9uIENsb3VkV2F0Y2ggbWV0cmljIGdyb3VwLiBBIG1ldHJpYyBncm91cCBhZ2dyZWdhdGVzIHRoZSBtZXRyaWNzIGZvciBhbGwgZmxlZXRzIGluIHRoZSBncm91cC4gU3BlY2lmeSBhIHN0cmluZyBjb250YWluaW5nIHRoZSBtZXRyaWMgZ3JvdXAgbmFtZS4gWW91IGNhbiB1c2UgYW4gZXhpc3RpbmcgbmFtZSBvciB1c2UgYSBuZXcgbmFtZSB0byBjcmVhdGUgYSBuZXcgbWV0cmljIGdyb3VwLiBDdXJyZW50bHksIHRoaXMgcGFyYW1ldGVyIGNhbiBoYXZlIG9ubHkgb25lIHN0cmluZy5cbiAqIFxuICogQG1heEl0ZW1zIDFcbiAqL1xuTWV0cmljR3JvdXBzPzogc3RyaW5nW11cbi8qKlxuICogQSBnYW1lIHNlc3Npb24gcHJvdGVjdGlvbiBwb2xpY3kgdG8gYXBwbHkgdG8gYWxsIGdhbWUgc2Vzc2lvbnMgaG9zdGVkIG9uIGluc3RhbmNlcyBpbiB0aGlzIGZsZWV0LiBXaGVuIHByb3RlY3RlZCwgYWN0aXZlIGdhbWUgc2Vzc2lvbnMgY2Fubm90IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNldCwgaW5zdGFuY2VzIGluIHRoaXMgZmxlZXQgZGVmYXVsdCB0byBubyBwcm90ZWN0aW9uLiBZb3UgY2FuIGNoYW5nZSBhIGZsZWV0J3MgcHJvdGVjdGlvbiBwb2xpY3kgdG8gYWZmZWN0IGZ1dHVyZSBnYW1lIHNlc3Npb25zIG9uIHRoZSBmbGVldC4gWW91IGNhbiBhbHNvIHNldCBwcm90ZWN0aW9uIGZvciBpbmRpdmlkdWFsIGdhbWUgc2Vzc2lvbnMuXG4gKi9cbk5ld0dhbWVTZXNzaW9uUHJvdGVjdGlvblBvbGljeT86IChcIkZ1bGxQcm90ZWN0aW9uXCIgfCBcIk5vUHJvdGVjdGlvblwiKVxuR2FtZVNlc3Npb25DcmVhdGlvbkxpbWl0UG9saWN5PzogR2FtZVNlc3Npb25DcmVhdGlvbkxpbWl0UG9saWN5XG5Mb2dDb25maWd1cmF0aW9uPzogTG9nQ29uZmlndXJhdGlvblxuLyoqXG4gKiBBbiBhcnJheSBvZiBrZXktdmFsdWUgcGFpcnMgdG8gYXBwbHkgdG8gdGhpcyByZXNvdXJjZS5cbiAqIFxuICogQG1heEl0ZW1zIDIwMFxuICovXG5UYWdzPzogVGFnW11cbi8qKlxuICogVGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIHRoYXQgaXMgYXNzaWduZWQgdG8gYSBBbWF6b24gR2FtZUxpZnQgY29udGFpbmVyIGZsZWV0IHJlc291cmNlIGFuZCB1bmlxdWVseSBpZGVudGlmaWVzIGl0IGFjcm9zcyBhbGwgQVdTIFJlZ2lvbnMuXG4gKi9cbkZsZWV0QXJuPzogc3RyaW5nXG59XG4vKipcbiAqIERlZmluZXMgdGhlIHJhbmdlIG9mIHBvcnRzIG9uIHRoZSBpbnN0YW5jZSB0aGF0IGFsbG93IGluYm91bmQgdHJhZmZpYyB0byBjb25uZWN0IHdpdGggY29udGFpbmVycyBpbiBhIGZsZWV0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpb25Qb3J0UmFuZ2Uge1xuLyoqXG4gKiBBIHN0YXJ0aW5nIHZhbHVlIGZvciBhIHJhbmdlIG9mIGFsbG93ZWQgcG9ydCBudW1iZXJzLlxuICovXG5Gcm9tUG9ydDogbnVtYmVyXG4vKipcbiAqIEFuIGVuZGluZyB2YWx1ZSBmb3IgYSByYW5nZSBvZiBhbGxvd2VkIHBvcnQgbnVtYmVycy4gUG9ydCBudW1iZXJzIGFyZSBlbmQtaW5jbHVzaXZlLiBUaGlzIHZhbHVlIG11c3QgYmUgaGlnaGVyIHRoYW4gRnJvbVBvcnQuXG4gKi9cblRvUG9ydDogbnVtYmVyXG59XG4vKipcbiAqIEEgcmFuZ2Ugb2YgSVAgYWRkcmVzc2VzIGFuZCBwb3J0IHNldHRpbmdzIHRoYXQgYWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIGNvbm5lY3QgdG8gc2VydmVyIHByb2Nlc3NlcyBvbiBhbiBBbWF6b24gR2FtZUxpZnQgaG9zdGluZyByZXNvdXJjZS4gTmV3IGdhbWUgc2Vzc2lvbnMgdGhhdCBhcmUgc3RhcnRlZCBvbiB0aGUgZmxlZXQgYXJlIGFzc2lnbmVkIGFuIElQIGFkZHJlc3MvcG9ydCBudW1iZXIgY29tYmluYXRpb24sIHdoaWNoIG11c3QgZmFsbCBpbnRvIHRoZSBmbGVldCdzIGFsbG93ZWQgcmFuZ2VzLiBGb3IgZmxlZXRzIGNyZWF0ZWQgd2l0aCBhIGN1c3RvbSBnYW1lIHNlcnZlciwgdGhlIHJhbmdlcyByZWZsZWN0IHRoZSBzZXJ2ZXIncyBnYW1lIHNlc3Npb24gYXNzaWdubWVudHMuIEZvciBSZWFsdGltZSBTZXJ2ZXJzIGZsZWV0cywgQW1hem9uIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgb3BlbnMgdHdvIHBvcnQgcmFuZ2VzLCBvbmUgZm9yIFRDUCBtZXNzYWdpbmcgYW5kIG9uZSBmb3IgVURQLCBmb3IgdXNlIGJ5IHRoZSBSZWFsdGltZSBzZXJ2ZXJzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElwUGVybWlzc2lvbiB7XG4vKipcbiAqIEEgc3RhcnRpbmcgdmFsdWUgZm9yIGEgcmFuZ2Ugb2YgYWxsb3dlZCBwb3J0IG51bWJlcnMuXG4gKi9cbkZyb21Qb3J0OiBudW1iZXJcbi8qKlxuICogQSByYW5nZSBvZiBhbGxvd2VkIElQIGFkZHJlc3Nlcy4gVGhpcyB2YWx1ZSBtdXN0IGJlIGV4cHJlc3NlZCBpbiBDSURSIG5vdGF0aW9uLiBFeGFtcGxlOiBcIjAwMC4wMDAuMDAwLjAwMC9bc3VibmV0IG1hc2tdXCIgb3Igb3B0aW9uYWxseSB0aGUgc2hvcnRlbmVkIHZlcnNpb24gXCIwLjAuMC4wL1tzdWJuZXQgbWFza11cIi5cbiAqL1xuSXBSYW5nZTogc3RyaW5nXG4vKipcbiAqIFRoZSBuZXR3b3JrIGNvbW11bmljYXRpb24gcHJvdG9jb2wgdXNlZCBieSB0aGUgZmxlZXQuXG4gKi9cblByb3RvY29sOiAoXCJUQ1BcIiB8IFwiVURQXCIpXG4vKipcbiAqIEFuIGVuZGluZyB2YWx1ZSBmb3IgYSByYW5nZSBvZiBhbGxvd2VkIHBvcnQgbnVtYmVycy4gUG9ydCBudW1iZXJzIGFyZSBlbmQtaW5jbHVzaXZlLiBUaGlzIHZhbHVlIG11c3QgYmUgaGlnaGVyIHRoYW4gRnJvbVBvcnQuXG4gKi9cblRvUG9ydDogbnVtYmVyXG59XG4vKipcbiAqIFByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBsYXN0IGRlcGxveW1lbnQgSUQgYW5kIGl0cyBzdGF0dXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudERldGFpbHMge1xuLyoqXG4gKiBUaGUgSUQgb2YgdGhlIGxhc3QgZGVwbG95bWVudCBvbiB0aGUgY29udGFpbmVyIGZsZWV0LiBUaGlzIGZpZWxkIHdpbGwgYmUgZW1wdHkgaWYgdGhlIGNvbnRhaW5lciBmbGVldCBkb2VzIG5vdCBoYXZlIGEgQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uIGF0dGFjaGVkLlxuICovXG5MYXRlc3REZXBsb3ltZW50SWQ/OiBzdHJpbmdcbn1cbi8qKlxuICogUHJvdmlkZXMgZGV0YWlscyBhYm91dCBob3cgdG8gZHJhaW4gb2xkIHRhc2tzIGFuZCByZXBsYWNlIHRoZW0gd2l0aCBuZXcgdXBkYXRlZCB0YXNrcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXBsb3ltZW50Q29uZmlndXJhdGlvbiB7XG4vKipcbiAqIFRoZSBwcm90ZWN0aW9uIHN0cmF0ZWd5IGZvciBkZXBsb3ltZW50IG9uIHRoZSBjb250YWluZXIgZmxlZXQ7IGRlZmF1bHRzIHRvIFdJVEhfUFJPVEVDVElPTi5cbiAqL1xuUHJvdGVjdGlvblN0cmF0ZWd5PzogKFwiV0lUSF9QUk9URUNUSU9OXCIgfCBcIklHTk9SRV9QUk9URUNUSU9OXCIpXG4vKipcbiAqIFRoZSBtaW5pbXVtIHBlcmNlbnRhZ2Ugb2YgaGVhbHRoeSByZXF1aXJlZDsgZGVmYXVsdHMgdG8gNzUuXG4gKi9cbk1pbmltdW1IZWFsdGh5UGVyY2VudGFnZT86IG51bWJlclxuLyoqXG4gKiBUaGUgc3RyYXRlZ3kgdG8gYXBwbHkgaW4gY2FzZSBvZiBpbXBhaXJtZW50OyBkZWZhdWx0cyB0byBNQUlOVEFJTi5cbiAqL1xuSW1wYWlybWVudFN0cmF0ZWd5PzogKFwiTUFJTlRBSU5cIiB8IFwiUk9MTEJBQ0tcIilcbn1cbi8qKlxuICogQSByZW1vdGUgbG9jYXRpb24gd2hlcmUgYSBtdWx0aS1sb2NhdGlvbiBmbGVldCBjYW4gZGVwbG95IEVDMiBpbnN0YW5jZXMgZm9yIGdhbWUgaG9zdGluZy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2NhdGlvbkNvbmZpZ3VyYXRpb24ge1xuTG9jYXRpb246IExvY2F0aW9uXG5Mb2NhdGlvbkNhcGFjaXR5PzogTG9jYXRpb25DYXBhY2l0eVxuU3RvcHBlZEFjdGlvbnM/OiBTdG9wcGVkQWN0aW9uc1xufVxuLyoqXG4gKiBDdXJyZW50IHJlc291cmNlIGNhcGFjaXR5IHNldHRpbmdzIGluIGEgc3BlY2lmaWVkIGZsZWV0IG9yIGxvY2F0aW9uLiBUaGUgbG9jYXRpb24gdmFsdWUgbWlnaHQgcmVmZXIgdG8gYSBmbGVldCdzIHJlbW90ZSBsb2NhdGlvbiBvciBpdHMgaG9tZSBSZWdpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYXRpb25DYXBhY2l0eSB7XG4vKipcbiAqIERlZmF1bHRzIHRvIE1pblNpemUgaWYgbm90IGRlZmluZWQuIFRoZSBudW1iZXIgb2YgRUMyIGluc3RhbmNlcyB5b3Ugd2FudCB0byBtYWludGFpbiBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLiBUaGlzIHZhbHVlIG11c3QgZmFsbCBiZXR3ZWVuIHRoZSBtaW5pbXVtIGFuZCBtYXhpbXVtIHNpemUgbGltaXRzLiBJZiBhbnkgYXV0by1zY2FsaW5nIHBvbGljeSBpcyBkZWZpbmVkIGZvciB0aGUgY29udGFpbmVyIGZsZWV0LCB0aGUgZGVzaXJlZCBpbnN0YW5jZSB3aWxsIG9ubHkgYmUgYXBwbGllZCBvbmNlIGR1cmluZyBmbGVldCBjcmVhdGlvbiBhbmQgd2lsbCBiZSBpZ25vcmVkIGluIHVwZGF0ZXMgdG8gYXZvaWQgY29uZmxpY3RzIHdpdGggYXV0by1zY2FsaW5nLiBEdXJpbmcgdXBkYXRlcyB3aXRoIGFueSBhdXRvLXNjYWxpbmcgcG9saWN5IGRlZmluZWQsIGlmIGN1cnJlbnQgZGVzaXJlZCBpbnN0YW5jZSBpcyBsb3dlciB0aGFuIHRoZSBuZXcgTWluU2l6ZSwgaXQgd2lsbCBiZSBpbmNyZWFzZWQgdG8gdGhlIG5ldyBNaW5TaXplOyBpZiBjdXJyZW50IGRlc2lyZWQgaW5zdGFuY2UgaXMgbGFyZ2VyIHRoYW4gdGhlIG5ldyBNYXhTaXplLCBpdCB3aWxsIGJlIGRlY3JlYXNlZCB0byB0aGUgbmV3IE1heFNpemUuXG4gKi9cbkRlc2lyZWRFQzJJbnN0YW5jZXM/OiBudW1iZXJcbi8qKlxuICogVGhlIG1pbmltdW0gdmFsdWUgYWxsb3dlZCBmb3IgdGhlIGZsZWV0J3MgaW5zdGFuY2UgY291bnQgZm9yIGEgbG9jYXRpb24uXG4gKi9cbk1pblNpemU6IG51bWJlclxuLyoqXG4gKiBUaGUgbWF4aW11bSB2YWx1ZSB0aGF0IGlzIGFsbG93ZWQgZm9yIHRoZSBmbGVldCdzIGluc3RhbmNlIGNvdW50IGZvciBhIGxvY2F0aW9uLlxuICovXG5NYXhTaXplOiBudW1iZXJcbn1cbi8qKlxuICogUnVsZSB0aGF0IGNvbnRyb2xzIGhvdyBhIGZsZWV0IGlzIHNjYWxlZC4gU2NhbGluZyBwb2xpY2llcyBhcmUgdW5pcXVlbHkgaWRlbnRpZmllZCBieSB0aGUgY29tYmluYXRpb24gb2YgbmFtZSBhbmQgZmxlZXQgSUQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NhbGluZ1BvbGljeSB7XG4vKipcbiAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gdXNlIHdoZW4gbWVhc3VyaW5nIGEgbWV0cmljIGFnYWluc3QgdGhlIHRocmVzaG9sZCB2YWx1ZS5cbiAqL1xuQ29tcGFyaXNvbk9wZXJhdG9yPzogKFwiR3JlYXRlclRoYW5PckVxdWFsVG9UaHJlc2hvbGRcIiB8IFwiR3JlYXRlclRoYW5UaHJlc2hvbGRcIiB8IFwiTGVzc1RoYW5UaHJlc2hvbGRcIiB8IFwiTGVzc1RoYW5PckVxdWFsVG9UaHJlc2hvbGRcIilcbi8qKlxuICogTGVuZ3RoIG9mIHRpbWUgKGluIG1pbnV0ZXMpIHRoZSBtZXRyaWMgbXVzdCBiZSBhdCBvciBiZXlvbmQgdGhlIHRocmVzaG9sZCBiZWZvcmUgYSBzY2FsaW5nIGV2ZW50IGlzIHRyaWdnZXJlZC5cbiAqL1xuRXZhbHVhdGlvblBlcmlvZHM/OiBudW1iZXJcbi8qKlxuICogTmFtZSBvZiB0aGUgQW1hem9uIEdhbWVMaWZ0LWRlZmluZWQgbWV0cmljIHRoYXQgaXMgdXNlZCB0byB0cmlnZ2VyIGEgc2NhbGluZyBhZGp1c3RtZW50LlxuICovXG5NZXRyaWNOYW1lOiAoXCJBY3RpdmF0aW5nR2FtZVNlc3Npb25zXCIgfCBcIkFjdGl2ZUdhbWVTZXNzaW9uc1wiIHwgXCJBY3RpdmVJbnN0YW5jZXNcIiB8IFwiQXZhaWxhYmxlR2FtZVNlc3Npb25zXCIgfCBcIkF2YWlsYWJsZVBsYXllclNlc3Npb25zXCIgfCBcIkN1cnJlbnRQbGF5ZXJTZXNzaW9uc1wiIHwgXCJJZGxlSW5zdGFuY2VzXCIgfCBcIlBlcmNlbnRBdmFpbGFibGVHYW1lU2Vzc2lvbnNcIiB8IFwiUGVyY2VudElkbGVJbnN0YW5jZXNcIiB8IFwiUXVldWVEZXB0aFwiIHwgXCJXYWl0VGltZVwiIHwgXCJDb25jdXJyZW50QWN0aXZhdGFibGVHYW1lU2Vzc2lvbnNcIilcbi8qKlxuICogQSBkZXNjcmlwdGl2ZSBsYWJlbCB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCBhIGZsZWV0J3Mgc2NhbGluZyBwb2xpY3kuIFBvbGljeSBuYW1lcyBkbyBub3QgbmVlZCB0byBiZSB1bmlxdWUuXG4gKi9cbk5hbWU6IHN0cmluZ1xuLyoqXG4gKiBUaGUgdHlwZSBvZiBzY2FsaW5nIHBvbGljeSB0byBjcmVhdGUuIEZvciBhIHRhcmdldC1iYXNlZCBwb2xpY3ksIHNldCB0aGUgcGFyYW1ldGVyIE1ldHJpY05hbWUgdG8gJ1BlcmNlbnRBdmFpbGFibGVHYW1lU2Vzc2lvbnMnIGFuZCBzcGVjaWZ5IGEgVGFyZ2V0Q29uZmlndXJhdGlvbi4gRm9yIGEgcnVsZS1iYXNlZCBwb2xpY3kgc2V0IHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVyczogTWV0cmljTmFtZSwgQ29tcGFyaXNvbk9wZXJhdG9yLCBUaHJlc2hvbGQsIEV2YWx1YXRpb25QZXJpb2RzLCBTY2FsaW5nQWRqdXN0bWVudFR5cGUsIGFuZCBTY2FsaW5nQWRqdXN0bWVudC5cbiAqL1xuUG9saWN5VHlwZT86IChcIlJ1bGVCYXNlZFwiIHwgXCJUYXJnZXRCYXNlZFwiKVxuLyoqXG4gKiBBbW91bnQgb2YgYWRqdXN0bWVudCB0byBtYWtlLCBiYXNlZCBvbiB0aGUgc2NhbGluZyBhZGp1c3RtZW50IHR5cGUuXG4gKi9cblNjYWxpbmdBZGp1c3RtZW50PzogbnVtYmVyXG4vKipcbiAqIFRoZSB0eXBlIG9mIGFkanVzdG1lbnQgdG8gbWFrZSB0byBhIGZsZWV0J3MgaW5zdGFuY2UgY291bnQuXG4gKi9cblNjYWxpbmdBZGp1c3RtZW50VHlwZT86IChcIkNoYW5nZUluQ2FwYWNpdHlcIiB8IFwiRXhhY3RDYXBhY2l0eVwiIHwgXCJQZXJjZW50Q2hhbmdlSW5DYXBhY2l0eVwiKVxuVGFyZ2V0Q29uZmlndXJhdGlvbj86IFRhcmdldENvbmZpZ3VyYXRpb25cbi8qKlxuICogTWV0cmljIHZhbHVlIHVzZWQgdG8gdHJpZ2dlciBhIHNjYWxpbmcgZXZlbnQuXG4gKi9cblRocmVzaG9sZD86IG51bWJlclxufVxuLyoqXG4gKiBBbiBvYmplY3QgdGhhdCBjb250YWlucyBzZXR0aW5ncyBmb3IgYSB0YXJnZXQtYmFzZWQgc2NhbGluZyBwb2xpY3kuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFyZ2V0Q29uZmlndXJhdGlvbiB7XG4vKipcbiAqIERlc2lyZWQgdmFsdWUgdG8gdXNlIHdpdGggYSB0YXJnZXQtYmFzZWQgc2NhbGluZyBwb2xpY3kuIFRoZSB2YWx1ZSBtdXN0IGJlIHJlbGV2YW50IGZvciB3aGF0ZXZlciBtZXRyaWMgdGhlIHNjYWxpbmcgcG9saWN5IGlzIHVzaW5nLiBGb3IgZXhhbXBsZSwgaW4gYSBwb2xpY3kgdXNpbmcgdGhlIG1ldHJpYyBQZXJjZW50QXZhaWxhYmxlR2FtZVNlc3Npb25zLCB0aGUgdGFyZ2V0IHZhbHVlIHNob3VsZCBiZSB0aGUgcHJlZmVycmVkIHNpemUgb2YgdGhlIGZsZWV0J3MgYnVmZmVyICh0aGUgcGVyY2VudCBvZiBjYXBhY2l0eSB0aGF0IHNob3VsZCBiZSBpZGxlIGFuZCByZWFkeSBmb3IgbmV3IGdhbWUgc2Vzc2lvbnMpLlxuICovXG5UYXJnZXRWYWx1ZTogbnVtYmVyXG59XG4vKipcbiAqIEEgcG9saWN5IHRoYXQgbGltaXRzIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBhbiBpbmRpdmlkdWFsIHBsYXllciBjYW4gY3JlYXRlIG92ZXIgYSBzcGFuIG9mIHRpbWUgZm9yIHRoaXMgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FtZVNlc3Npb25DcmVhdGlvbkxpbWl0UG9saWN5IHtcbi8qKlxuICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGdhbWUgc2Vzc2lvbnMgdGhhdCBhbiBpbmRpdmlkdWFsIGNhbiBjcmVhdGUgZHVyaW5nIHRoZSBwb2xpY3kgcGVyaW9kLlxuICovXG5OZXdHYW1lU2Vzc2lvbnNQZXJDcmVhdG9yPzogbnVtYmVyXG4vKipcbiAqIFRoZSB0aW1lIHNwYW4gdXNlZCBpbiBldmFsdWF0aW5nIHRoZSByZXNvdXJjZSBjcmVhdGlvbiBsaW1pdCBwb2xpY3kuXG4gKi9cblBvbGljeVBlcmlvZEluTWludXRlcz86IG51bWJlclxufVxuLyoqXG4gKiBBIHBvbGljeSB0aGUgbG9jYXRpb24gYW5kIHByb3ZpZGVyIG9mIGxvZ3MgZnJvbSB0aGUgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nQ29uZmlndXJhdGlvbiB7XG5Mb2dEZXN0aW5hdGlvbj86IExvZ0Rlc3RpbmF0aW9uXG4vKipcbiAqIElmIGxvZyBkZXN0aW5hdGlvbiBpcyBDTE9VRFdBVENILCBsb2dzIGFyZSBzZW50IHRvIHRoZSBzcGVjaWZpZWQgbG9nIGdyb3VwIGluIEFtYXpvbiBDbG91ZFdhdGNoLlxuICovXG5Mb2dHcm91cEFybj86IHN0cmluZ1xuLyoqXG4gKiBUaGUgbmFtZSBvZiB0aGUgUzMgYnVja2V0IHRvIHB1bGwgbG9ncyBmcm9tIGlmIFMzIGlzIHRoZSBMb2dEZXN0aW5hdGlvblxuICovXG5TM0J1Y2tldE5hbWU/OiBzdHJpbmdcbn1cbi8qKlxuICogQSBrZXktdmFsdWUgcGFpciB0byBhc3NvY2lhdGUgd2l0aCBhIHJlc291cmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhZyB7XG4vKipcbiAqIFRoZSBrZXkgbmFtZSBvZiB0aGUgdGFnLiBZb3UgY2FuIHNwZWNpZnkgYSB2YWx1ZSB0aGF0IGlzIDEgdG8gMTI4IFVuaWNvZGUgY2hhcmFjdGVycyBpbiBsZW5ndGguXG4gKi9cbktleTogc3RyaW5nXG4vKipcbiAqIFRoZSB2YWx1ZSBmb3IgdGhlIHRhZy4gWW91IGNhbiBzcGVjaWZ5IGEgdmFsdWUgdGhhdCBpcyAwIHRvIDI1NiBVbmljb2RlIGNoYXJhY3RlcnMgaW4gbGVuZ3RoLlxuICovXG5WYWx1ZTogc3RyaW5nXG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWdhbWVsaWZ0LWNvbnRhaW5lcmZsZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWdhbWVsaWZ0LWNvbnRhaW5lcmZsZWV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbmZpZ3VyZXMgdGhlIHNlcnZpY2UgdGhhdCBwcm92aWRlcyBsb2dzLlxuICovXG5leHBvcnQgdHlwZSBMb2dEZXN0aW5hdGlvbiA9IChcIk5PTkVcIiB8IFwiQ0xPVURXQVRDSFwiIHwgXCJTM1wiKVxuLyoqXG4gKiBBIGxpc3Qgb2YgZmxlZXQgYWN0aW9ucyB0aGF0IGhhdmUgYmVlbiBzdXNwZW5kZWQgaW4gdGhlIGZsZWV0IGxvY2F0aW9uLlxuICogXG4gKiBAbWF4SXRlbXMgMVxuICovXG5leHBvcnQgdHlwZSBTdG9wcGVkQWN0aW9ucyA9IChcIkFVVE9fU0NBTElOR1wiKVtdXG5leHBvcnQgdHlwZSBMb2NhdGlvbiA9IHN0cmluZ1xuXG4vKipcbiAqIFRoZSBBV1M6OkdhbWVMaWZ0OjpDb250YWluZXJGbGVldCByZXNvdXJjZSBjcmVhdGVzIGFuIEFtYXpvbiBHYW1lTGlmdCAoR2FtZUxpZnQpIGNvbnRhaW5lciBmbGVldCB0byBob3N0IGdhbWUgc2VydmVycy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBfQVdTX0dBTUVMSUZUX0NPTlRBSU5FUkZMRUVUIHtcbkRlcGxveW1lbnREZXRhaWxzPzogRGVwbG95bWVudERldGFpbHNcbi8qKlxuICogQSBsaXN0IG9mIHJ1bGVzIHRoYXQgY29udHJvbCBob3cgYSBmbGVldCBpcyBzY2FsZWQuXG4gKiBcbiAqIEBtYXhJdGVtcyA1MFxuICovXG5TY2FsaW5nUG9saWNpZXM/OiBTY2FsaW5nUG9saWN5W11cbi8qKlxuICogVGhlIG5hbWUgb2YgdGhlIGNvbnRhaW5lciBncm91cCBkZWZpbml0aW9uIHRoYXQgd2lsbCBiZSBjcmVhdGVkIHBlciBnYW1lIHNlcnZlci4gWW91IG11c3Qgc3BlY2lmeSBHQU1FX1NFUlZFUiBjb250YWluZXIgZ3JvdXAuIFlvdSBoYXZlIHRoZSBvcHRpb24gdG8gYWxzbyBzcGVjaWZ5IG9uZSBQRVJfSU5TVEFOQ0UgY29udGFpbmVyIGdyb3VwLlxuICovXG5HYW1lU2VydmVyQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uTmFtZT86IHN0cmluZ1xuLyoqXG4gKiBBIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIGEgZmxlZXQuXG4gKi9cbkRlc2NyaXB0aW9uPzogc3RyaW5nXG4vKipcbiAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBnYW1lIHNlcnZlciBjb250YWluZXIgZ3JvdXBzIHBlciBpbnN0YW5jZSwgYSBudW1iZXIgYmV0d2VlbiAxLTUwMDAuXG4gKi9cbk1heGltdW1HYW1lU2VydmVyQ29udGFpbmVyR3JvdXBzUGVySW5zdGFuY2U/OiBudW1iZXJcbkdhbWVTZXNzaW9uQ3JlYXRpb25MaW1pdFBvbGljeT86IEdhbWVTZXNzaW9uQ3JlYXRpb25MaW1pdFBvbGljeVxuLyoqXG4gKiBUaGUgbnVtYmVyIG9mIGRlc2lyZWQgZ2FtZSBzZXJ2ZXIgY29udGFpbmVyIGdyb3VwcyBwZXIgaW5zdGFuY2UsIGEgbnVtYmVyIGJldHdlZW4gMS01MDAwLlxuICovXG5HYW1lU2VydmVyQ29udGFpbmVyR3JvdXBzUGVySW5zdGFuY2U/OiBudW1iZXJcbkxvZ0NvbmZpZ3VyYXRpb24/OiBMb2dDb25maWd1cmF0aW9uXG4vKipcbiAqIFRoZSBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgcGVyIGluc3RhbmNlIGNvbnRhaW5lciBncm91cCBkZWZpbml0aW9uLiBUaGlzIGZpZWxkIHdpbGwgYmUgZW1wdHkgaWYgUGVySW5zdGFuY2VDb250YWluZXJHcm91cERlZmluaXRpb25OYW1lIGlzIG5vdCBzcGVjaWZpZWQuXG4gKi9cblBlckluc3RhbmNlQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uQXJuPzogc3RyaW5nXG4vKipcbiAqIEEgcmFuZ2Ugb2YgSVAgYWRkcmVzc2VzIGFuZCBwb3J0IHNldHRpbmdzIHRoYXQgYWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIGNvbm5lY3QgdG8gc2VydmVyIHByb2Nlc3NlcyBvbiBhbiBBbWF6b24gR2FtZUxpZnQgc2VydmVyLlxuICogXG4gKiBAbWF4SXRlbXMgNTBcbiAqL1xuSW5zdGFuY2VJbmJvdW5kUGVybWlzc2lvbnM/OiBJcFBlcm1pc3Npb25bXVxuLyoqXG4gKiBVbmlxdWUgZmxlZXQgSURcbiAqL1xuRmxlZXRJZD86IHN0cmluZ1xuLyoqXG4gKiBUaGUgbmFtZSBvZiBhbiBFQzIgaW5zdGFuY2UgdHlwZSB0aGF0IGlzIHN1cHBvcnRlZCBpbiBBbWF6b24gR2FtZUxpZnQuIEEgZmxlZXQgaW5zdGFuY2UgdHlwZSBkZXRlcm1pbmVzIHRoZSBjb21wdXRpbmcgcmVzb3VyY2VzIG9mIGVhY2ggaW5zdGFuY2UgaW4gdGhlIGZsZWV0LCBpbmNsdWRpbmcgQ1BVLCBtZW1vcnksIHN0b3JhZ2UsIGFuZCBuZXR3b3JraW5nIGNhcGFjaXR5LiBBbWF6b24gR2FtZUxpZnQgc3VwcG9ydHMgdGhlIGZvbGxvd2luZyBFQzIgaW5zdGFuY2UgdHlwZXMuIFNlZSBBbWF6b24gRUMyIEluc3RhbmNlIFR5cGVzIGZvciBkZXRhaWxlZCBkZXNjcmlwdGlvbnMuXG4gKi9cbkluc3RhbmNlVHlwZT86IHN0cmluZ1xuLyoqXG4gKiBBbiBhcnJheSBvZiBrZXktdmFsdWUgcGFpcnMgdG8gYXBwbHkgdG8gdGhpcyByZXNvdXJjZS5cbiAqIFxuICogQG1heEl0ZW1zIDIwMFxuICovXG5UYWdzPzogVGFnW11cbi8qKlxuICogVGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIHRoYXQgaXMgYXNzaWduZWQgdG8gYSBBbWF6b24gR2FtZUxpZnQgY29udGFpbmVyIGZsZWV0IHJlc291cmNlIGFuZCB1bmlxdWVseSBpZGVudGlmaWVzIGl0IGFjcm9zcyBhbGwgQVdTIFJlZ2lvbnMuXG4gKi9cbkZsZWV0QXJuPzogc3RyaW5nXG4vKipcbiAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHVzZSBPbi1EZW1hbmQgaW5zdGFuY2VzIG9yIFNwb3QgaW5zdGFuY2VzIGZvciB0aGlzIGZsZWV0LiBJZiBlbXB0eSwgdGhlIGRlZmF1bHQgaXMgT05fREVNQU5ELiBCb3RoIGNhdGVnb3JpZXMgb2YgaW5zdGFuY2VzIHVzZSBpZGVudGljYWwgaGFyZHdhcmUgYW5kIGNvbmZpZ3VyYXRpb25zIGJhc2VkIG9uIHRoZSBpbnN0YW5jZSB0eXBlIHNlbGVjdGVkIGZvciB0aGlzIGZsZWV0LlxuICovXG5CaWxsaW5nVHlwZT86IChcIk9OX0RFTUFORFwiIHwgXCJTUE9UXCIpXG4vKipcbiAqIFRoZSBjdXJyZW50IHN0YXR1cyBvZiB0aGUgY29udGFpbmVyIGZsZWV0LlxuICovXG5TdGF0dXM/OiAoXCJQRU5ESU5HXCIgfCBcIkNSRUFUSU5HXCIgfCBcIkNSRUFURURcIiB8IFwiQUNUSVZBVElOR1wiIHwgXCJBQ1RJVkVcIiB8IFwiVVBEQVRJTkdcIiB8IFwiREVMRVRJTkdcIilcbi8qKlxuICogQSB1bmlxdWUgaWRlbnRpZmllciBmb3IgYW4gQVdTIElBTSByb2xlIHRoYXQgbWFuYWdlcyBhY2Nlc3MgdG8geW91ciBBV1Mgc2VydmljZXMuIENyZWF0ZSBhIHJvbGUgb3IgbG9vayB1cCBhIHJvbGUncyBBUk4gZnJvbSB0aGUgSUFNIGRhc2hib2FyZCBpbiB0aGUgQVdTIE1hbmFnZW1lbnQgQ29uc29sZS5cbiAqL1xuRmxlZXRSb2xlQXJuOiBzdHJpbmdcbi8qKlxuICogVGhlIG5hbWUgb2YgdGhlIGNvbnRhaW5lciBncm91cCBkZWZpbml0aW9uIHRoYXQgd2lsbCBiZSBjcmVhdGVkIHBlciBpbnN0YW5jZS4gVGhpcyBmaWVsZCBpcyBvcHRpb25hbCBpZiB5b3Ugc3BlY2lmeSBHYW1lU2VydmVyQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uTmFtZS5cbiAqL1xuUGVySW5zdGFuY2VDb250YWluZXJHcm91cERlZmluaXRpb25OYW1lPzogc3RyaW5nXG4vKipcbiAqIEBtYXhJdGVtcyAxMDBcbiAqL1xuTG9jYXRpb25zPzogTG9jYXRpb25Db25maWd1cmF0aW9uW11cbi8qKlxuICogQSBnYW1lIHNlc3Npb24gcHJvdGVjdGlvbiBwb2xpY3kgdG8gYXBwbHkgdG8gYWxsIGdhbWUgc2Vzc2lvbnMgaG9zdGVkIG9uIGluc3RhbmNlcyBpbiB0aGlzIGZsZWV0LiBXaGVuIHByb3RlY3RlZCwgYWN0aXZlIGdhbWUgc2Vzc2lvbnMgY2Fubm90IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNldCwgaW5zdGFuY2VzIGluIHRoaXMgZmxlZXQgZGVmYXVsdCB0byBubyBwcm90ZWN0aW9uLiBZb3UgY2FuIGNoYW5nZSBhIGZsZWV0J3MgcHJvdGVjdGlvbiBwb2xpY3kgdG8gYWZmZWN0IGZ1dHVyZSBnYW1lIHNlc3Npb25zIG9uIHRoZSBmbGVldC4gWW91IGNhbiBhbHNvIHNldCBwcm90ZWN0aW9uIGZvciBpbmRpdmlkdWFsIGdhbWUgc2Vzc2lvbnMuXG4gKi9cbk5ld0dhbWVTZXNzaW9uUHJvdGVjdGlvblBvbGljeT86IChcIkZ1bGxQcm90ZWN0aW9uXCIgfCBcIk5vUHJvdGVjdGlvblwiKVxuSW5zdGFuY2VDb25uZWN0aW9uUG9ydFJhbmdlPzogQ29ubmVjdGlvblBvcnRSYW5nZVxuLyoqXG4gKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIGdhbWUgc2VydmVyIGNvbnRhaW5lciBncm91cCBkZWZpbml0aW9uLiBUaGlzIGZpZWxkIHdpbGwgYmUgZW1wdHkgaWYgR2FtZVNlcnZlckNvbnRhaW5lckdyb3VwRGVmaW5pdGlvbk5hbWUgaXMgbm90IHNwZWNpZmllZC5cbiAqL1xuR2FtZVNlcnZlckNvbnRhaW5lckdyb3VwRGVmaW5pdGlvbkFybj86IHN0cmluZ1xuLyoqXG4gKiBUaGUgbmFtZSBvZiBhbiBBbWF6b24gQ2xvdWRXYXRjaCBtZXRyaWMgZ3JvdXAuIEEgbWV0cmljIGdyb3VwIGFnZ3JlZ2F0ZXMgdGhlIG1ldHJpY3MgZm9yIGFsbCBmbGVldHMgaW4gdGhlIGdyb3VwLiBTcGVjaWZ5IGEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1ldHJpYyBncm91cCBuYW1lLiBZb3UgY2FuIHVzZSBhbiBleGlzdGluZyBuYW1lIG9yIHVzZSBhIG5ldyBuYW1lIHRvIGNyZWF0ZSBhIG5ldyBtZXRyaWMgZ3JvdXAuIEN1cnJlbnRseSwgdGhpcyBwYXJhbWV0ZXIgY2FuIGhhdmUgb25seSBvbmUgc3RyaW5nLlxuICogXG4gKiBAbWF4SXRlbXMgMVxuICovXG5NZXRyaWNHcm91cHM/OiBzdHJpbmdbXVxuLyoqXG4gKiBBIHRpbWUgc3RhbXAgaW5kaWNhdGluZyB3aGVuIHRoaXMgZGF0YSBvYmplY3Qgd2FzIGNyZWF0ZWQuIEZvcm1hdCBpcyBhIG51bWJlciBleHByZXNzZWQgaW4gVW5peCB0aW1lIGFzIG1pbGxpc2Vjb25kcyAoZm9yIGV4YW1wbGUgXCIxNDY5NDk4NDY4LjA1N1wiKS5cbiAqL1xuQ3JlYXRpb25UaW1lPzogc3RyaW5nXG5EZXBsb3ltZW50Q29uZmlndXJhdGlvbj86IERlcGxveW1lbnRDb25maWd1cmF0aW9uXG59XG4vKipcbiAqIFByb3ZpZGVzIGluZm9ybWF0aW9uIGFib3V0IHRoZSBsYXN0IGRlcGxveW1lbnQgSUQgYW5kIGl0cyBzdGF0dXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudERldGFpbHMge1xuLyoqXG4gKiBUaGUgSUQgb2YgdGhlIGxhc3QgZGVwbG95bWVudCBvbiB0aGUgY29udGFpbmVyIGZsZWV0LiBUaGlzIGZpZWxkIHdpbGwgYmUgZW1wdHkgaWYgdGhlIGNvbnRhaW5lciBmbGVldCBkb2VzIG5vdCBoYXZlIGEgQ29udGFpbmVyR3JvdXBEZWZpbml0aW9uIGF0dGFjaGVkLlxuICovXG5MYXRlc3REZXBsb3ltZW50SWQ/OiBzdHJpbmdcbn1cbi8qKlxuICogUnVsZSB0aGF0IGNvbnRyb2xzIGhvdyBhIGZsZWV0IGlzIHNjYWxlZC4gU2NhbGluZyBwb2xpY2llcyBhcmUgdW5pcXVlbHkgaWRlbnRpZmllZCBieSB0aGUgY29tYmluYXRpb24gb2YgbmFtZSBhbmQgZmxlZXQgSUQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NhbGluZ1BvbGljeSB7XG4vKipcbiAqIE5hbWUgb2YgdGhlIEFtYXpvbiBHYW1lTGlmdC1kZWZpbmVkIG1ldHJpYyB0aGF0IGlzIHVzZWQgdG8gdHJpZ2dlciBhIHNjYWxpbmcgYWRqdXN0bWVudC5cbiAqL1xuTWV0cmljTmFtZTogKFwiQWN0aXZhdGluZ0dhbWVTZXNzaW9uc1wiIHwgXCJBY3RpdmVHYW1lU2Vzc2lvbnNcIiB8IFwiQWN0aXZlSW5zdGFuY2VzXCIgfCBcIkF2YWlsYWJsZUdhbWVTZXNzaW9uc1wiIHwgXCJBdmFpbGFibGVQbGF5ZXJTZXNzaW9uc1wiIHwgXCJDdXJyZW50UGxheWVyU2Vzc2lvbnNcIiB8IFwiSWRsZUluc3RhbmNlc1wiIHwgXCJQZXJjZW50QXZhaWxhYmxlR2FtZVNlc3Npb25zXCIgfCBcIlBlcmNlbnRJZGxlSW5zdGFuY2VzXCIgfCBcIlF1ZXVlRGVwdGhcIiB8IFwiV2FpdFRpbWVcIiB8IFwiQ29uY3VycmVudEFjdGl2YXRhYmxlR2FtZVNlc3Npb25zXCIpXG4vKipcbiAqIFRoZSB0eXBlIG9mIHNjYWxpbmcgcG9saWN5IHRvIGNyZWF0ZS4gRm9yIGEgdGFyZ2V0LWJhc2VkIHBvbGljeSwgc2V0IHRoZSBwYXJhbWV0ZXIgTWV0cmljTmFtZSB0byAnUGVyY2VudEF2YWlsYWJsZUdhbWVTZXNzaW9ucycgYW5kIHNwZWNpZnkgYSBUYXJnZXRDb25maWd1cmF0aW9uLiBGb3IgYSBydWxlLWJhc2VkIHBvbGljeSBzZXQgdGhlIGZvbGxvd2luZyBwYXJhbWV0ZXJzOiBNZXRyaWNOYW1lLCBDb21wYXJpc29uT3BlcmF0b3IsIFRocmVzaG9sZCwgRXZhbHVhdGlvblBlcmlvZHMsIFNjYWxpbmdBZGp1c3RtZW50VHlwZSwgYW5kIFNjYWxpbmdBZGp1c3RtZW50LlxuICovXG5Qb2xpY3lUeXBlPzogKFwiUnVsZUJhc2VkXCIgfCBcIlRhcmdldEJhc2VkXCIpXG4vKipcbiAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gdXNlIHdoZW4gbWVhc3VyaW5nIGEgbWV0cmljIGFnYWluc3QgdGhlIHRocmVzaG9sZCB2YWx1ZS5cbiAqL1xuQ29tcGFyaXNvbk9wZXJhdG9yPzogKFwiR3JlYXRlclRoYW5PckVxdWFsVG9UaHJlc2hvbGRcIiB8IFwiR3JlYXRlclRoYW5UaHJlc2hvbGRcIiB8IFwiTGVzc1RoYW5UaHJlc2hvbGRcIiB8IFwiTGVzc1RoYW5PckVxdWFsVG9UaHJlc2hvbGRcIilcblRhcmdldENvbmZpZ3VyYXRpb24/OiBUYXJnZXRDb25maWd1cmF0aW9uXG4vKipcbiAqIEFtb3VudCBvZiBhZGp1c3RtZW50IHRvIG1ha2UsIGJhc2VkIG9uIHRoZSBzY2FsaW5nIGFkanVzdG1lbnQgdHlwZS5cbiAqL1xuU2NhbGluZ0FkanVzdG1lbnQ/OiBudW1iZXJcbi8qKlxuICogTGVuZ3RoIG9mIHRpbWUgKGluIG1pbnV0ZXMpIHRoZSBtZXRyaWMgbXVzdCBiZSBhdCBvciBiZXlvbmQgdGhlIHRocmVzaG9sZCBiZWZvcmUgYSBzY2FsaW5nIGV2ZW50IGlzIHRyaWdnZXJlZC5cbiAqL1xuRXZhbHVhdGlvblBlcmlvZHM/OiBudW1iZXJcbi8qKlxuICogQSBkZXNjcmlwdGl2ZSBsYWJlbCB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCBhIGZsZWV0J3Mgc2NhbGluZyBwb2xpY3kuIFBvbGljeSBuYW1lcyBkbyBub3QgbmVlZCB0byBiZSB1bmlxdWUuXG4gKi9cbk5hbWU6IHN0cmluZ1xuLyoqXG4gKiBUaGUgdHlwZSBvZiBhZGp1c3RtZW50IHRvIG1ha2UgdG8gYSBmbGVldCdzIGluc3RhbmNlIGNvdW50LlxuICovXG5TY2FsaW5nQWRqdXN0bWVudFR5cGU/OiAoXCJDaGFuZ2VJbkNhcGFjaXR5XCIgfCBcIkV4YWN0Q2FwYWNpdHlcIiB8IFwiUGVyY2VudENoYW5nZUluQ2FwYWNpdHlcIilcbi8qKlxuICogTWV0cmljIHZhbHVlIHVzZWQgdG8gdHJpZ2dlciBhIHNjYWxpbmcgZXZlbnQuXG4gKi9cblRocmVzaG9sZD86IG51bWJlclxufVxuLyoqXG4gKiBBbiBvYmplY3QgdGhhdCBjb250YWlucyBzZXR0aW5ncyBmb3IgYSB0YXJnZXQtYmFzZWQgc2NhbGluZyBwb2xpY3kuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFyZ2V0Q29uZmlndXJhdGlvbiB7XG4vKipcbiAqIERlc2lyZWQgdmFsdWUgdG8gdXNlIHdpdGggYSB0YXJnZXQtYmFzZWQgc2NhbGluZyBwb2xpY3kuIFRoZSB2YWx1ZSBtdXN0IGJlIHJlbGV2YW50IGZvciB3aGF0ZXZlciBtZXRyaWMgdGhlIHNjYWxpbmcgcG9saWN5IGlzIHVzaW5nLiBGb3IgZXhhbXBsZSwgaW4gYSBwb2xpY3kgdXNpbmcgdGhlIG1ldHJpYyBQZXJjZW50QXZhaWxhYmxlR2FtZVNlc3Npb25zLCB0aGUgdGFyZ2V0IHZhbHVlIHNob3VsZCBiZSB0aGUgcHJlZmVycmVkIHNpemUgb2YgdGhlIGZsZWV0J3MgYnVmZmVyICh0aGUgcGVyY2VudCBvZiBjYXBhY2l0eSB0aGF0IHNob3VsZCBiZSBpZGxlIGFuZCByZWFkeSBmb3IgbmV3IGdhbWUgc2Vzc2lvbnMpLlxuICovXG5UYXJnZXRWYWx1ZTogbnVtYmVyXG59XG4vKipcbiAqIEEgcG9saWN5IHRoYXQgbGltaXRzIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBhbiBpbmRpdmlkdWFsIHBsYXllciBjYW4gY3JlYXRlIG92ZXIgYSBzcGFuIG9mIHRpbWUgZm9yIHRoaXMgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FtZVNlc3Npb25DcmVhdGlvbkxpbWl0UG9saWN5IHtcbi8qKlxuICogVGhlIHRpbWUgc3BhbiB1c2VkIGluIGV2YWx1YXRpbmcgdGhlIHJlc291cmNlIGNyZWF0aW9uIGxpbWl0IHBvbGljeS5cbiAqL1xuUG9saWN5UGVyaW9kSW5NaW51dGVzPzogbnVtYmVyXG4vKipcbiAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIHRoYXQgYW4gaW5kaXZpZHVhbCBjYW4gY3JlYXRlIGR1cmluZyB0aGUgcG9saWN5IHBlcmlvZC5cbiAqL1xuTmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvcj86IG51bWJlclxufVxuLyoqXG4gKiBBIHBvbGljeSB0aGUgbG9jYXRpb24gYW5kIHByb3ZpZGVyIG9mIGxvZ3MgZnJvbSB0aGUgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nQ29uZmlndXJhdGlvbiB7XG5Mb2dEZXN0aW5hdGlvbj86IExvZ0Rlc3RpbmF0aW9uXG4vKipcbiAqIFRoZSBuYW1lIG9mIHRoZSBTMyBidWNrZXQgdG8gcHVsbCBsb2dzIGZyb20gaWYgUzMgaXMgdGhlIExvZ0Rlc3RpbmF0aW9uXG4gKi9cblMzQnVja2V0TmFtZT86IHN0cmluZ1xuLyoqXG4gKiBJZiBsb2cgZGVzdGluYXRpb24gaXMgQ0xPVURXQVRDSCwgbG9ncyBhcmUgc2VudCB0byB0aGUgc3BlY2lmaWVkIGxvZyBncm91cCBpbiBBbWF6b24gQ2xvdWRXYXRjaC5cbiAqL1xuTG9nR3JvdXBBcm4/OiBzdHJpbmdcbn1cbi8qKlxuICogQSByYW5nZSBvZiBJUCBhZGRyZXNzZXMgYW5kIHBvcnQgc2V0dGluZ3MgdGhhdCBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gY29ubmVjdCB0byBzZXJ2ZXIgcHJvY2Vzc2VzIG9uIGFuIEFtYXpvbiBHYW1lTGlmdCBob3N0aW5nIHJlc291cmNlLiBOZXcgZ2FtZSBzZXNzaW9ucyB0aGF0IGFyZSBzdGFydGVkIG9uIHRoZSBmbGVldCBhcmUgYXNzaWduZWQgYW4gSVAgYWRkcmVzcy9wb3J0IG51bWJlciBjb21iaW5hdGlvbiwgd2hpY2ggbXVzdCBmYWxsIGludG8gdGhlIGZsZWV0J3MgYWxsb3dlZCByYW5nZXMuIEZvciBmbGVldHMgY3JlYXRlZCB3aXRoIGEgY3VzdG9tIGdhbWUgc2VydmVyLCB0aGUgcmFuZ2VzIHJlZmxlY3QgdGhlIHNlcnZlcidzIGdhbWUgc2Vzc2lvbiBhc3NpZ25tZW50cy4gRm9yIFJlYWx0aW1lIFNlcnZlcnMgZmxlZXRzLCBBbWF6b24gR2FtZUxpZnQgYXV0b21hdGljYWxseSBvcGVucyB0d28gcG9ydCByYW5nZXMsIG9uZSBmb3IgVENQIG1lc3NhZ2luZyBhbmQgb25lIGZvciBVRFAsIGZvciB1c2UgYnkgdGhlIFJlYWx0aW1lIHNlcnZlcnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSXBQZXJtaXNzaW9uIHtcbi8qKlxuICogQSByYW5nZSBvZiBhbGxvd2VkIElQIGFkZHJlc3Nlcy4gVGhpcyB2YWx1ZSBtdXN0IGJlIGV4cHJlc3NlZCBpbiBDSURSIG5vdGF0aW9uLiBFeGFtcGxlOiBcIjAwMC4wMDAuMDAwLjAwMC9bc3VibmV0IG1hc2tdXCIgb3Igb3B0aW9uYWxseSB0aGUgc2hvcnRlbmVkIHZlcnNpb24gXCIwLjAuMC4wL1tzdWJuZXQgbWFza11cIi5cbiAqL1xuSXBSYW5nZTogc3RyaW5nXG4vKipcbiAqIEEgc3RhcnRpbmcgdmFsdWUgZm9yIGEgcmFuZ2Ugb2YgYWxsb3dlZCBwb3J0IG51bWJlcnMuXG4gKi9cbkZyb21Qb3J0OiBudW1iZXJcbi8qKlxuICogQW4gZW5kaW5nIHZhbHVlIGZvciBhIHJhbmdlIG9mIGFsbG93ZWQgcG9ydCBudW1iZXJzLiBQb3J0IG51bWJlcnMgYXJlIGVuZC1pbmNsdXNpdmUuIFRoaXMgdmFsdWUgbXVzdCBiZSBoaWdoZXIgdGhhbiBGcm9tUG9ydC5cbiAqL1xuVG9Qb3J0OiBudW1iZXJcbi8qKlxuICogVGhlIG5ldHdvcmsgY29tbXVuaWNhdGlvbiBwcm90b2NvbCB1c2VkIGJ5IHRoZSBmbGVldC5cbiAqL1xuUHJvdG9jb2w6IChcIlRDUFwiIHwgXCJVRFBcIilcbn1cbi8qKlxuICogQSBrZXktdmFsdWUgcGFpciB0byBhc3NvY2lhdGUgd2l0aCBhIHJlc291cmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhZyB7XG4vKipcbiAqIFRoZSB2YWx1ZSBmb3IgdGhlIHRhZy4gWW91IGNhbiBzcGVjaWZ5IGEgdmFsdWUgdGhhdCBpcyAwIHRvIDI1NiBVbmljb2RlIGNoYXJhY3RlcnMgaW4gbGVuZ3RoLlxuICovXG5WYWx1ZTogc3RyaW5nXG4vKipcbiAqIFRoZSBrZXkgbmFtZSBvZiB0aGUgdGFnLiBZb3UgY2FuIHNwZWNpZnkgYSB2YWx1ZSB0aGF0IGlzIDEgdG8gMTI4IFVuaWNvZGUgY2hhcmFjdGVycyBpbiBsZW5ndGguXG4gKi9cbktleTogc3RyaW5nXG59XG4vKipcbiAqIEEgcmVtb3RlIGxvY2F0aW9uIHdoZXJlIGEgbXVsdGktbG9jYXRpb24gZmxlZXQgY2FuIGRlcGxveSBFQzIgaW5zdGFuY2VzIGZvciBnYW1lIGhvc3RpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYXRpb25Db25maWd1cmF0aW9uIHtcbkxvY2F0aW9uQ2FwYWNpdHk/OiBMb2NhdGlvbkNhcGFjaXR5XG5TdG9wcGVkQWN0aW9ucz86IFN0b3BwZWRBY3Rpb25zXG5Mb2NhdGlvbjogTG9jYXRpb25cbn1cbi8qKlxuICogQ3VycmVudCByZXNvdXJjZSBjYXBhY2l0eSBzZXR0aW5ncyBpbiBhIHNwZWNpZmllZCBmbGVldCBvciBsb2NhdGlvbi4gVGhlIGxvY2F0aW9uIHZhbHVlIG1pZ2h0IHJlZmVyIHRvIGEgZmxlZXQncyByZW1vdGUgbG9jYXRpb24gb3IgaXRzIGhvbWUgUmVnaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQ2FwYWNpdHkge1xuLyoqXG4gKiBUaGUgbWluaW11bSB2YWx1ZSBhbGxvd2VkIGZvciB0aGUgZmxlZXQncyBpbnN0YW5jZSBjb3VudCBmb3IgYSBsb2NhdGlvbi5cbiAqL1xuTWluU2l6ZT86IG51bWJlclxuLyoqXG4gKiBEZWZhdWx0cyB0byBNaW5TaXplIGlmIG5vdCBkZWZpbmVkLiBUaGUgbnVtYmVyIG9mIEVDMiBpbnN0YW5jZXMgeW91IHdhbnQgdG8gbWFpbnRhaW4gaW4gdGhlIHNwZWNpZmllZCBmbGVldCBsb2NhdGlvbi4gVGhpcyB2YWx1ZSBtdXN0IGZhbGwgYmV0d2VlbiB0aGUgbWluaW11bSBhbmQgbWF4aW11bSBzaXplIGxpbWl0cy4gSWYgYW55IGF1dG8tc2NhbGluZyBwb2xpY3kgaXMgZGVmaW5lZCBmb3IgdGhlIGNvbnRhaW5lciBmbGVldCwgdGhlIGRlc2lyZWQgaW5zdGFuY2Ugd2lsbCBvbmx5IGJlIGFwcGxpZWQgb25jZSBkdXJpbmcgZmxlZXQgY3JlYXRpb24gYW5kIHdpbGwgYmUgaWdub3JlZCBpbiB1cGRhdGVzIHRvIGF2b2lkIGNvbmZsaWN0cyB3aXRoIGF1dG8tc2NhbGluZy4gRHVyaW5nIHVwZGF0ZXMgd2l0aCBhbnkgYXV0by1zY2FsaW5nIHBvbGljeSBkZWZpbmVkLCBpZiBjdXJyZW50IGRlc2lyZWQgaW5zdGFuY2UgaXMgbG93ZXIgdGhhbiB0aGUgbmV3IE1pblNpemUsIGl0IHdpbGwgYmUgaW5jcmVhc2VkIHRvIHRoZSBuZXcgTWluU2l6ZTsgaWYgY3VycmVudCBkZXNpcmVkIGluc3RhbmNlIGlzIGxhcmdlciB0aGFuIHRoZSBuZXcgTWF4U2l6ZSwgaXQgd2lsbCBiZSBkZWNyZWFzZWQgdG8gdGhlIG5ldyBNYXhTaXplLlxuICovXG5EZXNpcmVkRUMySW5zdGFuY2VzPzogbnVtYmVyXG4vKipcbiAqIFRoZSBtYXhpbXVtIHZhbHVlIHRoYXQgaXMgYWxsb3dlZCBmb3IgdGhlIGZsZWV0J3MgaW5zdGFuY2UgY291bnQgZm9yIGEgbG9jYXRpb24uXG4gKi9cbk1heFNpemU6IG51bWJlclxufVxuLyoqXG4gKiBEZWZpbmVzIHRoZSByYW5nZSBvZiBwb3J0cyBvbiB0aGUgaW5zdGFuY2UgdGhhdCBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gY29ubmVjdCB3aXRoIGNvbnRhaW5lcnMgaW4gYSBmbGVldC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25uZWN0aW9uUG9ydFJhbmdlIHtcbi8qKlxuICogQSBzdGFydGluZyB2YWx1ZSBmb3IgYSByYW5nZSBvZiBhbGxvd2VkIHBvcnQgbnVtYmVycy5cbiAqL1xuRnJvbVBvcnQ6IG51bWJlclxuLyoqXG4gKiBBbiBlbmRpbmcgdmFsdWUgZm9yIGEgcmFuZ2Ugb2YgYWxsb3dlZCBwb3J0IG51bWJlcnMuIFBvcnQgbnVtYmVycyBhcmUgZW5kLWluY2x1c2l2ZS4gVGhpcyB2YWx1ZSBtdXN0IGJlIGhpZ2hlciB0aGFuIEZyb21Qb3J0LlxuICovXG5Ub1BvcnQ6IG51bWJlclxufVxuLyoqXG4gKiBQcm92aWRlcyBkZXRhaWxzIGFib3V0IGhvdyB0byBkcmFpbiBvbGQgdGFza3MgYW5kIHJlcGxhY2UgdGhlbSB3aXRoIG5ldyB1cGRhdGVkIHRhc2tzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlcGxveW1lbnRDb25maWd1cmF0aW9uIHtcbi8qKlxuICogVGhlIHByb3RlY3Rpb24gc3RyYXRlZ3kgZm9yIGRlcGxveW1lbnQgb24gdGhlIGNvbnRhaW5lciBmbGVldDsgZGVmYXVsdHMgdG8gV0lUSF9QUk9URUNUSU9OLlxuICovXG5Qcm90ZWN0aW9uU3RyYXRlZ3k/OiAoXCJXSVRIX1BST1RFQ1RJT05cIiB8IFwiSUdOT1JFX1BST1RFQ1RJT05cIilcbi8qKlxuICogVGhlIHN0cmF0ZWd5IHRvIGFwcGx5IGluIGNhc2Ugb2YgaW1wYWlybWVudDsgZGVmYXVsdHMgdG8gTUFJTlRBSU4uXG4gKi9cbkltcGFpcm1lbnRTdHJhdGVneT86IChcIk1BSU5UQUlOXCIgfCBcIlJPTExCQUNLXCIpXG4vKipcbiAqIFRoZSBtaW5pbXVtIHBlcmNlbnRhZ2Ugb2YgaGVhbHRoeSByZXF1aXJlZDsgZGVmYXVsdHMgdG8gNzUuXG4gKi9cbk1pbmltdW1IZWFsdGh5UGVyY2VudGFnZT86IG51bWJlclxufVxuIl19
@@ -9,24 +9,18 @@ export interface _AWS_GAMELIFT_FLEET {
9
9
  * @maxItems 50
10
10
  */
11
11
  ScalingPolicies?: ScalingPolicy[];
12
- AnywhereConfiguration?: AnywhereConfiguration;
13
- /**
14
- * Determines when and how to apply fleet or location capacities. Allowed options are ON_UPDATE (default), ON_CREATE_AND_UPDATE and ON_CREATE_AND_UPDATE_WITH_AUTOSCALING. If you choose ON_CREATE_AND_UPDATE_WITH_AUTOSCALING, MinSize and MaxSize will still be applied on creation and on updates, but DesiredEC2Instances will only be applied once on fleet creation and will be ignored during updates to prevent conflicts with auto-scaling. During updates with ON_CREATE_AND_UPDATE_WITH_AUTOSCALING chosen, if current desired instance is lower than the new MinSize, it will be increased to the new MinSize; if current desired instance is larger than the new MaxSize, it will be decreased to the new MaxSize.
15
- */
16
- ApplyCapacity?: ("ON_UPDATE" | "ON_CREATE_AND_UPDATE" | "ON_CREATE_AND_UPDATE_WITH_AUTOSCALING");
17
- CertificateConfiguration?: CertificateConfiguration;
18
- /**
19
- * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.
20
- */
21
- ComputeType?: ("EC2" | "ANYWHERE");
22
12
  /**
23
13
  * A human-readable description of a fleet.
24
14
  */
25
15
  Description?: string;
26
16
  /**
27
- * [DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to "1" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.
17
+ * A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.
28
18
  */
29
- DesiredEC2Instances?: number;
19
+ PeerVpcId?: string;
20
+ /**
21
+ * Determines when and how to apply fleet or location capacities. Allowed options are ON_UPDATE (default), ON_CREATE_AND_UPDATE and ON_CREATE_AND_UPDATE_WITH_AUTOSCALING. If you choose ON_CREATE_AND_UPDATE_WITH_AUTOSCALING, MinSize and MaxSize will still be applied on creation and on updates, but DesiredEC2Instances will only be applied once on fleet creation and will be ignored during updates to prevent conflicts with auto-scaling. During updates with ON_CREATE_AND_UPDATE_WITH_AUTOSCALING chosen, if current desired instance is lower than the new MinSize, it will be increased to the new MinSize; if current desired instance is larger than the new MaxSize, it will be decreased to the new MaxSize.
22
+ */
23
+ ApplyCapacity?: ("ON_UPDATE" | "ON_CREATE_AND_UPDATE" | "ON_CREATE_AND_UPDATE_WITH_AUTOSCALING");
30
24
  /**
31
25
  * A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.
32
26
  *
@@ -34,141 +28,147 @@ export interface _AWS_GAMELIFT_FLEET {
34
28
  */
35
29
  EC2InboundPermissions?: IpPermission[];
36
30
  /**
37
- * The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
31
+ * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.
38
32
  */
39
- EC2InstanceType?: string;
33
+ ComputeType?: ("EC2" | "ANYWHERE");
40
34
  /**
41
- * Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.
35
+ * A descriptive label that is associated with a fleet. Fleet names do not need to be unique.
42
36
  */
43
- FleetType?: ("ON_DEMAND" | "SPOT");
37
+ Name: string;
38
+ AnywhereConfiguration?: AnywhereConfiguration;
44
39
  /**
45
40
  * A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.
46
41
  */
47
42
  InstanceRoleARN?: string;
43
+ /**
44
+ * Unique fleet ID
45
+ */
46
+ FleetId?: string;
47
+ CertificateConfiguration?: CertificateConfiguration;
48
48
  /**
49
49
  * Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.
50
50
  */
51
51
  InstanceRoleCredentialsProvider?: "SHARED_CREDENTIAL_FILE";
52
52
  /**
53
- * @minItems 1
54
- * @maxItems 100
53
+ * [DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to "1" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.
55
54
  */
56
- Locations?: LocationConfiguration[];
55
+ DesiredEC2Instances?: number;
57
56
  /**
58
- * This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()
57
+ * An array of key-value pairs to apply to this resource.
58
+ *
59
+ * @maxItems 200
59
60
  */
60
- LogPaths?: string[];
61
+ Tags?: Tag[];
61
62
  /**
62
- * [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
63
+ * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift Servers Fleet resource and uniquely identifies it. ARNs are unique across all Regions. In a GameLift Fleet ARN, the resource ID matches the FleetId value.
63
64
  */
64
- MaxSize?: number;
65
+ FleetArn?: string;
65
66
  /**
66
- * The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.
67
- *
68
- * @maxItems 1
67
+ * This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.
69
68
  */
70
- MetricGroups?: string[];
69
+ ServerLaunchParameters?: string;
71
70
  /**
72
- * [DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
71
+ * Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.
73
72
  */
74
- MinSize?: number;
73
+ FleetType?: ("ON_DEMAND" | "SPOT");
75
74
  /**
76
- * A descriptive label that is associated with a fleet. Fleet names do not need to be unique.
75
+ * @minItems 1
76
+ * @maxItems 100
77
77
  */
78
- Name: string;
78
+ Locations?: LocationConfiguration[];
79
79
  /**
80
80
  * A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.
81
81
  */
82
82
  NewGameSessionProtectionPolicy?: ("FullProtection" | "NoProtection");
83
- /**
84
- * A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.
85
- */
86
- PeerVpcAwsAccountId?: string;
87
- /**
88
- * A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.
89
- */
90
- PeerVpcId?: string;
91
- ResourceCreationLimitPolicy?: ResourceCreationLimitPolicy;
92
- /**
93
- * Unique fleet ID
94
- */
95
- FleetId?: string;
96
- /**
97
- * A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.
98
- */
99
- BuildId?: string;
100
83
  /**
101
84
  * A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.
102
85
  *
103
86
  * Note: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.
104
87
  */
105
88
  ScriptId?: string;
89
+ /**
90
+ * [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
91
+ */
92
+ MaxSize?: number;
106
93
  RuntimeConfiguration?: RuntimeConfiguration;
107
94
  /**
108
- * This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.
95
+ * This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()
109
96
  */
110
- ServerLaunchParameters?: string;
97
+ LogPaths?: string[];
111
98
  /**
112
99
  * This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.
113
100
  */
114
101
  ServerLaunchPath?: string;
115
102
  /**
116
- * An array of key-value pairs to apply to this resource.
103
+ * [DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
104
+ */
105
+ MinSize?: number;
106
+ /**
107
+ * A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.
108
+ */
109
+ PeerVpcAwsAccountId?: string;
110
+ /**
111
+ * The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.
117
112
  *
118
- * @maxItems 200
113
+ * @maxItems 1
119
114
  */
120
- Tags?: Tag[];
115
+ MetricGroups?: string[];
121
116
  /**
122
- * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift Servers Fleet resource and uniquely identifies it. ARNs are unique across all Regions. In a GameLift Fleet ARN, the resource ID matches the FleetId value.
117
+ * A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.
123
118
  */
124
- FleetArn?: string;
119
+ BuildId?: string;
120
+ ResourceCreationLimitPolicy?: ResourceCreationLimitPolicy;
121
+ /**
122
+ * The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
123
+ */
124
+ EC2InstanceType?: string;
125
125
  }
126
126
  /**
127
127
  * Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.
128
128
  */
129
129
  export interface ScalingPolicy {
130
130
  /**
131
- * Comparison operator to use when measuring a metric against the threshold value.
132
- */
133
- ComparisonOperator?: ("GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold");
134
- /**
135
- * Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.
131
+ * Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets. If the policy is suspended for a fleet, the policy status does not change.
136
132
  */
137
- EvaluationPeriods?: number;
138
- Location?: Location;
133
+ Status?: ("ACTIVE" | "UPDATE_REQUESTED" | "UPDATING" | "DELETE_REQUESTED" | "DELETING" | "DELETED" | "ERROR");
139
134
  /**
140
135
  * Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment.
141
136
  */
142
137
  MetricName: ("ActivatingGameSessions" | "ActiveGameSessions" | "ActiveInstances" | "AvailableGameSessions" | "AvailablePlayerSessions" | "CurrentPlayerSessions" | "IdleInstances" | "PercentAvailableGameSessions" | "PercentIdleInstances" | "QueueDepth" | "WaitTime" | "ConcurrentActivatableGameSessions");
143
- /**
144
- * A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique.
145
- */
146
- Name: string;
147
138
  /**
148
139
  * The type of scaling policy to create. For a target-based policy, set the parameter MetricName to 'PercentAvailableGameSessions' and specify a TargetConfiguration. For a rule-based policy set the following parameters: MetricName, ComparisonOperator, Threshold, EvaluationPeriods, ScalingAdjustmentType, and ScalingAdjustment.
149
140
  */
150
141
  PolicyType?: ("RuleBased" | "TargetBased");
142
+ /**
143
+ * Comparison operator to use when measuring a metric against the threshold value.
144
+ */
145
+ ComparisonOperator?: ("GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold");
146
+ TargetConfiguration?: TargetConfiguration;
147
+ /**
148
+ * The current status of the fleet's scaling policies in a requested fleet location. The status PENDING_UPDATE indicates that an update was requested for the fleet but has not yet been completed for the location.
149
+ */
150
+ UpdateStatus?: "PENDING_UPDATE";
151
151
  /**
152
152
  * Amount of adjustment to make, based on the scaling adjustment type.
153
153
  */
154
154
  ScalingAdjustment?: number;
155
155
  /**
156
- * The type of adjustment to make to a fleet's instance count.
156
+ * Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.
157
157
  */
158
- ScalingAdjustmentType?: ("ChangeInCapacity" | "ExactCapacity" | "PercentChangeInCapacity");
158
+ EvaluationPeriods?: number;
159
+ Location?: Location;
159
160
  /**
160
- * Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets. If the policy is suspended for a fleet, the policy status does not change.
161
+ * A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique.
161
162
  */
162
- Status?: ("ACTIVE" | "UPDATE_REQUESTED" | "UPDATING" | "DELETE_REQUESTED" | "DELETING" | "DELETED" | "ERROR");
163
- TargetConfiguration?: TargetConfiguration;
163
+ Name: string;
164
164
  /**
165
- * Metric value used to trigger a scaling event.
165
+ * The type of adjustment to make to a fleet's instance count.
166
166
  */
167
- Threshold?: number;
167
+ ScalingAdjustmentType?: ("ChangeInCapacity" | "ExactCapacity" | "PercentChangeInCapacity");
168
168
  /**
169
- * The current status of the fleet's scaling policies in a requested fleet location. The status PENDING_UPDATE indicates that an update was requested for the fleet but has not yet been completed for the location.
169
+ * Metric value used to trigger a scaling event.
170
170
  */
171
- UpdateStatus?: "PENDING_UPDATE";
171
+ Threshold?: number;
172
172
  }
173
173
  /**
174
174
  * An object that contains settings for a target-based scaling policy.
@@ -179,6 +179,27 @@ export interface TargetConfiguration {
179
179
  */
180
180
  TargetValue: number;
181
181
  }
182
+ /**
183
+ * A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.
184
+ */
185
+ export interface IpPermission {
186
+ /**
187
+ * A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: "000.000.000.000/[subnet mask]" or optionally the shortened version "0.0.0.0/[subnet mask]".
188
+ */
189
+ IpRange: string;
190
+ /**
191
+ * A starting value for a range of allowed port numbers.
192
+ */
193
+ FromPort: number;
194
+ /**
195
+ * An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.
196
+ */
197
+ ToPort: number;
198
+ /**
199
+ * The network communication protocol used by the fleet.
200
+ */
201
+ Protocol: ("TCP" | "UDP");
202
+ }
182
203
  /**
183
204
  * Configuration for Anywhere fleet.
184
205
  */
@@ -195,63 +216,42 @@ export interface CertificateConfiguration {
195
216
  CertificateType: ("DISABLED" | "GENERATED");
196
217
  }
197
218
  /**
198
- * A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.
219
+ * A key-value pair to associate with a resource.
199
220
  */
200
- export interface IpPermission {
201
- /**
202
- * A starting value for a range of allowed port numbers.
203
- */
204
- FromPort: number;
205
- /**
206
- * A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: "000.000.000.000/[subnet mask]" or optionally the shortened version "0.0.0.0/[subnet mask]".
207
- */
208
- IpRange: string;
221
+ export interface Tag {
209
222
  /**
210
- * The network communication protocol used by the fleet.
223
+ * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length.
211
224
  */
212
- Protocol: ("TCP" | "UDP");
225
+ Value: string;
213
226
  /**
214
- * An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.
227
+ * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length.
215
228
  */
216
- ToPort: number;
229
+ Key: string;
217
230
  }
218
231
  /**
219
232
  * A remote location where a multi-location fleet can deploy EC2 instances for game hosting.
220
233
  */
221
234
  export interface LocationConfiguration {
222
- Location: Location;
223
235
  LocationCapacity?: LocationCapacity;
236
+ Location: Location;
224
237
  }
225
238
  /**
226
239
  * Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.
227
240
  */
228
241
  export interface LocationCapacity {
229
242
  /**
230
- * Defaults to MinSize if not defined. The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.
243
+ * The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
231
244
  */
232
- DesiredEC2Instances?: number;
245
+ MinSize?: number;
233
246
  /**
234
- * The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
247
+ * Defaults to MinSize if not defined. The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.
235
248
  */
236
- MinSize: number;
249
+ DesiredEC2Instances?: number;
237
250
  /**
238
251
  * The maximum value that is allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
239
252
  */
240
253
  MaxSize: number;
241
254
  }
242
- /**
243
- * A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
244
- */
245
- export interface ResourceCreationLimitPolicy {
246
- /**
247
- * The maximum number of game sessions that an individual can create during the policy period.
248
- */
249
- NewGameSessionsPerCreator?: number;
250
- /**
251
- * The time span used in evaluating the resource creation limit policy.
252
- */
253
- PolicyPeriodInMinutes?: number;
254
- }
255
255
  /**
256
256
  * Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.
257
257
  *
@@ -259,19 +259,19 @@ export interface ResourceCreationLimitPolicy {
259
259
  */
260
260
  export interface RuntimeConfiguration {
261
261
  /**
262
- * The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.
262
+ * A collection of server process configurations that describe which server processes to run on each instance in a fleet.
263
+ *
264
+ * @maxItems 50
263
265
  */
264
- GameSessionActivationTimeoutSeconds?: number;
266
+ ServerProcesses?: ServerProcess[];
265
267
  /**
266
268
  * The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.
267
269
  */
268
270
  MaxConcurrentGameSessionActivations?: number;
269
271
  /**
270
- * A collection of server process configurations that describe which server processes to run on each instance in a fleet.
271
- *
272
- * @maxItems 50
272
+ * The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.
273
273
  */
274
- ServerProcesses?: ServerProcess[];
274
+ GameSessionActivationTimeoutSeconds?: number;
275
275
  }
276
276
  /**
277
277
  * A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.
@@ -281,6 +281,10 @@ export interface ServerProcess {
281
281
  * The number of server processes that use this configuration to run concurrently on an instance.
282
282
  */
283
283
  ConcurrentExecutions: number;
284
+ /**
285
+ * An optional list of parameters to pass to the server executable or Realtime script on launch.
286
+ */
287
+ Parameters?: string;
284
288
  /**
285
289
  * The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:
286
290
  *
@@ -289,21 +293,17 @@ export interface ServerProcess {
289
293
  * Linux: /local/game. Examples: "/local/game/MyGame/server.exe" or "/local/game/MyRealtimeScript.js"
290
294
  */
291
295
  LaunchPath: string;
292
- /**
293
- * An optional list of parameters to pass to the server executable or Realtime script on launch.
294
- */
295
- Parameters?: string;
296
296
  }
297
297
  /**
298
- * A key-value pair to associate with a resource.
298
+ * A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
299
299
  */
300
- export interface Tag {
300
+ export interface ResourceCreationLimitPolicy {
301
301
  /**
302
- * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length.
302
+ * The time span used in evaluating the resource creation limit policy.
303
303
  */
304
- Key: string;
304
+ PolicyPeriodInMinutes?: number;
305
305
  /**
306
- * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length.
306
+ * The maximum number of game sessions that an individual can create during the policy period.
307
307
  */
308
- Value: string;
308
+ NewGameSessionsPerCreator?: number;
309
309
  }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWdhbWVsaWZ0LWZsZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWdhbWVsaWZ0LWZsZWV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBMb2NhdGlvbiA9IHN0cmluZ1xuXG4vKipcbiAqIFRoZSBBV1M6OkdhbWVMaWZ0OjpGbGVldCByZXNvdXJjZSBjcmVhdGVzIGFuIEFtYXpvbiBHYW1lTGlmdCAoR2FtZUxpZnQpIGZsZWV0IHRvIGhvc3QgZ2FtZSBzZXJ2ZXJzLiBBIGZsZWV0IGlzIGEgc2V0IG9mIEVDMiBvciBBbnl3aGVyZSBpbnN0YW5jZXMsIGVhY2ggb2Ygd2hpY2ggY2FuIGhvc3QgbXVsdGlwbGUgZ2FtZSBzZXNzaW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBfQVdTX0dBTUVMSUZUX0ZMRUVUIHtcbi8qKlxuICogQSBsaXN0IG9mIHJ1bGVzIHRoYXQgY29udHJvbCBob3cgYSBmbGVldCBpcyBzY2FsZWQuXG4gKiBcbiAqIEBtYXhJdGVtcyA1MFxuICovXG5TY2FsaW5nUG9saWNpZXM/OiBTY2FsaW5nUG9saWN5W11cbkFueXdoZXJlQ29uZmlndXJhdGlvbj86IEFueXdoZXJlQ29uZmlndXJhdGlvblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZW4gYW5kIGhvdyB0byBhcHBseSBmbGVldCBvciBsb2NhdGlvbiBjYXBhY2l0aWVzLiBBbGxvd2VkIG9wdGlvbnMgYXJlIE9OX1VQREFURSAoZGVmYXVsdCksIE9OX0NSRUFURV9BTkRfVVBEQVRFIGFuZCBPTl9DUkVBVEVfQU5EX1VQREFURV9XSVRIX0FVVE9TQ0FMSU5HLiBJZiB5b3UgY2hvb3NlIE9OX0NSRUFURV9BTkRfVVBEQVRFX1dJVEhfQVVUT1NDQUxJTkcsIE1pblNpemUgYW5kIE1heFNpemUgd2lsbCBzdGlsbCBiZSBhcHBsaWVkIG9uIGNyZWF0aW9uIGFuZCBvbiB1cGRhdGVzLCBidXQgRGVzaXJlZEVDMkluc3RhbmNlcyB3aWxsIG9ubHkgYmUgYXBwbGllZCBvbmNlIG9uIGZsZWV0IGNyZWF0aW9uIGFuZCB3aWxsIGJlIGlnbm9yZWQgZHVyaW5nIHVwZGF0ZXMgdG8gcHJldmVudCBjb25mbGljdHMgd2l0aCBhdXRvLXNjYWxpbmcuIER1cmluZyB1cGRhdGVzIHdpdGggT05fQ1JFQVRFX0FORF9VUERBVEVfV0lUSF9BVVRPU0NBTElORyBjaG9zZW4sIGlmIGN1cnJlbnQgZGVzaXJlZCBpbnN0YW5jZSBpcyBsb3dlciB0aGFuIHRoZSBuZXcgTWluU2l6ZSwgaXQgd2lsbCBiZSBpbmNyZWFzZWQgdG8gdGhlIG5ldyBNaW5TaXplOyBpZiBjdXJyZW50IGRlc2lyZWQgaW5zdGFuY2UgaXMgbGFyZ2VyIHRoYW4gdGhlIG5ldyBNYXhTaXplLCBpdCB3aWxsIGJlIGRlY3JlYXNlZCB0byB0aGUgbmV3IE1heFNpemUuXG4gKi9cbkFwcGx5Q2FwYWNpdHk/OiAoXCJPTl9VUERBVEVcIiB8IFwiT05fQ1JFQVRFX0FORF9VUERBVEVcIiB8IFwiT05fQ1JFQVRFX0FORF9VUERBVEVfV0lUSF9BVVRPU0NBTElOR1wiKVxuQ2VydGlmaWNhdGVDb25maWd1cmF0aW9uPzogQ2VydGlmaWNhdGVDb25maWd1cmF0aW9uXG4vKipcbiAqIENvbXB1dGVUeXBlIHRvIGRpZmZlcmVudGlhdGUgRUMyIGhhcmR3YXJlIG1hbmFnZWQgYnkgR2FtZUxpZnQgYW5kIEFueXdoZXJlIGhhcmR3YXJlIG1hbmFnZWQgYnkgdGhlIGN1c3RvbWVyLlxuICovXG5Db21wdXRlVHlwZT86IChcIkVDMlwiIHwgXCJBTllXSEVSRVwiKVxuLyoqXG4gKiBBIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIGEgZmxlZXQuXG4gKi9cbkRlc2NyaXB0aW9uPzogc3RyaW5nXG4vKipcbiAqIFtERVBSRUNBVEVEXSBUaGUgbnVtYmVyIG9mIEVDMiBpbnN0YW5jZXMgdGhhdCB5b3Ugd2FudCB0aGlzIGZsZWV0IHRvIGhvc3QuIFdoZW4gY3JlYXRpbmcgYSBuZXcgZmxlZXQsIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgc2V0cyB0aGlzIHZhbHVlIHRvIFwiMVwiIGFuZCBpbml0aWF0ZXMgYSBzaW5nbGUgaW5zdGFuY2UuIE9uY2UgdGhlIGZsZWV0IGlzIGFjdGl2ZSwgdXBkYXRlIHRoaXMgdmFsdWUgdG8gdHJpZ2dlciBHYW1lTGlmdCB0byBhZGQgb3IgcmVtb3ZlIGluc3RhbmNlcyBmcm9tIHRoZSBmbGVldC5cbiAqL1xuRGVzaXJlZEVDMkluc3RhbmNlcz86IG51bWJlclxuLyoqXG4gKiBBIHJhbmdlIG9mIElQIGFkZHJlc3NlcyBhbmQgcG9ydCBzZXR0aW5ncyB0aGF0IGFsbG93IGluYm91bmQgdHJhZmZpYyB0byBjb25uZWN0IHRvIHNlcnZlciBwcm9jZXNzZXMgb24gYW4gQW1hem9uIEdhbWVMaWZ0IHNlcnZlci5cbiAqIFxuICogQG1heEl0ZW1zIDUwXG4gKi9cbkVDMkluYm91bmRQZXJtaXNzaW9ucz86IElwUGVybWlzc2lvbltdXG4vKipcbiAqIFRoZSBuYW1lIG9mIGFuIEVDMiBpbnN0YW5jZSB0eXBlIHRoYXQgaXMgc3VwcG9ydGVkIGluIEFtYXpvbiBHYW1lTGlmdC4gQSBmbGVldCBpbnN0YW5jZSB0eXBlIGRldGVybWluZXMgdGhlIGNvbXB1dGluZyByZXNvdXJjZXMgb2YgZWFjaCBpbnN0YW5jZSBpbiB0aGUgZmxlZXQsIGluY2x1ZGluZyBDUFUsIG1lbW9yeSwgc3RvcmFnZSwgYW5kIG5ldHdvcmtpbmcgY2FwYWNpdHkuIEFtYXpvbiBHYW1lTGlmdCBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIEVDMiBpbnN0YW5jZSB0eXBlcy4gU2VlIEFtYXpvbiBFQzIgSW5zdGFuY2UgVHlwZXMgZm9yIGRldGFpbGVkIGRlc2NyaXB0aW9ucy5cbiAqL1xuRUMySW5zdGFuY2VUeXBlPzogc3RyaW5nXG4vKipcbiAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHVzZSBPbi1EZW1hbmQgaW5zdGFuY2VzIG9yIFNwb3QgaW5zdGFuY2VzIGZvciB0aGlzIGZsZWV0LiBJZiBlbXB0eSwgdGhlIGRlZmF1bHQgaXMgT05fREVNQU5ELiBCb3RoIGNhdGVnb3JpZXMgb2YgaW5zdGFuY2VzIHVzZSBpZGVudGljYWwgaGFyZHdhcmUgYW5kIGNvbmZpZ3VyYXRpb25zIGJhc2VkIG9uIHRoZSBpbnN0YW5jZSB0eXBlIHNlbGVjdGVkIGZvciB0aGlzIGZsZWV0LlxuICovXG5GbGVldFR5cGU/OiAoXCJPTl9ERU1BTkRcIiB8IFwiU1BPVFwiKVxuLyoqXG4gKiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciBhbiBBV1MgSUFNIHJvbGUgdGhhdCBtYW5hZ2VzIGFjY2VzcyB0byB5b3VyIEFXUyBzZXJ2aWNlcy4gV2l0aCBhbiBpbnN0YW5jZSByb2xlIEFSTiBzZXQsIGFueSBhcHBsaWNhdGlvbiB0aGF0IHJ1bnMgb24gYW4gaW5zdGFuY2UgaW4gdGhpcyBmbGVldCBjYW4gYXNzdW1lIHRoZSByb2xlLCBpbmNsdWRpbmcgaW5zdGFsbCBzY3JpcHRzLCBzZXJ2ZXIgcHJvY2Vzc2VzLCBhbmQgZGFlbW9ucyAoYmFja2dyb3VuZCBwcm9jZXNzZXMpLiBDcmVhdGUgYSByb2xlIG9yIGxvb2sgdXAgYSByb2xlJ3MgQVJOIGZyb20gdGhlIElBTSBkYXNoYm9hcmQgaW4gdGhlIEFXUyBNYW5hZ2VtZW50IENvbnNvbGUuXG4gKi9cbkluc3RhbmNlUm9sZUFSTj86IHN0cmluZ1xuLyoqXG4gKiBDcmVkZW50aWFscyBwcm92aWRlciBpbXBsZW1lbnRhdGlvbiB0aGF0IGxvYWRzIGNyZWRlbnRpYWxzIGZyb20gdGhlIEFtYXpvbiBFQzIgSW5zdGFuY2UgTWV0YWRhdGEgU2VydmljZS5cbiAqL1xuSW5zdGFuY2VSb2xlQ3JlZGVudGlhbHNQcm92aWRlcj86IFwiU0hBUkVEX0NSRURFTlRJQUxfRklMRVwiXG4vKipcbiAqIEBtaW5JdGVtcyAxXG4gKiBAbWF4SXRlbXMgMTAwXG4gKi9cbkxvY2F0aW9ucz86IExvY2F0aW9uQ29uZmlndXJhdGlvbltdXG4vKipcbiAqIFRoaXMgcGFyYW1ldGVyIGlzIG5vIGxvbmdlciB1c2VkLiBXaGVuIGhvc3RpbmcgYSBjdXN0b20gZ2FtZSBidWlsZCwgc3BlY2lmeSB3aGVyZSBBbWF6b24gR2FtZUxpZnQgc2hvdWxkIHN0b3JlIGxvZyBmaWxlcyB1c2luZyB0aGUgQW1hem9uIEdhbWVMaWZ0IHNlcnZlciBBUEkgY2FsbCBQcm9jZXNzUmVhZHkoKVxuICovXG5Mb2dQYXRocz86IHN0cmluZ1tdXG4vKipcbiAqIFtERVBSRUNBVEVEXSBUaGUgbWF4aW11bSB2YWx1ZSB0aGF0IGlzIGFsbG93ZWQgZm9yIHRoZSBmbGVldCdzIGluc3RhbmNlIGNvdW50LiBXaGVuIGNyZWF0aW5nIGEgbmV3IGZsZWV0LCBHYW1lTGlmdCBhdXRvbWF0aWNhbGx5IHNldHMgdGhpcyB2YWx1ZSB0byBcIjFcIi4gT25jZSB0aGUgZmxlZXQgaXMgYWN0aXZlLCB5b3UgY2FuIGNoYW5nZSB0aGlzIHZhbHVlLlxuICovXG5NYXhTaXplPzogbnVtYmVyXG4vKipcbiAqIFRoZSBuYW1lIG9mIGFuIEFtYXpvbiBDbG91ZFdhdGNoIG1ldHJpYyBncm91cC4gQSBtZXRyaWMgZ3JvdXAgYWdncmVnYXRlcyB0aGUgbWV0cmljcyBmb3IgYWxsIGZsZWV0cyBpbiB0aGUgZ3JvdXAuIFNwZWNpZnkgYSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWV0cmljIGdyb3VwIG5hbWUuIFlvdSBjYW4gdXNlIGFuIGV4aXN0aW5nIG5hbWUgb3IgdXNlIGEgbmV3IG5hbWUgdG8gY3JlYXRlIGEgbmV3IG1ldHJpYyBncm91cC4gQ3VycmVudGx5LCB0aGlzIHBhcmFtZXRlciBjYW4gaGF2ZSBvbmx5IG9uZSBzdHJpbmcuXG4gKiBcbiAqIEBtYXhJdGVtcyAxXG4gKi9cbk1ldHJpY0dyb3Vwcz86IHN0cmluZ1tdXG4vKipcbiAqIFtERVBSRUNBVEVEXSBUaGUgbWluaW11bSB2YWx1ZSBhbGxvd2VkIGZvciB0aGUgZmxlZXQncyBpbnN0YW5jZSBjb3VudC4gV2hlbiBjcmVhdGluZyBhIG5ldyBmbGVldCwgR2FtZUxpZnQgYXV0b21hdGljYWxseSBzZXRzIHRoaXMgdmFsdWUgdG8gXCIwXCIuIEFmdGVyIHRoZSBmbGVldCBpcyBhY3RpdmUsIHlvdSBjYW4gY2hhbmdlIHRoaXMgdmFsdWUuXG4gKi9cbk1pblNpemU/OiBudW1iZXJcbi8qKlxuICogQSBkZXNjcmlwdGl2ZSBsYWJlbCB0aGF0IGlzIGFzc29jaWF0ZWQgd2l0aCBhIGZsZWV0LiBGbGVldCBuYW1lcyBkbyBub3QgbmVlZCB0byBiZSB1bmlxdWUuXG4gKi9cbk5hbWU6IHN0cmluZ1xuLyoqXG4gKiBBIGdhbWUgc2Vzc2lvbiBwcm90ZWN0aW9uIHBvbGljeSB0byBhcHBseSB0byBhbGwgZ2FtZSBzZXNzaW9ucyBob3N0ZWQgb24gaW5zdGFuY2VzIGluIHRoaXMgZmxlZXQuIFdoZW4gcHJvdGVjdGVkLCBhY3RpdmUgZ2FtZSBzZXNzaW9ucyBjYW5ub3QgYmUgdGVybWluYXRlZCBkdXJpbmcgYSBzY2FsZS1kb3duIGV2ZW50LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBub3Qgc2V0LCBpbnN0YW5jZXMgaW4gdGhpcyBmbGVldCBkZWZhdWx0IHRvIG5vIHByb3RlY3Rpb24uIFlvdSBjYW4gY2hhbmdlIGEgZmxlZXQncyBwcm90ZWN0aW9uIHBvbGljeSB0byBhZmZlY3QgZnV0dXJlIGdhbWUgc2Vzc2lvbnMgb24gdGhlIGZsZWV0LiBZb3UgY2FuIGFsc28gc2V0IHByb3RlY3Rpb24gZm9yIGluZGl2aWR1YWwgZ2FtZSBzZXNzaW9ucy5cbiAqL1xuTmV3R2FtZVNlc3Npb25Qcm90ZWN0aW9uUG9saWN5PzogKFwiRnVsbFByb3RlY3Rpb25cIiB8IFwiTm9Qcm90ZWN0aW9uXCIpXG4vKipcbiAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBBV1MgYWNjb3VudCB3aXRoIHRoZSBWUEMgdGhhdCB5b3Ugd2FudCB0byBwZWVyIHlvdXIgQW1hem9uIEdhbWVMaWZ0IGZsZWV0IHdpdGguIFlvdSBjYW4gZmluZCB5b3VyIGFjY291bnQgSUQgaW4gdGhlIEFXUyBNYW5hZ2VtZW50IENvbnNvbGUgdW5kZXIgYWNjb3VudCBzZXR0aW5ncy5cbiAqL1xuUGVlclZwY0F3c0FjY291bnRJZD86IHN0cmluZ1xuLyoqXG4gKiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciBhIFZQQyB3aXRoIHJlc291cmNlcyB0byBiZSBhY2Nlc3NlZCBieSB5b3VyIEFtYXpvbiBHYW1lTGlmdCBmbGVldC4gVGhlIFZQQyBtdXN0IGJlIGluIHRoZSBzYW1lIFJlZ2lvbiBhcyB5b3VyIGZsZWV0LiBUbyBsb29rIHVwIGEgVlBDIElELCB1c2UgdGhlIFZQQyBEYXNoYm9hcmQgaW4gdGhlIEFXUyBNYW5hZ2VtZW50IENvbnNvbGUuXG4gKi9cblBlZXJWcGNJZD86IHN0cmluZ1xuUmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5PzogUmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5XG4vKipcbiAqIFVuaXF1ZSBmbGVldCBJRFxuICovXG5GbGVldElkPzogc3RyaW5nXG4vKipcbiAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIGEgYnVpbGQgdG8gYmUgZGVwbG95ZWQgb24gdGhlIG5ldyBmbGVldC4gSWYgeW91IGFyZSBkZXBsb3lpbmcgdGhlIGZsZWV0IHdpdGggYSBjdXN0b20gZ2FtZSBidWlsZCwgeW91IG11c3Qgc3BlY2lmeSB0aGlzIHByb3BlcnR5LiBUaGUgYnVpbGQgbXVzdCBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkIHRvIEFtYXpvbiBHYW1lTGlmdCBhbmQgYmUgaW4gYSBSRUFEWSBzdGF0dXMuIFRoaXMgZmxlZXQgc2V0dGluZyBjYW5ub3QgYmUgY2hhbmdlZCBvbmNlIHRoZSBmbGVldCBpcyBjcmVhdGVkLlxuICovXG5CdWlsZElkPzogc3RyaW5nXG4vKipcbiAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIGEgUmVhbHRpbWUgc2NyaXB0IHRvIGJlIGRlcGxveWVkIG9uIGEgbmV3IFJlYWx0aW1lIFNlcnZlcnMgZmxlZXQuIFRoZSBzY3JpcHQgbXVzdCBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkIHRvIEFtYXpvbiBHYW1lTGlmdC4gVGhpcyBmbGVldCBzZXR0aW5nIGNhbm5vdCBiZSBjaGFuZ2VkIG9uY2UgdGhlIGZsZWV0IGlzIGNyZWF0ZWQuXG4gKiBcbiAqIE5vdGU6IEl0IGlzIG5vdCBjdXJyZW50bHkgcG9zc2libGUgdG8gdXNlIHRoZSAhUmVmIGNvbW1hbmQgdG8gcmVmZXJlbmNlIGEgc2NyaXB0IGNyZWF0ZWQgd2l0aCBhIENsb3VkRm9ybWF0aW9uIHRlbXBsYXRlIGZvciB0aGUgZmxlZXQgcHJvcGVydHkgU2NyaXB0SWQuIEluc3RlYWQsIHVzZSBGbjo6R2V0QXR0IFNjcmlwdC5Bcm4gb3IgRm46OkdldEF0dCBTY3JpcHQuSWQgdG8gcmV0cmlldmUgZWl0aGVyIG9mIHRoZXNlIHByb3BlcnRpZXMgYXMgaW5wdXQgZm9yIFNjcmlwdElkLiBBbHRlcm5hdGl2ZWx5LCBlbnRlciBhIFNjcmlwdElkIHN0cmluZyBtYW51YWxseS5cbiAqL1xuU2NyaXB0SWQ/OiBzdHJpbmdcblJ1bnRpbWVDb25maWd1cmF0aW9uPzogUnVudGltZUNvbmZpZ3VyYXRpb25cbi8qKlxuICogVGhpcyBwYXJhbWV0ZXIgaXMgbm8gbG9uZ2VyIHVzZWQgYnV0IGlzIHJldGFpbmVkIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LiBJbnN0ZWFkLCBzcGVjaWZ5IHNlcnZlciBsYXVuY2ggcGFyYW1ldGVycyBpbiB0aGUgUnVudGltZUNvbmZpZ3VyYXRpb24gcGFyYW1ldGVyLiBBIHJlcXVlc3QgbXVzdCBzcGVjaWZ5IGVpdGhlciBhIHJ1bnRpbWUgY29uZmlndXJhdGlvbiBvciB2YWx1ZXMgZm9yIGJvdGggU2VydmVyTGF1bmNoUGFyYW1ldGVycyBhbmQgU2VydmVyTGF1bmNoUGF0aC5cbiAqL1xuU2VydmVyTGF1bmNoUGFyYW1ldGVycz86IHN0cmluZ1xuLyoqXG4gKiBUaGlzIHBhcmFtZXRlciBpcyBubyBsb25nZXIgdXNlZC4gSW5zdGVhZCwgc3BlY2lmeSBhIHNlcnZlciBsYXVuY2ggcGF0aCB1c2luZyB0aGUgUnVudGltZUNvbmZpZ3VyYXRpb24gcGFyYW1ldGVyLiBSZXF1ZXN0cyB0aGF0IHNwZWNpZnkgYSBzZXJ2ZXIgbGF1bmNoIHBhdGggYW5kIGxhdW5jaCBwYXJhbWV0ZXJzIGluc3RlYWQgb2YgYSBydW50aW1lIGNvbmZpZ3VyYXRpb24gd2lsbCBjb250aW51ZSB0byB3b3JrLlxuICovXG5TZXJ2ZXJMYXVuY2hQYXRoPzogc3RyaW5nXG4vKipcbiAqIEFuIGFycmF5IG9mIGtleS12YWx1ZSBwYWlycyB0byBhcHBseSB0byB0aGlzIHJlc291cmNlLlxuICogXG4gKiBAbWF4SXRlbXMgMjAwXG4gKi9cblRhZ3M/OiBUYWdbXVxuLyoqXG4gKiBUaGUgQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgdGhhdCBpcyBhc3NpZ25lZCB0byBhIEFtYXpvbiBHYW1lTGlmdCBTZXJ2ZXJzIEZsZWV0IHJlc291cmNlIGFuZCB1bmlxdWVseSBpZGVudGlmaWVzIGl0LiBBUk5zIGFyZSB1bmlxdWUgYWNyb3NzIGFsbCBSZWdpb25zLiBJbiBhIEdhbWVMaWZ0IEZsZWV0IEFSTiwgdGhlIHJlc291cmNlIElEIG1hdGNoZXMgdGhlIEZsZWV0SWQgdmFsdWUuXG4gKi9cbkZsZWV0QXJuPzogc3RyaW5nXG59XG4vKipcbiAqIFJ1bGUgdGhhdCBjb250cm9scyBob3cgYSBmbGVldCBpcyBzY2FsZWQuIFNjYWxpbmcgcG9saWNpZXMgYXJlIHVuaXF1ZWx5IGlkZW50aWZpZWQgYnkgdGhlIGNvbWJpbmF0aW9uIG9mIG5hbWUgYW5kIGZsZWV0IElELlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjYWxpbmdQb2xpY3kge1xuLyoqXG4gKiBDb21wYXJpc29uIG9wZXJhdG9yIHRvIHVzZSB3aGVuIG1lYXN1cmluZyBhIG1ldHJpYyBhZ2FpbnN0IHRoZSB0aHJlc2hvbGQgdmFsdWUuXG4gKi9cbkNvbXBhcmlzb25PcGVyYXRvcj86IChcIkdyZWF0ZXJUaGFuT3JFcXVhbFRvVGhyZXNob2xkXCIgfCBcIkdyZWF0ZXJUaGFuVGhyZXNob2xkXCIgfCBcIkxlc3NUaGFuVGhyZXNob2xkXCIgfCBcIkxlc3NUaGFuT3JFcXVhbFRvVGhyZXNob2xkXCIpXG4vKipcbiAqIExlbmd0aCBvZiB0aW1lIChpbiBtaW51dGVzKSB0aGUgbWV0cmljIG11c3QgYmUgYXQgb3IgYmV5b25kIHRoZSB0aHJlc2hvbGQgYmVmb3JlIGEgc2NhbGluZyBldmVudCBpcyB0cmlnZ2VyZWQuXG4gKi9cbkV2YWx1YXRpb25QZXJpb2RzPzogbnVtYmVyXG5Mb2NhdGlvbj86IExvY2F0aW9uXG4vKipcbiAqIE5hbWUgb2YgdGhlIEFtYXpvbiBHYW1lTGlmdC1kZWZpbmVkIG1ldHJpYyB0aGF0IGlzIHVzZWQgdG8gdHJpZ2dlciBhIHNjYWxpbmcgYWRqdXN0bWVudC5cbiAqL1xuTWV0cmljTmFtZTogKFwiQWN0aXZhdGluZ0dhbWVTZXNzaW9uc1wiIHwgXCJBY3RpdmVHYW1lU2Vzc2lvbnNcIiB8IFwiQWN0aXZlSW5zdGFuY2VzXCIgfCBcIkF2YWlsYWJsZUdhbWVTZXNzaW9uc1wiIHwgXCJBdmFpbGFibGVQbGF5ZXJTZXNzaW9uc1wiIHwgXCJDdXJyZW50UGxheWVyU2Vzc2lvbnNcIiB8IFwiSWRsZUluc3RhbmNlc1wiIHwgXCJQZXJjZW50QXZhaWxhYmxlR2FtZVNlc3Npb25zXCIgfCBcIlBlcmNlbnRJZGxlSW5zdGFuY2VzXCIgfCBcIlF1ZXVlRGVwdGhcIiB8IFwiV2FpdFRpbWVcIiB8IFwiQ29uY3VycmVudEFjdGl2YXRhYmxlR2FtZVNlc3Npb25zXCIpXG4vKipcbiAqIEEgZGVzY3JpcHRpdmUgbGFiZWwgdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggYSBmbGVldCdzIHNjYWxpbmcgcG9saWN5LiBQb2xpY3kgbmFtZXMgZG8gbm90IG5lZWQgdG8gYmUgdW5pcXVlLlxuICovXG5OYW1lOiBzdHJpbmdcbi8qKlxuICogVGhlIHR5cGUgb2Ygc2NhbGluZyBwb2xpY3kgdG8gY3JlYXRlLiBGb3IgYSB0YXJnZXQtYmFzZWQgcG9saWN5LCBzZXQgdGhlIHBhcmFtZXRlciBNZXRyaWNOYW1lIHRvICdQZXJjZW50QXZhaWxhYmxlR2FtZVNlc3Npb25zJyBhbmQgc3BlY2lmeSBhIFRhcmdldENvbmZpZ3VyYXRpb24uIEZvciBhIHJ1bGUtYmFzZWQgcG9saWN5IHNldCB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnM6IE1ldHJpY05hbWUsIENvbXBhcmlzb25PcGVyYXRvciwgVGhyZXNob2xkLCBFdmFsdWF0aW9uUGVyaW9kcywgU2NhbGluZ0FkanVzdG1lbnRUeXBlLCBhbmQgU2NhbGluZ0FkanVzdG1lbnQuXG4gKi9cblBvbGljeVR5cGU/OiAoXCJSdWxlQmFzZWRcIiB8IFwiVGFyZ2V0QmFzZWRcIilcbi8qKlxuICogQW1vdW50IG9mIGFkanVzdG1lbnQgdG8gbWFrZSwgYmFzZWQgb24gdGhlIHNjYWxpbmcgYWRqdXN0bWVudCB0eXBlLlxuICovXG5TY2FsaW5nQWRqdXN0bWVudD86IG51bWJlclxuLyoqXG4gKiBUaGUgdHlwZSBvZiBhZGp1c3RtZW50IHRvIG1ha2UgdG8gYSBmbGVldCdzIGluc3RhbmNlIGNvdW50LlxuICovXG5TY2FsaW5nQWRqdXN0bWVudFR5cGU/OiAoXCJDaGFuZ2VJbkNhcGFjaXR5XCIgfCBcIkV4YWN0Q2FwYWNpdHlcIiB8IFwiUGVyY2VudENoYW5nZUluQ2FwYWNpdHlcIilcbi8qKlxuICogQ3VycmVudCBzdGF0dXMgb2YgdGhlIHNjYWxpbmcgcG9saWN5LiBUaGUgc2NhbGluZyBwb2xpY3kgY2FuIGJlIGluIGZvcmNlIG9ubHkgd2hlbiBpbiBhbiBBQ1RJVkUgc3RhdHVzLiBTY2FsaW5nIHBvbGljaWVzIGNhbiBiZSBzdXNwZW5kZWQgZm9yIGluZGl2aWR1YWwgZmxlZXRzLiBJZiB0aGUgcG9saWN5IGlzIHN1c3BlbmRlZCBmb3IgYSBmbGVldCwgdGhlIHBvbGljeSBzdGF0dXMgZG9lcyBub3QgY2hhbmdlLlxuICovXG5TdGF0dXM/OiAoXCJBQ1RJVkVcIiB8IFwiVVBEQVRFX1JFUVVFU1RFRFwiIHwgXCJVUERBVElOR1wiIHwgXCJERUxFVEVfUkVRVUVTVEVEXCIgfCBcIkRFTEVUSU5HXCIgfCBcIkRFTEVURURcIiB8IFwiRVJST1JcIilcblRhcmdldENvbmZpZ3VyYXRpb24/OiBUYXJnZXRDb25maWd1cmF0aW9uXG4vKipcbiAqIE1ldHJpYyB2YWx1ZSB1c2VkIHRvIHRyaWdnZXIgYSBzY2FsaW5nIGV2ZW50LlxuICovXG5UaHJlc2hvbGQ/OiBudW1iZXJcbi8qKlxuICogVGhlIGN1cnJlbnQgc3RhdHVzIG9mIHRoZSBmbGVldCdzIHNjYWxpbmcgcG9saWNpZXMgaW4gYSByZXF1ZXN0ZWQgZmxlZXQgbG9jYXRpb24uIFRoZSBzdGF0dXMgUEVORElOR19VUERBVEUgaW5kaWNhdGVzIHRoYXQgYW4gdXBkYXRlIHdhcyByZXF1ZXN0ZWQgZm9yIHRoZSBmbGVldCBidXQgaGFzIG5vdCB5ZXQgYmVlbiBjb21wbGV0ZWQgZm9yIHRoZSBsb2NhdGlvbi5cbiAqL1xuVXBkYXRlU3RhdHVzPzogXCJQRU5ESU5HX1VQREFURVwiXG59XG4vKipcbiAqIEFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIHNldHRpbmdzIGZvciBhIHRhcmdldC1iYXNlZCBzY2FsaW5nIHBvbGljeS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYXJnZXRDb25maWd1cmF0aW9uIHtcbi8qKlxuICogRGVzaXJlZCB2YWx1ZSB0byB1c2Ugd2l0aCBhIHRhcmdldC1iYXNlZCBzY2FsaW5nIHBvbGljeS4gVGhlIHZhbHVlIG11c3QgYmUgcmVsZXZhbnQgZm9yIHdoYXRldmVyIG1ldHJpYyB0aGUgc2NhbGluZyBwb2xpY3kgaXMgdXNpbmcuIEZvciBleGFtcGxlLCBpbiBhIHBvbGljeSB1c2luZyB0aGUgbWV0cmljIFBlcmNlbnRBdmFpbGFibGVHYW1lU2Vzc2lvbnMsIHRoZSB0YXJnZXQgdmFsdWUgc2hvdWxkIGJlIHRoZSBwcmVmZXJyZWQgc2l6ZSBvZiB0aGUgZmxlZXQncyBidWZmZXIgKHRoZSBwZXJjZW50IG9mIGNhcGFjaXR5IHRoYXQgc2hvdWxkIGJlIGlkbGUgYW5kIHJlYWR5IGZvciBuZXcgZ2FtZSBzZXNzaW9ucykuXG4gKi9cblRhcmdldFZhbHVlOiBudW1iZXJcbn1cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgQW55d2hlcmUgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQW55d2hlcmVDb25maWd1cmF0aW9uIHtcbi8qKlxuICogQ29zdCBvZiBjb21wdXRlIGNhbiBiZSBzcGVjaWZpZWQgb24gQW55d2hlcmUgRmxlZXRzIHRvIHByaW9yaXRpemUgcGxhY2VtZW50IGFjcm9zcyBRdWV1ZSBkZXN0aW5hdGlvbnMgYmFzZWQgb24gQ29zdC5cbiAqL1xuQ29zdDogc3RyaW5nXG59XG4vKipcbiAqIEluZGljYXRlcyB3aGV0aGVyIHRvIGdlbmVyYXRlIGEgVExTL1NTTCBjZXJ0aWZpY2F0ZSBmb3IgdGhlIG5ldyBmbGVldC4gVExTIGNlcnRpZmljYXRlcyBhcmUgdXNlZCBmb3IgZW5jcnlwdGluZyB0cmFmZmljIGJldHdlZW4gZ2FtZSBjbGllbnRzIGFuZCBnYW1lIHNlcnZlcnMgcnVubmluZyBvbiBHYW1lTGlmdC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNldCwgY2VydGlmaWNhdGUgZ2VuZXJhdGlvbiBpcyBkaXNhYmxlZC4gVGhpcyBmbGVldCBzZXR0aW5nIGNhbm5vdCBiZSBjaGFuZ2VkIG9uY2UgdGhlIGZsZWV0IGlzIGNyZWF0ZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2VydGlmaWNhdGVDb25maWd1cmF0aW9uIHtcbkNlcnRpZmljYXRlVHlwZTogKFwiRElTQUJMRURcIiB8IFwiR0VORVJBVEVEXCIpXG59XG4vKipcbiAqIEEgcmFuZ2Ugb2YgSVAgYWRkcmVzc2VzIGFuZCBwb3J0IHNldHRpbmdzIHRoYXQgYWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIGNvbm5lY3QgdG8gc2VydmVyIHByb2Nlc3NlcyBvbiBhbiBBbWF6b24gR2FtZUxpZnQgaG9zdGluZyByZXNvdXJjZS4gTmV3IGdhbWUgc2Vzc2lvbnMgdGhhdCBhcmUgc3RhcnRlZCBvbiB0aGUgZmxlZXQgYXJlIGFzc2lnbmVkIGFuIElQIGFkZHJlc3MvcG9ydCBudW1iZXIgY29tYmluYXRpb24sIHdoaWNoIG11c3QgZmFsbCBpbnRvIHRoZSBmbGVldCdzIGFsbG93ZWQgcmFuZ2VzLiBGb3IgZmxlZXRzIGNyZWF0ZWQgd2l0aCBhIGN1c3RvbSBnYW1lIHNlcnZlciwgdGhlIHJhbmdlcyByZWZsZWN0IHRoZSBzZXJ2ZXIncyBnYW1lIHNlc3Npb24gYXNzaWdubWVudHMuIEZvciBSZWFsdGltZSBTZXJ2ZXJzIGZsZWV0cywgQW1hem9uIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgb3BlbnMgdHdvIHBvcnQgcmFuZ2VzLCBvbmUgZm9yIFRDUCBtZXNzYWdpbmcgYW5kIG9uZSBmb3IgVURQLCBmb3IgdXNlIGJ5IHRoZSBSZWFsdGltZSBzZXJ2ZXJzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElwUGVybWlzc2lvbiB7XG4vKipcbiAqIEEgc3RhcnRpbmcgdmFsdWUgZm9yIGEgcmFuZ2Ugb2YgYWxsb3dlZCBwb3J0IG51bWJlcnMuXG4gKi9cbkZyb21Qb3J0OiBudW1iZXJcbi8qKlxuICogQSByYW5nZSBvZiBhbGxvd2VkIElQIGFkZHJlc3Nlcy4gVGhpcyB2YWx1ZSBtdXN0IGJlIGV4cHJlc3NlZCBpbiBDSURSIG5vdGF0aW9uLiBFeGFtcGxlOiBcIjAwMC4wMDAuMDAwLjAwMC9bc3VibmV0IG1hc2tdXCIgb3Igb3B0aW9uYWxseSB0aGUgc2hvcnRlbmVkIHZlcnNpb24gXCIwLjAuMC4wL1tzdWJuZXQgbWFza11cIi5cbiAqL1xuSXBSYW5nZTogc3RyaW5nXG4vKipcbiAqIFRoZSBuZXR3b3JrIGNvbW11bmljYXRpb24gcHJvdG9jb2wgdXNlZCBieSB0aGUgZmxlZXQuXG4gKi9cblByb3RvY29sOiAoXCJUQ1BcIiB8IFwiVURQXCIpXG4vKipcbiAqIEFuIGVuZGluZyB2YWx1ZSBmb3IgYSByYW5nZSBvZiBhbGxvd2VkIHBvcnQgbnVtYmVycy4gUG9ydCBudW1iZXJzIGFyZSBlbmQtaW5jbHVzaXZlLiBUaGlzIHZhbHVlIG11c3QgYmUgaGlnaGVyIHRoYW4gRnJvbVBvcnQuXG4gKi9cblRvUG9ydDogbnVtYmVyXG59XG4vKipcbiAqIEEgcmVtb3RlIGxvY2F0aW9uIHdoZXJlIGEgbXVsdGktbG9jYXRpb24gZmxlZXQgY2FuIGRlcGxveSBFQzIgaW5zdGFuY2VzIGZvciBnYW1lIGhvc3RpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYXRpb25Db25maWd1cmF0aW9uIHtcbkxvY2F0aW9uOiBMb2NhdGlvblxuTG9jYXRpb25DYXBhY2l0eT86IExvY2F0aW9uQ2FwYWNpdHlcbn1cbi8qKlxuICogQ3VycmVudCByZXNvdXJjZSBjYXBhY2l0eSBzZXR0aW5ncyBpbiBhIHNwZWNpZmllZCBmbGVldCBvciBsb2NhdGlvbi4gVGhlIGxvY2F0aW9uIHZhbHVlIG1pZ2h0IHJlZmVyIHRvIGEgZmxlZXQncyByZW1vdGUgbG9jYXRpb24gb3IgaXRzIGhvbWUgUmVnaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQ2FwYWNpdHkge1xuLyoqXG4gKiBEZWZhdWx0cyB0byBNaW5TaXplIGlmIG5vdCBkZWZpbmVkLiBUaGUgbnVtYmVyIG9mIEVDMiBpbnN0YW5jZXMgeW91IHdhbnQgdG8gbWFpbnRhaW4gaW4gdGhlIHNwZWNpZmllZCBmbGVldCBsb2NhdGlvbi4gVGhpcyB2YWx1ZSBtdXN0IGZhbGwgYmV0d2VlbiB0aGUgbWluaW11bSBhbmQgbWF4aW11bSBzaXplIGxpbWl0cy5cbiAqL1xuRGVzaXJlZEVDMkluc3RhbmNlcz86IG51bWJlclxuLyoqXG4gKiBUaGUgbWluaW11bSB2YWx1ZSBhbGxvd2VkIGZvciB0aGUgZmxlZXQncyBpbnN0YW5jZSBjb3VudCBmb3IgYSBsb2NhdGlvbi4gV2hlbiBjcmVhdGluZyBhIG5ldyBmbGVldCwgR2FtZUxpZnQgYXV0b21hdGljYWxseSBzZXRzIHRoaXMgdmFsdWUgdG8gXCIwXCIuIEFmdGVyIHRoZSBmbGVldCBpcyBhY3RpdmUsIHlvdSBjYW4gY2hhbmdlIHRoaXMgdmFsdWUuXG4gKi9cbk1pblNpemU6IG51bWJlclxuLyoqXG4gKiBUaGUgbWF4aW11bSB2YWx1ZSB0aGF0IGlzIGFsbG93ZWQgZm9yIHRoZSBmbGVldCdzIGluc3RhbmNlIGNvdW50IGZvciBhIGxvY2F0aW9uLiBXaGVuIGNyZWF0aW5nIGEgbmV3IGZsZWV0LCBHYW1lTGlmdCBhdXRvbWF0aWNhbGx5IHNldHMgdGhpcyB2YWx1ZSB0byBcIjFcIi4gT25jZSB0aGUgZmxlZXQgaXMgYWN0aXZlLCB5b3UgY2FuIGNoYW5nZSB0aGlzIHZhbHVlLlxuICovXG5NYXhTaXplOiBudW1iZXJcbn1cbi8qKlxuICogQSBwb2xpY3kgdGhhdCBsaW1pdHMgdGhlIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIGFuIGluZGl2aWR1YWwgcGxheWVyIGNhbiBjcmVhdGUgb3ZlciBhIHNwYW4gb2YgdGltZSBmb3IgdGhpcyBmbGVldC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kge1xuLyoqXG4gKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyB0aGF0IGFuIGluZGl2aWR1YWwgY2FuIGNyZWF0ZSBkdXJpbmcgdGhlIHBvbGljeSBwZXJpb2QuXG4gKi9cbk5ld0dhbWVTZXNzaW9uc1BlckNyZWF0b3I/OiBudW1iZXJcbi8qKlxuICogVGhlIHRpbWUgc3BhbiB1c2VkIGluIGV2YWx1YXRpbmcgdGhlIHJlc291cmNlIGNyZWF0aW9uIGxpbWl0IHBvbGljeS5cbiAqL1xuUG9saWN5UGVyaW9kSW5NaW51dGVzPzogbnVtYmVyXG59XG4vKipcbiAqIEluc3RydWN0aW9ucyBmb3IgbGF1bmNoaW5nIHNlcnZlciBwcm9jZXNzZXMgb24gZWFjaCBpbnN0YW5jZSBpbiB0aGUgZmxlZXQuIFNlcnZlciBwcm9jZXNzZXMgcnVuIGVpdGhlciBhIGN1c3RvbSBnYW1lIGJ1aWxkIGV4ZWN1dGFibGUgb3IgYSBSZWFsdGltZSBzY3JpcHQuIFRoZSBydW50aW1lIGNvbmZpZ3VyYXRpb24gZGVmaW5lcyB0aGUgc2VydmVyIGV4ZWN1dGFibGVzIG9yIGxhdW5jaCBzY3JpcHQgZmlsZSwgbGF1bmNoIHBhcmFtZXRlcnMsIGFuZCB0aGUgbnVtYmVyIG9mIHByb2Nlc3NlcyB0byBydW4gY29uY3VycmVudGx5IG9uIGVhY2ggaW5zdGFuY2UuIFdoZW4gY3JlYXRpbmcgYSBmbGVldCwgdGhlIHJ1bnRpbWUgY29uZmlndXJhdGlvbiBtdXN0IGhhdmUgYXQgbGVhc3Qgb25lIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb247IG90aGVyd2lzZSB0aGUgcmVxdWVzdCBmYWlscyB3aXRoIGFuIGludmFsaWQgcmVxdWVzdCBleGNlcHRpb24uXG4gKiBcbiAqIFRoaXMgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIHVubGVzcyB0aGUgcGFyYW1ldGVycyBTZXJ2ZXJMYXVuY2hQYXRoIGFuZCBTZXJ2ZXJMYXVuY2hQYXJhbWV0ZXJzIGFyZSBkZWZpbmVkLiBSdW50aW1lIGNvbmZpZ3VyYXRpb24gaGFzIHJlcGxhY2VkIHRoZXNlIHBhcmFtZXRlcnMsIGJ1dCBmbGVldHMgdGhhdCB1c2UgdGhlbSB3aWxsIGNvbnRpbnVlIHRvIHdvcmsuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVudGltZUNvbmZpZ3VyYXRpb24ge1xuLyoqXG4gKiBUaGUgbWF4aW11bSBhbW91bnQgb2YgdGltZSAoaW4gc2Vjb25kcykgdGhhdCBhIGdhbWUgc2Vzc2lvbiBjYW4gcmVtYWluIGluIHN0YXR1cyBBQ1RJVkFUSU5HLiBJZiB0aGUgZ2FtZSBzZXNzaW9uIGlzIG5vdCBhY3RpdmUgYmVmb3JlIHRoZSB0aW1lb3V0LCBhY3RpdmF0aW9uIGlzIHRlcm1pbmF0ZWQgYW5kIHRoZSBnYW1lIHNlc3Npb24gc3RhdHVzIGlzIGNoYW5nZWQgdG8gVEVSTUlOQVRFRC5cbiAqL1xuR2FtZVNlc3Npb25BY3RpdmF0aW9uVGltZW91dFNlY29uZHM/OiBudW1iZXJcbi8qKlxuICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGdhbWUgc2Vzc2lvbnMgd2l0aCBzdGF0dXMgQUNUSVZBVElORyB0byBhbGxvdyBvbiBhbiBpbnN0YW5jZSBzaW11bHRhbmVvdXNseS4gVGhpcyBzZXR0aW5nIGxpbWl0cyB0aGUgYW1vdW50IG9mIGluc3RhbmNlIHJlc291cmNlcyB0aGF0IGNhbiBiZSB1c2VkIGZvciBuZXcgZ2FtZSBhY3RpdmF0aW9ucyBhdCBhbnkgb25lIHRpbWUuXG4gKi9cbk1heENvbmN1cnJlbnRHYW1lU2Vzc2lvbkFjdGl2YXRpb25zPzogbnVtYmVyXG4vKipcbiAqIEEgY29sbGVjdGlvbiBvZiBzZXJ2ZXIgcHJvY2VzcyBjb25maWd1cmF0aW9ucyB0aGF0IGRlc2NyaWJlIHdoaWNoIHNlcnZlciBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAqIFxuICogQG1heEl0ZW1zIDUwXG4gKi9cblNlcnZlclByb2Nlc3Nlcz86IFNlcnZlclByb2Nlc3NbXVxufVxuLyoqXG4gKiBBIHNldCBvZiBpbnN0cnVjdGlvbnMgZm9yIGxhdW5jaGluZyBzZXJ2ZXIgcHJvY2Vzc2VzIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC4gRWFjaCBpbnN0cnVjdGlvbiBzZXQgaWRlbnRpZmllcyB0aGUgbG9jYXRpb24gb2YgdGhlIHNlcnZlciBleGVjdXRhYmxlLCBvcHRpb25hbCBsYXVuY2ggcGFyYW1ldGVycywgYW5kIHRoZSBudW1iZXIgb2Ygc2VydmVyIHByb2Nlc3NlcyB3aXRoIHRoaXMgY29uZmlndXJhdGlvbiB0byBtYWludGFpbiBjb25jdXJyZW50bHkgb24gdGhlIGluc3RhbmNlLiBTZXJ2ZXIgcHJvY2VzcyBjb25maWd1cmF0aW9ucyBtYWtlIHVwIGEgZmxlZXQncyBSdW50aW1lQ29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZXJQcm9jZXNzIHtcbi8qKlxuICogVGhlIG51bWJlciBvZiBzZXJ2ZXIgcHJvY2Vzc2VzIHRoYXQgdXNlIHRoaXMgY29uZmlndXJhdGlvbiB0byBydW4gY29uY3VycmVudGx5IG9uIGFuIGluc3RhbmNlLlxuICovXG5Db25jdXJyZW50RXhlY3V0aW9uczogbnVtYmVyXG4vKipcbiAqIFRoZSBsb2NhdGlvbiBvZiB0aGUgc2VydmVyIGV4ZWN1dGFibGUgaW4gYSBjdXN0b20gZ2FtZSBidWlsZCBvciB0aGUgbmFtZSBvZiB0aGUgUmVhbHRpbWUgc2NyaXB0IGZpbGUgdGhhdCBjb250YWlucyB0aGUgSW5pdCgpIGZ1bmN0aW9uLiBHYW1lIGJ1aWxkcyBhbmQgUmVhbHRpbWUgc2NyaXB0cyBhcmUgaW5zdGFsbGVkIG9uIGluc3RhbmNlcyBhdCB0aGUgcm9vdDpcbiAqIFxuICogV2luZG93cyAoZm9yIGN1c3RvbSBnYW1lIGJ1aWxkcyBvbmx5KTogQzpcXGdhbWUuIEV4YW1wbGU6IFwiQzpcXGdhbWVcXE15R2FtZVxcc2VydmVyLmV4ZVwiXG4gKiBcbiAqIExpbnV4OiAvbG9jYWwvZ2FtZS4gRXhhbXBsZXM6IFwiL2xvY2FsL2dhbWUvTXlHYW1lL3NlcnZlci5leGVcIiBvciBcIi9sb2NhbC9nYW1lL015UmVhbHRpbWVTY3JpcHQuanNcIlxuICovXG5MYXVuY2hQYXRoOiBzdHJpbmdcbi8qKlxuICogQW4gb3B0aW9uYWwgbGlzdCBvZiBwYXJhbWV0ZXJzIHRvIHBhc3MgdG8gdGhlIHNlcnZlciBleGVjdXRhYmxlIG9yIFJlYWx0aW1lIHNjcmlwdCBvbiBsYXVuY2guXG4gKi9cblBhcmFtZXRlcnM/OiBzdHJpbmdcbn1cbi8qKlxuICogQSBrZXktdmFsdWUgcGFpciB0byBhc3NvY2lhdGUgd2l0aCBhIHJlc291cmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhZyB7XG4vKipcbiAqIFRoZSBrZXkgbmFtZSBvZiB0aGUgdGFnLiBZb3UgY2FuIHNwZWNpZnkgYSB2YWx1ZSB0aGF0IGlzIDEgdG8gMTI4IFVuaWNvZGUgY2hhcmFjdGVycyBpbiBsZW5ndGguXG4gKi9cbktleTogc3RyaW5nXG4vKipcbiAqIFRoZSB2YWx1ZSBmb3IgdGhlIHRhZy4gWW91IGNhbiBzcGVjaWZ5IGEgdmFsdWUgdGhhdCBpcyAwIHRvIDI1NiBVbmljb2RlIGNoYXJhY3RlcnMgaW4gbGVuZ3RoLlxuICovXG5WYWx1ZTogc3RyaW5nXG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWdhbWVsaWZ0LWZsZWV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWdhbWVsaWZ0LWZsZWV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBMb2NhdGlvbiA9IHN0cmluZ1xuXG4vKipcbiAqIFRoZSBBV1M6OkdhbWVMaWZ0OjpGbGVldCByZXNvdXJjZSBjcmVhdGVzIGFuIEFtYXpvbiBHYW1lTGlmdCAoR2FtZUxpZnQpIGZsZWV0IHRvIGhvc3QgZ2FtZSBzZXJ2ZXJzLiBBIGZsZWV0IGlzIGEgc2V0IG9mIEVDMiBvciBBbnl3aGVyZSBpbnN0YW5jZXMsIGVhY2ggb2Ygd2hpY2ggY2FuIGhvc3QgbXVsdGlwbGUgZ2FtZSBzZXNzaW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBfQVdTX0dBTUVMSUZUX0ZMRUVUIHtcbi8qKlxuICogQSBsaXN0IG9mIHJ1bGVzIHRoYXQgY29udHJvbCBob3cgYSBmbGVldCBpcyBzY2FsZWQuXG4gKiBcbiAqIEBtYXhJdGVtcyA1MFxuICovXG5TY2FsaW5nUG9saWNpZXM/OiBTY2FsaW5nUG9saWN5W11cbi8qKlxuICogQSBodW1hbi1yZWFkYWJsZSBkZXNjcmlwdGlvbiBvZiBhIGZsZWV0LlxuICovXG5EZXNjcmlwdGlvbj86IHN0cmluZ1xuLyoqXG4gKiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciBhIFZQQyB3aXRoIHJlc291cmNlcyB0byBiZSBhY2Nlc3NlZCBieSB5b3VyIEFtYXpvbiBHYW1lTGlmdCBmbGVldC4gVGhlIFZQQyBtdXN0IGJlIGluIHRoZSBzYW1lIFJlZ2lvbiBhcyB5b3VyIGZsZWV0LiBUbyBsb29rIHVwIGEgVlBDIElELCB1c2UgdGhlIFZQQyBEYXNoYm9hcmQgaW4gdGhlIEFXUyBNYW5hZ2VtZW50IENvbnNvbGUuXG4gKi9cblBlZXJWcGNJZD86IHN0cmluZ1xuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZW4gYW5kIGhvdyB0byBhcHBseSBmbGVldCBvciBsb2NhdGlvbiBjYXBhY2l0aWVzLiBBbGxvd2VkIG9wdGlvbnMgYXJlIE9OX1VQREFURSAoZGVmYXVsdCksIE9OX0NSRUFURV9BTkRfVVBEQVRFIGFuZCBPTl9DUkVBVEVfQU5EX1VQREFURV9XSVRIX0FVVE9TQ0FMSU5HLiBJZiB5b3UgY2hvb3NlIE9OX0NSRUFURV9BTkRfVVBEQVRFX1dJVEhfQVVUT1NDQUxJTkcsIE1pblNpemUgYW5kIE1heFNpemUgd2lsbCBzdGlsbCBiZSBhcHBsaWVkIG9uIGNyZWF0aW9uIGFuZCBvbiB1cGRhdGVzLCBidXQgRGVzaXJlZEVDMkluc3RhbmNlcyB3aWxsIG9ubHkgYmUgYXBwbGllZCBvbmNlIG9uIGZsZWV0IGNyZWF0aW9uIGFuZCB3aWxsIGJlIGlnbm9yZWQgZHVyaW5nIHVwZGF0ZXMgdG8gcHJldmVudCBjb25mbGljdHMgd2l0aCBhdXRvLXNjYWxpbmcuIER1cmluZyB1cGRhdGVzIHdpdGggT05fQ1JFQVRFX0FORF9VUERBVEVfV0lUSF9BVVRPU0NBTElORyBjaG9zZW4sIGlmIGN1cnJlbnQgZGVzaXJlZCBpbnN0YW5jZSBpcyBsb3dlciB0aGFuIHRoZSBuZXcgTWluU2l6ZSwgaXQgd2lsbCBiZSBpbmNyZWFzZWQgdG8gdGhlIG5ldyBNaW5TaXplOyBpZiBjdXJyZW50IGRlc2lyZWQgaW5zdGFuY2UgaXMgbGFyZ2VyIHRoYW4gdGhlIG5ldyBNYXhTaXplLCBpdCB3aWxsIGJlIGRlY3JlYXNlZCB0byB0aGUgbmV3IE1heFNpemUuXG4gKi9cbkFwcGx5Q2FwYWNpdHk/OiAoXCJPTl9VUERBVEVcIiB8IFwiT05fQ1JFQVRFX0FORF9VUERBVEVcIiB8IFwiT05fQ1JFQVRFX0FORF9VUERBVEVfV0lUSF9BVVRPU0NBTElOR1wiKVxuLyoqXG4gKiBBIHJhbmdlIG9mIElQIGFkZHJlc3NlcyBhbmQgcG9ydCBzZXR0aW5ncyB0aGF0IGFsbG93IGluYm91bmQgdHJhZmZpYyB0byBjb25uZWN0IHRvIHNlcnZlciBwcm9jZXNzZXMgb24gYW4gQW1hem9uIEdhbWVMaWZ0IHNlcnZlci5cbiAqIFxuICogQG1heEl0ZW1zIDUwXG4gKi9cbkVDMkluYm91bmRQZXJtaXNzaW9ucz86IElwUGVybWlzc2lvbltdXG4vKipcbiAqIENvbXB1dGVUeXBlIHRvIGRpZmZlcmVudGlhdGUgRUMyIGhhcmR3YXJlIG1hbmFnZWQgYnkgR2FtZUxpZnQgYW5kIEFueXdoZXJlIGhhcmR3YXJlIG1hbmFnZWQgYnkgdGhlIGN1c3RvbWVyLlxuICovXG5Db21wdXRlVHlwZT86IChcIkVDMlwiIHwgXCJBTllXSEVSRVwiKVxuLyoqXG4gKiBBIGRlc2NyaXB0aXZlIGxhYmVsIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIGEgZmxlZXQuIEZsZWV0IG5hbWVzIGRvIG5vdCBuZWVkIHRvIGJlIHVuaXF1ZS5cbiAqL1xuTmFtZTogc3RyaW5nXG5Bbnl3aGVyZUNvbmZpZ3VyYXRpb24/OiBBbnl3aGVyZUNvbmZpZ3VyYXRpb25cbi8qKlxuICogQSB1bmlxdWUgaWRlbnRpZmllciBmb3IgYW4gQVdTIElBTSByb2xlIHRoYXQgbWFuYWdlcyBhY2Nlc3MgdG8geW91ciBBV1Mgc2VydmljZXMuIFdpdGggYW4gaW5zdGFuY2Ugcm9sZSBBUk4gc2V0LCBhbnkgYXBwbGljYXRpb24gdGhhdCBydW5zIG9uIGFuIGluc3RhbmNlIGluIHRoaXMgZmxlZXQgY2FuIGFzc3VtZSB0aGUgcm9sZSwgaW5jbHVkaW5nIGluc3RhbGwgc2NyaXB0cywgc2VydmVyIHByb2Nlc3NlcywgYW5kIGRhZW1vbnMgKGJhY2tncm91bmQgcHJvY2Vzc2VzKS4gQ3JlYXRlIGEgcm9sZSBvciBsb29rIHVwIGEgcm9sZSdzIEFSTiBmcm9tIHRoZSBJQU0gZGFzaGJvYXJkIGluIHRoZSBBV1MgTWFuYWdlbWVudCBDb25zb2xlLlxuICovXG5JbnN0YW5jZVJvbGVBUk4/OiBzdHJpbmdcbi8qKlxuICogVW5pcXVlIGZsZWV0IElEXG4gKi9cbkZsZWV0SWQ/OiBzdHJpbmdcbkNlcnRpZmljYXRlQ29uZmlndXJhdGlvbj86IENlcnRpZmljYXRlQ29uZmlndXJhdGlvblxuLyoqXG4gKiBDcmVkZW50aWFscyBwcm92aWRlciBpbXBsZW1lbnRhdGlvbiB0aGF0IGxvYWRzIGNyZWRlbnRpYWxzIGZyb20gdGhlIEFtYXpvbiBFQzIgSW5zdGFuY2UgTWV0YWRhdGEgU2VydmljZS5cbiAqL1xuSW5zdGFuY2VSb2xlQ3JlZGVudGlhbHNQcm92aWRlcj86IFwiU0hBUkVEX0NSRURFTlRJQUxfRklMRVwiXG4vKipcbiAqIFtERVBSRUNBVEVEXSBUaGUgbnVtYmVyIG9mIEVDMiBpbnN0YW5jZXMgdGhhdCB5b3Ugd2FudCB0aGlzIGZsZWV0IHRvIGhvc3QuIFdoZW4gY3JlYXRpbmcgYSBuZXcgZmxlZXQsIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgc2V0cyB0aGlzIHZhbHVlIHRvIFwiMVwiIGFuZCBpbml0aWF0ZXMgYSBzaW5nbGUgaW5zdGFuY2UuIE9uY2UgdGhlIGZsZWV0IGlzIGFjdGl2ZSwgdXBkYXRlIHRoaXMgdmFsdWUgdG8gdHJpZ2dlciBHYW1lTGlmdCB0byBhZGQgb3IgcmVtb3ZlIGluc3RhbmNlcyBmcm9tIHRoZSBmbGVldC5cbiAqL1xuRGVzaXJlZEVDMkluc3RhbmNlcz86IG51bWJlclxuLyoqXG4gKiBBbiBhcnJheSBvZiBrZXktdmFsdWUgcGFpcnMgdG8gYXBwbHkgdG8gdGhpcyByZXNvdXJjZS5cbiAqIFxuICogQG1heEl0ZW1zIDIwMFxuICovXG5UYWdzPzogVGFnW11cbi8qKlxuICogVGhlIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIHRoYXQgaXMgYXNzaWduZWQgdG8gYSBBbWF6b24gR2FtZUxpZnQgU2VydmVycyBGbGVldCByZXNvdXJjZSBhbmQgdW5pcXVlbHkgaWRlbnRpZmllcyBpdC4gQVJOcyBhcmUgdW5pcXVlIGFjcm9zcyBhbGwgUmVnaW9ucy4gSW4gYSBHYW1lTGlmdCBGbGVldCBBUk4sIHRoZSByZXNvdXJjZSBJRCBtYXRjaGVzIHRoZSBGbGVldElkIHZhbHVlLlxuICovXG5GbGVldEFybj86IHN0cmluZ1xuLyoqXG4gKiBUaGlzIHBhcmFtZXRlciBpcyBubyBsb25nZXIgdXNlZCBidXQgaXMgcmV0YWluZWQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkuIEluc3RlYWQsIHNwZWNpZnkgc2VydmVyIGxhdW5jaCBwYXJhbWV0ZXJzIGluIHRoZSBSdW50aW1lQ29uZmlndXJhdGlvbiBwYXJhbWV0ZXIuIEEgcmVxdWVzdCBtdXN0IHNwZWNpZnkgZWl0aGVyIGEgcnVudGltZSBjb25maWd1cmF0aW9uIG9yIHZhbHVlcyBmb3IgYm90aCBTZXJ2ZXJMYXVuY2hQYXJhbWV0ZXJzIGFuZCBTZXJ2ZXJMYXVuY2hQYXRoLlxuICovXG5TZXJ2ZXJMYXVuY2hQYXJhbWV0ZXJzPzogc3RyaW5nXG4vKipcbiAqIEluZGljYXRlcyB3aGV0aGVyIHRvIHVzZSBPbi1EZW1hbmQgaW5zdGFuY2VzIG9yIFNwb3QgaW5zdGFuY2VzIGZvciB0aGlzIGZsZWV0LiBJZiBlbXB0eSwgdGhlIGRlZmF1bHQgaXMgT05fREVNQU5ELiBCb3RoIGNhdGVnb3JpZXMgb2YgaW5zdGFuY2VzIHVzZSBpZGVudGljYWwgaGFyZHdhcmUgYW5kIGNvbmZpZ3VyYXRpb25zIGJhc2VkIG9uIHRoZSBpbnN0YW5jZSB0eXBlIHNlbGVjdGVkIGZvciB0aGlzIGZsZWV0LlxuICovXG5GbGVldFR5cGU/OiAoXCJPTl9ERU1BTkRcIiB8IFwiU1BPVFwiKVxuLyoqXG4gKiBAbWluSXRlbXMgMVxuICogQG1heEl0ZW1zIDEwMFxuICovXG5Mb2NhdGlvbnM/OiBMb2NhdGlvbkNvbmZpZ3VyYXRpb25bXVxuLyoqXG4gKiBBIGdhbWUgc2Vzc2lvbiBwcm90ZWN0aW9uIHBvbGljeSB0byBhcHBseSB0byBhbGwgZ2FtZSBzZXNzaW9ucyBob3N0ZWQgb24gaW5zdGFuY2VzIGluIHRoaXMgZmxlZXQuIFdoZW4gcHJvdGVjdGVkLCBhY3RpdmUgZ2FtZSBzZXNzaW9ucyBjYW5ub3QgYmUgdGVybWluYXRlZCBkdXJpbmcgYSBzY2FsZS1kb3duIGV2ZW50LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBub3Qgc2V0LCBpbnN0YW5jZXMgaW4gdGhpcyBmbGVldCBkZWZhdWx0IHRvIG5vIHByb3RlY3Rpb24uIFlvdSBjYW4gY2hhbmdlIGEgZmxlZXQncyBwcm90ZWN0aW9uIHBvbGljeSB0byBhZmZlY3QgZnV0dXJlIGdhbWUgc2Vzc2lvbnMgb24gdGhlIGZsZWV0LiBZb3UgY2FuIGFsc28gc2V0IHByb3RlY3Rpb24gZm9yIGluZGl2aWR1YWwgZ2FtZSBzZXNzaW9ucy5cbiAqL1xuTmV3R2FtZVNlc3Npb25Qcm90ZWN0aW9uUG9saWN5PzogKFwiRnVsbFByb3RlY3Rpb25cIiB8IFwiTm9Qcm90ZWN0aW9uXCIpXG4vKipcbiAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIGEgUmVhbHRpbWUgc2NyaXB0IHRvIGJlIGRlcGxveWVkIG9uIGEgbmV3IFJlYWx0aW1lIFNlcnZlcnMgZmxlZXQuIFRoZSBzY3JpcHQgbXVzdCBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkIHRvIEFtYXpvbiBHYW1lTGlmdC4gVGhpcyBmbGVldCBzZXR0aW5nIGNhbm5vdCBiZSBjaGFuZ2VkIG9uY2UgdGhlIGZsZWV0IGlzIGNyZWF0ZWQuXG4gKiBcbiAqIE5vdGU6IEl0IGlzIG5vdCBjdXJyZW50bHkgcG9zc2libGUgdG8gdXNlIHRoZSAhUmVmIGNvbW1hbmQgdG8gcmVmZXJlbmNlIGEgc2NyaXB0IGNyZWF0ZWQgd2l0aCBhIENsb3VkRm9ybWF0aW9uIHRlbXBsYXRlIGZvciB0aGUgZmxlZXQgcHJvcGVydHkgU2NyaXB0SWQuIEluc3RlYWQsIHVzZSBGbjo6R2V0QXR0IFNjcmlwdC5Bcm4gb3IgRm46OkdldEF0dCBTY3JpcHQuSWQgdG8gcmV0cmlldmUgZWl0aGVyIG9mIHRoZXNlIHByb3BlcnRpZXMgYXMgaW5wdXQgZm9yIFNjcmlwdElkLiBBbHRlcm5hdGl2ZWx5LCBlbnRlciBhIFNjcmlwdElkIHN0cmluZyBtYW51YWxseS5cbiAqL1xuU2NyaXB0SWQ/OiBzdHJpbmdcbi8qKlxuICogW0RFUFJFQ0FURURdIFRoZSBtYXhpbXVtIHZhbHVlIHRoYXQgaXMgYWxsb3dlZCBmb3IgdGhlIGZsZWV0J3MgaW5zdGFuY2UgY291bnQuIFdoZW4gY3JlYXRpbmcgYSBuZXcgZmxlZXQsIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgc2V0cyB0aGlzIHZhbHVlIHRvIFwiMVwiLiBPbmNlIHRoZSBmbGVldCBpcyBhY3RpdmUsIHlvdSBjYW4gY2hhbmdlIHRoaXMgdmFsdWUuXG4gKi9cbk1heFNpemU/OiBudW1iZXJcblJ1bnRpbWVDb25maWd1cmF0aW9uPzogUnVudGltZUNvbmZpZ3VyYXRpb25cbi8qKlxuICogVGhpcyBwYXJhbWV0ZXIgaXMgbm8gbG9uZ2VyIHVzZWQuIFdoZW4gaG9zdGluZyBhIGN1c3RvbSBnYW1lIGJ1aWxkLCBzcGVjaWZ5IHdoZXJlIEFtYXpvbiBHYW1lTGlmdCBzaG91bGQgc3RvcmUgbG9nIGZpbGVzIHVzaW5nIHRoZSBBbWF6b24gR2FtZUxpZnQgc2VydmVyIEFQSSBjYWxsIFByb2Nlc3NSZWFkeSgpXG4gKi9cbkxvZ1BhdGhzPzogc3RyaW5nW11cbi8qKlxuICogVGhpcyBwYXJhbWV0ZXIgaXMgbm8gbG9uZ2VyIHVzZWQuIEluc3RlYWQsIHNwZWNpZnkgYSBzZXJ2ZXIgbGF1bmNoIHBhdGggdXNpbmcgdGhlIFJ1bnRpbWVDb25maWd1cmF0aW9uIHBhcmFtZXRlci4gUmVxdWVzdHMgdGhhdCBzcGVjaWZ5IGEgc2VydmVyIGxhdW5jaCBwYXRoIGFuZCBsYXVuY2ggcGFyYW1ldGVycyBpbnN0ZWFkIG9mIGEgcnVudGltZSBjb25maWd1cmF0aW9uIHdpbGwgY29udGludWUgdG8gd29yay5cbiAqL1xuU2VydmVyTGF1bmNoUGF0aD86IHN0cmluZ1xuLyoqXG4gKiBbREVQUkVDQVRFRF0gVGhlIG1pbmltdW0gdmFsdWUgYWxsb3dlZCBmb3IgdGhlIGZsZWV0J3MgaW5zdGFuY2UgY291bnQuIFdoZW4gY3JlYXRpbmcgYSBuZXcgZmxlZXQsIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgc2V0cyB0aGlzIHZhbHVlIHRvIFwiMFwiLiBBZnRlciB0aGUgZmxlZXQgaXMgYWN0aXZlLCB5b3UgY2FuIGNoYW5nZSB0aGlzIHZhbHVlLlxuICovXG5NaW5TaXplPzogbnVtYmVyXG4vKipcbiAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBBV1MgYWNjb3VudCB3aXRoIHRoZSBWUEMgdGhhdCB5b3Ugd2FudCB0byBwZWVyIHlvdXIgQW1hem9uIEdhbWVMaWZ0IGZsZWV0IHdpdGguIFlvdSBjYW4gZmluZCB5b3VyIGFjY291bnQgSUQgaW4gdGhlIEFXUyBNYW5hZ2VtZW50IENvbnNvbGUgdW5kZXIgYWNjb3VudCBzZXR0aW5ncy5cbiAqL1xuUGVlclZwY0F3c0FjY291bnRJZD86IHN0cmluZ1xuLyoqXG4gKiBUaGUgbmFtZSBvZiBhbiBBbWF6b24gQ2xvdWRXYXRjaCBtZXRyaWMgZ3JvdXAuIEEgbWV0cmljIGdyb3VwIGFnZ3JlZ2F0ZXMgdGhlIG1ldHJpY3MgZm9yIGFsbCBmbGVldHMgaW4gdGhlIGdyb3VwLiBTcGVjaWZ5IGEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1ldHJpYyBncm91cCBuYW1lLiBZb3UgY2FuIHVzZSBhbiBleGlzdGluZyBuYW1lIG9yIHVzZSBhIG5ldyBuYW1lIHRvIGNyZWF0ZSBhIG5ldyBtZXRyaWMgZ3JvdXAuIEN1cnJlbnRseSwgdGhpcyBwYXJhbWV0ZXIgY2FuIGhhdmUgb25seSBvbmUgc3RyaW5nLlxuICogXG4gKiBAbWF4SXRlbXMgMVxuICovXG5NZXRyaWNHcm91cHM/OiBzdHJpbmdbXVxuLyoqXG4gKiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciBhIGJ1aWxkIHRvIGJlIGRlcGxveWVkIG9uIHRoZSBuZXcgZmxlZXQuIElmIHlvdSBhcmUgZGVwbG95aW5nIHRoZSBmbGVldCB3aXRoIGEgY3VzdG9tIGdhbWUgYnVpbGQsIHlvdSBtdXN0IHNwZWNpZnkgdGhpcyBwcm9wZXJ0eS4gVGhlIGJ1aWxkIG11c3QgaGF2ZSBiZWVuIHN1Y2Nlc3NmdWxseSB1cGxvYWRlZCB0byBBbWF6b24gR2FtZUxpZnQgYW5kIGJlIGluIGEgUkVBRFkgc3RhdHVzLiBUaGlzIGZsZWV0IHNldHRpbmcgY2Fubm90IGJlIGNoYW5nZWQgb25jZSB0aGUgZmxlZXQgaXMgY3JlYXRlZC5cbiAqL1xuQnVpbGRJZD86IHN0cmluZ1xuUmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5PzogUmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5XG4vKipcbiAqIFRoZSBuYW1lIG9mIGFuIEVDMiBpbnN0YW5jZSB0eXBlIHRoYXQgaXMgc3VwcG9ydGVkIGluIEFtYXpvbiBHYW1lTGlmdC4gQSBmbGVldCBpbnN0YW5jZSB0eXBlIGRldGVybWluZXMgdGhlIGNvbXB1dGluZyByZXNvdXJjZXMgb2YgZWFjaCBpbnN0YW5jZSBpbiB0aGUgZmxlZXQsIGluY2x1ZGluZyBDUFUsIG1lbW9yeSwgc3RvcmFnZSwgYW5kIG5ldHdvcmtpbmcgY2FwYWNpdHkuIEFtYXpvbiBHYW1lTGlmdCBzdXBwb3J0cyB0aGUgZm9sbG93aW5nIEVDMiBpbnN0YW5jZSB0eXBlcy4gU2VlIEFtYXpvbiBFQzIgSW5zdGFuY2UgVHlwZXMgZm9yIGRldGFpbGVkIGRlc2NyaXB0aW9ucy5cbiAqL1xuRUMySW5zdGFuY2VUeXBlPzogc3RyaW5nXG59XG4vKipcbiAqIFJ1bGUgdGhhdCBjb250cm9scyBob3cgYSBmbGVldCBpcyBzY2FsZWQuIFNjYWxpbmcgcG9saWNpZXMgYXJlIHVuaXF1ZWx5IGlkZW50aWZpZWQgYnkgdGhlIGNvbWJpbmF0aW9uIG9mIG5hbWUgYW5kIGZsZWV0IElELlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjYWxpbmdQb2xpY3kge1xuLyoqXG4gKiBDdXJyZW50IHN0YXR1cyBvZiB0aGUgc2NhbGluZyBwb2xpY3kuIFRoZSBzY2FsaW5nIHBvbGljeSBjYW4gYmUgaW4gZm9yY2Ugb25seSB3aGVuIGluIGFuIEFDVElWRSBzdGF0dXMuIFNjYWxpbmcgcG9saWNpZXMgY2FuIGJlIHN1c3BlbmRlZCBmb3IgaW5kaXZpZHVhbCBmbGVldHMuIElmIHRoZSBwb2xpY3kgaXMgc3VzcGVuZGVkIGZvciBhIGZsZWV0LCB0aGUgcG9saWN5IHN0YXR1cyBkb2VzIG5vdCBjaGFuZ2UuXG4gKi9cblN0YXR1cz86IChcIkFDVElWRVwiIHwgXCJVUERBVEVfUkVRVUVTVEVEXCIgfCBcIlVQREFUSU5HXCIgfCBcIkRFTEVURV9SRVFVRVNURURcIiB8IFwiREVMRVRJTkdcIiB8IFwiREVMRVRFRFwiIHwgXCJFUlJPUlwiKVxuLyoqXG4gKiBOYW1lIG9mIHRoZSBBbWF6b24gR2FtZUxpZnQtZGVmaW5lZCBtZXRyaWMgdGhhdCBpcyB1c2VkIHRvIHRyaWdnZXIgYSBzY2FsaW5nIGFkanVzdG1lbnQuXG4gKi9cbk1ldHJpY05hbWU6IChcIkFjdGl2YXRpbmdHYW1lU2Vzc2lvbnNcIiB8IFwiQWN0aXZlR2FtZVNlc3Npb25zXCIgfCBcIkFjdGl2ZUluc3RhbmNlc1wiIHwgXCJBdmFpbGFibGVHYW1lU2Vzc2lvbnNcIiB8IFwiQXZhaWxhYmxlUGxheWVyU2Vzc2lvbnNcIiB8IFwiQ3VycmVudFBsYXllclNlc3Npb25zXCIgfCBcIklkbGVJbnN0YW5jZXNcIiB8IFwiUGVyY2VudEF2YWlsYWJsZUdhbWVTZXNzaW9uc1wiIHwgXCJQZXJjZW50SWRsZUluc3RhbmNlc1wiIHwgXCJRdWV1ZURlcHRoXCIgfCBcIldhaXRUaW1lXCIgfCBcIkNvbmN1cnJlbnRBY3RpdmF0YWJsZUdhbWVTZXNzaW9uc1wiKVxuLyoqXG4gKiBUaGUgdHlwZSBvZiBzY2FsaW5nIHBvbGljeSB0byBjcmVhdGUuIEZvciBhIHRhcmdldC1iYXNlZCBwb2xpY3ksIHNldCB0aGUgcGFyYW1ldGVyIE1ldHJpY05hbWUgdG8gJ1BlcmNlbnRBdmFpbGFibGVHYW1lU2Vzc2lvbnMnIGFuZCBzcGVjaWZ5IGEgVGFyZ2V0Q29uZmlndXJhdGlvbi4gRm9yIGEgcnVsZS1iYXNlZCBwb2xpY3kgc2V0IHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVyczogTWV0cmljTmFtZSwgQ29tcGFyaXNvbk9wZXJhdG9yLCBUaHJlc2hvbGQsIEV2YWx1YXRpb25QZXJpb2RzLCBTY2FsaW5nQWRqdXN0bWVudFR5cGUsIGFuZCBTY2FsaW5nQWRqdXN0bWVudC5cbiAqL1xuUG9saWN5VHlwZT86IChcIlJ1bGVCYXNlZFwiIHwgXCJUYXJnZXRCYXNlZFwiKVxuLyoqXG4gKiBDb21wYXJpc29uIG9wZXJhdG9yIHRvIHVzZSB3aGVuIG1lYXN1cmluZyBhIG1ldHJpYyBhZ2FpbnN0IHRoZSB0aHJlc2hvbGQgdmFsdWUuXG4gKi9cbkNvbXBhcmlzb25PcGVyYXRvcj86IChcIkdyZWF0ZXJUaGFuT3JFcXVhbFRvVGhyZXNob2xkXCIgfCBcIkdyZWF0ZXJUaGFuVGhyZXNob2xkXCIgfCBcIkxlc3NUaGFuVGhyZXNob2xkXCIgfCBcIkxlc3NUaGFuT3JFcXVhbFRvVGhyZXNob2xkXCIpXG5UYXJnZXRDb25maWd1cmF0aW9uPzogVGFyZ2V0Q29uZmlndXJhdGlvblxuLyoqXG4gKiBUaGUgY3VycmVudCBzdGF0dXMgb2YgdGhlIGZsZWV0J3Mgc2NhbGluZyBwb2xpY2llcyBpbiBhIHJlcXVlc3RlZCBmbGVldCBsb2NhdGlvbi4gVGhlIHN0YXR1cyBQRU5ESU5HX1VQREFURSBpbmRpY2F0ZXMgdGhhdCBhbiB1cGRhdGUgd2FzIHJlcXVlc3RlZCBmb3IgdGhlIGZsZWV0IGJ1dCBoYXMgbm90IHlldCBiZWVuIGNvbXBsZXRlZCBmb3IgdGhlIGxvY2F0aW9uLlxuICovXG5VcGRhdGVTdGF0dXM/OiBcIlBFTkRJTkdfVVBEQVRFXCJcbi8qKlxuICogQW1vdW50IG9mIGFkanVzdG1lbnQgdG8gbWFrZSwgYmFzZWQgb24gdGhlIHNjYWxpbmcgYWRqdXN0bWVudCB0eXBlLlxuICovXG5TY2FsaW5nQWRqdXN0bWVudD86IG51bWJlclxuLyoqXG4gKiBMZW5ndGggb2YgdGltZSAoaW4gbWludXRlcykgdGhlIG1ldHJpYyBtdXN0IGJlIGF0IG9yIGJleW9uZCB0aGUgdGhyZXNob2xkIGJlZm9yZSBhIHNjYWxpbmcgZXZlbnQgaXMgdHJpZ2dlcmVkLlxuICovXG5FdmFsdWF0aW9uUGVyaW9kcz86IG51bWJlclxuTG9jYXRpb24/OiBMb2NhdGlvblxuLyoqXG4gKiBBIGRlc2NyaXB0aXZlIGxhYmVsIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIGEgZmxlZXQncyBzY2FsaW5nIHBvbGljeS4gUG9saWN5IG5hbWVzIGRvIG5vdCBuZWVkIHRvIGJlIHVuaXF1ZS5cbiAqL1xuTmFtZTogc3RyaW5nXG4vKipcbiAqIFRoZSB0eXBlIG9mIGFkanVzdG1lbnQgdG8gbWFrZSB0byBhIGZsZWV0J3MgaW5zdGFuY2UgY291bnQuXG4gKi9cblNjYWxpbmdBZGp1c3RtZW50VHlwZT86IChcIkNoYW5nZUluQ2FwYWNpdHlcIiB8IFwiRXhhY3RDYXBhY2l0eVwiIHwgXCJQZXJjZW50Q2hhbmdlSW5DYXBhY2l0eVwiKVxuLyoqXG4gKiBNZXRyaWMgdmFsdWUgdXNlZCB0byB0cmlnZ2VyIGEgc2NhbGluZyBldmVudC5cbiAqL1xuVGhyZXNob2xkPzogbnVtYmVyXG59XG4vKipcbiAqIEFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIHNldHRpbmdzIGZvciBhIHRhcmdldC1iYXNlZCBzY2FsaW5nIHBvbGljeS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYXJnZXRDb25maWd1cmF0aW9uIHtcbi8qKlxuICogRGVzaXJlZCB2YWx1ZSB0byB1c2Ugd2l0aCBhIHRhcmdldC1iYXNlZCBzY2FsaW5nIHBvbGljeS4gVGhlIHZhbHVlIG11c3QgYmUgcmVsZXZhbnQgZm9yIHdoYXRldmVyIG1ldHJpYyB0aGUgc2NhbGluZyBwb2xpY3kgaXMgdXNpbmcuIEZvciBleGFtcGxlLCBpbiBhIHBvbGljeSB1c2luZyB0aGUgbWV0cmljIFBlcmNlbnRBdmFpbGFibGVHYW1lU2Vzc2lvbnMsIHRoZSB0YXJnZXQgdmFsdWUgc2hvdWxkIGJlIHRoZSBwcmVmZXJyZWQgc2l6ZSBvZiB0aGUgZmxlZXQncyBidWZmZXIgKHRoZSBwZXJjZW50IG9mIGNhcGFjaXR5IHRoYXQgc2hvdWxkIGJlIGlkbGUgYW5kIHJlYWR5IGZvciBuZXcgZ2FtZSBzZXNzaW9ucykuXG4gKi9cblRhcmdldFZhbHVlOiBudW1iZXJcbn1cbi8qKlxuICogQSByYW5nZSBvZiBJUCBhZGRyZXNzZXMgYW5kIHBvcnQgc2V0dGluZ3MgdGhhdCBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gY29ubmVjdCB0byBzZXJ2ZXIgcHJvY2Vzc2VzIG9uIGFuIEFtYXpvbiBHYW1lTGlmdCBob3N0aW5nIHJlc291cmNlLiBOZXcgZ2FtZSBzZXNzaW9ucyB0aGF0IGFyZSBzdGFydGVkIG9uIHRoZSBmbGVldCBhcmUgYXNzaWduZWQgYW4gSVAgYWRkcmVzcy9wb3J0IG51bWJlciBjb21iaW5hdGlvbiwgd2hpY2ggbXVzdCBmYWxsIGludG8gdGhlIGZsZWV0J3MgYWxsb3dlZCByYW5nZXMuIEZvciBmbGVldHMgY3JlYXRlZCB3aXRoIGEgY3VzdG9tIGdhbWUgc2VydmVyLCB0aGUgcmFuZ2VzIHJlZmxlY3QgdGhlIHNlcnZlcidzIGdhbWUgc2Vzc2lvbiBhc3NpZ25tZW50cy4gRm9yIFJlYWx0aW1lIFNlcnZlcnMgZmxlZXRzLCBBbWF6b24gR2FtZUxpZnQgYXV0b21hdGljYWxseSBvcGVucyB0d28gcG9ydCByYW5nZXMsIG9uZSBmb3IgVENQIG1lc3NhZ2luZyBhbmQgb25lIGZvciBVRFAsIGZvciB1c2UgYnkgdGhlIFJlYWx0aW1lIHNlcnZlcnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSXBQZXJtaXNzaW9uIHtcbi8qKlxuICogQSByYW5nZSBvZiBhbGxvd2VkIElQIGFkZHJlc3Nlcy4gVGhpcyB2YWx1ZSBtdXN0IGJlIGV4cHJlc3NlZCBpbiBDSURSIG5vdGF0aW9uLiBFeGFtcGxlOiBcIjAwMC4wMDAuMDAwLjAwMC9bc3VibmV0IG1hc2tdXCIgb3Igb3B0aW9uYWxseSB0aGUgc2hvcnRlbmVkIHZlcnNpb24gXCIwLjAuMC4wL1tzdWJuZXQgbWFza11cIi5cbiAqL1xuSXBSYW5nZTogc3RyaW5nXG4vKipcbiAqIEEgc3RhcnRpbmcgdmFsdWUgZm9yIGEgcmFuZ2Ugb2YgYWxsb3dlZCBwb3J0IG51bWJlcnMuXG4gKi9cbkZyb21Qb3J0OiBudW1iZXJcbi8qKlxuICogQW4gZW5kaW5nIHZhbHVlIGZvciBhIHJhbmdlIG9mIGFsbG93ZWQgcG9ydCBudW1iZXJzLiBQb3J0IG51bWJlcnMgYXJlIGVuZC1pbmNsdXNpdmUuIFRoaXMgdmFsdWUgbXVzdCBiZSBoaWdoZXIgdGhhbiBGcm9tUG9ydC5cbiAqL1xuVG9Qb3J0OiBudW1iZXJcbi8qKlxuICogVGhlIG5ldHdvcmsgY29tbXVuaWNhdGlvbiBwcm90b2NvbCB1c2VkIGJ5IHRoZSBmbGVldC5cbiAqL1xuUHJvdG9jb2w6IChcIlRDUFwiIHwgXCJVRFBcIilcbn1cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgQW55d2hlcmUgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQW55d2hlcmVDb25maWd1cmF0aW9uIHtcbi8qKlxuICogQ29zdCBvZiBjb21wdXRlIGNhbiBiZSBzcGVjaWZpZWQgb24gQW55d2hlcmUgRmxlZXRzIHRvIHByaW9yaXRpemUgcGxhY2VtZW50IGFjcm9zcyBRdWV1ZSBkZXN0aW5hdGlvbnMgYmFzZWQgb24gQ29zdC5cbiAqL1xuQ29zdDogc3RyaW5nXG59XG4vKipcbiAqIEluZGljYXRlcyB3aGV0aGVyIHRvIGdlbmVyYXRlIGEgVExTL1NTTCBjZXJ0aWZpY2F0ZSBmb3IgdGhlIG5ldyBmbGVldC4gVExTIGNlcnRpZmljYXRlcyBhcmUgdXNlZCBmb3IgZW5jcnlwdGluZyB0cmFmZmljIGJldHdlZW4gZ2FtZSBjbGllbnRzIGFuZCBnYW1lIHNlcnZlcnMgcnVubmluZyBvbiBHYW1lTGlmdC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgbm90IHNldCwgY2VydGlmaWNhdGUgZ2VuZXJhdGlvbiBpcyBkaXNhYmxlZC4gVGhpcyBmbGVldCBzZXR0aW5nIGNhbm5vdCBiZSBjaGFuZ2VkIG9uY2UgdGhlIGZsZWV0IGlzIGNyZWF0ZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2VydGlmaWNhdGVDb25maWd1cmF0aW9uIHtcbkNlcnRpZmljYXRlVHlwZTogKFwiRElTQUJMRURcIiB8IFwiR0VORVJBVEVEXCIpXG59XG4vKipcbiAqIEEga2V5LXZhbHVlIHBhaXIgdG8gYXNzb2NpYXRlIHdpdGggYSByZXNvdXJjZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYWcge1xuLyoqXG4gKiBUaGUgdmFsdWUgZm9yIHRoZSB0YWcuIFlvdSBjYW4gc3BlY2lmeSBhIHZhbHVlIHRoYXQgaXMgMCB0byAyNTYgVW5pY29kZSBjaGFyYWN0ZXJzIGluIGxlbmd0aC5cbiAqL1xuVmFsdWU6IHN0cmluZ1xuLyoqXG4gKiBUaGUga2V5IG5hbWUgb2YgdGhlIHRhZy4gWW91IGNhbiBzcGVjaWZ5IGEgdmFsdWUgdGhhdCBpcyAxIHRvIDEyOCBVbmljb2RlIGNoYXJhY3RlcnMgaW4gbGVuZ3RoLlxuICovXG5LZXk6IHN0cmluZ1xufVxuLyoqXG4gKiBBIHJlbW90ZSBsb2NhdGlvbiB3aGVyZSBhIG11bHRpLWxvY2F0aW9uIGZsZWV0IGNhbiBkZXBsb3kgRUMyIGluc3RhbmNlcyBmb3IgZ2FtZSBob3N0aW5nLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQ29uZmlndXJhdGlvbiB7XG5Mb2NhdGlvbkNhcGFjaXR5PzogTG9jYXRpb25DYXBhY2l0eVxuTG9jYXRpb246IExvY2F0aW9uXG59XG4vKipcbiAqIEN1cnJlbnQgcmVzb3VyY2UgY2FwYWNpdHkgc2V0dGluZ3MgaW4gYSBzcGVjaWZpZWQgZmxlZXQgb3IgbG9jYXRpb24uIFRoZSBsb2NhdGlvbiB2YWx1ZSBtaWdodCByZWZlciB0byBhIGZsZWV0J3MgcmVtb3RlIGxvY2F0aW9uIG9yIGl0cyBob21lIFJlZ2lvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2NhdGlvbkNhcGFjaXR5IHtcbi8qKlxuICogVGhlIG1pbmltdW0gdmFsdWUgYWxsb3dlZCBmb3IgdGhlIGZsZWV0J3MgaW5zdGFuY2UgY291bnQgZm9yIGEgbG9jYXRpb24uIFdoZW4gY3JlYXRpbmcgYSBuZXcgZmxlZXQsIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgc2V0cyB0aGlzIHZhbHVlIHRvIFwiMFwiLiBBZnRlciB0aGUgZmxlZXQgaXMgYWN0aXZlLCB5b3UgY2FuIGNoYW5nZSB0aGlzIHZhbHVlLlxuICovXG5NaW5TaXplPzogbnVtYmVyXG4vKipcbiAqIERlZmF1bHRzIHRvIE1pblNpemUgaWYgbm90IGRlZmluZWQuIFRoZSBudW1iZXIgb2YgRUMyIGluc3RhbmNlcyB5b3Ugd2FudCB0byBtYWludGFpbiBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLiBUaGlzIHZhbHVlIG11c3QgZmFsbCBiZXR3ZWVuIHRoZSBtaW5pbXVtIGFuZCBtYXhpbXVtIHNpemUgbGltaXRzLlxuICovXG5EZXNpcmVkRUMySW5zdGFuY2VzPzogbnVtYmVyXG4vKipcbiAqIFRoZSBtYXhpbXVtIHZhbHVlIHRoYXQgaXMgYWxsb3dlZCBmb3IgdGhlIGZsZWV0J3MgaW5zdGFuY2UgY291bnQgZm9yIGEgbG9jYXRpb24uIFdoZW4gY3JlYXRpbmcgYSBuZXcgZmxlZXQsIEdhbWVMaWZ0IGF1dG9tYXRpY2FsbHkgc2V0cyB0aGlzIHZhbHVlIHRvIFwiMVwiLiBPbmNlIHRoZSBmbGVldCBpcyBhY3RpdmUsIHlvdSBjYW4gY2hhbmdlIHRoaXMgdmFsdWUuXG4gKi9cbk1heFNpemU6IG51bWJlclxufVxuLyoqXG4gKiBJbnN0cnVjdGlvbnMgZm9yIGxhdW5jaGluZyBzZXJ2ZXIgcHJvY2Vzc2VzIG9uIGVhY2ggaW5zdGFuY2UgaW4gdGhlIGZsZWV0LiBTZXJ2ZXIgcHJvY2Vzc2VzIHJ1biBlaXRoZXIgYSBjdXN0b20gZ2FtZSBidWlsZCBleGVjdXRhYmxlIG9yIGEgUmVhbHRpbWUgc2NyaXB0LiBUaGUgcnVudGltZSBjb25maWd1cmF0aW9uIGRlZmluZXMgdGhlIHNlcnZlciBleGVjdXRhYmxlcyBvciBsYXVuY2ggc2NyaXB0IGZpbGUsIGxhdW5jaCBwYXJhbWV0ZXJzLCBhbmQgdGhlIG51bWJlciBvZiBwcm9jZXNzZXMgdG8gcnVuIGNvbmN1cnJlbnRseSBvbiBlYWNoIGluc3RhbmNlLiBXaGVuIGNyZWF0aW5nIGEgZmxlZXQsIHRoZSBydW50aW1lIGNvbmZpZ3VyYXRpb24gbXVzdCBoYXZlIGF0IGxlYXN0IG9uZSBzZXJ2ZXIgcHJvY2VzcyBjb25maWd1cmF0aW9uOyBvdGhlcndpc2UgdGhlIHJlcXVlc3QgZmFpbHMgd2l0aCBhbiBpbnZhbGlkIHJlcXVlc3QgZXhjZXB0aW9uLlxuICogXG4gKiBUaGlzIHBhcmFtZXRlciBpcyByZXF1aXJlZCB1bmxlc3MgdGhlIHBhcmFtZXRlcnMgU2VydmVyTGF1bmNoUGF0aCBhbmQgU2VydmVyTGF1bmNoUGFyYW1ldGVycyBhcmUgZGVmaW5lZC4gUnVudGltZSBjb25maWd1cmF0aW9uIGhhcyByZXBsYWNlZCB0aGVzZSBwYXJhbWV0ZXJzLCBidXQgZmxlZXRzIHRoYXQgdXNlIHRoZW0gd2lsbCBjb250aW51ZSB0byB3b3JrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1bnRpbWVDb25maWd1cmF0aW9uIHtcbi8qKlxuICogQSBjb2xsZWN0aW9uIG9mIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb25zIHRoYXQgZGVzY3JpYmUgd2hpY2ggc2VydmVyIHByb2Nlc3NlcyB0byBydW4gb24gZWFjaCBpbnN0YW5jZSBpbiBhIGZsZWV0LlxuICogXG4gKiBAbWF4SXRlbXMgNTBcbiAqL1xuU2VydmVyUHJvY2Vzc2VzPzogU2VydmVyUHJvY2Vzc1tdXG4vKipcbiAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIHdpdGggc3RhdHVzIEFDVElWQVRJTkcgdG8gYWxsb3cgb24gYW4gaW5zdGFuY2Ugc2ltdWx0YW5lb3VzbHkuIFRoaXMgc2V0dGluZyBsaW1pdHMgdGhlIGFtb3VudCBvZiBpbnN0YW5jZSByZXNvdXJjZXMgdGhhdCBjYW4gYmUgdXNlZCBmb3IgbmV3IGdhbWUgYWN0aXZhdGlvbnMgYXQgYW55IG9uZSB0aW1lLlxuICovXG5NYXhDb25jdXJyZW50R2FtZVNlc3Npb25BY3RpdmF0aW9ucz86IG51bWJlclxuLyoqXG4gKiBUaGUgbWF4aW11bSBhbW91bnQgb2YgdGltZSAoaW4gc2Vjb25kcykgdGhhdCBhIGdhbWUgc2Vzc2lvbiBjYW4gcmVtYWluIGluIHN0YXR1cyBBQ1RJVkFUSU5HLiBJZiB0aGUgZ2FtZSBzZXNzaW9uIGlzIG5vdCBhY3RpdmUgYmVmb3JlIHRoZSB0aW1lb3V0LCBhY3RpdmF0aW9uIGlzIHRlcm1pbmF0ZWQgYW5kIHRoZSBnYW1lIHNlc3Npb24gc3RhdHVzIGlzIGNoYW5nZWQgdG8gVEVSTUlOQVRFRC5cbiAqL1xuR2FtZVNlc3Npb25BY3RpdmF0aW9uVGltZW91dFNlY29uZHM/OiBudW1iZXJcbn1cbi8qKlxuICogQSBzZXQgb2YgaW5zdHJ1Y3Rpb25zIGZvciBsYXVuY2hpbmcgc2VydmVyIHByb2Nlc3NlcyBvbiBlYWNoIGluc3RhbmNlIGluIGEgZmxlZXQuIEVhY2ggaW5zdHJ1Y3Rpb24gc2V0IGlkZW50aWZpZXMgdGhlIGxvY2F0aW9uIG9mIHRoZSBzZXJ2ZXIgZXhlY3V0YWJsZSwgb3B0aW9uYWwgbGF1bmNoIHBhcmFtZXRlcnMsIGFuZCB0aGUgbnVtYmVyIG9mIHNlcnZlciBwcm9jZXNzZXMgd2l0aCB0aGlzIGNvbmZpZ3VyYXRpb24gdG8gbWFpbnRhaW4gY29uY3VycmVudGx5IG9uIHRoZSBpbnN0YW5jZS4gU2VydmVyIHByb2Nlc3MgY29uZmlndXJhdGlvbnMgbWFrZSB1cCBhIGZsZWV0J3MgUnVudGltZUNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmVyUHJvY2VzcyB7XG4vKipcbiAqIFRoZSBudW1iZXIgb2Ygc2VydmVyIHByb2Nlc3NlcyB0aGF0IHVzZSB0aGlzIGNvbmZpZ3VyYXRpb24gdG8gcnVuIGNvbmN1cnJlbnRseSBvbiBhbiBpbnN0YW5jZS5cbiAqL1xuQ29uY3VycmVudEV4ZWN1dGlvbnM6IG51bWJlclxuLyoqXG4gKiBBbiBvcHRpb25hbCBsaXN0IG9mIHBhcmFtZXRlcnMgdG8gcGFzcyB0byB0aGUgc2VydmVyIGV4ZWN1dGFibGUgb3IgUmVhbHRpbWUgc2NyaXB0IG9uIGxhdW5jaC5cbiAqL1xuUGFyYW1ldGVycz86IHN0cmluZ1xuLyoqXG4gKiBUaGUgbG9jYXRpb24gb2YgdGhlIHNlcnZlciBleGVjdXRhYmxlIGluIGEgY3VzdG9tIGdhbWUgYnVpbGQgb3IgdGhlIG5hbWUgb2YgdGhlIFJlYWx0aW1lIHNjcmlwdCBmaWxlIHRoYXQgY29udGFpbnMgdGhlIEluaXQoKSBmdW5jdGlvbi4gR2FtZSBidWlsZHMgYW5kIFJlYWx0aW1lIHNjcmlwdHMgYXJlIGluc3RhbGxlZCBvbiBpbnN0YW5jZXMgYXQgdGhlIHJvb3Q6XG4gKiBcbiAqIFdpbmRvd3MgKGZvciBjdXN0b20gZ2FtZSBidWlsZHMgb25seSk6IEM6XFxnYW1lLiBFeGFtcGxlOiBcIkM6XFxnYW1lXFxNeUdhbWVcXHNlcnZlci5leGVcIlxuICogXG4gKiBMaW51eDogL2xvY2FsL2dhbWUuIEV4YW1wbGVzOiBcIi9sb2NhbC9nYW1lL015R2FtZS9zZXJ2ZXIuZXhlXCIgb3IgXCIvbG9jYWwvZ2FtZS9NeVJlYWx0aW1lU2NyaXB0LmpzXCJcbiAqL1xuTGF1bmNoUGF0aDogc3RyaW5nXG59XG4vKipcbiAqIEEgcG9saWN5IHRoYXQgbGltaXRzIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBhbiBpbmRpdmlkdWFsIHBsYXllciBjYW4gY3JlYXRlIG92ZXIgYSBzcGFuIG9mIHRpbWUgZm9yIHRoaXMgZmxlZXQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5IHtcbi8qKlxuICogVGhlIHRpbWUgc3BhbiB1c2VkIGluIGV2YWx1YXRpbmcgdGhlIHJlc291cmNlIGNyZWF0aW9uIGxpbWl0IHBvbGljeS5cbiAqL1xuUG9saWN5UGVyaW9kSW5NaW51dGVzPzogbnVtYmVyXG4vKipcbiAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIHRoYXQgYW4gaW5kaXZpZHVhbCBjYW4gY3JlYXRlIGR1cmluZyB0aGUgcG9saWN5IHBlcmlvZC5cbiAqL1xuTmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvcj86IG51bWJlclxufVxuIl19