@aws-cdk/aws-gamelift-alpha 2.126.0-alpha.0 → 2.127.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.
- package/.jsii +6 -19
- package/.jsii.tabl.json.gz +0 -0
- package/README.md +1 -1
- package/lib/alias.js +2 -2
- package/lib/build-fleet.js +1 -1
- package/lib/build.js +2 -2
- package/lib/content.js +3 -3
- package/lib/fleet-base.js +2 -2
- package/lib/game-server-group.js +2 -2
- package/lib/game-session-queue.js +2 -2
- package/lib/ingress-rule.js +2 -2
- package/lib/matchmaking-configuration.js +1 -1
- package/lib/matchmaking-ruleset-body.js +1 -1
- package/lib/matchmaking-ruleset.js +2 -2
- package/lib/queued-matchmaking-configuration.js +1 -1
- package/lib/script.js +2 -2
- package/lib/standalone-matchmaking-configuration.js +1 -1
- package/package.json +8 -8
package/.jsii
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"aws-cdk-lib": "^2.
|
|
11
|
+
"aws-cdk-lib": "^2.127.0",
|
|
12
12
|
"constructs": "^10.0.0"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -3202,19 +3202,6 @@
|
|
|
3202
3202
|
}
|
|
3203
3203
|
}
|
|
3204
3204
|
},
|
|
3205
|
-
"aws-cdk-lib.aws_ssmguiconnect": {
|
|
3206
|
-
"targets": {
|
|
3207
|
-
"dotnet": {
|
|
3208
|
-
"package": "Amazon.CDK.AWS.SSMGuiConnect"
|
|
3209
|
-
},
|
|
3210
|
-
"java": {
|
|
3211
|
-
"package": "software.amazon.awscdk.services.ssmguiconnect"
|
|
3212
|
-
},
|
|
3213
|
-
"python": {
|
|
3214
|
-
"module": "aws_cdk.aws_ssmguiconnect"
|
|
3215
|
-
}
|
|
3216
|
-
}
|
|
3217
|
-
},
|
|
3218
3205
|
"aws-cdk-lib.aws_ssmincidents": {
|
|
3219
3206
|
"targets": {
|
|
3220
3207
|
"dotnet": {
|
|
@@ -3684,7 +3671,7 @@
|
|
|
3684
3671
|
},
|
|
3685
3672
|
"name": "@aws-cdk/aws-gamelift-alpha",
|
|
3686
3673
|
"readme": {
|
|
3687
|
-
"markdown": "# Amazon GameLift Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\n[Amazon GameLift](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-intro.html) is a service used\nto deploy, operate, and scale dedicated, low-cost servers in the cloud for session-based multiplayer games. Built\non AWS global computing infrastructure, GameLift helps deliver high-performance, high-reliability game servers\nwhile dynamically scaling your resource usage to meet worldwide player demand.\n\nGameLift is composed of three main components:\n\n* GameLift FlexMatch which is a customizable matchmaking service for\nmultiplayer games. With FlexMatch, you can\nbuild a custom set of rules that defines what a multiplayer match looks like\nfor your game, and determines how to\nevaluate and select compatible players for each match. You can also customize\nkey aspects of the matchmaking\nprocess to fit your game, including fine-tuning the matching algorithm.\n\n* GameLift hosting for custom or realtime servers which helps you deploy,\noperate, and scale dedicated game servers. It regulates the resources needed to\nhost games, finds available game servers to host new game sessions, and puts\nplayers into games.\n\n* GameLift FleetIQ to optimize the use of low-cost Amazon Elastic Compute Cloud\n(Amazon EC2) Spot Instances for cloud-based game hosting. With GameLift\nFleetIQ, you can work directly with your hosting resources in Amazon EC2 and\nAmazon EC2 Auto Scaling while taking advantage of GameLift optimizations to\ndeliver inexpensive, resilient game hosting for your players\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project. It allows you to define components for your matchmaking\nconfiguration or game server fleet management system.\n\n## GameLift FlexMatch\n\n### Defining a Matchmaking configuration\n\nFlexMatch is available both as a GameLift game hosting solution (including\nRealtime Servers) and as a standalone matchmaking service. To set up a\nFlexMatch matchmaker to process matchmaking requests, you have to create a\nmatchmaking configuration based on a RuleSet.\n\nMore details about matchmaking ruleSet are covered [below](#matchmaking-ruleset).\n\nThere is two types of Matchmaking configuration:\n\nThrough a game session queue system to let FlexMatch forms matches and uses the specified GameLift queue to start a game session for the match.\n\n```ts\ndeclare const queue: gamelift.GameSessionQueue;\ndeclare const ruleSet: gamelift.MatchmakingRuleSet;\n\nnew gamelift.QueuedMatchmakingConfiguration(this, 'QueuedMatchmakingConfiguration', {\n matchmakingConfigurationName: 'test-queued-config-name',\n gameSessionQueues: [queue],\n ruleSet: ruleSet,\n});\n```\n\nOr through a standalone version to let FlexMatch forms matches and returns match information in an event.\n\n```ts\ndeclare const ruleSet: gamelift.MatchmakingRuleSet;\n\nnew gamelift.StandaloneMatchmakingConfiguration(this, 'StandaloneMatchmaking', {\n matchmakingConfigurationName: 'test-standalone-config-name',\n ruleSet: ruleSet,\n});\n```\n\n\nMore details about Game session queue are covered [below](#game-session-queue).\n\n### Matchmaking RuleSet\n\nEvery FlexMatch matchmaker must have a rule set. The rule set determines the\ntwo key elements of a match: your game's team structure and size, and how to\ngroup players together for the best possible match.\n\nFor example, a rule set might describe a match like this: Create a match with\ntwo teams of four to eight players each, one team is the cowboy and the other\nteam the aliens. A team can have novice and experienced players, but the\naverage skill of the two teams must be within 10 points of each other. If no\nmatch is made after 30 seconds, gradually relax the skill requirements.\n\n```ts\nnew gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset/ruleset.json')),\n});\n```\n\n### FlexMatch Monitoring\n\nYou can monitor GameLift FlexMatch activity for matchmaking configurations and\nmatchmaking rules using Amazon CloudWatch. These statistics are used to provide\na historical perspective on how your Gamelift FlexMatch solution is performing.\n\n#### FlexMatch Metrics\n\nGameLift FlexMatch sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your matchmaking solution, including match acceptance\nworkflow, ticket consumtion.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain thresold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift FlexMatch metrics with default configuration,\nsuch as `metricRuleEvaluationsPassed`, or `metricRuleEvaluationsFailed` (see\n[`IMatchmakingRuleSet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IMatchmakingRuleSet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FlexMatch;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const matchmakingRuleSet: gamelift.MatchmakingRuleSet;\n// Alarm that triggers when the per-second average of not placed matches exceed 10%\nconst ruleEvaluationRatio = new cloudwatch.MathExpression({\n expression: '1 - (ruleEvaluationsPassed / ruleEvaluationsFailed)',\n usingMetrics: {\n ruleEvaluationsPassed: matchmakingRuleSet.metricRuleEvaluationsPassed({ statistic: cloudwatch.Statistic.SUM }),\n ruleEvaluationsFailed: matchmakingRuleSet.metric('ruleEvaluationsFailed'),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: ruleEvaluationRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n\n## GameLift Hosting\n\n### Uploading builds and scripts to GameLift\n\nBefore deploying your GameLift-enabled multiplayer game servers for hosting with the GameLift service, you need to upload\nyour game server files. This section provides guidance on preparing and uploading custom game server build\nfiles or Realtime Servers server script files. When you upload files, you create a GameLift build or script resource, which\nyou then deploy on fleets of hosting resources.\n\nTo troubleshoot fleet activation problems related to the server script, see [Debug GameLift fleet issues](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html).\n\n#### Upload a custom server build to GameLift\n\nBefore uploading your configured game server to GameLift for hosting, package the game build files into a build directory.\nThis directory must include all components required to run your game servers and host game sessions, including the following:\n\n* Game server binaries – The binary files required to run the game server. A build can include binaries for multiple game\nservers built to run on the same platform. For a list of supported platforms, see [Download Amazon GameLift SDKs](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-supported.html).\n\n* Dependencies – Any dependent files that your game server executables require to run. Examples include assets, configuration\nfiles, and dependent libraries.\n\n* Install script – A script file to handle tasks that are required to fully install your game build on GameLift hosting\nservers. Place this file at the root of the build directory. GameLift runs the install script as part of fleet creation.\n\nYou can set up any application in your build, including your install script, to access your resources securely on other AWS\nservices.\n\n```ts\ndeclare const bucket: s3.Bucket;\nconst build = new gamelift.Build(this, 'Build', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n\nnew CfnOutput(this, 'BuildArn', { value: build.buildArn });\nnew CfnOutput(this, 'BuildId', { value: build.buildId });\n```\n\nTo specify a server SDK version you used when integrating your game server build with Amazon GameLift use the `serverSdkVersion` parameter:\n\n> See [Integrate games with custom game servers](https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-custom-intro.html) for more details.\n\n```ts\ndeclare const bucket: s3.Bucket;\nconst build = new gamelift.Build(this, 'Build', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\"),\n serverSdkVersion: '5.0.0',\n});\n```\n\n#### Upload a realtime server Script\n\nYour server script can include one or more files combined into a single .zip file for uploading. The .zip file must contain\nall files that your script needs to run.\n\nYou can store your zipped script files in either a local file directory or in an Amazon Simple Storage Service (Amazon S3)\nbucket or defines a directory asset which is archived as a .zip file and uploaded to S3 during deployment.\n\nAfter you create the script resource, GameLift deploys the script with a new Realtime Servers fleet. GameLift installs your\nserver script onto each instance in the fleet, placing the script files in `/local/game`.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew gamelift.Script(this, 'Script', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n```\n\n### Defining a GameLift Fleet\n\n#### Creating a custom game server fleet\n\nYour uploaded game servers are hosted on GameLift virtual computing resources,\ncalled instances. You set up your hosting resources by creating a fleet of\ninstances and deploying them to run your game servers. You can design a fleet\nto fit your game's needs.\n\n```ts\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: gamelift.Build.fromAsset(this, 'Build', path.join(__dirname, 'CustomerGameServer')),\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: 'test-launch-path',\n }],\n },\n});\n```\n\n### Managing game servers launch configuration\n\nGameLift uses a fleet's runtime configuration to determine the type and number\nof processes to run on each instance in the fleet. At a minimum, a runtime\nconfiguration contains one server process configuration that represents one\ngame server executable. You can also define additional server process\nconfigurations to run other types of processes related to your game. Each\nserver process configuration contains the following information:\n\n* The file name and path of an executable in your game build.\n\n* Optionally Parameters to pass to the process on launch.\n\n* The number of processes to run concurrently.\n\nA GameLift instance is limited to 50 processes running concurrently.\n\n```ts\ndeclare const build: gamelift.Build;\n// Server processes can be delcared in a declarative way through the constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n parameters: '-logFile /local/game/logs/myserver1935.log -port 1935',\n concurrentExecutions: 100,\n }]\n }\n});\n```\n\nSee [Managing how game servers are launched for hosting](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Defining an instance type\n\nGameLift uses Amazon Elastic Compute Cloud (Amazon EC2) resources, called\ninstances, to deploy your game servers and host game sessions for your players.\nWhen setting up a new fleet, you decide what type of instances your game needs\nand how to run game server processes on them (using a runtime configuration). All instances in a fleet use the same type of resources and the same runtime\nconfiguration. You can edit a fleet's runtime configuration and other fleet\nproperties, but the type of resources cannot be changed.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n }\n});\n```\n\n### Using Spot instances\n\nWhen setting up your hosting resources, you have the option of using Spot\nInstances, On-Demand Instances, or a combination.\n\nBy default, fleet are using on demand capacity.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n useSpot: true\n});\n```\n\n### Allowing Ingress traffic\n\nThe allowed IP address ranges and port settings that allow inbound traffic to\naccess game sessions on this fleet.\n\nNew game sessions are assigned an IP address/port number combination, which\nmust fall into the fleet's allowed ranges. Fleets with custom game builds must\nhave permissions explicitly set. For Realtime Servers fleets, GameLift\nautomatically opens two port ranges, one for TCP messaging and one for UDP.\n\n```ts\ndeclare const build: gamelift.Build;\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n ingressRules: [{\n source: gamelift.Peer.anyIpv4(),\n port: gamelift.Port.tcpRange(100, 200),\n }]\n});\n// Allowing a specific CIDR for port 1111 on UDP Protocol\nfleet.addIngressRule(gamelift.Peer.ipv4('1.2.3.4/32'), gamelift.Port.udp(1111));\n```\n\n### Managing locations\n\nA single Amazon GameLift fleet has a home Region by default (the Region you\ndeploy it to), but it can deploy resources to any number of GameLift supported\nRegions. Select Regions based on where your players are located and your\nlatency needs.\n\nBy default, home region is used as default location but we can add new locations if needed and define desired capacity\n\n```ts\ndeclare const build: gamelift.Build;\n\n// Locations can be added directly through constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n locations: [ {\n region: 'eu-west-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }, {\n region: 'us-east-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }]\n});\n\n// Or through dedicated methods\nfleet.addLocation('ap-southeast-1', 5, 2, 10);\n```\n\n### Specifying an IAM role for a Fleet\n\nSome GameLift features require you to extend limited access to your AWS\nresources. This is done by creating an AWS IAM role. The GameLift Fleet class\nautomatically created an IAM role with all the minimum necessary permissions\nfor GameLift to access your resources. If you wish, you may\nspecify your own IAM role.\n\n```ts\ndeclare const build: gamelift.Build;\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('CloudWatchAgentServerPolicy'));\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n role: role\n});\n\n// Actions can also be grantted through dedicated method\nfleet.grant(role, 'gamelift:ListFleets');\n```\n\n### Alias\n\nA GameLift alias is used to abstract a fleet designation. Fleet designations\ntell Amazon GameLift where to search for available resources when creating new\ngame sessions for players. By using aliases instead of specific fleet IDs, you\ncan more easily and seamlessly switch player traffic from one fleet to another\nby changing the alias's target location.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n\n// Add an alias to an existing fleet using a dedicated fleet method\nconst liveAlias = fleet.addAlias('live');\n\n// You can also create a standalone alias\nnew gamelift.Alias(this, 'TerminalAlias', {\n aliasName: 'terminal-alias',\n terminalMessage: 'A terminal message',\n});\n```\n\nSee [Add an alias to a GameLift fleet](https://docs.aws.amazon.com/gamelift/latest/developerguide/aliases-creating.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Monitoring your Fleet\n\nGameLift is integrated with CloudWatch, so you can monitor the performance of\nyour game servers via logs and metrics.\n\n#### Fleet Metrics\n\nGameLift Fleet sends metrics to CloudWatch so that you can collect and analyze\nthe activity of your Fleet, including game and player sessions and server\nprocesses.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain threshold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift Fleet metrics with default configuration,\nsuch as `metricActiveInstances`, or `metricIdleInstances` (see [`IFleet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IFleet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift Fleet,\nGame sessions or server processes; the configurations are pre-populated with\nthe correct dimensions for the matchmaking configuration.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n// Alarm that triggers when the per-second average of not used instances exceed 10%\nconst instancesUsedRatio = new cloudwatch.MathExpression({\n expression: '1 - (activeInstances / idleInstances)',\n usingMetrics: {\n activeInstances: fleet.metric('ActiveInstances', { statistic: cloudwatch.Statistic.SUM }),\n idleInstances: fleet.metricIdleInstances(),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: instancesUsedRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n## Game session queue\n\nThe game session queue is the primary mechanism for processing new game session\nrequests and locating available game servers to host them. Although it is\npossible to request a new game session be hosted on specific fleet or location.\n\nThe `GameSessionQueue` resource creates a placement queue that processes requests for\nnew game sessions. A queue uses FleetIQ algorithms to determine the best placement\nlocations and find an available game server, then prompts the game server to start a\nnew game session. Queues can have destinations (GameLift fleets or aliases), which\ndetermine where the queue can place new game sessions. A queue can have destinations\nwith varied fleet type (Spot and On-Demand), instance type, and AWS Region.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\ndeclare const alias: gamelift.Alias;\n\nconst queue = new gamelift.GameSessionQueue(this, 'GameSessionQueue', {\n gameSessionQueueName: 'my-queue-name',\n destinations: [fleet]\n});\nqueue.addDestination(alias);\n```\n\nA more complex configuration can also be definied to override how FleetIQ algorithms prioritize game session placement in order to favour a destination based on `Cost`, `Latency`, `Destination order`or `Location`.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\ndeclare const topic: sns.Topic;\n\nnew gamelift.GameSessionQueue(this, 'MyGameSessionQueue', {\n gameSessionQueueName: 'test-gameSessionQueue',\n customEventData: 'test-event-data',\n allowedLocations: ['eu-west-1', 'eu-west-2'],\n destinations: [fleet],\n notificationTarget: topic,\n playerLatencyPolicies: [{\n maximumIndividualPlayerLatency: Duration.millis(100),\n policyDuration: Duration.seconds(300),\n }],\n priorityConfiguration: {\n locationOrder: [\n 'eu-west-1',\n 'eu-west-2',\n ],\n priorityOrder: [\n gamelift.PriorityType.LATENCY,\n gamelift.PriorityType.COST,\n gamelift.PriorityType.DESTINATION,\n gamelift.PriorityType.LOCATION,\n ],\n },\n timeout: Duration.seconds(300),\n });\n```\n\nSee [Setting up GameLift queues for game session placement](https://docs.aws.amazon.com/gamelift/latest/developerguide/realtime-script-uploading.html)\nin the *Amazon GameLift Developer Guide*.\n\n## GameLift FleetIQ\n\nThe GameLift FleetIQ solution is a game hosting layer that supplements the full\nset of computing resource management tools that you get with Amazon EC2 and\nAuto Scaling. This solution lets you directly manage your Amazon EC2 and Auto\nScaling resources and integrate as needed with other AWS services.\n\n### Defining a Game Server Group\n\nWhen using GameLift FleetIQ, you prepare to launch Amazon EC2 instances as\nusual: make an Amazon Machine Image (AMI) with your game server software,\ncreate an Amazon EC2 launch template, and define configuration settings for an\nAuto Scaling group. However, instead of creating an Auto Scaling group\ndirectly, you create a GameLift FleetIQ game server group with your Amazon EC2\nand Auto Scaling resources and configuration. All game server groups must have\nat least two instance types defined for it.\n\nOnce a game server group and Auto Scaling group are up and running with\ninstances deployed, when updating a Game Server Group instance, only certain\nproperties in the Auto Scaling group may be overwrite. For all other Auto\nScaling group properties, such as MinSize, MaxSize, and LaunchTemplate, you can\nmodify these directly on the Auto Scaling group using the AWS Console or\ndedicated Api.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Scaling Policy\n\nThe scaling policy uses the metric `PercentUtilizedGameServers` to maintain a\nbuffer of idle game servers that can immediately accommodate new games and\nplayers.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n autoScalingPolicy: {\n estimatedInstanceWarmup: Duration.minutes(5),\n targetTrackingConfiguration: 5\n }\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying an IAM role for GameLift\n\nThe GameLift FleetIQ class automatically creates an IAM role with all the minimum necessary\npermissions for GameLift to access your Amazon EC2 Auto Scaling groups. If you wish, you may\nspecify your own IAM role. It must have the correct permissions, or FleetIQ creation or resource usage may fail.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'),\n new iam.ServicePrincipal('autoscaling.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('GameLiftGameServerGroupPolicy'));\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n role: role\n});\n```\n\nSee [Controlling Access](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-iam-permissions-roles.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying VPC Subnets\n\nGameLift FleetIQ use by default, all supported GameLift FleetIQ Availability\nZones in your chosen region. You can override this parameter to specify VPCs\nsubnets that you've set up.\n\nThis property cannot be updated after the game server group is created, and the\ncorresponding Auto Scaling group will always use the property value that is set\nwith this request, even if the Auto Scaling group is updated directly.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'GameServerGroup', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }\n});\n```\n\n### FleetIQ Monitoring\n\nGameLift FleetIQ sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your Game server fleet, including the number of\nutilized game servers, and the number of game server interruption due to\nlimited Spot availability.\n\nYou can then use CloudWatch alarms to alert you, for example, when the portion\nof game servers that are currently supporting game executions exceed a certain\nthreshold which could means that your autoscaling policy need to be adjust to\nadd more instances to match with player demand.\n\nCDK provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FleetIQ;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const gameServerGroup: gamelift.IGameServerGroup;\n// Alarm that triggers when the percent of utilized game servers exceed 90%\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: gameServerGroup.metric('UtilizedGameServers'),\n threshold: 0.9,\n evaluationPeriods: 2,\n});\n```\n\nSee: [Monitoring with CloudWatch](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-metrics.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n"
|
|
3674
|
+
"markdown": "# Amazon GameLift Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\n[Amazon GameLift](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-intro.html) is a service used\nto deploy, operate, and scale dedicated, low-cost servers in the cloud for session-based multiplayer games. Built\non AWS global computing infrastructure, GameLift helps deliver high-performance, high-reliability game servers\nwhile dynamically scaling your resource usage to meet worldwide player demand.\n\nGameLift is composed of three main components:\n\n* GameLift FlexMatch which is a customizable matchmaking service for\nmultiplayer games. With FlexMatch, you can\nbuild a custom set of rules that defines what a multiplayer match looks like\nfor your game, and determines how to\nevaluate and select compatible players for each match. You can also customize\nkey aspects of the matchmaking\nprocess to fit your game, including fine-tuning the matching algorithm.\n\n* GameLift hosting for custom or realtime servers which helps you deploy,\noperate, and scale dedicated game servers. It regulates the resources needed to\nhost games, finds available game servers to host new game sessions, and puts\nplayers into games.\n\n* GameLift FleetIQ to optimize the use of low-cost Amazon Elastic Compute Cloud\n(Amazon EC2) Spot Instances for cloud-based game hosting. With GameLift\nFleetIQ, you can work directly with your hosting resources in Amazon EC2 and\nAmazon EC2 Auto Scaling while taking advantage of GameLift optimizations to\ndeliver inexpensive, resilient game hosting for your players\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project. It allows you to define components for your matchmaking\nconfiguration or game server fleet management system.\n\n## GameLift FlexMatch\n\n### Defining a Matchmaking configuration\n\nFlexMatch is available both as a GameLift game hosting solution (including\nRealtime Servers) and as a standalone matchmaking service. To set up a\nFlexMatch matchmaker to process matchmaking requests, you have to create a\nmatchmaking configuration based on a RuleSet.\n\nMore details about matchmaking ruleSet are covered [below](#matchmaking-ruleset).\n\nThere is two types of Matchmaking configuration:\n\nThrough a game session queue system to let FlexMatch forms matches and uses the specified GameLift queue to start a game session for the match.\n\n```ts\ndeclare const queue: gamelift.GameSessionQueue;\ndeclare const ruleSet: gamelift.MatchmakingRuleSet;\n\nnew gamelift.QueuedMatchmakingConfiguration(this, 'QueuedMatchmakingConfiguration', {\n matchmakingConfigurationName: 'test-queued-config-name',\n gameSessionQueues: [queue],\n ruleSet: ruleSet,\n});\n```\n\nOr through a standalone version to let FlexMatch forms matches and returns match information in an event.\n\n```ts\ndeclare const ruleSet: gamelift.MatchmakingRuleSet;\n\nnew gamelift.StandaloneMatchmakingConfiguration(this, 'StandaloneMatchmaking', {\n matchmakingConfigurationName: 'test-standalone-config-name',\n ruleSet: ruleSet,\n});\n```\n\n\nMore details about Game session queue are covered [below](#game-session-queue).\n\n### Matchmaking RuleSet\n\nEvery FlexMatch matchmaker must have a rule set. The rule set determines the\ntwo key elements of a match: your game's team structure and size, and how to\ngroup players together for the best possible match.\n\nFor example, a rule set might describe a match like this: Create a match with\ntwo teams of four to eight players each, one team is the cowboy and the other\nteam the aliens. A team can have novice and experienced players, but the\naverage skill of the two teams must be within 10 points of each other. If no\nmatch is made after 30 seconds, gradually relax the skill requirements.\n\n```ts\nnew gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset', 'ruleset.json')),\n});\n```\n\n### FlexMatch Monitoring\n\nYou can monitor GameLift FlexMatch activity for matchmaking configurations and\nmatchmaking rules using Amazon CloudWatch. These statistics are used to provide\na historical perspective on how your Gamelift FlexMatch solution is performing.\n\n#### FlexMatch Metrics\n\nGameLift FlexMatch sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your matchmaking solution, including match acceptance\nworkflow, ticket consumtion.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain thresold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift FlexMatch metrics with default configuration,\nsuch as `metricRuleEvaluationsPassed`, or `metricRuleEvaluationsFailed` (see\n[`IMatchmakingRuleSet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IMatchmakingRuleSet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FlexMatch;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const matchmakingRuleSet: gamelift.MatchmakingRuleSet;\n// Alarm that triggers when the per-second average of not placed matches exceed 10%\nconst ruleEvaluationRatio = new cloudwatch.MathExpression({\n expression: '1 - (ruleEvaluationsPassed / ruleEvaluationsFailed)',\n usingMetrics: {\n ruleEvaluationsPassed: matchmakingRuleSet.metricRuleEvaluationsPassed({ statistic: cloudwatch.Statistic.SUM }),\n ruleEvaluationsFailed: matchmakingRuleSet.metric('ruleEvaluationsFailed'),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: ruleEvaluationRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n\n## GameLift Hosting\n\n### Uploading builds and scripts to GameLift\n\nBefore deploying your GameLift-enabled multiplayer game servers for hosting with the GameLift service, you need to upload\nyour game server files. This section provides guidance on preparing and uploading custom game server build\nfiles or Realtime Servers server script files. When you upload files, you create a GameLift build or script resource, which\nyou then deploy on fleets of hosting resources.\n\nTo troubleshoot fleet activation problems related to the server script, see [Debug GameLift fleet issues](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html).\n\n#### Upload a custom server build to GameLift\n\nBefore uploading your configured game server to GameLift for hosting, package the game build files into a build directory.\nThis directory must include all components required to run your game servers and host game sessions, including the following:\n\n* Game server binaries – The binary files required to run the game server. A build can include binaries for multiple game\nservers built to run on the same platform. For a list of supported platforms, see [Download Amazon GameLift SDKs](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-supported.html).\n\n* Dependencies – Any dependent files that your game server executables require to run. Examples include assets, configuration\nfiles, and dependent libraries.\n\n* Install script – A script file to handle tasks that are required to fully install your game build on GameLift hosting\nservers. Place this file at the root of the build directory. GameLift runs the install script as part of fleet creation.\n\nYou can set up any application in your build, including your install script, to access your resources securely on other AWS\nservices.\n\n```ts\ndeclare const bucket: s3.Bucket;\nconst build = new gamelift.Build(this, 'Build', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n\nnew CfnOutput(this, 'BuildArn', { value: build.buildArn });\nnew CfnOutput(this, 'BuildId', { value: build.buildId });\n```\n\nTo specify a server SDK version you used when integrating your game server build with Amazon GameLift use the `serverSdkVersion` parameter:\n\n> See [Integrate games with custom game servers](https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-custom-intro.html) for more details.\n\n```ts\ndeclare const bucket: s3.Bucket;\nconst build = new gamelift.Build(this, 'Build', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\"),\n serverSdkVersion: '5.0.0',\n});\n```\n\n#### Upload a realtime server Script\n\nYour server script can include one or more files combined into a single .zip file for uploading. The .zip file must contain\nall files that your script needs to run.\n\nYou can store your zipped script files in either a local file directory or in an Amazon Simple Storage Service (Amazon S3)\nbucket or defines a directory asset which is archived as a .zip file and uploaded to S3 during deployment.\n\nAfter you create the script resource, GameLift deploys the script with a new Realtime Servers fleet. GameLift installs your\nserver script onto each instance in the fleet, placing the script files in `/local/game`.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew gamelift.Script(this, 'Script', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n```\n\n### Defining a GameLift Fleet\n\n#### Creating a custom game server fleet\n\nYour uploaded game servers are hosted on GameLift virtual computing resources,\ncalled instances. You set up your hosting resources by creating a fleet of\ninstances and deploying them to run your game servers. You can design a fleet\nto fit your game's needs.\n\n```ts\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: gamelift.Build.fromAsset(this, 'Build', path.join(__dirname, 'CustomerGameServer')),\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: 'test-launch-path',\n }],\n },\n});\n```\n\n### Managing game servers launch configuration\n\nGameLift uses a fleet's runtime configuration to determine the type and number\nof processes to run on each instance in the fleet. At a minimum, a runtime\nconfiguration contains one server process configuration that represents one\ngame server executable. You can also define additional server process\nconfigurations to run other types of processes related to your game. Each\nserver process configuration contains the following information:\n\n* The file name and path of an executable in your game build.\n\n* Optionally Parameters to pass to the process on launch.\n\n* The number of processes to run concurrently.\n\nA GameLift instance is limited to 50 processes running concurrently.\n\n```ts\ndeclare const build: gamelift.Build;\n// Server processes can be delcared in a declarative way through the constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n parameters: '-logFile /local/game/logs/myserver1935.log -port 1935',\n concurrentExecutions: 100,\n }]\n }\n});\n```\n\nSee [Managing how game servers are launched for hosting](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Defining an instance type\n\nGameLift uses Amazon Elastic Compute Cloud (Amazon EC2) resources, called\ninstances, to deploy your game servers and host game sessions for your players.\nWhen setting up a new fleet, you decide what type of instances your game needs\nand how to run game server processes on them (using a runtime configuration). All instances in a fleet use the same type of resources and the same runtime\nconfiguration. You can edit a fleet's runtime configuration and other fleet\nproperties, but the type of resources cannot be changed.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n }\n});\n```\n\n### Using Spot instances\n\nWhen setting up your hosting resources, you have the option of using Spot\nInstances, On-Demand Instances, or a combination.\n\nBy default, fleet are using on demand capacity.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n useSpot: true\n});\n```\n\n### Allowing Ingress traffic\n\nThe allowed IP address ranges and port settings that allow inbound traffic to\naccess game sessions on this fleet.\n\nNew game sessions are assigned an IP address/port number combination, which\nmust fall into the fleet's allowed ranges. Fleets with custom game builds must\nhave permissions explicitly set. For Realtime Servers fleets, GameLift\nautomatically opens two port ranges, one for TCP messaging and one for UDP.\n\n```ts\ndeclare const build: gamelift.Build;\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n ingressRules: [{\n source: gamelift.Peer.anyIpv4(),\n port: gamelift.Port.tcpRange(100, 200),\n }]\n});\n// Allowing a specific CIDR for port 1111 on UDP Protocol\nfleet.addIngressRule(gamelift.Peer.ipv4('1.2.3.4/32'), gamelift.Port.udp(1111));\n```\n\n### Managing locations\n\nA single Amazon GameLift fleet has a home Region by default (the Region you\ndeploy it to), but it can deploy resources to any number of GameLift supported\nRegions. Select Regions based on where your players are located and your\nlatency needs.\n\nBy default, home region is used as default location but we can add new locations if needed and define desired capacity\n\n```ts\ndeclare const build: gamelift.Build;\n\n// Locations can be added directly through constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n locations: [ {\n region: 'eu-west-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }, {\n region: 'us-east-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }]\n});\n\n// Or through dedicated methods\nfleet.addLocation('ap-southeast-1', 5, 2, 10);\n```\n\n### Specifying an IAM role for a Fleet\n\nSome GameLift features require you to extend limited access to your AWS\nresources. This is done by creating an AWS IAM role. The GameLift Fleet class\nautomatically created an IAM role with all the minimum necessary permissions\nfor GameLift to access your resources. If you wish, you may\nspecify your own IAM role.\n\n```ts\ndeclare const build: gamelift.Build;\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('CloudWatchAgentServerPolicy'));\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n role: role\n});\n\n// Actions can also be grantted through dedicated method\nfleet.grant(role, 'gamelift:ListFleets');\n```\n\n### Alias\n\nA GameLift alias is used to abstract a fleet designation. Fleet designations\ntell Amazon GameLift where to search for available resources when creating new\ngame sessions for players. By using aliases instead of specific fleet IDs, you\ncan more easily and seamlessly switch player traffic from one fleet to another\nby changing the alias's target location.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n\n// Add an alias to an existing fleet using a dedicated fleet method\nconst liveAlias = fleet.addAlias('live');\n\n// You can also create a standalone alias\nnew gamelift.Alias(this, 'TerminalAlias', {\n aliasName: 'terminal-alias',\n terminalMessage: 'A terminal message',\n});\n```\n\nSee [Add an alias to a GameLift fleet](https://docs.aws.amazon.com/gamelift/latest/developerguide/aliases-creating.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Monitoring your Fleet\n\nGameLift is integrated with CloudWatch, so you can monitor the performance of\nyour game servers via logs and metrics.\n\n#### Fleet Metrics\n\nGameLift Fleet sends metrics to CloudWatch so that you can collect and analyze\nthe activity of your Fleet, including game and player sessions and server\nprocesses.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain threshold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift Fleet metrics with default configuration,\nsuch as `metricActiveInstances`, or `metricIdleInstances` (see [`IFleet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IFleet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift Fleet,\nGame sessions or server processes; the configurations are pre-populated with\nthe correct dimensions for the matchmaking configuration.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n// Alarm that triggers when the per-second average of not used instances exceed 10%\nconst instancesUsedRatio = new cloudwatch.MathExpression({\n expression: '1 - (activeInstances / idleInstances)',\n usingMetrics: {\n activeInstances: fleet.metric('ActiveInstances', { statistic: cloudwatch.Statistic.SUM }),\n idleInstances: fleet.metricIdleInstances(),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: instancesUsedRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n## Game session queue\n\nThe game session queue is the primary mechanism for processing new game session\nrequests and locating available game servers to host them. Although it is\npossible to request a new game session be hosted on specific fleet or location.\n\nThe `GameSessionQueue` resource creates a placement queue that processes requests for\nnew game sessions. A queue uses FleetIQ algorithms to determine the best placement\nlocations and find an available game server, then prompts the game server to start a\nnew game session. Queues can have destinations (GameLift fleets or aliases), which\ndetermine where the queue can place new game sessions. A queue can have destinations\nwith varied fleet type (Spot and On-Demand), instance type, and AWS Region.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\ndeclare const alias: gamelift.Alias;\n\nconst queue = new gamelift.GameSessionQueue(this, 'GameSessionQueue', {\n gameSessionQueueName: 'my-queue-name',\n destinations: [fleet]\n});\nqueue.addDestination(alias);\n```\n\nA more complex configuration can also be definied to override how FleetIQ algorithms prioritize game session placement in order to favour a destination based on `Cost`, `Latency`, `Destination order`or `Location`.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\ndeclare const topic: sns.Topic;\n\nnew gamelift.GameSessionQueue(this, 'MyGameSessionQueue', {\n gameSessionQueueName: 'test-gameSessionQueue',\n customEventData: 'test-event-data',\n allowedLocations: ['eu-west-1', 'eu-west-2'],\n destinations: [fleet],\n notificationTarget: topic,\n playerLatencyPolicies: [{\n maximumIndividualPlayerLatency: Duration.millis(100),\n policyDuration: Duration.seconds(300),\n }],\n priorityConfiguration: {\n locationOrder: [\n 'eu-west-1',\n 'eu-west-2',\n ],\n priorityOrder: [\n gamelift.PriorityType.LATENCY,\n gamelift.PriorityType.COST,\n gamelift.PriorityType.DESTINATION,\n gamelift.PriorityType.LOCATION,\n ],\n },\n timeout: Duration.seconds(300),\n });\n```\n\nSee [Setting up GameLift queues for game session placement](https://docs.aws.amazon.com/gamelift/latest/developerguide/realtime-script-uploading.html)\nin the *Amazon GameLift Developer Guide*.\n\n## GameLift FleetIQ\n\nThe GameLift FleetIQ solution is a game hosting layer that supplements the full\nset of computing resource management tools that you get with Amazon EC2 and\nAuto Scaling. This solution lets you directly manage your Amazon EC2 and Auto\nScaling resources and integrate as needed with other AWS services.\n\n### Defining a Game Server Group\n\nWhen using GameLift FleetIQ, you prepare to launch Amazon EC2 instances as\nusual: make an Amazon Machine Image (AMI) with your game server software,\ncreate an Amazon EC2 launch template, and define configuration settings for an\nAuto Scaling group. However, instead of creating an Auto Scaling group\ndirectly, you create a GameLift FleetIQ game server group with your Amazon EC2\nand Auto Scaling resources and configuration. All game server groups must have\nat least two instance types defined for it.\n\nOnce a game server group and Auto Scaling group are up and running with\ninstances deployed, when updating a Game Server Group instance, only certain\nproperties in the Auto Scaling group may be overwrite. For all other Auto\nScaling group properties, such as MinSize, MaxSize, and LaunchTemplate, you can\nmodify these directly on the Auto Scaling group using the AWS Console or\ndedicated Api.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Scaling Policy\n\nThe scaling policy uses the metric `PercentUtilizedGameServers` to maintain a\nbuffer of idle game servers that can immediately accommodate new games and\nplayers.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n autoScalingPolicy: {\n estimatedInstanceWarmup: Duration.minutes(5),\n targetTrackingConfiguration: 5\n }\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying an IAM role for GameLift\n\nThe GameLift FleetIQ class automatically creates an IAM role with all the minimum necessary\npermissions for GameLift to access your Amazon EC2 Auto Scaling groups. If you wish, you may\nspecify your own IAM role. It must have the correct permissions, or FleetIQ creation or resource usage may fail.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'),\n new iam.ServicePrincipal('autoscaling.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('GameLiftGameServerGroupPolicy'));\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n role: role\n});\n```\n\nSee [Controlling Access](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-iam-permissions-roles.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying VPC Subnets\n\nGameLift FleetIQ use by default, all supported GameLift FleetIQ Availability\nZones in your chosen region. You can override this parameter to specify VPCs\nsubnets that you've set up.\n\nThis property cannot be updated after the game server group is created, and the\ncorresponding Auto Scaling group will always use the property value that is set\nwith this request, even if the Auto Scaling group is updated directly.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'GameServerGroup', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }\n});\n```\n\n### FleetIQ Monitoring\n\nGameLift FleetIQ sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your Game server fleet, including the number of\nutilized game servers, and the number of game server interruption due to\nlimited Spot availability.\n\nYou can then use CloudWatch alarms to alert you, for example, when the portion\nof game servers that are currently supporting game executions exceed a certain\nthreshold which could means that your autoscaling policy need to be adjust to\nadd more instances to match with player demand.\n\nCDK provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FleetIQ;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const gameServerGroup: gamelift.IGameServerGroup;\n// Alarm that triggers when the percent of utilized game servers exceed 90%\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: gameServerGroup.metric('UtilizedGameServers'),\n threshold: 0.9,\n evaluationPeriods: 2,\n});\n```\n\nSee: [Monitoring with CloudWatch](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-metrics.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n"
|
|
3688
3675
|
},
|
|
3689
3676
|
"repository": {
|
|
3690
3677
|
"directory": "packages/@aws-cdk/aws-gamelift-alpha",
|
|
@@ -10678,7 +10665,7 @@
|
|
|
10678
10665
|
"see": "https://docs.aws.amazon.com/gamelift/latest/flexmatchguide/match-rulesets.html",
|
|
10679
10666
|
"stability": "experimental",
|
|
10680
10667
|
"summary": "Creates a new rule set for FlexMatch matchmaking.",
|
|
10681
|
-
"example": "new gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset
|
|
10668
|
+
"example": "new gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset', 'ruleset.json')),\n});"
|
|
10682
10669
|
},
|
|
10683
10670
|
"fqn": "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSet",
|
|
10684
10671
|
"initializer": {
|
|
@@ -11105,7 +11092,7 @@
|
|
|
11105
11092
|
"docs": {
|
|
11106
11093
|
"stability": "experimental",
|
|
11107
11094
|
"summary": "Properties for a new matchmaking ruleSet.",
|
|
11108
|
-
"example": "new gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset
|
|
11095
|
+
"example": "new gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset', 'ruleset.json')),\n});",
|
|
11109
11096
|
"custom": {
|
|
11110
11097
|
"exampleMetadata": "infused"
|
|
11111
11098
|
}
|
|
@@ -12194,7 +12181,7 @@
|
|
|
12194
12181
|
"remarks": "For example, a rule set might describe a match like this:\n- Create a match with two teams of five players each, one team is the defenders and the other team the invaders.\n- A team can have novice and experienced players, but the average skill of the two teams must be within 10 points of each other.\n- If no match is made after 30 seconds, gradually relax the skill requirements.",
|
|
12195
12182
|
"stability": "experimental",
|
|
12196
12183
|
"summary": "The rule set determines the two key elements of a match: your game's team structure and size, and how to group players together for the best possible match.",
|
|
12197
|
-
"example": "new gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset
|
|
12184
|
+
"example": "new gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset', 'ruleset.json')),\n});",
|
|
12198
12185
|
"custom": {
|
|
12199
12186
|
"exampleMetadata": "infused"
|
|
12200
12187
|
}
|
|
@@ -13359,6 +13346,6 @@
|
|
|
13359
13346
|
"symbolId": "lib/standalone-matchmaking-configuration:StandaloneMatchmakingConfigurationProps"
|
|
13360
13347
|
}
|
|
13361
13348
|
},
|
|
13362
|
-
"version": "2.
|
|
13349
|
+
"version": "2.127.0-alpha.0",
|
|
13363
13350
|
"fingerprint": "**********"
|
|
13364
13351
|
}
|
package/.jsii.tabl.json.gz
CHANGED
|
Binary file
|
package/README.md
CHANGED
|
@@ -99,7 +99,7 @@ match is made after 30 seconds, gradually relax the skill requirements.
|
|
|
99
99
|
```ts
|
|
100
100
|
new gamelift.MatchmakingRuleSet(this, 'RuleSet', {
|
|
101
101
|
matchmakingRuleSetName: 'my-test-ruleset',
|
|
102
|
-
content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset
|
|
102
|
+
content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset', 'ruleset.json')),
|
|
103
103
|
});
|
|
104
104
|
```
|
|
105
105
|
|
package/lib/alias.js
CHANGED
|
@@ -19,7 +19,7 @@ class AliasBase extends cdk.Resource {
|
|
|
19
19
|
}
|
|
20
20
|
exports.AliasBase = AliasBase;
|
|
21
21
|
_a = JSII_RTTI_SYMBOL_1;
|
|
22
|
-
AliasBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.AliasBase", version: "2.
|
|
22
|
+
AliasBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.AliasBase", version: "2.127.0-alpha.0" };
|
|
23
23
|
/**
|
|
24
24
|
* A Amazon GameLift alias is used to abstract a fleet designation.
|
|
25
25
|
* Fleet designations tell GameLift where to search for available resources when creating new game sessions for players.
|
|
@@ -144,5 +144,5 @@ class Alias extends AliasBase {
|
|
|
144
144
|
}
|
|
145
145
|
exports.Alias = Alias;
|
|
146
146
|
_b = JSII_RTTI_SYMBOL_1;
|
|
147
|
-
Alias[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Alias", version: "2.
|
|
147
|
+
Alias[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Alias", version: "2.127.0-alpha.0" };
|
|
148
148
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhbGlhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx3Q0FBd0M7QUFJeEMsMkRBQW9EO0FBNEZwRDs7R0FFRztBQUNILE1BQXNCLFNBQVUsU0FBUSxHQUFHLENBQUMsUUFBUTtJQVdsRDs7T0FFRztJQUNILElBQVcseUJBQXlCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztLQUN0Qjs7QUFoQkgsOEJBaUJDOzs7QUFFRDs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxNQUFhLEtBQU0sU0FBUSxTQUFTO0lBQ2xDOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFdBQVcsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxPQUFlO1FBQzlELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztLQUNsRTtJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxRQUFnQjtRQUNoRSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7S0FDcEU7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjs7Ozs7Ozs7OztRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPO1lBQzNCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFB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RUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM1QyxPQUFPLEVBQUUsVUFBVTtZQUNuQixRQUFRLEVBQUUsT0FBTztZQUNqQixZQUFZLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDMUIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsbUJBQW1CO1NBQzdDLENBQUMsQ0FBQztLQUNKO0lBRU8sb0JBQW9CLENBQUMsS0FBaUI7UUFDNUMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFHLENBQUM7WUFDakIsT0FBTztnQkFDTCxPQUFPLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUM1QixJQUFJLEVBQUUsUUFBUTthQUNmLENBQUM7UUFDSixDQUFDO1FBQ0QsT0FBTztZQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsZUFBZTtZQUM5QixJQUFJLEVBQUUsVUFBVTtTQUNqQixDQUFDO0tBQ0g7O0FBbEhILHNCQW1IQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSUZsZWV0IH0gZnJvbSAnLi9mbGVldC1iYXNlJztcbmltcG9ydCB7IElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb24gfSBmcm9tICcuL2dhbWUtc2Vzc2lvbi1xdWV1ZSc7XG5pbXBvcnQgeyBDZm5BbGlhcyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVsaWZ0IEFsaWFzIGZvciBhIEdhbWVsaWZ0IGZsZWV0IGRlc3RpbmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElBbGlhcyBleHRlbmRzIGNkay5JUmVzb3VyY2UsIElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb24ge1xuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGFsaWFzLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBhbGlhc0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGFsaWFzLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBhbGlhc0Fybjogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBnYW1lbGlmdC5BbGlhc2AuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxpYXNPcHRpb25zIHtcbiAgLyoqXG4gICAqIERlc2NyaXB0aW9uIGZvciB0aGUgYWxpYXNcbiAgICpcbiAgICogQGRlZmF1bHQgTm8gZGVzY3JpcHRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEEgZnVsbCBzcGVjaWZpY2F0aW9uIG9mIGFuIGFsaWFzIHRoYXQgY2FuIGJlIHVzZWQgdG8gaW1wb3J0IGl0IGZsdWVudGx5IGludG8gdGhlIENESyBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBbGlhc0F0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgYWxpYXNcbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBhbGlhc0FybmAgYW5kIGBhbGlhc0lkYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGFsaWFzSWRgLlxuICAgKi9cbiAgcmVhZG9ubHkgYWxpYXNBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBhbGlhc1xuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGFsaWFzSWRgIGFuZCBgYWxpYXNBcm5gICBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGFsaWFzQXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGFsaWFzSWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgRmxlZXQgYWxpYXNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBbGlhc1Byb3BzIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhpcyBhbGlhc1xuICAgKi9cbiAgcmVhZG9ubHkgYWxpYXNOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgaHVtYW4tcmVhZGFibGUgZGVzY3JpcHRpb24gb2YgdGhlIGFsaWFzXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGRlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQSBmbGVldCB0aGF0IHRoZSBhbGlhcyBwb2ludHMgdG8uXG4gICAqIElmIHNwZWNpZmllZCwgdGhlIGFsaWFzIHJlc29sdmVzIHRvIG9uZSBzcGVjaWZpYyBmbGVldC5cbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBmbGVldGAgYW5kIGB0ZXJtaW5hbE1lc3NhZ2VgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGZsZWV0IHRoYXQgdGhlIGFsaWFzIHBvaW50cyB0by5cbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0PzogSUZsZWV0O1xuXG4gIC8qKlxuICAgKiBUaGUgbWVzc2FnZSB0ZXh0IHRvIGJlIHVzZWQgd2l0aCBhIHRlcm1pbmFsIHJvdXRpbmcgc3RyYXRlZ3kuXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZmxlZXRgIGFuZCBgdGVybWluYWxNZXNzYWdlYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyB0ZXJtaW5hbCBtZXNzYWdlXG4gICAqL1xuICByZWFkb25seSB0ZXJtaW5hbE1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQmFzZSBjbGFzcyBmb3IgbmV3IGFuZCBpbXBvcnRlZCBHYW1lTGlmdCBBbGlhcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFsaWFzQmFzZSBleHRlbmRzIGNkay5SZXNvdXJjZSBpbXBsZW1lbnRzIElBbGlhcyB7XG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgYWxpYXMuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYWxpYXNJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBhbGlhc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGFsaWFzQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gdG8gcHV0IGludG8gdGhlIGRlc3RpbmF0aW9uIGZpZWxkIG9mIGEgZ2FtZSBzZXNzaW9uIHF1ZXVlXG4gICAqL1xuICBwdWJsaWMgZ2V0IHJlc291cmNlQXJuRm9yRGVzdGluYXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuYWxpYXNBcm47XG4gIH1cbn1cblxuLyoqXG4gKiBBIEFtYXpvbiBHYW1lTGlmdCBhbGlhcyBpcyB1c2VkIHRvIGFic3RyYWN0IGEgZmxlZXQgZGVzaWduYXRpb24uXG4gKiBGbGVldCBkZXNpZ25hdGlvbnMgdGVsbCBHYW1lTGlmdCB3aGVyZSB0byBzZWFyY2ggZm9yIGF2YWlsYWJsZSByZXNvdXJjZXMgd2hlbiBjcmVhdGluZyBuZXcgZ2FtZSBzZXNzaW9ucyBmb3IgcGxheWVycy5cbiAqIFVzZSBhbGlhc2VzIGluc3RlYWQgb2Ygc3BlY2lmaWMgZmxlZXQgSURzIHRvIHNlYW1sZXNzbHkgc3dpdGNoIHBsYXllciB0cmFmZmljIGZyb20gb25lIGZsZWV0IHRvIGFub3RoZXIgYnkgY2hhbmdpbmcgdGhlIGFsaWFzJ3MgdGFyZ2V0IGxvY2F0aW9uLlxuICpcbiAqIEFsaWFzZXMgYXJlIHVzZWZ1bCBpbiBnYW1lcyB0aGF0IGRvbid0IHVzZSBxdWV1ZXMuXG4gKiBTd2l0Y2hpbmcgZmxlZXRzIGluIGEgcXVldWUgaXMgYSBzaW1wbGUgbWF0dGVyIG9mIGNyZWF0aW5nIGEgbmV3IGZsZWV0LCBhZGRpbmcgaXQgdG8gdGhlIHF1ZXVlLCBhbmQgcmVtb3ZpbmcgdGhlIG9sZCBmbGVldCwgbm9uZSBvZiB3aGljaCBpcyB2aXNpYmxlIHRvIHBsYXllcnMuXG4gKiBJbiBjb250cmFzdCwgZ2FtZSBjbGllbnRzIHRoYXQgZG9uJ3QgdXNlIHF1ZXVlcyBtdXN0IHNwZWNpZnkgd2hpY2ggZmxlZXQgdG8gdXNlIHdoZW4gY29tbXVuaWNhdGluZyB3aXRoIHRoZSBHYW1lTGlmdCBzZXJ2aWNlLlxuICogV2l0aG91dCBhbGlhc2VzLCBhIGZsZWV0IHN3aXRjaCByZXF1aXJlcyB1cGRhdGVzIHRvIHlvdXIgZ2FtZSBjb2RlIGFuZCBwb3NzaWJseSBkaXN0cmlidXRpb24gb2YgYW4gdXBkYXRlZCBnYW1lIGNsaWVudHMgdG8gcGxheWVycy5cbiAqXG4gKiBXaGVuIHVwZGF0aW5nIHRoZSBmbGVldC1pZCBhbiBhbGlhcyBwb2ludHMgdG8sIHRoZXJlIGlzIGEgdHJhbnNpdGlvbiBwZXJpb2Qgb2YgdXAgdG8gMiBtaW51dGVzIHdoZXJlIGdhbWUgc2Vzc2lvbnMgb24gdGhlIGFsaWFzIG1heSBlbmQgdXAgb24gdGhlIG9sZCBmbGVldC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvYWxpYXNlcy1jcmVhdGluZy5odG1sXG4gKlxuICogQHJlc291cmNlIEFXUzo6R2FtZUxpZnQ6OkFsaWFzXG4gKi9cbmV4cG9ydCBjbGFzcyBBbGlhcyBleHRlbmRzIEFsaWFzQmFzZSB7XG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgYWxpYXMgZnJvbSBpdHMgaWRlbnRpZmllci5cbiAgICovXG4gIHN0YXRpYyBmcm9tQWxpYXNJZChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhbGlhc0lkOiBzdHJpbmcpOiBJQWxpYXMge1xuICAgIHJldHVybiB0aGlzLmZyb21BbGlhc0F0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGFsaWFzSWQ6IGFsaWFzSWQgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGFsaWFzIGZyb20gaXRzIEFSTi5cbiAgICovXG4gIHN0YXRpYyBmcm9tQWxpYXNBcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYWxpYXNBcm46IHN0cmluZyk6IElBbGlhcyB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUFsaWFzQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgYWxpYXNBcm46IGFsaWFzQXJuIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBhbGlhcyBmcm9tIGl0cyBhdHRyaWJ1dGVzLlxuICAgKi9cbiAgc3RhdGljIGZyb21BbGlhc0F0dHJpYnV0ZXMoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYXR0cnM6IEFsaWFzQXR0cmlidXRlcyk6IElBbGlhcyB7XG4gICAgaWYgKCFhdHRycy5hbGlhc0lkICYmICFhdHRycy5hbGlhc0Fybikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFaXRoZXIgYWxpYXNJZCBvciBhbGlhc0FybiBtdXN0IGJlIHByb3ZpZGVkIGluIEFsaWFzQXR0cmlidXRlcycpO1xuICAgIH1cbiAgICBjb25zdCBhbGlhc0lkID0gYXR0cnMuYWxpYXNJZCA/P1xuICAgICAgY2RrLlN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybihhdHRycy5hbGlhc0FybiEsIGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSkucmVzb3VyY2VOYW1lO1xuXG4gICAgaWYgKCFhbGlhc0lkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGFsaWFzIGlkZW50aWZpZXIgZm91bmQgaW4gQVJOOiAnJHthdHRycy5hbGlhc0Fybn0nYCk7XG4gICAgfVxuXG4gICAgY29uc3QgYWxpYXNBcm4gPSBhdHRycy5hbGlhc0FybiA/PyBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdhbGlhcycsXG4gICAgICByZXNvdXJjZU5hbWU6IGF0dHJzLmFsaWFzSWQsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBBbGlhc0Jhc2Uge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGFsaWFzSWQgPSBhbGlhc0lkITtcbiAgICAgIHB1YmxpYyByZWFkb25seSBhbGlhc0FybiA9IGFsaWFzQXJuO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBhbGlhc0FybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGFsaWFzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFsaWFzSWQ6IHN0cmluZztcblxuICAvKipcbiAgICAqIFRoZSBBUk4gb2YgdGhlIGFsaWFzLlxuICAgICovXG4gIHB1YmxpYyByZWFkb25seSBhbGlhc0Fybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGZsZWV0IHRoYXQgdGhlIGFsaWFzIHBvaW50cyB0by5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBmbGVldD86IElGbGVldDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQWxpYXNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5hbGlhc05hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAoIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuYWxpYXNOYW1lKSkge1xuICAgICAgaWYgKHByb3BzLmFsaWFzTmFtZS5sZW5ndGggPiAxMDI0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgQWxpYXMgbmFtZSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuYWxpYXNOYW1lLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZGVzY3JpcHRpb24pKSB7XG4gICAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24ubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEFsaWFzIGRlc2NyaXB0aW9uIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5kZXNjcmlwdGlvbi5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wcy50ZXJtaW5hbE1lc3NhZ2UgJiYgIXByb3BzLmZsZWV0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBhIHRlcm1pbmFsIG1lc3NhZ2Ugb3IgYSBmbGVldCBtdXN0IGJlIGJpbmRlZCB0byB0aGlzIEFsaWFzLicpO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy50ZXJtaW5hbE1lc3NhZ2UgJiYgcHJvcHMuZmxlZXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGEgdGVybWluYWwgbWVzc2FnZSBvciBhIGZsZWV0IG11c3QgYmUgYmluZGVkIHRvIHRoaXMgQWxpYXMsIG5vdCBib3RoLicpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkFsaWFzKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLmFsaWFzTmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIHJvdXRpbmdTdHJhdGVneTogdGhpcy5wYXJzZVJvdXRpbmdTdHJhdGVneShwcm9wcyksXG4gICAgfSk7XG5cbiAgICB0aGlzLmFsaWFzSWQgPSB0aGlzLmdldFJlc291cmNlTmFtZUF0dHJpYnV0ZShyZXNvdXJjZS5yZWYpO1xuICAgIHRoaXMuYWxpYXNBcm4gPSBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdhbGlhcycsXG4gICAgICByZXNvdXJjZU5hbWU6IHRoaXMuYWxpYXNJZCxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZVJvdXRpbmdTdHJhdGVneShwcm9wczogQWxpYXNQcm9wcyk6IENmbkFsaWFzLlJvdXRpbmdTdHJhdGVneVByb3BlcnR5IHtcbiAgICBpZiAocHJvcHMuZmxlZXQgKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBmbGVldElkOiBwcm9wcy5mbGVldC5mbGVldElkLFxuICAgICAgICB0eXBlOiAnU0lNUExFJyxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBtZXNzYWdlOiBwcm9wcy50ZXJtaW5hbE1lc3NhZ2UsXG4gICAgICB0eXBlOiAnVEVSTUlOQUwnLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
package/lib/build-fleet.js
CHANGED
|
@@ -151,5 +151,5 @@ class BuildFleet extends fleet_base_1.FleetBase {
|
|
|
151
151
|
}
|
|
152
152
|
exports.BuildFleet = BuildFleet;
|
|
153
153
|
_a = JSII_RTTI_SYMBOL_1;
|
|
154
|
-
BuildFleet[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildFleet", version: "2.
|
|
154
|
+
BuildFleet[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildFleet", version: "2.127.0-alpha.0" };
|
|
155
155
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZmxlZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidWlsZC1mbGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwyQ0FBMkM7QUFDM0Msd0NBQXdDO0FBR3hDLDZDQUE2RDtBQUM3RCwyREFBb0Q7QUE4QnBEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsVUFBVyxTQUFRLHNCQUFTO0lBRXZDOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLFlBQW9CO1FBQ3hFLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztLQUN2RTtJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLGFBQXFCO1FBQzFFLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztLQUN6RTtJQTZCRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsWUFBWSxFQUFFLEtBQUssQ0FBQyxTQUFTO1NBQzlCLENBQUMsQ0FBQztRQUxZLGlCQUFZLEdBQWtCLEVBQUUsQ0FBQzs7Ozs7OytDQXpDdkMsVUFBVTs7OztRQWdEbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzdDLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxFQUFFLENBQUM7Z0JBQ2xDLE1BQU0sSUFBSSxLQUFLLENBQUMsNkRBQTZELEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxjQUFjLENBQUMsQ0FB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QUFFO2FBQy9CLENBQUM7UUFDSixDQUFDO0tBQ0Y7O0FBNUpILGdDQTZKQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSUJ1aWxkIH0gZnJvbSAnLi9idWlsZCc7XG5pbXBvcnQgeyBGbGVldEJhc2UsIEZsZWV0UHJvcHMsIElGbGVldCB9IGZyb20gJy4vZmxlZXQtYmFzZSc7XG5pbXBvcnQgeyBDZm5GbGVldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5pbXBvcnQgeyBQb3J0LCBJUGVlciwgSW5ncmVzc1J1bGUgfSBmcm9tICcuL2luZ3Jlc3MtcnVsZSc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVMaWZ0IEZsZWV0IHVzZWQgdG8gcnVuIGEgY3VzdG9tIGdhbWUgYnVpbGQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUJ1aWxkRmxlZXQgZXh0ZW5kcyBJRmxlZXQge31cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBHYW1lbGlmdCBidWlsZCBmbGVldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkRmxlZXRQcm9wcyBleHRlbmRzIEZsZWV0UHJvcHMge1xuICAvKipcbiAgICogQSBidWlsZCB0byBiZSBkZXBsb3llZCBvbiB0aGUgZmxlZXQuXG4gICAqIFRoZSBidWlsZCBtdXN0IGhhdmUgYmVlbiBzdWNjZXNzZnVsbHkgdXBsb2FkZWQgdG8gQW1hem9uIEdhbWVMaWZ0IGFuZCBiZSBpbiBhIGBSRUFEWWAgc3RhdHVzLlxuICAgKlxuICAgKiBUaGlzIGZsZWV0IHNldHRpbmcgY2Fubm90IGJlIGNoYW5nZWQgb25jZSB0aGUgZmxlZXQgaXMgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IElCdWlsZDtcblxuICAvKipcbiAgICogVGhlIGFsbG93ZWQgSVAgYWRkcmVzcyByYW5nZXMgYW5kIHBvcnQgc2V0dGluZ3MgdGhhdCBhbGxvdyBpbmJvdW5kIHRyYWZmaWMgdG8gYWNjZXNzIGdhbWUgc2Vzc2lvbnMgb24gdGhpcyBmbGVldC5cbiAgICpcbiAgICogVGhpcyBwcm9wZXJ0eSBtdXN0IGJlIHNldCBiZWZvcmUgcGxheWVycyBjYW4gY29ubmVjdCB0byBnYW1lIHNlc3Npb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBpbmJvdW5kIHRyYWZmaWMgYWxsb3dlZFxuICAgKi9cbiAgcmVhZG9ubHkgaW5ncmVzc1J1bGVzPzogSW5ncmVzc1J1bGVbXTtcbn1cblxuLyoqXG4gKiBBIGZsZWV0IGNvbnRhaW5zIEFtYXpvbiBFbGFzdGljIENvbXB1dGUgQ2xvdWQgKEFtYXpvbiBFQzIpIGluc3RhbmNlcyB0aGF0IEdhbWVMaWZ0IGhvc3RzLlxuICogQSBmbGVldCB1c2VzIHRoZSBjb25maWd1cmF0aW9uIGFuZCBzY2FsaW5nIGxvZ2ljIHRoYXQgeW91IGRlZmluZSB0byBydW4geW91ciBnYW1lIHNlcnZlciBidWlsZC4gWW91IGNhbiB1c2UgYSBmbGVldCBkaXJlY3RseSB3aXRob3V0IGEgcXVldWUuXG4gKiBZb3UgY2FuIGFsc28gYXNzb2NpYXRlIG11bHRpcGxlIGZsZWV0cyB3aXRoIGEgR2FtZUxpZnQgcXVldWUuXG4gKlxuICogRm9yIGV4YW1wbGUsIHlvdSBjYW4gdXNlIFNwb3QgSW5zdGFuY2UgZmxlZXRzIGNvbmZpZ3VyZWQgd2l0aCB5b3VyIHByZWZlcnJlZCBsb2NhdGlvbnMsIGFsb25nIHdpdGggYSBiYWNrdXAgT24tRGVtYW5kIEluc3RhbmNlIGZsZWV0IHdpdGggdGhlIHNhbWUgbG9jYXRpb25zLlxuICogVXNpbmcgbXVsdGlwbGUgU3BvdCBJbnN0YW5jZSBmbGVldHMgb2YgZGlmZmVyZW50IGluc3RhbmNlIHR5cGVzIHJlZHVjZXMgdGhlIGNoYW5jZSBvZiBuZWVkaW5nIE9uLURlbWFuZCBJbnN0YW5jZSBwbGFjZW1lbnQuXG4gKlxuICogQHJlc291cmNlIEFXUzo6R2FtZUxpZnQ6OkZsZWV0XG4gKi9cbmV4cG9ydCBjbGFzcyBCdWlsZEZsZWV0IGV4dGVuZHMgRmxlZXRCYXNlIGltcGxlbWVudHMgSUJ1aWxkRmxlZXQge1xuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZmxlZXQgZnJvbSBpdHMgaWRlbnRpZmllci5cbiAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRGbGVldElkKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGJ1aWxkRmxlZXRJZDogc3RyaW5nKTogSUJ1aWxkRmxlZXQge1xuICAgIHJldHVybiB0aGlzLmZyb21GbGVldEF0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGZsZWV0SWQ6IGJ1aWxkRmxlZXRJZCB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZmxlZXQgZnJvbSBpdHMgQVJOLlxuICAgKi9cbiAgc3RhdGljIGZyb21CdWlsZEZsZWV0QXJuKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGJ1aWxkRmxlZXRBcm46IHN0cmluZyk6IElCdWlsZEZsZWV0IHtcbiAgICByZXR1cm4gdGhpcy5mcm9tRmxlZXRBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBmbGVldEFybjogYnVpbGRGbGVldEFybiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgZmxlZXQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZmxlZXRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBmbGVldC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBmbGVldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYnVpbGQgY29udGVudCBvZiB0aGUgZmxlZXRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjb250ZW50OiBJQnVpbGQ7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBHYW1lTGlmdCBhc3N1bWVzIGJ5IGZsZWV0IGluc3RhbmNlcyB0byBhY2Nlc3MgQVdTIHJlc3NvdXJjZXMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcm9sZTogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZmxlZXQgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWw6IGlhbS5JUHJpbmNpcGFsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaW5ncmVzc1J1bGVzOiBJbmdyZXNzUnVsZVtdID0gW107XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEJ1aWxkRmxlZXRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5mbGVldE5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAoIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZmxlZXROYW1lKSkge1xuICAgICAgaWYgKHByb3BzLmZsZWV0TmFtZS5sZW5ndGggPiAxMDI0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRmxlZXQgbmFtZSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuZmxlZXROYW1lLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZGVzY3JpcHRpb24pKSB7XG4gICAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24ubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZsZWV0IGRlc2NyaXB0aW9uIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5kZXNjcmlwdGlvbi5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLm1pblNpemUgJiYgcHJvcHMubWluU2l6ZSA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlIG1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGluIHRoZSBGbGVldCBjYW5ub3QgYmUgbG93ZXIgdGhhbiAwLCBnaXZlbiAke3Byb3BzLm1pblNpemV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLm1heFNpemUgJiYgcHJvcHMubWF4U2l6ZSA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlIG1heGltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGluIHRoZSBGbGVldCBjYW5ub3QgYmUgbG93ZXIgdGhhbiAwLCBnaXZlbiAke3Byb3BzLm1heFNpemV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnBlZXJWcGMpIHtcbiAgICAgIHRoaXMud2FyblZwY1BlZXJpbmdBdXRob3JpemF0aW9ucyh0aGlzKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgYWxsIGxvY2F0aW9uc1xuICAgIGlmIChwcm9wcy5sb2NhdGlvbnMgJiYgcHJvcHMubG9jYXRpb25zPy5sZW5ndGggPiAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDEwMCBsb2NhdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0LCBnaXZlbiAke3Byb3BzLmxvY2F0aW9ucy5sZW5ndGh9YCk7XG4gICAgfVxuICAgIChwcm9wcy5sb2NhdGlvbnMgfHwgW10pLmZvckVhY2godGhpcy5hZGRJbnRlcm5hbExvY2F0aW9uLmJpbmQodGhpcykpO1xuXG4gICAgLy8gQWRkIGFsbCBJbmdyZXNzIHJ1bGVzXG4gICAgaWYgKHByb3BzLmluZ3Jlc3NSdWxlcyAmJiBwcm9wcy5pbmdyZXNzUnVsZXM/Lmxlbmd0aCA+IDUwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiA1MCBpbmdyZXNzIHJ1bGVzIGFyZSBhbGxvd2VkIHBlciBmbGVldCwgZ2l2ZW4gJHtwcm9wcy5pbmdyZXNzUnVsZXMubGVuZ3RofWApO1xuICAgIH1cbiAgICAocHJvcHMuaW5ncmVzc1J1bGVzIHx8IFtdKS5mb3JFYWNoKHRoaXMuYWRkSW50ZXJuYWxJbmdyZXNzUnVsZS5iaW5kKHRoaXMpKTtcblxuICAgIHRoaXMuY29udGVudCA9IHByb3BzLmNvbnRlbnQ7XG4gICAgdGhpcy5yb2xlID0gcHJvcHMucm9sZSA/PyBuZXcgaWFtLlJvbGUodGhpcywgJ1NlcnZpY2VSb2xlJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLkNvbXBvc2l0ZVByaW5jaXBhbChcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdnYW1lbGlmdC5hbWF6b25hd3MuY29tJyksXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZWMyLmFtYXpvbmF3cy5jb20nKSksXG4gICAgfSk7XG4gICAgdGhpcy5ncmFudFByaW5jaXBhbCA9IHRoaXMucm9sZTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkZsZWV0KHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGJ1aWxkSWQ6IHRoaXMuY29udGVudC5idWlsZElkLFxuICAgICAgY2VydGlmaWNhdGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgIGNlcnRpZmljYXRlVHlwZTogcHJvcHMudXNlQ2VydGlmaWNhdGUgPyAnR0VORVJBVEVEJzogJ0RJU0FCTEVEJyxcbiAgICAgIH0sXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBkZXNpcmVkRWMySW5zdGFuY2VzOiBwcm9wcy5kZXNpcmVkQ2FwYWNpdHksXG4gICAgICBlYzJJbmJvdW5kUGVybWlzc2lvbnM6IGNkay5MYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMucGFyc2VJbmdyZXNzUnVsZXMoKSB9KSxcbiAgICAgIGVjMkluc3RhbmNlVHlwZTogcHJvcHMuaW5zdGFuY2VUeXBlLnRvU3RyaW5nKCksXG4gICAgICBmbGVldFR5cGU6IHByb3BzLnVzZVNwb3QgPyAnU1BPVCcgOiAnT05fREVNQU5EJyxcbiAgICAgIGluc3RhbmNlUm9sZUFybjogdGhpcy5yb2xlLnJvbGVBcm4sXG4gICAgICBsb2NhdGlvbnM6IGNkay5MYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMucGFyc2VMb2NhdGlvbnMoKSB9KSxcbiAgICAgIG1heFNpemU6IHByb3BzLm1heFNpemUgPyBwcm9wcy5tYXhTaXplIDogMSxcbiAgICAgIG1pblNpemU6IHByb3BzLm1pblNpemUgPyBwcm9wcy5taW5TaXplIDogMCxcbiAgICAgIG5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgbmV3R2FtZVNlc3Npb25Qcm90ZWN0aW9uUG9saWN5OiBwcm9wcy5wcm90ZWN0TmV3R2FtZVNlc3Npb24gPyAnRnVsbFByb3RlY3Rpb24nIDogJ05vUHJvdGVjdGlvbicsXG4gICAgICBwZWVyVnBjQXdzQWNjb3VudElkOiBwcm9wcy5wZWVyVnBjICYmIHByb3BzLnBlZXJWcGMuZW52LmFjY291bnQsXG4gICAgICBwZWVyVnBjSWQ6IHByb3BzLnBlZXJWcGMgJiYgcHJvcHMucGVlclZwYy52cGNJZCxcbiAgICAgIHJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeTogdGhpcy5wYXJzZVJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeShwcm9wcyksXG4gICAgICBydW50aW1lQ29uZmlndXJhdGlvbjogdGhpcy5wYXJzZVJ1bnRpbWVDb25maWd1cmF0aW9uKHByb3BzKSxcbiAgICB9KTtcblxuICAgIHRoaXMuZmxlZXRJZCA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gICAgdGhpcy5mbGVldEFybiA9IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2ZsZWV0JyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5mbGVldElkLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBpbmdyZXNzIHJ1bGUgdG8gYWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIGFjY2VzcyBnYW1lIHNlc3Npb25zIG9uIHRoaXMgZmxlZXQuXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2UgQSByYW5nZSBvZiBhbGxvd2VkIElQIGFkZHJlc3Nlc1xuICAgKiBAcGFyYW0gcG9ydCBUaGUgcG9ydCByYW5nZSB1c2VkIGZvciBpbmdyZXNzIHRyYWZmaWNcbiAgICovXG4gIHB1YmxpYyBhZGRJbmdyZXNzUnVsZShzb3VyY2U6IElQZWVyLCBwb3J0OiBQb3J0KSB7XG4gICAgdGhpcy5hZGRJbnRlcm5hbEluZ3Jlc3NSdWxlKHtcbiAgICAgIHNvdXJjZTogc291cmNlLFxuICAgICAgcG9ydDogcG9ydCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkSW50ZXJuYWxJbmdyZXNzUnVsZShpbmdyZXNzUnVsZTogSW5ncmVzc1J1bGUpIHtcbiAgICBpZiAodGhpcy5pbmdyZXNzUnVsZXMubGVuZ3RoID09IDUwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIG1vcmUgdGhhbiA1MCBpbmdyZXNzIHJ1bGVzIGFyZSBhbGxvd2VkIHBlciBmbGVldCcpO1xuICAgIH1cbiAgICB0aGlzLmluZ3Jlc3NSdWxlcy5wdXNoKGluZ3Jlc3NSdWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VJbmdyZXNzUnVsZXMoKTogQ2ZuRmxlZXQuSXBQZXJtaXNzaW9uUHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmluZ3Jlc3NSdWxlcyB8fCB0aGlzLmluZ3Jlc3NSdWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaW5ncmVzc1J1bGVzLm1hcChwYXJzZUluZ3Jlc3NSdWxlKTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlSW5ncmVzc1J1bGUoaW5ncmVzc1J1bGU6IEluZ3Jlc3NSdWxlKTogQ2ZuRmxlZXQuSXBQZXJtaXNzaW9uUHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uaW5ncmVzc1J1bGUucG9ydC50b0pzb24oKSxcbiAgICAgICAgLi4uaW5ncmVzc1J1bGUuc291cmNlLnRvSnNvbigpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
package/lib/build.js
CHANGED
|
@@ -15,7 +15,7 @@ class BuildBase extends cdk.Resource {
|
|
|
15
15
|
}
|
|
16
16
|
exports.BuildBase = BuildBase;
|
|
17
17
|
_a = JSII_RTTI_SYMBOL_1;
|
|
18
|
-
BuildBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildBase", version: "2.
|
|
18
|
+
BuildBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.BuildBase", version: "2.127.0-alpha.0" };
|
|
19
19
|
/**
|
|
20
20
|
* The operating system that the game server binaries are built to run on.
|
|
21
21
|
*/
|
|
@@ -181,5 +181,5 @@ class Build extends BuildBase {
|
|
|
181
181
|
}
|
|
182
182
|
exports.Build = Build;
|
|
183
183
|
_b = JSII_RTTI_SYMBOL_1;
|
|
184
|
-
Build[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Build", version: "2.
|
|
184
|
+
Build[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Build", version: "2.127.0-alpha.0" };
|
|
185
185
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidWlsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwyQ0FBMkM7QUFHM0Msd0NBQXdDO0FBRXhDLHVDQUFvQztBQUNwQywyREFBb0Q7QUEyQnBEOztHQUVHO0FBQ0gsTUFBc0IsU0FBVSxTQUFRLEdBQUcsQ0FBQyxRQUFROztBQUFwRCw4QkFZQzs7O0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGVBNkJYO0FBN0JELFdBQVksZUFBZTtJQUN6Qjs7T0FFRztJQUNILGdEQUE2QixDQUFBO0lBRTdCOztPQUVHO0lBQ0gsb0RBQWlDLENBQUE7SUFFakM7O09BRUc7SUFDSCwwREFBdUMsQ0FBQTtJQUV2Qzs7Ozs7O09BTUc7SUFDSCxnREFBNkIsQ0FBQTtJQUU3Qjs7T0FFRztJQUNILGdEQUE2QixDQUFBO0FBQy9CLENBQUMsRUE3QlcsZUFBZSwrQkFBZixlQUFlLFFBNkIxQjtBQTZGRDs7Ozs7OztHQU9HO0FBQ0gsTUFBYSxLQUFNLFNBQVEsU0FBUztJQUNsQzs7T0FFRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsTUFBa0IsRUFBRSxHQUFXLEVBQUUsYUFBc0I7UUFDckcsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxpQkFBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLGFBQWEsQ0FBQztTQUN4RCxDQUFDLENBQUM7S0FDSjtJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxJQUFZLEVBQUUsT0FBZ0M7UUFDM0YsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxpQkFBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO1NBQzFDLENBQUMsQ0FBQztLQUNKO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLE9BQWU7UUFDOUQsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7S0FDekQ7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsUUFBZ0I7UUFDaEUsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7S0FDMUQ7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjs7Ozs7Ozs7OztRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPO1lBQzNCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFFaEcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsS0FBSyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQy9ELE9BQU8sRUFBRSxVQUFVO1lBQ25CLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFlBQVksRUFBRSxLQUFLLENBQUMsT0FBTztZQUMzQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxtQkFBbUI7U0FDN0MsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxNQUFPLFNBQVEsU0FBUztZQU01QixZQUFZLENBQVksRUFBRSxDQUFTO2dCQUNqQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRTtvQkFDVixrQkFBa0IsRUFBRSxRQUFRO2lCQUM3QixDQUFDLENBQUM7Z0JBUlcsWUFBTyxHQUFHLE9BQVEsQ0FBQztnQkFDbkIsYUFBUSxHQUFHLFFBQVEsQ0FBQztnQkFDcEIsbUJBQWMsR0FBRyxLQUFLLENBQUMsSUFBSSxJQUFJLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7Z0JBQzVFLFNBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBTWxDLENBQUM7U0FDRjtRQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzlCO0lBc0JELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUI7UUFDekQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLFNBQVM7U0FDOUIsQ0FBQyxDQUFDOzs7Ozs7K0NBM0ZNLEtBQUs7Ozs7UUE2RmQsSUFBSSxLQUFLLENBQUMsU0FBUyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDaEUsSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUUsQ0FBQztnQkFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLGNBQWMsQ0FBQyxDQUFDO1lBQ3JILENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxDQUFDLHdCQUF3QixDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUMxRCxTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUM7U0FDOUQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ2hDLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEQsTUFBTSxRQUFRLEdBQUcsSUFBSSx1QkFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDOUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQ3JCLE9BQU8sRUFBRSxLQUFLLENBQUMsWUFBWTtZQUMzQixlQUFlLEVBQUUsS0FBSyxDQUFDLGVBQWU7WUFDdEMsZUFBZSxFQUFFO2dCQUNmLE1BQU0sRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUMsVUFBVTtnQkFDM0QsR0FBRyxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksT0FBTyxDQUFDLFVBQVUsQ0FBQyxTQUFTO2dCQUN2RCxhQUFhLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLGFBQWE7Z0JBQ3JFLE9BQU8sRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87YUFDM0I7WUFDRCxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO1NBQ3pDLENBQUMsQ0FBQztRQUVILFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV2QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDNUMsT0FBTyxFQUFFLFVBQVU7WUFDbkIsUUFBUSxFQUFFLE9BQU87WUFDakIsWUFBWSxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQzFCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLG1CQUFtQjtTQUM3QyxDQUFDLENBQUM7S0FDSjtJQUVPLHdCQUF3QixDQUFDLGdCQUF5QjtRQUN4RCxJQUFJLGdCQUFnQixLQUFLLFNBQVMsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQztZQUFFLE9BQU87UUFDdkYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7WUFDL0MsTUFBTSxJQUFJLEtBQUssQ0FBQyx1REFBdUQsZ0JBQWdCLEtBQUssQ0FBQyxDQUFDO1FBQ2hHLENBQUM7UUFDRCxJQUFJLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUNsQyxNQUFNLElBQUksS0FBSyxDQUFDLHFFQUFxRSxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ25ILENBQUM7S0FDRjs7QUEzSUgsc0JBNElDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgczMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzJztcbmltcG9ydCAqIGFzIHMzX2Fzc2V0cyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMtYXNzZXRzJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ29udGVudCB9IGZyb20gJy4vY29udGVudCc7XG5pbXBvcnQgeyBDZm5CdWlsZCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5cbi8qKlxuICogWW91ciBjdXN0b20tYnVpbHQgZ2FtZSBzZXJ2ZXIgc29mdHdhcmUgdGhhdCBydW5zIG9uIEdhbWVMaWZ0IGFuZCBob3N0cyBnYW1lIHNlc3Npb25zIGZvciB5b3VyIHBsYXllcnMuXG4gKiBBIGdhbWUgYnVpbGQgcmVwcmVzZW50cyB0aGUgc2V0IG9mIGZpbGVzIHRoYXQgcnVuIHlvdXIgZ2FtZSBzZXJ2ZXIgb24gYSBwYXJ0aWN1bGFyIG9wZXJhdGluZyBzeXN0ZW0uXG4gKiBZb3UgY2FuIGhhdmUgbWFueSBkaWZmZXJlbnQgYnVpbGRzLCBzdWNoIGFzIGZvciBkaWZmZXJlbnQgZmxhdm9ycyBvZiB5b3VyIGdhbWUuXG4gKiBUaGUgZ2FtZSBidWlsZCBtdXN0IGJlIGludGVncmF0ZWQgd2l0aCB0aGUgR2FtZUxpZnQgc2VydmljZS5cbiAqIFlvdSB1cGxvYWQgZ2FtZSBidWlsZCBmaWxlcyB0byB0aGUgR2FtZUxpZnQgc2VydmljZSBpbiB0aGUgUmVnaW9ucyB3aGVyZSB5b3UgcGxhbiB0byBzZXQgdXAgZmxlZXRzLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1idWlsZC1jbGktdXBsb2FkaW5nLmh0bWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQnVpbGQgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBpYW0uSUdyYW50YWJsZSB7XG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgYnVpbGQuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgYnVpbGRcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBuZXcgYW5kIGltcG9ydGVkIEdhbWVMaWZ0IHNlcnZlciBidWlsZC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJ1aWxkQmFzZSBleHRlbmRzIGNkay5SZXNvdXJjZSBpbXBsZW1lbnRzIElCdWlsZCB7XG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgYnVpbGQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYnVpbGRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBidWlsZC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBidWlsZEFybjogc3RyaW5nO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG59XG5cbi8qKlxuICogVGhlIG9wZXJhdGluZyBzeXN0ZW0gdGhhdCB0aGUgZ2FtZSBzZXJ2ZXIgYmluYXJpZXMgYXJlIGJ1aWx0IHRvIHJ1biBvbi5cbiAqL1xuZXhwb3J0IGVudW0gT3BlcmF0aW5nU3lzdGVtIHtcbiAgLyoqXG4gICAqIEFtYXpvbiBMaW51eCBvcGVyYXRpbmcgc3lzdGVtLlxuICAgKi9cbiAgQU1BWk9OX0xJTlVYID0gJ0FNQVpPTl9MSU5VWCcsXG5cbiAgLyoqXG4gICAqIEFtYXpvbiBMaW51eCAyIG9wZXJhdGluZyBzeXN0ZW0uXG4gICAqL1xuICBBTUFaT05fTElOVVhfMiA9ICdBTUFaT05fTElOVVhfMicsXG5cbiAgLyoqXG4gICAqIEFtYXpvbiBMaW51eCAyMDIzIG9wZXJhdGluZyBzeXN0ZW0uXG4gICAqL1xuICBBTUFaT05fTElOVVhfMjAyMyA9ICdBTUFaT05fTElOVVhfMjAyMycsXG5cbiAgLyoqXG4gICAqIFdpbmRvd3MgU2VydmVyIDIwMTIgb3BlcmF0aW5nIHN5c3RlbS5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgSWYgeW91IGhhdmUgYWN0aXZlIGZsZWV0cyB1c2luZyB0aGUgV2luZG93cyBTZXJ2ZXIgMjAxMiBvcGVyYXRpbmcgc3lzdGVtLFxuICAgKiB5b3UgY2FuIGNvbnRpbnVlIHRvIGNyZWF0ZSBuZXcgYnVpbGRzIHVzaW5nIHRoaXMgT1MgdW50aWwgT2N0b2JlciAxMCwgMjAyMywgd2hlbiBNaWNyb3NvZnQgZW5kcyBpdHMgc3VwcG9ydC5cbiAgICogQWxsIG90aGVycyBtdXN0IHVzZSBXaW5kb3dzIFNlcnZlciAyMDE2IHdoZW4gY3JlYXRpbmcgbmV3IFdpbmRvd3MtYmFzZWQgYnVpbGRzLlxuICAgKi9cbiAgV0lORE9XU18yMDEyID0gJ1dJTkRPV1NfMjAxMicsXG5cbiAgLyoqXG4gICAqIFdpbmRvd3MgU2VydmVyIDIwMTYgb3BlcmF0aW5nIHN5c3RlbS5cbiAgICovXG4gIFdJTkRPV1NfMjAxNiA9ICdXSU5ET1dTXzIwMTYnLFxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBCdWlsZCBjb250ZW50IGRlZmluZWQgb3V0c2lkZSBvZiB0aGlzIHN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1aWxkQXR0cmlidXRlcyB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBidWlsZFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGJ1aWxkQXJuYCBhbmQgYGJ1aWxkSWRgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgYnVpbGRJZGAuXG4gICAqL1xuICByZWFkb25seSBidWlsZEFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGlkZW50aWZpZXIgb2YgdGhlIGJ1aWxkXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgYnVpbGRJZGAgYW5kIGBidWlsZEFybmAgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgYnVpbGRBcm5gLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRJZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IHRvIGFjY2VzcyBzZXJ2ZXIgYnVpbGQgaW4gUzMuXG4gICAqIEBkZWZhdWx0IHRoZSBpbXBvcnRlZCBmbGVldCBjYW5ub3QgYmUgZ3JhbnRlZCBhY2Nlc3MgdG8gb3RoZXIgcmVzb3VyY2VzIGFzIGFuIGBpYW0uSUdyYW50YWJsZWAuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IGJ1aWxkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRQcm9wcyB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoaXMgYnVpbGRcbiAgICpcbiAgICogQGRlZmF1bHQgTm8gbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgICogVmVyc2lvbiBvZiB0aGlzIGJ1aWxkXG4gICAgKlxuICAgICogQGRlZmF1bHQgTm8gdmVyc2lvblxuICAgICovXG4gIHJlYWRvbmx5IGJ1aWxkVmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG9wZXJhdGluZyBzeXN0ZW0gdGhhdCB0aGUgZ2FtZSBzZXJ2ZXIgYmluYXJpZXMgYXJlIGJ1aWx0IHRvIHJ1biBvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgTm8gdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0aW5nU3lzdGVtPzogT3BlcmF0aW5nU3lzdGVtO1xuXG4gIC8qKlxuICAgKiBUaGUgZ2FtZSBidWlsZCBmaWxlIHN0b3JhZ2VcbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IENvbnRlbnQ7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IHRvIGFjY2VzcyBzZXJ2ZXIgYnVpbGQgaW4gUzMuXG4gICAqIElmIHByb3ZpZGluZyBhIGN1c3RvbSByb2xlLCBpdCBuZWVkcyB0byB0cnVzdCB0aGUgR2FtZUxpZnQgc2VydmljZSBwcmluY2lwYWwgKGdhbWVsaWZ0LmFtYXpvbmF3cy5jb20pIGFuZCBiZSBncmFudGVkIHN1ZmZpY2llbnQgcGVybWlzc2lvbnNcbiAgICogdG8gaGF2ZSBSZWFkIGFjY2VzcyB0byBhIHNwZWNpZmljIGtleSBjb250ZW50IGludG8gYSBzcGVjaWZpYyBTMyBidWNrZXQuXG4gICAqIEJlbG93IGFuIGV4YW1wbGUgb2YgcmVxdWlyZWQgcGVybWlzc2lvbjpcbiAgICoge1xuICAgKiAgXCJWZXJzaW9uXCI6IFwiMjAxMi0xMC0xN1wiLFxuICAgKiAgXCJTdGF0ZW1lbnRcIjogW3tcbiAgICogICAgICAgIFwiRWZmZWN0XCI6IFwiQWxsb3dcIixcbiAgICogICAgICAgIFwiQWN0aW9uXCI6IFtcbiAgICogICAgICAgICAgICBcInMzOkdldE9iamVjdFwiLFxuICAgKiAgICAgICAgICAgIFwiczM6R2V0T2JqZWN0VmVyc2lvblwiXG4gICAqICAgICAgICBdLFxuICAgKiAgICAgICAgXCJSZXNvdXJjZVwiOiBcImFybjphd3M6czM6OjpidWNrZXQtbmFtZS9vYmplY3QtbmFtZVwiXG4gICAqICB9XVxuICAgKiB9XG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9zZWN1cml0eV9pYW1faWQtYmFzZWQtcG9saWN5LWV4YW1wbGVzLmh0bWwjc2VjdXJpdHlfaWFtX2lkLWJhc2VkLXBvbGljeS1leGFtcGxlcy1hY2Nlc3Mtc3RvcmFnZS1sb2NcbiAgICpcbiAgICogQGRlZmF1bHQgLSBhIHJvbGUgd2lsbCBiZSBjcmVhdGVkIHdpdGggZGVmYXVsdCBwZXJtaXNzaW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAqIEEgc2VydmVyIFNESyB2ZXJzaW9uIHlvdSB1c2VkIHdoZW4gaW50ZWdyYXRpbmcgeW91ciBnYW1lIHNlcnZlciBidWlsZCB3aXRoIEFtYXpvbiBHYW1lTGlmdC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ludGVncmF0aW9uLWN1c3RvbS1pbnRyby5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gNC4wLjJcbiAgICovXG4gIHJlYWRvbmx5IHNlcnZlclNka1ZlcnNpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBHYW1lTGlmdCBidWlsZCwgdGhhdCBpcyBpbnN0YWxsZWQgYW5kIHJ1bnMgb24gaW5zdGFuY2VzIGluIGFuIEFtYXpvbiBHYW1lTGlmdCBmbGVldC4gSXQgY29uc2lzdHMgb2ZcbiAqIGEgemlwIGZpbGUgd2l0aCBhbGwgb2YgdGhlIGNvbXBvbmVudHMgb2YgdGhlIGdhbWUgc2VydmVyIGJ1aWxkLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1idWlsZC1jbGktdXBsb2FkaW5nLmh0bWxcbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6QnVpbGRcbiAqL1xuZXhwb3J0IGNsYXNzIEJ1aWxkIGV4dGVuZHMgQnVpbGRCYXNlIHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBCdWlsZCBmcm9tIHMzIGNvbnRlbnRcbiAgICovXG4gIHN0YXRpYyBmcm9tQnVja2V0KHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGJ1Y2tldDogczMuSUJ1Y2tldCwga2V5OiBzdHJpbmcsIG9iamVjdFZlcnNpb24/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IEJ1aWxkKHNjb3BlLCBpZCwge1xuICAgICAgY29udGVudDogQ29udGVudC5mcm9tQnVja2V0KGJ1Y2tldCwga2V5LCBvYmplY3RWZXJzaW9uKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgQnVpbGQgZnJvbSBhc3NldCBjb250ZW50XG4gICAqL1xuICBzdGF0aWMgZnJvbUFzc2V0KHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHBhdGg6IHN0cmluZywgb3B0aW9ucz86IHMzX2Fzc2V0cy5Bc3NldE9wdGlvbnMpIHtcbiAgICByZXR1cm4gbmV3IEJ1aWxkKHNjb3BlLCBpZCwge1xuICAgICAgY29udGVudDogQ29udGVudC5mcm9tQXNzZXQocGF0aCwgb3B0aW9ucyksXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGEgYnVpbGQgaW50byBDREsgdXNpbmcgaXRzIGlkZW50aWZpZXJcbiAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRJZChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZElkOiBzdHJpbmcpOiBJQnVpbGQge1xuICAgIHJldHVybiB0aGlzLmZyb21CdWlsZEF0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGJ1aWxkSWQgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGEgYnVpbGQgaW50byBDREsgdXNpbmcgaXRzIEFSTlxuICAgKi9cbiAgc3RhdGljIGZyb21CdWlsZEFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEFybjogc3RyaW5nKTogSUJ1aWxkIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tQnVpbGRBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBidWlsZEFybiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgYnVpbGQgZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBCdWlsZEF0dHJpYnV0ZXMpOiBJQnVpbGQge1xuICAgIGlmICghYXR0cnMuYnVpbGRJZCAmJiAhYXR0cnMuYnVpbGRBcm4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGJ1aWxkSWQgb3IgYnVpbGRBcm4gbXVzdCBiZSBwcm92aWRlZCBpbiBCdWlsZEF0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgYnVpbGRJZCA9IGF0dHJzLmJ1aWxkSWQgPz9cbiAgICAgIGNkay5TdGFjay5vZihzY29wZSkuc3BsaXRBcm4oYXR0cnMuYnVpbGRBcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghYnVpbGRJZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBidWlsZCBpZGVudGlmaWVyIGZvdW5kIGluIEFSTjogJyR7YXR0cnMuYnVpbGRBcm59J2ApO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1aWxkQXJuID0gYXR0cnMuYnVpbGRBcm4gPz8gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnYnVpbGQnLFxuICAgICAgcmVzb3VyY2VOYW1lOiBhdHRycy5idWlsZElkLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgQnVpbGRCYXNlIHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBidWlsZElkID0gYnVpbGRJZCE7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRBcm4gPSBidWlsZEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbCA9IGF0dHJzLnJvbGUgPz8gbmV3IGlhbS5Vbmtub3duUHJpbmNpcGFsKHsgcmVzb3VyY2U6IHRoaXMgfSk7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgcm9sZSA9IGF0dHJzLnJvbGU7XG5cbiAgICAgIGNvbnN0cnVjdG9yKHM6IENvbnN0cnVjdCwgaTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHMsIGksIHtcbiAgICAgICAgICBlbnZpcm9ubWVudEZyb21Bcm46IGJ1aWxkQXJuLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgYnVpbGQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBidWlsZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBidWlsZEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgR2FtZUxpZnQgYXNzdW1lcyB0byBhY2NjZXNzIHNlcnZlciBidWlsZCBjb250ZW50LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJvbGU6IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIHByaW5jaXBhbCB0aGlzIEdhbWVMaWZ0IEJ1aWxkIGlzIHVzaW5nLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdyYW50UHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVpbGRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5idWlsZE5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMuYnVpbGROYW1lICYmICFjZGsuVG9rZW4uaXNVbnJlc29sdmVkKHByb3BzLmJ1aWxkTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5idWlsZE5hbWUubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEJ1aWxkIG5hbWUgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmJ1aWxkTmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy52YWxpZGF0ZVNlcnZlclNka1ZlcnNpb24ocHJvcHMuc2VydmVyU2RrVmVyc2lvbik7XG5cbiAgICB0aGlzLnJvbGUgPSBwcm9wcy5yb2xlID8/IG5ldyBpYW0uUm9sZSh0aGlzLCAnU2VydmljZVJvbGUnLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZ2FtZWxpZnQuYW1hem9uYXdzLmNvbScpLFxuICAgIH0pO1xuICAgIHRoaXMuZ3JhbnRQcmluY2lwYWwgPSB0aGlzLnJvbGU7XG4gICAgY29uc3QgY29udGVudCA9IHByb3BzLmNvbnRlbnQuYmluZCh0aGlzLCB0aGlzLnJvbGUpO1xuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ2ZuQnVpbGQodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbmFtZTogcHJvcHMuYnVpbGROYW1lLFxuICAgICAgdmVyc2lvbjogcHJvcHMuYnVpbGRWZXJzaW9uLFxuICAgICAgb3BlcmF0aW5nU3lzdGVtOiBwcm9wcy5vcGVyYXRpbmdTeXN0ZW0sXG4gICAgICBzdG9yYWdlTG9jYXRpb246IHtcbiAgICAgICAgYnVja2V0OiBjb250ZW50LnMzTG9jYXRpb24gJiYgY29udGVudC5zM0xvY2F0aW9uLmJ1Y2tldE5hbWUsXG4gICAgICAgIGtleTogY29udGVudC5zM0xvY2F0aW9uICYmIGNvbnRlbnQuczNMb2NhdGlvbi5vYmplY3RLZXksXG4gICAgICAgIG9iamVjdFZlcnNpb246IGNvbnRlbnQuczNMb2NhdGlvbiAmJiBjb250ZW50LnMzTG9jYXRpb24ub2JqZWN0VmVyc2lvbixcbiAgICAgICAgcm9sZUFybjogdGhpcy5yb2xlLnJvbGVBcm4sXG4gICAgICB9LFxuICAgICAgc2VydmVyU2RrVmVyc2lvbjogcHJvcHMuc2VydmVyU2RrVmVyc2lvbixcbiAgICB9KTtcblxuICAgIHJlc291cmNlLm5vZGUuYWRkRGVwZW5kZW5jeSh0aGlzLnJvbGUpO1xuXG4gICAgdGhpcy5idWlsZElkID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocmVzb3VyY2UucmVmKTtcbiAgICB0aGlzLmJ1aWxkQXJuID0gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnYnVpbGQnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLmJ1aWxkSWQsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdmFsaWRhdGVTZXJ2ZXJTZGtWZXJzaW9uKHNlcnZlclNka1ZlcnNpb24/OiBzdHJpbmcpIHtcbiAgICBpZiAoc2VydmVyU2RrVmVyc2lvbiA9PT0gdW5kZWZpbmVkIHx8IGNkay5Ub2tlbi5pc1VucmVzb2x2ZWQoc2VydmVyU2RrVmVyc2lvbikpIHJldHVybjtcbiAgICBpZiAoIXNlcnZlclNka1ZlcnNpb24ubWF0Y2goL15cXGQrXFwuXFxkK1xcLlxcZCskLykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgc2VydmVyU2RrVmVyc2lvbiBtdXN0IGJlIGluIHRoZSAwLjAuMCBmb3JtYXQsIGdvdCBcXCcke3NlcnZlclNka1ZlcnNpb259XFwnLmApO1xuICAgIH1cbiAgICBpZiAoc2VydmVyU2RrVmVyc2lvbi5sZW5ndGggPiAxMjgpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgc2VydmVyU2RrVmVyc2lvbiBsZW5ndGggbXVzdCBiZSBzbWFsbGVyIHRoYW4gb3IgZXF1YWwgdG8gMTI4LCBnb3QgJHtzZXJ2ZXJTZGtWZXJzaW9uLmxlbmd0aH0uYCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
package/lib/content.js
CHANGED
|
@@ -32,7 +32,7 @@ class Content {
|
|
|
32
32
|
}
|
|
33
33
|
exports.Content = Content;
|
|
34
34
|
_a = JSII_RTTI_SYMBOL_1;
|
|
35
|
-
Content[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.Content", version: "2.
|
|
35
|
+
Content[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.Content", version: "2.127.0-alpha.0" };
|
|
36
36
|
/**
|
|
37
37
|
* Game content from an S3 archive.
|
|
38
38
|
*/
|
|
@@ -64,7 +64,7 @@ class S3Content extends Content {
|
|
|
64
64
|
}
|
|
65
65
|
exports.S3Content = S3Content;
|
|
66
66
|
_b = JSII_RTTI_SYMBOL_1;
|
|
67
|
-
S3Content[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.S3Content", version: "2.
|
|
67
|
+
S3Content[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.S3Content", version: "2.127.0-alpha.0" };
|
|
68
68
|
/**
|
|
69
69
|
* Game content from a local directory.
|
|
70
70
|
*/
|
|
@@ -109,5 +109,5 @@ class AssetContent extends Content {
|
|
|
109
109
|
}
|
|
110
110
|
exports.AssetContent = AssetContent;
|
|
111
111
|
_c = JSII_RTTI_SYMBOL_1;
|
|
112
|
-
AssetContent[_c] = { fqn: "@aws-cdk/aws-gamelift-alpha.AssetContent", version: "2.
|
|
112
|
+
AssetContent[_c] = { fqn: "@aws-cdk/aws-gamelift-alpha.AssetContent", version: "2.127.0-alpha.0" };
|
|
113
113
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyQ0FBMkM7QUFDM0MseUNBQXlDO0FBQ3pDLHVEQUF1RDtBQUN2RCx3Q0FBd0M7QUFHeEM7OztHQUdHO0FBQ0gsTUFBc0IsT0FBTztJQUMzQjs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBa0IsRUFBRSxHQUFXLEVBQUUsYUFBc0I7UUFDOUUsT0FBTyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0tBQ2xEO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBWSxFQUFFLE9BQWdDO1FBQ3BFLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ3hDOztBQWxCSCwwQkF3QkM7OztBQVlEOztHQUVHO0FBQ0gsTUFBYSxTQUFVLFNBQVEsT0FBTztJQUNwQyxZQUE2QixNQUFrQixFQUFVLEdBQVcsRUFBVSxhQUFzQjtRQUNsRyxLQUFLLEVBQUUsQ0FBQztRQURtQixXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBRWxHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7S0FDRjtJQUVNLElBQUksQ0FBQyxNQUFpQixFQUFFLElBQWU7UUFDNUMsK0NBQStDO1FBQy9DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDaEQsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSztZQUN4QixTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDO1NBQ2pELENBQUMsQ0FBQyxDQUFDO1FBRUosT0FBTztZQUNMLFVBQVUsRUFBRTtnQkFDVixVQUFVLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVO2dCQUNsQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUc7Z0JBQ25CLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTthQUNsQztTQUNGLENBQUM7S0FDSDs7QUF2QkgsOEJBd0JDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLE9BQU87SUFHdkM7O09BRUc7SUFDSCxZQUE0QixJQUFZLEVBQW1CLFVBQWtDLEVBQUc7UUFDOUYsS0FBSyxFQUFFLENBQUM7UUFEa0IsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUFtQixZQUFPLEdBQVAsT0FBTyxDQUE4QjtLQUUvRjtJQUVNLElBQUksQ0FBQyxLQUFnQixFQUFFLElBQWU7UUFDM0Msd0ZBQXdGO1FBQ3hGLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRTtnQkFDakQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO2dCQUNmLEdBQUcsSUFBSSxDQUFDLE9BQU87YUFDaEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQzthQUFNLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDNUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBbUQsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsS0FBSztnQkFDeEcsZ0RBQWdELENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXZGLCtDQUErQztRQUMvQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO1lBQ2hELE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUs7WUFDeEIsU0FBUyxFQUFFLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3pELE9BQU8sRUFBRSxDQUFDLGNBQWMsRUFBRSxxQkFBcUIsQ0FBQztTQUNqRCxDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1FBQzdFLENBQUM7UUFFRCxPQUFPO1lBQ0wsVUFBVSxFQUFFO2dCQUNWLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVk7Z0JBQ25DLFNBQVMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVc7YUFDbEM7U0FDRixDQUFDO0tBQ0g7O0FBeENILG9DQXlDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIHMzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgKiBhcyBzM19hc3NldHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLXMzLWFzc2V0cyc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWIvY29yZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBCZWZvcmUgZGVwbG95aW5nIHlvdXIgR2FtZUxpZnQtZW5hYmxlZCBtdWx0aXBsYXllciBnYW1lIHNlcnZlcnMgZm9yIGhvc3Rpbmcgd2l0aCB0aGUgR2FtZUxpZnQgc2VydmljZSwgeW91IG5lZWQgdG8gdXBsb2FkIHlvdXIgZ2FtZSBzZXJ2ZXIgZmlsZXMuXG4gKiBUaGUgY2xhc3MgaGVscHMgeW91IG9uIHByZXBhcmluZyBhbmQgdXBsb2FkaW5nIGN1c3RvbSBnYW1lIHNlcnZlciBidWlsZCBmaWxlcyBvciBSZWFsdGltZSBTZXJ2ZXJzIHNlcnZlciBzY3JpcHQgZmlsZXMuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDb250ZW50IHtcbiAgLyoqXG4gICAqIEdhbWUgY29udGVudCBhcyBhbiBTMyBvYmplY3QuXG4gICAqIEBwYXJhbSBidWNrZXQgVGhlIFMzIGJ1Y2tldFxuICAgKiBAcGFyYW0ga2V5IFRoZSBvYmplY3Qga2V5XG4gICAqIEBwYXJhbSBvYmplY3RWZXJzaW9uIE9wdGlvbmFsIFMzIG9iIGplY3QgdmVyc2lvblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQnVja2V0KGJ1Y2tldDogczMuSUJ1Y2tldCwga2V5OiBzdHJpbmcsIG9iamVjdFZlcnNpb24/OiBzdHJpbmcpOiBTM0NvbnRlbnQge1xuICAgIHJldHVybiBuZXcgUzNDb250ZW50KGJ1Y2tldCwga2V5LCBvYmplY3RWZXJzaW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkcyB0aGUgZ2FtZSBjb250ZW50IGZyb20gYSBsb2NhbCBkaXNrIHBhdGguXG4gICAqXG4gICAqIEBwYXJhbSBwYXRoIEVpdGhlciBhIGRpcmVjdG9yeSB3aXRoIHRoZSBnYW1lIGNvbnRlbnQgYnVuZGxlIG9yIGEgLnppcCBmaWxlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Bc3NldChwYXRoOiBzdHJpbmcsIG9wdGlvbnM/OiBzM19hc3NldHMuQXNzZXRPcHRpb25zKTogQXNzZXRDb250ZW50IHtcbiAgICByZXR1cm4gbmV3IEFzc2V0Q29udGVudChwYXRoLCBvcHRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgQnVpbGQgaXMgaW5pdGlhbGl6ZWQgdG8gYWxsb3cgdGhpcyBvYmplY3QgdG8gYmluZFxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGJpbmQoc2NvcGU6IENvbnN0cnVjdCwgcm9sZTogaWFtLklSb2xlKTogQ29udGVudENvbmZpZztcbn1cblxuLyoqXG4gKiBSZXN1bHQgb2YgYmluZGluZyBgQ29udGVudGAgaW50byBhIGBCdWlsZGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGVudENvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgbG9jYXRpb24gb2YgdGhlIGNvbnRlbnQgaW4gUzMuXG4gICAqL1xuICByZWFkb25seSBzM0xvY2F0aW9uOiBzMy5Mb2NhdGlvbjtcbn1cblxuLyoqXG4gKiBHYW1lIGNvbnRlbnQgZnJvbSBhbiBTMyBhcmNoaXZlLlxuICovXG5leHBvcnQgY2xhc3MgUzNDb250ZW50IGV4dGVuZHMgQ29udGVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYnVja2V0OiBzMy5JQnVja2V0LCBwcml2YXRlIGtleTogc3RyaW5nLCBwcml2YXRlIG9iamVjdFZlcnNpb24/OiBzdHJpbmcpIHtcbiAgICBzdXBlcigpO1xuICAgIGlmICghYnVja2V0LmJ1Y2tldE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYnVja2V0TmFtZSBpcyB1bmRlZmluZWQgZm9yIHRoZSBwcm92aWRlZCBidWNrZXQnKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYmluZChfc2NvcGU6IENvbnN0cnVjdCwgcm9sZTogaWFtLklSb2xlKTogQ29udGVudENvbmZpZyB7XG4gICAgLy8gQWRkaW5nIHBlcm1pc3Npb24gdG8gYWNjZXNzIHNwZWNpZmljIGNvbnRlbnRcbiAgICByb2xlLmFkZFRvUHJpbmNpcGFsUG9saWN5KG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgIHJlc291cmNlczogW3RoaXMuYnVja2V0LmFybkZvck9iamVjdHModGhpcy5rZXkpXSxcbiAgICAgIGFjdGlvbnM6IFsnczM6R2V0T2JqZWN0JywgJ3MzOkdldE9iamVjdFZlcnNpb24nXSxcbiAgICB9KSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgczNMb2NhdGlvbjoge1xuICAgICAgICBidWNrZXROYW1lOiB0aGlzLmJ1Y2tldC5idWNrZXROYW1lLFxuICAgICAgICBvYmplY3RLZXk6IHRoaXMua2V5LFxuICAgICAgICBvYmplY3RWZXJzaW9uOiB0aGlzLm9iamVjdFZlcnNpb24sXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiBHYW1lIGNvbnRlbnQgZnJvbSBhIGxvY2FsIGRpcmVjdG9yeS5cbiAqL1xuZXhwb3J0IGNsYXNzIEFzc2V0Q29udGVudCBleHRlbmRzIENvbnRlbnQge1xuICBwcml2YXRlIGFzc2V0PzogczNfYXNzZXRzLkFzc2V0O1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gcGF0aCBUaGUgcGF0aCB0byB0aGUgYXNzZXQgZmlsZSBvciBkaXJlY3RvcnkuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgcGF0aDogc3RyaW5nLCBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IHMzX2Fzc2V0cy5Bc3NldE9wdGlvbnMgPSB7IH0pIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGJpbmQoc2NvcGU6IENvbnN0cnVjdCwgcm9sZTogaWFtLklSb2xlKTogQ29udGVudENvbmZpZyB7XG4gICAgLy8gSWYgdGhlIHNhbWUgQXNzZXRDb250ZW50IGlzIHVzZWQgbXVsdGlwbGUgdGltZXMsIHJldGFpbiBvbmx5IHRoZSBmaXJzdCBpbnN0YW50aWF0aW9uLlxuICAgIGlmICghdGhpcy5hc3NldCkge1xuICAgICAgdGhpcy5hc3NldCA9IG5ldyBzM19hc3NldHMuQXNzZXQoc2NvcGUsICdDb250ZW50Jywge1xuICAgICAgICBwYXRoOiB0aGlzLnBhdGgsXG4gICAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAoY2RrLlN0YWNrLm9mKHRoaXMuYXNzZXQpICE9PSBjZGsuU3RhY2sub2Yoc2NvcGUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEFzc2V0IGlzIGFscmVhZHkgYXNzb2NpYXRlZCB3aXRoIGFub3RoZXIgc3RhY2sgJyR7Y2RrLlN0YWNrLm9mKHRoaXMuYXNzZXQpLnN0YWNrTmFtZX0nLiBgICtcbiAgICAgICAgJ0NyZWF0ZSBhIG5ldyBDb250ZW50IGluc3RhbmNlIGZvciBldmVyeSBzdGFjay4nKTtcbiAgICB9XG4gICAgY29uc3QgYnVja2V0ID0gczMuQnVja2V0LmZyb21CdWNrZXROYW1lKHNjb3BlLCAnQXNzZXRCdWNrZXQnLCB0aGlzLmFzc2V0LnMzQnVja2V0TmFtZSk7XG5cbiAgICAvLyBBZGRpbmcgcGVybWlzc2lvbiB0byBhY2Nlc3Mgc3BlY2lmaWMgY29udGVudFxuICAgIHJvbGUuYWRkVG9QcmluY2lwYWxQb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgcmVzb3VyY2VzOiBbYnVja2V0LmFybkZvck9iamVjdHModGhpcy5hc3NldC5zM09iamVjdEtleSldLFxuICAgICAgYWN0aW9uczogWydzMzpHZXRPYmplY3QnLCAnczM6R2V0T2JqZWN0VmVyc2lvbiddLFxuICAgIH0pKTtcblxuICAgIGlmICghdGhpcy5hc3NldC5pc1ppcEFyY2hpdmUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQXNzZXQgbXVzdCBiZSBhIC56aXAgZmlsZSBvciBhIGRpcmVjdG9yeSAoJHt0aGlzLnBhdGh9KWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBzM0xvY2F0aW9uOiB7XG4gICAgICAgIGJ1Y2tldE5hbWU6IHRoaXMuYXNzZXQuczNCdWNrZXROYW1lLFxuICAgICAgICBvYmplY3RLZXk6IHRoaXMuYXNzZXQuczNPYmplY3RLZXksXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
package/lib/fleet-base.js
CHANGED
|
@@ -271,5 +271,5 @@ class FleetBase extends cdk.Resource {
|
|
|
271
271
|
}
|
|
272
272
|
exports.FleetBase = FleetBase;
|
|
273
273
|
_a = JSII_RTTI_SYMBOL_1;
|
|
274
|
-
FleetBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.FleetBase", version: "2.
|
|
275
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxlZXQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZsZWV0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseURBQXlEO0FBRXpELDJDQUEyQztBQUMzQyx3Q0FBd0M7QUFFeEMsbUNBQThDO0FBRTlDLHNIQUFpRztBQThZakc7O0dBRUc7QUFDSCxNQUFzQixTQUFVLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFBcEQ7O1FBbURtQixjQUFTLEdBQWUsRUFBRSxDQUFDO0tBaU03QztJQW5QQzs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjs7Ozs7Ozs7OztRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPO1lBQzNCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFFaEcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsS0FBSyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQy9ELE9BQU8sRUFBRSxVQUFVO1lBQ25CLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFlBQVksRUFBRSxLQUFLLENBQUMsT0FBTztZQUMzQixT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Qy9ELEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDbkUsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU87WUFDTCxtQ0FBbUMsRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsNEJBQTRCLEVBQUUsU0FBUyxFQUFFO1lBQ3pHLG1DQUFtQyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxtQ0FBbUM7WUFDbkcsZUFBZSxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1NBQ3BGLENBQUM7UUFFRixTQUFTLGtCQUFrQixDQUFDLGFBQTRCO1lBQ3RELE9BQU87Z0JBQ0wsVUFBVSxFQUFFLGFBQWEsQ0FBQyxVQUFVO2dCQUNwQyxVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7Z0JBQ3BDLG9CQUFvQixFQUFFLGFBQWEsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDO2FBQzlELENBQUM7UUFDSixDQUFDO0tBQ0Y7SUFFUyw0QkFBNEIsQ0FBQyxLQUFnQjtRQUNyRCxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsK0NBQStDLEVBQUU7WUFDdEYsMEpBQTBKO1lBQzFKLDRFQUE0RTtZQUM1RSxrRkFBa0Y7U0FDbkYsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztLQUNmOztBQW5QSCw4QkFvUEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQWxpYXMsIEFsaWFzT3B0aW9ucyB9IGZyb20gJy4vYWxpYXMnO1xuaW1wb3J0IHsgSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbiB9IGZyb20gJy4vZ2FtZS1zZXNzaW9uLXF1ZXVlJztcbmltcG9ydCB7IEdhbWVMaWZ0TWV0cmljcyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdC9saWIvZ2FtZWxpZnQtY2FubmVkLW1ldHJpY3MuZ2VuZXJhdGVkJztcbmltcG9ydCB7IENmbkZsZWV0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcblxuLyoqXG4gKiBDdXJyZW50IHJlc291cmNlIGNhcGFjaXR5IHNldHRpbmdzIGluIGEgc3BlY2lmaWVkIGZsZWV0IG9yIGxvY2F0aW9uLlxuICogVGhlIGxvY2F0aW9uIHZhbHVlIG1pZ2h0IHJlZmVyIHRvIGEgZmxlZXQncyByZW1vdGUgbG9jYXRpb24gb3IgaXRzIGhvbWUgUmVnaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQ2FwYWNpdHkge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBBbWF6b24gRUMyIGluc3RhbmNlcyB5b3Ugd2FudCB0byBtYWludGFpbiBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKiBUaGlzIHZhbHVlIG11c3QgZmFsbCBiZXR3ZWVuIHRoZSBtaW5pbXVtIGFuZCBtYXhpbXVtIHNpemUgbGltaXRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyAwXG4gICAqL1xuICByZWFkb25seSBkZXNpcmVkQ2FwYWNpdHk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyAxXG4gICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIHRoYXQgYXJlIGFsbG93ZWQgaW4gdGhlIHNwZWNpZmllZCBmbGVldCBsb2NhdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGRlZmF1bHQgdmFsdWUgaXMgMFxuICAgKi9cbiAgcmVhZG9ubHkgbWluU2l6ZT86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBIHJlbW90ZSBsb2NhdGlvbiB3aGVyZSBhIG11bHRpLWxvY2F0aW9uIGZsZWV0IGNhbiBkZXBsb3kgRUMyIGluc3RhbmNlcyBmb3IgZ2FtZSBob3N0aW5nLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uIHtcbiAgLyoqXG4gICAqIEFuIEFXUyBSZWdpb24gY29kZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1cnJlbnQgcmVzb3VyY2UgY2FwYWNpdHkgc2V0dGluZ3MgaW4gYSBzcGVjaWZpZWQgZmxlZXQgb3IgbG9jYXRpb24uXG4gICAqIFRoZSBsb2NhdGlvbiB2YWx1ZSBtaWdodCByZWZlciB0byBhIGZsZWV0J3MgcmVtb3RlIGxvY2F0aW9uIG9yIGl0cyBob21lIFJlZ2lvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY2FwYWNpdHkgc2V0dGluZ3Mgb24gdGhlIHNwZWNpZmllZCBsb2NhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY2FwYWNpdHk/OiBMb2NhdGlvbkNhcGFjaXR5O1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2YgYSBmbGVldCBzZXJ2ZXIgcHJvY2Vzc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlclByb2Nlc3Mge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBzZXJ2ZXIgcHJvY2Vzc2VzIHVzaW5nIHRoaXMgY29uZmlndXJhdGlvbiB0aGF0IHJ1biBjb25jdXJyZW50bHkgb24gZWFjaCBpbnN0YW5jZS5cbiAgICogTWluaW11bSBpcyBgMWBcbiAgICpcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgY29uY3VycmVudEV4ZWN1dGlvbnM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiBvZiBhIGdhbWUgYnVpbGQgZXhlY3V0YWJsZSBvciB0aGUgUmVhbHRpbWUgc2NyaXB0IGZpbGUgdGhhdCBjb250YWlucyB0aGUgSW5pdCgpIGZ1bmN0aW9uLiBHYW1lIGJ1aWxkcyBhbmQgUmVhbHRpbWUgc2NyaXB0cyBhcmUgaW5zdGFsbGVkIG9uIGluc3RhbmNlcyBhdCB0aGUgcm9vdDpcbiAgICogLSBXaW5kb3dzIChjdXN0b20gZ2FtZSBidWlsZHMgb25seSk6IGBDOlxcZ2FtZWAuIEV4YW1wbGU6IGBDOlxcZ2FtZVxcTXlHYW1lXFxzZXJ2ZXIuZXhlYFxuICAgKiAtIExpbnV4OiBgL2xvY2FsL2dhbWVgLiBFeGFtcGxlczogYC9sb2NhbC9nYW1lL015R2FtZS9zZXJ2ZXIuZXhlYCBvciBgL2xvY2FsL2dhbWUvTXlSZWFsdGltZVNjcmlwdC5qc2BcbiAgICovXG4gIHJlYWRvbmx5IGxhdW5jaFBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgbGlzdCBvZiBwYXJhbWV0ZXJzIHRvIHBhc3MgdG8gdGhlIHNlcnZlciBleGVjdXRhYmxlIG9yIFJlYWx0aW1lIHNjcmlwdCBvbiBsYXVuY2guXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHBhcmFtZXRlcnNcbiAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBjb2xsZWN0aW9uIG9mIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb25zIHRoYXQgZGVzY3JpYmUgdGhlIHNldCBvZiBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAqIFNlcnZlciBwcm9jZXNzZXMgcnVuIGVpdGhlciBhbiBleGVjdXRhYmxlIGluIGEgY3VzdG9tIGdhbWUgYnVpbGQgb3IgYSBSZWFsdGltZSBTZXJ2ZXJzIHNjcmlwdC5cbiAqIEdhbWVMaWZ0IGxhdW5jaGVzIHRoZSBjb25maWd1cmVkIHByb2Nlc3NlcywgbWFuYWdlcyB0aGVpciBsaWZlIGN5Y2xlLCBhbmQgcmVwbGFjZXMgdGhlbSBhcyBuZWVkZWQuXG4gKiBFYWNoIGluc3RhbmNlIGNoZWNrcyByZWd1bGFybHkgZm9yIGFuIHVwZGF0ZWQgcnVudGltZSBjb25maWd1cmF0aW9uLlxuICpcbiAqIEEgR2FtZUxpZnQgaW5zdGFuY2UgaXMgbGltaXRlZCB0byA1MCBwcm9jZXNzZXMgcnVubmluZyBjb25jdXJyZW50bHkuXG4gKiBUbyBjYWxjdWxhdGUgdGhlIHRvdGFsIG51bWJlciBvZiBwcm9jZXNzZXMgaW4gYSBydW50aW1lIGNvbmZpZ3VyYXRpb24sIGFkZCB0aGUgdmFsdWVzIG9mIHRoZSBgQ29uY3VycmVudEV4ZWN1dGlvbnNgIHBhcmFtZXRlciBmb3IgZWFjaCBgU2VydmVyUHJvY2Vzc2AuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ZsZWV0cy1tdWx0aXByb2Nlc3MuaHRtbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1bnRpbWVDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIGFtb3VudCBvZiB0aW1lIGFsbG93ZWQgdG8gbGF1bmNoIGEgbmV3IGdhbWUgc2Vzc2lvbiBhbmQgaGF2ZSBpdCByZXBvcnQgcmVhZHkgdG8gaG9zdCBwbGF5ZXJzLlxuICAgKiBEdXJpbmcgdGhpcyB0aW1lLCB0aGUgZ2FtZSBzZXNzaW9uIGlzIGluIHN0YXR1cyBgQUNUSVZBVElOR2AuXG4gICAqXG4gICAqIElmIHRoZSBnYW1lIHNlc3Npb24gZG9lcyBub3QgYmVjb21lIGFjdGl2ZSBiZWZvcmUgdGhlIHRpbWVvdXQsIGl0IGlzIGVuZGVkIGFuZCB0aGUgZ2FtZSBzZXNzaW9uIHN0YXR1cyBpcyBjaGFuZ2VkIHRvIGBURVJNSU5BVEVEYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYnkgZGVmYXVsdCBnYW1lIHNlc3Npb24gYWN0aXZhdGlvbiB0aW1lb3V0IGlzIDMwMCBzZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0PzogY2RrLkR1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGdhbWUgc2Vzc2lvbnMgaW4gc3RhdHVzIGBBQ1RJVkFUSU5HYCB0byBhbGxvdyBvbiBhbiBpbnN0YW5jZS5cbiAgICpcbiAgICogVGhpcyBzZXR0aW5nIGxpbWl0cyB0aGUgaW5zdGFuY2UgcmVzb3VyY2VzIHRoYXQgY2FuIGJlIHVzZWQgZm9yIG5ldyBnYW1lIGFjdGl2YXRpb25zIGF0IGFueSBvbmUgdGltZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gbGltaXRcbiAgICovXG4gIHJlYWRvbmx5IG1heENvbmN1cnJlbnRHYW1lU2Vzc2lvbkFjdGl2YXRpb25zPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBIGNvbGxlY3Rpb24gb2Ygc2VydmVyIHByb2Nlc3MgY29uZmlndXJhdGlvbnMgdGhhdCBpZGVudGlmeSB3aGF0IHNlcnZlciBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZlclByb2Nlc3NlczogU2VydmVyUHJvY2Vzc1tdO1xufVxuXG4vKipcbiAqIEEgcG9saWN5IHRoYXQgbGltaXRzIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBhIHBsYXllciBjYW4gY3JlYXRlIG9uIHRoZSBzYW1lIGZsZWV0LlxuICogVGhpcyBvcHRpb25hbCBwb2xpY3kgZ2l2ZXMgZ2FtZSBvd25lcnMgY29udHJvbCBvdmVyIGhvdyBwbGF5ZXJzIGNhbiBjb25zdW1lIGF2YWlsYWJsZSBnYW1lIHNlcnZlciByZXNvdXJjZXMuXG4gKiBBIHJlc291cmNlIGNyZWF0aW9uIHBvbGljeSBtYWtlcyB0aGUgZm9sbG93aW5nIHN0YXRlbWVudDogXCJBbiBpbmRpdmlkdWFsIHBsYXllciBjYW4gY3JlYXRlIGEgbWF4aW11bSBudW1iZXIgb2YgbmV3IGdhbWUgc2Vzc2lvbnMgd2l0aGluIGEgc3BlY2lmaWVkIHRpbWUgcGVyaW9kXCIuXG4gKlxuICogVGhlIHBvbGljeSBpcyBldmFsdWF0ZWQgd2hlbiBhIHBsYXllciB0cmllcyB0byBjcmVhdGUgYSBuZXcgZ2FtZSBzZXNzaW9uLlxuICogRm9yIGV4YW1wbGUsIGFzc3VtZSB5b3UgaGF2ZSBhIHBvbGljeSBvZiAxMCBuZXcgZ2FtZSBzZXNzaW9ucyBhbmQgYSB0aW1lIHBlcmlvZCBvZiA2MCBtaW51dGVzLlxuICogT24gcmVjZWl2aW5nIGEgYENyZWF0ZUdhbWVTZXNzaW9uYCByZXF1ZXN0LCBBbWF6b24gR2FtZUxpZnQgY2hlY2tzIHRoYXQgdGhlIHBsYXllciAoaWRlbnRpZmllZCBieSBDcmVhdG9ySWQpIGhhcyBjcmVhdGVkIGZld2VyIHRoYW4gMTAgZ2FtZSBzZXNzaW9ucyBpbiB0aGUgcGFzdCA2MCBtaW51dGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeSB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyB0aGF0IGFuIGluZGl2aWR1YWwgY2FuIGNyZWF0ZSBkdXJpbmcgdGhlIHBvbGljeSBwZXJpb2QuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGxpbWl0IG9uIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyB0aGF0IGFuIGluZGl2aWR1YWwgY2FuIGNyZWF0ZSBkdXJpbmcgdGhlIHBvbGljeSBwZXJpb2RcbiAgICovXG4gIHJlYWRvbmx5IG5ld0dhbWVTZXNzaW9uc1BlckNyZWF0b3I/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lIHNwYW4gdXNlZCBpbiBldmFsdWF0aW5nIHRoZSByZXNvdXJjZSBjcmVhdGlvbiBsaW1pdCBwb2xpY3kuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHBvbGljeSBwZXJpb2RcbiAgICovXG4gIHJlYWRvbmx5IHBvbGljeVBlcmlvZD86IGNkay5EdXJhdGlvbixcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgR2FtZWxpZnQgZmxlZXRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRmxlZXQgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBpYW0uSUdyYW50YWJsZSwgSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0QXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyYW50IHRoZSBgZ3JhbnRlZWAgaWRlbnRpdHkgcGVybWlzc2lvbnMgdG8gcGVyZm9ybSBgYWN0aW9uc2AuXG4gICAqL1xuICBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQ7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIGZsZWV0LlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogSW5zdGFuY2VzIHdpdGggYEFDVElWRWAgc3RhdHVzLCB3aGljaCBtZWFucyB0aGV5IGFyZSBydW5uaW5nIGFjdGl2ZSBzZXJ2ZXIgcHJvY2Vzc2VzLlxuICAgKiBUaGUgY291bnQgaW5jbHVkZXMgaWRsZSBpbnN0YW5jZXMgYW5kIHRob3NlIHRoYXQgYXJlIGhvc3Rpbmcgb25lIG9yIG1vcmUgZ2FtZSBzZXNzaW9ucy5cbiAgICogVGhpcyBtZXRyaWMgbWVhc3VyZXMgY3VycmVudCB0b3RhbCBpbnN0YW5jZSBjYXBhY2l0eS5cbiAgICpcbiAgICogVGhpcyBtZXRyaWMgY2FuIGJlIHVzZWQgd2l0aCBhdXRvbWF0aWMgc2NhbGluZy5cbiAgICovXG4gIG1ldHJpY0FjdGl2ZUluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBQZXJjZW50YWdlIG9mIGFsbCBhY3RpdmUgaW5zdGFuY2VzIHRoYXQgYXJlIGlkbGUgKGNhbGN1bGF0ZWQgYXMgSWRsZUluc3RhbmNlcyAvIEFjdGl2ZUluc3RhbmNlcykuXG4gICAqIFRoaXMgbWV0cmljIGNhbiBiZSB1c2VkIGZvciBhdXRvbWF0aWMgc2NhbGluZy5cbiAgICovXG4gIG1ldHJpY1BlcmNlbnRJZGxlSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIFRhcmdldCBudW1iZXIgb2YgYWN0aXZlIGluc3RhbmNlcyB0aGF0IEdhbWVMaWZ0IGlzIHdvcmtpbmcgdG8gbWFpbnRhaW4gaW4gdGhlIGZsZWV0LlxuICAgKiBXaXRoIGF1dG9tYXRpYyBzY2FsaW5nLCB0aGlzIHZhbHVlIGlzIGRldGVybWluZWQgYmFzZWQgb24gdGhlIHNjYWxpbmcgcG9saWNpZXMgY3VycmVudGx5IGluIGZvcmNlLlxuICAgKiBXaXRob3V0IGF1dG9tYXRpYyBzY2FsaW5nLCB0aGlzIHZhbHVlIGlzIHNldCBtYW51YWxseS5cbiAgICogVGhpcyBtZXRyaWMgaXMgbm90IGF2YWlsYWJsZSB3aGVuIHZpZXdpbmcgZGF0YSBmb3IgZmxlZXQgbWV0cmljIGdyb3Vwcy5cbiAgICovXG4gIG1ldHJpY0Rlc2lyZWRJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogQWN0aXZlIGluc3RhbmNlcyB0aGF0IGFyZSBjdXJyZW50bHkgaG9zdGluZyB6ZXJvICgwKSBnYW1lIHNlc3Npb25zLlxuICAgKiBUaGlzIG1ldHJpYyBtZWFzdXJlcyBjYXBhY2l0eSB0aGF0IGlzIGF2YWlsYWJsZSBidXQgdW51c2VkLlxuICAgKiBUaGlzIG1ldHJpYyBjYW4gYmUgdXNlZCB3aXRoIGF1dG9tYXRpYyBzY2FsaW5nLlxuICAgKi9cbiAgbWV0cmljSWRsZUluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2Ygc3BvdCBpbnN0YW5jZXMgdGhhdCBoYXZlIGJlZW4gaW50ZXJydXB0ZWQuXG4gICAqL1xuICBtZXRyaWNJbnN0YW5jZUludGVycnVwdGlvbnMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIHRoYXQgYXJlIGFsbG93ZWQgZm9yIHRoZSBmbGVldC5cbiAgICogQSBmbGVldCdzIGluc3RhbmNlIG1heGltdW0gZGV0ZXJtaW5lcyB0aGUgY2FwYWNpdHkgY2VpbGluZyBkdXJpbmcgbWFudWFsIG9yIGF1dG9tYXRpYyBzY2FsaW5nIHVwLlxuICAgKiBUaGlzIG1ldHJpYyBpcyBub3QgYXZhaWxhYmxlIHdoZW4gdmlld2luZyBkYXRhIGZvciBmbGVldCBtZXRyaWMgZ3JvdXBzLlxuICAgKi9cbiAgbWV0cmljTWF4SW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGZvciB0aGUgZmxlZXQuXG4gICAqIEEgZmxlZXQncyBpbnN0YW5jZSBtaW5pbXVtIGRldGVybWluZXMgdGhlIGNhcGFjaXR5IGZsb29yIGR1cmluZyBtYW51YWwgb3IgYXV0b21hdGljIHNjYWxpbmcgZG93bi5cbiAgICogVGhpcyBtZXRyaWMgaXMgbm90IGF2YWlsYWJsZSB3aGVuIHZpZXdpbmcgZGF0YSBmb3IgZmxlZXQgbWV0cmljIGdyb3Vwcy5cbiAgICovXG4gIG1ldHJpY01pbkluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IEdhbWVsaWZ0IGZsZWV0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxlZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aXZlIGxhYmVsIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIGEgZmxlZXQuIEZsZWV0IG5hbWVzIGRvIG5vdCBuZWVkIHRvIGJlIHVuaXF1ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIHRoZSBmbGVldC5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gZGVzY3JpcHRpb24gaXMgcHJvdmlkZWRcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byB1c2UgT24tRGVtYW5kIG9yIFNwb3QgaW5zdGFuY2VzIGZvciB0aGlzIGZsZWV0LlxuICAgKiBCeSBkZWZhdWx0LCBmbGVldCB1c2Ugb24gZGVtYW5kIGNhcGFjaXR5LlxuICAgKlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyIHRoZSBmbGVldCBpcyBjcmVhdGVkLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvZ2FtZWxpZnQtZWMyLWluc3RhbmNlcy5odG1sI2dhbWVsaWZ0LWVjMi1pbnN0YW5jZXMtc3BvdFxuICAgKlxuICAgKiBAZGVmYXVsdCBHYW1lbGlmdCBmbGVldCB1c2Ugb24gZGVtYW5kIGNhcGFjaXR5XG4gICAqL1xuICByZWFkb25seSB1c2VTcG90PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJvbXB0cyBHYW1lTGlmdCB0byBnZW5lcmF0ZSBhIFRMUy9TU0wgY2VydGlmaWNhdGUgZm9yIHRoZSBmbGVldC5cbiAgICogR2FtZUxpZnQgdXNlcyB0aGUgY2VydGlmaWNhdGVzIHRvIGVuY3J5cHQgdHJhZmZpYyBiZXR3ZWVuIGdhbWUgY2xpZW50cyBhbmQgdGhlIGdhbWUgc2VydmVycyBydW5uaW5nIG9uIEdhbWVMaWZ0LlxuICAgKlxuICAgKiBZb3UgY2FuJ3QgY2hhbmdlIHRoaXMgcHJvcGVydHkgYWZ0ZXIgeW91IGNyZWF0ZSB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEFkZGl0aW9ubmFsIGluZm86XG4gICAqIEFXUyBDZXJ0aWZpY2F0ZSBNYW5hZ2VyIChBQ00pIGNlcnRpZmljYXRlcyBleHBpcmUgYWZ0ZXIgMTMgbW9udGhzLlxuICAgKiBDZXJ0aWZpY2F0ZSBleHBpcmF0aW9uIGNhbiBjYXVzZSBmbGVldHMgdG8gZmFpbCwgcHJldmVudGluZyBwbGF5ZXJzIGZyb20gY29ubmVjdGluZyB0byBpbnN0YW5jZXMgaW4gdGhlIGZsZWV0LlxuICAgKiBXZSByZWNvbW1lbmQgeW91IHJlcGxhY2UgZmxlZXRzIGJlZm9yZSAxMyBtb250aHMsIGNvbnNpZGVyIHVzaW5nIGZsZWV0IGFsaWFzZXMgZm9yIGEgc21vb3RoIHRyYW5zaXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IFRMUy9TU0wgY2VydGlmaWNhdGUgYXJlIGdlbmVyYXRlZCBmb3IgdGhlIGZsZWV0XG4gICAqL1xuICByZWFkb25seSB1c2VDZXJ0aWZpY2F0ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IGZsZWV0IGluc3RhbmNlcyB0byBhY2Nlc3MgQVdTIHJlc3NvdXJjZXMuXG4gICAqIFdpdGggYSByb2xlIHNldCwgYW55IGFwcGxpY2F0aW9uIHRoYXQgcnVucyBvbiBhbiBpbnN0YW5jZSBpbiB0aGlzIGZsZWV0IGNhbiBhc3N1bWUgdGhlIHJvbGUsIGluY2x1ZGluZyBpbnN0YWxsIHNjcmlwdHMsIHNlcnZlciBwcm9jZXNzZXMsIGFuZCBkYWVtb25zIChiYWNrZ3JvdW5kIHByb2Nlc3NlcykuXG4gICAqIElmIHByb3ZpZGluZyBhIGN1c3RvbSByb2xlLCBpdCBuZWVkcyB0byB0cnVzdCB0aGUgR2FtZUxpZnQgc2VydmljZSBwcmluY2lwYWwgKGdhbWVsaWZ0LmFtYXpvbmF3cy5jb20pLlxuICAgKiBObyBwZXJtaXNzaW9uIGlzIHJlcXVpcmVkIGJ5IGRlZmF1bHQuXG4gICAqXG4gICAqIFRoaXMgcHJvcGVydHkgY2Fubm90IGJlIGNoYW5nZWQgYWZ0ZXIgdGhlIGZsZWV0IGlzIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1zZGstc2VydmVyLXJlc291cmNlcy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYSByb2xlIHdpbGwgYmUgY3JlYXRlZCB3aXRoIGRlZmF1bHQgdHJ1c3QgdG8gR2FtZWxpZnQgc2VydmljZSBwcmluY2lwYWwuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBBIFZQQyBwZWVyaW5nIGNvbm5lY3Rpb24gYmV0d2VlbiB5b3VyIEdhbWVMaWZ0LWhvc3RlZCBnYW1lIHNlcnZlcnMgYW5kIHlvdXIgb3RoZXIgbm9uLUdhbWVMaWZ0IHJlc291cmNlcy5cbiAgICogVXNlIEFtYXpvbiBWaXJ0dWFsIFByaXZhdGUgQ2xvdWQgKFZQQykgcGVlcmluZyBjb25uZWN0aW9ucyB0byBlbmFibGUgeW91ciBnYW1lIHNlcnZlcnMgdG8gY29tbXVuaWNhdGUgZGlyZWN0bHkgYW5kIHByaXZhdGVseSB3aXRoIHlvdXIgb3RoZXIgQVdTIHJlc291cmNlcywgc3VjaCBhcyBhIHdlYiBzZXJ2aWNlIG9yIGEgcmVwb3NpdG9yeS5cbiAgICogWW91IGNhbiBlc3RhYmxpc2ggVlBDIHBlZXJpbmcgd2l0aCBhbnkgcmVzb3VyY2VzIHRoYXQgcnVuIG9uIEFXUyBhbmQgYXJlIG1hbmFnZWQgYnkgYW4gQVdTIGFjY291bnQgdGhhdCB5b3UgaGF2ZSBhY2Nlc3MgdG8uXG4gICAqIFRoZSBWUEMgbXVzdCBiZSBpbiB0aGUgc2FtZSBSZWdpb24gYXMgeW91ciBmbGVldC5cbiAgICpcbiAgICogV2FybmluZzpcbiAgICogQmUgc3VyZSB0byBjcmVhdGUgYSBWUEMgUGVlcmluZyBhdXRob3JpemF0aW9uIHRocm91Z2ggR2FtZWxpZnQgU2VydmljZSBBUEkuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS92cGMtcGVlcmluZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHZwYyBwZWVyaW5nXG4gICAqL1xuICByZWFkb25seSBwZWVyVnBjPzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIGFuIEFXUyBDbG91ZFdhdGNoIG1ldHJpYyBncm91cCB0byBhZGQgdGhpcyBmbGVldCB0by5cbiAgICogQSBtZXRyaWMgZ3JvdXAgaXMgdXNlZCB0byBhZ2dyZWdhdGUgdGhlIG1ldHJpY3MgZm9yIG11bHRpcGxlIGZsZWV0cy5cbiAgICogWW91IGNhbiBzcGVjaWZ5IGFuIGV4aXN0aW5nIG1ldHJpYyBncm91cCBuYW1lIG9yIHNldCBhIG5ldyBuYW1lIHRvIGNyZWF0ZSBhIG5ldyBtZXRyaWMgZ3JvdXAuXG4gICAqIEEgZmxlZXQgY2FuIGJlIGluY2x1ZGVkIGluIG9ubHkgb25lIG1ldHJpYyBncm91cCBhdCBhIHRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IEZsZWV0IG1ldHJpY3MgYXJlIGFnZ3JlZ2F0ZWQgd2l0aCBvdGhlciBmbGVldHMgaW4gdGhlIGRlZmF1bHQgbWV0cmljIGdyb3VwXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNHcm91cD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEdhbWVMaWZ0LXN1cHBvcnRlZCBBbWF6b24gRUMyIGluc3RhbmNlIHR5cGUgdG8gdXNlIGZvciBhbGwgZmxlZXQgaW5zdGFuY2VzLlxuICAgKiBJbnN0YW5jZSB0eXBlIGRldGVybWluZXMgdGhlIGNvbXB1dGluZyByZXNvdXJjZXMgdGhhdCB3aWxsIGJlIHVzZWQgdG8gaG9zdCB5b3VyIGdhbWUgc2VydmVycywgaW5jbHVkaW5nIENQVSwgbWVtb3J5LCBzdG9yYWdlLCBhbmQgbmV0d29ya2luZyBjYXBhY2l0eS5cbiAgICpcbiAgICogQHNlZSBodHRwOi8vYXdzLmFtYXpvbi5jb20vZWMyL2luc3RhbmNlLXR5cGVzLyBmb3IgZGV0YWlsZWQgZGVzY3JpcHRpb25zIG9mIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZXMuXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IGVjMi5JbnN0YW5jZVR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgRUMyIGluc3RhbmNlcyB0aGF0IHlvdSB3YW50IHRoaXMgZmxlZXQgdG8gaG9zdC5cbiAgICogV2hlbiBjcmVhdGluZyBhIG5ldyBmbGVldCwgR2FtZUxpZnQgYXV0b21hdGljYWxseSBzZXRzIHRoaXMgdmFsdWUgdG8gXCIxXCIgYW5kIGluaXRpYXRlcyBhIHNpbmdsZSBpbnN0YW5jZS5cbiAgICogT25jZSB0aGUgZmxlZXQgaXMgYWN0aXZlLCB1cGRhdGUgdGhpcyB2YWx1ZSB0byB0cmlnZ2VyIEdhbWVMaWZ0IHRvIGFkZCBvciByZW1vdmUgaW5zdGFuY2VzIGZyb20gdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBEZWZhdWx0IGNhcGFjaXR5IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IGRlc2lyZWRDYXBhY2l0eT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBhbGxvd2VkIGluIHRoZSBzcGVjaWZpZWQgZmxlZXQgbG9jYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IG1pblNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCBpcyAxXG4gICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIG9mIHRlcm1pbmF0aW9uIHByb3RlY3Rpb24gZm9yIGFjdGl2ZSBnYW1lIHNlc3Npb25zIG9uIHRoZSBmbGVldC5cbiAgICogQnkgZGVmYXVsdCwgbmV3IGdhbWUgc2Vzc2lvbnMgYXJlIHByb3RlY3RlZCBhbmQgY2Fubm90IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZSAtIEdhbWUgc2Vzc2lvbnMgaW4gYEFDVElWRWAgc3RhdHVzIGNhbm5vdCBiZSB0ZXJtaW5hdGVkIGR1cmluZyBhIHNjYWxlLWRvd24gZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwcm90ZWN0TmV3R2FtZVNlc3Npb24/IDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQSBjb2xsZWN0aW9uIG9mIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb25zIHRoYXQgZGVzY3JpYmUgdGhlIHNldCBvZiBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAgICogU2VydmVyIHByb2Nlc3NlcyBydW4gZWl0aGVyIGFuIGV4ZWN1dGFibGUgaW4gYSBjdXN0b20gZ2FtZSBidWlsZCBvciBhIFJlYWx0aW1lIFNlcnZlcnMgc2NyaXB0LlxuICAgKiBHYW1lTGlmdCBsYXVuY2hlcyB0aGUgY29uZmlndXJlZCBwcm9jZXNzZXMsIG1hbmFnZXMgdGhlaXIgbGlmZSBjeWNsZSwgYW5kIHJlcGxhY2VzIHRoZW0gYXMgbmVlZGVkLlxuICAgKiBFYWNoIGluc3RhbmNlIGNoZWNrcyByZWd1bGFybHkgZm9yIGFuIHVwZGF0ZWQgcnVudGltZSBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBBIEdhbWVMaWZ0IGluc3RhbmNlIGlzIGxpbWl0ZWQgdG8gNTAgcHJvY2Vzc2VzIHJ1bm5pbmcgY29uY3VycmVudGx5LlxuICAgKiBUbyBjYWxjdWxhdGUgdGhlIHRvdGFsIG51bWJlciBvZiBwcm9jZXNzZXMgaW4gYSBydW50aW1lIGNvbmZpZ3VyYXRpb24sIGFkZCB0aGUgdmFsdWVzIG9mIHRoZSBDb25jdXJyZW50RXhlY3V0aW9ucyBwYXJhbWV0ZXIgZm9yIGVhY2ggU2VydmVyUHJvY2Vzcy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ZsZWV0cy1tdWx0aXByb2Nlc3MuaHRtbFxuICAgKi9cbiAgcmVhZG9ubHkgcnVudGltZUNvbmZpZ3VyYXRpb246IFJ1bnRpbWVDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBBIHNldCBvZiByZW1vdGUgbG9jYXRpb25zIHRvIGRlcGxveSBhZGRpdGlvbmFsIGluc3RhbmNlcyB0byBhbmQgbWFuYWdlIGFzIHBhcnQgb2YgdGhlIGZsZWV0LlxuICAgKiBUaGlzIHBhcmFtZXRlciBjYW4gb25seSBiZSB1c2VkIHdoZW4gY3JlYXRpbmcgZmxlZXRzIGluIEFXUyBSZWdpb25zIHRoYXQgc3VwcG9ydCBtdWx0aXBsZSBsb2NhdGlvbnMuXG4gICAqIFlvdSBjYW4gYWRkIGFueSBHYW1lTGlmdC1zdXBwb3J0ZWQgQVdTIFJlZ2lvbiBhcyBhIHJlbW90ZSBsb2NhdGlvbiwgaW4gdGhlIGZvcm0gb2YgYW4gQVdTIFJlZ2lvbiBjb2RlIHN1Y2ggYXMgYHVzLXdlc3QtMmAuXG4gICAqIFRvIGNyZWF0ZSBhIGZsZWV0IHdpdGggaW5zdGFuY2VzIGluIHRoZSBob21lIHJlZ2lvbiBvbmx5LCBvbWl0IHRoaXMgcGFyYW1ldGVyLlxuICAgKlxuICAgKiBAZGVmYXVsdCBDcmVhdGUgYSBmbGVldCB3aXRoIGluc3RhbmNlcyBpbiB0aGUgaG9tZSByZWdpb24gb25seVxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb25zPzogTG9jYXRpb25bXTtcblxuICAvKipcbiAgICogQSBwb2xpY3kgdGhhdCBsaW1pdHMgdGhlIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIHRoYXQgYW4gaW5kaXZpZHVhbCBwbGF5ZXIgY2FuIGNyZWF0ZSBvbiBpbnN0YW5jZXMgaW4gdGhpcyBmbGVldCB3aXRoaW4gYSBzcGVjaWZpZWQgc3BhbiBvZiB0aW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyByZXNvdXJjZSBjcmVhdGlvbiBsaW1pdCBwb2xpY3lcbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeT86IFJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeTtcbn1cblxuLyoqXG4gKiBBIGZ1bGwgc3BlY2lmaWNhdGlvbiBvZiBhIGZsZWV0IHRoYXQgY2FuIGJlIHVzZWQgdG8gaW1wb3J0IGl0IGZsdWVudGx5IGludG8gdGhlIENESyBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbGVldEF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZmxlZXRcbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBmbGVldEFybmAgYW5kIGBmbGVldElkYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGZsZWV0SWRgLlxuICAgKi9cbiAgcmVhZG9ubHkgZmxlZXRBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBmbGVldFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGZsZWV0SWRgIGFuZCBgZmxlZXRBcm5gICBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGZsZWV0QXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IGZsZWV0IGluc3RhbmNlcyB0byBhY2Nlc3MgQVdTIHJlc3NvdXJjZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBpbXBvcnRlZCBmbGVldCBjYW5ub3QgYmUgZ3JhbnRlZCBhY2Nlc3MgdG8gb3RoZXIgcmVzb3VyY2VzIGFzIGFuIGBpYW0uSUdyYW50YWJsZWAuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgZmxlZXQuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGbGVldEJhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJRmxlZXQge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBzdGF0aWMgZnJvbUZsZWV0QXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogRmxlZXRBdHRyaWJ1dGVzKTogSUZsZWV0IHtcbiAgICBpZiAoIWF0dHJzLmZsZWV0SWQgJiYgIWF0dHJzLmZsZWV0QXJuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBmbGVldElkIG9yIGZsZWV0QXJuIG11c3QgYmUgcHJvdmlkZWQgaW4gRmxlZXRBdHRyaWJ1dGVzJyk7XG4gICAgfVxuICAgIGNvbnN0IGZsZWV0SWQgPSBhdHRycy5mbGVldElkID8/XG4gICAgICBjZGsuU3RhY2sub2Yoc2NvcGUpLnNwbGl0QXJuKGF0dHJzLmZsZWV0QXJuISwgY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG5cbiAgICBpZiAoIWZsZWV0SWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gZmxlZXQgaWRlbnRpZmllciBmb3VuZCBpbiBBUk46ICcke2F0dHJzLmZsZWV0QXJufSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBmbGVldEFybiA9IGF0dHJzLmZsZWV0QXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2ZsZWV0JyxcbiAgICAgIHJlc291cmNlTmFtZTogYXR0cnMuZmxlZXRJZCxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEZsZWV0QmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZmxlZXRJZCA9IGZsZWV0SWQhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IGZsZWV0QXJuID0gZmxlZXRBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWwgPSBhdHRycy5yb2xlID8/IG5ldyBpYW0uVW5rbm93blByaW5jaXBhbCh7IHJlc291cmNlOiB0aGlzIH0pO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHJvbGUgPSBhdHRycy5yb2xlO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBmbGVldEFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBmbGVldC5cbiAgICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZmxlZXRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBmbGVldC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBmbGVldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZmxlZXQgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWw6IGlhbS5JUHJpbmNpcGFsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25zOiBMb2NhdGlvbltdID0gW107XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYW4gYWxpYXMgZm9yIHRoaXMgZmxlZXQuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGRlY2xhcmUgY29uc3QgZmxlZXQ6IGdhbWVsaWZ0LkZsZWV0QmFzZTtcbiAgICpcbiAgICogZmxlZXQuYWRkQWxpYXMoJ0xpdmUnKTtcbiAgICpcbiAgICogLy8gSXMgZXF1aXZhbGVudCB0b1xuICAgKlxuICAgKiBuZXcgZ2FtZWxpZnQuQWxpYXModGhpcywgJ0FsaWFzTGl2ZScsIHtcbiAgICogICBhbGlhc05hbWU6ICdMaXZlJyxcbiAgICogICBmbGVldDogZmxlZXQsXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogQHBhcmFtIGFsaWFzTmFtZSBUaGUgbmFtZSBvZiB0aGUgYWxpYXNcbiAgICogQHBhcmFtIG9wdGlvbnMgQWxpYXMgb3B0aW9uc1xuICAgKi9cbiAgcHVibGljIGFkZEFsaWFzKGFsaWFzTmFtZTogc3RyaW5nLCBvcHRpb25zOiBBbGlhc09wdGlvbnMgPSB7fSkge1xuICAgIHJldHVybiBuZXcgQWxpYXModGhpcywgYEFsaWFzJHthbGlhc05hbWV9YCwge1xuICAgICAgYWxpYXNOYW1lLFxuICAgICAgZmxlZXQ6IHRoaXMsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICByZXNvdXJjZUFybnM6IFt0aGlzLmZsZWV0QXJuXSxcbiAgICAgIGdyYW50ZWU6IGdyYW50ZWUsXG4gICAgICBhY3Rpb25zOiBhY3Rpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiBuZXcgY2xvdWR3YXRjaC5NZXRyaWMoe1xuICAgICAgbmFtZXNwYWNlOiAnQVdTL0dhbWVMaWZ0JyxcbiAgICAgIG1ldHJpY05hbWU6IG1ldHJpY05hbWUsXG4gICAgICBkaW1lbnNpb25zTWFwOiB7XG4gICAgICAgIEZsZWV0SWQ6IHRoaXMuZmxlZXRJZCxcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KS5hdHRhY2hUbyh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNBY3RpdmVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5hY3RpdmVJbnN0YW5jZXNBdmVyYWdlLCBwcm9wcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljUGVyY2VudElkbGVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5wZXJjZW50SWRsZUluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNEZXNpcmVkSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MuZGVzaXJlZEluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNJZGxlSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MuaWRsZUluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNJbnN0YW5jZUludGVycnVwdGlvbnMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5pbnN0YW5jZUludGVycnVwdGlvbnNTdW0sIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNNYXhJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5tYXhJbnN0YW5jZXNBdmVyYWdlLCBwcm9wcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljTWluSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MubWluSW5zdGFuY2VzQXZlcmFnZSwgcHJvcHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBjYW5uZWRNZXRyaWMoZm46IChkaW1zOiB7IEZsZWV0SWQ6IHN0cmluZyB9KSA9PiBjbG91ZHdhdGNoLk1ldHJpY1Byb3BzLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIC4uLmZuKHsgRmxlZXRJZDogdGhpcy5mbGVldElkIH0pLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiB0byBwdXQgaW50byB0aGUgZGVzdGluYXRpb24gZmllbGQgb2YgYSBnYW1lIHNlc3Npb24gcXVldWVcbiAgICovXG4gIHB1YmxpYyBnZXQgcmVzb3VyY2VBcm5Gb3JEZXN0aW5hdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5mbGVldEFybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcmVtb3RlIGxvY2F0aW9ucyB0byBkZXBsb3kgYWRkaXRpb25hbCBpbnN0YW5jZXMgdG8gYW5kIG1hbmFnZSBhcyBwYXJ0IG9mIHRoZSBmbGVldC5cbiAgICpcbiAgICogQHBhcmFtIHJlZ2lvbiBUaGUgQVdTIHJlZ2lvbiB0byBhZGRcbiAgICovXG4gIHB1YmxpYyBhZGRMb2NhdGlvbihyZWdpb246IHN0cmluZywgZGVzaXJlZENhcGFjaXR5PzogbnVtYmVyLCBtaW5TaXplPzogbnVtYmVyLCBtYXhTaXplPzogbnVtYmVyKSB7XG4gICAgdGhpcy5hZGRJbnRlcm5hbExvY2F0aW9uKHtcbiAgICAgIHJlZ2lvbjogcmVnaW9uLFxuICAgICAgY2FwYWNpdHk6IHtcbiAgICAgICAgZGVzaXJlZENhcGFjaXR5OiBkZXNpcmVkQ2FwYWNpdHksXG4gICAgICAgIG1pblNpemU6IG1pblNpemUsXG4gICAgICAgIG1heFNpemU6IG1heFNpemUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByZW1vdGUgbG9jYXRpb25zIHRvIGRlcGxveSBhZGRpdGlvbmFsIGluc3RhbmNlcyB0byBhbmQgbWFuYWdlIGFzIHBhcnQgb2YgdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAcGFyYW0gbG9jYXRpb24gVGhlIGxvY2F0aW9uIHRvIGFkZFxuICAgKi9cbiAgcHVibGljIGFkZEludGVybmFsTG9jYXRpb24obG9jYXRpb246IExvY2F0aW9uKSB7XG4gICAgaWYgKHRoaXMubG9jYXRpb25zLmxlbmd0aCA9PSAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbW9yZSB0aGFuIDEwMCBsb2NhdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2NhdGlvbnMucHVzaChsb2NhdGlvbik7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VSZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kocHJvcHM6IEZsZWV0UHJvcHMpOiBDZm5GbGVldC5SZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3lQcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kgfHxcbiAgICAgICAgKCFwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kubmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvclxuICAgICAgICAgICAgJiYgIXByb3BzLnJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeS5wb2xpY3lQZXJpb2QpKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBuZXdHYW1lU2Vzc2lvbnNQZXJDcmVhdG9yOiBwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kubmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvcixcbiAgICAgIHBvbGljeVBlcmlvZEluTWludXRlczogcHJvcHMucmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5LnBvbGljeVBlcmlvZD8udG9NaW51dGVzKCksXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxvY2F0aW9ucygpOiBDZm5GbGVldC5Mb2NhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eVtdIHzCoHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmxvY2F0aW9ucyB8fCB0aGlzLmxvY2F0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG5cbiAgICByZXR1cm4gdGhpcy5sb2NhdGlvbnMubWFwKHBhcnNlTG9jYXRpb24pO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VMb2NhdGlvbihsb2NhdGlvbjogTG9jYXRpb24pOiBDZm5GbGVldC5Mb2NhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBsb2NhdGlvbjogbG9jYXRpb24ucmVnaW9uLFxuICAgICAgICBsb2NhdGlvbkNhcGFjaXR5OiBzZWxmLnBhcnNlTG9jYXRpb25DYXBhY2l0eShsb2NhdGlvbi5jYXBhY2l0eSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxvY2F0aW9uQ2FwYWNpdHkoY2FwYWNpdHk/OiBMb2NhdGlvbkNhcGFjaXR5KTogQ2ZuRmxlZXQuTG9jYXRpb25DYXBhY2l0eVByb3BlcnR5IHzCoHVuZGVmaW5lZCB7XG4gICAgaWYgKCFjYXBhY2l0eSB8fFxuICAgICAgICAoIWNhcGFjaXR5LmRlc2lyZWRDYXBhY2l0eVxuICAgICAgICAgICAgJiYgIWNhcGFjaXR5Lm1pblNpemVcbiAgICAgICAgICAgICYmICFjYXBhY2l0eS5tYXhTaXplKSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGVzaXJlZEVjMkluc3RhbmNlczogY2FwYWNpdHkuZGVzaXJlZENhcGFjaXR5ID8/IDAsXG4gICAgICBtaW5TaXplOiBjYXBhY2l0eS5taW5TaXplID8/IDAsXG4gICAgICBtYXhTaXplOiBjYXBhY2l0eS5tYXhTaXplID8/IDEsXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZVJ1bnRpbWVDb25maWd1cmF0aW9uKHByb3BzOiBGbGVldFByb3BzKTogQ2ZuRmxlZXQuUnVudGltZUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB8wqB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24gfHxcbiAgICAgICAgKCFwcm9wcy5ydW50aW1lQ29uZmlndXJhdGlvbi5nYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0XG4gICAgICAgICAgICAmJiAhcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24ubWF4Q29uY3VycmVudEdhbWVTZXNzaW9uQWN0aXZhdGlvbnNcbiAgICAgICAgICAgICYmIHByb3BzLnJ1bnRpbWVDb25maWd1cmF0aW9uLnNlcnZlclByb2Nlc3Nlcy5sZW5ndGggPT0gMCkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBnYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0U2Vjb25kczogcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24uZ2FtZVNlc3Npb25BY3RpdmF0aW9uVGltZW91dD8udG9TZWNvbmRzKCksXG4gICAgICBtYXhDb25jdXJyZW50R2FtZVNlc3Npb25BY3RpdmF0aW9uczogcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24ubWF4Q29uY3VycmVudEdhbWVTZXNzaW9uQWN0aXZhdGlvbnMsXG4gICAgICBzZXJ2ZXJQcm9jZXNzZXM6IHByb3BzLnJ1bnRpbWVDb25maWd1cmF0aW9uLnNlcnZlclByb2Nlc3Nlcy5tYXAocGFyc2VTZXJ2ZXJQcm9jZXNzKSxcbiAgICB9O1xuXG4gICAgZnVuY3Rpb24gcGFyc2VTZXJ2ZXJQcm9jZXNzKHNlcnZlclByb2Nlc3M6IFNlcnZlclByb2Nlc3MpOiBDZm5GbGVldC5TZXJ2ZXJQcm9jZXNzUHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFyYW1ldGVyczogc2VydmVyUHJvY2Vzcy5wYXJhbWV0ZXJzLFxuICAgICAgICBsYXVuY2hQYXRoOiBzZXJ2ZXJQcm9jZXNzLmxhdW5jaFBhdGgsXG4gICAgICAgIGNvbmN1cnJlbnRFeGVjdXRpb25zOiBzZXJ2ZXJQcm9jZXNzLmNvbmN1cnJlbnRFeGVjdXRpb25zID8/IDEsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB3YXJuVnBjUGVlcmluZ0F1dGhvcml6YXRpb25zKHNjb3BlOiBDb25zdHJ1Y3QpOiB2b2lkIHtcbiAgICBjZGsuQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZFdhcm5pbmdWMignQGF3cy1jZGsvYXdzLWdhbWVsaWZ0OmZsZWV0QXV0b3JpemVWcGNQZWVyaW5nJywgW1xuICAgICAgJ1RvIGF1dGhvcml6ZSB0aGUgVlBDIHBlZXJpbmcsIGNhbGwgdGhlIEdhbWVMaWZ0IHNlcnZpY2UgQVBJIENyZWF0ZVZwY1BlZXJpbmdBdXRob3JpemF0aW9uKCkgb3IgdXNlIHRoZSBBV1MgQ0xJIGNvbW1hbmQgY3JlYXRlLXZwYy1wZWVyaW5nLWF1dGhvcml6YXRpb24uJyxcbiAgICAgICdNYWtlIHRoaXMgY2FsbCB1c2luZyB0aGUgYWNjb3VudCB0aGF0IG1hbmFnZXMgeW91ciBub24tR2FtZUxpZnQgcmVzb3VyY2VzLicsXG4gICAgICAnU2VlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL3ZwYy1wZWVyaW5nLmh0bWwnLFxuICAgIF0uam9pbignXFxuJykpO1xuICB9XG59XG4iXX0=
|
|
274
|
+
FleetBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.FleetBase", version: "2.127.0-alpha.0" };
|
|
275
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxlZXQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZsZWV0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseURBQXlEO0FBRXpELDJDQUEyQztBQUMzQyx3Q0FBd0M7QUFFeEMsbUNBQThDO0FBRTlDLHNIQUFpRztBQThZakc7O0dBRUc7QUFDSCxNQUFzQixTQUFVLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFBcEQ7O1FBbURtQixjQUFTLEdBQWUsRUFBRSxDQUFDO0tBaU03QztJQW5QQzs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjs7Ozs7Ozs7OztRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7UUFDcEYsQ0FBQztRQUNELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPO1lBQzNCLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFFaEcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsS0FBSyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7UUFDM0UsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQy9ELE9BQU8sRUFBRSxVQUFVO1lBQ25CLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFlBQVksRUFBRSxLQUFLLENBQUMsT0FBTztZQUMzQixT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Qy9ELEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDbkUsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUNELE9BQU87WUFDTCxtQ0FBbUMsRUFBRSxLQUFLLENBQUMsb0JBQW9CLENBQUMsNEJBQTRCLEVBQUUsU0FBUyxFQUFFO1lBQ3pHLG1DQUFtQyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxtQ0FBbUM7WUFDbkcsZUFBZSxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1NBQ3BGLENBQUM7UUFFRixTQUFTLGtCQUFrQixDQUFDLGFBQTRCO1lBQ3RELE9BQU87Z0JBQ0wsVUFBVSxFQUFFLGFBQWEsQ0FBQyxVQUFVO2dCQUNwQyxVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7Z0JBQ3BDLG9CQUFvQixFQUFFLGFBQWEsQ0FBQyxvQkFBb0IsSUFBSSxDQUFDO2FBQzlELENBQUM7UUFDSixDQUFDO0tBQ0Y7SUFFUyw0QkFBNEIsQ0FBQyxLQUFnQjtRQUNyRCxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxZQUFZLENBQUMsK0NBQStDLEVBQUU7WUFDdEYsMEpBQTBKO1lBQzFKLDRFQUE0RTtZQUM1RSxrRkFBa0Y7U0FDbkYsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztLQUNmOztBQW5QSCw4QkFvUEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQWxpYXMsIEFsaWFzT3B0aW9ucyB9IGZyb20gJy4vYWxpYXMnO1xuaW1wb3J0IHsgSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbiB9IGZyb20gJy4vZ2FtZS1zZXNzaW9uLXF1ZXVlJztcbmltcG9ydCB7IEdhbWVMaWZ0TWV0cmljcyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdC9saWIvZ2FtZWxpZnQtY2FubmVkLW1ldHJpY3MuZ2VuZXJhdGVkJztcbmltcG9ydCB7IENmbkZsZWV0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcblxuLyoqXG4gKiBDdXJyZW50IHJlc291cmNlIGNhcGFjaXR5IHNldHRpbmdzIGluIGEgc3BlY2lmaWVkIGZsZWV0IG9yIGxvY2F0aW9uLlxuICogVGhlIGxvY2F0aW9uIHZhbHVlIG1pZ2h0IHJlZmVyIHRvIGEgZmxlZXQncyByZW1vdGUgbG9jYXRpb24gb3IgaXRzIGhvbWUgUmVnaW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQ2FwYWNpdHkge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBBbWF6b24gRUMyIGluc3RhbmNlcyB5b3Ugd2FudCB0byBtYWludGFpbiBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKiBUaGlzIHZhbHVlIG11c3QgZmFsbCBiZXR3ZWVuIHRoZSBtaW5pbXVtIGFuZCBtYXhpbXVtIHNpemUgbGltaXRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyAwXG4gICAqL1xuICByZWFkb25seSBkZXNpcmVkQ2FwYWNpdHk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyAxXG4gICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIHRoYXQgYXJlIGFsbG93ZWQgaW4gdGhlIHNwZWNpZmllZCBmbGVldCBsb2NhdGlvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGRlZmF1bHQgdmFsdWUgaXMgMFxuICAgKi9cbiAgcmVhZG9ubHkgbWluU2l6ZT86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBIHJlbW90ZSBsb2NhdGlvbiB3aGVyZSBhIG11bHRpLWxvY2F0aW9uIGZsZWV0IGNhbiBkZXBsb3kgRUMyIGluc3RhbmNlcyBmb3IgZ2FtZSBob3N0aW5nLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uIHtcbiAgLyoqXG4gICAqIEFuIEFXUyBSZWdpb24gY29kZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEN1cnJlbnQgcmVzb3VyY2UgY2FwYWNpdHkgc2V0dGluZ3MgaW4gYSBzcGVjaWZpZWQgZmxlZXQgb3IgbG9jYXRpb24uXG4gICAqIFRoZSBsb2NhdGlvbiB2YWx1ZSBtaWdodCByZWZlciB0byBhIGZsZWV0J3MgcmVtb3RlIGxvY2F0aW9uIG9yIGl0cyBob21lIFJlZ2lvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY2FwYWNpdHkgc2V0dGluZ3Mgb24gdGhlIHNwZWNpZmllZCBsb2NhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY2FwYWNpdHk/OiBMb2NhdGlvbkNhcGFjaXR5O1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb2YgYSBmbGVldCBzZXJ2ZXIgcHJvY2Vzc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlclByb2Nlc3Mge1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBzZXJ2ZXIgcHJvY2Vzc2VzIHVzaW5nIHRoaXMgY29uZmlndXJhdGlvbiB0aGF0IHJ1biBjb25jdXJyZW50bHkgb24gZWFjaCBpbnN0YW5jZS5cbiAgICogTWluaW11bSBpcyBgMWBcbiAgICpcbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgY29uY3VycmVudEV4ZWN1dGlvbnM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiBvZiBhIGdhbWUgYnVpbGQgZXhlY3V0YWJsZSBvciB0aGUgUmVhbHRpbWUgc2NyaXB0IGZpbGUgdGhhdCBjb250YWlucyB0aGUgSW5pdCgpIGZ1bmN0aW9uLiBHYW1lIGJ1aWxkcyBhbmQgUmVhbHRpbWUgc2NyaXB0cyBhcmUgaW5zdGFsbGVkIG9uIGluc3RhbmNlcyBhdCB0aGUgcm9vdDpcbiAgICogLSBXaW5kb3dzIChjdXN0b20gZ2FtZSBidWlsZHMgb25seSk6IGBDOlxcZ2FtZWAuIEV4YW1wbGU6IGBDOlxcZ2FtZVxcTXlHYW1lXFxzZXJ2ZXIuZXhlYFxuICAgKiAtIExpbnV4OiBgL2xvY2FsL2dhbWVgLiBFeGFtcGxlczogYC9sb2NhbC9nYW1lL015R2FtZS9zZXJ2ZXIuZXhlYCBvciBgL2xvY2FsL2dhbWUvTXlSZWFsdGltZVNjcmlwdC5qc2BcbiAgICovXG4gIHJlYWRvbmx5IGxhdW5jaFBhdGg6IHN0cmluZztcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgbGlzdCBvZiBwYXJhbWV0ZXJzIHRvIHBhc3MgdG8gdGhlIHNlcnZlciBleGVjdXRhYmxlIG9yIFJlYWx0aW1lIHNjcmlwdCBvbiBsYXVuY2guXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHBhcmFtZXRlcnNcbiAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQSBjb2xsZWN0aW9uIG9mIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb25zIHRoYXQgZGVzY3JpYmUgdGhlIHNldCBvZiBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAqIFNlcnZlciBwcm9jZXNzZXMgcnVuIGVpdGhlciBhbiBleGVjdXRhYmxlIGluIGEgY3VzdG9tIGdhbWUgYnVpbGQgb3IgYSBSZWFsdGltZSBTZXJ2ZXJzIHNjcmlwdC5cbiAqIEdhbWVMaWZ0IGxhdW5jaGVzIHRoZSBjb25maWd1cmVkIHByb2Nlc3NlcywgbWFuYWdlcyB0aGVpciBsaWZlIGN5Y2xlLCBhbmQgcmVwbGFjZXMgdGhlbSBhcyBuZWVkZWQuXG4gKiBFYWNoIGluc3RhbmNlIGNoZWNrcyByZWd1bGFybHkgZm9yIGFuIHVwZGF0ZWQgcnVudGltZSBjb25maWd1cmF0aW9uLlxuICpcbiAqIEEgR2FtZUxpZnQgaW5zdGFuY2UgaXMgbGltaXRlZCB0byA1MCBwcm9jZXNzZXMgcnVubmluZyBjb25jdXJyZW50bHkuXG4gKiBUbyBjYWxjdWxhdGUgdGhlIHRvdGFsIG51bWJlciBvZiBwcm9jZXNzZXMgaW4gYSBydW50aW1lIGNvbmZpZ3VyYXRpb24sIGFkZCB0aGUgdmFsdWVzIG9mIHRoZSBgQ29uY3VycmVudEV4ZWN1dGlvbnNgIHBhcmFtZXRlciBmb3IgZWFjaCBgU2VydmVyUHJvY2Vzc2AuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ZsZWV0cy1tdWx0aXByb2Nlc3MuaHRtbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1bnRpbWVDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIGFtb3VudCBvZiB0aW1lIGFsbG93ZWQgdG8gbGF1bmNoIGEgbmV3IGdhbWUgc2Vzc2lvbiBhbmQgaGF2ZSBpdCByZXBvcnQgcmVhZHkgdG8gaG9zdCBwbGF5ZXJzLlxuICAgKiBEdXJpbmcgdGhpcyB0aW1lLCB0aGUgZ2FtZSBzZXNzaW9uIGlzIGluIHN0YXR1cyBgQUNUSVZBVElOR2AuXG4gICAqXG4gICAqIElmIHRoZSBnYW1lIHNlc3Npb24gZG9lcyBub3QgYmVjb21lIGFjdGl2ZSBiZWZvcmUgdGhlIHRpbWVvdXQsIGl0IGlzIGVuZGVkIGFuZCB0aGUgZ2FtZSBzZXNzaW9uIHN0YXR1cyBpcyBjaGFuZ2VkIHRvIGBURVJNSU5BVEVEYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYnkgZGVmYXVsdCBnYW1lIHNlc3Npb24gYWN0aXZhdGlvbiB0aW1lb3V0IGlzIDMwMCBzZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0PzogY2RrLkR1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIGdhbWUgc2Vzc2lvbnMgaW4gc3RhdHVzIGBBQ1RJVkFUSU5HYCB0byBhbGxvdyBvbiBhbiBpbnN0YW5jZS5cbiAgICpcbiAgICogVGhpcyBzZXR0aW5nIGxpbWl0cyB0aGUgaW5zdGFuY2UgcmVzb3VyY2VzIHRoYXQgY2FuIGJlIHVzZWQgZm9yIG5ldyBnYW1lIGFjdGl2YXRpb25zIGF0IGFueSBvbmUgdGltZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gbGltaXRcbiAgICovXG4gIHJlYWRvbmx5IG1heENvbmN1cnJlbnRHYW1lU2Vzc2lvbkFjdGl2YXRpb25zPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBIGNvbGxlY3Rpb24gb2Ygc2VydmVyIHByb2Nlc3MgY29uZmlndXJhdGlvbnMgdGhhdCBpZGVudGlmeSB3aGF0IHNlcnZlciBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZlclByb2Nlc3NlczogU2VydmVyUHJvY2Vzc1tdO1xufVxuXG4vKipcbiAqIEEgcG9saWN5IHRoYXQgbGltaXRzIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBhIHBsYXllciBjYW4gY3JlYXRlIG9uIHRoZSBzYW1lIGZsZWV0LlxuICogVGhpcyBvcHRpb25hbCBwb2xpY3kgZ2l2ZXMgZ2FtZSBvd25lcnMgY29udHJvbCBvdmVyIGhvdyBwbGF5ZXJzIGNhbiBjb25zdW1lIGF2YWlsYWJsZSBnYW1lIHNlcnZlciByZXNvdXJjZXMuXG4gKiBBIHJlc291cmNlIGNyZWF0aW9uIHBvbGljeSBtYWtlcyB0aGUgZm9sbG93aW5nIHN0YXRlbWVudDogXCJBbiBpbmRpdmlkdWFsIHBsYXllciBjYW4gY3JlYXRlIGEgbWF4aW11bSBudW1iZXIgb2YgbmV3IGdhbWUgc2Vzc2lvbnMgd2l0aGluIGEgc3BlY2lmaWVkIHRpbWUgcGVyaW9kXCIuXG4gKlxuICogVGhlIHBvbGljeSBpcyBldmFsdWF0ZWQgd2hlbiBhIHBsYXllciB0cmllcyB0byBjcmVhdGUgYSBuZXcgZ2FtZSBzZXNzaW9uLlxuICogRm9yIGV4YW1wbGUsIGFzc3VtZSB5b3UgaGF2ZSBhIHBvbGljeSBvZiAxMCBuZXcgZ2FtZSBzZXNzaW9ucyBhbmQgYSB0aW1lIHBlcmlvZCBvZiA2MCBtaW51dGVzLlxuICogT24gcmVjZWl2aW5nIGEgYENyZWF0ZUdhbWVTZXNzaW9uYCByZXF1ZXN0LCBBbWF6b24gR2FtZUxpZnQgY2hlY2tzIHRoYXQgdGhlIHBsYXllciAoaWRlbnRpZmllZCBieSBDcmVhdG9ySWQpIGhhcyBjcmVhdGVkIGZld2VyIHRoYW4gMTAgZ2FtZSBzZXNzaW9ucyBpbiB0aGUgcGFzdCA2MCBtaW51dGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeSB7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyB0aGF0IGFuIGluZGl2aWR1YWwgY2FuIGNyZWF0ZSBkdXJpbmcgdGhlIHBvbGljeSBwZXJpb2QuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGxpbWl0IG9uIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyB0aGF0IGFuIGluZGl2aWR1YWwgY2FuIGNyZWF0ZSBkdXJpbmcgdGhlIHBvbGljeSBwZXJpb2RcbiAgICovXG4gIHJlYWRvbmx5IG5ld0dhbWVTZXNzaW9uc1BlckNyZWF0b3I/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSB0aW1lIHNwYW4gdXNlZCBpbiBldmFsdWF0aW5nIHRoZSByZXNvdXJjZSBjcmVhdGlvbiBsaW1pdCBwb2xpY3kuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHBvbGljeSBwZXJpb2RcbiAgICovXG4gIHJlYWRvbmx5IHBvbGljeVBlcmlvZD86IGNkay5EdXJhdGlvbjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgR2FtZWxpZnQgZmxlZXRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRmxlZXQgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBpYW0uSUdyYW50YWJsZSwgSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0QXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyYW50IHRoZSBgZ3JhbnRlZWAgaWRlbnRpdHkgcGVybWlzc2lvbnMgdG8gcGVyZm9ybSBgYWN0aW9uc2AuXG4gICAqL1xuICBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQ7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIGZsZWV0LlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogSW5zdGFuY2VzIHdpdGggYEFDVElWRWAgc3RhdHVzLCB3aGljaCBtZWFucyB0aGV5IGFyZSBydW5uaW5nIGFjdGl2ZSBzZXJ2ZXIgcHJvY2Vzc2VzLlxuICAgKiBUaGUgY291bnQgaW5jbHVkZXMgaWRsZSBpbnN0YW5jZXMgYW5kIHRob3NlIHRoYXQgYXJlIGhvc3Rpbmcgb25lIG9yIG1vcmUgZ2FtZSBzZXNzaW9ucy5cbiAgICogVGhpcyBtZXRyaWMgbWVhc3VyZXMgY3VycmVudCB0b3RhbCBpbnN0YW5jZSBjYXBhY2l0eS5cbiAgICpcbiAgICogVGhpcyBtZXRyaWMgY2FuIGJlIHVzZWQgd2l0aCBhdXRvbWF0aWMgc2NhbGluZy5cbiAgICovXG4gIG1ldHJpY0FjdGl2ZUluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBQZXJjZW50YWdlIG9mIGFsbCBhY3RpdmUgaW5zdGFuY2VzIHRoYXQgYXJlIGlkbGUgKGNhbGN1bGF0ZWQgYXMgSWRsZUluc3RhbmNlcyAvIEFjdGl2ZUluc3RhbmNlcykuXG4gICAqIFRoaXMgbWV0cmljIGNhbiBiZSB1c2VkIGZvciBhdXRvbWF0aWMgc2NhbGluZy5cbiAgICovXG4gIG1ldHJpY1BlcmNlbnRJZGxlSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIFRhcmdldCBudW1iZXIgb2YgYWN0aXZlIGluc3RhbmNlcyB0aGF0IEdhbWVMaWZ0IGlzIHdvcmtpbmcgdG8gbWFpbnRhaW4gaW4gdGhlIGZsZWV0LlxuICAgKiBXaXRoIGF1dG9tYXRpYyBzY2FsaW5nLCB0aGlzIHZhbHVlIGlzIGRldGVybWluZWQgYmFzZWQgb24gdGhlIHNjYWxpbmcgcG9saWNpZXMgY3VycmVudGx5IGluIGZvcmNlLlxuICAgKiBXaXRob3V0IGF1dG9tYXRpYyBzY2FsaW5nLCB0aGlzIHZhbHVlIGlzIHNldCBtYW51YWxseS5cbiAgICogVGhpcyBtZXRyaWMgaXMgbm90IGF2YWlsYWJsZSB3aGVuIHZpZXdpbmcgZGF0YSBmb3IgZmxlZXQgbWV0cmljIGdyb3Vwcy5cbiAgICovXG4gIG1ldHJpY0Rlc2lyZWRJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogQWN0aXZlIGluc3RhbmNlcyB0aGF0IGFyZSBjdXJyZW50bHkgaG9zdGluZyB6ZXJvICgwKSBnYW1lIHNlc3Npb25zLlxuICAgKiBUaGlzIG1ldHJpYyBtZWFzdXJlcyBjYXBhY2l0eSB0aGF0IGlzIGF2YWlsYWJsZSBidXQgdW51c2VkLlxuICAgKiBUaGlzIG1ldHJpYyBjYW4gYmUgdXNlZCB3aXRoIGF1dG9tYXRpYyBzY2FsaW5nLlxuICAgKi9cbiAgbWV0cmljSWRsZUluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2Ygc3BvdCBpbnN0YW5jZXMgdGhhdCBoYXZlIGJlZW4gaW50ZXJydXB0ZWQuXG4gICAqL1xuICBtZXRyaWNJbnN0YW5jZUludGVycnVwdGlvbnMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIHRoYXQgYXJlIGFsbG93ZWQgZm9yIHRoZSBmbGVldC5cbiAgICogQSBmbGVldCdzIGluc3RhbmNlIG1heGltdW0gZGV0ZXJtaW5lcyB0aGUgY2FwYWNpdHkgY2VpbGluZyBkdXJpbmcgbWFudWFsIG9yIGF1dG9tYXRpYyBzY2FsaW5nIHVwLlxuICAgKiBUaGlzIG1ldHJpYyBpcyBub3QgYXZhaWxhYmxlIHdoZW4gdmlld2luZyBkYXRhIGZvciBmbGVldCBtZXRyaWMgZ3JvdXBzLlxuICAgKi9cbiAgbWV0cmljTWF4SW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIE1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGZvciB0aGUgZmxlZXQuXG4gICAqIEEgZmxlZXQncyBpbnN0YW5jZSBtaW5pbXVtIGRldGVybWluZXMgdGhlIGNhcGFjaXR5IGZsb29yIGR1cmluZyBtYW51YWwgb3IgYXV0b21hdGljIHNjYWxpbmcgZG93bi5cbiAgICogVGhpcyBtZXRyaWMgaXMgbm90IGF2YWlsYWJsZSB3aGVuIHZpZXdpbmcgZGF0YSBmb3IgZmxlZXQgbWV0cmljIGdyb3Vwcy5cbiAgICovXG4gIG1ldHJpY01pbkluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IEdhbWVsaWZ0IGZsZWV0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmxlZXRQcm9wcyB7XG4gIC8qKlxuICAgKiBBIGRlc2NyaXB0aXZlIGxhYmVsIHRoYXQgaXMgYXNzb2NpYXRlZCB3aXRoIGEgZmxlZXQuIEZsZWV0IG5hbWVzIGRvIG5vdCBuZWVkIHRvIGJlIHVuaXF1ZS5cbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIHRoZSBmbGVldC5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gZGVzY3JpcHRpb24gaXMgcHJvdmlkZWRcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0byB1c2UgT24tRGVtYW5kIG9yIFNwb3QgaW5zdGFuY2VzIGZvciB0aGlzIGZsZWV0LlxuICAgKiBCeSBkZWZhdWx0LCBmbGVldCB1c2Ugb24gZGVtYW5kIGNhcGFjaXR5LlxuICAgKlxuICAgKiBUaGlzIHByb3BlcnR5IGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyIHRoZSBmbGVldCBpcyBjcmVhdGVkLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvZ2FtZWxpZnQtZWMyLWluc3RhbmNlcy5odG1sI2dhbWVsaWZ0LWVjMi1pbnN0YW5jZXMtc3BvdFxuICAgKlxuICAgKiBAZGVmYXVsdCBHYW1lbGlmdCBmbGVldCB1c2Ugb24gZGVtYW5kIGNhcGFjaXR5XG4gICAqL1xuICByZWFkb25seSB1c2VTcG90PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJvbXB0cyBHYW1lTGlmdCB0byBnZW5lcmF0ZSBhIFRMUy9TU0wgY2VydGlmaWNhdGUgZm9yIHRoZSBmbGVldC5cbiAgICogR2FtZUxpZnQgdXNlcyB0aGUgY2VydGlmaWNhdGVzIHRvIGVuY3J5cHQgdHJhZmZpYyBiZXR3ZWVuIGdhbWUgY2xpZW50cyBhbmQgdGhlIGdhbWUgc2VydmVycyBydW5uaW5nIG9uIEdhbWVMaWZ0LlxuICAgKlxuICAgKiBZb3UgY2FuJ3QgY2hhbmdlIHRoaXMgcHJvcGVydHkgYWZ0ZXIgeW91IGNyZWF0ZSB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEFkZGl0aW9ubmFsIGluZm86XG4gICAqIEFXUyBDZXJ0aWZpY2F0ZSBNYW5hZ2VyIChBQ00pIGNlcnRpZmljYXRlcyBleHBpcmUgYWZ0ZXIgMTMgbW9udGhzLlxuICAgKiBDZXJ0aWZpY2F0ZSBleHBpcmF0aW9uIGNhbiBjYXVzZSBmbGVldHMgdG8gZmFpbCwgcHJldmVudGluZyBwbGF5ZXJzIGZyb20gY29ubmVjdGluZyB0byBpbnN0YW5jZXMgaW4gdGhlIGZsZWV0LlxuICAgKiBXZSByZWNvbW1lbmQgeW91IHJlcGxhY2UgZmxlZXRzIGJlZm9yZSAxMyBtb250aHMsIGNvbnNpZGVyIHVzaW5nIGZsZWV0IGFsaWFzZXMgZm9yIGEgc21vb3RoIHRyYW5zaXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IFRMUy9TU0wgY2VydGlmaWNhdGUgYXJlIGdlbmVyYXRlZCBmb3IgdGhlIGZsZWV0XG4gICAqL1xuICByZWFkb25seSB1c2VDZXJ0aWZpY2F0ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IGZsZWV0IGluc3RhbmNlcyB0byBhY2Nlc3MgQVdTIHJlc3NvdXJjZXMuXG4gICAqIFdpdGggYSByb2xlIHNldCwgYW55IGFwcGxpY2F0aW9uIHRoYXQgcnVucyBvbiBhbiBpbnN0YW5jZSBpbiB0aGlzIGZsZWV0IGNhbiBhc3N1bWUgdGhlIHJvbGUsIGluY2x1ZGluZyBpbnN0YWxsIHNjcmlwdHMsIHNlcnZlciBwcm9jZXNzZXMsIGFuZCBkYWVtb25zIChiYWNrZ3JvdW5kIHByb2Nlc3NlcykuXG4gICAqIElmIHByb3ZpZGluZyBhIGN1c3RvbSByb2xlLCBpdCBuZWVkcyB0byB0cnVzdCB0aGUgR2FtZUxpZnQgc2VydmljZSBwcmluY2lwYWwgKGdhbWVsaWZ0LmFtYXpvbmF3cy5jb20pLlxuICAgKiBObyBwZXJtaXNzaW9uIGlzIHJlcXVpcmVkIGJ5IGRlZmF1bHQuXG4gICAqXG4gICAqIFRoaXMgcHJvcGVydHkgY2Fubm90IGJlIGNoYW5nZWQgYWZ0ZXIgdGhlIGZsZWV0IGlzIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1zZGstc2VydmVyLXJlc291cmNlcy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYSByb2xlIHdpbGwgYmUgY3JlYXRlZCB3aXRoIGRlZmF1bHQgdHJ1c3QgdG8gR2FtZWxpZnQgc2VydmljZSBwcmluY2lwYWwuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBBIFZQQyBwZWVyaW5nIGNvbm5lY3Rpb24gYmV0d2VlbiB5b3VyIEdhbWVMaWZ0LWhvc3RlZCBnYW1lIHNlcnZlcnMgYW5kIHlvdXIgb3RoZXIgbm9uLUdhbWVMaWZ0IHJlc291cmNlcy5cbiAgICogVXNlIEFtYXpvbiBWaXJ0dWFsIFByaXZhdGUgQ2xvdWQgKFZQQykgcGVlcmluZyBjb25uZWN0aW9ucyB0byBlbmFibGUgeW91ciBnYW1lIHNlcnZlcnMgdG8gY29tbXVuaWNhdGUgZGlyZWN0bHkgYW5kIHByaXZhdGVseSB3aXRoIHlvdXIgb3RoZXIgQVdTIHJlc291cmNlcywgc3VjaCBhcyBhIHdlYiBzZXJ2aWNlIG9yIGEgcmVwb3NpdG9yeS5cbiAgICogWW91IGNhbiBlc3RhYmxpc2ggVlBDIHBlZXJpbmcgd2l0aCBhbnkgcmVzb3VyY2VzIHRoYXQgcnVuIG9uIEFXUyBhbmQgYXJlIG1hbmFnZWQgYnkgYW4gQVdTIGFjY291bnQgdGhhdCB5b3UgaGF2ZSBhY2Nlc3MgdG8uXG4gICAqIFRoZSBWUEMgbXVzdCBiZSBpbiB0aGUgc2FtZSBSZWdpb24gYXMgeW91ciBmbGVldC5cbiAgICpcbiAgICogV2FybmluZzpcbiAgICogQmUgc3VyZSB0byBjcmVhdGUgYSBWUEMgUGVlcmluZyBhdXRob3JpemF0aW9uIHRocm91Z2ggR2FtZWxpZnQgU2VydmljZSBBUEkuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS92cGMtcGVlcmluZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHZwYyBwZWVyaW5nXG4gICAqL1xuICByZWFkb25seSBwZWVyVnBjPzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIGFuIEFXUyBDbG91ZFdhdGNoIG1ldHJpYyBncm91cCB0byBhZGQgdGhpcyBmbGVldCB0by5cbiAgICogQSBtZXRyaWMgZ3JvdXAgaXMgdXNlZCB0byBhZ2dyZWdhdGUgdGhlIG1ldHJpY3MgZm9yIG11bHRpcGxlIGZsZWV0cy5cbiAgICogWW91IGNhbiBzcGVjaWZ5IGFuIGV4aXN0aW5nIG1ldHJpYyBncm91cCBuYW1lIG9yIHNldCBhIG5ldyBuYW1lIHRvIGNyZWF0ZSBhIG5ldyBtZXRyaWMgZ3JvdXAuXG4gICAqIEEgZmxlZXQgY2FuIGJlIGluY2x1ZGVkIGluIG9ubHkgb25lIG1ldHJpYyBncm91cCBhdCBhIHRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IEZsZWV0IG1ldHJpY3MgYXJlIGFnZ3JlZ2F0ZWQgd2l0aCBvdGhlciBmbGVldHMgaW4gdGhlIGRlZmF1bHQgbWV0cmljIGdyb3VwXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNHcm91cD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEdhbWVMaWZ0LXN1cHBvcnRlZCBBbWF6b24gRUMyIGluc3RhbmNlIHR5cGUgdG8gdXNlIGZvciBhbGwgZmxlZXQgaW5zdGFuY2VzLlxuICAgKiBJbnN0YW5jZSB0eXBlIGRldGVybWluZXMgdGhlIGNvbXB1dGluZyByZXNvdXJjZXMgdGhhdCB3aWxsIGJlIHVzZWQgdG8gaG9zdCB5b3VyIGdhbWUgc2VydmVycywgaW5jbHVkaW5nIENQVSwgbWVtb3J5LCBzdG9yYWdlLCBhbmQgbmV0d29ya2luZyBjYXBhY2l0eS5cbiAgICpcbiAgICogQHNlZSBodHRwOi8vYXdzLmFtYXpvbi5jb20vZWMyL2luc3RhbmNlLXR5cGVzLyBmb3IgZGV0YWlsZWQgZGVzY3JpcHRpb25zIG9mIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZXMuXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IGVjMi5JbnN0YW5jZVR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgRUMyIGluc3RhbmNlcyB0aGF0IHlvdSB3YW50IHRoaXMgZmxlZXQgdG8gaG9zdC5cbiAgICogV2hlbiBjcmVhdGluZyBhIG5ldyBmbGVldCwgR2FtZUxpZnQgYXV0b21hdGljYWxseSBzZXRzIHRoaXMgdmFsdWUgdG8gXCIxXCIgYW5kIGluaXRpYXRlcyBhIHNpbmdsZSBpbnN0YW5jZS5cbiAgICogT25jZSB0aGUgZmxlZXQgaXMgYWN0aXZlLCB1cGRhdGUgdGhpcyB2YWx1ZSB0byB0cmlnZ2VyIEdhbWVMaWZ0IHRvIGFkZCBvciByZW1vdmUgaW5zdGFuY2VzIGZyb20gdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBEZWZhdWx0IGNhcGFjaXR5IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IGRlc2lyZWRDYXBhY2l0eT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBhbGxvd2VkIGluIHRoZSBzcGVjaWZpZWQgZmxlZXQgbG9jYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IG1pblNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCBpcyAxXG4gICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIG9mIHRlcm1pbmF0aW9uIHByb3RlY3Rpb24gZm9yIGFjdGl2ZSBnYW1lIHNlc3Npb25zIG9uIHRoZSBmbGVldC5cbiAgICogQnkgZGVmYXVsdCwgbmV3IGdhbWUgc2Vzc2lvbnMgYXJlIHByb3RlY3RlZCBhbmQgY2Fubm90IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZSAtIEdhbWUgc2Vzc2lvbnMgaW4gYEFDVElWRWAgc3RhdHVzIGNhbm5vdCBiZSB0ZXJtaW5hdGVkIGR1cmluZyBhIHNjYWxlLWRvd24gZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwcm90ZWN0TmV3R2FtZVNlc3Npb24/IDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQSBjb2xsZWN0aW9uIG9mIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb25zIHRoYXQgZGVzY3JpYmUgdGhlIHNldCBvZiBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAgICogU2VydmVyIHByb2Nlc3NlcyBydW4gZWl0aGVyIGFuIGV4ZWN1dGFibGUgaW4gYSBjdXN0b20gZ2FtZSBidWlsZCBvciBhIFJlYWx0aW1lIFNlcnZlcnMgc2NyaXB0LlxuICAgKiBHYW1lTGlmdCBsYXVuY2hlcyB0aGUgY29uZmlndXJlZCBwcm9jZXNzZXMsIG1hbmFnZXMgdGhlaXIgbGlmZSBjeWNsZSwgYW5kIHJlcGxhY2VzIHRoZW0gYXMgbmVlZGVkLlxuICAgKiBFYWNoIGluc3RhbmNlIGNoZWNrcyByZWd1bGFybHkgZm9yIGFuIHVwZGF0ZWQgcnVudGltZSBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBBIEdhbWVMaWZ0IGluc3RhbmNlIGlzIGxpbWl0ZWQgdG8gNTAgcHJvY2Vzc2VzIHJ1bm5pbmcgY29uY3VycmVudGx5LlxuICAgKiBUbyBjYWxjdWxhdGUgdGhlIHRvdGFsIG51bWJlciBvZiBwcm9jZXNzZXMgaW4gYSBydW50aW1lIGNvbmZpZ3VyYXRpb24sIGFkZCB0aGUgdmFsdWVzIG9mIHRoZSBDb25jdXJyZW50RXhlY3V0aW9ucyBwYXJhbWV0ZXIgZm9yIGVhY2ggU2VydmVyUHJvY2Vzcy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ZsZWV0cy1tdWx0aXByb2Nlc3MuaHRtbFxuICAgKi9cbiAgcmVhZG9ubHkgcnVudGltZUNvbmZpZ3VyYXRpb246IFJ1bnRpbWVDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBBIHNldCBvZiByZW1vdGUgbG9jYXRpb25zIHRvIGRlcGxveSBhZGRpdGlvbmFsIGluc3RhbmNlcyB0byBhbmQgbWFuYWdlIGFzIHBhcnQgb2YgdGhlIGZsZWV0LlxuICAgKiBUaGlzIHBhcmFtZXRlciBjYW4gb25seSBiZSB1c2VkIHdoZW4gY3JlYXRpbmcgZmxlZXRzIGluIEFXUyBSZWdpb25zIHRoYXQgc3VwcG9ydCBtdWx0aXBsZSBsb2NhdGlvbnMuXG4gICAqIFlvdSBjYW4gYWRkIGFueSBHYW1lTGlmdC1zdXBwb3J0ZWQgQVdTIFJlZ2lvbiBhcyBhIHJlbW90ZSBsb2NhdGlvbiwgaW4gdGhlIGZvcm0gb2YgYW4gQVdTIFJlZ2lvbiBjb2RlIHN1Y2ggYXMgYHVzLXdlc3QtMmAuXG4gICAqIFRvIGNyZWF0ZSBhIGZsZWV0IHdpdGggaW5zdGFuY2VzIGluIHRoZSBob21lIHJlZ2lvbiBvbmx5LCBvbWl0IHRoaXMgcGFyYW1ldGVyLlxuICAgKlxuICAgKiBAZGVmYXVsdCBDcmVhdGUgYSBmbGVldCB3aXRoIGluc3RhbmNlcyBpbiB0aGUgaG9tZSByZWdpb24gb25seVxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb25zPzogTG9jYXRpb25bXTtcblxuICAvKipcbiAgICogQSBwb2xpY3kgdGhhdCBsaW1pdHMgdGhlIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIHRoYXQgYW4gaW5kaXZpZHVhbCBwbGF5ZXIgY2FuIGNyZWF0ZSBvbiBpbnN0YW5jZXMgaW4gdGhpcyBmbGVldCB3aXRoaW4gYSBzcGVjaWZpZWQgc3BhbiBvZiB0aW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyByZXNvdXJjZSBjcmVhdGlvbiBsaW1pdCBwb2xpY3lcbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeT86IFJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeTtcbn1cblxuLyoqXG4gKiBBIGZ1bGwgc3BlY2lmaWNhdGlvbiBvZiBhIGZsZWV0IHRoYXQgY2FuIGJlIHVzZWQgdG8gaW1wb3J0IGl0IGZsdWVudGx5IGludG8gdGhlIENESyBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbGVldEF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZmxlZXRcbiAgICpcbiAgICogQXQgbGVhc3Qgb25lIG9mIGBmbGVldEFybmAgYW5kIGBmbGVldElkYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGZsZWV0SWRgLlxuICAgKi9cbiAgcmVhZG9ubHkgZmxlZXRBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBmbGVldFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGZsZWV0SWRgIGFuZCBgZmxlZXRBcm5gICBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGZsZWV0QXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IGZsZWV0IGluc3RhbmNlcyB0byBhY2Nlc3MgQVdTIHJlc3NvdXJjZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBpbXBvcnRlZCBmbGVldCBjYW5ub3QgYmUgZ3JhbnRlZCBhY2Nlc3MgdG8gb3RoZXIgcmVzb3VyY2VzIGFzIGFuIGBpYW0uSUdyYW50YWJsZWAuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgZmxlZXQuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGbGVldEJhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJRmxlZXQge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBzdGF0aWMgZnJvbUZsZWV0QXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogRmxlZXRBdHRyaWJ1dGVzKTogSUZsZWV0IHtcbiAgICBpZiAoIWF0dHJzLmZsZWV0SWQgJiYgIWF0dHJzLmZsZWV0QXJuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBmbGVldElkIG9yIGZsZWV0QXJuIG11c3QgYmUgcHJvdmlkZWQgaW4gRmxlZXRBdHRyaWJ1dGVzJyk7XG4gICAgfVxuICAgIGNvbnN0IGZsZWV0SWQgPSBhdHRycy5mbGVldElkID8/XG4gICAgICBjZGsuU3RhY2sub2Yoc2NvcGUpLnNwbGl0QXJuKGF0dHJzLmZsZWV0QXJuISwgY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG5cbiAgICBpZiAoIWZsZWV0SWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gZmxlZXQgaWRlbnRpZmllciBmb3VuZCBpbiBBUk46ICcke2F0dHJzLmZsZWV0QXJufSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBmbGVldEFybiA9IGF0dHJzLmZsZWV0QXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2ZsZWV0JyxcbiAgICAgIHJlc291cmNlTmFtZTogYXR0cnMuZmxlZXRJZCxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEZsZWV0QmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZmxlZXRJZCA9IGZsZWV0SWQhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IGZsZWV0QXJuID0gZmxlZXRBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWwgPSBhdHRycy5yb2xlID8/IG5ldyBpYW0uVW5rbm93blByaW5jaXBhbCh7IHJlc291cmNlOiB0aGlzIH0pO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHJvbGUgPSBhdHRycy5yb2xlO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBmbGVldEFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBmbGVldC5cbiAgICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZmxlZXRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBmbGVldC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBmbGVldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZmxlZXQgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWw6IGlhbS5JUHJpbmNpcGFsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25zOiBMb2NhdGlvbltdID0gW107XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYW4gYWxpYXMgZm9yIHRoaXMgZmxlZXQuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGRlY2xhcmUgY29uc3QgZmxlZXQ6IGdhbWVsaWZ0LkZsZWV0QmFzZTtcbiAgICpcbiAgICogZmxlZXQuYWRkQWxpYXMoJ0xpdmUnKTtcbiAgICpcbiAgICogLy8gSXMgZXF1aXZhbGVudCB0b1xuICAgKlxuICAgKiBuZXcgZ2FtZWxpZnQuQWxpYXModGhpcywgJ0FsaWFzTGl2ZScsIHtcbiAgICogICBhbGlhc05hbWU6ICdMaXZlJyxcbiAgICogICBmbGVldDogZmxlZXQsXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogQHBhcmFtIGFsaWFzTmFtZSBUaGUgbmFtZSBvZiB0aGUgYWxpYXNcbiAgICogQHBhcmFtIG9wdGlvbnMgQWxpYXMgb3B0aW9uc1xuICAgKi9cbiAgcHVibGljIGFkZEFsaWFzKGFsaWFzTmFtZTogc3RyaW5nLCBvcHRpb25zOiBBbGlhc09wdGlvbnMgPSB7fSkge1xuICAgIHJldHVybiBuZXcgQWxpYXModGhpcywgYEFsaWFzJHthbGlhc05hbWV9YCwge1xuICAgICAgYWxpYXNOYW1lLFxuICAgICAgZmxlZXQ6IHRoaXMsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICByZXNvdXJjZUFybnM6IFt0aGlzLmZsZWV0QXJuXSxcbiAgICAgIGdyYW50ZWU6IGdyYW50ZWUsXG4gICAgICBhY3Rpb25zOiBhY3Rpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiBuZXcgY2xvdWR3YXRjaC5NZXRyaWMoe1xuICAgICAgbmFtZXNwYWNlOiAnQVdTL0dhbWVMaWZ0JyxcbiAgICAgIG1ldHJpY05hbWU6IG1ldHJpY05hbWUsXG4gICAgICBkaW1lbnNpb25zTWFwOiB7XG4gICAgICAgIEZsZWV0SWQ6IHRoaXMuZmxlZXRJZCxcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KS5hdHRhY2hUbyh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNBY3RpdmVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5hY3RpdmVJbnN0YW5jZXNBdmVyYWdlLCBwcm9wcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljUGVyY2VudElkbGVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5wZXJjZW50SWRsZUluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNEZXNpcmVkSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MuZGVzaXJlZEluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNJZGxlSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MuaWRsZUluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNJbnN0YW5jZUludGVycnVwdGlvbnMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5pbnN0YW5jZUludGVycnVwdGlvbnNTdW0sIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNNYXhJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5tYXhJbnN0YW5jZXNBdmVyYWdlLCBwcm9wcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljTWluSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MubWluSW5zdGFuY2VzQXZlcmFnZSwgcHJvcHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBjYW5uZWRNZXRyaWMoZm46IChkaW1zOiB7IEZsZWV0SWQ6IHN0cmluZyB9KSA9PiBjbG91ZHdhdGNoLk1ldHJpY1Byb3BzLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIC4uLmZuKHsgRmxlZXRJZDogdGhpcy5mbGVldElkIH0pLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiB0byBwdXQgaW50byB0aGUgZGVzdGluYXRpb24gZmllbGQgb2YgYSBnYW1lIHNlc3Npb24gcXVldWVcbiAgICovXG4gIHB1YmxpYyBnZXQgcmVzb3VyY2VBcm5Gb3JEZXN0aW5hdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5mbGVldEFybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcmVtb3RlIGxvY2F0aW9ucyB0byBkZXBsb3kgYWRkaXRpb25hbCBpbnN0YW5jZXMgdG8gYW5kIG1hbmFnZSBhcyBwYXJ0IG9mIHRoZSBmbGVldC5cbiAgICpcbiAgICogQHBhcmFtIHJlZ2lvbiBUaGUgQVdTIHJlZ2lvbiB0byBhZGRcbiAgICovXG4gIHB1YmxpYyBhZGRMb2NhdGlvbihyZWdpb246IHN0cmluZywgZGVzaXJlZENhcGFjaXR5PzogbnVtYmVyLCBtaW5TaXplPzogbnVtYmVyLCBtYXhTaXplPzogbnVtYmVyKSB7XG4gICAgdGhpcy5hZGRJbnRlcm5hbExvY2F0aW9uKHtcbiAgICAgIHJlZ2lvbjogcmVnaW9uLFxuICAgICAgY2FwYWNpdHk6IHtcbiAgICAgICAgZGVzaXJlZENhcGFjaXR5OiBkZXNpcmVkQ2FwYWNpdHksXG4gICAgICAgIG1pblNpemU6IG1pblNpemUsXG4gICAgICAgIG1heFNpemU6IG1heFNpemUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByZW1vdGUgbG9jYXRpb25zIHRvIGRlcGxveSBhZGRpdGlvbmFsIGluc3RhbmNlcyB0byBhbmQgbWFuYWdlIGFzIHBhcnQgb2YgdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAcGFyYW0gbG9jYXRpb24gVGhlIGxvY2F0aW9uIHRvIGFkZFxuICAgKi9cbiAgcHVibGljIGFkZEludGVybmFsTG9jYXRpb24obG9jYXRpb246IExvY2F0aW9uKSB7XG4gICAgaWYgKHRoaXMubG9jYXRpb25zLmxlbmd0aCA9PSAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbW9yZSB0aGFuIDEwMCBsb2NhdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2NhdGlvbnMucHVzaChsb2NhdGlvbik7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VSZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kocHJvcHM6IEZsZWV0UHJvcHMpOiBDZm5GbGVldC5SZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3lQcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kgfHxcbiAgICAgICAgKCFwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kubmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvclxuICAgICAgICAgICAgJiYgIXByb3BzLnJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeS5wb2xpY3lQZXJpb2QpKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBuZXdHYW1lU2Vzc2lvbnNQZXJDcmVhdG9yOiBwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kubmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvcixcbiAgICAgIHBvbGljeVBlcmlvZEluTWludXRlczogcHJvcHMucmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5LnBvbGljeVBlcmlvZD8udG9NaW51dGVzKCksXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxvY2F0aW9ucygpOiBDZm5GbGVldC5Mb2NhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eVtdIHzCoHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmxvY2F0aW9ucyB8fCB0aGlzLmxvY2F0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG5cbiAgICByZXR1cm4gdGhpcy5sb2NhdGlvbnMubWFwKHBhcnNlTG9jYXRpb24pO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VMb2NhdGlvbihsb2NhdGlvbjogTG9jYXRpb24pOiBDZm5GbGVldC5Mb2NhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBsb2NhdGlvbjogbG9jYXRpb24ucmVnaW9uLFxuICAgICAgICBsb2NhdGlvbkNhcGFjaXR5OiBzZWxmLnBhcnNlTG9jYXRpb25DYXBhY2l0eShsb2NhdGlvbi5jYXBhY2l0eSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxvY2F0aW9uQ2FwYWNpdHkoY2FwYWNpdHk/OiBMb2NhdGlvbkNhcGFjaXR5KTogQ2ZuRmxlZXQuTG9jYXRpb25DYXBhY2l0eVByb3BlcnR5IHzCoHVuZGVmaW5lZCB7XG4gICAgaWYgKCFjYXBhY2l0eSB8fFxuICAgICAgICAoIWNhcGFjaXR5LmRlc2lyZWRDYXBhY2l0eVxuICAgICAgICAgICAgJiYgIWNhcGFjaXR5Lm1pblNpemVcbiAgICAgICAgICAgICYmICFjYXBhY2l0eS5tYXhTaXplKSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGVzaXJlZEVjMkluc3RhbmNlczogY2FwYWNpdHkuZGVzaXJlZENhcGFjaXR5ID8/IDAsXG4gICAgICBtaW5TaXplOiBjYXBhY2l0eS5taW5TaXplID8/IDAsXG4gICAgICBtYXhTaXplOiBjYXBhY2l0eS5tYXhTaXplID8/IDEsXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZVJ1bnRpbWVDb25maWd1cmF0aW9uKHByb3BzOiBGbGVldFByb3BzKTogQ2ZuRmxlZXQuUnVudGltZUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB8wqB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24gfHxcbiAgICAgICAgKCFwcm9wcy5ydW50aW1lQ29uZmlndXJhdGlvbi5nYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0XG4gICAgICAgICAgICAmJiAhcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24ubWF4Q29uY3VycmVudEdhbWVTZXNzaW9uQWN0aXZhdGlvbnNcbiAgICAgICAgICAgICYmIHByb3BzLnJ1bnRpbWVDb25maWd1cmF0aW9uLnNlcnZlclByb2Nlc3Nlcy5sZW5ndGggPT0gMCkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBnYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0U2Vjb25kczogcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24uZ2FtZVNlc3Npb25BY3RpdmF0aW9uVGltZW91dD8udG9TZWNvbmRzKCksXG4gICAgICBtYXhDb25jdXJyZW50R2FtZVNlc3Npb25BY3RpdmF0aW9uczogcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24ubWF4Q29uY3VycmVudEdhbWVTZXNzaW9uQWN0aXZhdGlvbnMsXG4gICAgICBzZXJ2ZXJQcm9jZXNzZXM6IHByb3BzLnJ1bnRpbWVDb25maWd1cmF0aW9uLnNlcnZlclByb2Nlc3Nlcy5tYXAocGFyc2VTZXJ2ZXJQcm9jZXNzKSxcbiAgICB9O1xuXG4gICAgZnVuY3Rpb24gcGFyc2VTZXJ2ZXJQcm9jZXNzKHNlcnZlclByb2Nlc3M6IFNlcnZlclByb2Nlc3MpOiBDZm5GbGVldC5TZXJ2ZXJQcm9jZXNzUHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFyYW1ldGVyczogc2VydmVyUHJvY2Vzcy5wYXJhbWV0ZXJzLFxuICAgICAgICBsYXVuY2hQYXRoOiBzZXJ2ZXJQcm9jZXNzLmxhdW5jaFBhdGgsXG4gICAgICAgIGNvbmN1cnJlbnRFeGVjdXRpb25zOiBzZXJ2ZXJQcm9jZXNzLmNvbmN1cnJlbnRFeGVjdXRpb25zID8/IDEsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB3YXJuVnBjUGVlcmluZ0F1dGhvcml6YXRpb25zKHNjb3BlOiBDb25zdHJ1Y3QpOiB2b2lkIHtcbiAgICBjZGsuQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZFdhcm5pbmdWMignQGF3cy1jZGsvYXdzLWdhbWVsaWZ0OmZsZWV0QXV0b3JpemVWcGNQZWVyaW5nJywgW1xuICAgICAgJ1RvIGF1dGhvcml6ZSB0aGUgVlBDIHBlZXJpbmcsIGNhbGwgdGhlIEdhbWVMaWZ0IHNlcnZpY2UgQVBJIENyZWF0ZVZwY1BlZXJpbmdBdXRob3JpemF0aW9uKCkgb3IgdXNlIHRoZSBBV1MgQ0xJIGNvbW1hbmQgY3JlYXRlLXZwYy1wZWVyaW5nLWF1dGhvcml6YXRpb24uJyxcbiAgICAgICdNYWtlIHRoaXMgY2FsbCB1c2luZyB0aGUgYWNjb3VudCB0aGF0IG1hbmFnZXMgeW91ciBub24tR2FtZUxpZnQgcmVzb3VyY2VzLicsXG4gICAgICAnU2VlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL3ZwYy1wZWVyaW5nLmh0bWwnLFxuICAgIF0uam9pbignXFxuJykpO1xuICB9XG59XG4iXX0=
|
package/lib/game-server-group.js
CHANGED
|
@@ -75,7 +75,7 @@ class GameServerGroupBase extends cdk.Resource {
|
|
|
75
75
|
}
|
|
76
76
|
exports.GameServerGroupBase = GameServerGroupBase;
|
|
77
77
|
_a = JSII_RTTI_SYMBOL_1;
|
|
78
|
-
GameServerGroupBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBase", version: "2.
|
|
78
|
+
GameServerGroupBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroupBase", version: "2.127.0-alpha.0" };
|
|
79
79
|
/**
|
|
80
80
|
* Creates a GameLift FleetIQ game server group for managing game hosting on a collection of Amazon EC2 instances for game hosting.
|
|
81
81
|
* This operation creates the game server group, creates an Auto Scaling group in your AWS account, and establishes a link between the two groups.
|
|
@@ -267,5 +267,5 @@ class GameServerGroup extends GameServerGroupBase {
|
|
|
267
267
|
}
|
|
268
268
|
exports.GameServerGroup = GameServerGroup;
|
|
269
269
|
_b = JSII_RTTI_SYMBOL_1;
|
|
270
|
-
GameServerGroup[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroup", version: "2.
|
|
270
|
+
GameServerGroup[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameServerGroup", version: "2.127.0-alpha.0" };
|
|
271
271
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXJ2ZXItZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnYW1lLXNlcnZlci1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx5REFBeUQ7QUFDekQsMkNBQTJDO0FBQzNDLDJDQUEyQztBQUMzQyx3Q0FBd0M7QUFFeEMsMkRBQThEO0FBK0M5RDs7O0dBR0c7QUFDSCxJQUFZLFlBZVg7QUFmRCxXQUFZLFlBQVk7SUFDdEI7O09BRUc7SUFDSCwyQ0FBMkIsQ0FBQTtJQUUzQjs7T0FFRztJQUNILDZDQUE2QixDQUFBO0lBRTdCOztPQUVHO0lBQ0gsaUNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQWZXLFlBQVksNEJBQVosWUFBWSxRQWV2QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxpQkFvQlg7QUFwQkQsV0FBWSxpQkFBaUI7SUFDM0I7Ozs7T0FJRztJQUNILDRDQUF1QixDQUFBO0lBRXZCOzs7O09BSUc7SUFDSCxzREFBaUMsQ0FBQTtJQUVqQzs7O09BR0c7SUFDSCxzREFBaUMsQ0FBQTtBQUNuQyxDQUFDLEVBcEJXLGlCQUFpQixpQ0FBakIsaUJBQWlCLFFBb0I1QjtBQXNDRDs7R0FFRztBQUNILE1BQXNCLG1CQUFvQixTQUFRLEdBQUcsQ0FBQyxRQUFRO0lBcUJyRCxLQUFLLENBQUMsT0FBdUIsRUFBRSxHQUFHLE9BQWlCO1FBQ3hELE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUM7WUFDOUIsWUFBWSxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1lBQ3ZDLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUMsQ0FBQztLQUNKO0lBRU0sTUFBTSxDQUFDLFVBQWtCLEVBQUUsS0FBZ0M7UUFDaEUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDM0IsU0FBUyxFQUFFLGNBQWM7WUFDekIsVUFBVSxFQUFFLFVBQVU7WUFDdEIsYUFBYSxFQUFF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S0FBSyxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBRTlELFNBQVMsdUJBQXVCLENBQUMsa0JBQXNDO1lBQ3JFLE9BQU87Z0JBQ0wsWUFBWSxFQUFFLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7Z0JBQ3hELGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUU7YUFDeEQsQ0FBQztRQUNKLENBQUM7S0FDRjs7QUFsTEgsMENBbUxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2xvdWR3YXRjaCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaCc7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWIvY29yZSc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IENmbkdhbWVTZXJ2ZXJHcm91cCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgaW50ZWxsaWdlbnQgYXV0b21hdGljIHNjYWxpbmcgdGhhdCB1c2VzIHRhcmdldCB0cmFja2luZy5cbiAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgYWxsIHVwZGF0ZXMgdG8gQXV0byBTY2FsaW5nIHBvbGljaWVzLCBpbmNsdWRpbmcgY2hhbmdpbmcgdGhpcyBwb2xpY3kgYW5kIGFkZGluZyBvciByZW1vdmluZyBvdGhlciBwb2xpY2llcywgaXMgZG9uZSBkaXJlY3RseSBvbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9TY2FsaW5nUG9saWN5IHtcbiAgLyoqXG4gICAqIExlbmd0aCBvZiB0aW1lLCBpdCB0YWtlcyBmb3IgYSBuZXcgaW5zdGFuY2UgdG8gc3RhcnQgbmV3IGdhbWUgc2VydmVyIHByb2Nlc3NlcyBhbmQgcmVnaXN0ZXIgd2l0aCBHYW1lTGlmdCBGbGVldElRLlxuICAgKiBTcGVjaWZ5aW5nIGEgd2FybS11cCB0aW1lIGNhbiBiZSB1c2VmdWwsIHBhcnRpY3VsYXJseSB3aXRoIGdhbWUgc2VydmVycyB0aGF0IHRha2UgYSBsb25nIHRpbWUgdG8gc3RhcnQgdXAsIGJlY2F1c2UgaXQgYXZvaWRzIHByZW1hdHVyZWx5IHN0YXJ0aW5nIG5ldyBpbnN0YW5jZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGluc3RhbmNlIHdhcm11cCBkdXJhdGlvbiBzZXR0bGVkXG4gICAqL1xuICByZWFkb25seSBlc3RpbWF0ZWRJbnN0YW5jZVdhcm11cD86IGNkay5EdXJhdGlvbjtcblxuICAvKipcbiAgICogU2V0dGluZ3MgZm9yIGEgdGFyZ2V0LWJhc2VkIHNjYWxpbmcgcG9saWN5IGFwcGxpZWQgdG8gQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKiBUaGVzZSBzZXR0aW5ncyBhcmUgdXNlZCB0byBjcmVhdGUgYSB0YXJnZXQtYmFzZWQgcG9saWN5IHRoYXQgdHJhY2tzIHRoZSBHYW1lTGlmdCBGbGVldElRIG1ldHJpYyBgUGVyY2VudFV0aWxpemVkR2FtZVNlcnZlcnNgIGFuZCBzcGVjaWZpZXMgYSB0YXJnZXQgdmFsdWUgZm9yIHRoZSBtZXRyaWMuXG4gICAqXG4gICAqIEFzIHBsYXllciB1c2FnZSBjaGFuZ2VzLCB0aGUgcG9saWN5IHRyaWdnZXJzIHRvIGFkanVzdCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgY2FwYWNpdHkgc28gdGhhdCB0aGUgbWV0cmljIHJldHVybnMgdG8gdGhlIHRhcmdldCB2YWx1ZS5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFRyYWNraW5nQ29uZmlndXJhdGlvbjogbnVtYmVyO1xuXG59XG4vKipcbiAqIEFuIGFsbG93ZWQgaW5zdGFuY2UgdHlwZSBmb3IgYSBnYW1lIHNlcnZlciBncm91cC5cbiAqIEFsbCBnYW1lIHNlcnZlciBncm91cHMgbXVzdCBoYXZlIGF0IGxlYXN0IHR3byBpbnN0YW5jZSB0eXBlcyBkZWZpbmVkIGZvciBpdC5cbiAqIEdhbWVMaWZ0IEZsZWV0SVEgcGVyaW9kaWNhbGx5IGV2YWx1YXRlcyBlYWNoIGRlZmluZWQgaW5zdGFuY2UgdHlwZSBmb3IgdmlhYmlsaXR5LlxuICogSXQgdGhlbiB1cGRhdGVzIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgd2l0aCB0aGUgbGlzdCBvZiB2aWFibGUgaW5zdGFuY2UgdHlwZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSW5zdGFuY2VEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIEFuIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZSBkZXNpZ25hdGlvbi5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlVHlwZTogZWMyLkluc3RhbmNlVHlwZTtcblxuICAvKipcbiAgICogSW5zdGFuY2Ugd2VpZ2h0aW5nIHRoYXQgaW5kaWNhdGVzIGhvdyBtdWNoIHRoaXMgaW5zdGFuY2UgdHlwZSBjb250cmlidXRlcyB0byB0aGUgdG90YWwgY2FwYWNpdHkgb2YgYSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSW5zdGFuY2Ugd2VpZ2h0cyBhcmUgdXNlZCBieSBHYW1lTGlmdCBGbGVldElRIHRvIGNhbGN1bGF0ZSB0aGUgaW5zdGFuY2UgdHlwZSdzIGNvc3QgcGVyIHVuaXQgaG91ciBhbmQgYmV0dGVyIGlkZW50aWZ5IHRoZSBtb3N0IGNvc3QtZWZmZWN0aXZlIG9wdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1dG9zY2FsaW5nL2VjMi91c2VyZ3VpZGUvYXNnLWluc3RhbmNlLXdlaWdodGluZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlZmF1bHQgdmFsdWUgaXMgMVxuICAgKi9cbiAgcmVhZG9ubHkgd2VpZ2h0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIFRoZSB0eXBlIG9mIGRlbGV0ZSB0byBwZXJmb3JtLlxuICogVG8gZGVsZXRlIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHNwZWNpZnkgdGhlIERlbGV0ZU9wdGlvbi5cbiAqL1xuZXhwb3J0IGVudW0gRGVsZXRlT3B0aW9uIHtcbiAgLyoqXG4gICAqIFRlcm1pbmF0ZXMgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGFuZCBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cCBvbmx5IHdoZW4gaXQgaGFzIG5vIGdhbWUgc2VydmVycyB0aGF0IGFyZSBpbiBVVElMSVpFRCBzdGF0dXMuXG4gICAqL1xuICBTQUZFX0RFTEVURSA9ICdTQUZFX0RFTEVURScsXG5cbiAgLyoqXG4gICAqIFRlcm1pbmF0ZXMgdGhlIGdhbWUgc2VydmVyIGdyb3VwLCBpbmNsdWRpbmcgYWxsIGFjdGl2ZSBnYW1lIHNlcnZlcnMgcmVnYXJkbGVzcyBvZiB0aGVpciB1dGlsaXphdGlvbiBzdGF0dXMsIGFuZCB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gICAqL1xuICBGT1JDRV9ERUxFVEUgPSAnRk9SQ0VfREVMRVRFJyxcblxuICAvKipcbiAgICogRG9lcyBhIHNhZmUgZGVsZXRlIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cCBidXQgcmV0YWlucyB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgYXMgaXMuXG4gICAqL1xuICBSRVRBSU4gPSAnUkVUQUlOJyxcbn1cblxuLyoqXG4gKiBJbmRpY2F0ZXMgaG93IEdhbWVMaWZ0IEZsZWV0SVEgYmFsYW5jZXMgdGhlIHVzZSBvZiBTcG90IEluc3RhbmNlcyBhbmQgT24tRGVtYW5kIEluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBlbnVtIEJhbGFuY2luZ1N0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIE9ubHkgU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKiBJZiBTcG90IEluc3RhbmNlcyBhcmUgdW5hdmFpbGFibGUgb3Igbm90IHZpYWJsZSBmb3IgZ2FtZSBob3N0aW5nLCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgcHJvdmlkZXMgbm8gaG9zdGluZyBjYXBhY2l0eSB1bnRpbCBTcG90IEluc3RhbmNlcyBjYW4gYWdhaW4gYmUgdXNlZC5cbiAgICogVW50aWwgdGhlbiwgbm8gbmV3IGluc3RhbmNlcyBhcmUgc3RhcnRlZCwgYW5kIHRoZSBleGlzdGluZyBub252aWFibGUgU3BvdCBJbnN0YW5jZXMgYXJlIHRlcm1pbmF0ZWQgKGFmdGVyIGN1cnJlbnQgZ2FtZXBsYXkgZW5kcykgYW5kIGFyZSBub3QgcmVwbGFjZWQuXG4gICAqL1xuICBTUE9UX09OTFkgPSAnU1BPVF9PTkxZJyxcblxuICAvKipcbiAgICogU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQgd2hlbmV2ZXIgYXZhaWxhYmxlIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSWYgU3BvdCBJbnN0YW5jZXMgYXJlIHVuYXZhaWxhYmxlLCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgY29udGludWVzIHRvIHByb3ZpZGUgaG9zdGluZyBjYXBhY2l0eSBieSBmYWxsaW5nIGJhY2sgdG8gT24tRGVtYW5kIEluc3RhbmNlcy5cbiAgICogRXhpc3Rpbmcgbm9udmlhYmxlIFNwb3QgSW5zdGFuY2VzIGFyZSB0ZXJtaW5hdGVkIChhZnRlciBjdXJyZW50IGdhbWVwbGF5IGVuZHMpIGFuZCBhcmUgcmVwbGFjZWQgd2l0aCBuZXcgT24tRGVtYW5kIEluc3RhbmNlcy5cbiAgICovXG4gIFNQT1RfUFJFRkVSUkVEID0gJ1NQT1RfUFJFRkVSUkVEJyxcblxuICAvKipcbiAgICogT25seSBPbi1EZW1hbmQgSW5zdGFuY2VzIGFyZSB1c2VkIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogTm8gU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQsIGV2ZW4gd2hlbiBhdmFpbGFibGUsIHdoaWxlIHRoaXMgYmFsYW5jaW5nIHN0cmF0ZWd5IGlzIGluIGZvcmNlLlxuICAgKi9cbiAgT05fREVNQU5EX09OTFkgPSAnT05fREVNQU5EX09OTFknLFxufVxuXG4vKipcbiAqIFJlcHJlc2VudCBhIEdhbWVMaWZ0IEZsZWV0SVEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUdhbWVTZXJ2ZXJHcm91cCBleHRlbmRzIGNkay5JUmVzb3VyY2UsIGlhbS5JR3JhbnRhYmxlIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9TY2FsaW5nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogR3JhbnQgdGhlIGBncmFudGVlYCBpZGVudGl0eSBwZXJtaXNzaW9ucyB0byBwZXJmb3JtIGBhY3Rpb25zYC5cbiAgICovXG4gIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudDtcblxuICAvKipcbiAgICogUmV0dXJuIHRoZSBnaXZlbiBuYW1lZCBtZXRyaWMgZm9yIHRoaXMgZmxlZXQuXG4gICAqL1xuICBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgRmxlZXRJUSBnYW1lIHNlcnZlciBncm91cC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEdhbWVTZXJ2ZXJHcm91cEJhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJR2FtZVNlcnZlckdyb3VwIHtcbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnZW5lcmF0ZWQgQXV0b1NjYWxpbmcgZ3JvdXBcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgdGhpcyBHYW1lTGlmdCBnYW1lIHNlcnZlciBncm91cCBpcyB1c2luZy5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG5cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICByZXNvdXJjZUFybnM6IFt0aGlzLmdhbWVTZXJ2ZXJHcm91cEFybl0sXG4gICAgICBncmFudGVlOiBncmFudGVlLFxuICAgICAgYWN0aW9uczogYWN0aW9ucyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIG5hbWVzcGFjZTogJ0FXUy9HYW1lTGlmdCcsXG4gICAgICBtZXRyaWNOYW1lOiBtZXRyaWNOYW1lLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBHYW1lU2VydmVyR3JvdXBBcm46IHRoaXMuZ2FtZVNlcnZlckdyb3VwQXJuLFxuICAgICAgfSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pLmF0dGFjaFRvKHRoaXMpO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVTZXJ2ZXJHcm91cCBjb250ZW50IGRlZmluZWQgb3V0c2lkZSBvZiB0aGlzIHN0YWNrLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdhbWVTZXJ2ZXJHcm91cEF0dHJpYnV0ZXMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZ2FtZVNlcnZlckdyb3VwQXJuYCBhbmQgYGdhbWVTZXJ2ZXJHcm91cE5hbWVgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlcnZlckdyb3VwQXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZ2FtZVNlcnZlckdyb3VwQXJuYCBhbmQgYGdhbWVTZXJ2ZXJHcm91cE5hbWVgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlcnZlckdyb3VwTmFtZWAuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdlbmVyYXRlZCBBdXRvU2NhbGluZyBncm91cFxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgaW1wb3J0ZWQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgZG9lcyBub3QgaGF2ZSBhdXRvc2NhbGluZyBncm91cCBpbmZvcm1hdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBhbGxvd3MgQW1hem9uIEdhbWVMaWZ0IHRvIGFjY2VzcyB5b3VyIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3Vwcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGltcG9ydGVkIGdhbWUgc2VydmVyIGdyb3VwIGNhbm5vdCBiZSBncmFudGVkIGFjY2VzcyB0byBvdGhlciByZXNvdXJjZXMgYXMgYW4gYGlhbS5JR3JhbnRhYmxlYC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgR2FtZWxpZnQgRmxlZXRJUSBHYW1lIHNlcnZlciBncm91cFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdhbWVTZXJ2ZXJHcm91cFByb3BzIHtcbiAgLyoqXG4gICAqIEEgZGV2ZWxvcGVyLWRlZmluZWQgaWRlbnRpZmllciBmb3IgdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKiBUaGUgbmFtZSBpcyB1bmlxdWUgZm9yIGVhY2ggUmVnaW9uIGluIGVhY2ggQVdTIGFjY291bnQuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSB0aGF0IGFsbG93cyBBbWF6b24gR2FtZUxpZnQgdG8gYWNjZXNzIHlvdXIgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXBzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZmxlZXRpcWd1aWRlL2dzZy1pYW0tcGVybWlzc2lvbnMtcm9sZXMuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGEgcm9sZSB3aWxsIGJlIGNyZWF0ZWQgd2l0aCBkZWZhdWx0IHRydXN0IHRvIEdhbWVsaWZ0IGFuZCBBdXRvc2NhbGluZyBzZXJ2aWNlIHByaW5jaXBhbCB3aXRoIGEgZGVmYXVsdCBwb2xpY3kgYEdhbWVMaWZ0R2FtZVNlcnZlckdyb3VwUG9saWN5YCBhdHRhY2hlZC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gICAqIER1cmluZyBhdXRvbWF0aWMgc2NhbGluZyBldmVudHMsIEdhbWVMaWZ0IEZsZWV0SVEgYW5kIEFtYXpvbiBFQzIgZG8gbm90IHNjYWxlIGRvd24gdGhlIGdyb3VwIGJlbG93IHRoaXMgbWluaW11bS5cbiAgICpcbiAgICogSW4gcHJvZHVjdGlvbiwgdGhpcyB2YWx1ZSBzaG91bGQgYmUgc2V0IHRvIGF0IGxlYXN0IDEuXG4gICAqXG4gICAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgdXBkYXRlIHRoaXMgdmFsdWUgZGlyZWN0bHkgaW4gdGhlIEF1dG8gU2NhbGluZyBncm91cCB1c2luZyB0aGUgQVdTIGNvbnNvbGUgb3IgQVBJcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGRlZmF1bHQgaXMgMFxuICAgKi9cbiAgcmVhZG9ubHkgbWluU2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGluIHRoZSBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cC4gRHVyaW5nIGF1dG9tYXRpYyBzY2FsaW5nIGV2ZW50cywgR2FtZUxpZnQgRmxlZXRJUSBhbmQgRUMyIGRvIG5vdCBzY2FsZSB1cCB0aGUgZ3JvdXAgYWJvdmUgdGhpcyBtYXhpbXVtLlxuICAgKlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IGlzIDFcbiAgICovXG4gIHJlYWRvbmx5IG1heFNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBWUEMgbmV0d29yayB0byBwbGFjZSB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaW4uXG4gICAqXG4gICAqIEJ5IGRlZmF1bHQsIGFsbCBHYW1lTGlmdCBGbGVldElRLXN1cHBvcnRlZCBBdmFpbGFiaWxpdHkgWm9uZXMgYXJlIHVzZWQuXG4gICAqXG4gICAqIFlvdSBjYW4gdXNlIHRoaXMgcGFyYW1ldGVyIHRvIHNwZWNpZnkgVlBDcyB0aGF0IHlvdSd2ZSBzZXQgdXAuXG4gICAqXG4gICAqIFRoaXMgcHJvcGVydHkgY2Fubm90IGJlIHVwZGF0ZWQgYWZ0ZXIgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGlzIGNyZWF0ZWQsXG4gICAqIGFuZCB0aGUgY29ycmVzcG9uZGluZyBBdXRvIFNjYWxpbmcgZ3JvdXAgd2lsbCBhbHdheXMgdXNlIHRoZSBwcm9wZXJ0eSB2YWx1ZSB0aGF0IGlzIHNldCB3aXRoIHRoaXMgcmVxdWVzdCxcbiAgICogZXZlbiBpZiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIHVwZGF0ZWQgZGlyZWN0bHkuXG4gICAqL1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuXG4gIC8qKlxuICAgKiBHYW1lIHNlcnZlciBncm91cCBzdWJuZXQgc2VsZWN0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IGFsbCBHYW1lTGlmdCBGbGVldElRLXN1cHBvcnRlZCBBdmFpbGFiaWxpdHkgWm9uZXMgYXJlIHVzZWQuXG4gICAqL1xuICByZWFkb25seSB2cGNTdWJuZXRzPzogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcblxuICAvKipcbiAgICogVGhlIHNldCBvZiBBbWF6b24gRUMyIGluc3RhbmNlIHR5cGVzIHRoYXQgR2FtZUxpZnQgRmxlZXRJUSBjYW4gdXNlIHdoZW4gYmFsYW5jaW5nIGFuZCBhdXRvbWF0aWNhbGx5IHNjYWxpbmcgaW5zdGFuY2VzIGluIHRoZSBjb3JyZXNwb25kaW5nIEF1dG8gU2NhbGluZyBncm91cC5cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlRGVmaW5pdGlvbnM6IEluc3RhbmNlRGVmaW5pdGlvbltdO1xuXG4gIC8qKlxuICAgKiBUaGUgQW1hem9uIEVDMiBsYXVuY2ggdGVtcGxhdGUgdGhhdCBjb250YWlucyBjb25maWd1cmF0aW9uIHNldHRpbmdzIGFuZCBnYW1lIHNlcnZlciBjb2RlIHRvIGJlIGRlcGxveWVkIHRvIGFsbCBpbnN0YW5jZXMgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIE5PVEU6XG4gICAqIElmIHlvdSBzcGVjaWZ5IG5ldHdvcmsgaW50ZXJmYWNlcyBpbiB5b3VyIGxhdW5jaCB0ZW1wbGF0ZSwgeW91IG11c3QgZXhwbGljaXRseSBzZXQgdGhlIHByb3BlcnR5IEFzc29jaWF0ZVB1YmxpY0lwQWRkcmVzcyB0byBgdHJ1ZWAuXG4gICAqIElmIG5vIG5ldHdvcmsgaW50ZXJmYWNlIGlzIHNwZWNpZmllZCBpbiB0aGUgbGF1bmNoIHRlbXBsYXRlLCBHYW1lTGlmdCBGbGVldElRIHVzZXMgeW91ciBhY2NvdW50J3MgZGVmYXVsdCBWUEMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1dG9zY2FsaW5nL2VjMi91c2VyZ3VpZGUvY3JlYXRlLWxhdW5jaC10ZW1wbGF0ZS5odG1sXG4gICAqL1xuICByZWFkb25seSBsYXVuY2hUZW1wbGF0ZTogZWMyLklMYXVuY2hUZW1wbGF0ZTtcblxuICAvKipcbiAgICogQSBmbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgaW5zdGFuY2VzIGluIHRoZSBnYW1lIHNlcnZlciBncm91cCBhcmUgcHJvdGVjdGVkIGZyb20gZWFybHkgdGVybWluYXRpb24uXG4gICAqIFVucHJvdGVjdGVkIGluc3RhbmNlcyB0aGF0IGhhdmUgYWN0aXZlIGdhbWUgc2VydmVycyBydW5uaW5nIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudCwgY2F1c2luZyBwbGF5ZXJzIHRvIGJlIGRyb3BwZWQgZnJvbSB0aGUgZ2FtZS5cbiAgICogUHJvdGVjdGVkIGluc3RhbmNlcyBjYW5ub3QgYmUgdGVybWluYXRlZCB3aGlsZSB0aGVyZSBhcmUgYWN0aXZlIGdhbWUgc2VydmVycyBydW5uaW5nIGV4Y2VwdCBpbiB0aGUgZXZlbnQgb2YgYSBmb3JjZWQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgZGVsZXRpb24uXG4gICAqXG4gICAqIEFuIGV4Y2VwdGlvbiB0byB0aGlzIGlzIHdpdGggU3BvdCBJbnN0YW5jZXMsIHdoaWNoIGNhbiBiZSB0ZXJtaW5hdGVkIGJ5IEFXUyByZWdhcmRsZXNzIG9mIHByb3RlY3Rpb24gc3RhdHVzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBnYW1lIHNlcnZlcnMgcnVubmluZyBtaWdodCBiZSB0ZXJtaW5hdGVkIGR1cmluZyBhIHNjYWxlLWRvd24gZXZlbnRcbiAgICovXG4gIHJlYWRvbmx5IHByb3RlY3RHYW1lU2VydmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBzZXR0aW5ncyB0byBkZWZpbmUgYSBzY2FsaW5nIHBvbGljeSBmb3IgdGhlIEF1dG8gU2NhbGluZyBncm91cCB0aGF0IGlzIG9wdGltaXplZCBmb3IgZ2FtZSBob3N0aW5nLlxuICAgKiBUaGUgc2NhbGluZyBwb2xpY3kgdXNlcyB0aGUgbWV0cmljIGBQZXJjZW50VXRpbGl6ZWRHYW1lU2VydmVyc2AgdG8gbWFpbnRhaW4gYSBidWZmZXIgb2YgaWRsZSBnYW1lIHNlcnZlcnMgdGhhdCBjYW4gaW1tZWRpYXRlbHkgYWNjb21tb2RhdGUgbmV3IGdhbWVzIGFuZCBwbGF5ZXJzLlxuICAgKlxuICAgKiBBZnRlciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIGlzIGNyZWF0ZWQsIHVwZGF0ZSB0aGlzIHZhbHVlIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgdXNpbmcgdGhlIEFXUyBjb25zb2xlIG9yIEFQSXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGF1dG9zY2FsaW5nIHBvbGljeSBzZXR0bGVkXG4gICAqL1xuICByZWFkb25seSBhdXRvU2NhbGluZ1BvbGljeT86IEF1dG9TY2FsaW5nUG9saWN5O1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBkZWxldGUgdG8gcGVyZm9ybS4gVG8gZGVsZXRlIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHNwZWNpZnkgdGhlIERlbGV0ZU9wdGlvblxuICAgKlxuICAgKiBAZGVmYXVsdCBTQUZFX0RFTEVURVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlT3B0aW9uPzogRGVsZXRlT3B0aW9uO1xuXG4gIC8qKlxuICAgICogSW5kaWNhdGVzIGhvdyBHYW1lTGlmdCBGbGVldElRIGJhbGFuY2VzIHRoZSB1c2Ugb2YgU3BvdCBJbnN0YW5jZXMgYW5kIE9uLURlbWFuZCBJbnN0YW5jZXMgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwLlxuICAgICpcbiAgICAqIEBkZWZhdWx0IFNQT1RfUFJFRkVSUkVEXG4gICAgKi9cbiAgcmVhZG9ubHkgYmFsYW5jaW5nU3RyYXRlZ3k/OiBCYWxhbmNpbmdTdHJhdGVneTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgR2FtZUxpZnQgRmxlZXRJUSBnYW1lIHNlcnZlciBncm91cCBmb3IgbWFuYWdpbmcgZ2FtZSBob3N0aW5nIG9uIGEgY29sbGVjdGlvbiBvZiBBbWF6b24gRUMyIGluc3RhbmNlcyBmb3IgZ2FtZSBob3N0aW5nLlxuICogVGhpcyBvcGVyYXRpb24gY3JlYXRlcyB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIGNyZWF0ZXMgYW4gQXV0byBTY2FsaW5nIGdyb3VwIGluIHlvdXIgQVdTIGFjY291bnQsIGFuZCBlc3RhYmxpc2hlcyBhIGxpbmsgYmV0d2VlbiB0aGUgdHdvIGdyb3Vwcy5cbiAqIFlvdSBjYW4gdmlldyB0aGUgc3RhdHVzIG9mIHlvdXIgZ2FtZSBzZXJ2ZXIgZ3JvdXBzIGluIHRoZSBHYW1lTGlmdCBjb25zb2xlLlxuICogR2FtZSBzZXJ2ZXIgZ3JvdXAgbWV0cmljcyBhbmQgZXZlbnRzIGFyZSBlbWl0dGVkIHRvIEFtYXpvbiBDbG91ZFdhdGNoLlxuICogQmVmb3JlIGNyZWF0aW5nIGEgbmV3IGdhbWUgc2VydmVyIGdyb3VwLCB5b3UgbXVzdCBoYXZlIHRoZSBmb2xsb3dpbmc6XG4gKiAgLSBBbiBBbWF6b24gRUMyIGxhdW5jaCB0ZW1wbGF0ZSB0aGF0IHNwZWNpZmllcyBob3cgdG8gbGF1bmNoIEFtYXpvbiBFQzIgaW5zdGFuY2VzIHdpdGggeW91ciBnYW1lIHNlcnZlciBidWlsZC5cbiAqICAtIEFuIElBTSByb2xlIHRoYXQgZXh0ZW5kcyBsaW1pdGVkIGFjY2VzcyB0byB5b3VyIEFXUyBhY2NvdW50IHRvIGFsbG93IEdhbWVMaWZ0IEZsZWV0SVEgdG8gY3JlYXRlIGFuZCBpbnRlcmFjdCB3aXRoIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gKlxuICogVG8gY3JlYXRlIGEgbmV3IGdhbWUgc2VydmVyIGdyb3VwLCBzcGVjaWZ5IGEgdW5pcXVlIGdyb3VwIG5hbWUsIElBTSByb2xlIGFuZCBBbWF6b24gRUMyIGxhdW5jaCB0ZW1wbGF0ZSwgYW5kIHByb3ZpZGUgYSBsaXN0IG9mIGluc3RhbmNlIHR5cGVzIHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIGdyb3VwLlxuICogWW91IG11c3QgYWxzbyBzZXQgaW5pdGlhbCBtYXhpbXVtIGFuZCBtaW5pbXVtIGxpbWl0cyBvbiB0aGUgZ3JvdXAncyBpbnN0YW5jZSBjb3VudC5cbiAqIFlvdSBjYW4gb3B0aW9uYWxseSBzZXQgYW4gQXV0byBTY2FsaW5nIHBvbGljeSB3aXRoIHRhcmdldCB0cmFja2luZyBiYXNlZCBvbiBhIEdhbWVMaWZ0IEZsZWV0SVEgbWV0cmljLlxuICpcbiAqIE9uY2UgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGFuZCBjb3JyZXNwb25kaW5nIEF1dG8gU2NhbGluZyBncm91cCBhcmUgY3JlYXRlZCwgeW91IGhhdmUgZnVsbCBhY2Nlc3MgdG8gY2hhbmdlIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAncyBjb25maWd1cmF0aW9uIGFzIG5lZWRlZC5cbiAqIFNldmVyYWwgcHJvcGVydGllcyB0aGF0IGFyZSBzZXQgd2hlbiBjcmVhdGluZyBhIGdhbWUgc2VydmVyIGdyb3VwLCBpbmNsdWRpbmcgbWF4aW11bS9taW5pbXVtIHNpemUgYW5kIGF1dG8tc2NhbGluZyBwb2xpY3kgc2V0dGluZ3MsIG11c3QgYmUgdXBkYXRlZCBkaXJlY3RseSBpbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICogS2VlcCBpbiBtaW5kIHRoYXQgc29tZSBBdXRvIFNjYWxpbmcgZ3JvdXAgcHJvcGVydGllcyBhcmUgcGVyaW9kaWNhbGx5IHVwZGF0ZWQgYnkgR2FtZUxpZnQgRmxlZXRJUSBhcyBwYXJ0IG9mIGl0cyBiYWxhbmNpbmcgYWN0aXZpdGllcyB0byBvcHRpbWl6ZSBmb3IgYXZhaWxhYmlsaXR5IGFuZCBjb3N0LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9mbGVldGlxZ3VpZGUvZ3NnLWludHJvLmh0bWxcbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6R2FtZVNlcnZlckdyb3VwXG4gKi9cbmV4cG9ydCBjbGFzcyBHYW1lU2VydmVyR3JvdXAgZXh0ZW5kcyBHYW1lU2VydmVyR3JvdXBCYXNlIHtcbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBnYW1lIHNlcnZlciBncm91cCBmcm9tIGl0cyBhdHRyaWJ1dGVzLlxuICAgKi9cbiAgc3RhdGljIGZyb21HYW1lU2VydmVyR3JvdXBBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBHYW1lU2VydmVyR3JvdXBBdHRyaWJ1dGVzKTogSUdhbWVTZXJ2ZXJHcm91cCB7XG4gICAgaWYgKCFhdHRycy5nYW1lU2VydmVyR3JvdXBBcm4gJiYgIWF0dHJzLmdhbWVTZXJ2ZXJHcm91cE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGdhbWVTZXJ2ZXJHcm91cE5hbWUgb3IgZ2FtZVNlcnZlckdyb3VwQXJuIG11c3QgYmUgcHJvdmlkZWQgaW4gR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcycpO1xuICAgIH1cbiAgICBjb25zdCBnYW1lU2VydmVyR3JvdXBOYW1lID0gYXR0cnMuZ2FtZVNlcnZlckdyb3VwTmFtZSA/P1xuICAgICAgY2RrLlN0YWNrLm9mKHNjb3BlKS5zcGxpdEFybihhdHRycy5nYW1lU2VydmVyR3JvdXBBcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghZ2FtZVNlcnZlckdyb3VwTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBnYW1lIHNlcnZlciBncm91cCBuYW1lIGZvdW5kIGluIEFSTjogJyR7YXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJufSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBnYW1lU2VydmVyR3JvdXBBcm4gPSBhdHRycy5nYW1lU2VydmVyR3JvdXBBcm4gPz8gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZ2FtZXNlcnZlcmdyb3VwJyxcbiAgICAgIHJlc291cmNlTmFtZTogYXR0cnMuZ2FtZVNlcnZlckdyb3VwTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuXG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgR2FtZVNlcnZlckdyb3VwQmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwTmFtZSA9IGdhbWVTZXJ2ZXJHcm91cE5hbWUhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cEFybiA9IGdhbWVTZXJ2ZXJHcm91cEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuID0gYXR0cnMuYXV0b1NjYWxpbmdHcm91cEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbCA9IGF0dHJzLnJvbGUgPz8gbmV3IGlhbS5Vbmtub3duUHJpbmNpcGFsKHsgcmVzb3VyY2U6IHRoaXMgfSk7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgcm9sZSA9IGF0dHJzLnJvbGU7XG5cbiAgICAgIGNvbnN0cnVjdG9yKHM6IENvbnN0cnVjdCwgaTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHMsIGksIHtcbiAgICAgICAgICBlbnZpcm9ubWVudEZyb21Bcm46IGdhbWVTZXJ2ZXJHcm91cEFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgdGhhdCBhbGxvd3MgQW1hem9uIEdhbWVMaWZ0IHRvIGFjY2VzcyB5b3VyIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3Vwcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByb2xlOiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgdGhpcyBHYW1lTGlmdCBnYW1lIHNlcnZlciBncm91cCBpcyB1c2luZy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG5cbiAgLyoqXG4gICAqIFRoZSBWUEMgbmV0d29yayB0byBwbGFjZSB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaW4uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdnBjOiBlYzIuSVZwYztcblxuICAvKipcbiAgICogVGhlIGdhbWUgc2VydmVyIGdyb3VwJ3Mgc3VibmV0cy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2cGNTdWJuZXRzPzogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZSxcbiAgICB9KTtcblxuICAgIGlmICghY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lKSkge1xuICAgICAgaWYgKHByb3BzLmdhbWVTZXJ2ZXJHcm91cE5hbWUubGVuZ3RoID4gMTI4KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgR2FtZVNlcnZlckdyb3VwIG5hbWUgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMjggY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG5cbiAgICAgIGlmICghL15bYS16QS1aMC05LVxcLl0rJC8udGVzdChwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWUgc2VydmVyIGdyb3VwIG5hbWUgJHtwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lfSBjYW4gY29udGFpbiBvbmx5IGxldHRlcnMsIG51bWJlcnMsIGh5cGhlbnMsIGJhY2sgc2xhc2ggb3IgZG90IHdpdGggbm8gc3BhY2VzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMudnBjID0gcHJvcHMudnBjO1xuICAgIHRoaXMudnBjU3VibmV0cyA9IHByb3BzLnZwY1N1Ym5ldHMgPz8geyBzdWJuZXRUeXBlOiBlYzIuU3VibmV0VHlwZS5QVUJMSUMgfTtcbiAgICBjb25zdCB7IHN1Ym5ldElkcyB9ID0gcHJvcHMudnBjLnNlbGVjdFN1Ym5ldHModGhpcy52cGNTdWJuZXRzKTtcblxuICAgIGlmIChwcm9wcy5taW5TaXplICYmIHByb3BzLm1pblNpemUgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgY2Fubm90IGJlIGxvd2VyIHRoYW4gMCwgZ2l2ZW4gJHtwcm9wcy5taW5TaXplfWApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5tYXhTaXplICYmIHByb3BzLm1heFNpemUgPCAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXAgY2Fubm90IGJlIGxvd2VyIHRoYW4gMSwgZ2l2ZW4gJHtwcm9wcy5tYXhTaXplfWApO1xuICAgIH1cblxuICAgIGlmIChzdWJuZXRJZHMubGVuZ3RoID4gMjApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbW9yZSB0aGFuIDIwIHN1Ym5ldHMgYXJlIGFsbG93ZWQgcGVyIGdhbWUgc2VydmVyIGdyb3VwLCBnaXZlbiAke3N1Ym5ldElkcy5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgLy8gQWRkIGFsbCBpbnN0YW5jZSBkZWZpbml0aW9uc1xuICAgIGlmIChwcm9wcy5pbnN0YW5jZURlZmluaXRpb25zLmxlbmd0aCA+IDIwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAyMCBpbnN0YW5jZSBkZWZpbml0aW9ucyBhcmUgYWxsb3dlZCBwZXIgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIGdpdmVuICR7cHJvcHMuaW5zdGFuY2VEZWZpbml0aW9ucy5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgdGhpcy5yb2xlID0gcHJvcHMucm9sZSA/PyBuZXcgaWFtLlJvbGUodGhpcywgJ1NlcnZpY2VSb2xlJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLkNvbXBvc2l0ZVByaW5jaXBhbChcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdnYW1lbGlmdC5hbWF6b25hd3MuY29tJyksXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnYXV0b3NjYWxpbmcuYW1hem9uYXdzLmNvbScpKSxcbiAgICAgIG1hbmFnZWRQb2xpY2llczogW1xuICAgICAgICBpYW0uTWFuYWdlZFBvbGljeS5mcm9tQXdzTWFuYWdlZFBvbGljeU5hbWUoJ0dhbWVMaWZ0R2FtZVNlcnZlckdyb3VwUG9saWN5JyksXG4gICAgICBdLFxuICAgIH0pO1xuICAgIHRoaXMuZ3JhbnRQcmluY2lwYWwgPSB0aGlzLnJvbGU7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5HYW1lU2VydmVyR3JvdXAodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgZ2FtZVNlcnZlckdyb3VwTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBhdXRvU2NhbGluZ1BvbGljeTogdGhpcy5wYXJzZUF1dG9TY2FsaW5nUG9saWN5KHByb3BzKSxcbiAgICAgIGRlbGV0ZU9wdGlvbjogcHJvcHMuZGVsZXRlT3B0aW9uLFxuICAgICAgYmFsYW5jaW5nU3RyYXRlZ3k6IHByb3BzLmJhbGFuY2luZ1N0cmF0ZWd5LFxuICAgICAgZ2FtZVNlcnZlclByb3RlY3Rpb25Qb2xpY3k6IHByb3BzLnByb3RlY3RHYW1lU2VydmVyID8gJ0ZVTExfUFJPVEVDVElPTicgOiAnTk9fUFJPVEVDVElPTicsXG4gICAgICBpbnN0YW5jZURlZmluaXRpb25zOiB0aGlzLnBhcnNlSW5zdGFuY2VEZWZpbml0aW9ucyhwcm9wcyksXG4gICAgICBsYXVuY2hUZW1wbGF0ZTogdGhpcy5wYXJzZUxhdW5jaFRlbXBsYXRlKHByb3BzKSxcbiAgICAgIG1pblNpemU6IHByb3BzLm1pblNpemUsXG4gICAgICBtYXhTaXplOiBwcm9wcy5tYXhTaXplLFxuICAgICAgcm9sZUFybjogdGhpcy5yb2xlLnJvbGVBcm4sXG4gICAgICB2cGNTdWJuZXRzOiBzdWJuZXRJZHMsXG4gICAgfSk7XG5cbiAgICB0aGlzLmdhbWVTZXJ2ZXJHcm91cE5hbWUgPSB0aGlzLmdldFJlc291cmNlTmFtZUF0dHJpYnV0ZShyZXNvdXJjZS5yZWYpO1xuICAgIHRoaXMuZ2FtZVNlcnZlckdyb3VwQXJuID0gdGhpcy5nZXRSZXNvdXJjZUFybkF0dHJpYnV0ZShyZXNvdXJjZS5hdHRyR2FtZVNlcnZlckdyb3VwQXJuLCB7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdnYW1lc2VydmVyZ3JvdXAnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICAgIHRoaXMuYXV0b1NjYWxpbmdHcm91cEFybiA9IHRoaXMuZ2V0UmVzb3VyY2VBcm5BdHRyaWJ1dGUocmVzb3VyY2UuYXR0ckF1dG9TY2FsaW5nR3JvdXBBcm4sIHtcbiAgICAgIHNlcnZpY2U6ICdhdXRvc2NhbGluZycsXG4gICAgICByZXNvdXJjZTogJ2F1dG9TY2FsaW5nR3JvdXAnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5DT0xPTl9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlTGF1bmNoVGVtcGxhdGUocHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkxhdW5jaFRlbXBsYXRlUHJvcGVydHkge1xuICAgIHJldHVybiB7XG4gICAgICBsYXVuY2hUZW1wbGF0ZUlkOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXVuY2hUZW1wbGF0ZUlkLFxuICAgICAgbGF1bmNoVGVtcGxhdGVOYW1lOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXVuY2hUZW1wbGF0ZU5hbWUsXG4gICAgICB2ZXJzaW9uOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS52ZXJzaW9uTnVtYmVyLFxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VBdXRvU2NhbGluZ1BvbGljeShwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpOiBDZm5HYW1lU2VydmVyR3JvdXAuQXV0b1NjYWxpbmdQb2xpY3lQcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5hdXRvU2NhbGluZ1BvbGljeSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZXN0aW1hdGVkSW5zdGFuY2VXYXJtdXA6IHByb3BzLmF1dG9TY2FsaW5nUG9saWN5LmVzdGltYXRlZEluc3RhbmNlV2FybXVwPy50b1NlY29uZHMoKSxcbiAgICAgIHRhcmdldFRyYWNraW5nQ29uZmlndXJhdGlvbjoge1xuICAgICAgICB0YXJnZXRWYWx1ZTogcHJvcHMuYXV0b1NjYWxpbmdQb2xpY3kudGFyZ2V0VHJhY2tpbmdDb25maWd1cmF0aW9uLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlSW5zdGFuY2VEZWZpbml0aW9ucyhwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpOiBDZm5HYW1lU2VydmVyR3JvdXAuSW5zdGFuY2VEZWZpbml0aW9uUHJvcGVydHlbXSB7XG4gICAgcmV0dXJuIHByb3BzLmluc3RhbmNlRGVmaW5pdGlvbnMubWFwKHBhcnNlSW5zdGFuY2VEZWZpbml0aW9uKTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlSW5zdGFuY2VEZWZpbml0aW9uKGluc3RhbmNlRGVmaW5pdGlvbjogSW5zdGFuY2VEZWZpbml0aW9uKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkluc3RhbmNlRGVmaW5pdGlvblByb3BlcnR5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGluc3RhbmNlVHlwZTogaW5zdGFuY2VEZWZpbml0aW9uLmluc3RhbmNlVHlwZS50b1N0cmluZygpLFxuICAgICAgICB3ZWlnaHRlZENhcGFjaXR5OiBpbnN0YW5jZURlZmluaXRpb24ud2VpZ2h0Py50b1N0cmluZygpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -64,7 +64,7 @@ class GameSessionQueueBase extends cdk.Resource {
|
|
|
64
64
|
}
|
|
65
65
|
exports.GameSessionQueueBase = GameSessionQueueBase;
|
|
66
66
|
_a = JSII_RTTI_SYMBOL_1;
|
|
67
|
-
GameSessionQueueBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase", version: "2.
|
|
67
|
+
GameSessionQueueBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase", version: "2.127.0-alpha.0" };
|
|
68
68
|
/**
|
|
69
69
|
* The GameSessionQueue resource creates a placement queue that processes requests for new game sessions.
|
|
70
70
|
* 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.
|
|
@@ -265,5 +265,5 @@ class GameSessionQueue extends GameSessionQueueBase {
|
|
|
265
265
|
}
|
|
266
266
|
exports.GameSessionQueue = GameSessionQueue;
|
|
267
267
|
_b = JSII_RTTI_SYMBOL_1;
|
|
268
|
-
GameSessionQueue[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueue", version: "2.
|
|
268
|
+
GameSessionQueue[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.GameSessionQueue", version: "2.127.0-alpha.0" };
|
|
269
269
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXNzaW9uLXF1ZXVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZ2FtZS1zZXNzaW9uLXF1ZXVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHlEQUF5RDtBQUV6RCx3Q0FBd0M7QUFFeEMsMkRBQStEO0FBZS9EOztHQUVHO0FBQ0gsSUFBWSxZQW9CWDtBQXBCRCxXQUFZLFlBQVk7SUFDdEI7O09BRUc7SUFDSCxtQ0FBbUIsQ0FBQTtJQUVuQjs7T0FFRztJQUNILDZCQUFhLENBQUE7SUFFYjs7T0FFRztJQUNILDJDQUEyQixDQUFBO0lBRTNCOztPQUVHO0lBQ0gscUNBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQXBCVyxZQUFZLDRCQUFaLFlBQVksUUFvQnZCO0FBeU1EOztHQUVHO0FBQ0gsTUFBc0Isb0JBQXFCLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFXdEQsTUFBTSxDQUFDLFVBQWtCLEVBQUUsS0FBZ0M7UUFDaEUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDM0IsU0FBUyxFQUFFLGNBQWM7WUFDekIsVUFBVSxFQUFFLFVBQVU7WUFDdEIsYUFBYSxFQUFFO2dCQUNiLG9CQUFvQixFQUFFLElBQUksQ0FBQyxvQkFBb0I7YUFDaEQ7WUFDRCxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ25CO0lBRUQscUJBQXFCLENBQUMsS0FBZ0M7UUFDcEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQzlDO0lBRUQsd0JBQXdCLENBQUMsS0FBZ0M7UUFDdkQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQ2pEO0lBRUQsc0JBQXNCLENBQUMsS0FBZ0M7UUFDckQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQy9D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QUM7WUFDNUIsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztRQUVELE9BQU87WUFDTCxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsZ0JBQWdCO1NBQ3pDLENBQUM7S0FDSDtJQUVPLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUN6RCxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRS9DLFNBQVMsZ0JBQWdCLENBQUMsV0FBeUM7WUFDakUsT0FBTztnQkFDTCxjQUFjLEVBQUUsV0FBVyxDQUFDLHlCQUF5QjthQUN0RCxDQUFDO1FBQ0osQ0FBQztLQUNGOztBQTNLSCw0Q0E0S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCAqIGFzIHNucyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc25zJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2ZuR2FtZVNlc3Npb25RdWV1ZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGdhbWUgc2Vzc2lvbiBxdWV1ZSBkZXN0aW5hdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb24ge1xuICAvKipcbiAgICogVGhlIEFSTihzKSB0byBwdXQgaW50byB0aGUgZGVzdGluYXRpb24gZmllbGQgZm9yIGEgZ2FtZSBzZXNzaW9uIHF1ZXVlLlxuICAgKlxuICAgKiBUaGlzIHByb3BlcnR5IGlzIGZvciBjZGsgbW9kdWxlcyB0byBjb25zdW1lIG9ubHkuIFlvdSBzaG91bGQgbm90IG5lZWQgdG8gdXNlIHRoaXMgcHJvcGVydHkuXG4gICAqIEluc3RlYWQsIHVzZSBkZWRpY2F0ZWQgaWRlbnRpZmllciBvbiBlYWNoIGNvbXBvbmVudHMuXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZUFybkZvckRlc3RpbmF0aW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJpb3JpdHkgdG8gY29uZGlkZXIgd2hlbiBwbGFjaW5nIG5ldyBnYW1lIHNlc3Npb25zXG4gKi9cbmV4cG9ydCBlbnVtIFByaW9yaXR5VHlwZSB7XG4gIC8qKlxuICAgKiBGbGVldElRIHByaW9yaXRpemVzIGxvY2F0aW9ucyB3aGVyZSB0aGUgYXZlcmFnZSBwbGF5ZXIgbGF0ZW5jeSAocHJvdmlkZWQgaW4gZWFjaCBnYW1lIHNlc3Npb24gcmVxdWVzdCkgaXMgbG93ZXN0LlxuICAgKi9cbiAgTEFURU5DWSA9ICdMQVRFTkNZJyxcblxuICAvKipcbiAgICogRmxlZXRJUSBwcmlvcml0aXplcyBkZXN0aW5hdGlvbnMgd2l0aCB0aGUgbG93ZXN0IGN1cnJlbnQgaG9zdGluZyBjb3N0cy4gQ29zdCBpcyBldmFsdWF0ZWQgYmFzZWQgb24gdGhlIGxvY2F0aW9uLCBpbnN0YW5jZSB0eXBlLCBhbmQgZmxlZXQgdHlwZSAoU3BvdCBvciBPbi1EZW1hbmQpIGZvciBlYWNoIGRlc3RpbmF0aW9uIGluIHRoZSBxdWV1ZS5cbiAgICovXG4gIENPU1QgPSAnQ09TVCcsXG5cbiAgLyoqXG4gICAqIEZsZWV0SVEgcHJpb3JpdGl6ZXMgYmFzZWQgb24gdGhlIG9yZGVyIHRoYXQgZGVzdGluYXRpb25zIGFyZSBsaXN0ZWQgaW4gdGhlIHF1ZXVlIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBERVNUSU5BVElPTiA9ICdERVNUSU5BVElPTicsXG5cbiAgLyoqXG4gICAqIEZsZWV0SVEgcHJpb3JpdGl6ZXMgYmFzZWQgb24gdGhlIHByb3ZpZGVkIG9yZGVyIG9mIGxvY2F0aW9ucywgYXMgZGVmaW5lZCBpbiBgTG9jYXRpb25PcmRlcmBcbiAgICovXG4gIExPQ0FUSU9OID0gJ0xPQ0FUSU9OJyxcbn1cblxuLyoqXG4gKiBDdXN0b20gcHJpb3JpdGl6YXRpb24gc2V0dGluZ3MgZm9yIHVzZSBieSBhIGdhbWUgc2Vzc2lvbiBxdWV1ZSB3aGVuIHBsYWNpbmcgbmV3IGdhbWUgc2Vzc2lvbnMgd2l0aCBhdmFpbGFibGUgZ2FtZSBzZXJ2ZXJzLlxuICogV2hlbiBkZWZpbmVkLCB0aGlzIGNvbmZpZ3VyYXRpb24gcmVwbGFjZXMgdGhlIGRlZmF1bHQgRmxlZXRJUSBwcmlvcml0aXphdGlvbiBwcm9jZXNzLCB3aGljaCBpcyBhcyBmb2xsb3dzOlxuICpcbiAqIC0gSWYgcGxheWVyIGxhdGVuY3kgZGF0YSBpcyBpbmNsdWRlZCBpbiBhIGdhbWUgc2Vzc2lvbiByZXF1ZXN0LCBkZXN0aW5hdGlvbnMgYW5kIGxvY2F0aW9ucyBhcmUgcHJpb3JpdGl6ZWQgZmlyc3QgYmFzZWQgb24gbG93ZXN0IGF2ZXJhZ2UgbGF0ZW5jeSAoMSksIHRoZW4gb24gbG93ZXN0IGhvc3RpbmcgY29zdCAoMiksIHRoZW4gb24gZGVzdGluYXRpb24gbGlzdCBvcmRlciAoMyksIGFuZCBmaW5hbGx5IG9uIGxvY2F0aW9uIChhbHBoYWJldGljYWwpICg0KS5cbiAqIFRoaXMgYXBwcm9hY2ggZW5zdXJlcyB0aGF0IHRoZSBxdWV1ZSdzIHRvcCBwcmlvcml0eSBpcyB0byBwbGFjZSBnYW1lIHNlc3Npb25zIHdoZXJlIGF2ZXJhZ2UgcGxheWVyIGxhdGVuY3kgaXMgbG93ZXN0LCBhbmQtLWlmIGxhdGVuY3kgaXMgdGhlIHNhbWUtLXdoZXJlIHRoZSBob3N0aW5nIGNvc3QgaXMgbGVzcywgZXRjLlxuICpcbiAqIC0gSWYgcGxheWVyIGxhdGVuY3kgZGF0YSBpcyBub3QgaW5jbHVkZWQsIGRlc3RpbmF0aW9ucyBhbmQgbG9jYXRpb25zIGFyZSBwcmlvcml0aXplZCBmaXJzdCBvbiBkZXN0aW5hdGlvbiBsaXN0IG9yZGVyICgxKSwgYW5kIHRoZW4gb24gbG9jYXRpb24gKGFscGhhYmV0aWNhbCkgKDIpLlxuICogVGhpcyBhcHByb2FjaCBlbnN1cmVzIHRoYXQgdGhlIHF1ZXVlJ3MgdG9wIHByaW9yaXR5IGlzIHRvIHBsYWNlIGdhbWUgc2Vzc2lvbnMgb24gdGhlIGZpcnN0IGRlc3RpbmF0aW9uIGZsZWV0IGxpc3RlZC4gSWYgdGhhdCBmbGVldCBoYXMgbXVsdGlwbGUgbG9jYXRpb25zLCB0aGUgZ2FtZSBzZXNzaW9uIGlzIHBsYWNlZCBvbiB0aGUgZmlyc3QgbG9jYXRpb24gKHdoZW4gbGlzdGVkIGFscGhhYmV0aWNhbGx5KS5cbiAqXG4gKiBDaGFuZ2luZyB0aGUgcHJpb3JpdHkgb3JkZXIgd2lsbCBhZmZlY3QgaG93IGdhbWUgc2Vzc2lvbnMgYXJlIHBsYWNlZC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcmlvcml0eUNvbmZpZ3VyYXRpb24ge1xuICAvKipcbiAgICogVGhlIHByaW9yaXRpemF0aW9uIG9yZGVyIHRvIHVzZSBmb3IgZmxlZXQgbG9jYXRpb25zLCB3aGVuIHRoZSBQcmlvcml0eU9yZGVyIHByb3BlcnR5IGluY2x1ZGVzIExPQ0FUSU9OLiBMb2NhdGlvbnMgYXJlIGlkZW50aWZpZWQgYnkgQVdTIFJlZ2lvbiBjb2RlcyBzdWNoIGFzIGB1cy13ZXN0LTIuXG4gICAqXG4gICAqIEVhY2ggbG9jYXRpb24gY2FuIG9ubHkgYmUgbGlzdGVkIG9uY2UuXG4gICAqL1xuICByZWFkb25seSBsb2NhdGlvbk9yZGVyOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIHJlY29tbWVuZGVkIHNlcXVlbmNlIHRvIHVzZSB3aGVuIHByaW9yaXRpemluZyB3aGVyZSB0byBwbGFjZSBuZXcgZ2FtZSBzZXNzaW9ucy5cbiAgICogRWFjaCB0eXBlIGNhbiBvbmx5IGJlIGxpc3RlZCBvbmNlLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJpb3JpdHlPcmRlcjogUHJpb3JpdHlUeXBlW107XG59XG5cbi8qKlxuICogVGhlIHF1ZXVlIHNldHRpbmcgdGhhdCBkZXRlcm1pbmVzIHRoZSBoaWdoZXN0IGxhdGVuY3kgYWxsb3dlZCBmb3IgaW5kaXZpZHVhbCBwbGF5ZXJzIHdoZW4gcGxhY2luZyBhIGdhbWUgc2Vzc2lvbi5cbiAqIFdoZW4gYSBsYXRlbmN5IHBvbGljeSBpcyBpbiBmb3JjZSwgYSBnYW1lIHNlc3Npb24gY2Fubm90IGJlIHBsYWNlZCB3aXRoIGFueSBmbGVldCBpbiBhIFJlZ2lvbiB3aGVyZSBhIHBsYXllciByZXBvcnRzIGxhdGVuY3kgaGlnaGVyIHRoYW4gdGhlIGNhcC5cbiAqXG4gKiBMYXRlbmN5IHBvbGljaWVzIGFyZSBvbmx5IGVuZm9yY2VkIHdoZW4gdGhlIHBsYWNlbWVudCByZXF1ZXN0IGNvbnRhaW5zIHBsYXllciBsYXRlbmN5IGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBsYXllckxhdGVuY3lQb2xpY3kge1xuICAvKipcbiAgICogVGhlIG1heGltdW0gbGF0ZW5jeSB2YWx1ZSB0aGF0IGlzIGFsbG93ZWQgZm9yIGFueSBwbGF5ZXIsIGluIG1pbGxpc2Vjb25kcy5cbiAgICpcbiAgICogQWxsIHBvbGljaWVzIG11c3QgaGF2ZSBhIHZhbHVlIHNldCBmb3IgdGhpcyBwcm9wZXJ0eS5cbiAgICovXG4gIHJlYWRvbmx5IG1heGltdW1JbmRpdmlkdWFsUGxheWVyTGF0ZW5jeTogY2RrLkR1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbGVuZ3RoIG9mIHRpbWUsIGluIHNlY29uZHMsIHRoYXQgdGhlIHBvbGljeSBpcyBlbmZvcmNlZCB3aGlsZSBwbGFjaW5nIGEgbmV3IGdhbWUgc2Vzc2lvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIHBvbGljeSBpcyBlbmZvcmNlZCB1bnRpbCB0aGUgcXVldWUgdGltZXMgb3V0LlxuICAgKi9cbiAgcmVhZG9ubHkgcG9saWN5RHVyYXRpb24/OiBjZGsuRHVyYXRpb247XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVsaWZ0IEdhbWVTZXNzaW9uUXVldWUgZm9yIGEgR2FtZWxpZnQgZmxlZXQgZGVzdGluYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUdhbWVTZXNzaW9uUXVldWUgZXh0ZW5kcyBjZGsuSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBOYW1lIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlLlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIGZsZWV0LlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogQXZlcmFnZSBhbW91bnQgb2YgdGltZSB0aGF0IGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgaW4gdGhlIHF1ZXVlIHdpdGggc3RhdHVzIFBFTkRJTkcgaGF2ZSBiZWVuIHdhaXRpbmcgdG8gYmUgZnVsZmlsbGVkLlxuICAgKi9cbiAgbWV0cmljQXZlcmFnZVdhaXRUaW1lKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgdGhhdCB3ZXJlIGNhbmNlbGVkIGJlZm9yZSB0aW1pbmcgb3V0IHNpbmNlIHRoZSBsYXN0IHJlcG9ydC5cbiAgICovXG4gIG1ldHJpY1BsYWNlbWVudHNDYW5jZWxlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBHYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIHRoYXQgZmFpbGVkIGZvciBhbnkgcmVhc29uIHNpbmNlIHRoZSBsYXN0IHJlcG9ydC5cbiAgICovXG4gIG1ldHJpY1BsYWNlbWVudHNGYWlsZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogTmV3IGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgdGhhdCB3ZXJlIGFkZGVkIHRvIHRoZSBxdWV1ZSBzaW5jZSB0aGUgbGFzdCByZXBvcnQuXG4gICAqL1xuICBtZXRyaWNQbGFjZW1lbnRzU3RhcnRlZChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBHYW1lIHNlc3Npb24gcGxhY2VtZW50IHJlcXVlc3RzIHRoYXQgcmVzdWx0ZWQgaW4gYSBuZXcgZ2FtZSBzZXNzaW9uIHNpbmNlIHRoZSBsYXN0IHJlcG9ydC5cbiAgICovXG4gIG1ldHJpY1BsYWNlbWVudHNTdWNjZWVkZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogR2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0cyB0aGF0IHJlYWNoZWQgdGhlIHF1ZXVlJ3MgdGltZW91dCBsaW1pdCB3aXRob3V0IGJlaW5nIGZ1bGZpbGxlZCBzaW5jZSB0aGUgbGFzdCByZXBvcnQuXG4gICAqL1xuICBtZXRyaWNQbGFjZW1lbnRzVGltZWRPdXQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcbn1cblxuLyoqXG4gKiBBIGZ1bGwgc3BlY2lmaWNhdGlvbiBvZiBhbiBnYW1lU2Vzc2lvblF1ZXVlIHRoYXQgY2FuIGJlIHVzZWQgdG8gaW1wb3J0IGl0IGZsdWVudGx5IGludG8gdGhlIENESyBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHYW1lU2Vzc2lvblF1ZXVlQXR0cmlidXRlcyB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZ2FtZVNlc3Npb25RdWV1ZUFybmAgYW5kIGBnYW1lU2Vzc2lvblF1ZXVlTmFtZWAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgZGVyaXZlZCBmcm9tIGBnYW1lU2Vzc2lvblF1ZXVlTmFtZWAuXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZVxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGdhbWVTZXNzaW9uUXVldWVOYW1lYCBhbmQgYGdhbWVTZXNzaW9uUXVldWVBcm5gICBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGdhbWVTZXNzaW9uUXVldWVBcm5gLlxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgRmxlZXQgZ2FtZVNlc3Npb25RdWV1ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdhbWVTZXNzaW9uUXVldWVQcm9wcyB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoaXMgZ2FtZVNlc3Npb25RdWV1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogIEluZm9ybWF0aW9uIHRvIGJlIGFkZGVkIHRvIGFsbCBldmVudHMgdGhhdCBhcmUgcmVsYXRlZCB0byB0aGlzIGdhbWUgc2Vzc2lvbiBxdWV1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY3VzdG9tZXIgZXZlbnQgZGF0YVxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tRXZlbnREYXRhPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgbG9jYXRpb25zIHdoZXJlIGEgcXVldWUgaXMgYWxsb3dlZCB0byBwbGFjZSBuZXcgZ2FtZSBzZXNzaW9ucy5cbiAgICpcbiAgICogTG9jYXRpb25zIGFyZSBzcGVjaWZpZWQgaW4gdGhlIGZvcm0gb2YgQVdTIFJlZ2lvbiBjb2Rlcywgc3VjaCBhcyBgdXMtd2VzdC0yYC5cbiAgICpcbiAgICogRm9yIHF1ZXVlcyB0aGF0IGhhdmUgbXVsdGktbG9jYXRpb24gZmxlZXRzLCB5b3UgY2FuIHVzZSBhIGZpbHRlciBjb25maWd1cmF0aW9uIGFsbG93IHBsYWNlbWVudCB3aXRoIHNvbWUsIGJ1dCBub3QgYWxsIG9mIHRoZXNlIGxvY2F0aW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgZ2FtZSBzZXNzaW9ucyBjYW4gYmUgcGxhY2VkIGluIGFueSBxdWV1ZSBsb2NhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZExvY2F0aW9ucz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBbiBTTlMgdG9waWMgaXMgc2V0IHVwIHRvIHJlY2VpdmUgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudCBub3RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBub3RpZmljYXRpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL3F1ZXVlLW5vdGlmaWNhdGlvbi5odG1sXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25UYXJnZXQ/OiBzbnMuSVRvcGljO1xuXG4gIC8qKlxuICAgKiBBIHNldCBvZiBwb2xpY2llcyB0aGF0IGFjdCBhcyBhIHNsaWRpbmcgY2FwIG9uIHBsYXllciBsYXRlbmN5LlxuICAgKiBGbGVldElRIHdvcmtzIHRvIGRlbGl2ZXIgbG93IGxhdGVuY3kgZm9yIG1vc3QgcGxheWVycyBpbiBhIGdhbWUgc2Vzc2lvbi5cbiAgICogVGhlc2UgcG9saWNpZXMgZW5zdXJlIHRoYXQgbm8gaW5kaXZpZHVhbCBwbGF5ZXIgY2FuIGJlIHBsYWNlZCBpbnRvIGEgZ2FtZSB3aXRoIHVucmVhc29uYWJseSBoaWdoIGxhdGVuY3kuXG4gICAqIFVzZSBtdWx0aXBsZSBwb2xpY2llcyB0byBncmFkdWFsbHkgcmVsYXggbGF0ZW5jeSByZXF1aXJlbWVudHMgYSBzdGVwIGF0IGEgdGltZS5cbiAgICogTXVsdGlwbGUgcG9saWNpZXMgYXJlIGFwcGxpZWQgYmFzZWQgb24gdGhlaXIgbWF4aW11bSBhbGxvd2VkIGxhdGVuY3ksIHN0YXJ0aW5nIHdpdGggdGhlIGxvd2VzdCB2YWx1ZS5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gcGxheWVyIGxhdGVuY3kgcG9saWN5XG4gICAqL1xuICByZWFkb25seSBwbGF5ZXJMYXRlbmN5UG9saWNpZXM/OiBQbGF5ZXJMYXRlbmN5UG9saWN5W107XG5cbiAgLyoqXG4gICAqIEN1c3RvbSBzZXR0aW5ncyB0byB1c2Ugd2hlbiBwcmlvcml0aXppbmcgZGVzdGluYXRpb25zIGFuZCBsb2NhdGlvbnMgZm9yIGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnRzLlxuICAgKiBUaGlzIGNvbmZpZ3VyYXRpb24gcmVwbGFjZXMgdGhlIEZsZWV0SVEgZGVmYXVsdCBwcmlvcml0aXphdGlvbiBwcm9jZXNzLlxuICAgKlxuICAgKiBQcmlvcml0eSB0eXBlcyB0aGF0IGFyZSBub3QgZXhwbGljaXRseSBuYW1lZCB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgYXBwbGllZCBhdCB0aGUgZW5kIG9mIHRoZSBwcmlvcml0aXphdGlvbiBwcm9jZXNzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBwcmlvcml0eSBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBwcmlvcml0eUNvbmZpZ3VyYXRpb24/OiBQcmlvcml0eUNvbmZpZ3VyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIHRpbWUsIHRoYXQgYSBuZXcgZ2FtZSBzZXNzaW9uIHBsYWNlbWVudCByZXF1ZXN0IHJlbWFpbnMgaW4gdGhlIHF1ZXVlLlxuICAgKiBXaGVuIGEgcmVxdWVzdCBleGNlZWRzIHRoaXMgdGltZSwgdGhlIGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgY2hhbmdlcyB0byBhIGBUSU1FRF9PVVRgIHN0YXR1cy5cbiAgICpcbiAgICogQGRlZmF1bHQgNTAgc2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgdGltZW91dD86IGNkay5EdXJhdGlvbjtcblxuICAvKipcbiAgICogQSBsaXN0IG9mIGZsZWV0cyBhbmQvb3IgZmxlZXQgYWxpYXMgdGhhdCBjYW4gYmUgdXNlZCB0byBmdWxmaWxsIGdhbWUgc2Vzc2lvbiBwbGFjZW1lbnQgcmVxdWVzdHMgaW4gdGhlIHF1ZXVlLlxuICAgKlxuICAgKiBEZXN0aW5hdGlvbnMgYXJlIGxpc3RlZCBpbiBvcmRlciBvZiBwbGFjZW1lbnQgcHJlZmVyZW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IGRlc3RpbmF0aW9uczogSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbltdO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgR2FtZVNlc3Npb25RdWV1ZS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEdhbWVTZXNzaW9uUXVldWVCYXNlIGV4dGVuZHMgY2RrLlJlc291cmNlIGltcGxlbWVudHMgSUdhbWVTZXNzaW9uUXVldWUge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWVTZXNzaW9uUXVldWUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ2FtZVNlc3Npb25RdWV1ZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVBcm46IHN0cmluZztcblxuICBwdWJsaWMgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIG5ldyBjbG91ZHdhdGNoLk1ldHJpYyh7XG4gICAgICBuYW1lc3BhY2U6ICdBV1MvR2FtZUxpZnQnLFxuICAgICAgbWV0cmljTmFtZTogbWV0cmljTmFtZSxcbiAgICAgIGRpbWVuc2lvbnNNYXA6IHtcbiAgICAgICAgR2FtZVNlc3Npb25RdWV1ZU5hbWU6IHRoaXMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUsXG4gICAgICB9LFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cblxuICBtZXRyaWNBdmVyYWdlV2FpdFRpbWUocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdBdmVyYWdlV2FpdFRpbWUnLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNQbGFjZW1lbnRzQ2FuY2VsZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdQbGFjZW1lbnRzQ2FuY2VsZWQnLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNQbGFjZW1lbnRzRmFpbGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnUGxhY2VtZW50c0ZhaWxlZCcsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1BsYWNlbWVudHNTdGFydGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnUGxhY2VtZW50c1N0YXJ0ZWQnLCBwcm9wcyk7XG4gIH1cblxuICBtZXRyaWNQbGFjZW1lbnRzU3VjY2VlZGVkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnUGxhY2VtZW50c1N1Y2NlZWRlZCcsIHByb3BzKTtcbiAgfVxuXG4gIG1ldHJpY1BsYWNlbWVudHNUaW1lZE91dChwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gdGhpcy5tZXRyaWMoJ1BsYWNlbWVudHNUaW1lZE91dCcsIHByb3BzKTtcbiAgfVxufVxuXG4vKipcbiAqIFRoZSBHYW1lU2Vzc2lvblF1ZXVlIHJlc291cmNlIGNyZWF0ZXMgYSBwbGFjZW1lbnQgcXVldWUgdGhhdCBwcm9jZXNzZXMgcmVxdWVzdHMgZm9yIG5ldyBnYW1lIHNlc3Npb25zLlxuICogQSBxdWV1ZSB1c2VzIEZsZWV0SVEgYWxnb3JpdGhtcyB0byBkZXRlcm1pbmUgdGhlIGJlc3QgcGxhY2VtZW50IGxvY2F0aW9ucyBhbmQgZmluZCBhbiBhdmFpbGFibGUgZ2FtZSBzZXJ2ZXIsIHRoZW4gcHJvbXB0cyB0aGUgZ2FtZSBzZXJ2ZXIgdG8gc3RhcnQgYSBuZXcgZ2FtZSBzZXNzaW9uLlxuICogUXVldWVzIGNhbiBoYXZlIGRlc3RpbmF0aW9ucyAoR2FtZUxpZnQgZmxlZXRzIG9yIGdhbWVTZXNzaW9uUXVldWVlcyksIHdoaWNoIGRldGVybWluZSB3aGVyZSB0aGUgcXVldWUgY2FuIHBsYWNlIG5ldyBnYW1lIHNlc3Npb25zLlxuICogQSBxdWV1ZSBjYW4gaGF2ZSBkZXN0aW5hdGlvbnMgd2l0aCB2YXJpZWQgZmxlZXQgdHlwZSAoU3BvdCBhbmQgT24tRGVtYW5kKSwgaW5zdGFuY2UgdHlwZSwgYW5kIEFXUyBSZWdpb24uXG4gKlxuICogQHJlc291cmNlIEFXUzo6R2FtZUxpZnQ6OkdhbWVTZXNzaW9uUXVldWVcbiAqL1xuZXhwb3J0IGNsYXNzIEdhbWVTZXNzaW9uUXVldWUgZXh0ZW5kcyBHYW1lU2Vzc2lvblF1ZXVlQmFzZSB7XG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZ2FtZVNlc3Npb25RdWV1ZSBmcm9tIGl0cyBuYW1lLlxuICAgKi9cbiAgc3RhdGljIGZyb21HYW1lU2Vzc2lvblF1ZXVlTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBnYW1lU2Vzc2lvblF1ZXVlTmFtZTogc3RyaW5nKTogSUdhbWVTZXNzaW9uUXVldWUge1xuICAgIHJldHVybiB0aGlzLmZyb21HYW1lU2Vzc2lvblF1ZXVlQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgZ2FtZVNlc3Npb25RdWV1ZU5hbWUgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGdhbWVTZXNzaW9uUXVldWUgZnJvbSBpdHMgQVJOLlxuICAgKi9cbiAgc3RhdGljIGZyb21HYW1lU2Vzc2lvblF1ZXVlQXJuKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGdhbWVTZXNzaW9uUXVldWVBcm46IHN0cmluZyk6IElHYW1lU2Vzc2lvblF1ZXVlIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tR2FtZVNlc3Npb25RdWV1ZUF0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGdhbWVTZXNzaW9uUXVldWVBcm4gfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGdhbWVTZXNzaW9uUXVldWUgZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tR2FtZVNlc3Npb25RdWV1ZUF0dHJpYnV0ZXMoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYXR0cnM6IEdhbWVTZXNzaW9uUXVldWVBdHRyaWJ1dGVzKTogSUdhbWVTZXNzaW9uUXVldWUge1xuICAgIGlmICghYXR0cnMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUgJiYgIWF0dHJzLmdhbWVTZXNzaW9uUXVldWVBcm4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGdhbWVTZXNzaW9uUXVldWVOYW1lIG9yIGdhbWVTZXNzaW9uUXVldWVBcm4gbXVzdCBiZSBwcm92aWRlZCBpbiBHYW1lU2Vzc2lvblF1ZXVlQXR0cmlidXRlcycpO1xuICAgIH1cbiAgICBjb25zdCBnYW1lU2Vzc2lvblF1ZXVlTmFtZSA9IGF0dHJzLmdhbWVTZXNzaW9uUXVldWVOYW1lID8/XG4gICAgICBjZGsuU3RhY2sub2Yoc2NvcGUpLnNwbGl0QXJuKGF0dHJzLmdhbWVTZXNzaW9uUXVldWVBcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghZ2FtZVNlc3Npb25RdWV1ZU5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gZ2FtZVNlc3Npb25RdWV1ZSBuYW1lIGZvdW5kIGluIEFSTjogJyR7YXR0cnMuZ2FtZVNlc3Npb25RdWV1ZUFybn0nYCk7XG4gICAgfVxuXG4gICAgY29uc3QgZ2FtZVNlc3Npb25RdWV1ZUFybiA9IGF0dHJzLmdhbWVTZXNzaW9uUXVldWVBcm4gPz8gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZ2FtZXNlc3Npb25xdWV1ZScsXG4gICAgICByZXNvdXJjZU5hbWU6IGF0dHJzLmdhbWVTZXNzaW9uUXVldWVOYW1lLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgR2FtZVNlc3Npb25RdWV1ZUJhc2Uge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVOYW1lID0gZ2FtZVNlc3Npb25RdWV1ZU5hbWUhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVBcm4gPSBnYW1lU2Vzc2lvblF1ZXVlQXJuO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBnYW1lU2Vzc2lvblF1ZXVlQXJuLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgZ2FtZVNlc3Npb25RdWV1ZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lU2Vzc2lvblF1ZXVlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXNzaW9uUXVldWVBcm46IHN0cmluZztcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3RpbmF0aW9uczogSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbltdID0gW107XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEdhbWVTZXNzaW9uUXVldWVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSxcbiAgICB9KTtcblxuICAgIGlmICghY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZS5sZW5ndGggPiAxMjgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBHYW1lU2Vzc2lvblF1ZXVlIG5hbWUgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMjggY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuXG4gICAgICBpZiAoIS9eW2EtekEtWjAtOS1dKyQvLnRlc3QocHJvcHMuZ2FtZVNlc3Npb25RdWV1ZU5hbWUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgR2FtZVNlc3Npb25RdWV1ZSBuYW1lICR7cHJvcHMuZ2FtZVNlc3Npb25RdWV1ZU5hbWV9IGNhbiBjb250YWluIG9ubHkgbGV0dGVycywgbnVtYmVycywgaHlwaGVucyB3aXRoIG5vIHNwYWNlcy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuY3VzdG9tRXZlbnREYXRhICYmIHByb3BzLmN1c3RvbUV2ZW50RGF0YS5sZW5ndGggPiAyNTYpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgR2FtZVNlc3Npb25RdWV1ZSBjdXN0b20gZXZlbnQgZGF0YSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5jdXN0b21FdmVudERhdGEubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5hbGxvd2VkTG9jYXRpb25zICYmIHByb3BzLmFsbG93ZWRMb2NhdGlvbnMubGVuZ3RoID4gMTAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAxMDAgYWxsb3dlZCBsb2NhdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGdhbWUgc2Vzc2lvbiBxdWV1ZSwgZ2l2ZW4gJHtwcm9wcy5hbGxvd2VkTG9jYXRpb25zLmxlbmd0aH1gKTtcbiAgICB9XG5cbiAgICAvLyBBZGQgYWxsIGRlc3RpbmF0aW9uc1xuICAgIChwcm9wcy5kZXN0aW5hdGlvbnMgfHwgW10pLmZvckVhY2godGhpcy5hZGREZXN0aW5hdGlvbi5iaW5kKHRoaXMpKTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkdhbWVTZXNzaW9uUXVldWUodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBjdXN0b21FdmVudERhdGE6IHByb3BzLmN1c3RvbUV2ZW50RGF0YSxcbiAgICAgIGRlc3RpbmF0aW9uczogY2RrLkxhenkuYW55KHsgcHJvZHVjZTogKCkgPT4gdGhpcy5wYXJzZURlc3RpbmF0aW9ucygpIH0pLFxuICAgICAgZmlsdGVyQ29uZmlndXJhdGlvbjogdGhpcy5wYXJzZUZpbHRlckNvbmZpZ3VyYXRpb24ocHJvcHMpLFxuICAgICAgbm90aWZpY2F0aW9uVGFyZ2V0OiBwcm9wcy5ub3RpZmljYXRpb25UYXJnZXQgJiYgcHJvcHMubm90aWZpY2F0aW9uVGFyZ2V0LnRvcGljQXJuLFxuICAgICAgcGxheWVyTGF0ZW5jeVBvbGljaWVzOiB0aGlzLnBhcnNlUGxheWVyTGF0ZW5jeVBvbGljaWVzKHByb3BzKSxcbiAgICAgIHByaW9yaXR5Q29uZmlndXJhdGlvbjogdGhpcy5wYXJzZVByaW9yaXR5Q29uZmlndXJhdGlvbihwcm9wcyksXG4gICAgICB0aW1lb3V0SW5TZWNvbmRzOiBwcm9wcy50aW1lb3V0ICYmIHByb3BzLnRpbWVvdXQudG9TZWNvbmRzKCksXG4gICAgfSk7XG5cbiAgICB0aGlzLmdhbWVTZXNzaW9uUXVldWVOYW1lID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocmVzb3VyY2UucmVmKTtcbiAgICB0aGlzLmdhbWVTZXNzaW9uUXVldWVBcm4gPSBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdnYW1lc2Vzc2lvbnF1ZXVlJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5nYW1lU2Vzc2lvblF1ZXVlTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBkZXN0aW5hdGlvbiB0byBmdWxmaWxsIHJlcXVlc3RzIGZvciBuZXcgZ2FtZSBzZXNzaW9uc1xuICAgKlxuICAgKiBAcGFyYW0gZGVzdGluYXRpb24gQSBkZXN0aW5hdGlvbiB0byBhZGRcbiAgICovXG4gIHB1YmxpYyBhZGREZXN0aW5hdGlvbihkZXN0aW5hdGlvbjogSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbikge1xuICAgIHRoaXMuZGVzdGluYXRpb25zLnB1c2goZGVzdGluYXRpb24pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlUHJpb3JpdHlDb25maWd1cmF0aW9uKHByb3BzOiBHYW1lU2Vzc2lvblF1ZXVlUHJvcHMpOiBDZm5HYW1lU2Vzc2lvblF1ZXVlLlByaW9yaXR5Q29uZmlndXJhdGlvblByb3BlcnR5IHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXByb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbikge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uLmxvY2F0aW9uT3JkZXIubGVuZ3RoID4gMTAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAxMDAgbG9jYXRpb25zIGFyZSBhbGxvd2VkIHBlciBwcmlvcml0eSBjb25maWd1cmF0aW9uLCBnaXZlbiAke3Byb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbi5sb2NhdGlvbk9yZGVyLmxlbmd0aH1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uLnByaW9yaXR5T3JkZXIubGVuZ3RoID4gNCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gNCBwcmlvcml0aWVzIGFyZSBhbGxvd2VkIHBlciBwcmlvcml0eSBjb25maWd1cmF0aW9uLCBnaXZlbiAke3Byb3BzLnByaW9yaXR5Q29uZmlndXJhdGlvbi5wcmlvcml0eU9yZGVyLmxlbmd0aH1gKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgcHJpb3JpdHlPcmRlcjogcHJvcHMucHJpb3JpdHlDb25maWd1cmF0aW9uLnByaW9yaXR5T3JkZXIsXG4gICAgICBsb2NhdGlvbk9yZGVyOiBwcm9wcy5wcmlvcml0eUNvbmZpZ3VyYXRpb24ubG9jYXRpb25PcmRlcixcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlUGxheWVyTGF0ZW5jeVBvbGljaWVzKHByb3BzOiBHYW1lU2Vzc2lvblF1ZXVlUHJvcHMpOiBDZm5HYW1lU2Vzc2lvblF1ZXVlLlBsYXllckxhdGVuY3lQb2xpY3lQcm9wZXJ0eVtdIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXByb3BzLnBsYXllckxhdGVuY3lQb2xpY2llcykge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJvcHMucGxheWVyTGF0ZW5jeVBvbGljaWVzLm1hcChwYXJzZVBsYXllckxhdGVuY3lQb2xpY3kpO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VQbGF5ZXJMYXRlbmN5UG9saWN5KHBsYXllckxhdGVuY3lQb2xpY3k6IFBsYXllckxhdGVuY3lQb2xpY3kpOiBDZm5HYW1lU2Vzc2lvblF1ZXVlLlBsYXllckxhdGVuY3lQb2xpY3lQcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBtYXhpbXVtSW5kaXZpZHVhbFBsYXllckxhdGVuY3lNaWxsaXNlY29uZHM6IHBsYXllckxhdGVuY3lQb2xpY3kubWF4aW11bUluZGl2aWR1YWxQbGF5ZXJMYXRlbmN5LnRvTWlsbGlzZWNvbmRzKCksXG4gICAgICAgIHBvbGljeUR1cmF0aW9uU2Vjb25kczogcGxheWVyTGF0ZW5jeVBvbGljeS5wb2xpY3lEdXJhdGlvbiAmJiBwbGF5ZXJMYXRlbmN5UG9saWN5LnBvbGljeUR1cmF0aW9uLnRvU2Vjb25kcygpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VGaWx0ZXJDb25maWd1cmF0aW9uKHByb3BzOiBHYW1lU2Vzc2lvblF1ZXVlUHJvcHMpOiBDZm5HYW1lU2Vzc2lvblF1ZXVlLkZpbHRlckNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5hbGxvd2VkTG9jYXRpb25zKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBhbGxvd2VkTG9jYXRpb25zOiBwcm9wcy5hbGxvd2VkTG9jYXRpb25zLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHBhcnNlRGVzdGluYXRpb25zKCk6IENmbkdhbWVTZXNzaW9uUXVldWUuRGVzdGluYXRpb25Qcm9wZXJ0eVtdIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXRoaXMuZGVzdGluYXRpb25zIHx8IHRoaXMuZGVzdGluYXRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5kZXN0aW5hdGlvbnMubWFwKHBhcnNlRGVzdGluYXRpb24pO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VEZXN0aW5hdGlvbihkZXN0aW5hdGlvbjogSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbik6IENmbkdhbWVTZXNzaW9uUXVldWUuRGVzdGluYXRpb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBkZXN0aW5hdGlvbkFybjogZGVzdGluYXRpb24ucmVzb3VyY2VBcm5Gb3JEZXN0aW5hdGlvbixcbiAgICAgIH07XG4gICAgfVxuICB9XG59XG4iXX0=
|
package/lib/ingress-rule.js
CHANGED
|
@@ -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.
|
|
107
|
+
Port[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.Port", version: "2.127.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.
|
|
134
|
+
Peer[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Peer", version: "2.127.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.
|
|
86
|
+
MatchmakingConfigurationBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingConfigurationBase", version: "2.127.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.
|
|
76
|
+
RuleSetContent[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.RuleSetContent", version: "2.127.0-alpha.0" };
|
|
77
77
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2htYWtpbmctcnVsZXNldC1ib2R5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibWF0Y2htYWtpbmctcnVsZXNldC1ib2R5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLHlCQUF5QjtBQWtEekI7Ozs7Ozs7R0FPRztBQUNILE1BQWEsY0FBYztJQUN6Qjs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFZO1FBQ3JDLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5REFBeUQsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNuRixDQUFDO1FBRUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDhFQUE4RSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5DLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztLQUN6QztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLElBQVk7UUFDbkMsSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLEVBQUUsQ0FBQztZQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLHVEQUF1RCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN4RixDQUFDO1FBQ0QsSUFBSSxDQUFDO1lBQ0gsT0FBTyxJQUFJLGNBQWMsQ0FBQztnQkFDeEIsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO2FBQzFCLENBQUMsQ0FBQztRQUNMLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztLQUNGO0lBT0QsWUFBWSxLQUEwQjs7Ozs7OytDQTFDM0IsY0FBYzs7OztRQTJDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztLQUNwQztJQUVEOzs7OztPQUtHO0lBQ0ksSUFBSSxDQUFDLE1BQWlCO1FBQzNCLE9BQU87WUFDTCxXQUFXLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1NBQzFDLENBQUM7S0FDSDs7QUF4REgsd0NBeURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogSW50ZXJmYWNlIHRvIHJlcHJlc2VudCBNYXRjaG1ha2luZyBSdWxlU2V0IHNjaGVtYVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElSdWxlU2V0Qm9keSB7fVxuXG4vKipcbiAqIEludGVyZmFjZSB0byByZXByZXNlbnQgb3V0cHV0IHJlc3VsdCBvZiBhIFJ1bGVTZXRDb250ZW50IGJpbmRpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSdWxlU2V0Qm9keUNvbmZpZyB7XG4gIC8qKlxuICAgKiBJbmxpbmUgcnVsZVNldCBib2R5LlxuICAgKi9cbiAgcmVhZG9ubHkgcnVsZVNldEJvZHk6IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgdG8gcmVwcmVzZW50IGEgTWF0Y2htYWtpbmcgUnVsZVNldCBjb250ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVJ1bGVTZXRDb250ZW50IHtcbiAgLyoqXG4gICAqIFJ1bGVTZXQgYm9keSBjb250ZW50XG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IElSdWxlU2V0Qm9keTtcblxuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIG1hdGNobWFraW5nIHJ1bGVTZXQgaXMgaW5pdGlhbGl6ZWQgdG8gYWxsb3cgdGhpcyBvYmplY3QgdG8gYmluZFxuICAgKiB0byB0aGUgc3RhY2sgYW5kIGFkZCByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSBfc2NvcGUgVGhlIGJpbmRpbmcgc2NvcGUuXG4gICAqL1xuICBiaW5kKF9zY29wZTogQ29uc3RydWN0KTogUnVsZVNldEJvZHlDb25maWc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgbWF0Y2htYWtpbmcgcnVsZVNldCBjb250ZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVsZVNldENvbnRlbnRQcm9wcyB7XG4gIC8qKlxuICAgKiBSdWxlU2V0IGJvZHkgY29udGVudFxuICAgKlxuICAgKiBAZGVmYXVsdCB1c2UgYSBkZWZhdWx0IGVtcHR5IFJ1bGVTZXQgYm9keVxuICAgKi9cbiAgcmVhZG9ubHkgY29udGVudD86IElSdWxlU2V0Qm9keTtcbn1cblxuLyoqXG4gKiBUaGUgcnVsZSBzZXQgZGV0ZXJtaW5lcyB0aGUgdHdvIGtleSBlbGVtZW50cyBvZiBhIG1hdGNoOiB5b3VyIGdhbWUncyB0ZWFtIHN0cnVjdHVyZSBhbmQgc2l6ZSwgYW5kIGhvdyB0byBncm91cCBwbGF5ZXJzIHRvZ2V0aGVyIGZvciB0aGUgYmVzdCBwb3NzaWJsZSBtYXRjaC5cbiAqXG4gKiBGb3IgZXhhbXBsZSwgYSBydWxlIHNldCBtaWdodCBkZXNjcmliZSBhIG1hdGNoIGxpa2UgdGhpczpcbiAqIC0gQ3JlYXRlIGEgbWF0Y2ggd2l0aCB0d28gdGVhbXMgb2YgZml2ZSBwbGF5ZXJzIGVhY2gsIG9uZSB0ZWFtIGlzIHRoZSBkZWZlbmRlcnMgYW5kIHRoZSBvdGhlciB0ZWFtIHRoZSBpbnZhZGVycy5cbiAqIC0gQSB0ZWFtIGNhbiBoYXZlIG5vdmljZSBhbmQgZXhwZXJpZW5jZWQgcGxheWVycywgYnV0IHRoZSBhdmVyYWdlIHNraWxsIG9mIHRoZSB0d28gdGVhbXMgbXVzdCBiZSB3aXRoaW4gMTAgcG9pbnRzIG9mIGVhY2ggb3RoZXIuXG4gKiAtIElmIG5vIG1hdGNoIGlzIG1hZGUgYWZ0ZXIgMzAgc2Vjb25kcywgZ3JhZHVhbGx5IHJlbGF4IHRoZSBza2lsbCByZXF1aXJlbWVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBSdWxlU2V0Q29udGVudCBpbXBsZW1lbnRzIElSdWxlU2V0Q29udGVudCB7XG4gIC8qKlxuICAgKiBNYXRjaG1ha2luZyBydWxlU2V0IGJvZHkgZnJvbSBhIGZpbGVcbiAgICogQHJldHVybnMgYFJ1bGVTZXRDb250ZW50QmFzZWAgYmFzZWQgb24gSlNPTiBmaWxlIGNvbnRlbnQuXG4gICAqIEBwYXJhbSBwYXRoIFRoZSBwYXRoIHRvIHRoZSBydWxlU2V0IGJvZHkgZmlsZVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tSnNvbkZpbGUocGF0aDogc3RyaW5nKTogSVJ1bGVTZXRDb250ZW50IHtcbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMocGF0aCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgUnVsZVNldCBwYXRoIGRvZXMgbm90IGV4aXN0LCBwbGVhc2UgdmVyaWZ5IGl0LCBhY3R1YWwgJHtwYXRofWApO1xuICAgIH1cblxuICAgIGlmICghZnMubHN0YXRTeW5jKHBhdGgpLmlzRmlsZSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJ1bGVTZXQgcGF0aCBpcyBub3QgbGluayB0byBhIHNpbmdsZSBmaWxlLCBwbGVhc2UgdmVyaWZ5IHlvdXIgcGF0aCwgYWN0dWFsICR7cGF0aH1gKTtcbiAgICB9XG4gICAgY29uc3QgZmlsZSA9IGZzLnJlYWRGaWxlU3luYyhwYXRoKTtcblxuICAgIHJldHVybiB0aGlzLmZyb21JbmxpbmUoZmlsZS50b1N0cmluZygpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmxpbmUgYm9keSBmb3IgTWF0Y2htYWtpbmcgcnVsZVNldFxuICAgKiBAcmV0dXJucyBgUnVsZVNldENvbnRlbnRgIHdpdGggaW5saW5lIGNvZGUuXG4gICAqIEBwYXJhbSBib2R5IFRoZSBhY3R1YWwgcnVsZVNldCBib2R5IChtYXhpbXVtIDY1NTM1IGNoYXJhY3RlcnMpXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21JbmxpbmUoYm9keTogc3RyaW5nKTogSVJ1bGVTZXRDb250ZW50IHtcbiAgICBpZiAoYm9keSAmJiBib2R5Lmxlbmd0aCA+IDY1NTM1KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJ1bGVTZXQgYm9keSBjYW5ub3QgZXhjZWVkIDY1NTM1IGNoYXJhY3RlcnMsIGFjdHVhbCAke2JvZHkubGVuZ3RofWApO1xuICAgIH1cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIG5ldyBSdWxlU2V0Q29udGVudCh7XG4gICAgICAgIGNvbnRlbnQ6IEpTT04ucGFyc2UoYm9keSksXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignUnVsZVNldCBib2R5IGhhcyBhbiBpbnZhbGlkIEpzb24gZm9ybWF0Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJ1bGVTZXQgYm9keSBjb250ZW50XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGVudDogSVJ1bGVTZXRCb2R5O1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBSdWxlU2V0Q29udGVudFByb3BzKSB7XG4gICAgdGhpcy5jb250ZW50ID0gcHJvcHMuY29udGVudCB8fCB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgbWF0Y2htYWtpbmcgcnVsZVNldCBpcyBpbml0aWFsaXplZCB0byBhbGxvdyB0aGlzIG9iamVjdCB0byBiaW5kXG4gICAqIHRvIHRoZSBzdGFjayBhbmQgYWRkIHJlc291cmNlcy5cbiAgICpcbiAgICogQHBhcmFtIF9zY29wZSBUaGUgYmluZGluZyBzY29wZS5cbiAgICovXG4gIHB1YmxpYyBiaW5kKF9zY29wZTogQ29uc3RydWN0KTogUnVsZVNldEJvZHlDb25maWcge1xuICAgIHJldHVybiB7XG4gICAgICBydWxlU2V0Qm9keTogSlNPTi5zdHJpbmdpZnkodGhpcy5jb250ZW50KSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -30,7 +30,7 @@ class MatchmakingRuleSetBase extends cdk.Resource {
|
|
|
30
30
|
}
|
|
31
31
|
exports.MatchmakingRuleSetBase = MatchmakingRuleSetBase;
|
|
32
32
|
_a = JSII_RTTI_SYMBOL_1;
|
|
33
|
-
MatchmakingRuleSetBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSetBase", version: "2.
|
|
33
|
+
MatchmakingRuleSetBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSetBase", version: "2.127.0-alpha.0" };
|
|
34
34
|
/**
|
|
35
35
|
* Creates a new rule set for FlexMatch matchmaking.
|
|
36
36
|
*
|
|
@@ -135,5 +135,5 @@ class MatchmakingRuleSet extends MatchmakingRuleSetBase {
|
|
|
135
135
|
}
|
|
136
136
|
exports.MatchmakingRuleSet = MatchmakingRuleSet;
|
|
137
137
|
_b = JSII_RTTI_SYMBOL_1;
|
|
138
|
-
MatchmakingRuleSet[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSet", version: "2.
|
|
138
|
+
MatchmakingRuleSet[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.MatchmakingRuleSet", version: "2.127.0-alpha.0" };
|
|
139
139
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0Y2htYWtpbmctcnVsZXNldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIm1hdGNobWFraW5nLXJ1bGVzZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseURBQXlEO0FBQ3pELHdDQUF3QztBQUV4QywyREFBaUU7QUFtRmpFOztHQUVHO0FBQ0gsTUFBc0Isc0JBQXVCLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFXeEQsTUFBTSxDQUFDLFVBQWtCLEVBQUUsS0FBZ0M7UUFDaEUsT0FBTyxJQUFJLFVBQVUsQ0FBQyxNQUFNLENBQUM7WUFDM0IsU0FBUyxFQUFFLGNBQWM7WUFDekIsVUFBVSxFQUFFLFVBQVU7WUFDdEIsYUFBYSxFQUFFO2dCQUNiLHNCQUFzQixFQUFFLElBQUksQ0FBQyxzQkFBc0I7YUFDcEQ7WUFDRCxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ25CO0lBRU0sMkJBQTJCLENBQUMsS0FBZ0M7UUFDakUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQ3BEO0lBQ00sMkJBQTJCLENBQUMsS0FBZ0M7UUFDakUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxDQUFDO0tBQ3BEOztBQTNCSCx3REE0QkM7OztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsc0JBQXNCO0lBQzVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLDBCQUEwQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLHNCQUE4QjtRQUM1RixPQUFPLElBQUksQ0FBQyxnQ0FBZ0MsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDO0tBQ3JGO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMseUJBQXlCLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUs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SCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxRSxJQUFJLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDMUUsT0FBTyxFQUFFLFVBQVU7WUFDbkIsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDL0IsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsbUJBQW1CO1NBQzdDLENBQUMsQ0FBQztLQUNKOztBQXRGSCxnREF1RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjbG91ZHdhdGNoIGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2ZuTWF0Y2htYWtpbmdSdWxlU2V0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcbmltcG9ydCB7IFJ1bGVTZXRDb250ZW50IH0gZnJvbSAnLi9tYXRjaG1ha2luZy1ydWxlc2V0LWJvZHknO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBHYW1lbGlmdCBtYXRjaG1ha2luZyBydWxlc2V0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSU1hdGNobWFraW5nUnVsZVNldCBleHRlbmRzIGNkay5JUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIHVuaXF1ZSBuYW1lIG9mIHRoZSBydWxlU2V0LlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBtYXRjaG1ha2luZ1J1bGVTZXROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIHJ1bGVTZXQuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IG1hdGNobWFraW5nUnVsZVNldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGdpdmVuIG5hbWVkIG1ldHJpYyBmb3IgdGhpcyBtYXRjaG1ha2luZyBydWxlU2V0LlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogUnVsZSBldmFsdWF0aW9ucyBkdXJpbmcgdGhlIG1hdGNobWFraW5nIHByb2Nlc3MgdGhhdCBwYXNzZWQgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKlxuICAgKiBUaGlzIG1ldHJpYyBpcyBsaW1pdGVkIHRvIHRoZSB0b3AgNTAgcnVsZXMuXG4gICAqL1xuICBtZXRyaWNSdWxlRXZhbHVhdGlvbnNQYXNzZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogUnVsZSBldmFsdWF0aW9ucyBkdXJpbmcgbWF0Y2htYWtpbmcgdGhhdCBmYWlsZWQgc2luY2UgdGhlIGxhc3QgcmVwb3J0LlxuICAgKlxuICAgKiBUaGlzIG1ldHJpYyBpcyBsaW1pdGVkIHRvIHRoZSB0b3AgNTAgcnVsZXMuXG4gICAqL1xuICBtZXRyaWNSdWxlRXZhbHVhdGlvbnNGYWlsZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBtYXRjaG1ha2luZyBydWxlU2V0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWF0Y2htYWtpbmdSdWxlU2V0UHJvcHMge1xuICAvKipcbiAgICogQSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIG1hdGNobWFraW5nIHJ1bGUgc2V0LlxuICAgKiBBIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gaWRlbnRpZmllcyB0aGUgcnVsZSBzZXQgaXQgdXNlcyBieSB0aGlzIG5hbWUgdmFsdWUuXG4gICAqXG4gICAqIE5vdGU6IHRoZSBydWxlIHNldCBuYW1lIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBvcHRpb25hbCBuYW1lIGZpZWxkIGluIHRoZSBydWxlIHNldCBib2R5XG4gICAqL1xuICByZWFkb25seSBtYXRjaG1ha2luZ1J1bGVTZXROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgY29sbGVjdGlvbiBvZiBtYXRjaG1ha2luZyBydWxlcy5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IFJ1bGVTZXRDb250ZW50O1xufVxuXG4vKipcbiAqIEEgZnVsbCBzcGVjaWZpY2F0aW9uIG9mIGEgbWF0Y2htYWtpbmcgcnVsZVNldCB0aGF0IGNhbiBiZSB1c2VkIHRvIGltcG9ydCBpdCBmbHVlbnRseSBpbnRvIHRoZSBDREsgYXBwbGljYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWF0Y2htYWtpbmdSdWxlU2V0QXR0cmlidXRlcyB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBtYXRjaG1ha2luZyBydWxlU2V0XG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgbWF0Y2htYWtpbmdSdWxlU2V0QXJuYCBhbmQgYG1hdGNobWFraW5nUnVsZVNldE5hbWVgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgbWF0Y2htYWtpbmdSdWxlU2V0TmFtZWAuXG4gICAqL1xuICByZWFkb25seSBtYXRjaG1ha2luZ1J1bGVTZXRBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB1bmlxdWUgbmFtZSBvZiB0aGUgbWF0Y2htYWtpbmcgcnVsZVNldFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYHJ1bGVTZXROYW1lYCBhbmQgYG1hdGNobWFraW5nUnVsZVNldEFybmAgIG11c3QgYmUgcHJvdmlkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgbWF0Y2htYWtpbmdSdWxlU2V0QXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IG1hdGNobWFraW5nUnVsZVNldE5hbWU/OiBzdHJpbmc7XG5cbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBuZXcgYW5kIGltcG9ydGVkIEdhbWVMaWZ0IG1hdGNobWFraW5nIHJ1bGVTZXQuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBNYXRjaG1ha2luZ1J1bGVTZXRCYXNlIGV4dGVuZHMgY2RrLlJlc291cmNlIGltcGxlbWVudHMgSU1hdGNobWFraW5nUnVsZVNldCB7XG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIG5hbWUgb2YgdGhlIHJ1bGVTZXQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgbWF0Y2htYWtpbmdSdWxlU2V0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBydWxlU2V0LlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IG1hdGNobWFraW5nUnVsZVNldEFybjogc3RyaW5nO1xuXG4gIHB1YmxpYyBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIG5hbWVzcGFjZTogJ0FXUy9HYW1lTGlmdCcsXG4gICAgICBtZXRyaWNOYW1lOiBtZXRyaWNOYW1lLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBNYXRjaG1ha2luZ1J1bGVTZXROYW1lOiB0aGlzLm1hdGNobWFraW5nUnVsZVNldE5hbWUsXG4gICAgICB9LFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljUnVsZUV2YWx1YXRpb25zUGFzc2VkKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLm1ldHJpYygnUnVsZUV2YWx1YXRpb25zUGFzc2VkJywgcHJvcHMpO1xuICB9XG4gIHB1YmxpYyBtZXRyaWNSdWxlRXZhbHVhdGlvbnNGYWlsZWQocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMubWV0cmljKCdSdWxlRXZhbHVhdGlvbnNGYWlsZWQnLCBwcm9wcyk7XG4gIH1cbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgbmV3IHJ1bGUgc2V0IGZvciBGbGV4TWF0Y2ggbWF0Y2htYWtpbmcuXG4gKlxuICogVGhlIHJ1bGUgc2V0IGRldGVybWluZXMgdGhlIHR3byBrZXkgZWxlbWVudHMgb2YgYSBtYXRjaDogeW91ciBnYW1lJ3MgdGVhbSBzdHJ1Y3R1cmUgYW5kIHNpemUsIGFuZCBob3cgdG8gZ3JvdXAgcGxheWVycyB0b2dldGhlciBmb3IgdGhlIGJlc3QgcG9zc2libGUgbWF0Y2guXG4gKlxuICogRm9yIGV4YW1wbGUsIGEgcnVsZSBzZXQgbWlnaHQgZGVzY3JpYmUgYSBtYXRjaCBsaWtlIHRoaXM6XG4gKiAgLSBDcmVhdGUgYSBtYXRjaCB3aXRoIHR3byB0ZWFtcyBvZiBmaXZlIHBsYXllcnMgZWFjaCwgb25lIHRlYW0gaXMgdGhlIGRlZmVuZGVycyBhbmQgdGhlIG90aGVyIHRlYW0gdGhlIGludmFkZXJzLlxuICogIC0gQSB0ZWFtIGNhbiBoYXZlIG5vdmljZSBhbmQgZXhwZXJpZW5jZWQgcGxheWVycywgYnV0IHRoZSBhdmVyYWdlIHNraWxsIG9mIHRoZSB0d28gdGVhbXMgbXVzdCBiZSB3aXRoaW4gMTAgcG9pbnRzIG9mIGVhY2ggb3RoZXIuXG4gKiAgLSBJZiBubyBtYXRjaCBpcyBtYWRlIGFmdGVyIDMwIHNlY29uZHMsIGdyYWR1YWxseSByZWxheCB0aGUgc2tpbGwgcmVxdWlyZW1lbnRzLlxuICpcbiAqIFJ1bGUgc2V0cyBtdXN0IGJlIGRlZmluZWQgaW4gdGhlIHNhbWUgUmVnaW9uIGFzIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIHRoZXkgYXJlIHVzZWQgd2l0aC5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZmxleG1hdGNoZ3VpZGUvbWF0Y2gtcnVsZXNldHMuaHRtbFxuICpcbiAqIEByZXNvdXJjZSBBV1M6OkdhbWVMaWZ0OjpNYXRjaG1ha2luZ1J1bGVTZXRcbiAqL1xuZXhwb3J0IGNsYXNzIE1hdGNobWFraW5nUnVsZVNldCBleHRlbmRzIE1hdGNobWFraW5nUnVsZVNldEJhc2Uge1xuICAvKipcbiAgICogSW1wb3J0IGEgcnVsZVNldCBpbnRvIENESyB1c2luZyBpdHMgbmFtZVxuICAgKi9cbiAgc3RhdGljIGZyb21NYXRjaG1ha2luZ1J1bGVTZXROYW1lKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIG1hdGNobWFraW5nUnVsZVNldE5hbWU6IHN0cmluZyk6IElNYXRjaG1ha2luZ1J1bGVTZXQge1xuICAgIHJldHVybiB0aGlzLmZyb21NYXRjaG1ha2luZ1J1bGVTZXRBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBtYXRjaG1ha2luZ1J1bGVTZXROYW1lIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhIHJ1bGVTZXQgaW50byBDREsgdXNpbmcgaXRzIEFSTlxuICAgKi9cbiAgc3RhdGljIGZyb21NYXRjaG1ha2luZ1J1bGVTZXRBcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgbWF0Y2htYWtpbmdSdWxlU2V0QXJuOiBzdHJpbmcpOiBJTWF0Y2htYWtpbmdSdWxlU2V0IHtcbiAgICByZXR1cm4gdGhpcy5mcm9tTWF0Y2htYWtpbmdSdWxlU2V0QXR0cmlidXRlcyhzY29wZSwgaWQsIHsgbWF0Y2htYWtpbmdSdWxlU2V0QXJuIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBtYXRjaG1ha2luZyBydWxlU2V0IGZyb20gaXRzIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBzdGF0aWMgZnJvbU1hdGNobWFraW5nUnVsZVNldEF0dHJpYnV0ZXMoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYXR0cnM6IE1hdGNobWFraW5nUnVsZVNldEF0dHJpYnV0ZXMpOiBJTWF0Y2htYWtpbmdSdWxlU2V0IHtcbiAgICBpZiAoIWF0dHJzLm1hdGNobWFraW5nUnVsZVNldE5hbWUgJiYgIWF0dHJzLm1hdGNobWFraW5nUnVsZVNldEFybikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFaXRoZXIgbWF0Y2htYWtpbmdSdWxlU2V0TmFtZSBvciBtYXRjaG1ha2luZ1J1bGVTZXRBcm4gbXVzdCBiZSBwcm92aWRlZCBpbiBNYXRjaG1ha2luZ1J1bGVTZXRBdHRyaWJ1dGVzJyk7XG4gICAgfVxuICAgIGNvbnN0IG1hdGNobWFraW5nUnVsZVNldE5hbWUgPSBhdHRycy5tYXRjaG1ha2luZ1J1bGVTZXROYW1lID8/XG4gICAgICBjZGsuU3RhY2sub2Yoc2NvcGUpLnNwbGl0QXJuKGF0dHJzLm1hdGNobWFraW5nUnVsZVNldEFybiEsIGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSkucmVzb3VyY2VOYW1lO1xuXG4gICAgaWYgKCFtYXRjaG1ha2luZ1J1bGVTZXROYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1hdGNobWFraW5nIHJ1bGVTZXQgaWRlbnRpZmllciBmb3VuZCBpbiBBUk46ICcke2F0dHJzLm1hdGNobWFraW5nUnVsZVNldEFybn0nYCk7XG4gICAgfVxuXG4gICAgY29uc3QgbWF0Y2htYWtpbmdSdWxlU2V0QXJuID0gYXR0cnMubWF0Y2htYWtpbmdSdWxlU2V0QXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ21hdGNobWFraW5ncnVsZXNldCcsXG4gICAgICByZXNvdXJjZU5hbWU6IGF0dHJzLm1hdGNobWFraW5nUnVsZVNldE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgICBjbGFzcyBJbXBvcnQgZXh0ZW5kcyBNYXRjaG1ha2luZ1J1bGVTZXRCYXNlIHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBtYXRjaG1ha2luZ1J1bGVTZXROYW1lID0gbWF0Y2htYWtpbmdSdWxlU2V0TmFtZSE7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgbWF0Y2htYWtpbmdSdWxlU2V0QXJuID0gbWF0Y2htYWtpbmdSdWxlU2V0QXJuO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBtYXRjaG1ha2luZ1J1bGVTZXRBcm4sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB1bmlxdWUgbmFtZSBvZiB0aGUgcnVsZVNldC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYXRjaG1ha2luZ1J1bGVTZXROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIHJ1bGVTZXQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbWF0Y2htYWtpbmdSdWxlU2V0QXJuOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE1hdGNobWFraW5nUnVsZVNldFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBwaHlzaWNhbE5hbWU6IHByb3BzLm1hdGNobWFraW5nUnVsZVNldE5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAoIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMubWF0Y2htYWtpbmdSdWxlU2V0TmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5tYXRjaG1ha2luZ1J1bGVTZXROYW1lLmxlbmd0aCA+IDEyOCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFJ1bGVTZXQgbmFtZSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEyOCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5tYXRjaG1ha2luZ1J1bGVTZXROYW1lLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCEvXlthLXpBLVowLTktXFwuXSskLy50ZXN0KHByb3BzLm1hdGNobWFraW5nUnVsZVNldE5hbWUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgUnVsZVNldCBuYW1lICR7cHJvcHMubWF0Y2htYWtpbmdSdWxlU2V0TmFtZX0gY2FuIGNvbnRhaW4gb25seSBsZXR0ZXJzLCBudW1iZXJzLCBoeXBoZW5zLCBiYWNrIHNsYXNoIG9yIGRvdCB3aXRoIG5vIHNwYWNlcy5gKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgY29udGVudCA9IHByb3BzLmNvbnRlbnQuYmluZCh0aGlzKTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbk1hdGNobWFraW5nUnVsZVNldCh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBuYW1lOiBwcm9wcy5tYXRjaG1ha2luZ1J1bGVTZXROYW1lLFxuICAgICAgcnVsZVNldEJvZHk6IGNvbnRlbnQucnVsZVNldEJvZHksXG4gICAgfSk7XG5cbiAgICB0aGlzLm1hdGNobWFraW5nUnVsZVNldE5hbWUgPSB0aGlzLmdldFJlc291cmNlTmFtZUF0dHJpYnV0ZShyZXNvdXJjZS5yZWYpO1xuICAgIHRoaXMubWF0Y2htYWtpbmdSdWxlU2V0QXJuID0gdGhpcy5nZXRSZXNvdXJjZUFybkF0dHJpYnV0ZShyZXNvdXJjZS5hdHRyQXJuLCB7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdtYXRjaG1ha2luZ3J1bGVzZXQnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -154,5 +154,5 @@ class QueuedMatchmakingConfiguration extends matchmaking_configuration_1.Matchma
|
|
|
154
154
|
}
|
|
155
155
|
exports.QueuedMatchmakingConfiguration = QueuedMatchmakingConfiguration;
|
|
156
156
|
_a = JSII_RTTI_SYMBOL_1;
|
|
157
|
-
QueuedMatchmakingConfiguration[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.QueuedMatchmakingConfiguration", version: "2.
|
|
157
|
+
QueuedMatchmakingConfiguration[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.QueuedMatchmakingConfiguration", version: "2.127.0-alpha.0" };
|
|
158
158
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVldWVkLW1hdGNobWFraW5nLWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJxdWV1ZWQtbWF0Y2htYWtpbmctY29uZmlndXJhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwyQ0FBMkM7QUFDM0MsMkNBQTJDO0FBQzNDLHdDQUF3QztBQUd4QyxxREFBcUQ7QUFDckQsMkVBQW1KO0FBcURuSjs7Ozs7Ozs7R0FRRztBQUNILE1BQWEsOEJBQStCLFNBQVEsd0RBQTRCO0lBQzlFOztPQUVHO0lBQ0gsTUFBTSxDQUFDLHNDQUFzQyxDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLDRCQUFvQztRQUM5RyxPQUFPLElBQUksQ0FBQyxzQ0FBc0MsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsNEJBQTRCLEVBQUUsNEJBQTRCLEVBQUUsQ0FBQyxDQUFDO0tBQy9IO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMscUNBQXFDLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsMkJBQW1DO1FBQzVHLE9BQU8sSUFBSSxDQUFDLHNDQUFzQyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRSwyQkFBMkIsRUFBRSwyQkFBMkIsRUFBRSxDQUFDLENBQUM7S0FDN0g7SUFzQkQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEwQztRQUNsRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsNEJBQTRCO1NBQ2pELENBQUMsQ0FBQztRQVJMOztXQUVHO1FBQ2Msc0JBQWlCLEdBQXdCLEVBQUUsQ0FBQzs7Ozs7OytDQWpDbEQsOEJBQThCOzs7O1FBd0N2QyxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxFQUFFLENBQUM7WUFDdEcsSUFBSSxLQUFLLENBQUMs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QUMsRUFBRSxDQUFDO1lBQy9ELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFbkQsU0FBUyxpQkFBaUIsQ0FBQyxZQUEwQjtZQUNuRCxPQUFPO2dCQUNMLEdBQUcsRUFBRSxZQUFZLENBQUMsR0FBRztnQkFDckIsS0FBSyxFQUFFLFlBQVksQ0FBQyxLQUFLO2FBQzFCLENBQUM7UUFDSixDQUFDO0tBQ0Y7O0FBdEpILHdFQXVKQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGlhbSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCAqIGFzIHNucyBmcm9tICdhd3MtY2RrLWxpYi9hd3Mtc25zJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgSUdhbWVTZXNzaW9uUXVldWUgfSBmcm9tICcuL2dhbWUtc2Vzc2lvbi1xdWV1ZSc7XG5pbXBvcnQgKiBhcyBnYW1lbGlmdCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZ2FtZWxpZnQnO1xuaW1wb3J0IHsgTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uUHJvcHMsIEdhbWVQcm9wZXJ0eSwgTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQmFzZSwgSU1hdGNobWFraW5nQ29uZmlndXJhdGlvbiB9IGZyb20gJy4vbWF0Y2htYWtpbmctY29uZmlndXJhdGlvbic7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgcXVldWVkIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBRdWV1ZWRNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Qcm9wcyBleHRlbmRzIE1hdGNobWFraW5nQ29uZmlndXJhdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgcGxheWVyIHNsb3RzIGluIGEgbWF0Y2ggdG8ga2VlcCBvcGVuIGZvciBmdXR1cmUgcGxheWVycy5cbiAgICogRm9yIGV4YW1wbGUsIGlmIHRoZSBjb25maWd1cmF0aW9uJ3MgcnVsZSBzZXQgc3BlY2lmaWVzIGEgbWF0Y2ggZm9yIGEgc2luZ2xlIDEyLXBlcnNvbiB0ZWFtLCBhbmQgdGhlIGFkZGl0aW9uYWwgcGxheWVyIGNvdW50IGlzIHNldCB0byAyLCBvbmx5IDEwIHBsYXllcnMgYXJlIHNlbGVjdGVkIGZvciB0aGUgbWF0Y2guXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGFkZGl0aW9uYWwgcGxheWVyIHNsb3RzXG4gICAqL1xuICByZWFkb25seSBhZGRpdGlvbmFsUGxheWVyQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtZXRob2QgdXNlZCB0byBiYWNrZmlsbCBnYW1lIHNlc3Npb25zIHRoYXQgYXJlIGNyZWF0ZWQgd2l0aCB0aGlzIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24uXG4gICAqIC0gQ2hvb3NlIG1hbnVhbCB3aGVuIHlvdXIgZ2FtZSBtYW5hZ2VzIGJhY2tmaWxsIHJlcXVlc3RzIG1hbnVhbGx5IG9yIGRvZXMgbm90IHVzZSB0aGUgbWF0Y2ggYmFja2ZpbGwgZmVhdHVyZS5cbiAgICogLSBPdGhlcndpc2UgYmFja2ZpbGwgaXMgc2V0dGxlZCB0byBhdXRvbWF0aWMgdG8gaGF2ZSBHYW1lTGlmdCBjcmVhdGUgYSBgU3RhcnRNYXRjaEJhY2tmaWxsYCByZXF1ZXN0IHdoZW5ldmVyIGEgZ2FtZSBzZXNzaW9uIGhhcyBvbmUgb3IgbW9yZSBvcGVuIHNsb3RzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZmxleG1hdGNoZ3VpZGUvbWF0Y2gtYmFja2ZpbGwuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCBhdXRvbWF0aWMgYmFja2ZpbGwgbW9kZVxuICAgKi9cbiAgcmVhZG9ubHkgbWFudWFsQmFja2ZpbGxNb2RlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQSBzZXQgb2YgY3VzdG9tIHByb3BlcnRpZXMgZm9yIGEgZ2FtZSBzZXNzaW9uLCBmb3JtYXR0ZWQgYXMga2V5LXZhbHVlIHBhaXJzLlxuICAgKiBUaGVzZSBwcm9wZXJ0aWVzIGFyZSBwYXNzZWQgdG8gYSBnYW1lIHNlcnZlciBwcm9jZXNzIHdpdGggYSByZXF1ZXN0IHRvIHN0YXJ0IGEgbmV3IGdhbWUgc2Vzc2lvbi5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2dhbWVsaWZ0LXNkay1zZXJ2ZXItYXBpLmh0bWwjZ2FtZWxpZnQtc2RrLXNlcnZlci1zdGFydHNlc3Npb25cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gYWRkaXRpb25hbCBnYW1lIHByb3BlcnRpZXNcbiAgICovXG4gIHJlYWRvbmx5IGdhbWVQcm9wZXJ0aWVzPzogR2FtZVByb3BlcnR5W107XG5cbiAgLyoqXG4gICAqIEEgc2V0IG9mIGN1c3RvbSBnYW1lIHNlc3Npb24gcHJvcGVydGllcywgZm9ybWF0dGVkIGFzIGEgc2luZ2xlIHN0cmluZyB2YWx1ZS5cbiAgICogVGhpcyBkYXRhIGlzIHBhc3NlZCB0byBhIGdhbWUgc2VydmVyIHByb2Nlc3Mgd2l0aCBhIHJlcXVlc3QgdG8gc3RhcnQgYSBuZXcgZ2FtZSBzZXNzaW9uLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9nYW1lbGlmdC9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvZ2FtZWxpZnQtc2RrLXNlcnZlci1hcGkuaHRtbCNnYW1lbGlmdC1zZGstc2VydmVyLXN0YXJ0c2Vzc2lvblxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBhZGRpdGlvbmFsIGdhbWUgc2Vzc2lvbiBkYXRhXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvbkRhdGE/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFF1ZXVlcyBhcmUgdXNlZCB0byBzdGFydCBuZXcgR2FtZUxpZnQtaG9zdGVkIGdhbWUgc2Vzc2lvbnMgZm9yIG1hdGNoZXMgdGhhdCBhcmUgY3JlYXRlZCB3aXRoIHRoaXMgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogUXVldWVzIGNhbiBiZSBsb2NhdGVkIGluIGFueSBSZWdpb24uXG4gICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlczogSUdhbWVTZXNzaW9uUXVldWVbXTtcbn1cblxuLyoqXG4gKiBBIEZsZXhNYXRjaCBtYXRjaG1ha2VyIHByb2Nlc3MgZG9lcyB0aGUgd29yayBvZiBidWlsZGluZyBhIGdhbWUgbWF0Y2guXG4gKiBJdCBtYW5hZ2VzIHRoZSBwb29sIG9mIG1hdGNobWFraW5nIHJlcXVlc3RzIHJlY2VpdmVkLCBmb3JtcyB0ZWFtcyBmb3IgYSBtYXRjaCwgcHJvY2Vzc2VzIGFuZCBzZWxlY3RzIHBsYXllcnMgdG8gZmluZCB0aGUgYmVzdCBwb3NzaWJsZSBwbGF5ZXIgZ3JvdXBzLCBhbmQgaW5pdGlhdGVzIHRoZSBwcm9jZXNzIG9mIHBsYWNpbmcgYW5kIHN0YXJ0aW5nIGEgZ2FtZSBzZXNzaW9uIGZvciB0aGUgbWF0Y2guXG4gKiBUaGlzIHRvcGljIGRlc2NyaWJlcyB0aGUga2V5IGFzcGVjdHMgb2YgYSBtYXRjaG1ha2VyIGFuZCBob3cgdG8gY29uZmlndXJlIG9uZSBjdXN0b21pemVkIGZvciB5b3VyIGdhbWUuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2ZsZXhtYXRjaGd1aWRlL21hdGNoLWNvbmZpZ3VyYXRpb24uaHRtbFxuICpcbiAqIEByZXNvdXJjZSBBV1M6OkdhbWVMaWZ0OjpNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGNsYXNzIFF1ZXVlZE1hdGNobWFraW5nQ29uZmlndXJhdGlvbiBleHRlbmRzIE1hdGNobWFraW5nQ29uZmlndXJhdGlvbkJhc2Uge1xuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gZnJvbSBpdHMgbmFtZS5cbiAgICovXG4gIHN0YXRpYyBmcm9tUXVldWVkTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lOiBzdHJpbmcpOiBJTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZTogbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiBmcm9tIGl0cyBBUk4uXG4gICAqL1xuICBzdGF0aWMgZnJvbVF1ZXVlZE1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm46IHN0cmluZyk6IElNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb24ge1xuICAgIHJldHVybiB0aGlzLmZyb21NYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25BdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm46IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbkFybiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIG1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBub3RpZmljYXRpb24gdGFyZ2V0IGZvciBtYXRjaG1ha2luZyBldmVudHNcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBub3RpZmljYXRpb25UYXJnZXQ/OiBzbnMuSVRvcGljO1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgZ2FtZSBzZXNzaW9uIHF1ZXVlIGRlc3RpbmF0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSBnYW1lU2Vzc2lvblF1ZXVlczogSUdhbWVTZXNzaW9uUXVldWVbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBRdWV1ZWRNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUgJiYgIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLmxlbmd0aCA+IDEyOCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gbmFtZSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEyOCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCEvXlthLXpBLVowLTktXFwuXSskLy50ZXN0KHByb3BzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgTWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiBuYW1lICR7cHJvcHMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZX0gY2FuIGNvbnRhaW4gb25seSBsZXR0ZXJzLCBudW1iZXJzLCBoeXBoZW5zLCBiYWNrIHNsYXNoIG9yIGRvdCB3aXRoIG5vIHNwYWNlcy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZGVzY3JpcHRpb24pKSB7XG4gICAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24ubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gZGVzY3JpcHRpb24gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmRlc2NyaXB0aW9uLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZ2FtZVByb3BlcnRpZXMgJiYgcHJvcHMuZ2FtZVByb3BlcnRpZXMubGVuZ3RoID4gMTYpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlIG1heGltdW0gbnVtYmVyIG9mIGdhbWUgcHJvcGVydGllcyBhbGxvd2VkIGluIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIGNhbm5vdCBiZSBoaWdoZXIgdGhhbiAxNiwgZ2l2ZW4gJHtwcm9wcy5nYW1lUHJvcGVydGllcy5sZW5ndGh9YCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmdhbWVTZXNzaW9uRGF0YSAmJiBwcm9wcy5nYW1lU2Vzc2lvbkRhdGEubGVuZ3RoID4gNDA5Nikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIGdhbWUgc2Vzc2lvbiBkYXRhIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gNDA5NiBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5nYW1lU2Vzc2lvbkRhdGEubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5jdXN0b21FdmVudERhdGEgJiYgcHJvcHMuY3VzdG9tRXZlbnREYXRhLmxlbmd0aCA+IDI1Nikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIGN1c3RvbSBldmVudCBkYXRhIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMjU2IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmN1c3RvbUV2ZW50RGF0YS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmFjY2VwdGFuY2VUaW1lb3V0ICYmIHByb3BzLmFjY2VwdGFuY2VUaW1lb3V0LnRvU2Vjb25kcygpID4gNjAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gYWNjZXB0YW5jZSB0aW1lb3V0IGNhbiBub3QgZXhjZWVkIDYwMCBzZWNvbmRzLCBhY3R1YWwgJHtwcm9wcy5hY2NlcHRhbmNlVGltZW91dC50b1NlY29uZHMoKX0gc2Vjb25kcy5gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMucmVxdWVzdFRpbWVvdXQgJiYgcHJvcHMucmVxdWVzdFRpbWVvdXQudG9TZWNvbmRzKCkgPiA0MzIwMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIHJlcXVlc3QgdGltZW91dCBjYW4gbm90IGV4Y2VlZCA0MzIwMCBzZWNvbmRzLCBhY3R1YWwgJHtwcm9wcy5yZXF1ZXN0VGltZW91dC50b1NlY29uZHMoKX0gc2Vjb25kcy5gKTtcbiAgICB9XG5cbiAgICAvL05vdGlmaWNhdGlvbiB0YXJnZXRcbiAgICB0aGlzLm5vdGlmaWNhdGlvblRhcmdldCA9IHByb3BzLm5vdGlmaWNhdGlvblRhcmdldDtcbiAgICBpZiAoIXRoaXMubm90aWZpY2F0aW9uVGFyZ2V0KSB7XG4gICAgICB0aGlzLm5vdGlmaWNhdGlvblRhcmdldCA9IG5ldyBzbnMuVG9waWModGhpcywgJ1RvcGljJywge30pO1xuICAgIH1cbiAgICAvLyBCZSBzdXJlIHRvIGFkZCB0aGUgcmlnaHQgVG9waWNQb2xpY3kgdG8gZW5hYmxlIGdhbWVsaWZ0IHB1Ymxpc2ggYWN0aW9uIHRvIGdpdmVuIHRvcGljXG4gICAgY29uc3QgdG9waWNQb2xpY3kgPSBuZXcgc25zLlRvcGljUG9saWN5KHRoaXMsICdUb3BpY1BvbGljeScsIHtcbiAgICAgIHRvcGljczogW3RoaXMubm90aWZpY2F0aW9uVGFyZ2V0XSxcbiAgICB9KTtcbiAgICB0b3BpY1BvbGljeS5kb2N1bWVudC5hZGRTdGF0ZW1lbnRzKG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgIGFjdGlvbnM6IFsnc25zOlB1Ymxpc2gnXSxcbiAgICAgIHByaW5jaXBhbHM6IFtuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2dhbWVsaWZ0LmFtYXpvbmF3cy5jb20nKV0sXG4gICAgICByZXNvdXJjZXM6IFt0aGlzLm5vdGlmaWNhdGlvblRhcmdldC50b3BpY0Fybl0sXG4gICAgfSkpO1xuXG4gICAgLy8gQWRkIGFsbCBxdWV1ZXNcbiAgICAocHJvcHMuZ2FtZVNlc3Npb25RdWV1ZXMgfHwgW10pLmZvckVhY2godGhpcy5hZGRHYW1lU2Vzc2lvblF1ZXVlLmJpbmQodGhpcykpO1xuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgZ2FtZWxpZnQuQ2ZuTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgYWNjZXB0YW5jZVJlcXVpcmVkOiBCb29sZWFuKHByb3BzLnJlcXVpcmVBY2NlcHRhbmNlKSxcbiAgICAgIGFjY2VwdGFuY2VUaW1lb3V0U2Vjb25kczogcHJvcHMuYWNjZXB0YW5jZVRpbWVvdXQgJiYgcHJvcHMuYWNjZXB0YW5jZVRpbWVvdXQudG9TZWNvbmRzKCksXG4gICAgICBhZGRpdGlvbmFsUGxheWVyQ291bnQ6IHByb3BzLmFkZGl0aW9uYWxQbGF5ZXJDb3VudCxcbiAgICAgIGJhY2tmaWxsTW9kZTogcHJvcHMubWFudWFsQmFja2ZpbGxNb2RlID8gJ01BTlVBTCcgOiAnQVVUT01BVElDJyxcbiAgICAgIGN1c3RvbUV2ZW50RGF0YTogcHJvcHMuY3VzdG9tRXZlbnREYXRhLFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgZmxleE1hdGNoTW9kZTogJ1dJVEhfUVVFVUUnLFxuICAgICAgZ2FtZVByb3BlcnRpZXM6IHRoaXMucGFyc2VHYW1lUHJvcGVydGllcyhwcm9wcyksXG4gICAgICBnYW1lU2Vzc2lvbkRhdGE6IHByb3BzLmdhbWVTZXNzaW9uRGF0YSxcbiAgICAgIGdhbWVTZXNzaW9uUXVldWVBcm5zOiBjZGsuTGF6eS5saXN0KHsgcHJvZHVjZTogKCkgPT4gdGhpcy5wYXJzZUdhbWVTZXNzaW9uUXVldWVzKCkgfSksXG4gICAgICBub3RpZmljYXRpb25UYXJnZXQ6IHRoaXMubm90aWZpY2F0aW9uVGFyZ2V0LnRvcGljQXJuLFxuICAgICAgcmVxdWVzdFRpbWVvdXRTZWNvbmRzOiBwcm9wcy5yZXF1ZXN0VGltZW91dCAmJiBwcm9wcy5yZXF1ZXN0VGltZW91dC50b1NlY29uZHMoKSB8fCBjZGsuRHVyYXRpb24uc2Vjb25kcygzMDApLnRvU2Vjb25kcygpLFxuICAgICAgcnVsZVNldE5hbWU6IHByb3BzLnJ1bGVTZXQubWF0Y2htYWtpbmdSdWxlU2V0TmFtZSxcbiAgICB9KTtcblxuICAgIHRoaXMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gICAgdGhpcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm4gPSBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdtYXRjaG1ha2luZ2NvbmZpZ3VyYXRpb24nLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgZ2FtZSBzZXNzaW9uIHF1ZXVlIGRlc3RpbmF0aW9uIHRvIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gZ2FtZVNlc3Npb25RdWV1ZSBBIGdhbWUgc2Vzc2lvbiBxdWV1ZVxuICAgKi9cbiAgcHVibGljIGFkZEdhbWVTZXNzaW9uUXVldWUoZ2FtZVNlc3Npb25RdWV1ZTogSUdhbWVTZXNzaW9uUXVldWUpIHtcbiAgICB0aGlzLmdhbWVTZXNzaW9uUXVldWVzLnB1c2goZ2FtZVNlc3Npb25RdWV1ZSk7XG4gIH1cblxuICBwcml2YXRlIHBhcnNlR2FtZVNlc3Npb25RdWV1ZXMoKTogc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIGlmICghdGhpcy5nYW1lU2Vzc2lvblF1ZXVlcyB8fCB0aGlzLmdhbWVTZXNzaW9uUXVldWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5nYW1lU2Vzc2lvblF1ZXVlcy5tYXAoKHF1ZXVlKSA9PiBxdWV1ZS5nYW1lU2Vzc2lvblF1ZXVlQXJuKTtcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VHYW1lUHJvcGVydGllcyhwcm9wczogUXVldWVkTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uUHJvcHMpOiBnYW1lbGlmdC5DZm5NYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb24uR2FtZVByb3BlcnR5UHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5nYW1lUHJvcGVydGllcyB8fCBwcm9wcy5nYW1lUHJvcGVydGllcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHByb3BzLmdhbWVQcm9wZXJ0aWVzLm1hcChwYXJzZUdhbWVQcm9wZXJ0eSk7XG5cbiAgICBmdW5jdGlvbiBwYXJzZUdhbWVQcm9wZXJ0eShnYW1lUHJvcGVydHk6IEdhbWVQcm9wZXJ0eSk6IGdhbWVsaWZ0LkNmbk1hdGNobWFraW5nQ29uZmlndXJhdGlvbi5HYW1lUHJvcGVydHlQcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBrZXk6IGdhbWVQcm9wZXJ0eS5rZXksXG4gICAgICAgIHZhbHVlOiBnYW1lUHJvcGVydHkudmFsdWUsXG4gICAgICB9O1xuICAgIH1cbiAgfVxufVxuIl19
|
package/lib/script.js
CHANGED
|
@@ -15,7 +15,7 @@ class ScriptBase extends cdk.Resource {
|
|
|
15
15
|
}
|
|
16
16
|
exports.ScriptBase = ScriptBase;
|
|
17
17
|
_a = JSII_RTTI_SYMBOL_1;
|
|
18
|
-
ScriptBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.ScriptBase", version: "2.
|
|
18
|
+
ScriptBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.ScriptBase", version: "2.127.0-alpha.0" };
|
|
19
19
|
/**
|
|
20
20
|
* A GameLift script, that is installed and runs on instances in an Amazon GameLift fleet. It consists of
|
|
21
21
|
* a zip file with all of the components of the realtime game server script.
|
|
@@ -119,7 +119,7 @@ class Script extends ScriptBase {
|
|
|
119
119
|
}
|
|
120
120
|
exports.Script = Script;
|
|
121
121
|
_b = JSII_RTTI_SYMBOL_1;
|
|
122
|
-
Script[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Script", version: "2.
|
|
122
|
+
Script[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Script", version: "2.127.0-alpha.0" };
|
|
123
123
|
/**
|
|
124
124
|
* Given an opaque (token) ARN, returns a CloudFormation expression that extracts the script
|
|
125
125
|
* identifier from the ARN.
|
|
@@ -102,5 +102,5 @@ class StandaloneMatchmakingConfiguration extends matchmaking_configuration_1.Mat
|
|
|
102
102
|
}
|
|
103
103
|
exports.StandaloneMatchmakingConfiguration = StandaloneMatchmakingConfiguration;
|
|
104
104
|
_a = JSII_RTTI_SYMBOL_1;
|
|
105
|
-
StandaloneMatchmakingConfiguration[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.StandaloneMatchmakingConfiguration", version: "2.
|
|
105
|
+
StandaloneMatchmakingConfiguration[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.StandaloneMatchmakingConfiguration", version: "2.127.0-alpha.0" };
|
|
106
106
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhbG9uZS1tYXRjaG1ha2luZy1jb25maWd1cmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RhbmRhbG9uZS1tYXRjaG1ha2luZy1jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDJDQUEyQztBQUMzQywyQ0FBMkM7QUFDM0Msd0NBQXdDO0FBRXhDLHFEQUFxRDtBQUNyRCwyRUFBcUk7QUFPckk7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFhLGtDQUFtQyxTQUFRLHdEQUE0QjtJQUNsRjs7T0FFRztJQUNILE1BQU0sQ0FBQywwQ0FBMEMsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSw0QkFBb0M7UUFDbEgsT0FBTyxJQUFJLENBQUMsc0NBQXNDLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLDRCQUE0QixFQUFFLENBQUMsQ0FBQztLQUNqRztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLHlDQUF5QyxDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLDJCQUFtQztRQUNoSCxPQUFPLElBQUksQ0FBQyxzQ0FBc0MsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQyxDQUFDO0tBQ2hHO0lBaUJELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBOEM7UUFDdEYsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixZQUFZLEVBQUUsS0FBSyxDQUFDLDRCQUE0QjtTQUNqRCxDQUFDLENBQUM7Ozs7OzsrQ0FqQ00sa0NBQWtDOzs7O1FBbUMzQyxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxFQUFFLENBQUM7WUFDdEcsSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDO2dCQUNwRCxNQUFNLElBQUksS0FB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QyxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsYUFBYSxFQUFFLFlBQVk7WUFDM0Isa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFFBQVE7WUFDcEQscUJBQXFCLEVBQUUsS0FBSyxDQUFDLGNBQWMsSUFBSSxLQUFLLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUN4SCxXQUFXLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxzQkFBc0I7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLDRCQUE0QixHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDaEYsSUFBSSxDQUFDLDJCQUEyQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUMvRCxPQUFPLEVBQUUsVUFBVTtZQUNuQixRQUFRLEVBQUUsMEJBQTBCO1lBQ3BDLFlBQVksRUFBRSxJQUFJLENBQUMsNEJBQTRCO1lBQy9DLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxDQUFDLG1CQUFtQjtTQUM3QyxDQUFDLENBQUM7S0FDSjs7QUFqR0gsZ0ZBa0dDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgc25zIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zbnMnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgKiBhcyBnYW1lbGlmdCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZ2FtZWxpZnQnO1xuaW1wb3J0IHsgTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uUHJvcHMsIE1hdGNobWFraW5nQ29uZmlndXJhdGlvbkJhc2UsIElNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb24gfSBmcm9tICcuL21hdGNobWFraW5nLWNvbmZpZ3VyYXRpb24nO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IHN0YW5kYWxvbmUgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YW5kYWxvbmVNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Qcm9wcyBleHRlbmRzIE1hdGNobWFraW5nQ29uZmlndXJhdGlvblByb3BzIHt9XG5cbi8qKlxuICogQSBGbGV4TWF0Y2ggbWF0Y2htYWtlciBwcm9jZXNzIGRvZXMgdGhlIHdvcmsgb2YgYnVpbGRpbmcgYSBnYW1lIG1hdGNoLlxuICogSXQgbWFuYWdlcyB0aGUgcG9vbCBvZiBtYXRjaG1ha2luZyByZXF1ZXN0cyByZWNlaXZlZCwgZm9ybXMgdGVhbXMgZm9yIGEgbWF0Y2gsIHByb2Nlc3NlcyBhbmQgc2VsZWN0cyBwbGF5ZXJzIHRvIGZpbmQgdGhlIGJlc3QgcG9zc2libGUgcGxheWVyIGdyb3VwcywgYW5kIGluaXRpYXRlcyB0aGUgcHJvY2VzcyBvZiBwbGFjaW5nIGFuZCBzdGFydGluZyBhIGdhbWUgc2Vzc2lvbiBmb3IgdGhlIG1hdGNoLlxuICogVGhpcyB0b3BpYyBkZXNjcmliZXMgdGhlIGtleSBhc3BlY3RzIG9mIGEgbWF0Y2htYWtlciBhbmQgaG93IHRvIGNvbmZpZ3VyZSBvbmUgY3VzdG9taXplZCBmb3IgeW91ciBnYW1lLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9mbGV4bWF0Y2hndWlkZS9tYXRjaC1jb25maWd1cmF0aW9uLmh0bWxcbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6TWF0Y2htYWtpbmdDb25maWd1cmF0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBTdGFuZGFsb25lTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uIGV4dGVuZHMgTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQmFzZSB7XG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiBmcm9tIGl0cyBuYW1lLlxuICAgKi9cbiAgc3RhdGljIGZyb21TdGFuZGFsb25lTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lOiBzdHJpbmcpOiBJTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiBmcm9tIGl0cyBBUk4uXG4gICAqL1xuICBzdGF0aWMgZnJvbVN0YW5kYWxvbmVNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXJuOiBzdHJpbmcpOiBJTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tTWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgbWF0Y2htYWtpbmdDb25maWd1cmF0aW9uQXJuIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBtYXRjaG1ha2luZyBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgbWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5vdGlmaWNhdGlvbiB0YXJnZXQgZm9yIG1hdGNobWFraW5nIGV2ZW50c1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG5vdGlmaWNhdGlvblRhcmdldD86IHNucy5JVG9waWM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YW5kYWxvbmVNYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgcGh5c2ljYWxOYW1lOiBwcm9wcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUgJiYgIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLmxlbmd0aCA+IDEyOCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gbmFtZSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEyOCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25OYW1lLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cblxuICAgICAgaWYgKCEvXlthLXpBLVowLTktXFwuXSskLy50ZXN0KHByb3BzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgTWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiBuYW1lICR7cHJvcHMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZX0gY2FuIGNvbnRhaW4gb25seSBsZXR0ZXJzLCBudW1iZXJzLCBoeXBoZW5zLCBiYWNrIHNsYXNoIG9yIGRvdCB3aXRoIG5vIHNwYWNlcy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24gJiYgIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZGVzY3JpcHRpb24pKSB7XG4gICAgICBpZiAocHJvcHMuZGVzY3JpcHRpb24ubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1hdGNobWFraW5nIGNvbmZpZ3VyYXRpb24gZGVzY3JpcHRpb24gY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmRlc2NyaXB0aW9uLmxlbmd0aH0gY2hhcmFjdGVycy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAocHJvcHMuY3VzdG9tRXZlbnREYXRhICYmIHByb3BzLmN1c3RvbUV2ZW50RGF0YS5sZW5ndGggPiAyNTYpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiBjdXN0b20gZXZlbnQgZGF0YSBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDI1NiBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5jdXN0b21FdmVudERhdGEubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5hY2NlcHRhbmNlVGltZW91dCAmJiBwcm9wcy5hY2NlcHRhbmNlVGltZW91dC50b1NlY29uZHMoKSA+IDYwMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNYXRjaG1ha2luZyBjb25maWd1cmF0aW9uIGFjY2VwdGFuY2UgdGltZW91dCBjYW4gbm90IGV4Y2VlZCA2MDAgc2Vjb25kcywgYWN0dWFsICR7cHJvcHMuYWNjZXB0YW5jZVRpbWVvdXQudG9TZWNvbmRzKCl9IHNlY29uZHMuYCk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnJlcXVlc3RUaW1lb3V0ICYmIHByb3BzLnJlcXVlc3RUaW1lb3V0LnRvU2Vjb25kcygpID4gNDMyMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTWF0Y2htYWtpbmcgY29uZmlndXJhdGlvbiByZXF1ZXN0IHRpbWVvdXQgY2FuIG5vdCBleGNlZWQgNDMyMDAgc2Vjb25kcywgYWN0dWFsICR7cHJvcHMucmVxdWVzdFRpbWVvdXQudG9TZWNvbmRzKCl9IHNlY29uZHMuYCk7XG4gICAgfVxuXG4gICAgLy9Ob3RpZmljYXRpb24gdGFyZ2V0XG4gICAgdGhpcy5ub3RpZmljYXRpb25UYXJnZXQgPSBwcm9wcy5ub3RpZmljYXRpb25UYXJnZXQ7XG4gICAgaWYgKCF0aGlzLm5vdGlmaWNhdGlvblRhcmdldCkge1xuICAgICAgdGhpcy5ub3RpZmljYXRpb25UYXJnZXQgPSBuZXcgc25zLlRvcGljKHRoaXMsICdUb3BpYycsIHt9KTtcbiAgICB9XG4gICAgLy8gQmUgc3VyZSB0byBhZGQgdGhlIHJpZ2h0IFRvcGljUG9saWN5IHRvIGVuYWJsZSBnYW1lbGlmdCBwdWJsaXNoIGFjdGlvbiB0byBnaXZlbiB0b3BpY1xuICAgIGNvbnN0IHRvcGljUG9saWN5ID0gbmV3IHNucy5Ub3BpY1BvbGljeSh0aGlzLCAnVG9waWNQb2xpY3knLCB7XG4gICAgICB0b3BpY3M6IFt0aGlzLm5vdGlmaWNhdGlvblRhcmdldF0sXG4gICAgfSk7XG4gICAgdG9waWNQb2xpY3kuZG9jdW1lbnQuYWRkU3RhdGVtZW50cyhuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICBhY3Rpb25zOiBbJ3NuczpQdWJsaXNoJ10sXG4gICAgICBwcmluY2lwYWxzOiBbbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdnYW1lbGlmdC5hbWF6b25hd3MuY29tJyldLFxuICAgICAgcmVzb3VyY2VzOiBbdGhpcy5ub3RpZmljYXRpb25UYXJnZXQudG9waWNBcm5dLFxuICAgIH0pKTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IGdhbWVsaWZ0LkNmbk1hdGNobWFraW5nQ29uZmlndXJhdGlvbih0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBuYW1lOiB0aGlzLnBoeXNpY2FsTmFtZSxcbiAgICAgIGFjY2VwdGFuY2VSZXF1aXJlZDogQm9vbGVhbihwcm9wcy5yZXF1aXJlQWNjZXB0YW5jZSksXG4gICAgICBhY2NlcHRhbmNlVGltZW91dFNlY29uZHM6IHByb3BzLmFjY2VwdGFuY2VUaW1lb3V0ICYmIHByb3BzLmFjY2VwdGFuY2VUaW1lb3V0LnRvU2Vjb25kcygpLFxuICAgICAgY3VzdG9tRXZlbnREYXRhOiBwcm9wcy5jdXN0b21FdmVudERhdGEsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBmbGV4TWF0Y2hNb2RlOiAnU1RBTkRBTE9ORScsXG4gICAgICBub3RpZmljYXRpb25UYXJnZXQ6IHRoaXMubm90aWZpY2F0aW9uVGFyZ2V0LnRvcGljQXJuLFxuICAgICAgcmVxdWVzdFRpbWVvdXRTZWNvbmRzOiBwcm9wcy5yZXF1ZXN0VGltZW91dCAmJiBwcm9wcy5yZXF1ZXN0VGltZW91dC50b1NlY29uZHMoKSB8fCBjZGsuRHVyYXRpb24uc2Vjb25kcygzMDApLnRvU2Vjb25kcygpLFxuICAgICAgcnVsZVNldE5hbWU6IHByb3BzLnJ1bGVTZXQubWF0Y2htYWtpbmdSdWxlU2V0TmFtZSxcbiAgICB9KTtcblxuICAgIHRoaXMubWF0Y2htYWtpbmdDb25maWd1cmF0aW9uTmFtZSA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gICAgdGhpcy5tYXRjaG1ha2luZ0NvbmZpZ3VyYXRpb25Bcm4gPSBjZGsuU3RhY2sub2Yoc2NvcGUpLmZvcm1hdEFybih7XG4gICAgICBzZXJ2aWNlOiAnZ2FtZWxpZnQnLFxuICAgICAgcmVzb3VyY2U6ICdtYXRjaG1ha2luZ2NvbmZpZ3VyYXRpb24nLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLm1hdGNobWFraW5nQ29uZmlndXJhdGlvbk5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-cdk/aws-gamelift-alpha",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.127.0-alpha.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The CDK Construct Library for AWS::GameLift",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -81,19 +81,19 @@
|
|
|
81
81
|
},
|
|
82
82
|
"license": "Apache-2.0",
|
|
83
83
|
"devDependencies": {
|
|
84
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
85
|
-
"@aws-cdk/integ-runner": "2.
|
|
86
|
-
"@aws-cdk/pkglint": "2.
|
|
87
|
-
"@types/jest": "^29.5.
|
|
84
|
+
"@aws-cdk/cdk-build-tools": "2.127.0-alpha.0",
|
|
85
|
+
"@aws-cdk/integ-runner": "2.127.0-alpha.0",
|
|
86
|
+
"@aws-cdk/pkglint": "2.127.0-alpha.0",
|
|
87
|
+
"@types/jest": "^29.5.12",
|
|
88
88
|
"jest": "^29.7.0",
|
|
89
|
-
"aws-cdk-lib": "2.
|
|
89
|
+
"aws-cdk-lib": "2.127.0",
|
|
90
90
|
"constructs": "^10.0.0",
|
|
91
|
-
"@aws-cdk/integ-tests-alpha": "2.
|
|
91
|
+
"@aws-cdk/integ-tests-alpha": "2.127.0-alpha.0"
|
|
92
92
|
},
|
|
93
93
|
"dependencies": {},
|
|
94
94
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
95
95
|
"peerDependencies": {
|
|
96
|
-
"aws-cdk-lib": "^2.
|
|
96
|
+
"aws-cdk-lib": "^2.127.0",
|
|
97
97
|
"constructs": "^10.0.0"
|
|
98
98
|
},
|
|
99
99
|
"engines": {
|