@aws-cdk/aws-gamelift-alpha 2.195.0-alpha.0 → 2.196.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,10 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
2
8
  var _a, _b;
3
9
  Object.defineProperty(exports, "__esModule", { value: true });
4
10
  exports.GameServerGroup = exports.GameServerGroupBase = exports.BalancingStrategy = exports.DeleteOption = void 0;
@@ -10,6 +16,7 @@ const iam = require("aws-cdk-lib/aws-iam");
10
16
  const cdk = require("aws-cdk-lib/core");
11
17
  const aws_gamelift_1 = require("aws-cdk-lib/aws-gamelift");
12
18
  const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
19
+ const prop_injectable_1 = require("aws-cdk-lib/core/lib/prop-injectable");
13
20
  /**
14
21
  * The type of delete to perform.
15
22
  * To delete a game server group, specify the DeleteOption.
@@ -76,7 +83,7 @@ class GameServerGroupBase extends cdk.Resource {
76
83
  }
77
84
  exports.GameServerGroupBase = GameServerGroupBase;
78
85
  _a = JSII_RTTI_SYMBOL_1;
79
- GameServerGroupBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBase", version: "2.195.0-alpha.0" };
86
+ GameServerGroupBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBase", version: "2.196.0-alpha.0" };
80
87
  /**
81
88
  * Creates a GameLift FleetIQ game server group for managing game hosting on a collection of Amazon EC2 instances for game hosting.
82
89
  * This operation creates the game server group, creates an Auto Scaling group in your AWS account, and establishes a link between the two groups.
@@ -98,7 +105,7 @@ GameServerGroupBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBas
98
105
  *
99
106
  * @resource AWS::GameLift::GameServerGroup
100
107
  */
101
- class GameServerGroup extends GameServerGroupBase {
108
+ let GameServerGroup = class GameServerGroup extends GameServerGroupBase {
102
109
  /**
103
110
  * Import an existing game server group from its attributes.
104
111
  */
@@ -267,8 +274,13 @@ class GameServerGroup extends GameServerGroupBase {
267
274
  };
268
275
  }
269
276
  }
270
- }
277
+ };
271
278
  exports.GameServerGroup = GameServerGroup;
272
279
  _b = JSII_RTTI_SYMBOL_1;
273
- GameServerGroup[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroup", version: "2.195.0-alpha.0" };
274
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXJ2ZXItZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnYW1lLXNlcnZlci1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx5REFBeUQ7QUFDekQsMkNBQTJDO0FBQzNDLDJDQUEyQztBQUMzQyx3Q0FBd0M7QUFFeEMsMkRBQThEO0FBQzlELDhFQUE4RTtBQStDOUU7OztHQUdHO0FBQ0gsSUFBWSxZQWVYO0FBZkQsV0FBWSxZQUFZO0lBQ3RCOztPQUVHO0lBQ0gsMkNBQTJCLENBQUE7SUFFM0I7O09BRUc7SUFDSCw2Q0FBNkIsQ0FBQTtJQUU3Qjs7T0FFRztJQUNILGlDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFmVyxZQUFZLDRCQUFaLFlBQVksUUFldkI7QUFFRDs7R0FFRztBQUNILElBQVksaUJBb0JYO0FBcEJELFdBQVksaUJBQWlCO0lBQzNCOzs7O09BSUc7SUFDSCw0Q0FBdUIsQ0FBQTtJQUV2Qjs7OztPQUlHO0lBQ0gsc0RBQWlDLENBQUE7SUFFakM7OztPQUdHO0lBQ0gsc0RBQWlDLENBQUE7QUFDbkMsQ0FBQyxFQXBCVyxpQkFBaUIsaUNBQWpCLGlCQUFpQixRQW9CNUI7QUFzQ0Q7O0dBRUc7QUFDSCxNQUFzQixtQkFBb0IsU0FBUSxHQUFHLENBQUMsUUFBUTtJQXFCckQsS0FBSyxDQUFDLE9BQXVCLEVBQUUsR0FBRyxPQUFpQjtRQUN4RCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDO1lBQzlCLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztZQUN2QyxPQUFPLEVBQUUsT0FBTztZQUNoQixPQUFPLEVBQUUsT0FBTztTQUNqQixDQUFDLENBQUM7S0FDSjtJQUVNLE1BQU0sQ0FBQyxVQUFrQixFQUFFLEtBQWdDO1FBQ2hFLE9BQU8sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDO1lBQzNCLFNBQVMsRUFBRSxjQUFjO1lBQ3pCLFVBQVUsRUFBRSxVQUFVO1lB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QUMsMkJBQTJCO2FBQ2pFO1NBQ0YsQ0FBQztLQUNIO0lBRVMsd0JBQXdCLENBQUMsS0FBMkI7Ozs7Ozs7Ozs7UUFDNUQsT0FBTyxLQUFLLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFFOUQsU0FBUyx1QkFBdUIsQ0FBQyxrQkFBc0M7WUFDckUsT0FBTztnQkFDTCxZQUFZLEVBQUUsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRTtnQkFDeEQsZ0JBQWdCLEVBQUUsa0JBQWtCLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRTthQUN4RCxDQUFDO1FBQ0osQ0FBQztLQUNGOztBQXBMSCwwQ0FxTEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2ZuR2FtZVNlcnZlckdyb3VwIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcbmltcG9ydCB7IGFkZENvbnN0cnVjdE1ldGFkYXRhIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvbWV0YWRhdGEtcmVzb3VyY2UnO1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gc2V0dGluZ3MgZm9yIGludGVsbGlnZW50IGF1dG9tYXRpYyBzY2FsaW5nIHRoYXQgdXNlcyB0YXJnZXQgdHJhY2tpbmcuXG4gKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIGFsbCB1cGRhdGVzIHRvIEF1dG8gU2NhbGluZyBwb2xpY2llcywgaW5jbHVkaW5nIGNoYW5naW5nIHRoaXMgcG9saWN5IGFuZCBhZGRpbmcgb3IgcmVtb3Zpbmcgb3RoZXIgcG9saWNpZXMsIGlzIGRvbmUgZGlyZWN0bHkgb24gdGhlIEF1dG8gU2NhbGluZyBncm91cC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRvU2NhbGluZ1BvbGljeSB7XG4gIC8qKlxuICAgKiBMZW5ndGggb2YgdGltZSwgaXQgdGFrZXMgZm9yIGEgbmV3IGluc3RhbmNlIHRvIHN0YXJ0IG5ldyBnYW1lIHNlcnZlciBwcm9jZXNzZXMgYW5kIHJlZ2lzdGVyIHdpdGggR2FtZUxpZnQgRmxlZXRJUS5cbiAgICogU3BlY2lmeWluZyBhIHdhcm0tdXAgdGltZSBjYW4gYmUgdXNlZnVsLCBwYXJ0aWN1bGFybHkgd2l0aCBnYW1lIHNlcnZlcnMgdGhhdCB0YWtlIGEgbG9uZyB0aW1lIHRvIHN0YXJ0IHVwLCBiZWNhdXNlIGl0IGF2b2lkcyBwcmVtYXR1cmVseSBzdGFydGluZyBuZXcgaW5zdGFuY2VzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBpbnN0YW5jZSB3YXJtdXAgZHVyYXRpb24gc2V0dGxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZXN0aW1hdGVkSW5zdGFuY2VXYXJtdXA/OiBjZGsuRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFNldHRpbmdzIGZvciBhIHRhcmdldC1iYXNlZCBzY2FsaW5nIHBvbGljeSBhcHBsaWVkIHRvIEF1dG8gU2NhbGluZyBncm91cC5cbiAgICogVGhlc2Ugc2V0dGluZ3MgYXJlIHVzZWQgdG8gY3JlYXRlIGEgdGFyZ2V0LWJhc2VkIHBvbGljeSB0aGF0IHRyYWNrcyB0aGUgR2FtZUxpZnQgRmxlZXRJUSBtZXRyaWMgYFBlcmNlbnRVdGlsaXplZEdhbWVTZXJ2ZXJzYCBhbmQgc3BlY2lmaWVzIGEgdGFyZ2V0IHZhbHVlIGZvciB0aGUgbWV0cmljLlxuICAgKlxuICAgKiBBcyBwbGF5ZXIgdXNhZ2UgY2hhbmdlcywgdGhlIHBvbGljeSB0cmlnZ2VycyB0byBhZGp1c3QgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGNhcGFjaXR5IHNvIHRoYXQgdGhlIG1ldHJpYyByZXR1cm5zIHRvIHRoZSB0YXJnZXQgdmFsdWUuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRUcmFja2luZ0NvbmZpZ3VyYXRpb246IG51bWJlcjtcblxufVxuLyoqXG4gKiBBbiBhbGxvd2VkIGluc3RhbmNlIHR5cGUgZm9yIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKiBBbGwgZ2FtZSBzZXJ2ZXIgZ3JvdXBzIG11c3QgaGF2ZSBhdCBsZWFzdCB0d28gaW5zdGFuY2UgdHlwZXMgZGVmaW5lZCBmb3IgaXQuXG4gKiBHYW1lTGlmdCBGbGVldElRIHBlcmlvZGljYWxseSBldmFsdWF0ZXMgZWFjaCBkZWZpbmVkIGluc3RhbmNlIHR5cGUgZm9yIHZpYWJpbGl0eS5cbiAqIEl0IHRoZW4gdXBkYXRlcyB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHdpdGggdGhlIGxpc3Qgb2YgdmlhYmxlIGluc3RhbmNlIHR5cGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEluc3RhbmNlRGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgKiBBbiBBbWF6b24gRUMyIGluc3RhbmNlIHR5cGUgZGVzaWduYXRpb24uXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IGVjMi5JbnN0YW5jZVR5cGU7XG5cbiAgLyoqXG4gICAqIEluc3RhbmNlIHdlaWdodGluZyB0aGF0IGluZGljYXRlcyBob3cgbXVjaCB0aGlzIGluc3RhbmNlIHR5cGUgY29udHJpYnV0ZXMgdG8gdGhlIHRvdGFsIGNhcGFjaXR5IG9mIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqIEluc3RhbmNlIHdlaWdodHMgYXJlIHVzZWQgYnkgR2FtZUxpZnQgRmxlZXRJUSB0byBjYWxjdWxhdGUgdGhlIGluc3RhbmNlIHR5cGUncyBjb3N0IHBlciB1bml0IGhvdXIgYW5kIGJldHRlciBpZGVudGlmeSB0aGUgbW9zdCBjb3N0LWVmZmVjdGl2ZSBvcHRpb25zLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdXRvc2NhbGluZy9lYzIvdXNlcmd1aWRlL2FzZy1pbnN0YW5jZS13ZWlnaHRpbmcuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCBkZWZhdWx0IHZhbHVlIGlzIDFcbiAgICovXG4gIHJlYWRvbmx5IHdlaWdodD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBUaGUgdHlwZSBvZiBkZWxldGUgdG8gcGVyZm9ybS5cbiAqIFRvIGRlbGV0ZSBhIGdhbWUgc2VydmVyIGdyb3VwLCBzcGVjaWZ5IHRoZSBEZWxldGVPcHRpb24uXG4gKi9cbmV4cG9ydCBlbnVtIERlbGV0ZU9wdGlvbiB7XG4gIC8qKlxuICAgKiBUZXJtaW5hdGVzIHRoZSBnYW1lIHNlcnZlciBncm91cCBhbmQgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgb25seSB3aGVuIGl0IGhhcyBubyBnYW1lIHNlcnZlcnMgdGhhdCBhcmUgaW4gVVRJTElaRUQgc3RhdHVzLlxuICAgKi9cbiAgU0FGRV9ERUxFVEUgPSAnU0FGRV9ERUxFVEUnLFxuXG4gIC8qKlxuICAgKiBUZXJtaW5hdGVzIHRoZSBnYW1lIHNlcnZlciBncm91cCwgaW5jbHVkaW5nIGFsbCBhY3RpdmUgZ2FtZSBzZXJ2ZXJzIHJlZ2FyZGxlc3Mgb2YgdGhlaXIgdXRpbGl6YXRpb24gc3RhdHVzLCBhbmQgdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKi9cbiAgRk9SQ0VfREVMRVRFID0gJ0ZPUkNFX0RFTEVURScsXG5cbiAgLyoqXG4gICAqIERvZXMgYSBzYWZlIGRlbGV0ZSBvZiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgYnV0IHJldGFpbnMgdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwIGFzIGlzLlxuICAgKi9cbiAgUkVUQUlOID0gJ1JFVEFJTicsXG59XG5cbi8qKlxuICogSW5kaWNhdGVzIGhvdyBHYW1lTGlmdCBGbGVldElRIGJhbGFuY2VzIHRoZSB1c2Ugb2YgU3BvdCBJbnN0YW5jZXMgYW5kIE9uLURlbWFuZCBJbnN0YW5jZXMgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICovXG5leHBvcnQgZW51bSBCYWxhbmNpbmdTdHJhdGVneSB7XG4gIC8qKlxuICAgKiBPbmx5IFNwb3QgSW5zdGFuY2VzIGFyZSB1c2VkIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSWYgU3BvdCBJbnN0YW5jZXMgYXJlIHVuYXZhaWxhYmxlIG9yIG5vdCB2aWFibGUgZm9yIGdhbWUgaG9zdGluZywgdGhlIGdhbWUgc2VydmVyIGdyb3VwIHByb3ZpZGVzIG5vIGhvc3RpbmcgY2FwYWNpdHkgdW50aWwgU3BvdCBJbnN0YW5jZXMgY2FuIGFnYWluIGJlIHVzZWQuXG4gICAqIFVudGlsIHRoZW4sIG5vIG5ldyBpbnN0YW5jZXMgYXJlIHN0YXJ0ZWQsIGFuZCB0aGUgZXhpc3Rpbmcgbm9udmlhYmxlIFNwb3QgSW5zdGFuY2VzIGFyZSB0ZXJtaW5hdGVkIChhZnRlciBjdXJyZW50IGdhbWVwbGF5IGVuZHMpIGFuZCBhcmUgbm90IHJlcGxhY2VkLlxuICAgKi9cbiAgU1BPVF9PTkxZID0gJ1NQT1RfT05MWScsXG5cbiAgLyoqXG4gICAqIFNwb3QgSW5zdGFuY2VzIGFyZSB1c2VkIHdoZW5ldmVyIGF2YWlsYWJsZSBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqIElmIFNwb3QgSW5zdGFuY2VzIGFyZSB1bmF2YWlsYWJsZSwgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGNvbnRpbnVlcyB0byBwcm92aWRlIGhvc3RpbmcgY2FwYWNpdHkgYnkgZmFsbGluZyBiYWNrIHRvIE9uLURlbWFuZCBJbnN0YW5jZXMuXG4gICAqIEV4aXN0aW5nIG5vbnZpYWJsZSBTcG90IEluc3RhbmNlcyBhcmUgdGVybWluYXRlZCAoYWZ0ZXIgY3VycmVudCBnYW1lcGxheSBlbmRzKSBhbmQgYXJlIHJlcGxhY2VkIHdpdGggbmV3IE9uLURlbWFuZCBJbnN0YW5jZXMuXG4gICAqL1xuICBTUE9UX1BSRUZFUlJFRCA9ICdTUE9UX1BSRUZFUlJFRCcsXG5cbiAgLyoqXG4gICAqIE9ubHkgT24tRGVtYW5kIEluc3RhbmNlcyBhcmUgdXNlZCBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqIE5vIFNwb3QgSW5zdGFuY2VzIGFyZSB1c2VkLCBldmVuIHdoZW4gYXZhaWxhYmxlLCB3aGlsZSB0aGlzIGJhbGFuY2luZyBzdHJhdGVneSBpcyBpbiBmb3JjZS5cbiAgICovXG4gIE9OX0RFTUFORF9PTkxZID0gJ09OX0RFTUFORF9PTkxZJyxcbn1cblxuLyoqXG4gKiBSZXByZXNlbnQgYSBHYW1lTGlmdCBGbGVldElRIGdhbWUgc2VydmVyIGdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElHYW1lU2VydmVyR3JvdXAgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBpYW0uSUdyYW50YWJsZSB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdlbmVyYXRlZCBBdXRvU2NhbGluZyBncm91cFxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyYW50IHRoZSBgZ3JhbnRlZWAgaWRlbnRpdHkgcGVybWlzc2lvbnMgdG8gcGVyZm9ybSBgYWN0aW9uc2AuXG4gICAqL1xuICBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQ7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIGZsZWV0LlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBuZXcgYW5kIGltcG9ydGVkIEdhbWVMaWZ0IEZsZWV0SVEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHYW1lU2VydmVyR3JvdXBCYXNlIGV4dGVuZHMgY2RrLlJlc291cmNlIGltcGxlbWVudHMgSUdhbWVTZXJ2ZXJHcm91cCB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWw6IGlhbS5JUHJpbmNpcGFsO1xuXG4gIHB1YmxpYyBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQge1xuICAgIHJldHVybiBpYW0uR3JhbnQuYWRkVG9QcmluY2lwYWwoe1xuICAgICAgcmVzb3VyY2VBcm5zOiBbdGhpcy5nYW1lU2VydmVyR3JvdXBBcm5dLFxuICAgICAgZ3JhbnRlZTogZ3JhbnRlZSxcbiAgICAgIGFjdGlvbnM6IGFjdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIG5ldyBjbG91ZHdhdGNoLk1ldHJpYyh7XG4gICAgICBuYW1lc3BhY2U6ICdBV1MvR2FtZUxpZnQnLFxuICAgICAgbWV0cmljTmFtZTogbWV0cmljTmFtZSxcbiAgICAgIGRpbWVuc2lvbnNNYXA6IHtcbiAgICAgICAgR2FtZVNlcnZlckdyb3VwQXJuOiB0aGlzLmdhbWVTZXJ2ZXJHcm91cEFybixcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KS5hdHRhY2hUbyh0aGlzKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBHYW1lU2VydmVyR3JvdXAgY29udGVudCBkZWZpbmVkIG91dHNpZGUgb2YgdGhpcyBzdGFjay5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHYW1lU2VydmVyR3JvdXBBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGdhbWVTZXJ2ZXJHcm91cEFybmAgYW5kIGBnYW1lU2VydmVyR3JvdXBOYW1lYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGdhbWVTZXJ2ZXJHcm91cEFybmAuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGdhbWVTZXJ2ZXJHcm91cEFybmAgYW5kIGBnYW1lU2VydmVyR3JvdXBOYW1lYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGdhbWVTZXJ2ZXJHcm91cE5hbWVgLlxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnZW5lcmF0ZWQgQXV0b1NjYWxpbmcgZ3JvdXBcbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGltcG9ydGVkIGdhbWUgc2VydmVyIGdyb3VwIGRvZXMgbm90IGhhdmUgYXV0b3NjYWxpbmcgZ3JvdXAgaW5mb3JtYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGF1dG9TY2FsaW5nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElBTSByb2xlIHRoYXQgYWxsb3dzIEFtYXpvbiBHYW1lTGlmdCB0byBhY2Nlc3MgeW91ciBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBpbXBvcnRlZCBnYW1lIHNlcnZlciBncm91cCBjYW5ub3QgYmUgZ3JhbnRlZCBhY2Nlc3MgdG8gb3RoZXIgcmVzb3VyY2VzIGFzIGFuIGBpYW0uSUdyYW50YWJsZWAuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IEdhbWVsaWZ0IEZsZWV0SVEgR2FtZSBzZXJ2ZXIgZ3JvdXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHYW1lU2VydmVyR3JvdXBQcm9wcyB7XG4gIC8qKlxuICAgKiBBIGRldmVsb3Blci1kZWZpbmVkIGlkZW50aWZpZXIgZm9yIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogVGhlIG5hbWUgaXMgdW5pcXVlIGZvciBlYWNoIFJlZ2lvbiBpbiBlYWNoIEFXUyBhY2NvdW50LlxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBhbGxvd3MgQW1hem9uIEdhbWVMaWZ0IHRvIGFjY2VzcyB5b3VyIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3Vwcy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2ZsZWV0aXFndWlkZS9nc2ctaWFtLXBlcm1pc3Npb25zLXJvbGVzLmh0bWxcbiAgICpcbiAgICogQGRlZmF1bHQgLSBhIHJvbGUgd2lsbCBiZSBjcmVhdGVkIHdpdGggZGVmYXVsdCB0cnVzdCB0byBHYW1lbGlmdCBhbmQgQXV0b3NjYWxpbmcgc2VydmljZSBwcmluY2lwYWwgd2l0aCBhIGRlZmF1bHQgcG9saWN5IGBHYW1lTGlmdEdhbWVTZXJ2ZXJHcm91cFBvbGljeWAgYXR0YWNoZWQuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKiBEdXJpbmcgYXV0b21hdGljIHNjYWxpbmcgZXZlbnRzLCBHYW1lTGlmdCBGbGVldElRIGFuZCBBbWF6b24gRUMyIGRvIG5vdCBzY2FsZSBkb3duIHRoZSBncm91cCBiZWxvdyB0aGlzIG1pbmltdW0uXG4gICAqXG4gICAqIEluIHByb2R1Y3Rpb24sIHRoaXMgdmFsdWUgc2hvdWxkIGJlIHNldCB0byBhdCBsZWFzdCAxLlxuICAgKlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IG1pblNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAuIER1cmluZyBhdXRvbWF0aWMgc2NhbGluZyBldmVudHMsIEdhbWVMaWZ0IEZsZWV0SVEgYW5kIEVDMiBkbyBub3Qgc2NhbGUgdXAgdGhlIGdyb3VwIGFib3ZlIHRoaXMgbWF4aW11bS5cbiAgICpcbiAgICogQWZ0ZXIgdGhlIEF1dG8gU2NhbGluZyBncm91cCBpcyBjcmVhdGVkLCB1cGRhdGUgdGhpcyB2YWx1ZSBkaXJlY3RseSBpbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHVzaW5nIHRoZSBBV1MgY29uc29sZSBvciBBUElzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCBpcyAxXG4gICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgVlBDIG5ldHdvcmsgdG8gcGxhY2UgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGluLlxuICAgKlxuICAgKiBCeSBkZWZhdWx0LCBhbGwgR2FtZUxpZnQgRmxlZXRJUS1zdXBwb3J0ZWQgQXZhaWxhYmlsaXR5IFpvbmVzIGFyZSB1c2VkLlxuICAgKlxuICAgKiBZb3UgY2FuIHVzZSB0aGlzIHBhcmFtZXRlciB0byBzcGVjaWZ5IFZQQ3MgdGhhdCB5b3UndmUgc2V0IHVwLlxuICAgKlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbm5vdCBiZSB1cGRhdGVkIGFmdGVyIHRoZSBnYW1lIHNlcnZlciBncm91cCBpcyBjcmVhdGVkLFxuICAgKiBhbmQgdGhlIGNvcnJlc3BvbmRpbmcgQXV0byBTY2FsaW5nIGdyb3VwIHdpbGwgYWx3YXlzIHVzZSB0aGUgcHJvcGVydHkgdmFsdWUgdGhhdCBpcyBzZXQgd2l0aCB0aGlzIHJlcXVlc3QsXG4gICAqIGV2ZW4gaWYgdGhlIEF1dG8gU2NhbGluZyBncm91cCBpcyB1cGRhdGVkIGRpcmVjdGx5LlxuICAgKi9cbiAgcmVhZG9ubHkgdnBjOiBlYzIuSVZwYztcblxuICAvKipcbiAgICogR2FtZSBzZXJ2ZXIgZ3JvdXAgc3VibmV0IHNlbGVjdGlvblxuICAgKlxuICAgKiBAZGVmYXVsdCBhbGwgR2FtZUxpZnQgRmxlZXRJUS1zdXBwb3J0ZWQgQXZhaWxhYmlsaXR5IFpvbmVzIGFyZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgdnBjU3VibmV0cz86IGVjMi5TdWJuZXRTZWxlY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSBzZXQgb2YgQW1hem9uIEVDMiBpbnN0YW5jZSB0eXBlcyB0aGF0IEdhbWVMaWZ0IEZsZWV0SVEgY2FuIHVzZSB3aGVuIGJhbGFuY2luZyBhbmQgYXV0b21hdGljYWxseSBzY2FsaW5nIGluc3RhbmNlcyBpbiB0aGUgY29ycmVzcG9uZGluZyBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZURlZmluaXRpb25zOiBJbnN0YW5jZURlZmluaXRpb25bXTtcblxuICAvKipcbiAgICogVGhlIEFtYXpvbiBFQzIgbGF1bmNoIHRlbXBsYXRlIHRoYXQgY29udGFpbnMgY29uZmlndXJhdGlvbiBzZXR0aW5ncyBhbmQgZ2FtZSBzZXJ2ZXIgY29kZSB0byBiZSBkZXBsb3llZCB0byBhbGwgaW5zdGFuY2VzIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogQWZ0ZXIgdGhlIEF1dG8gU2NhbGluZyBncm91cCBpcyBjcmVhdGVkLCB1cGRhdGUgdGhpcyB2YWx1ZSBkaXJlY3RseSBpbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHVzaW5nIHRoZSBBV1MgY29uc29sZSBvciBBUElzLlxuICAgKlxuICAgKiBOT1RFOlxuICAgKiBJZiB5b3Ugc3BlY2lmeSBuZXR3b3JrIGludGVyZmFjZXMgaW4geW91ciBsYXVuY2ggdGVtcGxhdGUsIHlvdSBtdXN0IGV4cGxpY2l0bHkgc2V0IHRoZSBwcm9wZXJ0eSBBc3NvY2lhdGVQdWJsaWNJcEFkZHJlc3MgdG8gYHRydWVgLlxuICAgKiBJZiBubyBuZXR3b3JrIGludGVyZmFjZSBpcyBzcGVjaWZpZWQgaW4gdGhlIGxhdW5jaCB0ZW1wbGF0ZSwgR2FtZUxpZnQgRmxlZXRJUSB1c2VzIHlvdXIgYWNjb3VudCdzIGRlZmF1bHQgVlBDLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hdXRvc2NhbGluZy9lYzIvdXNlcmd1aWRlL2NyZWF0ZS1sYXVuY2gtdGVtcGxhdGUuaHRtbFxuICAgKi9cbiAgcmVhZG9ubHkgbGF1bmNoVGVtcGxhdGU6IGVjMi5JTGF1bmNoVGVtcGxhdGU7XG5cbiAgLyoqXG4gICAqIEEgZmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgYXJlIHByb3RlY3RlZCBmcm9tIGVhcmx5IHRlcm1pbmF0aW9uLlxuICAgKiBVbnByb3RlY3RlZCBpbnN0YW5jZXMgdGhhdCBoYXZlIGFjdGl2ZSBnYW1lIHNlcnZlcnMgcnVubmluZyBtaWdodCBiZSB0ZXJtaW5hdGVkIGR1cmluZyBhIHNjYWxlLWRvd24gZXZlbnQsIGNhdXNpbmcgcGxheWVycyB0byBiZSBkcm9wcGVkIGZyb20gdGhlIGdhbWUuXG4gICAqIFByb3RlY3RlZCBpbnN0YW5jZXMgY2Fubm90IGJlIHRlcm1pbmF0ZWQgd2hpbGUgdGhlcmUgYXJlIGFjdGl2ZSBnYW1lIHNlcnZlcnMgcnVubmluZyBleGNlcHQgaW4gdGhlIGV2ZW50IG9mIGEgZm9yY2VkIGdhbWUgc2VydmVyIGdyb3VwIGRlbGV0aW9uLlxuICAgKlxuICAgKiBBbiBleGNlcHRpb24gdG8gdGhpcyBpcyB3aXRoIFNwb3QgSW5zdGFuY2VzLCB3aGljaCBjYW4gYmUgdGVybWluYXRlZCBieSBBV1MgcmVnYXJkbGVzcyBvZiBwcm90ZWN0aW9uIHN0YXR1cy5cbiAgICpcbiAgICogQGRlZmF1bHQgZ2FtZSBzZXJ2ZXJzIHJ1bm5pbmcgbWlnaHQgYmUgdGVybWluYXRlZCBkdXJpbmcgYSBzY2FsZS1kb3duIGV2ZW50XG4gICAqL1xuICByZWFkb25seSBwcm90ZWN0R2FtZVNlcnZlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gc2V0dGluZ3MgdG8gZGVmaW5lIGEgc2NhbGluZyBwb2xpY3kgZm9yIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdGhhdCBpcyBvcHRpbWl6ZWQgZm9yIGdhbWUgaG9zdGluZy5cbiAgICogVGhlIHNjYWxpbmcgcG9saWN5IHVzZXMgdGhlIG1ldHJpYyBgUGVyY2VudFV0aWxpemVkR2FtZVNlcnZlcnNgIHRvIG1haW50YWluIGEgYnVmZmVyIG9mIGlkbGUgZ2FtZSBzZXJ2ZXJzIHRoYXQgY2FuIGltbWVkaWF0ZWx5IGFjY29tbW9kYXRlIG5ldyBnYW1lcyBhbmQgcGxheWVycy5cbiAgICpcbiAgICogQWZ0ZXIgdGhlIEF1dG8gU2NhbGluZyBncm91cCBpcyBjcmVhdGVkLCB1cGRhdGUgdGhpcyB2YWx1ZSBkaXJlY3RseSBpbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHVzaW5nIHRoZSBBV1MgY29uc29sZSBvciBBUElzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBhdXRvc2NhbGluZyBwb2xpY3kgc2V0dGxlZFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b1NjYWxpbmdQb2xpY3k/OiBBdXRvU2NhbGluZ1BvbGljeTtcblxuICAvKipcbiAgICogVGhlIHR5cGUgb2YgZGVsZXRlIHRvIHBlcmZvcm0uIFRvIGRlbGV0ZSBhIGdhbWUgc2VydmVyIGdyb3VwLCBzcGVjaWZ5IHRoZSBEZWxldGVPcHRpb25cbiAgICpcbiAgICogQGRlZmF1bHQgU0FGRV9ERUxFVEVcbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZU9wdGlvbj86IERlbGV0ZU9wdGlvbjtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGhvdyBHYW1lTGlmdCBGbGVldElRIGJhbGFuY2VzIHRoZSB1c2Ugb2YgU3BvdCBJbnN0YW5jZXMgYW5kIE9uLURlbWFuZCBJbnN0YW5jZXMgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKlxuICAgKiBAZGVmYXVsdCBTUE9UX1BSRUZFUlJFRFxuICAgKi9cbiAgcmVhZG9ubHkgYmFsYW5jaW5nU3RyYXRlZ3k/OiBCYWxhbmNpbmdTdHJhdGVneTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgR2FtZUxpZnQgRmxlZXRJUSBnYW1lIHNlcnZlciBncm91cCBmb3IgbWFuYWdpbmcgZ2FtZSBob3N0aW5nIG9uIGEgY29sbGVjdGlvbiBvZiBBbWF6b24gRUMyIGluc3RhbmNlcyBmb3IgZ2FtZSBob3N0aW5nLlxuICogVGhpcyBvcGVyYXRpb24gY3JlYXRlcyB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIGNyZWF0ZXMgYW4gQXV0byBTY2FsaW5nIGdyb3VwIGluIHlvdXIgQVdTIGFjY291bnQsIGFuZCBlc3RhYmxpc2hlcyBhIGxpbmsgYmV0d2VlbiB0aGUgdHdvIGdyb3Vwcy5cbiAqIFlvdSBjYW4gdmlldyB0aGUgc3RhdHVzIG9mIHlvdXIgZ2FtZSBzZXJ2ZXIgZ3JvdXBzIGluIHRoZSBHYW1lTGlmdCBjb25zb2xlLlxuICogR2FtZSBzZXJ2ZXIgZ3JvdXAgbWV0cmljcyBhbmQgZXZlbnRzIGFyZSBlbWl0dGVkIHRvIEFtYXpvbiBDbG91ZFdhdGNoLlxuICogQmVmb3JlIGNyZWF0aW5nIGEgbmV3IGdhbWUgc2VydmVyIGdyb3VwLCB5b3UgbXVzdCBoYXZlIHRoZSBmb2xsb3dpbmc6XG4gKiAgLSBBbiBBbWF6b24gRUMyIGxhdW5jaCB0ZW1wbGF0ZSB0aGF0IHNwZWNpZmllcyBob3cgdG8gbGF1bmNoIEFtYXpvbiBFQzIgaW5zdGFuY2VzIHdpdGggeW91ciBnYW1lIHNlcnZlciBidWlsZC5cbiAqICAtIEFuIElBTSByb2xlIHRoYXQgZXh0ZW5kcyBsaW1pdGVkIGFjY2VzcyB0byB5b3VyIEFXUyBhY2NvdW50IHRvIGFsbG93IEdhbWVMaWZ0IEZsZWV0SVEgdG8gY3JlYXRlIGFuZCBpbnRlcmFjdCB3aXRoIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gKlxuICogVG8gY3JlYXRlIGEgbmV3IGdhbWUgc2VydmVyIGdyb3VwLCBzcGVjaWZ5IGEgdW5pcXVlIGdyb3VwIG5hbWUsIElBTSByb2xlIGFuZCBBbWF6b24gRUMyIGxhdW5jaCB0ZW1wbGF0ZSwgYW5kIHByb3ZpZGUgYSBsaXN0IG9mIGluc3RhbmNlIHR5cGVzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIGdyb3VwLlxuICogWW91IG11c3QgYWxzbyBzZXQgaW5pdGlhbCBtYXhpbXVtIGFuZCBtaW5pbXVtIGxpbWl0cyBvbiB0aGUgZ3JvdXAncyBpbnN0YW5jZSBjb3VudC5cbiAqIFlvdSBjYW4gb3B0aW9uYWxseSBzZXQgYW4gQXV0byBTY2FsaW5nIHBvbGljeSB3aXRoIHRhcmdldCB0cmFja2luZyBiYXNlZCBvbiBhIEdhbWVMaWZ0IEZsZWV0SVEgbWV0cmljLlxuICpcbiAqIE9uY2UgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGFuZCBjb3JyZXNwb25kaW5nIEF1dG8gU2NhbGluZyBncm91cCBhcmUgY3JlYXRlZCwgeW91IGhhdmUgZnVsbCBhY2Nlc3MgdG8gY2hhbmdlIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAncyBjb25maWd1cmF0aW9uIGFzIG5lZWRlZC5cbiAqIFNldmVyYWwgcHJvcGVydGllcyB0aGF0IGFyZSBzZXQgd2hlbiBjcmVhdGluZyBhIGdhbWUgc2VydmVyIGdyb3VwLCBpbmNsdWRpbmcgbWF4aW11bS9taW5pbXVtIHNpemUgYW5kIGF1dG8tc2NhbGluZyBwb2xpY3kgc2V0dGluZ3MsIG11c3QgYmUgdXBkYXRlZCBkaXJlY3RseSBpbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICogS2VlcCBpbiBtaW5kIHRoYXQgc29tZSBBdXRvIFNjYWxpbmcgZ3JvdXAgcHJvcGVydGllcyBhcmUgcGVyaW9kaWNhbGx5IHVwZGF0ZWQgYnkgR2FtZUxpZnQgRmxlZXRJUSBhcyBwYXJ0IG9mIGl0cyBiYWxhbmNpbmcgYWN0aXZpdGllcyB0byBvcHRpbWl6ZSBmb3IgYXZhaWxhYmlsaXR5IGFuZCBjb3N0LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9mbGVldGlxZ3VpZGUvZ3NnLWludHJvLmh0bWxcbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6R2FtZVNlcnZlckdyb3VwXG4gKi9cbmV4cG9ydCBjbGFzcyBHYW1lU2VydmVyR3JvdXAgZXh0ZW5kcyBHYW1lU2VydmVyR3JvdXBCYXNlIHtcbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBnYW1lIHNlcnZlciBncm91cCBmcm9tIGl0cyBhdHRyaWJ1dGVzLlxuICAgKi9cbiAgc3RhdGljIGZyb21HYW1lU2VydmVyR3JvdXBBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBHYW1lU2VydmVyR3JvdXBBdHRyaWJ1dGVzKTogSUdhbWVTZXJ2ZXJHcm91cCB7XG4gICAgaWYgKCFhdHRycy5nYW1lU2VydmVyR3JvdXBBcm4gJiYgIWF0dHJzLmdhbWVTZXJ2ZXJHcm91cE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGdhbWVTZXJ2ZXJHcm91cE5hbWUgb3IgZ2FtZVNlcnZlckdyb3VwQXJuIG11c3QgYmUgcHJvdmlkZWQgaW4gR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcycpO1xuICAgIH1cbiAgICBjb25zdCBnYW1lU2VydmVyR3JvdXBOYW1lID0gYXR0cnMuZ2FtZVNlcnZlckdyb3VwTmFtZSA/P1xuICAgICAgY2RrLlN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybihhdHRycy5nYW1lU2VydmVyR3JvdXBBcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghZ2FtZVNlcnZlckdyb3VwTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBnYW1lIHNlcnZlciBncm91cCBuYW1lIGZvdW5kIGluIEFSTjogJyR7YXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJufSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBnYW1lU2VydmVyR3JvdXBBcm4gPSBhdHRycy5nYW1lU2VydmVyR3JvdXBBcm4gPz8gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZ2FtZXNlcnZlcmdyb3VwJyxcbiAgICAgIHJlc291cmNlTmFtZTogYXR0cnMuZ2FtZVNlcnZlckdyb3VwTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuXG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgR2FtZVNlcnZlckdyb3VwQmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwTmFtZSA9IGdhbWVTZXJ2ZXJHcm91cE5hbWUhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cEFybiA9IGdhbWVTZXJ2ZXJHcm91cEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuID0gYXR0cnMuYXV0b1NjYWxpbmdHcm91cEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbCA9IGF0dHJzLnJvbGUgPz8gbmV3IGlhbS5Vbmtub3duUHJpbmNpcGFsKHsgcmVzb3VyY2U6IHRoaXMgfSk7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgcm9sZSA9IGF0dHJzLnJvbGU7XG5cbiAgICAgIGNvbnN0cnVjdG9yKHM6IENvbnN0cnVjdCwgaTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHMsIGksIHtcbiAgICAgICAgICBlbnZpcm9ubWVudEZyb21Bcm46IGdhbWVTZXJ2ZXJHcm91cEFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBhbGxvd3MgQW1hem9uIEdhbWVMaWZ0IHRvIGFjY2VzcyB5b3VyIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3Vwcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByb2xlOiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgdGhpcyBHYW1lTGlmdCBnYW1lIHNlcnZlciBncm91cCBpcyB1c2luZy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG5cbiAgLyoqXG4gICAqIFRoZSBWUEMgbmV0d29yayB0byBwbGFjZSB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaW4uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdnBjOiBlYzIuSVZwYztcblxuICAvKipcbiAgICogVGhlIGdhbWUgc2VydmVyIGdyb3VwJ3Mgc3VibmV0cy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2cGNTdWJuZXRzPzogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZSxcbiAgICB9KTtcbiAgICAvLyBFbmhhbmNlZCBDREsgQW5hbHl0aWNzIFRlbGVtZXRyeVxuICAgIGFkZENvbnN0cnVjdE1ldGFkYXRhKHRoaXMsIHByb3BzKTtcblxuICAgIGlmICghY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lKSkge1xuICAgICAgaWYgKHByb3BzLmdhbWVTZXJ2ZXJHcm91cE5hbWUubGVuZ3RoID4gMTI4KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgR2FtZVNlcnZlckdyb3VwIG5hbWUgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMjggY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG5cbiAgICAgIGlmICghL15bYS16QS1aMC05LVxcLl0rJC8udGVzdChwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWUgc2VydmVyIGdyb3VwIG5hbWUgJHtwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lfSBjYW4gY29udGFpbiBvbmx5IGxldHRlcnMsIG51bWJlcnMsIGh5cGhlbnMsIGJhY2sgc2xhc2ggb3IgZG90IHdpdGggbm8gc3BhY2VzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMudnBjID0gcHJvcHMudnBjO1xuICAgIHRoaXMudnBjU3VibmV0cyA9IHByb3BzLnZwY1N1Ym5ldHMgPz8geyBzdWJuZXRUeXBlOiBlYzIuU3VibmV0VHlwZS5QVUJMSUMgfTtcbiAgICBjb25zdCB7IHN1Ym5ldElkcyB9ID0gcHJvcHMudnBjLnNlbGVjdFN1Ym5ldHModGhpcy52cGNTdWJuZXRzKTtcblxuICAgIGlmIChwcm9wcy5taW5TaXplICYmIHByb3BzLm1pblNpemUgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgY2Fubm90IGJlIGxvd2VyIHRoYW4gMCwgZ2l2ZW4gJHtwcm9wcy5taW5TaXplfWApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5tYXhTaXplICYmIHByb3BzLm1heFNpemUgPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgY2Fubm90IGJlIGxvd2VyIHRoYW4gMSwgZ2l2ZW4gJHtwcm9wcy5tYXhTaXplfWApO1xuICAgIH1cblxuICAgIGlmIChzdWJuZXRJZHMubGVuZ3RoID4gMjApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDIwIHN1Ym5ldHMgYXJlIGFsbG93ZWQgcGVyIGdhbWUgc2VydmVyIGdyb3VwLCBnaXZlbiAke3N1Ym5ldElkcy5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgLy8gQWRkIGFsbCBpbnN0YW5jZSBkZWZpbml0aW9uc1xuICAgIGlmIChwcm9wcy5pbnN0YW5jZURlZmluaXRpb25zLmxlbmd0aCA+IDIwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAyMCBpbnN0YW5jZSBkZWZpbml0aW9ucyBhcmUgYWxsb3dlZCBwZXIgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIGdpdmVuICR7cHJvcHMuaW5zdGFuY2VEZWZpbml0aW9ucy5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgdGhpcy5yb2xlID0gcHJvcHMucm9sZSA/PyBuZXcgaWFtLlJvbGUodGhpcywgJ1NlcnZpY2VSb2xlJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLkNvbXBvc2l0ZVByaW5jaXBhbChcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdnYW1lbGlmdC5hbWF6b25hd3MuY29tJyksXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnYXV0b3NjYWxpbmcuYW1hem9uYXdzLmNvbScpKSxcbiAgICAgIG1hbmFnZWRQb2xpY2llczogW1xuICAgICAgICBpYW0uTWFuYWdlZFBvbGljeS5mcm9tQXdzTWFuYWdlZFBvbGljeU5hbWUoJ0dhbWVMaWZ0R2FtZVNlcnZlckdyb3VwUG9saWN5JyksXG4gICAgICBdLFxuICAgIH0pO1xuICAgIHRoaXMuZ3JhbnRQcmluY2lwYWwgPSB0aGlzLnJvbGU7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5HYW1lU2VydmVyR3JvdXAodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgZ2FtZVNlcnZlckdyb3VwTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBhdXRvU2NhbGluZ1BvbGljeTogdGhpcy5wYXJzZUF1dG9TY2FsaW5nUG9saWN5KHByb3BzKSxcbiAgICAgIGRlbGV0ZU9wdGlvbjogcHJvcHMuZGVsZXRlT3B0aW9uLFxuICAgICAgYmFsYW5jaW5nU3RyYXRlZ3k6IHByb3BzLmJhbGFuY2luZ1N0cmF0ZWd5LFxuICAgICAgZ2FtZVNlcnZlclByb3RlY3Rpb25Qb2xpY3k6IHByb3BzLnByb3RlY3RHYW1lU2VydmVyID8gJ0ZVTExfUFJPVEVDVElPTicgOiAnTk9fUFJPVEVDVElPTicsXG4gICAgICBpbnN0YW5jZURlZmluaXRpb25zOiB0aGlzLnBhcnNlSW5zdGFuY2VEZWZpbml0aW9ucyhwcm9wcyksXG4gICAgICBsYXVuY2hUZW1wbGF0ZTogdGhpcy5wYXJzZUxhdW5jaFRlbXBsYXRlKHByb3BzKSxcbiAgICAgIG1pblNpemU6IHByb3BzLm1pblNpemUsXG4gICAgICBtYXhTaXplOiBwcm9wcy5tYXhTaXplLFxuICAgICAgcm9sZUFybjogdGhpcy5yb2xlLnJvbGVBcm4sXG4gICAgICB2cGNTdWJuZXRzOiBzdWJuZXRJZHMsXG4gICAgfSk7XG5cbiAgICB0aGlzLmdhbWVTZXJ2ZXJHcm91cE5hbWUgPSB0aGlzLmdldFJlc291cmNlTmFtZUF0dHJpYnV0ZShyZXNvdXJjZS5yZWYpO1xuICAgIHRoaXMuZ2FtZVNlcnZlckdyb3VwQXJuID0gdGhpcy5nZXRSZXNvdXJjZUFybkF0dHJpYnV0ZShyZXNvdXJjZS5hdHRyR2FtZVNlcnZlckdyb3VwQXJuLCB7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdnYW1lc2VydmVyZ3JvdXAnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICAgIHRoaXMuYXV0b1NjYWxpbmdHcm91cEFybiA9IHRoaXMuZ2V0UmVzb3VyY2VBcm5BdHRyaWJ1dGUocmVzb3VyY2UuYXR0ckF1dG9TY2FsaW5nR3JvdXBBcm4sIHtcbiAgICAgIHNlcnZpY2U6ICdhdXRvc2NhbGluZycsXG4gICAgICByZXNvdXJjZTogJ2F1dG9TY2FsaW5nR3JvdXAnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5DT0xPTl9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlTGF1bmNoVGVtcGxhdGUocHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkxhdW5jaFRlbXBsYXRlUHJvcGVydHkge1xuICAgIHJldHVybiB7XG4gICAgICBsYXVuY2hUZW1wbGF0ZUlkOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXVuY2hUZW1wbGF0ZUlkLFxuICAgICAgbGF1bmNoVGVtcGxhdGVOYW1lOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXVuY2hUZW1wbGF0ZU5hbWUsXG4gICAgICB2ZXJzaW9uOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS52ZXJzaW9uTnVtYmVyLFxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VBdXRvU2NhbGluZ1BvbGljeShwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpOiBDZm5HYW1lU2VydmVyR3JvdXAuQXV0b1NjYWxpbmdQb2xpY3lQcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5hdXRvU2NhbGluZ1BvbGljeSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZXN0aW1hdGVkSW5zdGFuY2VXYXJtdXA6IHByb3BzLmF1dG9TY2FsaW5nUG9saWN5LmVzdGltYXRlZEluc3RhbmNlV2FybXVwPy50b1NlY29uZHMoKSxcbiAgICAgIHRhcmdldFRyYWNraW5nQ29uZmlndXJhdGlvbjoge1xuICAgICAgICB0YXJnZXRWYWx1ZTogcHJvcHMuYXV0b1NjYWxpbmdQb2xpY3kudGFyZ2V0VHJhY2tpbmdDb25maWd1cmF0aW9uLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlSW5zdGFuY2VEZWZpbml0aW9ucyhwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpOiBDZm5HYW1lU2VydmVyR3JvdXAuSW5zdGFuY2VEZWZpbml0aW9uUHJvcGVydHlbXSB7XG4gICAgcmV0dXJuIHByb3BzLmluc3RhbmNlRGVmaW5pdGlvbnMubWFwKHBhcnNlSW5zdGFuY2VEZWZpbml0aW9uKTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlSW5zdGFuY2VEZWZpbml0aW9uKGluc3RhbmNlRGVmaW5pdGlvbjogSW5zdGFuY2VEZWZpbml0aW9uKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkluc3RhbmNlRGVmaW5pdGlvblByb3BlcnR5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGluc3RhbmNlVHlwZTogaW5zdGFuY2VEZWZpbml0aW9uLmluc3RhbmNlVHlwZS50b1N0cmluZygpLFxuICAgICAgICB3ZWlnaHRlZENhcGFjaXR5OiBpbnN0YW5jZURlZmluaXRpb24ud2VpZ2h0Py50b1N0cmluZygpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
280
+ GameServerGroup[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroup", version: "2.196.0-alpha.0" };
281
+ /** Uniquely identifies this class. */
282
+ GameServerGroup.PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.GameServerGroup';
283
+ exports.GameServerGroup = GameServerGroup = __decorate([
284
+ prop_injectable_1.propertyInjectable
285
+ ], GameServerGroup);
286
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXJ2ZXItZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnYW1lLXNlcnZlci1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSx5REFBeUQ7QUFDekQsMkNBQTJDO0FBQzNDLDJDQUEyQztBQUMzQyx3Q0FBd0M7QUFFeEMsMkRBQThEO0FBQzlELDhFQUE4RTtBQUM5RSwwRUFBMEU7QUErQzFFOzs7R0FHRztBQUNILElBQVksWUFlWDtBQWZELFdBQVksWUFBWTtJQUN0Qjs7T0FFRztJQUNILDJDQUEyQixDQUFBO0lBRTNCOztPQUVHO0lBQ0gsNkNBQTZCLENBQUE7SUFFN0I7O09BRUc7SUFDSCxpQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBZlcsWUFBWSw0QkFBWixZQUFZLFFBZXZCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGlCQW9CWDtBQXBCRCxXQUFZLGlCQUFpQjtJQUMzQjs7OztPQUlHO0lBQ0gsNENBQXVCLENBQUE7SUFFdkI7Ozs7T0FJRztJQUNILHNEQUFpQyxDQUFBO0lBRWpDOzs7T0FHRztJQUNILHNEQUFpQyxDQUFBO0FBQ25DLENBQUMsRUFwQlcsaUJBQWlCLGlDQUFqQixpQkFBaUIsUUFvQjVCO0FBc0NEOztHQUVHO0FBQ0gsTUFBc0IsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFxQnJELEtBQUssQ0FBQyxPQUF1QixFQUFFLEdBQUcsT0FBaUI7UUFDeEQsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztZQUM5QixZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7WUFDdkMsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLE9BQU87U0FDakIsQ0FBQyxDQUFDO0tBQ0o7SUFFTSxNQUFNLENBQUMsVUFBa0IsRUFBRSxLQUFnQztRQUNoRSxPQUFPLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUMzQixTQUFTLEVBQUUsY0FBYztZQUN6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QkFDM0IsV0FBVyxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQywyQkFBMkI7YUFDakU7U0FDRixDQUFDO0tBQ0g7SUFFUyx3QkFBd0IsQ0FBQyxLQUEyQjs7Ozs7Ozs7OztRQUM1RCxPQUFPLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUU5RCxTQUFTLHVCQUF1QixDQUFDLGtCQUFzQztZQUNyRSxPQUFPO2dCQUNMLFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO2dCQUN4RCxnQkFBZ0IsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFO2FBQ3hELENBQUM7UUFDSixDQUFDO0tBQ0Y7O0FBdkxVLDBDQUFlOzs7QUFDMUIsc0NBQXNDO0FBQ2YscUNBQXFCLEdBQVcsNkNBQTZDLEFBQXhELENBQXlEOzBCQUYxRixlQUFlO0lBRDNCLG9DQUFrQjtHQUNOLGVBQWUsQ0F3TDNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2xvdWR3YXRjaCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaCc7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWIvY29yZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IENmbkdhbWVTZXJ2ZXJHcm91cCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5pbXBvcnQgeyBhZGRDb25zdHJ1Y3RNZXRhZGF0YSB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL21ldGFkYXRhLXJlc291cmNlJztcbmltcG9ydCB7IHByb3BlcnR5SW5qZWN0YWJsZSB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL3Byb3AtaW5qZWN0YWJsZSc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgaW50ZWxsaWdlbnQgYXV0b21hdGljIHNjYWxpbmcgdGhhdCB1c2VzIHRhcmdldCB0cmFja2luZy5cbiAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgYWxsIHVwZGF0ZXMgdG8gQXV0byBTY2FsaW5nIHBvbGljaWVzLCBpbmNsdWRpbmcgY2hhbmdpbmcgdGhpcyBwb2xpY3kgYW5kIGFkZGluZyBvciByZW1vdmluZyBvdGhlciBwb2xpY2llcywgaXMgZG9uZSBkaXJlY3RseSBvbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9TY2FsaW5nUG9saWN5IHtcbiAgLyoqXG4gICAqIExlbmd0aCBvZiB0aW1lLCBpdCB0YWtlcyBmb3IgYSBuZXcgaW5zdGFuY2UgdG8gc3RhcnQgbmV3IGdhbWUgc2VydmVyIHByb2Nlc3NlcyBhbmQgcmVnaXN0ZXIgd2l0aCBHYW1lTGlmdCBGbGVldElRLlxuICAgKiBTcGVjaWZ5aW5nIGEgd2FybS11cCB0aW1lIGNhbiBiZSB1c2VmdWwsIHBhcnRpY3VsYXJseSB3aXRoIGdhbWUgc2VydmVycyB0aGF0IHRha2UgYSBsb25nIHRpbWUgdG8gc3RhcnQgdXAsIGJlY2F1c2UgaXQgYXZvaWRzIHByZW1hdHVyZWx5IHN0YXJ0aW5nIG5ldyBpbnN0YW5jZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGluc3RhbmNlIHdhcm11cCBkdXJhdGlvbiBzZXR0bGVkXG4gICAqL1xuICByZWFkb25seSBlc3RpbWF0ZWRJbnN0YW5jZVdhcm11cD86IGNkay5EdXJhdGlvbjtcblxuICAvKipcbiAgICogU2V0dGluZ3MgZm9yIGEgdGFyZ2V0LWJhc2VkIHNjYWxpbmcgcG9saWN5IGFwcGxpZWQgdG8gQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKiBUaGVzZSBzZXR0aW5ncyBhcmUgdXNlZCB0byBjcmVhdGUgYSB0YXJnZXQtYmFzZWQgcG9saWN5IHRoYXQgdHJhY2tzIHRoZSBHYW1lTGlmdCBGbGVldElRIG1ldHJpYyBgUGVyY2VudFV0aWxpemVkR2FtZVNlcnZlcnNgIGFuZCBzcGVjaWZpZXMgYSB0YXJnZXQgdmFsdWUgZm9yIHRoZSBtZXRyaWMuXG4gICAqXG4gICAqIEFzIHBsYXllciB1c2FnZSBjaGFuZ2VzLCB0aGUgcG9saWN5IHRyaWdnZXJzIHRvIGFkanVzdCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgY2FwYWNpdHkgc28gdGhhdCB0aGUgbWV0cmljIHJldHVybnMgdG8gdGhlIHRhcmdldCB2YWx1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFRyYWNraW5nQ29uZmlndXJhdGlvbjogbnVtYmVyO1xuXG59XG4vKipcbiAqIEFuIGFsbG93ZWQgaW5zdGFuY2UgdHlwZSBmb3IgYSBnYW1lIHNlcnZlciBncm91cC5cbiAqIEFsbCBnYW1lIHNlcnZlciBncm91cHMgbXVzdCBoYXZlIGF0IGxlYXN0IHR3byBpbnN0YW5jZSB0eXBlcyBkZWZpbmVkIGZvciBpdC5cbiAqIEdhbWVMaWZ0IEZsZWV0SVEgcGVyaW9kaWNhbGx5IGV2YWx1YXRlcyBlYWNoIGRlZmluZWQgaW5zdGFuY2UgdHlwZSBmb3IgdmlhYmlsaXR5LlxuICogSXQgdGhlbiB1cGRhdGVzIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgd2l0aCB0aGUgbGlzdCBvZiB2aWFibGUgaW5zdGFuY2UgdHlwZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5zdGFuY2VEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIEFuIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZSBkZXNpZ25hdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlVHlwZTogZWMyLkluc3RhbmNlVHlwZTtcblxuICAvKipcbiAgICogSW5zdGFuY2Ugd2VpZ2h0aW5nIHRoYXQgaW5kaWNhdGVzIGhvdyBtdWNoIHRoaXMgaW5zdGFuY2UgdHlwZSBjb250cmlidXRlcyB0byB0aGUgdG90YWwgY2FwYWNpdHkgb2YgYSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSW5zdGFuY2Ugd2VpZ2h0cyBhcmUgdXNlZCBieSBHYW1lTGlmdCBGbGVldElRIHRvIGNhbGN1bGF0ZSB0aGUgaW5zdGFuY2UgdHlwZSdzIGNvc3QgcGVyIHVuaXQgaG91ciBhbmQgYmV0dGVyIGlkZW50aWZ5IHRoZSBtb3N0IGNvc3QtZWZmZWN0aXZlIG9wdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1dG9zY2FsaW5nL2VjMi91c2VyZ3VpZGUvYXNnLWluc3RhbmNlLXdlaWdodGluZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlZmF1bHQgdmFsdWUgaXMgMVxuICAgKi9cbiAgcmVhZG9ubHkgd2VpZ2h0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoZSB0eXBlIG9mIGRlbGV0ZSB0byBwZXJmb3JtLlxuICogVG8gZGVsZXRlIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHNwZWNpZnkgdGhlIERlbGV0ZU9wdGlvbi5cbiAqL1xuZXhwb3J0IGVudW0gRGVsZXRlT3B0aW9uIHtcbiAgLyoqXG4gICAqIFRlcm1pbmF0ZXMgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGFuZCBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cCBvbmx5IHdoZW4gaXQgaGFzIG5vIGdhbWUgc2VydmVycyB0aGF0IGFyZSBpbiBVVElMSVpFRCBzdGF0dXMuXG4gICAqL1xuICBTQUZFX0RFTEVURSA9ICdTQUZFX0RFTEVURScsXG5cbiAgLyoqXG4gICAqIFRlcm1pbmF0ZXMgdGhlIGdhbWUgc2VydmVyIGdyb3VwLCBpbmNsdWRpbmcgYWxsIGFjdGl2ZSBnYW1lIHNlcnZlcnMgcmVnYXJkbGVzcyBvZiB0aGVpciB1dGlsaXphdGlvbiBzdGF0dXMsIGFuZCB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gICAqL1xuICBGT1JDRV9ERUxFVEUgPSAnRk9SQ0VfREVMRVRFJyxcblxuICAvKipcbiAgICogRG9lcyBhIHNhZmUgZGVsZXRlIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cCBidXQgcmV0YWlucyB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgYXMgaXMuXG4gICAqL1xuICBSRVRBSU4gPSAnUkVUQUlOJyxcbn1cblxuLyoqXG4gKiBJbmRpY2F0ZXMgaG93IEdhbWVMaWZ0IEZsZWV0SVEgYmFsYW5jZXMgdGhlIHVzZSBvZiBTcG90IEluc3RhbmNlcyBhbmQgT24tRGVtYW5kIEluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBlbnVtIEJhbGFuY2luZ1N0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIE9ubHkgU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKiBJZiBTcG90IEluc3RhbmNlcyBhcmUgdW5hdmFpbGFibGUgb3Igbm90IHZpYWJsZSBmb3IgZ2FtZSBob3N0aW5nLCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgcHJvdmlkZXMgbm8gaG9zdGluZyBjYXBhY2l0eSB1bnRpbCBTcG90IEluc3RhbmNlcyBjYW4gYWdhaW4gYmUgdXNlZC5cbiAgICogVW50aWwgdGhlbiwgbm8gbmV3IGluc3RhbmNlcyBhcmUgc3RhcnRlZCwgYW5kIHRoZSBleGlzdGluZyBub252aWFibGUgU3BvdCBJbnN0YW5jZXMgYXJlIHRlcm1pbmF0ZWQgKGFmdGVyIGN1cnJlbnQgZ2FtZXBsYXkgZW5kcykgYW5kIGFyZSBub3QgcmVwbGFjZWQuXG4gICAqL1xuICBTUE9UX09OTFkgPSAnU1BPVF9PTkxZJyxcblxuICAvKipcbiAgICogU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQgd2hlbmV2ZXIgYXZhaWxhYmxlIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSWYgU3BvdCBJbnN0YW5jZXMgYXJlIHVuYXZhaWxhYmxlLCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgY29udGludWVzIHRvIHByb3ZpZGUgaG9zdGluZyBjYXBhY2l0eSBieSBmYWxsaW5nIGJhY2sgdG8gT24tRGVtYW5kIEluc3RhbmNlcy5cbiAgICogRXhpc3Rpbmcgbm9udmlhYmxlIFNwb3QgSW5zdGFuY2VzIGFyZSB0ZXJtaW5hdGVkIChhZnRlciBjdXJyZW50IGdhbWVwbGF5IGVuZHMpIGFuZCBhcmUgcmVwbGFjZWQgd2l0aCBuZXcgT24tRGVtYW5kIEluc3RhbmNlcy5cbiAgICovXG4gIFNQT1RfUFJFRkVSUkVEID0gJ1NQT1RfUFJFRkVSUkVEJyxcblxuICAvKipcbiAgICogT25seSBPbi1EZW1hbmQgSW5zdGFuY2VzIGFyZSB1c2VkIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogTm8gU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQsIGV2ZW4gd2hlbiBhdmFpbGFibGUsIHdoaWxlIHRoaXMgYmFsYW5jaW5nIHN0cmF0ZWd5IGlzIGluIGZvcmNlLlxuICAgKi9cbiAgT05fREVNQU5EX09OTFkgPSAnT05fREVNQU5EX09OTFknLFxufVxuXG4vKipcbiAqIFJlcHJlc2VudCBhIEdhbWVMaWZ0IEZsZWV0SVEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUdhbWVTZXJ2ZXJHcm91cCBleHRlbmRzIGNkay5JUmVzb3VyY2UsIGlhbS5JR3JhbnRhYmxlIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9TY2FsaW5nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogR3JhbnQgdGhlIGBncmFudGVlYCBpZGVudGl0eSBwZXJtaXNzaW9ucyB0byBwZXJmb3JtIGBhY3Rpb25zYC5cbiAgICovXG4gIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudDtcblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBnaXZlbiBuYW1lZCBtZXRyaWMgZm9yIHRoaXMgZmxlZXQuXG4gICAqL1xuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgRmxlZXRJUSBnYW1lIHNlcnZlciBncm91cC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEdhbWVTZXJ2ZXJHcm91cEJhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJR2FtZVNlcnZlckdyb3VwIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnZW5lcmF0ZWQgQXV0b1NjYWxpbmcgZ3JvdXBcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgdGhpcyBHYW1lTGlmdCBnYW1lIHNlcnZlciBncm91cCBpcyB1c2luZy5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG5cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICByZXNvdXJjZUFybnM6IFt0aGlzLmdhbWVTZXJ2ZXJHcm91cEFybl0sXG4gICAgICBncmFudGVlOiBncmFudGVlLFxuICAgICAgYWN0aW9uczogYWN0aW9ucyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIG5hbWVzcGFjZTogJ0FXUy9HYW1lTGlmdCcsXG4gICAgICBtZXRyaWNOYW1lOiBtZXRyaWNOYW1lLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBHYW1lU2VydmVyR3JvdXBBcm46IHRoaXMuZ2FtZVNlcnZlckdyb3VwQXJuLFxuICAgICAgfSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pLmF0dGFjaFRvKHRoaXMpO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVTZXJ2ZXJHcm91cCBjb250ZW50IGRlZmluZWQgb3V0c2lkZSBvZiB0aGlzIHN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdhbWVTZXJ2ZXJHcm91cEF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZ2FtZVNlcnZlckdyb3VwQXJuYCBhbmQgYGdhbWVTZXJ2ZXJHcm91cE5hbWVgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlcnZlckdyb3VwQXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZ2FtZVNlcnZlckdyb3VwQXJuYCBhbmQgYGdhbWVTZXJ2ZXJHcm91cE5hbWVgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlcnZlckdyb3VwTmFtZWAuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdlbmVyYXRlZCBBdXRvU2NhbGluZyBncm91cFxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgaW1wb3J0ZWQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgZG9lcyBub3QgaGF2ZSBhdXRvc2NhbGluZyBncm91cCBpbmZvcm1hdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBhbGxvd3MgQW1hem9uIEdhbWVMaWZ0IHRvIGFjY2VzcyB5b3VyIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3Vwcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGltcG9ydGVkIGdhbWUgc2VydmVyIGdyb3VwIGNhbm5vdCBiZSBncmFudGVkIGFjY2VzcyB0byBvdGhlciByZXNvdXJjZXMgYXMgYW4gYGlhbS5JR3JhbnRhYmxlYC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgR2FtZWxpZnQgRmxlZXRJUSBHYW1lIHNlcnZlciBncm91cFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdhbWVTZXJ2ZXJHcm91cFByb3BzIHtcbiAgLyoqXG4gICAqIEEgZGV2ZWxvcGVyLWRlZmluZWQgaWRlbnRpZmllciBmb3IgdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKiBUaGUgbmFtZSBpcyB1bmlxdWUgZm9yIGVhY2ggUmVnaW9uIGluIGVhY2ggQVdTIGFjY291bnQuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSB0aGF0IGFsbG93cyBBbWF6b24gR2FtZUxpZnQgdG8gYWNjZXNzIHlvdXIgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXBzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZmxlZXRpcWd1aWRlL2dzZy1pYW0tcGVybWlzc2lvbnMtcm9sZXMuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGEgcm9sZSB3aWxsIGJlIGNyZWF0ZWQgd2l0aCBkZWZhdWx0IHRydXN0IHRvIEdhbWVsaWZ0IGFuZCBBdXRvc2NhbGluZyBzZXJ2aWNlIHByaW5jaXBhbCB3aXRoIGEgZGVmYXVsdCBwb2xpY3kgYEdhbWVMaWZ0R2FtZVNlcnZlckdyb3VwUG9saWN5YCBhdHRhY2hlZC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gICAqIER1cmluZyBhdXRvbWF0aWMgc2NhbGluZyBldmVudHMsIEdhbWVMaWZ0IEZsZWV0SVEgYW5kIEFtYXpvbiBFQzIgZG8gbm90IHNjYWxlIGRvd24gdGhlIGdyb3VwIGJlbG93IHRoaXMgbWluaW11bS5cbiAgICpcbiAgICogSW4gcHJvZHVjdGlvbiwgdGhpcyB2YWx1ZSBzaG91bGQgYmUgc2V0IHRvIGF0IGxlYXN0IDEuXG4gICAqXG4gICAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgdXBkYXRlIHRoaXMgdmFsdWUgZGlyZWN0bHkgaW4gdGhlIEF1dG8gU2NhbGluZyBncm91cCB1c2luZyB0aGUgQVdTIGNvbnNvbGUgb3IgQVBJcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGRlZmF1bHQgaXMgMFxuICAgKi9cbiAgcmVhZG9ubHkgbWluU2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGluIHRoZSBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cC4gRHVyaW5nIGF1dG9tYXRpYyBzY2FsaW5nIGV2ZW50cywgR2FtZUxpZnQgRmxlZXRJUSBhbmQgRUMyIGRvIG5vdCBzY2FsZSB1cCB0aGUgZ3JvdXAgYWJvdmUgdGhpcyBtYXhpbXVtLlxuICAgKlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IGlzIDFcbiAgICovXG4gIHJlYWRvbmx5IG1heFNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBWUEMgbmV0d29yayB0byBwbGFjZSB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaW4uXG4gICAqXG4gICAqIEJ5IGRlZmF1bHQsIGFsbCBHYW1lTGlmdCBGbGVldElRLXN1cHBvcnRlZCBBdmFpbGFiaWxpdHkgWm9uZXMgYXJlIHVzZWQuXG4gICAqXG4gICAqIFlvdSBjYW4gdXNlIHRoaXMgcGFyYW1ldGVyIHRvIHNwZWNpZnkgVlBDcyB0aGF0IHlvdSd2ZSBzZXQgdXAuXG4gICAqXG4gICAqIFRoaXMgcHJvcGVydHkgY2Fubm90IGJlIHVwZGF0ZWQgYWZ0ZXIgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGlzIGNyZWF0ZWQsXG4gICAqIGFuZCB0aGUgY29ycmVzcG9uZGluZyBBdXRvIFNjYWxpbmcgZ3JvdXAgd2lsbCBhbHdheXMgdXNlIHRoZSBwcm9wZXJ0eSB2YWx1ZSB0aGF0IGlzIHNldCB3aXRoIHRoaXMgcmVxdWVzdCxcbiAgICogZXZlbiBpZiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIHVwZGF0ZWQgZGlyZWN0bHkuXG4gICAqL1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuXG4gIC8qKlxuICAgKiBHYW1lIHNlcnZlciBncm91cCBzdWJuZXQgc2VsZWN0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IGFsbCBHYW1lTGlmdCBGbGVldElRLXN1cHBvcnRlZCBBdmFpbGFiaWxpdHkgWm9uZXMgYXJlIHVzZWQuXG4gICAqL1xuICByZWFkb25seSB2cGNTdWJuZXRzPzogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcblxuICAvKipcbiAgICogVGhlIHNldCBvZiBBbWF6b24gRUMyIGluc3RhbmNlIHR5cGVzIHRoYXQgR2FtZUxpZnQgRmxlZXRJUSBjYW4gdXNlIHdoZW4gYmFsYW5jaW5nIGFuZCBhdXRvbWF0aWNhbGx5IHNjYWxpbmcgaW5zdGFuY2VzIGluIHRoZSBjb3JyZXNwb25kaW5nIEF1dG8gU2NhbGluZyBncm91cC5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlRGVmaW5pdGlvbnM6IEluc3RhbmNlRGVmaW5pdGlvbltdO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIEVDMiBsYXVuY2ggdGVtcGxhdGUgdGhhdCBjb250YWlucyBjb25maWd1cmF0aW9uIHNldHRpbmdzIGFuZCBnYW1lIHNlcnZlciBjb2RlIHRvIGJlIGRlcGxveWVkIHRvIGFsbCBpbnN0YW5jZXMgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIE5PVEU6XG4gICAqIElmIHlvdSBzcGVjaWZ5IG5ldHdvcmsgaW50ZXJmYWNlcyBpbiB5b3VyIGxhdW5jaCB0ZW1wbGF0ZSwgeW91IG11c3QgZXhwbGljaXRseSBzZXQgdGhlIHByb3BlcnR5IEFzc29jaWF0ZVB1YmxpY0lwQWRkcmVzcyB0byBgdHJ1ZWAuXG4gICAqIElmIG5vIG5ldHdvcmsgaW50ZXJmYWNlIGlzIHNwZWNpZmllZCBpbiB0aGUgbGF1bmNoIHRlbXBsYXRlLCBHYW1lTGlmdCBGbGVldElRIHVzZXMgeW91ciBhY2NvdW50J3MgZGVmYXVsdCBWUEMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1dG9zY2FsaW5nL2VjMi91c2VyZ3VpZGUvY3JlYXRlLWxhdW5jaC10ZW1wbGF0ZS5odG1sXG4gICAqL1xuICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZTogZWMyLklMYXVuY2hUZW1wbGF0ZTtcblxuICAvKipcbiAgICogQSBmbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgaW5zdGFuY2VzIGluIHRoZSBnYW1lIHNlcnZlciBncm91cCBhcmUgcHJvdGVjdGVkIGZyb20gZWFybHkgdGVybWluYXRpb24uXG4gICAqIFVucHJvdGVjdGVkIGluc3RhbmNlcyB0aGF0IGhhdmUgYWN0aXZlIGdhbWUgc2VydmVycyBydW5uaW5nIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudCwgY2F1c2luZyBwbGF5ZXJzIHRvIGJlIGRyb3BwZWQgZnJvbSB0aGUgZ2FtZS5cbiAgICogUHJvdGVjdGVkIGluc3RhbmNlcyBjYW5ub3QgYmUgdGVybWluYXRlZCB3aGlsZSB0aGVyZSBhcmUgYWN0aXZlIGdhbWUgc2VydmVycyBydW5uaW5nIGV4Y2VwdCBpbiB0aGUgZXZlbnQgb2YgYSBmb3JjZWQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgZGVsZXRpb24uXG4gICAqXG4gICAqIEFuIGV4Y2VwdGlvbiB0byB0aGlzIGlzIHdpdGggU3BvdCBJbnN0YW5jZXMsIHdoaWNoIGNhbiBiZSB0ZXJtaW5hdGVkIGJ5IEFXUyByZWdhcmRsZXNzIG9mIHByb3RlY3Rpb24gc3RhdHVzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBnYW1lIHNlcnZlcnMgcnVubmluZyBtaWdodCBiZSB0ZXJtaW5hdGVkIGR1cmluZyBhIHNjYWxlLWRvd24gZXZlbnRcbiAgICovXG4gIHJlYWRvbmx5IHByb3RlY3RHYW1lU2VydmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBzZXR0aW5ncyB0byBkZWZpbmUgYSBzY2FsaW5nIHBvbGljeSBmb3IgdGhlIEF1dG8gU2NhbGluZyBncm91cCB0aGF0IGlzIG9wdGltaXplZCBmb3IgZ2FtZSBob3N0aW5nLlxuICAgKiBUaGUgc2NhbGluZyBwb2xpY3kgdXNlcyB0aGUgbWV0cmljIGBQZXJjZW50VXRpbGl6ZWRHYW1lU2VydmVyc2AgdG8gbWFpbnRhaW4gYSBidWZmZXIgb2YgaWRsZSBnYW1lIHNlcnZlcnMgdGhhdCBjYW4gaW1tZWRpYXRlbHkgYWNjb21tb2RhdGUgbmV3IGdhbWVzIGFuZCBwbGF5ZXJzLlxuICAgKlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGF1dG9zY2FsaW5nIHBvbGljeSBzZXR0bGVkXG4gICAqL1xuICByZWFkb25seSBhdXRvU2NhbGluZ1BvbGljeT86IEF1dG9TY2FsaW5nUG9saWN5O1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBkZWxldGUgdG8gcGVyZm9ybS4gVG8gZGVsZXRlIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHNwZWNpZnkgdGhlIERlbGV0ZU9wdGlvblxuICAgKlxuICAgKiBAZGVmYXVsdCBTQUZFX0RFTEVURVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlT3B0aW9uPzogRGVsZXRlT3B0aW9uO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaG93IEdhbWVMaWZ0IEZsZWV0SVEgYmFsYW5jZXMgdGhlIHVzZSBvZiBTcG90IEluc3RhbmNlcyBhbmQgT24tRGVtYW5kIEluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqXG4gICAqIEBkZWZhdWx0IFNQT1RfUFJFRkVSUkVEXG4gICAqL1xuICByZWFkb25seSBiYWxhbmNpbmdTdHJhdGVneT86IEJhbGFuY2luZ1N0cmF0ZWd5O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBHYW1lTGlmdCBGbGVldElRIGdhbWUgc2VydmVyIGdyb3VwIGZvciBtYW5hZ2luZyBnYW1lIGhvc3Rpbmcgb24gYSBjb2xsZWN0aW9uIG9mIEFtYXpvbiBFQzIgaW5zdGFuY2VzIGZvciBnYW1lIGhvc3RpbmcuXG4gKiBUaGlzIG9wZXJhdGlvbiBjcmVhdGVzIHRoZSBnYW1lIHNlcnZlciBncm91cCwgY3JlYXRlcyBhbiBBdXRvIFNjYWxpbmcgZ3JvdXAgaW4geW91ciBBV1MgYWNjb3VudCwgYW5kIGVzdGFibGlzaGVzIGEgbGluayBiZXR3ZWVuIHRoZSB0d28gZ3JvdXBzLlxuICogWW91IGNhbiB2aWV3IHRoZSBzdGF0dXMgb2YgeW91ciBnYW1lIHNlcnZlciBncm91cHMgaW4gdGhlIEdhbWVMaWZ0IGNvbnNvbGUuXG4gKiBHYW1lIHNlcnZlciBncm91cCBtZXRyaWNzIGFuZCBldmVudHMgYXJlIGVtaXR0ZWQgdG8gQW1hem9uIENsb3VkV2F0Y2guXG4gKiBCZWZvcmUgY3JlYXRpbmcgYSBuZXcgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHlvdSBtdXN0IGhhdmUgdGhlIGZvbGxvd2luZzpcbiAqICAtIEFuIEFtYXpvbiBFQzIgbGF1bmNoIHRlbXBsYXRlIHRoYXQgc3BlY2lmaWVzIGhvdyB0byBsYXVuY2ggQW1hem9uIEVDMiBpbnN0YW5jZXMgd2l0aCB5b3VyIGdhbWUgc2VydmVyIGJ1aWxkLlxuICogIC0gQW4gSUFNIHJvbGUgdGhhdCBleHRlbmRzIGxpbWl0ZWQgYWNjZXNzIHRvIHlvdXIgQVdTIGFjY291bnQgdG8gYWxsb3cgR2FtZUxpZnQgRmxlZXRJUSB0byBjcmVhdGUgYW5kIGludGVyYWN0IHdpdGggdGhlIEF1dG8gU2NhbGluZyBncm91cC5cbiAqXG4gKiBUbyBjcmVhdGUgYSBuZXcgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHNwZWNpZnkgYSB1bmlxdWUgZ3JvdXAgbmFtZSwgSUFNIHJvbGUgYW5kIEFtYXpvbiBFQzIgbGF1bmNoIHRlbXBsYXRlLCBhbmQgcHJvdmlkZSBhIGxpc3Qgb2YgaW5zdGFuY2UgdHlwZXMgdGhhdCBjYW4gYmUgdXNlZCBpbiB0aGUgZ3JvdXAuXG4gKiBZb3UgbXVzdCBhbHNvIHNldCBpbml0aWFsIG1heGltdW0gYW5kIG1pbmltdW0gbGltaXRzIG9uIHRoZSBncm91cCdzIGluc3RhbmNlIGNvdW50LlxuICogWW91IGNhbiBvcHRpb25hbGx5IHNldCBhbiBBdXRvIFNjYWxpbmcgcG9saWN5IHdpdGggdGFyZ2V0IHRyYWNraW5nIGJhc2VkIG9uIGEgR2FtZUxpZnQgRmxlZXRJUSBtZXRyaWMuXG4gKlxuICogT25jZSB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgYW5kIGNvcnJlc3BvbmRpbmcgQXV0byBTY2FsaW5nIGdyb3VwIGFyZSBjcmVhdGVkLCB5b3UgaGF2ZSBmdWxsIGFjY2VzcyB0byBjaGFuZ2UgdGhlIEF1dG8gU2NhbGluZyBncm91cCdzIGNvbmZpZ3VyYXRpb24gYXMgbmVlZGVkLlxuICogU2V2ZXJhbCBwcm9wZXJ0aWVzIHRoYXQgYXJlIHNldCB3aGVuIGNyZWF0aW5nIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIGluY2x1ZGluZyBtYXhpbXVtL21pbmltdW0gc2l6ZSBhbmQgYXV0by1zY2FsaW5nIHBvbGljeSBzZXR0aW5ncywgbXVzdCBiZSB1cGRhdGVkIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gKiBLZWVwIGluIG1pbmQgdGhhdCBzb21lIEF1dG8gU2NhbGluZyBncm91cCBwcm9wZXJ0aWVzIGFyZSBwZXJpb2RpY2FsbHkgdXBkYXRlZCBieSBHYW1lTGlmdCBGbGVldElRIGFzIHBhcnQgb2YgaXRzIGJhbGFuY2luZyBhY3Rpdml0aWVzIHRvIG9wdGltaXplIGZvciBhdmFpbGFiaWxpdHkgYW5kIGNvc3QuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2ZsZWV0aXFndWlkZS9nc2ctaW50cm8uaHRtbFxuICpcbiAqIEByZXNvdXJjZSBBV1M6OkdhbWVMaWZ0OjpHYW1lU2VydmVyR3JvdXBcbiAqL1xuQHByb3BlcnR5SW5qZWN0YWJsZVxuZXhwb3J0IGNsYXNzIEdhbWVTZXJ2ZXJHcm91cCBleHRlbmRzIEdhbWVTZXJ2ZXJHcm91cEJhc2Uge1xuICAvKiogVW5pcXVlbHkgaWRlbnRpZmllcyB0aGlzIGNsYXNzLiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBST1BFUlRZX0lOSkVDVElPTl9JRDogc3RyaW5nID0gJ0Bhd3MtY2RrLmF3cy1nYW1lbGlmdC1hbHBoYS5HYW1lU2VydmVyR3JvdXAnO1xuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZ2FtZSBzZXJ2ZXIgZ3JvdXAgZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcyk6IElHYW1lU2VydmVyR3JvdXAge1xuICAgIGlmICghYXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJuICYmICFhdHRycy5nYW1lU2VydmVyR3JvdXBOYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBnYW1lU2VydmVyR3JvdXBOYW1lIG9yIGdhbWVTZXJ2ZXJHcm91cEFybiBtdXN0IGJlIHByb3ZpZGVkIGluIEdhbWVTZXJ2ZXJHcm91cEF0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgZ2FtZVNlcnZlckdyb3VwTmFtZSA9IGF0dHJzLmdhbWVTZXJ2ZXJHcm91cE5hbWUgPz9cbiAgICAgIGNkay5TdGFjay5vZihzY29wZSkuc3BsaXRBcm4oYXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJuISwgY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG5cbiAgICBpZiAoIWdhbWVTZXJ2ZXJHcm91cE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gZ2FtZSBzZXJ2ZXIgZ3JvdXAgbmFtZSBmb3VuZCBpbiBBUk46ICcke2F0dHJzLmdhbWVTZXJ2ZXJHcm91cEFybn0nYCk7XG4gICAgfVxuXG4gICAgY29uc3QgZ2FtZVNlcnZlckdyb3VwQXJuID0gYXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2dhbWVzZXJ2ZXJncm91cCcsXG4gICAgICByZXNvdXJjZU5hbWU6IGF0dHJzLmdhbWVTZXJ2ZXJHcm91cE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcblxuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEdhbWVTZXJ2ZXJHcm91cEJhc2Uge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWUgPSBnYW1lU2VydmVyR3JvdXBOYW1lITtcbiAgICAgIHB1YmxpYyByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm4gPSBnYW1lU2VydmVyR3JvdXBBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybiA9IGF0dHJzLmF1dG9TY2FsaW5nR3JvdXBBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWwgPSBhdHRycy5yb2xlID8/IG5ldyBpYW0uVW5rbm93blByaW5jaXBhbCh7IHJlc291cmNlOiB0aGlzIH0pO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHJvbGUgPSBhdHRycy5yb2xlO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBnYW1lU2VydmVyR3JvdXBBcm4sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdlbmVyYXRlZCBBdXRvU2NhbGluZyBncm91cFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF1dG9TY2FsaW5nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElBTSByb2xlIHRoYXQgYWxsb3dzIEFtYXpvbiBHYW1lTGlmdCB0byBhY2Nlc3MgeW91ciBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcm9sZTogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWw6IGlhbS5JUHJpbmNpcGFsO1xuXG4gIC8qKlxuICAgKiBUaGUgVlBDIG5ldHdvcmsgdG8gcGxhY2UgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGluLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIFRoZSBnYW1lIHNlcnZlciBncm91cCdzIHN1Ym5ldHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdnBjU3VibmV0cz86IGVjMi5TdWJuZXRTZWxlY3Rpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBwaHlzaWNhbE5hbWU6IHByb3BzLmdhbWVTZXJ2ZXJHcm91cE5hbWUsXG4gICAgfSk7XG4gICAgLy8gRW5oYW5jZWQgQ0RLIEFuYWx5dGljcyBUZWxlbWV0cnlcbiAgICBhZGRDb25zdHJ1Y3RNZXRhZGF0YSh0aGlzLCBwcm9wcyk7XG5cbiAgICBpZiAoIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lLmxlbmd0aCA+IDEyOCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWVTZXJ2ZXJHcm91cCBuYW1lIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTI4IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmdhbWVTZXJ2ZXJHcm91cE5hbWUubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuXG4gICAgICBpZiAoIS9eW2EtekEtWjAtOS1cXC5dKyQvLnRlc3QocHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBHYW1lIHNlcnZlciBncm91cCBuYW1lICR7cHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZX0gY2FuIGNvbnRhaW4gb25seSBsZXR0ZXJzLCBudW1iZXJzLCBoeXBoZW5zLCBiYWNrIHNsYXNoIG9yIGRvdCB3aXRoIG5vIHNwYWNlcy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZwYyA9IHByb3BzLnZwYztcbiAgICB0aGlzLnZwY1N1Ym5ldHMgPSBwcm9wcy52cGNTdWJuZXRzID8/IHsgc3VibmV0VHlwZTogZWMyLlN1Ym5ldFR5cGUuUFVCTElDIH07XG4gICAgY29uc3QgeyBzdWJuZXRJZHMgfSA9IHByb3BzLnZwYy5zZWxlY3RTdWJuZXRzKHRoaXMudnBjU3VibmV0cyk7XG5cbiAgICBpZiAocHJvcHMubWluU2l6ZSAmJiBwcm9wcy5taW5TaXplIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwIGNhbm5vdCBiZSBsb3dlciB0aGFuIDAsIGdpdmVuICR7cHJvcHMubWluU2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWF4U2l6ZSAmJiBwcm9wcy5tYXhTaXplIDwgMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWF4aW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwIGNhbm5vdCBiZSBsb3dlciB0aGFuIDEsIGdpdmVuICR7cHJvcHMubWF4U2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAoc3VibmV0SWRzLmxlbmd0aCA+IDIwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAyMCBzdWJuZXRzIGFyZSBhbGxvd2VkIHBlciBnYW1lIHNlcnZlciBncm91cCwgZ2l2ZW4gJHtzdWJuZXRJZHMubGVuZ3RofWApO1xuICAgIH1cblxuICAgIC8vIEFkZCBhbGwgaW5zdGFuY2UgZGVmaW5pdGlvbnNcbiAgICBpZiAocHJvcHMuaW5zdGFuY2VEZWZpbml0aW9ucy5sZW5ndGggPiAyMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gMjAgaW5zdGFuY2UgZGVmaW5pdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGdhbWUgc2VydmVyIGdyb3VwLCBnaXZlbiAke3Byb3BzLmluc3RhbmNlRGVmaW5pdGlvbnMubGVuZ3RofWApO1xuICAgIH1cblxuICAgIHRoaXMucm9sZSA9IHByb3BzLnJvbGUgPz8gbmV3IGlhbS5Sb2xlKHRoaXMsICdTZXJ2aWNlUm9sZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5Db21wb3NpdGVQcmluY2lwYWwoXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZ2FtZWxpZnQuYW1hem9uYXdzLmNvbScpLFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2F1dG9zY2FsaW5nLmFtYXpvbmF3cy5jb20nKSksXG4gICAgICBtYW5hZ2VkUG9saWNpZXM6IFtcbiAgICAgICAgaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKCdHYW1lTGlmdEdhbWVTZXJ2ZXJHcm91cFBvbGljeScpLFxuICAgICAgXSxcbiAgICB9KTtcbiAgICB0aGlzLmdyYW50UHJpbmNpcGFsID0gdGhpcy5yb2xlO1xuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ2ZuR2FtZVNlcnZlckdyb3VwKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgYXV0b1NjYWxpbmdQb2xpY3k6IHRoaXMucGFyc2VBdXRvU2NhbGluZ1BvbGljeShwcm9wcyksXG4gICAgICBkZWxldGVPcHRpb246IHByb3BzLmRlbGV0ZU9wdGlvbixcbiAgICAgIGJhbGFuY2luZ1N0cmF0ZWd5OiBwcm9wcy5iYWxhbmNpbmdTdHJhdGVneSxcbiAgICAgIGdhbWVTZXJ2ZXJQcm90ZWN0aW9uUG9saWN5OiBwcm9wcy5wcm90ZWN0R2FtZVNlcnZlciA/ICdGVUxMX1BST1RFQ1RJT04nIDogJ05PX1BST1RFQ1RJT04nLFxuICAgICAgaW5zdGFuY2VEZWZpbml0aW9uczogdGhpcy5wYXJzZUluc3RhbmNlRGVmaW5pdGlvbnMocHJvcHMpLFxuICAgICAgbGF1bmNoVGVtcGxhdGU6IHRoaXMucGFyc2VMYXVuY2hUZW1wbGF0ZShwcm9wcyksXG4gICAgICBtaW5TaXplOiBwcm9wcy5taW5TaXplLFxuICAgICAgbWF4U2l6ZTogcHJvcHMubWF4U2l6ZSxcbiAgICAgIHJvbGVBcm46IHRoaXMucm9sZS5yb2xlQXJuLFxuICAgICAgdnBjU3VibmV0czogc3VibmV0SWRzLFxuICAgIH0pO1xuXG4gICAgdGhpcy5nYW1lU2VydmVyR3JvdXBOYW1lID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocmVzb3VyY2UucmVmKTtcbiAgICB0aGlzLmdhbWVTZXJ2ZXJHcm91cEFybiA9IHRoaXMuZ2V0UmVzb3VyY2VBcm5BdHRyaWJ1dGUocmVzb3VyY2UuYXR0ckdhbWVTZXJ2ZXJHcm91cEFybiwge1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZ2FtZXNlcnZlcmdyb3VwJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgICB0aGlzLmF1dG9TY2FsaW5nR3JvdXBBcm4gPSB0aGlzLmdldFJlc291cmNlQXJuQXR0cmlidXRlKHJlc291cmNlLmF0dHJBdXRvU2NhbGluZ0dyb3VwQXJuLCB7XG4gICAgICBzZXJ2aWNlOiAnYXV0b3NjYWxpbmcnLFxuICAgICAgcmVzb3VyY2U6ICdhdXRvU2NhbGluZ0dyb3VwJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuQ09MT05fUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxhdW5jaFRlbXBsYXRlKHByb3BzOiBHYW1lU2VydmVyR3JvdXBQcm9wcyk6IENmbkdhbWVTZXJ2ZXJHcm91cC5MYXVuY2hUZW1wbGF0ZVByb3BlcnR5IHtcbiAgICByZXR1cm4ge1xuICAgICAgbGF1bmNoVGVtcGxhdGVJZDogcHJvcHMubGF1bmNoVGVtcGxhdGUubGF1bmNoVGVtcGxhdGVJZCxcbiAgICAgIGxhdW5jaFRlbXBsYXRlTmFtZTogcHJvcHMubGF1bmNoVGVtcGxhdGUubGF1bmNoVGVtcGxhdGVOYW1lLFxuICAgICAgdmVyc2lvbjogcHJvcHMubGF1bmNoVGVtcGxhdGUudmVyc2lvbk51bWJlcixcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlQXV0b1NjYWxpbmdQb2xpY3kocHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkF1dG9TY2FsaW5nUG9saWN5UHJvcGVydHkgfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMuYXV0b1NjYWxpbmdQb2xpY3kpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGVzdGltYXRlZEluc3RhbmNlV2FybXVwOiBwcm9wcy5hdXRvU2NhbGluZ1BvbGljeS5lc3RpbWF0ZWRJbnN0YW5jZVdhcm11cD8udG9TZWNvbmRzKCksXG4gICAgICB0YXJnZXRUcmFja2luZ0NvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgdGFyZ2V0VmFsdWU6IHByb3BzLmF1dG9TY2FsaW5nUG9saWN5LnRhcmdldFRyYWNraW5nQ29uZmlndXJhdGlvbixcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUluc3RhbmNlRGVmaW5pdGlvbnMocHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkluc3RhbmNlRGVmaW5pdGlvblByb3BlcnR5W10ge1xuICAgIHJldHVybiBwcm9wcy5pbnN0YW5jZURlZmluaXRpb25zLm1hcChwYXJzZUluc3RhbmNlRGVmaW5pdGlvbik7XG5cbiAgICBmdW5jdGlvbiBwYXJzZUluc3RhbmNlRGVmaW5pdGlvbihpbnN0YW5jZURlZmluaXRpb246IEluc3RhbmNlRGVmaW5pdGlvbik6IENmbkdhbWVTZXJ2ZXJHcm91cC5JbnN0YW5jZURlZmluaXRpb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpbnN0YW5jZVR5cGU6IGluc3RhbmNlRGVmaW5pdGlvbi5pbnN0YW5jZVR5cGUudG9TdHJpbmcoKSxcbiAgICAgICAgd2VpZ2h0ZWRDYXBhY2l0eTogaW5zdGFuY2VEZWZpbml0aW9uLndlaWdodD8udG9TdHJpbmcoKSxcbiAgICAgIH07XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -241,6 +241,8 @@ export declare abstract class GameSessionQueueBase extends cdk.Resource implemen
241
241
  * @resource AWS::GameLift::GameSessionQueue
242
242
  */
243
243
  export declare class GameSessionQueue extends GameSessionQueueBase {
244
+ /** Uniquely identifies this class. */
245
+ static readonly PROPERTY_INJECTION_ID: string;
244
246
  /**
245
247
  * Import an existing gameSessionQueue from its name.
246
248
  */
@@ -14,6 +14,7 @@ const cloudwatch = require("aws-cdk-lib/aws-cloudwatch");
14
14
  const cdk = require("aws-cdk-lib/core");
15
15
  const aws_gamelift_1 = require("aws-cdk-lib/aws-gamelift");
16
16
  const metadata_resource_1 = require("aws-cdk-lib/core/lib/metadata-resource");
17
+ const prop_injectable_1 = require("aws-cdk-lib/core/lib/prop-injectable");
17
18
  /**
18
19
  * Priority to condider when placing new game sessions
19
20
  */
@@ -71,7 +72,7 @@ class GameSessionQueueBase extends cdk.Resource {
71
72
  }
72
73
  exports.GameSessionQueueBase = GameSessionQueueBase;
73
74
  _a = JSII_RTTI_SYMBOL_1;
74
- GameSessionQueueBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase", version: "2.195.0-alpha.0" };
75
+ GameSessionQueueBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase", version: "2.196.0-alpha.0" };
75
76
  /**
76
77
  * The GameSessionQueue resource creates a placement queue that processes requests for new game sessions.
77
78
  * A queue uses FleetIQ algorithms to determine the best placement locations and find an available game server, then prompts the game server to start a new game session.
@@ -80,7 +81,7 @@ GameSessionQueueBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueB
80
81
  *
81
82
  * @resource AWS::GameLift::GameSessionQueue
82
83
  */
83
- class GameSessionQueue extends GameSessionQueueBase {
84
+ let GameSessionQueue = class GameSessionQueue extends GameSessionQueueBase {
84
85
  /**
85
86
  * Import an existing gameSessionQueue from its name.
86
87
  */
@@ -271,11 +272,16 @@ class GameSessionQueue extends GameSessionQueueBase {
271
272
  };
272
273
  }
273
274
  }
274
- }
275
+ };
275
276
  exports.GameSessionQueue = GameSessionQueue;
276
277
  _b = JSII_RTTI_SYMBOL_1;
277
- GameSessionQueue[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueue", version: "2.195.0-alpha.0" };
278
+ GameSessionQueue[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueue", version: "2.196.0-alpha.0" };
279
+ /** Uniquely identifies this class. */
280
+ GameSessionQueue.PROPERTY_INJECTION_ID = '@aws-cdk.aws-gamelift-alpha.GameSessionQueue';
278
281
  __decorate([
279
282
  (0, metadata_resource_1.MethodMetadata)()
280
283
  ], GameSessionQueue.prototype, "addDestination", null);
281
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXNzaW9uLXF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZ2FtZS1zZXNzaW9uLXF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHlEQUF5RDtBQUV6RCx3Q0FBd0M7QUFFeEMsMkRBQStEO0FBQy9ELDhFQUE4RjtBQWU5Rjs7R0FFRztBQUNILElBQVksWUFvQlg7QUFwQkQsV0FBWSxZQUFZO0lBQ3RCOztPQUVHO0lBQ0gsbUNBQW1CLENBQUE7SUFFbkI7O09BRUc7SUFDSCw2QkFBYSxDQUFBO0lBRWI7O09BRUc7SUFDSCwyQ0FBMkIsQ0FBQTtJQUUzQjs7T0FFRztJQUNILHFDQUFxQixDQUFBO0FBQ3ZCLENBQUMsRUFwQlcsWUFBWSw0QkFBWixZQUFZLFFBb0J2QjtBQXlNRDs7R0FFRztBQUNILE1BQXNCLG9CQUFxQixTQUFRLEdBQUcsQ0FBQyxRQUFRO0lBV3RELE1BQU0sQ0FBQyxVQUFrQixFQUFFLEtBQWdDO1FBQ2hFLE9BQU8sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDO1lBQzNCLFNBQVMsRUFBRSxjQUFjO1lBQ3pCLFVBQVUsRUFBRSxVQUFVO1lBQ3RCLGFBQWEsRUFBRTtnQkFDYixvQkFBb0IsRUFBRSxJQUFJLENBQUMsb0JBQW9CO2FBQ2hEO1lBQ0QsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNuQjtJQUVELHFCQUFxQixDQUFDLEtBQWdDO1FBQ3BELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUM5QztJQUVELHdCQUF3QixDQUFDLEtBQWdDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUNqRDtJQUVELHNCQUFzQixDQUFDLEtBQWdDO1FBQ3JELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxL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QUM7S0FDRjtJQUVTLHdCQUF3QixDQUFDLEtBQTRCOzs7Ozs7Ozs7O1FBQzdELElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUM1QixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTztZQUNMLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxnQkFBZ0I7U0FDekMsQ0FBQztLQUNIO0lBRU8saUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFL0MsU0FBUyxnQkFBZ0IsQ0FBQyxXQUF5QztZQUNqRSxPQUFPO2dCQUNMLGNBQWMsRUFBRSxXQUFXLENBQUMseUJBQXlCO2FBQ3RELENBQUM7UUFDSixDQUFDO0tBQ0Y7O0FBOUtILDRDQStLQzs7O0FBN0RRO0lBRE4sSUFBQSxrQ0FBYyxHQUFFO3NEQUdoQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNsb3Vkd2F0Y2ggZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0ICogYXMgc25zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zbnMnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBDZm5HYW1lU2Vzc2lvblF1ZXVlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcbmltcG9ydCB7IGFkZENvbnN0cnVjdE1ldGFkYXRhLCBNZXRob2RNZXRhZGF0YSB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL21ldGFkYXRhLXJlc291cmNlJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgZ2FtZSBzZXNzaW9uIHF1ZXVlIGRlc3RpbmF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgQVJOKHMpIHRvIHB1dCBpbnRvIHRoZSBkZXN0aW5hdGlvbiBmaWVsZCBmb3IgYSBnYW1lIHNlc3Npb24gcXVldWUuXG4gICAqXG4gICAqIFRoaXMgcHJvcGVydHkgaXMgZm9yIGNkayBtb2R1bGVzIHRvIGNvbnN1bWUgb25seS4gWW91IHNob3VsZCBub3QgbmVlZCB0byB1c2UgdGhpcyBwcm9wZXJ0eS5cbiAgICogSW5zdGVhZCwgdXNlIGRlZGljYXRlZCBpZGVudGlmaWVyIG9uIGVhY2ggY29tcG9uZW50cy5cbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlQXJuRm9yRGVzdGluYXRpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcmlvcml0eSB0byBjb25kaWRlciB3aGVuIHBsYWNpbmcgbmV3IGdhbWUgc2Vzc2lvbnNcbiAqL1xuZXhwb3J0IGVudW0gUHJpb3JpdHlUeXBlIHtcbiAgLyoqXG4gICAqIEZsZWV0SVEgcHJpb3JpdGl6ZXMgbG9jYXRpb25zIHdoZXJlIHRoZSBhdmVyYWdlIHBsYXllciBsYXRlbmN5IChwcm92aWRlZCBpbiBlYWNoIGdhbWUgc2Vzc2lvbiByZXF1ZXN0KSBpcyBsb3dlc3QuXG4gICAqL1xuICBMQVRFTkNZID0gJ0xBVEVOQ1knLFxuXG4gIC8qKlxuICAgKiBGbGVldElRIHByaW9yaXRpemVzIGRlc3RpbmF0aW9ucyB3aXRoIHRoZSBsb3dlc3QgY3VycmVudCBob3N0aW5nIGNvc3RzLiBDb3N0IGlzIGV2YWx1YXRlZCBiYXNlZCBvbiB0aGUgbG9jYXRpb24sIGluc3RhbmNlIHR5cGUsIGFuZCBmbGVldCB0eXBlIChTcG90IG9yIE9uLURlbWFuZCkgZm9yIGVhY2ggZGVzdGluYXRpb24gaW4gdGhlIHF1ZXVlLlxuICAgKi9cbiAgQ09TVCA9ICdDT1NUJyxcblxuICAvKipcbiAgICogRmxlZXRJUSBwcmlvcml0aXplcyBiYXNlZCBvbiB0aGUgb3JkZXIgdGhhdCBkZXN0aW5hdGlvbnMgYXJlIGxpc3RlZCBpbiB0aGUgcXVldWUgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIERFU1RJTkFUSU9OID0gJ0RFU1RJTkFUSU9OJyxcblxuICAvKipcbiAgICogRmxlZXRJUSBwcmlvcml0aXplcyBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgb3JkZXIgb2YgbG9jYXRpb25zLCBhcyBkZWZpbmVkIGluIGBMb2NhdGlvbk9yZGVyYFxuICAgKi9cbiAgTE9DQVRJT04gPSAnTE9DQVRJT04nLFxufVxuXG4vKipcbiAqIEN1c3RvbSBwcmlvcml0aXphdGlvbiBzZXR0aW5ncyBmb3IgdXNlIGJ5IGEgZ2FtZSBzZXNzaW9uIHF1ZXVlIHdoZW4gcGxhY2luZyBuZXcgZ2FtZSBzZXNzaW9ucyB3aXRoIGF2YWlsYWJsZSBnYW1lIHNlcnZlcnMuXG4gKiBXaGVuIGRlZmluZWQsIHRoaXMgY29uZmlndXJhdGlvbiByZXBsYWNlcyB0aGUgZGVmYXVsdCBGbGVldElRIHByaW9yaXRpemF0aW9uIHByb2Nlc3MsIHdoaWNoIGlzIGFzIGZvbGxvd3M6XG4gKlxuICogLSBJZiBwbGF5ZXIgbGF0ZW5jeSBkYXRhIGlzIGluY2x1ZGVkIGluIGEgZ2FtZSBzZXNzaW9uIHJlcXVlc3QsIGRlc3RpbmF0aW9ucyBhbmQgbG9jYXRpb25zIGFyZSBwcmlvcml0aXplZCBmaXJzdCBiYXNlZCBvbiBsb3dlc3QgYXZlcmFnZSBsYXRlbmN5ICgxKSwgdGhlbiBvbiBsb3dlc3QgaG9zdGluZyBjb3N0ICgyKSwgdGhlbiBvbiBkZXN0aW5hdGlvbiBsaXN0IG9yZGVyICgzKSwgYW5kIGZpbmFsbHkgb24gbG9jYXRpb24gKGFscGhhYmV0aWNhbCkgKDQpLlxuICogVGhpcyBhcHByb2FjaCBlbnN1cmVzIHRoYXQgdGhlIHF1ZXVlJ3MgdG9wIHByaW9yaXR5IGlzIHRvIHBsYWNlIGdhbWUgc2Vzc2lvbnMgd2hlcmUgYXZlcmFnZSBwbGF5ZXIgbGF0ZW5jeSBpcyBsb3dlc3QsIGFuZC0taWYgbGF0ZW5jeSBpcyB0aGUgc2FtZS0td2hlcmUgdGhlIGhvc3RpbmcgY29zdCBpcyBsZXNzLCBldGMuXG4gKlxuICogLSBJZiBwbGF5ZXIgbGF0ZW5jeSBkYXRhIGlzIG5vdCBpbmNsdWRlZCwgZGVzdGluYXRpb25zIGFuZCBsb2NhdGlvbnMgYXJlIHByaW9yaXRpemVkIGZpcnN0IG9uIGRlc3RpbmF0aW9uIGxpc3Qgb3JkZXIgKDEpLCBhbmQgdGhlbiBvbiBsb2NhdGlvbiAoYWxwaGFiZXRpY2FsKSAoMikuXG4gKiBUaGlzIGFwcHJvYWNoIGVuc3VyZXMgdGhhdCB0aGUgcXVldWUncyB0b3AgcHJpb3JpdHkgaXMgdG8gcGxhY2UgZ2FtZSBzZXNzaW9ucyBvbiB0aGUgZmlyc3QgZGVzdGluYXRpb24gZmxlZXQgbGlzdGVkLiBJZiB0aGF0IGZsZWV0IGhhcyBtdWx0aXBsZSBsb2NhdGlvbnMsIHRoZSBnYW1lIHNlc3Npb24gaXMgcGxhY2VkIG9uIHRoZSBmaXJzdCBsb2NhdGlvbiAod2hlbiBsaXN0ZWQgYWxwaGFiZXRpY2FsbHkpLlxuICpcbiAqIENoYW5naW5nIHRoZSBwcmlvcml0eSBvcmRlciB3aWxsIGFmZmVjdCBob3cgZ2FtZSBzZXNzaW9ucyBhcmUgcGxhY2VkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFByaW9yaXR5Q29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgcHJpb3JpdGl6YXRpb24gb3JkZXIgdG8gdXNlIGZvciBmbGVldCBsb2NhdGlvbnMsIHdoZW4gdGhlIFByaW9yaXR5T3JkZXIgcHJvcGVydHkgaW5jbHVkZXMgTE9DQVRJT04uIExvY2F0aW9ucyBhcmUgaWRlbnRpZmllZCBieSBBV1MgUmVnaW9uIGNvZGVzIHN1Y2ggYXMgYHVzLXdlc3QtMi5cbiAgICpcbiAgICogRWFjaCBsb2NhdGlvbiBjYW4gb25seSBiZSBsaXN0ZWQgb25jZS5cbiAgICovXG4gIHJlYWRvbmx5IGxvY2F0aW9uT3JkZXI6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVjb21tZW5kZWQgc2VxdWVuY2UgdG8gdXNlIHdoZW4gcHJpb3JpdGl6aW5nIHdoZXJlIHRvIHBsYWNlIG5ldyBnYW1lIHNlc3Npb25zLlxuICAgKiBFYWNoIHR5cGUgY2FuIG9ubHkgYmUgbGlzdGVkIG9uY2UuXG4gICAqL1xuICByZWFkb25seSBwcmlvcml0eU9yZGVyOiBQcmlvcml0eVR5cGVbXTtcbn1cblxuLyoqXG4gKiBUaGUgcXVldWUgc2V0dGluZyB0aGF0IGRldGVybWluZXMgdGhlIGhpZ2hlc3QgbGF0ZW5jeSBhbGxvd2VkIGZvciBpbmRpdmlkdWFsIHBsYXllcnMgd2hlbiBwbGFjaW5nIGEgZ2FtZSBzZXNzaW9uLlxuICogV2hlbiBhIGxhdGVuY3kgcG9saWN5IGlzIGluIGZvcmNlLCBhIGdhbWUgc2Vzc2lvbiBjYW5ub3QgYmUgcGxhY2VkIHdpdGggYW55IGZsZWV0IGluIGEgUmVnaW9uIHdoZXJlIGEgcGxheWVyIHJlcG9ydHMgbGF0ZW5jeSBoaWdoZXIgdGhhbiB0aGUgY2FwLlxuICpcbiAqIExhdGVuY3kgcG9saWNpZXMgYXJlIG9ubHkgZW5mb3JjZWQgd2hlbiB0aGUgcGxhY2VtZW50IHJlcXVlc3QgY29udGFpbnMgcGxheWVyIGxhdGVuY3kgaW5mb3JtYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGxheWVyTGF0ZW5jeVBvbGljeSB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBsYXRlbmN5IHZhbHVlIHRoYXQgaXMgYWxsb3dlZCBmb3IgYW55IHBsYXllciwgaW4gbWlsbGlzZWNvbmRzLlxuICAgKlxuICAgKiBBbGwgcG9saWNpZXMgbXVzdCBoYXZlIGEgdmFsdWUgc2V0IGZvciB0aGlzIHByb3BlcnR5LlxuICAgKi9cbiAgcmVhZG9ubHkgbWF4aW11bUluZGl2aWR1YWxQbGF5ZXJMYXRlbmN5OiBjZGsuRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBsZW5ndGggb2YgdGltZSwgaW4gc2Vjb25kcywgdGhhdCB0aGUgcG9saWN5IGlzIGVuZm9yY2VkIHdoaWxlIHBsYWNpbmcgYSBuZXcgZ2FtZSBzZXNzaW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgcG9saWN5IGlzIGVuZm9yY2VkIHVudGlsIHRoZSBxdWV1ZSB0aW1lcyBvdXQuXG4gICAqL1xuICByZWFkb25seSBwb2xpY3lEdXJhdGlvbj86IGNkay5EdXJhdGlvbjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgR2FtZWxpZnQgR2FtZVNlc3Npb25RdWV1ZSBmb3IgYSBHYW1lbGlmdCBmbGVldCBkZXN0aW5hdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJR2FtZVNlc3Npb25RdWV1ZSBleHRlbmRzIGNkay5JUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIE5hbWUgb2YgdGhlIGdhbWVTZXNzaW9uUXVldWUuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWVTZXNzaW9uUXVldWUuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVBcm46IHN0cmluZztcblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBnaXZlbiBuYW1lZCBtZXRyaWMgZm9yIHRoaXMgZmxlZXQuXG4gICAqL1xuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBBdmVyYWdlIGFtb3VudCBvZiB0aW1lIHRoYXQgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyBpbiB0aGUgcXVldWUgd2l0aCBzdGF0dXMgUEVORElORyBoYXZlIGJlZW4gd2FpdGluZyB0byBiZSBmdWxmaWxsZWQuXG4gICAqL1xuICBtZXRyaWNBdmVyYWdlV2FpdFRpbWUocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogR2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyB0aGF0IHdlcmUgY2FuY2VsZWQgYmVmb3JlIHRpbWluZyBvdXQgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljUGxhY2VtZW50c0NhbmNlbGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgdGhhdCBmYWlsZWQgZm9yIGFueSByZWFzb24gc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljUGxhY2VtZW50c0ZhaWxlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBOZXcgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyB0aGF0IHdlcmUgYWRkZWQgdG8gdGhlIHF1ZXVlIHNpbmNlIHRoZSBsYXN0IHJlcG9ydC5cbiAgICovXG4gIG1ldHJpY1BsYWNlbWVudHNTdGFydGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgdGhhdCByZXN1bHRlZCBpbiBhIG5ldyBnYW1lIHNlc3Npb24gc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljUGxhY2VtZW50c1N1Y2NlZWRlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBHYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIHRoYXQgcmVhY2hlZCB0aGUgcXVldWUncyB0aW1lb3V0IGxpbWl0IHdpdGhvdXQgYmVpbmcgZnVsZmlsbGVkIHNpbmNlIHRoZSBsYXN0IHJlcG9ydC5cbiAgICovXG4gIG1ldHJpY1BsYWNlbWVudHNUaW1lZE91dChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xufVxuXG4vKipcbiAqIEEgZnVsbCBzcGVjaWZpY2F0aW9uIG9mIGFuIGdhbWVTZXNzaW9uUXVldWUgdGhhdCBjYW4gYmUgdXNlZCB0byBpbXBvcnQgaXQgZmx1ZW50bHkgaW50byB0aGUgQ0RLIGFwcGxpY2F0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdhbWVTZXNzaW9uUXVldWVBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWVTZXNzaW9uUXVldWVcbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBnYW1lU2Vzc2lvblF1ZXVlQXJuYCBhbmQgYGdhbWVTZXNzaW9uUXVldWVOYW1lYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGdhbWVTZXNzaW9uUXVldWVOYW1lYC5cbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZ2FtZVNlc3Npb25RdWV1ZU5hbWVgIGFuZCBgZ2FtZVNlc3Npb25RdWV1ZUFybmAgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlc3Npb25RdWV1ZUFybmAuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBGbGVldCBnYW1lU2Vzc2lvblF1ZXVlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FtZVNlc3Npb25RdWV1ZVByb3BzIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhpcyBnYW1lU2Vzc2lvblF1ZXVlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiAgSW5mb3JtYXRpb24gdG8gYmUgYWRkZWQgdG8gYWxsIGV2ZW50cyB0aGF0IGFyZSByZWxhdGVkIHRvIHRoaXMgZ2FtZSBzZXNzaW9uIHF1ZXVlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjdXN0b21lciBldmVudCBkYXRhXG4gICAqL1xuICByZWFkb25seSBjdXN0b21FdmVudERhdGE/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBsb2NhdGlvbnMgd2hlcmUgYSBxdWV1ZSBpcyBhbGxvd2VkIHRvIHBsYWNlIG5ldyBnYW1lIHNlc3Npb25zLlxuICAgKlxuICAgKiBMb2NhdGlvbnMgYXJlIHNwZWNpZmllZCBpbiB0aGUgZm9ybSBvZiBBV1MgUmVnaW9uIGNvZGVzLCBzdWNoIGFzIGB1cy13ZXN0LTJgLlxuICAgKlxuICAgKiBGb3IgcXVldWVzIHRoYXQgaGF2ZSBtdWx0aS1sb2NhdGlvbiBmbGVldHMsIHlvdSBjYW4gdXNlIGEgZmlsdGVyIGNvbmZpZ3VyYXRpb24gYWxsb3cgcGxhY2VtZW50IHdpdGggc29tZSwgYnV0IG5vdCBhbGwgb2YgdGhlc2UgbG9jYXRpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBnYW1lIHNlc3Npb25zIGNhbiBiZSBwbGFjZWQgaW4gYW55IHF1ZXVlIGxvY2F0aW9uXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkTG9jYXRpb25zPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEFuIFNOUyB0b3BpYyBpcyBzZXQgdXAgdG8gcmVjZWl2ZSBnYW1lIHNlc3Npb24gcGxhY2VtZW50IG5vdGlmaWNhdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIG5vdGlmaWNhdGlvblxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvcXVldWUtbm90aWZpY2F0aW9uLmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvblRhcmdldD86IHNucy5JVG9waWM7XG5cbiAgLyoqXG4gICAqIEEgc2V0IG9mIHBvbGljaWVzIHRoYXQgYWN0IGFzIGEgc2xpZGluZyBjYXAgb24gcGxheWVyIGxhdGVuY3kuXG4gICAqIEZsZWV0SVEgd29ya3MgdG8gZGVsaXZlciBsb3cgbGF0ZW5jeSBmb3IgbW9zdCBwbGF5ZXJzIGluIGEgZ2FtZSBzZXNzaW9uLlxuICAgKiBUaGVzZSBwb2xpY2llcyBlbnN1cmUgdGhhdCBubyBpbmRpdmlkdWFsIHBsYXllciBjYW4gYmUgcGxhY2VkIGludG8gYSBnYW1lIHdpdGggdW5yZWFzb25hYmx5IGhpZ2ggbGF0ZW5jeS5cbiAgICogVXNlIG11bHRpcGxlIHBvbGljaWVzIHRvIGdyYWR1YWxseSByZWxheCBsYXRlbmN5IHJlcXVpcmVtZW50cyBhIHN0ZXAgYXQgYSB0aW1lLlxuICAgKiBNdWx0aXBsZSBwb2xpY2llcyBhcmUgYXBwbGllZCBiYXNlZCBvbiB0aGVpciBtYXhpbXVtIGFsbG93ZWQgbGF0ZW5jeSwgc3RhcnRpbmcgd2l0aCB0aGUgbG93ZXN0IHZhbHVlLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBwbGF5ZXIgbGF0ZW5jeSBwb2xpY3lcbiAgICovXG4gIHJlYWRvbmx5IHBsYXllckxhdGVuY3lQb2xpY2llcz86IFBsYXllckxhdGVuY3lQb2xpY3lbXTtcblxuICAvKipcbiAgICogQ3VzdG9tIHNldHRpbmdzIHRvIHVzZSB3aGVuIHByaW9yaXRpemluZyBkZXN0aW5hdGlvbnMgYW5kIGxvY2F0aW9ucyBmb3IgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudHMuXG4gICAqIFRoaXMgY29uZmlndXJhdGlvbiByZXBsYWNlcyB0aGUgRmxlZXRJUSBkZWZhdWx0IHByaW9yaXRpemF0aW9uIHByb2Nlc3MuXG4gICAqXG4gICAqIFByaW9yaXR5IHR5cGVzIHRoYXQgYXJlIG5vdCBleHBsaWNpdGx5IG5hbWVkIHdpbGwgYmUgYXV0b21hdGljYWxseSBhcHBsaWVkIGF0IHRoZSBlbmQgb2YgdGhlIHByaW9yaXRpemF0aW9uIHByb2Nlc3MuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHByaW9yaXR5IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHByaW9yaXR5Q29uZmlndXJhdGlvbj86IFByaW9yaXR5Q29uZmlndXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIG1heGltdW0gdGltZSwgdGhhdCBhIG5ldyBnYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3QgcmVtYWlucyBpbiB0aGUgcXVldWUuXG4gICAqIFdoZW4gYSByZXF1ZXN0IGV4Y2VlZHMgdGhpcyB0aW1lLCB0aGUgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudCBjaGFuZ2VzIHRvIGEgYFRJTUVEX09VVGAgc3RhdHVzLlxuICAgKlxuICAgKiBAZGVmYXVsdCA1MCBzZWNvbmRzXG4gICAqL1xuICByZWFkb25seSB0aW1lb3V0PzogY2RrLkR1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgZmxlZXRzIGFuZC9vciBmbGVldCBhbGlhcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGZ1bGZpbGwgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyBpbiB0aGUgcXVldWUuXG4gICAqXG4gICAqIERlc3RpbmF0aW9ucyBhcmUgbGlzdGVkIGluIG9yZGVyIG9mIHBsYWNlbWVudCBwcmVmZXJlbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzdGluYXRpb25zOiBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uW107XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgbmV3IGFuZCBpbXBvcnRlZCBHYW1lTGlmdCBHYW1lU2Vzc2lvblF1ZXVlLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR2FtZVNlc3Npb25RdWV1ZUJhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJR2FtZVNlc3Npb25RdWV1ZSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZS5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZUFybjogc3RyaW5nO1xuXG4gIHB1YmxpYyBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIG5hbWVzcGFjZTogJ0FXUy9HYW1lTGlmdCcsXG4gICAgICBtZXRyaWNOYW1lOiBtZXRyaWNOYW1lLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBHYW1lU2Vzc2lvblF1ZXVlTmFtZTogdGhpcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSxcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KS5hdHRhY2hUbyh0aGlzKTtcbiAgfVxuXG4gIG1ldHJpY0F2ZXJhZ2VXYWl0VGltZShwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ0F2ZXJhZ2VXYWl0VGltZScsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1BsYWNlbWVudHNDYW5jZWxlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ1BsYWNlbWVudHNDYW5jZWxlZCcsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1BsYWNlbWVudHNGYWlsZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdQbGFjZW1lbnRzRmFpbGVkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljUGxhY2VtZW50c1N0YXJ0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdQbGFjZW1lbnRzU3RhcnRlZCcsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1BsYWNlbWVudHNTdWNjZWVkZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdQbGFjZW1lbnRzU3VjY2VlZGVkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljUGxhY2VtZW50c1RpbWVkT3V0KHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnUGxhY2VtZW50c1RpbWVkT3V0JywgcHJvcHMpO1xuICB9XG59XG5cbi8qKlxuICogVGhlIEdhbWVTZXNzaW9uUXVldWUgcmVzb3VyY2UgY3JlYXRlcyBhIHBsYWNlbWVudCBxdWV1ZSB0aGF0IHByb2Nlc3NlcyByZXF1ZXN0cyBmb3IgbmV3IGdhbWUgc2Vzc2lvbnMuXG4gKiBBIHF1ZXVlIHVzZXMgRmxlZXRJUSBhbGdvcml0aG1zIHRvIGRldGVybWluZSB0aGUgYmVzdCBwbGFjZW1lbnQgbG9jYXRpb25zIGFuZCBmaW5kIGFuIGF2YWlsYWJsZSBnYW1lIHNlcnZlciwgdGhlbiBwcm9tcHRzIHRoZSBnYW1lIHNlcnZlciB0byBzdGFydCBhIG5ldyBnYW1lIHNlc3Npb24uXG4gKiBRdWV1ZXMgY2FuIGhhdmUgZGVzdGluYXRpb25zIChHYW1lTGlmdCBmbGVldHMgb3IgZ2FtZVNlc3Npb25RdWV1ZWVzKSwgd2hpY2ggZGV0ZXJtaW5lIHdoZXJlIHRoZSBxdWV1ZSBjYW4gcGxhY2UgbmV3IGdhbWUgc2Vzc2lvbnMuXG4gKiBBIHF1ZXVlIGNhbiBoYXZlIGRlc3RpbmF0aW9ucyB3aXRoIHZhcmllZCBmbGVldCB0eXBlIChTcG90IGFuZCBPbi1EZW1hbmQpLCBpbnN0YW5jZSB0eXBlLCBhbmQgQVdTIFJlZ2lvbi5cbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6R2FtZVNlc3Npb25RdWV1ZVxuICovXG5leHBvcnQgY2xhc3MgR2FtZVNlc3Npb25RdWV1ZSBleHRlbmRzIEdhbWVTZXNzaW9uUXVldWVCYXNlIHtcbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBnYW1lU2Vzc2lvblF1ZXVlIGZyb20gaXRzIG5hbWUuXG4gICAqL1xuICBzdGF0aWMgZnJvbUdhbWVTZXNzaW9uUXVldWVOYW1lKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGdhbWVTZXNzaW9uUXVldWVOYW1lOiBzdHJpbmcpOiBJR2FtZVNlc3Npb25RdWV1ZSB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUdhbWVTZXNzaW9uUXVldWVBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBnYW1lU2Vzc2lvblF1ZXVlTmFtZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZ2FtZVNlc3Npb25RdWV1ZSBmcm9tIGl0cyBBUk4uXG4gICAqL1xuICBzdGF0aWMgZnJvbUdhbWVTZXNzaW9uUXVldWVBcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgZ2FtZVNlc3Npb25RdWV1ZUFybjogc3RyaW5nKTogSUdhbWVTZXNzaW9uUXVldWUge1xuICAgIHJldHVybiB0aGlzLmZyb21HYW1lU2Vzc2lvblF1ZXVlQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgZ2FtZVNlc3Npb25RdWV1ZUFybiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZ2FtZVNlc3Npb25RdWV1ZSBmcm9tIGl0cyBhdHRyaWJ1dGVzLlxuICAgKi9cbiAgc3RhdGljIGZyb21HYW1lU2Vzc2lvblF1ZXVlQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogR2FtZVNlc3Npb25RdWV1ZUF0dHJpYnV0ZXMpOiBJR2FtZVNlc3Npb25RdWV1ZSB7XG4gICAgaWYgKCFhdHRycy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSAmJiAhYXR0cnMuZ2FtZVNlc3Npb25RdWV1ZUFybikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFaXRoZXIgZ2FtZVNlc3Npb25RdWV1ZU5hbWUgb3IgZ2FtZVNlc3Npb25RdWV1ZUFybiBtdXN0IGJlIHByb3ZpZGVkIGluIEdhbWVTZXNzaW9uUXVldWVBdHRyaWJ1dGVzJyk7XG4gICAgfVxuICAgIGNvbnN0IGdhbWVTZXNzaW9uUXVldWVOYW1lID0gYXR0cnMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUgPz9cbiAgICAgIGNkay5TdGFjay5vZihzY29wZSkuc3BsaXRBcm4oYXR0cnMuZ2FtZVNlc3Npb25RdWV1ZUFybiEsIGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSkucmVzb3VyY2VOYW1lO1xuXG4gICAgaWYgKCFnYW1lU2Vzc2lvblF1ZXVlTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBnYW1lU2Vzc2lvblF1ZXVlIG5hbWUgZm91bmQgaW4gQVJOOiAnJHthdHRycy5nYW1lU2Vzc2lvblF1ZXVlQXJufSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBnYW1lU2Vzc2lvblF1ZXVlQXJuID0gYXR0cnMuZ2FtZVNlc3Npb25RdWV1ZUFybiA/PyBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdnYW1lc2Vzc2lvbnF1ZXVlJyxcbiAgICAgIHJlc291cmNlTmFtZTogYXR0cnMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBHYW1lU2Vzc2lvblF1ZXVlQmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZU5hbWUgPSBnYW1lU2Vzc2lvblF1ZXVlTmFtZSE7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZUFybiA9IGdhbWVTZXNzaW9uUXVldWVBcm47XG5cbiAgICAgIGNvbnN0cnVjdG9yKHM6IENvbnN0cnVjdCwgaTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHMsIGksIHtcbiAgICAgICAgICBlbnZpcm9ubWVudEZyb21Bcm46IGdhbWVTZXNzaW9uUXVldWVBcm4sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWVTZXNzaW9uUXVldWUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZUFybjogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdGluYXRpb25zOiBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogR2FtZVNlc3Npb25RdWV1ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBwaHlzaWNhbE5hbWU6IHByb3BzLmdhbWVTZXNzaW9uUXVldWVOYW1lLFxuICAgIH0pO1xuICAgIC8vIEVuaGFuY2VkIENESyBBbmFseXRpY3MgVGVsZW1ldHJ5XG4gICAgYWRkQ29uc3RydWN0TWV0YWRhdGEodGhpcywgcHJvcHMpO1xuXG4gICAgaWYgKCFjZGsuVG9rZW4uaXNVbnJlc29sdmVkKHByb3BzLmdhbWVTZXNzaW9uUXVldWVOYW1lKSkge1xuICAgICAgaWYgKHByb3BzLmdhbWVTZXNzaW9uUXVldWVOYW1lLmxlbmd0aCA+IDEyOCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWVTZXNzaW9uUXVldWUgbmFtZSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEyOCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG5cbiAgICAgIGlmICghL15bYS16QS1aMC05LV0rJC8udGVzdChwcm9wcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBHYW1lU2Vzc2lvblF1ZXVlIG5hbWUgJHtwcm9wcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZX0gY2FuIGNvbnRhaW4gb25seSBsZXR0ZXJzLCBudW1iZXJzLCBoeXBoZW5zIHdpdGggbm8gc3BhY2VzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwcm9wcy5jdXN0b21FdmVudERhdGEgJiYgcHJvcHMuY3VzdG9tRXZlbnREYXRhLmxlbmd0aCA+IDI1Nikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBHYW1lU2Vzc2lvblF1ZXVlIGN1c3RvbSBldmVudCBkYXRhIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmN1c3RvbUV2ZW50RGF0YS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmFsbG93ZWRMb2NhdGlvbnMgJiYgcHJvcHMuYWxsb3dlZExvY2F0aW9ucy5sZW5ndGggPiAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDEwMCBhbGxvd2VkIGxvY2F0aW9ucyBhcmUgYWxsb3dlZCBwZXIgZ2FtZSBzZXNzaW9uIHF1ZXVlLCBnaXZlbiAke3Byb3BzLmFsbG93ZWRMb2NhdGlvbnMubGVuZ3RofWApO1xuICAgIH1cblxuICAgIC8vIEFkZCBhbGwgZGVzdGluYXRpb25zXG4gICAgKHByb3BzLmRlc3RpbmF0aW9ucyB8fCBbXSkuZm9yRWFjaCh0aGlzLmFkZERlc3RpbmF0aW9uLmJpbmQodGhpcykpO1xuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ2ZuR2FtZVNlc3Npb25RdWV1ZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBuYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGN1c3RvbUV2ZW50RGF0YTogcHJvcHMuY3VzdG9tRXZlbnREYXRhLFxuICAgICAgZGVzdGluYXRpb25zOiBjZGsuTGF6eS5hbnkoeyBwcm9kdWNlOiAoKSA9PiB0aGlzLnBhcnNlRGVzdGluYXRpb25zKCkgfSksXG4gICAgICBmaWx0ZXJDb25maWd1cmF0aW9uOiB0aGlzLnBhcnNlRmlsdGVyQ29uZmlndXJhdGlvbihwcm9wcyksXG4gICAgICBub3RpZmljYXRpb25UYXJnZXQ6IHByb3BzLm5vdGlmaWNhdGlvblRhcmdldCAmJiBwcm9wcy5ub3RpZmljYXRpb25UYXJnZXQudG9waWNBcm4sXG4gICAgICBwbGF5ZXJMYXRlbmN5UG9saWNpZXM6IHRoaXMucGFyc2VQbGF5ZXJMYXRlbmN5UG9saWNpZXMocHJvcHMpLFxuICAgICAgcHJpb3JpdHlDb25maWd1cmF0aW9uOiB0aGlzLnBhcnNlUHJpb3JpdHlDb25maWd1cmF0aW9uKHByb3BzKSxcbiAgICAgIHRpbWVvdXRJblNlY29uZHM6IHByb3BzLnRpbWVvdXQgJiYgcHJvcHMudGltZW91dC50b1NlY29uZHMoKSxcbiAgICB9KTtcblxuICAgIHRoaXMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUgPSB0aGlzLmdldFJlc291cmNlTmFtZUF0dHJpYnV0ZShyZXNvdXJjZS5yZWYpO1xuICAgIHRoaXMuZ2FtZVNlc3Npb25RdWV1ZUFybiA9IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2dhbWVzZXNzaW9ucXVldWUnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLmdhbWVTZXNzaW9uUXVldWVOYW1lLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhIGRlc3RpbmF0aW9uIHRvIGZ1bGZpbGwgcmVxdWVzdHMgZm9yIG5ldyBnYW1lIHNlc3Npb25zXG4gICAqXG4gICAqIEBwYXJhbSBkZXN0aW5hdGlvbiBBIGRlc3RpbmF0aW9uIHRvIGFkZFxuICAgKi9cbiAgQE1ldGhvZE1ldGFkYXRhKClcbiAgcHVibGljIGFkZERlc3RpbmF0aW9uKGRlc3RpbmF0aW9uOiBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uKSB7XG4gICAgdGhpcy5kZXN0aW5hdGlvbnMucHVzaChkZXN0aW5hdGlvbik7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VQcmlvcml0eUNvbmZpZ3VyYXRpb24ocHJvcHM6IEdhbWVTZXNzaW9uUXVldWVQcm9wcyk6IENmbkdhbWVTZXNzaW9uUXVldWUuUHJpb3JpdHlDb25maWd1cmF0aW9uUHJvcGVydHkgfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24ubG9jYXRpb25PcmRlci5sZW5ndGggPiAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDEwMCBsb2NhdGlvbnMgYXJlIGFsbG93ZWQgcGVyIHByaW9yaXR5IGNvbmZpZ3VyYXRpb24sIGdpdmVuICR7cHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uLmxvY2F0aW9uT3JkZXIubGVuZ3RofWApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24ucHJpb3JpdHlPcmRlci5sZW5ndGggPiA0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiA0IHByaW9yaXRpZXMgYXJlIGFsbG93ZWQgcGVyIHByaW9yaXR5IGNvbmZpZ3VyYXRpb24sIGdpdmVuICR7cHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uLnByaW9yaXR5T3JkZXIubGVuZ3RofWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBwcmlvcml0eU9yZGVyOiBwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24ucHJpb3JpdHlPcmRlcixcbiAgICAgIGxvY2F0aW9uT3JkZXI6IHByb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbi5sb2NhdGlvbk9yZGVyLFxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VQbGF5ZXJMYXRlbmN5UG9saWNpZXMocHJvcHM6IEdhbWVTZXNzaW9uUXVldWVQcm9wcyk6IENmbkdhbWVTZXNzaW9uUXVldWUuUGxheWVyTGF0ZW5jeVBvbGljeVByb3BlcnR5W10gfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMucGxheWVyTGF0ZW5jeVBvbGljaWVzKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiBwcm9wcy5wbGF5ZXJMYXRlbmN5UG9saWNpZXMubWFwKHBhcnNlUGxheWVyTGF0ZW5jeVBvbGljeSk7XG5cbiAgICBmdW5jdGlvbiBwYXJzZVBsYXllckxhdGVuY3lQb2xpY3kocGxheWVyTGF0ZW5jeVBvbGljeTogUGxheWVyTGF0ZW5jeVBvbGljeSk6IENmbkdhbWVTZXNzaW9uUXVldWUuUGxheWVyTGF0ZW5jeVBvbGljeVByb3BlcnR5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIG1heGltdW1JbmRpdmlkdWFsUGxheWVyTGF0ZW5jeU1pbGxpc2Vjb25kczogcGxheWVyTGF0ZW5jeVBvbGljeS5tYXhpbXVtSW5kaXZpZHVhbFBsYXllckxhdGVuY3kudG9NaWxsaXNlY29uZHMoKSxcbiAgICAgICAgcG9saWN5RHVyYXRpb25TZWNvbmRzOiBwbGF5ZXJMYXRlbmN5UG9saWN5LnBvbGljeUR1cmF0aW9uICYmIHBsYXllckxhdGVuY3lQb2xpY3kucG9saWN5RHVyYXRpb24udG9TZWNvbmRzKCksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUZpbHRlckNvbmZpZ3VyYXRpb24ocHJvcHM6IEdhbWVTZXNzaW9uUXVldWVQcm9wcyk6IENmbkdhbWVTZXNzaW9uUXVldWUuRmlsdGVyQ29uZmlndXJhdGlvblByb3BlcnR5IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXByb3BzLmFsbG93ZWRMb2NhdGlvbnMpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGFsbG93ZWRMb2NhdGlvbnM6IHByb3BzLmFsbG93ZWRMb2NhdGlvbnMsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VEZXN0aW5hdGlvbnMoKTogQ2ZuR2FtZVNlc3Npb25RdWV1ZS5EZXN0aW5hdGlvblByb3BlcnR5W10gfCB1bmRlZmluZWQge1xuICAgIGlmICghdGhpcy5kZXN0aW5hdGlvbnMgfHwgdGhpcy5kZXN0aW5hdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRlc3RpbmF0aW9ucy5tYXAocGFyc2VEZXN0aW5hdGlvbik7XG5cbiAgICBmdW5jdGlvbiBwYXJzZURlc3RpbmF0aW9uKGRlc3RpbmF0aW9uOiBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uKTogQ2ZuR2FtZVNlc3Npb25RdWV1ZS5EZXN0aW5hdGlvblByb3BlcnR5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGRlc3RpbmF0aW9uQXJuOiBkZXN0aW5hdGlvbi5yZXNvdXJjZUFybkZvckRlc3RpbmF0aW9uLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
284
+ exports.GameSessionQueue = GameSessionQueue = __decorate([
285
+ prop_injectable_1.propertyInjectable
286
+ ], GameSessionQueue);
287
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXNzaW9uLXF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZ2FtZS1zZXNzaW9uLXF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHlEQUF5RDtBQUV6RCx3Q0FBd0M7QUFFeEMsMkRBQStEO0FBQy9ELDhFQUE4RjtBQUM5RiwwRUFBMEU7QUFlMUU7O0dBRUc7QUFDSCxJQUFZLFlBb0JYO0FBcEJELFdBQVksWUFBWTtJQUN0Qjs7T0FFRztJQUNILG1DQUFtQixDQUFBO0lBRW5COztPQUVHO0lBQ0gsNkJBQWEsQ0FBQTtJQUViOztPQUVHO0lBQ0gsMkNBQTJCLENBQUE7SUFFM0I7O09BRUc7SUFDSCxxQ0FBcUIsQ0FBQTtBQUN2QixDQUFDLEVBcEJXLFlBQVksNEJBQVosWUFBWSxRQW9CdkI7QUF5TUQ7O0dBRUc7QUFDSCxNQUFzQixvQkFBcUIsU0FBUSxHQUFHLENBQUMsUUFBUTtJQVd0RCxNQUFNLENBQUMsVUFBa0IsRUFBRSxLQUFnQztRQUNoRSxPQUFPLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUMzQixTQUFTLEVBQUUsY0FBYztZQUN6QixVQUFVLEVBQUUsVUFBVTtZQUN0QixhQUFhLEVBQUU7Z0JBQ2Isb0JBQW9CLEVBQUUsSUFBSSxDQUFDLG9CQUFvQjthQUNoRDtZQUNELEdBQUcsS0FBSztTQUNULENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7S0FDbkI7SUFFRCxxQkFBcUIsQ0FBQyxLQUFnQztRQUNwRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsS0FBSyxDQUFDLENBQUM7S0FDOUM7SUFFRCx3QkFBd0IsQ0FBQyxLQUFnQztRQUN2RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7S0FDakQ7SUFFRCxzQkFBc0IsQ0FBQyxLQUFnQztRQUNyRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMs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QUMsU0FBUyxFQUFFO2FBQzVHLENBQUM7UUFDSixDQUFDO0tBQ0Y7SUFFUyx3QkFBd0IsQ0FBQyxLQUE0Qjs7Ozs7Ozs7OztRQUM3RCxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDNUIsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUVELE9BQU87WUFDTCxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO1NBQ3pDLENBQUM7S0FDSDtJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6RCxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRS9DLFNBQVMsZ0JBQWdCLENBQUMsV0FBeUM7WUFDakUsT0FBTztnQkFDTCxjQUFjLEVBQUUsV0FBVyxDQUFDLHlCQUF5QjthQUN0RCxDQUFDO1FBQ0osQ0FBQztLQUNGOztBQWpMVSw0Q0FBZ0I7OztBQUMzQixzQ0FBc0M7QUFDZixzQ0FBcUIsR0FBVyw4Q0FBOEMsQUFBekQsQ0FBMEQ7QUFtSC9GO0lBRE4sSUFBQSxrQ0FBYyxHQUFFO3NEQUdoQjsyQkF2SFUsZ0JBQWdCO0lBRDVCLG9DQUFrQjtHQUNOLGdCQUFnQixDQWtMNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCAqIGFzIHNucyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc25zJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2ZuR2FtZVNlc3Npb25RdWV1ZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5pbXBvcnQgeyBhZGRDb25zdHJ1Y3RNZXRhZGF0YSwgTWV0aG9kTWV0YWRhdGEgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9tZXRhZGF0YS1yZXNvdXJjZSc7XG5pbXBvcnQgeyBwcm9wZXJ0eUluamVjdGFibGUgfSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlL2xpYi9wcm9wLWluamVjdGFibGUnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBnYW1lIHNlc3Npb24gcXVldWUgZGVzdGluYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4ocykgdG8gcHV0IGludG8gdGhlIGRlc3RpbmF0aW9uIGZpZWxkIGZvciBhIGdhbWUgc2Vzc2lvbiBxdWV1ZS5cbiAgICpcbiAgICogVGhpcyBwcm9wZXJ0eSBpcyBmb3IgY2RrIG1vZHVsZXMgdG8gY29uc3VtZSBvbmx5LiBZb3Ugc2hvdWxkIG5vdCBuZWVkIHRvIHVzZSB0aGlzIHByb3BlcnR5LlxuICAgKiBJbnN0ZWFkLCB1c2UgZGVkaWNhdGVkIGlkZW50aWZpZXIgb24gZWFjaCBjb21wb25lbnRzLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVzb3VyY2VBcm5Gb3JEZXN0aW5hdGlvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByaW9yaXR5IHRvIGNvbmRpZGVyIHdoZW4gcGxhY2luZyBuZXcgZ2FtZSBzZXNzaW9uc1xuICovXG5leHBvcnQgZW51bSBQcmlvcml0eVR5cGUge1xuICAvKipcbiAgICogRmxlZXRJUSBwcmlvcml0aXplcyBsb2NhdGlvbnMgd2hlcmUgdGhlIGF2ZXJhZ2UgcGxheWVyIGxhdGVuY3kgKHByb3ZpZGVkIGluIGVhY2ggZ2FtZSBzZXNzaW9uIHJlcXVlc3QpIGlzIGxvd2VzdC5cbiAgICovXG4gIExBVEVOQ1kgPSAnTEFURU5DWScsXG5cbiAgLyoqXG4gICAqIEZsZWV0SVEgcHJpb3JpdGl6ZXMgZGVzdGluYXRpb25zIHdpdGggdGhlIGxvd2VzdCBjdXJyZW50IGhvc3RpbmcgY29zdHMuIENvc3QgaXMgZXZhbHVhdGVkIGJhc2VkIG9uIHRoZSBsb2NhdGlvbiwgaW5zdGFuY2UgdHlwZSwgYW5kIGZsZWV0IHR5cGUgKFNwb3Qgb3IgT24tRGVtYW5kKSBmb3IgZWFjaCBkZXN0aW5hdGlvbiBpbiB0aGUgcXVldWUuXG4gICAqL1xuICBDT1NUID0gJ0NPU1QnLFxuXG4gIC8qKlxuICAgKiBGbGVldElRIHByaW9yaXRpemVzIGJhc2VkIG9uIHRoZSBvcmRlciB0aGF0IGRlc3RpbmF0aW9ucyBhcmUgbGlzdGVkIGluIHRoZSBxdWV1ZSBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgREVTVElOQVRJT04gPSAnREVTVElOQVRJT04nLFxuXG4gIC8qKlxuICAgKiBGbGVldElRIHByaW9yaXRpemVzIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBvcmRlciBvZiBsb2NhdGlvbnMsIGFzIGRlZmluZWQgaW4gYExvY2F0aW9uT3JkZXJgXG4gICAqL1xuICBMT0NBVElPTiA9ICdMT0NBVElPTicsXG59XG5cbi8qKlxuICogQ3VzdG9tIHByaW9yaXRpemF0aW9uIHNldHRpbmdzIGZvciB1c2UgYnkgYSBnYW1lIHNlc3Npb24gcXVldWUgd2hlbiBwbGFjaW5nIG5ldyBnYW1lIHNlc3Npb25zIHdpdGggYXZhaWxhYmxlIGdhbWUgc2VydmVycy5cbiAqIFdoZW4gZGVmaW5lZCwgdGhpcyBjb25maWd1cmF0aW9uIHJlcGxhY2VzIHRoZSBkZWZhdWx0IEZsZWV0SVEgcHJpb3JpdGl6YXRpb24gcHJvY2Vzcywgd2hpY2ggaXMgYXMgZm9sbG93czpcbiAqXG4gKiAtIElmIHBsYXllciBsYXRlbmN5IGRhdGEgaXMgaW5jbHVkZWQgaW4gYSBnYW1lIHNlc3Npb24gcmVxdWVzdCwgZGVzdGluYXRpb25zIGFuZCBsb2NhdGlvbnMgYXJlIHByaW9yaXRpemVkIGZpcnN0IGJhc2VkIG9uIGxvd2VzdCBhdmVyYWdlIGxhdGVuY3kgKDEpLCB0aGVuIG9uIGxvd2VzdCBob3N0aW5nIGNvc3QgKDIpLCB0aGVuIG9uIGRlc3RpbmF0aW9uIGxpc3Qgb3JkZXIgKDMpLCBhbmQgZmluYWxseSBvbiBsb2NhdGlvbiAoYWxwaGFiZXRpY2FsKSAoNCkuXG4gKiBUaGlzIGFwcHJvYWNoIGVuc3VyZXMgdGhhdCB0aGUgcXVldWUncyB0b3AgcHJpb3JpdHkgaXMgdG8gcGxhY2UgZ2FtZSBzZXNzaW9ucyB3aGVyZSBhdmVyYWdlIHBsYXllciBsYXRlbmN5IGlzIGxvd2VzdCwgYW5kLS1pZiBsYXRlbmN5IGlzIHRoZSBzYW1lLS13aGVyZSB0aGUgaG9zdGluZyBjb3N0IGlzIGxlc3MsIGV0Yy5cbiAqXG4gKiAtIElmIHBsYXllciBsYXRlbmN5IGRhdGEgaXMgbm90IGluY2x1ZGVkLCBkZXN0aW5hdGlvbnMgYW5kIGxvY2F0aW9ucyBhcmUgcHJpb3JpdGl6ZWQgZmlyc3Qgb24gZGVzdGluYXRpb24gbGlzdCBvcmRlciAoMSksIGFuZCB0aGVuIG9uIGxvY2F0aW9uIChhbHBoYWJldGljYWwpICgyKS5cbiAqIFRoaXMgYXBwcm9hY2ggZW5zdXJlcyB0aGF0IHRoZSBxdWV1ZSdzIHRvcCBwcmlvcml0eSBpcyB0byBwbGFjZSBnYW1lIHNlc3Npb25zIG9uIHRoZSBmaXJzdCBkZXN0aW5hdGlvbiBmbGVldCBsaXN0ZWQuIElmIHRoYXQgZmxlZXQgaGFzIG11bHRpcGxlIGxvY2F0aW9ucywgdGhlIGdhbWUgc2Vzc2lvbiBpcyBwbGFjZWQgb24gdGhlIGZpcnN0IGxvY2F0aW9uICh3aGVuIGxpc3RlZCBhbHBoYWJldGljYWxseSkuXG4gKlxuICogQ2hhbmdpbmcgdGhlIHByaW9yaXR5IG9yZGVyIHdpbGwgYWZmZWN0IGhvdyBnYW1lIHNlc3Npb25zIGFyZSBwbGFjZWQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJpb3JpdHlDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBwcmlvcml0aXphdGlvbiBvcmRlciB0byB1c2UgZm9yIGZsZWV0IGxvY2F0aW9ucywgd2hlbiB0aGUgUHJpb3JpdHlPcmRlciBwcm9wZXJ0eSBpbmNsdWRlcyBMT0NBVElPTi4gTG9jYXRpb25zIGFyZSBpZGVudGlmaWVkIGJ5IEFXUyBSZWdpb24gY29kZXMgc3VjaCBhcyBgdXMtd2VzdC0yLlxuICAgKlxuICAgKiBFYWNoIGxvY2F0aW9uIGNhbiBvbmx5IGJlIGxpc3RlZCBvbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb25PcmRlcjogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFRoZSByZWNvbW1lbmRlZCBzZXF1ZW5jZSB0byB1c2Ugd2hlbiBwcmlvcml0aXppbmcgd2hlcmUgdG8gcGxhY2UgbmV3IGdhbWUgc2Vzc2lvbnMuXG4gICAqIEVhY2ggdHlwZSBjYW4gb25seSBiZSBsaXN0ZWQgb25jZS5cbiAgICovXG4gIHJlYWRvbmx5IHByaW9yaXR5T3JkZXI6IFByaW9yaXR5VHlwZVtdO1xufVxuXG4vKipcbiAqIFRoZSBxdWV1ZSBzZXR0aW5nIHRoYXQgZGV0ZXJtaW5lcyB0aGUgaGlnaGVzdCBsYXRlbmN5IGFsbG93ZWQgZm9yIGluZGl2aWR1YWwgcGxheWVycyB3aGVuIHBsYWNpbmcgYSBnYW1lIHNlc3Npb24uXG4gKiBXaGVuIGEgbGF0ZW5jeSBwb2xpY3kgaXMgaW4gZm9yY2UsIGEgZ2FtZSBzZXNzaW9uIGNhbm5vdCBiZSBwbGFjZWQgd2l0aCBhbnkgZmxlZXQgaW4gYSBSZWdpb24gd2hlcmUgYSBwbGF5ZXIgcmVwb3J0cyBsYXRlbmN5IGhpZ2hlciB0aGFuIHRoZSBjYXAuXG4gKlxuICogTGF0ZW5jeSBwb2xpY2llcyBhcmUgb25seSBlbmZvcmNlZCB3aGVuIHRoZSBwbGFjZW1lbnQgcmVxdWVzdCBjb250YWlucyBwbGF5ZXIgbGF0ZW5jeSBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQbGF5ZXJMYXRlbmN5UG9saWN5IHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIGxhdGVuY3kgdmFsdWUgdGhhdCBpcyBhbGxvd2VkIGZvciBhbnkgcGxheWVyLCBpbiBtaWxsaXNlY29uZHMuXG4gICAqXG4gICAqIEFsbCBwb2xpY2llcyBtdXN0IGhhdmUgYSB2YWx1ZSBzZXQgZm9yIHRoaXMgcHJvcGVydHkuXG4gICAqL1xuICByZWFkb25seSBtYXhpbXVtSW5kaXZpZHVhbFBsYXllckxhdGVuY3k6IGNkay5EdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIGxlbmd0aCBvZiB0aW1lLCBpbiBzZWNvbmRzLCB0aGF0IHRoZSBwb2xpY3kgaXMgZW5mb3JjZWQgd2hpbGUgcGxhY2luZyBhIG5ldyBnYW1lIHNlc3Npb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBwb2xpY3kgaXMgZW5mb3JjZWQgdW50aWwgdGhlIHF1ZXVlIHRpbWVzIG91dC5cbiAgICovXG4gIHJlYWRvbmx5IHBvbGljeUR1cmF0aW9uPzogY2RrLkR1cmF0aW9uO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBHYW1lbGlmdCBHYW1lU2Vzc2lvblF1ZXVlIGZvciBhIEdhbWVsaWZ0IGZsZWV0IGRlc3RpbmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElHYW1lU2Vzc2lvblF1ZXVlIGV4dGVuZHMgY2RrLklSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgTmFtZSBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZS5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZS5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZUFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGdpdmVuIG5hbWVkIG1ldHJpYyBmb3IgdGhpcyBmbGVldC5cbiAgICovXG4gIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEF2ZXJhZ2UgYW1vdW50IG9mIHRpbWUgdGhhdCBnYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIGluIHRoZSBxdWV1ZSB3aXRoIHN0YXR1cyBQRU5ESU5HIGhhdmUgYmVlbiB3YWl0aW5nIHRvIGJlIGZ1bGZpbGxlZC5cbiAgICovXG4gIG1ldHJpY0F2ZXJhZ2VXYWl0VGltZShwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBHYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIHRoYXQgd2VyZSBjYW5jZWxlZCBiZWZvcmUgdGltaW5nIG91dCBzaW5jZSB0aGUgbGFzdCByZXBvcnQuXG4gICAqL1xuICBtZXRyaWNQbGFjZW1lbnRzQ2FuY2VsZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogR2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyB0aGF0IGZhaWxlZCBmb3IgYW55IHJlYXNvbiBzaW5jZSB0aGUgbGFzdCByZXBvcnQuXG4gICAqL1xuICBtZXRyaWNQbGFjZW1lbnRzRmFpbGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIE5ldyBnYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIHRoYXQgd2VyZSBhZGRlZCB0byB0aGUgcXVldWUgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljUGxhY2VtZW50c1N0YXJ0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogR2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyB0aGF0IHJlc3VsdGVkIGluIGEgbmV3IGdhbWUgc2Vzc2lvbiBzaW5jZSB0aGUgbGFzdCByZXBvcnQuXG4gICAqL1xuICBtZXRyaWNQbGFjZW1lbnRzU3VjY2VlZGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgdGhhdCByZWFjaGVkIHRoZSBxdWV1ZSdzIHRpbWVvdXQgbGltaXQgd2l0aG91dCBiZWluZyBmdWxmaWxsZWQgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljUGxhY2VtZW50c1RpbWVkT3V0KHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG59XG5cbi8qKlxuICogQSBmdWxsIHNwZWNpZmljYXRpb24gb2YgYW4gZ2FtZVNlc3Npb25RdWV1ZSB0aGF0IGNhbiBiZSB1c2VkIHRvIGltcG9ydCBpdCBmbHVlbnRseSBpbnRvIHRoZSBDREsgYXBwbGljYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FtZVNlc3Npb25RdWV1ZUF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZVxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGdhbWVTZXNzaW9uUXVldWVBcm5gIGFuZCBgZ2FtZVNlc3Npb25RdWV1ZU5hbWVgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlc3Npb25RdWV1ZU5hbWVgLlxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZUFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWVTZXNzaW9uUXVldWVcbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBnYW1lU2Vzc2lvblF1ZXVlTmFtZWAgYW5kIGBnYW1lU2Vzc2lvblF1ZXVlQXJuYCAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgZGVyaXZlZCBmcm9tIGBnYW1lU2Vzc2lvblF1ZXVlQXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVOYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IEZsZWV0IGdhbWVTZXNzaW9uUXVldWVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHYW1lU2Vzc2lvblF1ZXVlUHJvcHMge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGlzIGdhbWVTZXNzaW9uUXVldWVcbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqICBJbmZvcm1hdGlvbiB0byBiZSBhZGRlZCB0byBhbGwgZXZlbnRzIHRoYXQgYXJlIHJlbGF0ZWQgdG8gdGhpcyBnYW1lIHNlc3Npb24gcXVldWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGN1c3RvbWVyIGV2ZW50IGRhdGFcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbUV2ZW50RGF0YT86IHN0cmluZztcblxuICAvKipcbiAgICogQSBsaXN0IG9mIGxvY2F0aW9ucyB3aGVyZSBhIHF1ZXVlIGlzIGFsbG93ZWQgdG8gcGxhY2UgbmV3IGdhbWUgc2Vzc2lvbnMuXG4gICAqXG4gICAqIExvY2F0aW9ucyBhcmUgc3BlY2lmaWVkIGluIHRoZSBmb3JtIG9mIEFXUyBSZWdpb24gY29kZXMsIHN1Y2ggYXMgYHVzLXdlc3QtMmAuXG4gICAqXG4gICAqIEZvciBxdWV1ZXMgdGhhdCBoYXZlIG11bHRpLWxvY2F0aW9uIGZsZWV0cywgeW91IGNhbiB1c2UgYSBmaWx0ZXIgY29uZmlndXJhdGlvbiBhbGxvdyBwbGFjZW1lbnQgd2l0aCBzb21lLCBidXQgbm90IGFsbCBvZiB0aGVzZSBsb2NhdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGdhbWUgc2Vzc2lvbnMgY2FuIGJlIHBsYWNlZCBpbiBhbnkgcXVldWUgbG9jYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGFsbG93ZWRMb2NhdGlvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQW4gU05TIHRvcGljIGlzIHNldCB1cCB0byByZWNlaXZlIGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgbm90aWZpY2F0aW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gbm90aWZpY2F0aW9uXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9xdWV1ZS1ub3RpZmljYXRpb24uaHRtbFxuICAgKi9cbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9uVGFyZ2V0Pzogc25zLklUb3BpYztcblxuICAvKipcbiAgICogQSBzZXQgb2YgcG9saWNpZXMgdGhhdCBhY3QgYXMgYSBzbGlkaW5nIGNhcCBvbiBwbGF5ZXIgbGF0ZW5jeS5cbiAgICogRmxlZXRJUSB3b3JrcyB0byBkZWxpdmVyIGxvdyBsYXRlbmN5IGZvciBtb3N0IHBsYXllcnMgaW4gYSBnYW1lIHNlc3Npb24uXG4gICAqIFRoZXNlIHBvbGljaWVzIGVuc3VyZSB0aGF0IG5vIGluZGl2aWR1YWwgcGxheWVyIGNhbiBiZSBwbGFjZWQgaW50byBhIGdhbWUgd2l0aCB1bnJlYXNvbmFibHkgaGlnaCBsYXRlbmN5LlxuICAgKiBVc2UgbXVsdGlwbGUgcG9saWNpZXMgdG8gZ3JhZHVhbGx5IHJlbGF4IGxhdGVuY3kgcmVxdWlyZW1lbnRzIGEgc3RlcCBhdCBhIHRpbWUuXG4gICAqIE11bHRpcGxlIHBvbGljaWVzIGFyZSBhcHBsaWVkIGJhc2VkIG9uIHRoZWlyIG1heGltdW0gYWxsb3dlZCBsYXRlbmN5LCBzdGFydGluZyB3aXRoIHRoZSBsb3dlc3QgdmFsdWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHBsYXllciBsYXRlbmN5IHBvbGljeVxuICAgKi9cbiAgcmVhZG9ubHkgcGxheWVyTGF0ZW5jeVBvbGljaWVzPzogUGxheWVyTGF0ZW5jeVBvbGljeVtdO1xuXG4gIC8qKlxuICAgKiBDdXN0b20gc2V0dGluZ3MgdG8gdXNlIHdoZW4gcHJpb3JpdGl6aW5nIGRlc3RpbmF0aW9ucyBhbmQgbG9jYXRpb25zIGZvciBnYW1lIHNlc3Npb24gcGxhY2VtZW50cy5cbiAgICogVGhpcyBjb25maWd1cmF0aW9uIHJlcGxhY2VzIHRoZSBGbGVldElRIGRlZmF1bHQgcHJpb3JpdGl6YXRpb24gcHJvY2Vzcy5cbiAgICpcbiAgICogUHJpb3JpdHkgdHlwZXMgdGhhdCBhcmUgbm90IGV4cGxpY2l0bHkgbmFtZWQgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IGFwcGxpZWQgYXQgdGhlIGVuZCBvZiB0aGUgcHJpb3JpdGl6YXRpb24gcHJvY2Vzcy5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gcHJpb3JpdHkgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgcHJpb3JpdHlDb25maWd1cmF0aW9uPzogUHJpb3JpdHlDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSB0aW1lLCB0aGF0IGEgbmV3IGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdCByZW1haW5zIGluIHRoZSBxdWV1ZS5cbiAgICogV2hlbiBhIHJlcXVlc3QgZXhjZWVkcyB0aGlzIHRpbWUsIHRoZSBnYW1lIHNlc3Npb24gcGxhY2VtZW50IGNoYW5nZXMgdG8gYSBgVElNRURfT1VUYCBzdGF0dXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IDUwIHNlY29uZHNcbiAgICovXG4gIHJlYWRvbmx5IHRpbWVvdXQ/OiBjZGsuRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBmbGVldHMgYW5kL29yIGZsZWV0IGFsaWFzIHRoYXQgY2FuIGJlIHVzZWQgdG8gZnVsZmlsbCBnYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIGluIHRoZSBxdWV1ZS5cbiAgICpcbiAgICogRGVzdGluYXRpb25zIGFyZSBsaXN0ZWQgaW4gb3JkZXIgb2YgcGxhY2VtZW50IHByZWZlcmVuY2UuXG4gICAqL1xuICByZWFkb25seSBkZXN0aW5hdGlvbnM6IElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb25bXTtcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBuZXcgYW5kIGltcG9ydGVkIEdhbWVMaWZ0IEdhbWVTZXNzaW9uUXVldWUuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHYW1lU2Vzc2lvblF1ZXVlQmFzZSBleHRlbmRzIGNkay5SZXNvdXJjZSBpbXBsZW1lbnRzIElHYW1lU2Vzc2lvblF1ZXVlIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWVTZXNzaW9uUXVldWVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlQXJuOiBzdHJpbmc7XG5cbiAgcHVibGljIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiBuZXcgY2xvdWR3YXRjaC5NZXRyaWMoe1xuICAgICAgbmFtZXNwYWNlOiAnQVdTL0dhbWVMaWZ0JyxcbiAgICAgIG1ldHJpY05hbWU6IG1ldHJpY05hbWUsXG4gICAgICBkaW1lbnNpb25zTWFwOiB7XG4gICAgICAgIEdhbWVTZXNzaW9uUXVldWVOYW1lOiB0aGlzLmdhbWVTZXNzaW9uUXVldWVOYW1lLFxuICAgICAgfSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pLmF0dGFjaFRvKHRoaXMpO1xuICB9XG5cbiAgbWV0cmljQXZlcmFnZVdhaXRUaW1lKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnQXZlcmFnZVdhaXRUaW1lJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljUGxhY2VtZW50c0NhbmNlbGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnUGxhY2VtZW50c0NhbmNlbGVkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljUGxhY2VtZW50c0ZhaWxlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ1BsYWNlbWVudHNGYWlsZWQnLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNQbGFjZW1lbnRzU3RhcnRlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ1BsYWNlbWVudHNTdGFydGVkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljUGxhY2VtZW50c1N1Y2NlZWRlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ1BsYWNlbWVudHNTdWNjZWVkZWQnLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNQbGFjZW1lbnRzVGltZWRPdXQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdQbGFjZW1lbnRzVGltZWRPdXQnLCBwcm9wcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgR2FtZVNlc3Npb25RdWV1ZSByZXNvdXJjZSBjcmVhdGVzIGEgcGxhY2VtZW50IHF1ZXVlIHRoYXQgcHJvY2Vzc2VzIHJlcXVlc3RzIGZvciBuZXcgZ2FtZSBzZXNzaW9ucy5cbiAqIEEgcXVldWUgdXNlcyBGbGVldElRIGFsZ29yaXRobXMgdG8gZGV0ZXJtaW5lIHRoZSBiZXN0IHBsYWNlbWVudCBsb2NhdGlvbnMgYW5kIGZpbmQgYW4gYXZhaWxhYmxlIGdhbWUgc2VydmVyLCB0aGVuIHByb21wdHMgdGhlIGdhbWUgc2VydmVyIHRvIHN0YXJ0IGEgbmV3IGdhbWUgc2Vzc2lvbi5cbiAqIFF1ZXVlcyBjYW4gaGF2ZSBkZXN0aW5hdGlvbnMgKEdhbWVMaWZ0IGZsZWV0cyBvciBnYW1lU2Vzc2lvblF1ZXVlZXMpLCB3aGljaCBkZXRlcm1pbmUgd2hlcmUgdGhlIHF1ZXVlIGNhbiBwbGFjZSBuZXcgZ2FtZSBzZXNzaW9ucy5cbiAqIEEgcXVldWUgY2FuIGhhdmUgZGVzdGluYXRpb25zIHdpdGggdmFyaWVkIGZsZWV0IHR5cGUgKFNwb3QgYW5kIE9uLURlbWFuZCksIGluc3RhbmNlIHR5cGUsIGFuZCBBV1MgUmVnaW9uLlxuICpcbiAqIEByZXNvdXJjZSBBV1M6OkdhbWVMaWZ0OjpHYW1lU2Vzc2lvblF1ZXVlXG4gKi9cbkBwcm9wZXJ0eUluamVjdGFibGVcbmV4cG9ydCBjbGFzcyBHYW1lU2Vzc2lvblF1ZXVlIGV4dGVuZHMgR2FtZVNlc3Npb25RdWV1ZUJhc2Uge1xuICAvKiogVW5pcXVlbHkgaWRlbnRpZmllcyB0aGlzIGNsYXNzLiAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBST1BFUlRZX0lOSkVDVElPTl9JRDogc3RyaW5nID0gJ0Bhd3MtY2RrLmF3cy1nYW1lbGlmdC1hbHBoYS5HYW1lU2Vzc2lvblF1ZXVlJztcblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGdhbWVTZXNzaW9uUXVldWUgZnJvbSBpdHMgbmFtZS5cbiAgICovXG4gIHN0YXRpYyBmcm9tR2FtZVNlc3Npb25RdWV1ZU5hbWUoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgZ2FtZVNlc3Npb25RdWV1ZU5hbWU6IHN0cmluZyk6IElHYW1lU2Vzc2lvblF1ZXVlIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tR2FtZVNlc3Npb25RdWV1ZUF0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGdhbWVTZXNzaW9uUXVldWVOYW1lIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBnYW1lU2Vzc2lvblF1ZXVlIGZyb20gaXRzIEFSTi5cbiAgICovXG4gIHN0YXRpYyBmcm9tR2FtZVNlc3Npb25RdWV1ZUFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBnYW1lU2Vzc2lvblF1ZXVlQXJuOiBzdHJpbmcpOiBJR2FtZVNlc3Npb25RdWV1ZSB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUdhbWVTZXNzaW9uUXVldWVBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBnYW1lU2Vzc2lvblF1ZXVlQXJuIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBnYW1lU2Vzc2lvblF1ZXVlIGZyb20gaXRzIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBzdGF0aWMgZnJvbUdhbWVTZXNzaW9uUXVldWVBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBHYW1lU2Vzc2lvblF1ZXVlQXR0cmlidXRlcyk6IElHYW1lU2Vzc2lvblF1ZXVlIHtcbiAgICBpZiAoIWF0dHJzLmdhbWVTZXNzaW9uUXVldWVOYW1lICYmICFhdHRycy5nYW1lU2Vzc2lvblF1ZXVlQXJuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBnYW1lU2Vzc2lvblF1ZXVlTmFtZSBvciBnYW1lU2Vzc2lvblF1ZXVlQXJuIG11c3QgYmUgcHJvdmlkZWQgaW4gR2FtZVNlc3Npb25RdWV1ZUF0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgZ2FtZVNlc3Npb25RdWV1ZU5hbWUgPSBhdHRycy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSA/P1xuICAgICAgY2RrLlN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybihhdHRycy5nYW1lU2Vzc2lvblF1ZXVlQXJuISwgY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG5cbiAgICBpZiAoIWdhbWVTZXNzaW9uUXVldWVOYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGdhbWVTZXNzaW9uUXVldWUgbmFtZSBmb3VuZCBpbiBBUk46ICcke2F0dHJzLmdhbWVTZXNzaW9uUXVldWVBcm59J2ApO1xuICAgIH1cblxuICAgIGNvbnN0IGdhbWVTZXNzaW9uUXVldWVBcm4gPSBhdHRycy5nYW1lU2Vzc2lvblF1ZXVlQXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2dhbWVzZXNzaW9ucXVldWUnLFxuICAgICAgcmVzb3VyY2VOYW1lOiBhdHRycy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEdhbWVTZXNzaW9uUXVldWVCYXNlIHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlTmFtZSA9IGdhbWVTZXNzaW9uUXVldWVOYW1lITtcbiAgICAgIHB1YmxpYyByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlQXJuID0gZ2FtZVNlc3Npb25RdWV1ZUFybjtcblxuICAgICAgY29uc3RydWN0b3IoczogQ29uc3RydWN0LCBpOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIocywgaSwge1xuICAgICAgICAgIGVudmlyb25tZW50RnJvbUFybjogZ2FtZVNlc3Npb25RdWV1ZUFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGdhbWVTZXNzaW9uUXVldWUuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlQXJuOiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0aW5hdGlvbnM6IElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb25bXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBHYW1lU2Vzc2lvblF1ZXVlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUsXG4gICAgfSk7XG4gICAgLy8gRW5oYW5jZWQgQ0RLIEFuYWx5dGljcyBUZWxlbWV0cnlcbiAgICBhZGRDb25zdHJ1Y3RNZXRhZGF0YSh0aGlzLCBwcm9wcyk7XG5cbiAgICBpZiAoIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUpKSB7XG4gICAgICBpZiAocHJvcHMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUubGVuZ3RoID4gMTI4KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgR2FtZVNlc3Npb25RdWV1ZSBuYW1lIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTI4IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmdhbWVTZXNzaW9uUXVldWVOYW1lLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCEvXlthLXpBLVowLTktXSskLy50ZXN0KHByb3BzLmdhbWVTZXNzaW9uUXVldWVOYW1lKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWVTZXNzaW9uUXVldWUgbmFtZSAke3Byb3BzLmdhbWVTZXNzaW9uUXVldWVOYW1lfSBjYW4gY29udGFpbiBvbmx5IGxldHRlcnMsIG51bWJlcnMsIGh5cGhlbnMgd2l0aCBubyBzcGFjZXMuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmN1c3RvbUV2ZW50RGF0YSAmJiBwcm9wcy5jdXN0b21FdmVudERhdGEubGVuZ3RoID4gMjU2KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWVTZXNzaW9uUXVldWUgY3VzdG9tIGV2ZW50IGRhdGEgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAyNTYgY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuY3VzdG9tRXZlbnREYXRhLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuYWxsb3dlZExvY2F0aW9ucyAmJiBwcm9wcy5hbGxvd2VkTG9jYXRpb25zLmxlbmd0aCA+IDEwMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gMTAwIGFsbG93ZWQgbG9jYXRpb25zIGFyZSBhbGxvd2VkIHBlciBnYW1lIHNlc3Npb24gcXVldWUsIGdpdmVuICR7cHJvcHMuYWxsb3dlZExvY2F0aW9ucy5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgLy8gQWRkIGFsbCBkZXN0aW5hdGlvbnNcbiAgICAocHJvcHMuZGVzdGluYXRpb25zIHx8IFtdKS5mb3JFYWNoKHRoaXMuYWRkRGVzdGluYXRpb24uYmluZCh0aGlzKSk7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5HYW1lU2Vzc2lvblF1ZXVlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgY3VzdG9tRXZlbnREYXRhOiBwcm9wcy5jdXN0b21FdmVudERhdGEsXG4gICAgICBkZXN0aW5hdGlvbnM6IGNkay5MYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMucGFyc2VEZXN0aW5hdGlvbnMoKSB9KSxcbiAgICAgIGZpbHRlckNvbmZpZ3VyYXRpb246IHRoaXMucGFyc2VGaWx0ZXJDb25maWd1cmF0aW9uKHByb3BzKSxcbiAgICAgIG5vdGlmaWNhdGlvblRhcmdldDogcHJvcHMubm90aWZpY2F0aW9uVGFyZ2V0ICYmIHByb3BzLm5vdGlmaWNhdGlvblRhcmdldC50b3BpY0FybixcbiAgICAgIHBsYXllckxhdGVuY3lQb2xpY2llczogdGhpcy5wYXJzZVBsYXllckxhdGVuY3lQb2xpY2llcyhwcm9wcyksXG4gICAgICBwcmlvcml0eUNvbmZpZ3VyYXRpb246IHRoaXMucGFyc2VQcmlvcml0eUNvbmZpZ3VyYXRpb24ocHJvcHMpLFxuICAgICAgdGltZW91dEluU2Vjb25kczogcHJvcHMudGltZW91dCAmJiBwcm9wcy50aW1lb3V0LnRvU2Vjb25kcygpLFxuICAgIH0pO1xuXG4gICAgdGhpcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gICAgdGhpcy5nYW1lU2Vzc2lvblF1ZXVlQXJuID0gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZ2FtZXNlc3Npb25xdWV1ZScsXG4gICAgICByZXNvdXJjZU5hbWU6IHRoaXMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgZGVzdGluYXRpb24gdG8gZnVsZmlsbCByZXF1ZXN0cyBmb3IgbmV3IGdhbWUgc2Vzc2lvbnNcbiAgICpcbiAgICogQHBhcmFtIGRlc3RpbmF0aW9uIEEgZGVzdGluYXRpb24gdG8gYWRkXG4gICAqL1xuICBATWV0aG9kTWV0YWRhdGEoKVxuICBwdWJsaWMgYWRkRGVzdGluYXRpb24oZGVzdGluYXRpb246IElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb24pIHtcbiAgICB0aGlzLmRlc3RpbmF0aW9ucy5wdXNoKGRlc3RpbmF0aW9uKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZVByaW9yaXR5Q29uZmlndXJhdGlvbihwcm9wczogR2FtZVNlc3Npb25RdWV1ZVByb3BzKTogQ2ZuR2FtZVNlc3Npb25RdWV1ZS5Qcmlvcml0eUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24pIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbi5sb2NhdGlvbk9yZGVyLmxlbmd0aCA+IDEwMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gMTAwIGxvY2F0aW9ucyBhcmUgYWxsb3dlZCBwZXIgcHJpb3JpdHkgY29uZmlndXJhdGlvbiwgZ2l2ZW4gJHtwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24ubG9jYXRpb25PcmRlci5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbi5wcmlvcml0eU9yZGVyLmxlbmd0aCA+IDQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDQgcHJpb3JpdGllcyBhcmUgYWxsb3dlZCBwZXIgcHJpb3JpdHkgY29uZmlndXJhdGlvbiwgZ2l2ZW4gJHtwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24ucHJpb3JpdHlPcmRlci5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIHByaW9yaXR5T3JkZXI6IHByb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbi5wcmlvcml0eU9yZGVyLFxuICAgICAgbG9jYXRpb25PcmRlcjogcHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uLmxvY2F0aW9uT3JkZXIsXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZVBsYXllckxhdGVuY3lQb2xpY2llcyhwcm9wczogR2FtZVNlc3Npb25RdWV1ZVByb3BzKTogQ2ZuR2FtZVNlc3Npb25RdWV1ZS5QbGF5ZXJMYXRlbmN5UG9saWN5UHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5wbGF5ZXJMYXRlbmN5UG9saWNpZXMpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHByb3BzLnBsYXllckxhdGVuY3lQb2xpY2llcy5tYXAocGFyc2VQbGF5ZXJMYXRlbmN5UG9saWN5KTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlUGxheWVyTGF0ZW5jeVBvbGljeShwbGF5ZXJMYXRlbmN5UG9saWN5OiBQbGF5ZXJMYXRlbmN5UG9saWN5KTogQ2ZuR2FtZVNlc3Npb25RdWV1ZS5QbGF5ZXJMYXRlbmN5UG9saWN5UHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbWF4aW11bUluZGl2aWR1YWxQbGF5ZXJMYXRlbmN5TWlsbGlzZWNvbmRzOiBwbGF5ZXJMYXRlbmN5UG9saWN5Lm1heGltdW1JbmRpdmlkdWFsUGxheWVyTGF0ZW5jeS50b01pbGxpc2Vjb25kcygpLFxuICAgICAgICBwb2xpY3lEdXJhdGlvblNlY29uZHM6IHBsYXllckxhdGVuY3lQb2xpY3kucG9saWN5RHVyYXRpb24gJiYgcGxheWVyTGF0ZW5jeVBvbGljeS5wb2xpY3lEdXJhdGlvbi50b1NlY29uZHMoKSxcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlRmlsdGVyQ29uZmlndXJhdGlvbihwcm9wczogR2FtZVNlc3Npb25RdWV1ZVByb3BzKTogQ2ZuR2FtZVNlc3Npb25RdWV1ZS5GaWx0ZXJDb25maWd1cmF0aW9uUHJvcGVydHkgfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMuYWxsb3dlZExvY2F0aW9ucykge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgYWxsb3dlZExvY2F0aW9uczogcHJvcHMuYWxsb3dlZExvY2F0aW9ucyxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZURlc3RpbmF0aW9ucygpOiBDZm5HYW1lU2Vzc2lvblF1ZXVlLkRlc3RpbmF0aW9uUHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmRlc3RpbmF0aW9ucyB8fCB0aGlzLmRlc3RpbmF0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZGVzdGluYXRpb25zLm1hcChwYXJzZURlc3RpbmF0aW9uKTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlRGVzdGluYXRpb24oZGVzdGluYXRpb246IElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb24pOiBDZm5HYW1lU2Vzc2lvblF1ZXVlLkRlc3RpbmF0aW9uUHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZGVzdGluYXRpb25Bcm46IGRlc3RpbmF0aW9uLnJlc291cmNlQXJuRm9yRGVzdGluYXRpb24sXG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIl19
@@ -104,7 +104,7 @@ class Port {
104
104
  }
105
105
  exports.Port = Port;
106
106
  _a = JSII_RTTI_SYMBOL_1;
107
- Port[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.Port", version: "2.195.0-alpha.0" };
107
+ Port[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.Port", version: "2.196.0-alpha.0" };
108
108
  /**
109
109
  * Peer object factories
110
110
  *
@@ -131,7 +131,7 @@ class Peer {
131
131
  }
132
132
  exports.Peer = Peer;
133
133
  _b = JSII_RTTI_SYMBOL_1;
134
- Peer[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Peer", version: "2.195.0-alpha.0" };
134
+ Peer[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Peer", version: "2.196.0-alpha.0" };
135
135
  /**
136
136
  * A connection to and from a given IP range
137
137
  */
@@ -83,5 +83,5 @@ class MatchmakingConfigurationBase extends cdk.Resource {
83
83
  }
84
84
  exports.MatchmakingConfigurationBase = MatchmakingConfigurationBase;
85
85
  _a = JSII_RTTI_SYMBOL_1;
86
- MatchmakingConfigurationBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingConfigurationBase", version: "2.195.0-alpha.0" };
86
+ MatchmakingConfigurationBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingConfigurationBase", version: "2.196.0-alpha.0" };
87
87
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2htYWtpbmctY29uZmlndXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1hdGNobWFraW5nLWNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseURBQXlEO0FBRXpELHdDQUF3QztBQTZMeEM7O0dBRUc7QUFDSCxNQUFzQiw0QkFBNkIsU0FBUSxHQUFHLENBQUMsUUFBUTtJQUNyRTs7T0FFRztJQUNILE1BQU0sQ0FBQyxzQ0FBc0MsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF5Qzs7Ozs7Ozs7OztRQUNuSCxJQUFJLENBQUMsS0FBSyxDQUFDLDRCQUE0QixJQUFJLENBQUMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLENBQUM7WUFDOUUsTUFBTSxJQUFJLEtBQUssQ0FBQywySEFBMkgsQ0FBQyxDQUFDO1FBQy9JLENBQUM7UUFDRCxNQUFNLDRCQUE0QixHQUFHLEtBQUssQ0FBQyw0QkFBNEI7WUFDdEUsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQywyQkFBNEIsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUMsWUFBWSxDQUFDO1FBRWxILElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELEtBQUssQ0FBQywyQkFBMkIsR0FBRyxDQUFDLENBQUM7UUFDNUcsQ0FBQztRQUVELE1BQU0sMkJBQTJCLEdBQUcsS0FBSyxDQUFDLDJCQUEyQixJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUNyRyxPQUFPLEVBQUUsVUFBVTtZQUNuQixRQUFRLEVBQUUsMEJBQTBCO1lBQ3BDLFlBQVksRUFBRSxLQUFLLENBQUMsNEJBQTRCO1lBQ2hELFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLG1CQUFtQjtTQUM3QyxDQUFDLENBQUM7UUFDSCxNQUFNLE1BQU8sU0FBUSw0QkFBNEI7WUFLL0MsWUFBWSxDQUFZLEVBQUUsQ0FBUztnQkFDakMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUU7b0JBQ1Ysa0JBQWtCLEVBQUUsMkJBQTJCO2lCQUNoRCxDQUFDLENBQUM7Z0JBUFcsaUNBQTRCLEdBQUcsNEJBQTZCLENBQUM7Z0JBQzdELGdDQUEyQixHQUFHLDJCQUEyQixDQUFDO2dCQUMxRCx1QkFBa0IsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUM7WUFNOUQsQ0FBQztTQUNGO1FBQ0QsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDOUI7SUFpQkQsTUFBTSxDQUFDLFVBQWtCLEVBQUUsS0FBZ0M7UUFDekQsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDM0IsU0FBUyxFQUFFLGNBQWM7WUFDekIsVUFBVSxFQUFFLFVBQVU7WUFDdEIsYUFBYSxFQUFFO2dCQUNiLDRCQUE0QixFQUFFLElBQUksQ0FBQyw0QkFBNEI7YUFDaEU7WUFDRCxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ25CO0lBRUQsb0JBQW9CLENBQUMsS0FBZ0M7UUFDbkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQzdDO0lBRUQscUJBQXFCLENBQUMsS0FBZ0M7UUFDcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQzlDO0lBRUQsb0JBQW9CLENBQUMsS0FBZ0M7UUFDbkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQzdDO0lBRUQsbUJBQW1CLENBQUMsS0FBZ0M7UUFDbEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUM1QztJQUVELHFCQUFxQixDQUFDLEtBQWdDO1FBQ3BELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUM5QztJQUVELG9CQUFvQixDQUFDLEtBQWdDO1FBQ25ELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsQ0FBQztLQUM3QztJQUVELGlCQUFpQixDQUFDLEtBQWdDO1FBQ2hELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7S0FDMUM7O0FBdkZILG9FQXdGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNsb3Vkd2F0Y2ggZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0ICogYXMgc25zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zbnMnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBJTWF0Y2htYWtpbmdSdWxlU2V0IH0gZnJvbSAnLic7XG5cbi8qKlxuICogQSBzZXQgb2YgY3VzdG9tIHByb3BlcnRpZXMgZm9yIGEgZ2FtZSBzZXNzaW9uLCBmb3JtYXR0ZWQgYXMga2V5LXZhbHVlIHBhaXJzLlxuICogVGhlc2UgcHJvcGVydGllcyBhcmUgcGFzc2VkIHRvIGEgZ2FtZSBzZXJ2ZXIgcHJvY2VzcyB3aXRoIGEgcmVxdWVzdCB0byBzdGFydCBhIG5ldyBnYW1lIHNlc3Npb24uXG4gKlxuICogVGhpcyBwYXJhbWV0ZXIgaXMgbm90IHVzZWQgZm9yIFN0YW5kYWxvbmUgRmxleE1hdGNoIG1vZGUuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2dhbWVsaWZ0LXNkay1zZXJ2ZXItYXBpLmh0bWwjZ2FtZWxpZnQtc2RrLXNlcnZlci1zdGFydHNlc3Npb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHYW1lUHJvcGVydHkge1xuICAvKipcbiAgICogVGhlIGdhbWUgcHJvcGVydHkgaWRlbnRpZmllci5cbiAgICovXG4gIHJlYWRvbmx5IGtleTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZ2FtZSBwcm9wZXJ0eSB2YWx1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVsaWZ0IG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uIGV4dGVuZHMgY2RrLklSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5vdGlmaWNhdGlvbiB0YXJnZXQgZm9yIG1hdGNobWFraW5nIGV2ZW50c1xuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25UYXJnZXQ/OiBzbnMuSVRvcGljO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGdpdmVuIG5hbWVkIG1ldHJpYyBmb3IgdGhpcyBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogTWF0Y2htYWtpbmcgcmVxdWVzdHMgY3VycmVudGx5IGJlaW5nIHByb2Nlc3NlZCBvciB3YWl0aW5nIHRvIGJlIHByb2Nlc3NlZC5cbiAgICovXG4gIG1ldHJpY0N1cnJlbnRUaWNrZXRzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEZvciBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9ucyB0aGF0IHJlcXVpcmUgYWNjZXB0YW5jZSwgdGhlIHBvdGVudGlhbCBtYXRjaGVzIHRoYXQgd2VyZSBhY2NlcHRlZCBzaW5jZSB0aGUgbGFzdCByZXBvcnQuXG4gICAqL1xuICBtZXRyaWNNYXRjaGVzQWNjZXB0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogUG90ZW50aWFsIG1hdGNoZXMgdGhhdCB3ZXJlIGNyZWF0ZWQgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljTWF0Y2hlc0NyZWF0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogTWF0Y2hlcyB0aGF0IHdlcmUgc3VjY2Vzc2Z1bGx5IHBsYWNlZCBpbnRvIGEgZ2FtZSBzZXNzaW9uIHNpbmNlIHRoZSBsYXN0IHJlcG9ydC5cbiAgICovXG4gIG1ldHJpY01hdGNoZXNQbGFjZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogRm9yIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb25zIHRoYXQgcmVxdWlyZSBhY2NlcHRhbmNlLCB0aGUgcG90ZW50aWFsIG1hdGNoZXMgdGhhdCB3ZXJlIHJlamVjdGVkIGJ5IGF0IGxlYXN0IG9uZSBwbGF5ZXIgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljTWF0Y2hlc1JlamVjdGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIFBsYXllcnMgaW4gbWF0Y2htYWtpbmcgdGlja2V0cyB0aGF0IHdlcmUgYWRkZWQgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKi9cbiAgbWV0cmljUGxheWVyc1N0YXJ0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogRm9yIG1hdGNobWFraW5nIHJlcXVlc3RzIHRoYXQgd2VyZSBwdXQgaW50byBhIHBvdGVudGlhbCBtYXRjaCBiZWZvcmUgdGhlIGxhc3QgcmVwb3J0LFxuICAgKiB0aGUgYW1vdW50IG9mIHRpbWUgYmV0d2VlbiB0aWNrZXQgY3JlYXRpb24gYW5kIHBvdGVudGlhbCBtYXRjaCBjcmVhdGlvbi5cbiAgICpcbiAgICogVW5pdHM6IHNlY29uZHNcbiAgICovXG4gIG1ldHJpY1RpbWVUb01hdGNoKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG59XG5cbi8qKlxuICogQSBmdWxsIHNwZWNpZmljYXRpb24gb2YgYSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIHRoYXQgY2FuIGJlIHVzZWQgdG8gaW1wb3J0IGl0IGZsdWVudGx5IGludG8gdGhlIENESyBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25BdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm5gIGFuZCBgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZWAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgZGVyaXZlZCBmcm9tIGBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lYC5cbiAgICovXG4gIHJlYWRvbmx5IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGlkZW50aWZpZXIgb2YgdGhlIE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lYCBhbmQgYG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybmAgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIFNOUyB0b3BpYyBBUk4gdGhhdCBpcyBzZXQgdXAgdG8gcmVjZWl2ZSBtYXRjaG1ha2luZyBub3RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZmxleG1hdGNoZ3VpZGUvbWF0Y2gtbm90aWZpY2F0aW9uLmh0bWxcbiAgICpcbiAgICogQGRlZmF1bHQgbm8gbm90aWZpY2F0aW9uIHRhcmdldCBiaW5kZWQgdG8gaW1wb3J0ZWQgcmVzc291cmNlXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25UYXJnZXQ/OiBzbnMuSVRvcGljO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IEdhbWVsaWZ0IG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBBIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbi5cbiAgICogVGhpcyBuYW1lIGlzIHVzZWQgdG8gaWRlbnRpZnkgdGhlIGNvbmZpZ3VyYXRpb24gYXNzb2NpYXRlZCB3aXRoIGEgbWF0Y2htYWtpbmcgcmVxdWVzdCBvciB0aWNrZXQuXG4gICAqL1xuICByZWFkb25seSBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gb2YgdGhlIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGRlc2NyaXB0aW9uIGlzIHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmbGFnIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIGEgbWF0Y2ggdGhhdCB3YXMgY3JlYXRlZCB3aXRoIHRoaXMgY29uZmlndXJhdGlvbiBtdXN0IGJlIGFjY2VwdGVkIGJ5IHRoZSBtYXRjaGVkIHBsYXllcnMuXG4gICAqIFdpdGggdGhpcyBvcHRpb24gZW5hYmxlZCwgbWF0Y2htYWtpbmcgdGlja2V0cyB1c2UgdGhlIHN0YXR1cyBgUkVRVUlSRVNfQUNDRVBUQU5DRWAgdG8gaW5kaWNhdGUgd2hlbiBhIGNvbXBsZXRlZCBwb3RlbnRpYWwgbWF0Y2ggaXMgd2FpdGluZyBmb3IgcGxheWVyIGFjY2VwdGFuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IEFjY2VwdGFuY2UgaXMgbm90IHJlcXVpcmVkXG4gICAqL1xuICByZWFkb25seSByZXF1aXJlQWNjZXB0YW5jZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBsZW5ndGggb2YgdGltZSAoaW4gc2Vjb25kcykgdG8gd2FpdCBmb3IgcGxheWVycyB0byBhY2NlcHQgYSBwcm9wb3NlZCBtYXRjaCwgaWYgYWNjZXB0YW5jZSBpcyByZXF1aXJlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgMzAwIHNlY29uZHNcbiAgICovXG4gIHJlYWRvbmx5IGFjY2VwdGFuY2VUaW1lb3V0PzogY2RrLkR1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBJbmZvcm1hdGlvbiB0byBhZGQgdG8gYWxsIGV2ZW50cyByZWxhdGVkIHRvIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjdXN0b20gZGF0YSBhZGRlZCB0byBldmVudHNcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbUV2ZW50RGF0YT86IHN0cmluZztcblxuICAvKipcbiAgICogQW4gU05TIHRvcGljIEFSTiB0aGF0IGlzIHNldCB1cCB0byByZWNlaXZlIG1hdGNobWFraW5nIG5vdGlmaWNhdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9mbGV4bWF0Y2hndWlkZS9tYXRjaC1ub3RpZmljYXRpb24uaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBub3RpZmljYXRpb24gdGFyZ2V0XG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25UYXJnZXQ/OiBzbnMuSVRvcGljO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBkdXJhdGlvbiwgdGhhdCBhIG1hdGNobWFraW5nIHRpY2tldCBjYW4gcmVtYWluIGluIHByb2Nlc3MgYmVmb3JlIHRpbWluZyBvdXQuXG4gICAqIFJlcXVlc3RzIHRoYXQgZmFpbCBkdWUgdG8gdGltaW5nIG91dCBjYW4gYmUgcmVzdWJtaXR0ZWQgYXMgbmVlZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAzMDAgc2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdFRpbWVvdXQ/OiBjZGsuRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIEEgbWF0Y2htYWtpbmcgcnVsZSBzZXQgdG8gdXNlIHdpdGggdGhpcyBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBBIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gY2FuIG9ubHkgdXNlIHJ1bGUgc2V0cyB0aGF0IGFyZSBkZWZpbmVkIGluIHRoZSBzYW1lIFJlZ2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IHJ1bGVTZXQ6IElNYXRjaG1ha2luZ1J1bGVTZXQ7XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgbmV3IGFuZCBpbXBvcnRlZCBHYW1lTGlmdCBNYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQmFzZSBleHRlbmRzIGNkay5SZXNvdXJjZSBpbXBsZW1lbnRzIElNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb24ge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXR0cmlidXRlcyk6IElNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb24ge1xuICAgIGlmICghYXR0cnMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSAmJiAhYXR0cnMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXJuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lIG9yIG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybiBtdXN0IGJlIHByb3ZpZGVkIGluIE1hdGNobWFraW5nQ29uZmlndXJhdGlvbkF0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSA9IGF0dHJzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUgPz9cbiAgICAgY2RrLlN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybihhdHRycy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIG5hbWUgZm91bmQgaW4gQVJOOiAnJHthdHRycy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm59J2ApO1xuICAgIH1cblxuICAgIGNvbnN0IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybiA9IGF0dHJzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybiA/PyBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdtYXRjaG1ha2luZ2NvbmZpZ3VyYXRpb24nLFxuICAgICAgcmVzb3VyY2VOYW1lOiBhdHRycy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSA9IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybiA9IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBub3RpZmljYXRpb25UYXJnZXQgPSBhdHRycy5ub3RpZmljYXRpb25UYXJnZXQ7XG5cbiAgICAgIGNvbnN0cnVjdG9yKHM6IENvbnN0cnVjdCwgaTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHMsIGksIHtcbiAgICAgICAgICBlbnZpcm9ubWVudEZyb21Bcm46IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbm90aWZpY2F0aW9uIHRhcmdldCBmb3IgbWF0Y2htYWtpbmcgZXZlbnRzXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgbm90aWZpY2F0aW9uVGFyZ2V0Pzogc25zLklUb3BpYztcblxuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIG5hbWVzcGFjZTogJ0FXUy9HYW1lTGlmdCcsXG4gICAgICBtZXRyaWNOYW1lOiBtZXRyaWNOYW1lLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lOiB0aGlzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUsXG4gICAgICB9LFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cblxuICBtZXRyaWNDdXJyZW50VGlja2V0cyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ0N1cnJlbnRUaWNrZXRzJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljTWF0Y2hlc0FjY2VwdGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnTWF0Y2hlc0FjY2VwdGVkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljTWF0Y2hlc0NyZWF0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdNYXRjaGVzQ3JlYXRlZCcsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY01hdGNoZXNQbGFjZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdNYXRjaGVzUGxhY2VkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljTWF0Y2hlc1JlamVjdGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnTWF0Y2hlc1JlamVjdGVkJywgcHJvcHMpO1xuICB9XG5cbiAgbWV0cmljUGxheWVyc1N0YXJ0ZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdQbGF5ZXJzU3RhcnRlZCcsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1RpbWVUb01hdGNoKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnVGltZVRvTWF0Y2gnLCBwcm9wcyk7XG4gIH1cbn1cbiJdfQ==
@@ -73,5 +73,5 @@ class RuleSetContent {
73
73
  }
74
74
  exports.RuleSetContent = RuleSetContent;
75
75
  _a = JSII_RTTI_SYMBOL_1;
76
- RuleSetContent[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.RuleSetContent", version: "2.195.0-alpha.0" };
76
+ RuleSetContent[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.RuleSetContent", version: "2.196.0-alpha.0" };
77
77
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2htYWtpbmctcnVsZXNldC1ib2R5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibWF0Y2htYWtpbmctcnVsZXNldC1ib2R5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHlCQUF5QjtBQWtEekI7Ozs7Ozs7R0FPRztBQUNILE1BQWEsY0FBYztJQUN6Qjs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFZO1FBQ3JDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNuRixDQUFDO1FBRUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDhFQUE4RSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5DLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztLQUN6QztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLElBQVk7UUFDbkMsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLEVBQUUsQ0FBQztZQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN4RixDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0gsT0FBTyxJQUFJLGNBQWMsQ0FBQztnQkFDeEIsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQzFCLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztLQUNGO0lBT0QsWUFBWSxLQUEwQjs7Ozs7OytDQTFDM0IsY0FBYzs7OztRQTJDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztLQUNwQztJQUVEOzs7OztPQUtHO0lBQ0ksSUFBSSxDQUFDLE1BQWlCO1FBQzNCLE9BQU87WUFDTCxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQzFDLENBQUM7S0FDSDs7QUF4REgsd0NBeURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogSW50ZXJmYWNlIHRvIHJlcHJlc2VudCBNYXRjaG1ha2luZyBSdWxlU2V0IHNjaGVtYVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElSdWxlU2V0Qm9keSB7fVxuXG4vKipcbiAqIEludGVyZmFjZSB0byByZXByZXNlbnQgb3V0cHV0IHJlc3VsdCBvZiBhIFJ1bGVTZXRDb250ZW50IGJpbmRpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSdWxlU2V0Qm9keUNvbmZpZyB7XG4gIC8qKlxuICAgKiBJbmxpbmUgcnVsZVNldCBib2R5LlxuICAgKi9cbiAgcmVhZG9ubHkgcnVsZVNldEJvZHk6IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgdG8gcmVwcmVzZW50IGEgTWF0Y2htYWtpbmcgUnVsZVNldCBjb250ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVJ1bGVTZXRDb250ZW50IHtcbiAgLyoqXG4gICAqIFJ1bGVTZXQgYm9keSBjb250ZW50XG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IElSdWxlU2V0Qm9keTtcblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIG1hdGNobWFraW5nIHJ1bGVTZXQgaXMgaW5pdGlhbGl6ZWQgdG8gYWxsb3cgdGhpcyBvYmplY3QgdG8gYmluZFxuICAgKiB0byB0aGUgc3RhY2sgYW5kIGFkZCByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSBfc2NvcGUgVGhlIGJpbmRpbmcgc2NvcGUuXG4gICAqL1xuICBiaW5kKF9zY29wZTogQ29uc3RydWN0KTogUnVsZVNldEJvZHlDb25maWc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgbWF0Y2htYWtpbmcgcnVsZVNldCBjb250ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVsZVNldENvbnRlbnRQcm9wcyB7XG4gIC8qKlxuICAgKiBSdWxlU2V0IGJvZHkgY29udGVudFxuICAgKlxuICAgKiBAZGVmYXVsdCB1c2UgYSBkZWZhdWx0IGVtcHR5IFJ1bGVTZXQgYm9keVxuICAgKi9cbiAgcmVhZG9ubHkgY29udGVudD86IElSdWxlU2V0Qm9keTtcbn1cblxuLyoqXG4gKiBUaGUgcnVsZSBzZXQgZGV0ZXJtaW5lcyB0aGUgdHdvIGtleSBlbGVtZW50cyBvZiBhIG1hdGNoOiB5b3VyIGdhbWUncyB0ZWFtIHN0cnVjdHVyZSBhbmQgc2l6ZSwgYW5kIGhvdyB0byBncm91cCBwbGF5ZXJzIHRvZ2V0aGVyIGZvciB0aGUgYmVzdCBwb3NzaWJsZSBtYXRjaC5cbiAqXG4gKiBGb3IgZXhhbXBsZSwgYSBydWxlIHNldCBtaWdodCBkZXNjcmliZSBhIG1hdGNoIGxpa2UgdGhpczpcbiAqIC0gQ3JlYXRlIGEgbWF0Y2ggd2l0aCB0d28gdGVhbXMgb2YgZml2ZSBwbGF5ZXJzIGVhY2gsIG9uZSB0ZWFtIGlzIHRoZSBkZWZlbmRlcnMgYW5kIHRoZSBvdGhlciB0ZWFtIHRoZSBpbnZhZGVycy5cbiAqIC0gQSB0ZWFtIGNhbiBoYXZlIG5vdmljZSBhbmQgZXhwZXJpZW5jZWQgcGxheWVycywgYnV0IHRoZSBhdmVyYWdlIHNraWxsIG9mIHRoZSB0d28gdGVhbXMgbXVzdCBiZSB3aXRoaW4gMTAgcG9pbnRzIG9mIGVhY2ggb3RoZXIuXG4gKiAtIElmIG5vIG1hdGNoIGlzIG1hZGUgYWZ0ZXIgMzAgc2Vjb25kcywgZ3JhZHVhbGx5IHJlbGF4IHRoZSBza2lsbCByZXF1aXJlbWVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBSdWxlU2V0Q29udGVudCBpbXBsZW1lbnRzIElSdWxlU2V0Q29udGVudCB7XG4gIC8qKlxuICAgKiBNYXRjaG1ha2luZyBydWxlU2V0IGJvZHkgZnJvbSBhIGZpbGVcbiAgICogQHJldHVybnMgYFJ1bGVTZXRDb250ZW50QmFzZWAgYmFzZWQgb24gSlNPTiBmaWxlIGNvbnRlbnQuXG4gICAqIEBwYXJhbSBwYXRoIFRoZSBwYXRoIHRvIHRoZSBydWxlU2V0IGJvZHkgZmlsZVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tSnNvbkZpbGUocGF0aDogc3RyaW5nKTogSVJ1bGVTZXRDb250ZW50IHtcbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMocGF0aCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgUnVsZVNldCBwYXRoIGRvZXMgbm90IGV4aXN0LCBwbGVhc2UgdmVyaWZ5IGl0LCBhY3R1YWwgJHtwYXRofWApO1xuICAgIH1cblxuICAgIGlmICghZnMubHN0YXRTeW5jKHBhdGgpLmlzRmlsZSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJ1bGVTZXQgcGF0aCBpcyBub3QgbGluayB0byBhIHNpbmdsZSBmaWxlLCBwbGVhc2UgdmVyaWZ5IHlvdXIgcGF0aCwgYWN0dWFsICR7cGF0aH1gKTtcbiAgICB9XG4gICAgY29uc3QgZmlsZSA9IGZzLnJlYWRGaWxlU3luYyhwYXRoKTtcblxuICAgIHJldHVybiB0aGlzLmZyb21JbmxpbmUoZmlsZS50b1N0cmluZygpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmxpbmUgYm9keSBmb3IgTWF0Y2htYWtpbmcgcnVsZVNldFxuICAgKiBAcmV0dXJucyBgUnVsZVNldENvbnRlbnRgIHdpdGggaW5saW5lIGNvZGUuXG4gICAqIEBwYXJhbSBib2R5IFRoZSBhY3R1YWwgcnVsZVNldCBib2R5IChtYXhpbXVtIDY1NTM1IGNoYXJhY3RlcnMpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21JbmxpbmUoYm9keTogc3RyaW5nKTogSVJ1bGVTZXRDb250ZW50IHtcbiAgICBpZiAoYm9keSAmJiBib2R5Lmxlbmd0aCA+IDY1NTM1KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJ1bGVTZXQgYm9keSBjYW5ub3QgZXhjZWVkIDY1NTM1IGNoYXJhY3RlcnMsIGFjdHVhbCAke2JvZHkubGVuZ3RofWApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIG5ldyBSdWxlU2V0Q29udGVudCh7XG4gICAgICAgIGNvbnRlbnQ6IEpTT04ucGFyc2UoYm9keSksXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUnVsZVNldCBib2R5IGhhcyBhbiBpbnZhbGlkIEpzb24gZm9ybWF0Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bGVTZXQgYm9keSBjb250ZW50XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGVudDogSVJ1bGVTZXRCb2R5O1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBSdWxlU2V0Q29udGVudFByb3BzKSB7XG4gICAgdGhpcy5jb250ZW50ID0gcHJvcHMuY29udGVudCB8fCB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgbWF0Y2htYWtpbmcgcnVsZVNldCBpcyBpbml0aWFsaXplZCB0byBhbGxvdyB0aGlzIG9iamVjdCB0byBiaW5kXG4gICAqIHRvIHRoZSBzdGFjayBhbmQgYWRkIHJlc291cmNlcy5cbiAgICpcbiAgICogQHBhcmFtIF9zY29wZSBUaGUgYmluZGluZyBzY29wZS5cbiAgICovXG4gIHB1YmxpYyBiaW5kKF9zY29wZTogQ29uc3RydWN0KTogUnVsZVNldEJvZHlDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBydWxlU2V0Qm9keTogSlNPTi5zdHJpbmdpZnkodGhpcy5jb250ZW50KSxcbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -105,6 +105,8 @@ export declare abstract class MatchmakingRuleSetBase extends cdk.Resource implem
105
105
  * @resource AWS::GameLift::MatchmakingRuleSet
106
106
  */
107
107
  export declare class MatchmakingRuleSet extends MatchmakingRuleSetBase {
108
+ /** Uniquely identifies this class. */
109
+ static readonly PROPERTY_INJECTION_ID: string;
108
110
  /**
109
111
  * Import a ruleSet into CDK using its name
110
112
  */