@aws-cdk/aws-gamelift-alpha 2.58.1-alpha.0 → 2.60.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 +1820 -327
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +57 -1
- package/LICENSE +1 -1
- package/NOTICE +1 -1
- package/README.md +38 -0
- 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 +1 -1
- package/lib/game-server-group.js +2 -2
- package/lib/game-session-queue.js +2 -2
- package/lib/gamelift-canned-metrics.generated.js +2 -2
- package/lib/index.d.ts +3 -0
- package/lib/index.js +4 -1
- package/lib/ingress-rule.js +2 -2
- package/lib/matchmaking-configuration.d.ts +195 -0
- package/lib/matchmaking-configuration.js +87 -0
- package/lib/matchmaking-ruleset-body.js +1 -1
- package/lib/matchmaking-ruleset.js +4 -4
- package/lib/queued-matchmaking-configuration.d.ts +94 -0
- package/lib/queued-matchmaking-configuration.js +158 -0
- package/lib/script.js +2 -2
- package/lib/standalone-matchmaking-configuration.d.ts +40 -0
- package/lib/standalone-matchmaking-configuration.js +106 -0
- package/package.json +8 -8
package/.jsii.tabl.json.gz
CHANGED
|
Binary file
|
package/.warnings.jsii.js
CHANGED
|
@@ -226,6 +226,62 @@ function _aws_cdk_aws_gamelift_alpha_BuildFleetProps(p) {
|
|
|
226
226
|
}
|
|
227
227
|
function _aws_cdk_aws_gamelift_alpha_BuildFleet(p) {
|
|
228
228
|
}
|
|
229
|
+
function _aws_cdk_aws_gamelift_alpha_GameProperty(p) {
|
|
230
|
+
}
|
|
231
|
+
function _aws_cdk_aws_gamelift_alpha_IMatchmakingConfiguration(p) {
|
|
232
|
+
}
|
|
233
|
+
function _aws_cdk_aws_gamelift_alpha_MatchmakingConfigurationAttributes(p) {
|
|
234
|
+
}
|
|
235
|
+
function _aws_cdk_aws_gamelift_alpha_MatchmakingConfigurationProps(p) {
|
|
236
|
+
if (p == null)
|
|
237
|
+
return;
|
|
238
|
+
visitedObjects.add(p);
|
|
239
|
+
try {
|
|
240
|
+
if (!visitedObjects.has(p.ruleSet))
|
|
241
|
+
_aws_cdk_aws_gamelift_alpha_IMatchmakingRuleSet(p.ruleSet);
|
|
242
|
+
}
|
|
243
|
+
finally {
|
|
244
|
+
visitedObjects.delete(p);
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
function _aws_cdk_aws_gamelift_alpha_MatchmakingConfigurationBase(p) {
|
|
248
|
+
}
|
|
249
|
+
function _aws_cdk_aws_gamelift_alpha_QueuedMatchmakingConfigurationProps(p) {
|
|
250
|
+
if (p == null)
|
|
251
|
+
return;
|
|
252
|
+
visitedObjects.add(p);
|
|
253
|
+
try {
|
|
254
|
+
if (p.gameSessionQueues != null)
|
|
255
|
+
for (const o of p.gameSessionQueues)
|
|
256
|
+
if (!visitedObjects.has(o))
|
|
257
|
+
_aws_cdk_aws_gamelift_alpha_IGameSessionQueue(o);
|
|
258
|
+
if (p.gameProperties != null)
|
|
259
|
+
for (const o of p.gameProperties)
|
|
260
|
+
if (!visitedObjects.has(o))
|
|
261
|
+
_aws_cdk_aws_gamelift_alpha_GameProperty(o);
|
|
262
|
+
if (!visitedObjects.has(p.ruleSet))
|
|
263
|
+
_aws_cdk_aws_gamelift_alpha_IMatchmakingRuleSet(p.ruleSet);
|
|
264
|
+
}
|
|
265
|
+
finally {
|
|
266
|
+
visitedObjects.delete(p);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
function _aws_cdk_aws_gamelift_alpha_QueuedMatchmakingConfiguration(p) {
|
|
270
|
+
}
|
|
271
|
+
function _aws_cdk_aws_gamelift_alpha_StandaloneMatchmakingConfigurationProps(p) {
|
|
272
|
+
if (p == null)
|
|
273
|
+
return;
|
|
274
|
+
visitedObjects.add(p);
|
|
275
|
+
try {
|
|
276
|
+
if (!visitedObjects.has(p.ruleSet))
|
|
277
|
+
_aws_cdk_aws_gamelift_alpha_IMatchmakingRuleSet(p.ruleSet);
|
|
278
|
+
}
|
|
279
|
+
finally {
|
|
280
|
+
visitedObjects.delete(p);
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
function _aws_cdk_aws_gamelift_alpha_StandaloneMatchmakingConfiguration(p) {
|
|
284
|
+
}
|
|
229
285
|
function _aws_cdk_aws_gamelift_alpha_IGameSessionQueueDestination(p) {
|
|
230
286
|
}
|
|
231
287
|
function _aws_cdk_aws_gamelift_alpha_PriorityType(p) {
|
|
@@ -350,4 +406,4 @@ class DeprecationError extends Error {
|
|
|
350
406
|
});
|
|
351
407
|
}
|
|
352
408
|
}
|
|
353
|
-
module.exports = { print, getPropertyDescriptor, DeprecationError, _aws_cdk_aws_gamelift_alpha_IAlias, _aws_cdk_aws_gamelift_alpha_AliasOptions, _aws_cdk_aws_gamelift_alpha_AliasAttributes, _aws_cdk_aws_gamelift_alpha_AliasProps, _aws_cdk_aws_gamelift_alpha_AliasBase, _aws_cdk_aws_gamelift_alpha_Alias, _aws_cdk_aws_gamelift_alpha_Content, _aws_cdk_aws_gamelift_alpha_ContentConfig, _aws_cdk_aws_gamelift_alpha_S3Content, _aws_cdk_aws_gamelift_alpha_AssetContent, _aws_cdk_aws_gamelift_alpha_IBuild, _aws_cdk_aws_gamelift_alpha_BuildBase, _aws_cdk_aws_gamelift_alpha_OperatingSystem, _aws_cdk_aws_gamelift_alpha_BuildAttributes, _aws_cdk_aws_gamelift_alpha_BuildProps, _aws_cdk_aws_gamelift_alpha_Build, _aws_cdk_aws_gamelift_alpha_IScript, _aws_cdk_aws_gamelift_alpha_ScriptBase, _aws_cdk_aws_gamelift_alpha_ScriptAttributes, _aws_cdk_aws_gamelift_alpha_ScriptProps, _aws_cdk_aws_gamelift_alpha_Script, _aws_cdk_aws_gamelift_alpha_AutoScalingPolicy, _aws_cdk_aws_gamelift_alpha_InstanceDefinition, _aws_cdk_aws_gamelift_alpha_DeleteOption, _aws_cdk_aws_gamelift_alpha_BalancingStrategy, _aws_cdk_aws_gamelift_alpha_IGameServerGroup, _aws_cdk_aws_gamelift_alpha_GameServerGroupBase, _aws_cdk_aws_gamelift_alpha_GameServerGroupAttributes, _aws_cdk_aws_gamelift_alpha_GameServerGroupProps, _aws_cdk_aws_gamelift_alpha_GameServerGroup, _aws_cdk_aws_gamelift_alpha_Protocol, _aws_cdk_aws_gamelift_alpha_PortProps, _aws_cdk_aws_gamelift_alpha_Port, _aws_cdk_aws_gamelift_alpha_IPeer, _aws_cdk_aws_gamelift_alpha_Peer, _aws_cdk_aws_gamelift_alpha_IngressRule, _aws_cdk_aws_gamelift_alpha_LocationCapacity, _aws_cdk_aws_gamelift_alpha_Location, _aws_cdk_aws_gamelift_alpha_ServerProcess, _aws_cdk_aws_gamelift_alpha_RuntimeConfiguration, _aws_cdk_aws_gamelift_alpha_ResourceCreationLimitPolicy, _aws_cdk_aws_gamelift_alpha_IFleet, _aws_cdk_aws_gamelift_alpha_FleetProps, _aws_cdk_aws_gamelift_alpha_FleetAttributes, _aws_cdk_aws_gamelift_alpha_FleetBase, _aws_cdk_aws_gamelift_alpha_IBuildFleet, _aws_cdk_aws_gamelift_alpha_BuildFleetProps, _aws_cdk_aws_gamelift_alpha_BuildFleet, _aws_cdk_aws_gamelift_alpha_IGameSessionQueueDestination, _aws_cdk_aws_gamelift_alpha_PriorityType, _aws_cdk_aws_gamelift_alpha_PriorityConfiguration, _aws_cdk_aws_gamelift_alpha_PlayerLatencyPolicy, _aws_cdk_aws_gamelift_alpha_IGameSessionQueue, _aws_cdk_aws_gamelift_alpha_GameSessionQueueAttributes, _aws_cdk_aws_gamelift_alpha_GameSessionQueueProps, _aws_cdk_aws_gamelift_alpha_GameSessionQueueBase, _aws_cdk_aws_gamelift_alpha_GameSessionQueue, _aws_cdk_aws_gamelift_alpha_IMatchmakingRuleSet, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSetProps, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSetAttributes, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSetBase, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSet, _aws_cdk_aws_gamelift_alpha_IRuleSetBody, _aws_cdk_aws_gamelift_alpha_RuleSetBodyConfig, _aws_cdk_aws_gamelift_alpha_IRuleSetContent, _aws_cdk_aws_gamelift_alpha_RuleSetContentProps, _aws_cdk_aws_gamelift_alpha_RuleSetContent };
|
|
409
|
+
module.exports = { print, getPropertyDescriptor, DeprecationError, _aws_cdk_aws_gamelift_alpha_IAlias, _aws_cdk_aws_gamelift_alpha_AliasOptions, _aws_cdk_aws_gamelift_alpha_AliasAttributes, _aws_cdk_aws_gamelift_alpha_AliasProps, _aws_cdk_aws_gamelift_alpha_AliasBase, _aws_cdk_aws_gamelift_alpha_Alias, _aws_cdk_aws_gamelift_alpha_Content, _aws_cdk_aws_gamelift_alpha_ContentConfig, _aws_cdk_aws_gamelift_alpha_S3Content, _aws_cdk_aws_gamelift_alpha_AssetContent, _aws_cdk_aws_gamelift_alpha_IBuild, _aws_cdk_aws_gamelift_alpha_BuildBase, _aws_cdk_aws_gamelift_alpha_OperatingSystem, _aws_cdk_aws_gamelift_alpha_BuildAttributes, _aws_cdk_aws_gamelift_alpha_BuildProps, _aws_cdk_aws_gamelift_alpha_Build, _aws_cdk_aws_gamelift_alpha_IScript, _aws_cdk_aws_gamelift_alpha_ScriptBase, _aws_cdk_aws_gamelift_alpha_ScriptAttributes, _aws_cdk_aws_gamelift_alpha_ScriptProps, _aws_cdk_aws_gamelift_alpha_Script, _aws_cdk_aws_gamelift_alpha_AutoScalingPolicy, _aws_cdk_aws_gamelift_alpha_InstanceDefinition, _aws_cdk_aws_gamelift_alpha_DeleteOption, _aws_cdk_aws_gamelift_alpha_BalancingStrategy, _aws_cdk_aws_gamelift_alpha_IGameServerGroup, _aws_cdk_aws_gamelift_alpha_GameServerGroupBase, _aws_cdk_aws_gamelift_alpha_GameServerGroupAttributes, _aws_cdk_aws_gamelift_alpha_GameServerGroupProps, _aws_cdk_aws_gamelift_alpha_GameServerGroup, _aws_cdk_aws_gamelift_alpha_Protocol, _aws_cdk_aws_gamelift_alpha_PortProps, _aws_cdk_aws_gamelift_alpha_Port, _aws_cdk_aws_gamelift_alpha_IPeer, _aws_cdk_aws_gamelift_alpha_Peer, _aws_cdk_aws_gamelift_alpha_IngressRule, _aws_cdk_aws_gamelift_alpha_LocationCapacity, _aws_cdk_aws_gamelift_alpha_Location, _aws_cdk_aws_gamelift_alpha_ServerProcess, _aws_cdk_aws_gamelift_alpha_RuntimeConfiguration, _aws_cdk_aws_gamelift_alpha_ResourceCreationLimitPolicy, _aws_cdk_aws_gamelift_alpha_IFleet, _aws_cdk_aws_gamelift_alpha_FleetProps, _aws_cdk_aws_gamelift_alpha_FleetAttributes, _aws_cdk_aws_gamelift_alpha_FleetBase, _aws_cdk_aws_gamelift_alpha_IBuildFleet, _aws_cdk_aws_gamelift_alpha_BuildFleetProps, _aws_cdk_aws_gamelift_alpha_BuildFleet, _aws_cdk_aws_gamelift_alpha_GameProperty, _aws_cdk_aws_gamelift_alpha_IMatchmakingConfiguration, _aws_cdk_aws_gamelift_alpha_MatchmakingConfigurationAttributes, _aws_cdk_aws_gamelift_alpha_MatchmakingConfigurationProps, _aws_cdk_aws_gamelift_alpha_MatchmakingConfigurationBase, _aws_cdk_aws_gamelift_alpha_QueuedMatchmakingConfigurationProps, _aws_cdk_aws_gamelift_alpha_QueuedMatchmakingConfiguration, _aws_cdk_aws_gamelift_alpha_StandaloneMatchmakingConfigurationProps, _aws_cdk_aws_gamelift_alpha_StandaloneMatchmakingConfiguration, _aws_cdk_aws_gamelift_alpha_IGameSessionQueueDestination, _aws_cdk_aws_gamelift_alpha_PriorityType, _aws_cdk_aws_gamelift_alpha_PriorityConfiguration, _aws_cdk_aws_gamelift_alpha_PlayerLatencyPolicy, _aws_cdk_aws_gamelift_alpha_IGameSessionQueue, _aws_cdk_aws_gamelift_alpha_GameSessionQueueAttributes, _aws_cdk_aws_gamelift_alpha_GameSessionQueueProps, _aws_cdk_aws_gamelift_alpha_GameSessionQueueBase, _aws_cdk_aws_gamelift_alpha_GameSessionQueue, _aws_cdk_aws_gamelift_alpha_IMatchmakingRuleSet, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSetProps, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSetAttributes, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSetBase, _aws_cdk_aws_gamelift_alpha_MatchmakingRuleSet, _aws_cdk_aws_gamelift_alpha_IRuleSetBody, _aws_cdk_aws_gamelift_alpha_RuleSetBodyConfig, _aws_cdk_aws_gamelift_alpha_IRuleSetContent, _aws_cdk_aws_gamelift_alpha_RuleSetContentProps, _aws_cdk_aws_gamelift_alpha_RuleSetContent };
|
package/LICENSE
CHANGED
|
@@ -186,7 +186,7 @@
|
|
|
186
186
|
same "printed page" as the copyright notice for easier
|
|
187
187
|
identification within third-party archives.
|
|
188
188
|
|
|
189
|
-
Copyright 2018-
|
|
189
|
+
Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
190
190
|
|
|
191
191
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
192
|
you may not use this file except in compliance with the License.
|
package/NOTICE
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
AWS Cloud Development Kit (AWS CDK)
|
|
2
|
-
Copyright 2018-
|
|
2
|
+
Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
package/README.md
CHANGED
|
@@ -46,6 +46,44 @@ configuration or game server fleet management system.
|
|
|
46
46
|
|
|
47
47
|
## GameLift FlexMatch
|
|
48
48
|
|
|
49
|
+
### Defining a Matchmaking configuration
|
|
50
|
+
|
|
51
|
+
FlexMatch is available both as a GameLift game hosting solution (including
|
|
52
|
+
Realtime Servers) and as a standalone matchmaking service. To set up a
|
|
53
|
+
FlexMatch matchmaker to process matchmaking requests, you have to create a
|
|
54
|
+
matchmaking configuration based on a RuleSet.
|
|
55
|
+
|
|
56
|
+
More details about matchmaking ruleSet are covered [below](#matchmaking-ruleset).
|
|
57
|
+
|
|
58
|
+
There is two types of Matchmaking configuration:
|
|
59
|
+
|
|
60
|
+
Through a game session queue system to let FlexMatch forms matches and uses the specified GameLift queue to start a game session for the match.
|
|
61
|
+
|
|
62
|
+
```ts
|
|
63
|
+
declare const queue: gamelift.GameSessionQueue;
|
|
64
|
+
declare const ruleSet: gamelift.MatchmakingRuleSet;
|
|
65
|
+
|
|
66
|
+
new gamelift.QueuedMatchmakingConfiguration(this, 'QueuedMatchmakingConfiguration', {
|
|
67
|
+
matchmakingConfigurationName: 'test-queued-config-name',
|
|
68
|
+
gameSessionQueues: [queue],
|
|
69
|
+
ruleSet: ruleSet,
|
|
70
|
+
});
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Or through a standalone version to let FlexMatch forms matches and returns match information in an event.
|
|
74
|
+
|
|
75
|
+
```ts
|
|
76
|
+
declare const ruleSet: gamelift.MatchmakingRuleSet;
|
|
77
|
+
|
|
78
|
+
new gamelift.StandaloneMatchmakingConfiguration(this, 'StandaloneMatchmaking', {
|
|
79
|
+
matchmakingConfigurationName: 'test-standalone-config-name',
|
|
80
|
+
ruleSet: ruleSet,
|
|
81
|
+
});
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
More details about Game session queue are covered [below](#game-session-queue).
|
|
86
|
+
|
|
49
87
|
### Matchmaking RuleSet
|
|
50
88
|
|
|
51
89
|
Every FlexMatch matchmaker must have a rule set. The rule set determines the
|
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.60.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.60.0-alpha.0" };
|
|
148
148
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxpYXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhbGlhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtQ0FBbUM7QUFJbkMsMkRBQW9EO0FBNkZwRDs7R0FFRztBQUNILE1BQXNCLFNBQVUsU0FBUSxHQUFHLENBQUMsUUFBUTtJQVNsRDs7T0FFRztJQUNILElBQVcseUJBQXlCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztLQUN0Qjs7QUFkSCw4QkFlQzs7O0FBRUQ7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBYSxLQUFNLFNBQVEsU0FBUztJQWdFbEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQjtRQUN6RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxLQUFLLENBQUMsU0FBUztTQUM5QixDQUFDLENBQUM7Ozs7OzsrQ0FuRU0sS0FBSzs7OztRQXFFZCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQzVDLElBQUksS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxFQUFFO2dCQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDZEQUE2RCxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sY0FBYyxDQUFDLENBQUM7YUFDcEg7U0FDRjtRQUVELElBQUksS0FBSyxDQUFDLFdBQVcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNuRSxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLElBQUksRUFBRTtnQkFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRUFBb0UsS0FBSyxDQUFDLFdBQVcsQ0FBQyxNQUFNLGNBQWMsQ0FBQyxDQUFDO2FBQzdIO1NBQ0Y7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFD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QUFRLEdBQUcsUUFBUSxDQUFDO1lBTXBDLENBQUM7U0FDRjtRQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzlCO0lBeURPLG9CQUFvQixDQUFDLEtBQWlCO1FBQzVDLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRztZQUNoQixPQUFPO2dCQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU87Z0JBQzVCLElBQUksRUFBRSxRQUFRO2FBQ2YsQ0FBQztTQUNIO1FBQ0QsT0FBTztZQUNMLE9BQU8sRUFBRSxLQUFLLENBQUMsZUFBZTtZQUM5QixJQUFJLEVBQUUsVUFBVTtTQUNqQixDQUFDO0tBQ0g7O0FBbkhILHNCQW9IQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElGbGVldCB9IGZyb20gJy4vZmxlZXQtYmFzZSc7XG5pbXBvcnQgeyBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uIH0gZnJvbSAnLi9nYW1lLXNlc3Npb24tcXVldWUnO1xuaW1wb3J0IHsgQ2ZuQWxpYXMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZ2FtZWxpZnQnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBHYW1lbGlmdCBBbGlhcyBmb3IgYSBHYW1lbGlmdCBmbGVldCBkZXN0aW5hdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQWxpYXMgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBJR2FtZVNlc3Npb25RdWV1ZURlc3RpbmF0aW9uIHtcblxuICAvKipcbiAgICAgKiBUaGUgSWRlbnRpZmllciBvZiB0aGUgYWxpYXMuXG4gICAgICpcbiAgICAgKiBAYXR0cmlidXRlXG4gICAgICovXG4gIHJlYWRvbmx5IGFsaWFzSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgYWxpYXMuXG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHJlYWRvbmx5IGFsaWFzQXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYGdhbWVsaWZ0LkFsaWFzYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBbGlhc09wdGlvbnMge1xuICAvKipcbiAgICAgKiBEZXNjcmlwdGlvbiBmb3IgdGhlIGFsaWFzXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBObyBkZXNjcmlwdGlvblxuICAgICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIGZ1bGwgc3BlY2lmaWNhdGlvbiBvZiBhbiBhbGlhcyB0aGF0IGNhbiBiZSB1c2VkIHRvIGltcG9ydCBpdCBmbHVlbnRseSBpbnRvIHRoZSBDREsgYXBwbGljYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxpYXNBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAgICAgKiBUaGUgQVJOIG9mIHRoZSBhbGlhc1xuICAgICAgICpcbiAgICAgICAqIEF0IGxlYXN0IG9uZSBvZiBgYWxpYXNBcm5gIGFuZCBgYWxpYXNJZGAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICAgICAqXG4gICAgICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGFsaWFzSWRgLlxuICAgICAgICovXG4gIHJlYWRvbmx5IGFsaWFzQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgICAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBhbGlhc1xuICAgICAqXG4gICAgICogQXQgbGVhc3Qgb25lIG9mIGBhbGlhc0lkYCBhbmQgYGFsaWFzQXJuYCAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgYWxpYXNBcm5gLlxuICAgICAqL1xuICByZWFkb25seSBhbGlhc0lkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgbmV3IEZsZWV0IGFsaWFzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxpYXNQcm9wcyB7XG4gIC8qKlxuICAgICAqIE5hbWUgb2YgdGhpcyBhbGlhc1xuICAgICAqL1xuICByZWFkb25seSBhbGlhc05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICAgKiBBIGh1bWFuLXJlYWRhYmxlIGRlc2NyaXB0aW9uIG9mIHRoZSBhbGlhc1xuICAgICAqXG4gICAgICogQGRlZmF1bHQgbm8gZGVzY3JpcHRpb25cbiAgICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgZmxlZXQgdGhhdCB0aGUgYWxpYXMgcG9pbnRzIHRvLlxuICAgKiBJZiBzcGVjaWZpZWQsIHRoZSBhbGlhcyByZXNvbHZlcyB0byBvbmUgc3BlY2lmaWMgZmxlZXQuXG4gICAqXG4gICAqIEF0IGxlYXN0IG9uZSBvZiBgZmxlZXRgIGFuZCBgdGVybWluYWxNZXNzYWdlYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBmbGVldCB0aGF0IHRoZSBhbGlhcyBwb2ludHMgdG8uXG4gICAqL1xuICByZWFkb25seSBmbGVldD86IElGbGVldDtcblxuICAvKipcbiAgICogVGhlIG1lc3NhZ2UgdGV4dCB0byBiZSB1c2VkIHdpdGggYSB0ZXJtaW5hbCByb3V0aW5nIHN0cmF0ZWd5LlxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGZsZWV0YCBhbmQgYHRlcm1pbmFsTWVzc2FnZWAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gdGVybWluYWwgbWVzc2FnZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVybWluYWxNZXNzYWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgQWxpYXMuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBbGlhc0Jhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJQWxpYXMge1xuICAvKipcbiAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBhbGlhcy5cbiAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYWxpYXNJZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgYWxpYXNcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBhbGlhc0Fybjogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIEFSTiB0byBwdXQgaW50byB0aGUgZGVzdGluYXRpb24gZmllbGQgb2YgYSBnYW1lIHNlc3Npb24gcXVldWVcbiAgICovXG4gIHB1YmxpYyBnZXQgcmVzb3VyY2VBcm5Gb3JEZXN0aW5hdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5hbGlhc0FybjtcbiAgfVxufVxuXG4vKipcbiAqIEEgQW1hem9uIEdhbWVMaWZ0IGFsaWFzIGlzIHVzZWQgdG8gYWJzdHJhY3QgYSBmbGVldCBkZXNpZ25hdGlvbi5cbiAqIEZsZWV0IGRlc2lnbmF0aW9ucyB0ZWxsIEdhbWVMaWZ0IHdoZXJlIHRvIHNlYXJjaCBmb3IgYXZhaWxhYmxlIHJlc291cmNlcyB3aGVuIGNyZWF0aW5nIG5ldyBnYW1lIHNlc3Npb25zIGZvciBwbGF5ZXJzLlxuICogVXNlIGFsaWFzZXMgaW5zdGVhZCBvZiBzcGVjaWZpYyBmbGVldCBJRHMgdG8gc2VhbWxlc3NseSBzd2l0Y2ggcGxheWVyIHRyYWZmaWMgZnJvbSBvbmUgZmxlZXQgdG8gYW5vdGhlciBieSBjaGFuZ2luZyB0aGUgYWxpYXMncyB0YXJnZXQgbG9jYXRpb24uXG4gKlxuICogQWxpYXNlcyBhcmUgdXNlZnVsIGluIGdhbWVzIHRoYXQgZG9uJ3QgdXNlIHF1ZXVlcy5cbiAqIFN3aXRjaGluZyBmbGVldHMgaW4gYSBxdWV1ZSBpcyBhIHNpbXBsZSBtYXR0ZXIgb2YgY3JlYXRpbmcgYSBuZXcgZmxlZXQsIGFkZGluZyBpdCB0byB0aGUgcXVldWUsIGFuZCByZW1vdmluZyB0aGUgb2xkIGZsZWV0LCBub25lIG9mIHdoaWNoIGlzIHZpc2libGUgdG8gcGxheWVycy5cbiAqIEluIGNvbnRyYXN0LCBnYW1lIGNsaWVudHMgdGhhdCBkb24ndCB1c2UgcXVldWVzIG11c3Qgc3BlY2lmeSB3aGljaCBmbGVldCB0byB1c2Ugd2hlbiBjb21tdW5pY2F0aW5nIHdpdGggdGhlIEdhbWVMaWZ0IHNlcnZpY2UuXG4gKiBXaXRob3V0IGFsaWFzZXMsIGEgZmxlZXQgc3dpdGNoIHJlcXVpcmVzIHVwZGF0ZXMgdG8geW91ciBnYW1lIGNvZGUgYW5kIHBvc3NpYmx5IGRpc3RyaWJ1dGlvbiBvZiBhbiB1cGRhdGVkIGdhbWUgY2xpZW50cyB0byBwbGF5ZXJzLlxuICpcbiAqIFdoZW4gdXBkYXRpbmcgdGhlIGZsZWV0LWlkIGFuIGFsaWFzIHBvaW50cyB0bywgdGhlcmUgaXMgYSB0cmFuc2l0aW9uIHBlcmlvZCBvZiB1cCB0byAyIG1pbnV0ZXMgd2hlcmUgZ2FtZSBzZXNzaW9ucyBvbiB0aGUgYWxpYXMgbWF5IGVuZCB1cCBvbiB0aGUgb2xkIGZsZWV0LlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9hbGlhc2VzLWNyZWF0aW5nLmh0bWxcbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6QWxpYXNcbiAqL1xuZXhwb3J0IGNsYXNzIEFsaWFzIGV4dGVuZHMgQWxpYXNCYXNlIHtcblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGFsaWFzIGZyb20gaXRzIGlkZW50aWZpZXIuXG4gICAqL1xuICBzdGF0aWMgZnJvbUFsaWFzSWQoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYWxpYXNJZDogc3RyaW5nKTogSUFsaWFzIHtcbiAgICByZXR1cm4gdGhpcy5mcm9tQWxpYXNBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBhbGlhc0lkOiBhbGlhc0lkIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcG9ydCBhbiBleGlzdGluZyBhbGlhcyBmcm9tIGl0cyBBUk4uXG4gICAqL1xuICBzdGF0aWMgZnJvbUFsaWFzQXJuKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGFsaWFzQXJuOiBzdHJpbmcpOiBJQWxpYXMge1xuICAgIHJldHVybiB0aGlzLmZyb21BbGlhc0F0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGFsaWFzQXJuOiBhbGlhc0FybiB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgYWxpYXMgZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tQWxpYXNBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBBbGlhc0F0dHJpYnV0ZXMpOiBJQWxpYXMge1xuICAgIGlmICghYXR0cnMuYWxpYXNJZCAmJiAhYXR0cnMuYWxpYXNBcm4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGFsaWFzSWQgb3IgYWxpYXNBcm4gbXVzdCBiZSBwcm92aWRlZCBpbiBBbGlhc0F0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgYWxpYXNJZCA9IGF0dHJzLmFsaWFzSWQgPz9cbiAgICAgIGNkay5TdGFjay5vZihzY29wZSkuc3BsaXRBcm4oYXR0cnMuYWxpYXNBcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghYWxpYXNJZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBhbGlhcyBpZGVudGlmaWVyIGZvdW5kIGluIEFSTjogJyR7YXR0cnMuYWxpYXNBcm59J2ApO1xuICAgIH1cblxuICAgIGNvbnN0IGFsaWFzQXJuID0gYXR0cnMuYWxpYXNBcm4gPz8gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnYWxpYXMnLFxuICAgICAgcmVzb3VyY2VOYW1lOiBhdHRycy5hbGlhc0lkLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgQWxpYXNCYXNlIHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBhbGlhc0lkID0gYWxpYXNJZCE7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgYWxpYXNBcm4gPSBhbGlhc0FybjtcblxuICAgICAgY29uc3RydWN0b3IoczogQ29uc3RydWN0LCBpOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIocywgaSwge1xuICAgICAgICAgIGVudmlyb25tZW50RnJvbUFybjogYWxpYXNBcm4sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBhbGlhcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhbGlhc0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAgKiBUaGUgQVJOIG9mIHRoZSBhbGlhcy5cbiAgICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYWxpYXNBcm46IHN0cmluZztcblxuICAvKipcbiAgICogQSBmbGVldCB0aGF0IHRoZSBhbGlhcyBwb2ludHMgdG8uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZmxlZXQ/OiBJRmxlZXQ7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFsaWFzUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuYWxpYXNOYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKCFjZGsuVG9rZW4uaXNVbnJlc29sdmVkKHByb3BzLmFsaWFzTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5hbGlhc05hbWUubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEFsaWFzIG5hbWUgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmFsaWFzTmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmRlc2NyaXB0aW9uICYmICFjZGsuVG9rZW4uaXNVbnJlc29sdmVkKHByb3BzLmRlc2NyaXB0aW9uKSkge1xuICAgICAgaWYgKHByb3BzLmRlc2NyaXB0aW9uLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBBbGlhcyBkZXNjcmlwdGlvbiBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuZGVzY3JpcHRpb24ubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmICghcHJvcHMudGVybWluYWxNZXNzYWdlICYmICFwcm9wcy5mbGVldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdFaXRoZXIgYSB0ZXJtaW5hbCBtZXNzYWdlIG9yIGEgZmxlZXQgbXVzdCBiZSBiaW5kZWQgdG8gdGhpcyBBbGlhcy4nKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMudGVybWluYWxNZXNzYWdlICYmIHByb3BzLmZsZWV0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBhIHRlcm1pbmFsIG1lc3NhZ2Ugb3IgYSBmbGVldCBtdXN0IGJlIGJpbmRlZCB0byB0aGlzIEFsaWFzLCBub3QgYm90aC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5BbGlhcyh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBuYW1lOiBwcm9wcy5hbGlhc05hbWUsXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICByb3V0aW5nU3RyYXRlZ3k6IHRoaXMucGFyc2VSb3V0aW5nU3RyYXRlZ3kocHJvcHMpLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hbGlhc0lkID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocmVzb3VyY2UucmVmKTtcbiAgICB0aGlzLmFsaWFzQXJuID0gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnYWxpYXMnLFxuICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLmFsaWFzSWQsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VSb3V0aW5nU3RyYXRlZ3kocHJvcHM6IEFsaWFzUHJvcHMpOiBDZm5BbGlhcy5Sb3V0aW5nU3RyYXRlZ3lQcm9wZXJ0eSB7XG4gICAgaWYgKHByb3BzLmZsZWV0ICkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZmxlZXRJZDogcHJvcHMuZmxlZXQuZmxlZXRJZCxcbiAgICAgICAgdHlwZTogJ1NJTVBMRScsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgbWVzc2FnZTogcHJvcHMudGVybWluYWxNZXNzYWdlLFxuICAgICAgdHlwZTogJ1RFUk1JTkFMJyxcbiAgICB9O1xuICB9XG59XG5cbiJdfQ==
|
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.60.0-alpha.0" };
|
|
155
155
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtZmxlZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidWlsZC1mbGVldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwyQ0FBMkM7QUFDM0MsbUNBQW1DO0FBR25DLDZDQUE2RDtBQUM3RCwyREFBb0Q7QUErQnBEOzs7Ozs7Ozs7R0FTRztBQUNILE1BQWEsVUFBVyxTQUFRLHNCQUFTO0lBMkN2QyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNCO1FBQzlELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsWUFBWSxFQUFFLEtBQUssQ0FBQyxTQUFTO1NBQzlCLENBQUMsQ0FBQztRQUxZLGlCQUFZLEdBQWtCLEVBQUUsQ0FBQzs7Ozs7OytDQXpDdkMsVUFBVTs7OztRQWdEbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUM1QyxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLElBQUksRUFBRTtnQkFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLGNBQWMsQ0FBQyxDQUFDO2FBQ3BIO1NBQ0Y7UUFFRCxJQUFJLEtBQUssQ0FBQyxXQUFXLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDbkUsSUFBSSxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUU7Z0JBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsb0VBQW9FLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxjQUFjLENBQUMsQ0FBQzthQUM3SDtTQUNGO1FBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFO1lBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0ZB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bmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IElCdWlsZCB9IGZyb20gJy4vYnVpbGQnO1xuaW1wb3J0IHsgRmxlZXRCYXNlLCBGbGVldFByb3BzLCBJRmxlZXQgfSBmcm9tICcuL2ZsZWV0LWJhc2UnO1xuaW1wb3J0IHsgQ2ZuRmxlZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZ2FtZWxpZnQnO1xuaW1wb3J0IHsgUG9ydCwgSVBlZXIsIEluZ3Jlc3NSdWxlIH0gZnJvbSAnLi9pbmdyZXNzLXJ1bGUnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBHYW1lTGlmdCBGbGVldCB1c2VkIHRvIHJ1biBhIGN1c3RvbSBnYW1lIGJ1aWxkLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElCdWlsZEZsZWV0IGV4dGVuZHMgSUZsZWV0IHt9XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgR2FtZWxpZnQgYnVpbGQgZmxlZXRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWlsZEZsZWV0UHJvcHMgZXh0ZW5kcyBGbGVldFByb3BzIHtcblxuICAvKipcbiAgICAgKiBBIGJ1aWxkIHRvIGJlIGRlcGxveWVkIG9uIHRoZSBmbGVldC5cbiAgICAgKiBUaGUgYnVpbGQgbXVzdCBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHVwbG9hZGVkIHRvIEFtYXpvbiBHYW1lTGlmdCBhbmQgYmUgaW4gYSBgUkVBRFlgIHN0YXR1cy5cbiAgICAgKlxuICAgICAqIFRoaXMgZmxlZXQgc2V0dGluZyBjYW5ub3QgYmUgY2hhbmdlZCBvbmNlIHRoZSBmbGVldCBpcyBjcmVhdGVkLlxuICAgICAqL1xuICByZWFkb25seSBjb250ZW50OiBJQnVpbGQ7XG5cbiAgLyoqXG4gICAqIFRoZSBhbGxvd2VkIElQIGFkZHJlc3MgcmFuZ2VzIGFuZCBwb3J0IHNldHRpbmdzIHRoYXQgYWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIGFjY2VzcyBnYW1lIHNlc3Npb25zIG9uIHRoaXMgZmxlZXQuXG4gICAqXG4gICAqIFRoaXMgcHJvcGVydHkgbXVzdCBiZSBzZXQgYmVmb3JlIHBsYXllcnMgY2FuIGNvbm5lY3QgdG8gZ2FtZSBzZXNzaW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gaW5ib3VuZCB0cmFmZmljIGFsbG93ZWRcbiAgICovXG4gIHJlYWRvbmx5IGluZ3Jlc3NSdWxlcz86IEluZ3Jlc3NSdWxlW107XG59XG5cbi8qKlxuICogQSBmbGVldCBjb250YWlucyBBbWF6b24gRWxhc3RpYyBDb21wdXRlIENsb3VkIChBbWF6b24gRUMyKSBpbnN0YW5jZXMgdGhhdCBHYW1lTGlmdCBob3N0cy5cbiAqIEEgZmxlZXQgdXNlcyB0aGUgY29uZmlndXJhdGlvbiBhbmQgc2NhbGluZyBsb2dpYyB0aGF0IHlvdSBkZWZpbmUgdG8gcnVuIHlvdXIgZ2FtZSBzZXJ2ZXIgYnVpbGQuIFlvdSBjYW4gdXNlIGEgZmxlZXQgZGlyZWN0bHkgd2l0aG91dCBhIHF1ZXVlLlxuICogWW91IGNhbiBhbHNvIGFzc29jaWF0ZSBtdWx0aXBsZSBmbGVldHMgd2l0aCBhIEdhbWVMaWZ0IHF1ZXVlLlxuICpcbiAqIEZvciBleGFtcGxlLCB5b3UgY2FuIHVzZSBTcG90IEluc3RhbmNlIGZsZWV0cyBjb25maWd1cmVkIHdpdGggeW91ciBwcmVmZXJyZWQgbG9jYXRpb25zLCBhbG9uZyB3aXRoIGEgYmFja3VwIE9uLURlbWFuZCBJbnN0YW5jZSBmbGVldCB3aXRoIHRoZSBzYW1lIGxvY2F0aW9ucy5cbiAqIFVzaW5nIG11bHRpcGxlIFNwb3QgSW5zdGFuY2UgZmxlZXRzIG9mIGRpZmZlcmVudCBpbnN0YW5jZSB0eXBlcyByZWR1Y2VzIHRoZSBjaGFuY2Ugb2YgbmVlZGluZyBPbi1EZW1hbmQgSW5zdGFuY2UgcGxhY2VtZW50LlxuICpcbiAqIEByZXNvdXJjZSBBV1M6OkdhbWVMaWZ0OjpGbGVldFxuICovXG5leHBvcnQgY2xhc3MgQnVpbGRGbGVldCBleHRlbmRzIEZsZWV0QmFzZSBpbXBsZW1lbnRzIElCdWlsZEZsZWV0IHtcblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIGlkZW50aWZpZXIuXG4gICAqL1xuICBzdGF0aWMgZnJvbUJ1aWxkRmxlZXRJZChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEZsZWV0SWQ6IHN0cmluZyk6IElCdWlsZEZsZWV0IHtcbiAgICByZXR1cm4gdGhpcy5mcm9tRmxlZXRBdHRyaWJ1dGVzKHNjb3BlLCBpZCwgeyBmbGVldElkOiBidWlsZEZsZWV0SWQgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGZsZWV0IGZyb20gaXRzIEFSTi5cbiAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRGbGVldEFybihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZEZsZWV0QXJuOiBzdHJpbmcpOiBJQnVpbGRGbGVldCB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUZsZWV0QXR0cmlidXRlcyhzY29wZSwgaWQsIHsgZmxlZXRBcm46IGJ1aWxkRmxlZXRBcm4gfSk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGZsZWV0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGZsZWV0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZmxlZXQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZmxlZXRBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGJ1aWxkIGNvbnRlbnQgb2YgdGhlIGZsZWV0XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGVudDogSUJ1aWxkO1xuXG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgR2FtZUxpZnQgYXNzdW1lcyBieSBmbGVldCBpbnN0YW5jZXMgdG8gYWNjZXNzIEFXUyByZXNzb3VyY2VzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHJvbGU6IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIHByaW5jaXBhbCB0aGlzIEdhbWVMaWZ0IGZsZWV0IGlzIHVzaW5nLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdyYW50UHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGluZ3Jlc3NSdWxlczogSW5ncmVzc1J1bGVbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBCdWlsZEZsZWV0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuZmxlZXROYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKCFjZGsuVG9rZW4uaXNVbnJlc29sdmVkKHByb3BzLmZsZWV0TmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5mbGVldE5hbWUubGVuZ3RoID4gMTAyNCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEZsZWV0IG5hbWUgY2FuIG5vdCBiZSBsb25nZXIgdGhhbiAxMDI0IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmZsZWV0TmFtZS5sZW5ndGh9IGNoYXJhY3RlcnMuYCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmRlc2NyaXB0aW9uICYmICFjZGsuVG9rZW4uaXNVbnJlc29sdmVkKHByb3BzLmRlc2NyaXB0aW9uKSkge1xuICAgICAgaWYgKHByb3BzLmRlc2NyaXB0aW9uLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBGbGVldCBkZXNjcmlwdGlvbiBjYW4gbm90IGJlIGxvbmdlciB0aGFuIDEwMjQgY2hhcmFjdGVycyBidXQgaGFzICR7cHJvcHMuZGVzY3JpcHRpb24ubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwcm9wcy5taW5TaXplICYmIHByb3BzLm1pblNpemUgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgRmxlZXQgY2Fubm90IGJlIGxvd2VyIHRoYW4gMCwgZ2l2ZW4gJHtwcm9wcy5taW5TaXplfWApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5tYXhTaXplICYmIHByb3BzLm1heFNpemUgPCAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBpbiB0aGUgRmxlZXQgY2Fubm90IGJlIGxvd2VyIHRoYW4gMCwgZ2l2ZW4gJHtwcm9wcy5tYXhTaXplfWApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5wZWVyVnBjKSB7XG4gICAgICB0aGlzLndhcm5WcGNQZWVyaW5nQXV0aG9yaXphdGlvbnModGhpcyk7XG4gICAgfVxuXG4gICAgLy8gQWRkIGFsbCBsb2NhdGlvbnNcbiAgICBpZiAocHJvcHMubG9jYXRpb25zICYmIHByb3BzLmxvY2F0aW9ucz8ubGVuZ3RoID4gMTAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAxMDAgbG9jYXRpb25zIGFyZSBhbGxvd2VkIHBlciBmbGVldCwgZ2l2ZW4gJHtwcm9wcy5sb2NhdGlvbnMubGVuZ3RofWApO1xuICAgIH1cbiAgICAocHJvcHMubG9jYXRpb25zIHx8IFtdKS5mb3JFYWNoKHRoaXMuYWRkSW50ZXJuYWxMb2NhdGlvbi5iaW5kKHRoaXMpKTtcblxuXG4gICAgLy8gQWRkIGFsbCBJbmdyZXNzIHJ1bGVzXG4gICAgaWYgKHByb3BzLmluZ3Jlc3NSdWxlcyAmJiBwcm9wcy5pbmdyZXNzUnVsZXM/Lmxlbmd0aCA+IDUwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiA1MCBpbmdyZXNzIHJ1bGVzIGFyZSBhbGxvd2VkIHBlciBmbGVldCwgZ2l2ZW4gJHtwcm9wcy5pbmdyZXNzUnVsZXMubGVuZ3RofWApO1xuICAgIH1cbiAgICAocHJvcHMuaW5ncmVzc1J1bGVzIHx8IFtdKS5mb3JFYWNoKHRoaXMuYWRkSW50ZXJuYWxJbmdyZXNzUnVsZS5iaW5kKHRoaXMpKTtcblxuICAgIHRoaXMuY29udGVudCA9IHByb3BzLmNvbnRlbnQ7XG4gICAgdGhpcy5yb2xlID0gcHJvcHMucm9sZSA/PyBuZXcgaWFtLlJvbGUodGhpcywgJ1NlcnZpY2VSb2xlJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLkNvbXBvc2l0ZVByaW5jaXBhbChcbiAgICAgICAgbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdnYW1lbGlmdC5hbWF6b25hd3MuY29tJyksXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZWMyLmFtYXpvbmF3cy5jb20nKSksXG4gICAgfSk7XG4gICAgdGhpcy5ncmFudFByaW5jaXBhbCA9IHRoaXMucm9sZTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IENmbkZsZWV0KHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGJ1aWxkSWQ6IHRoaXMuY29udGVudC5idWlsZElkLFxuICAgICAgY2VydGlmaWNhdGVDb25maWd1cmF0aW9uOiB7XG4gICAgICAgIGNlcnRpZmljYXRlVHlwZTogcHJvcHMudXNlQ2VydGlmaWNhdGUgPyAnR0VORVJBVEVEJzogJ0RJU0FCTEVEJyxcbiAgICAgIH0sXG4gICAgICBkZXNjcmlwdGlvbjogcHJvcHMuZGVzY3JpcHRpb24sXG4gICAgICBkZXNpcmVkRWMySW5zdGFuY2VzOiBwcm9wcy5kZXNpcmVkQ2FwYWNpdHksXG4gICAgICBlYzJJbmJvdW5kUGVybWlzc2lvbnM6IGNkay5MYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMucGFyc2VJbmdyZXNzUnVsZXMoKSB9KSxcbiAgICAgIGVjMkluc3RhbmNlVHlwZTogcHJvcHMuaW5zdGFuY2VUeXBlLnRvU3RyaW5nKCksXG4gICAgICBmbGVldFR5cGU6IHByb3BzLnVzZVNwb3QgPyAnU1BPVCcgOiAnT05fREVNQU5EJyxcbiAgICAgIGluc3RhbmNlUm9sZUFybjogdGhpcy5yb2xlLnJvbGVBcm4sXG4gICAgICBsb2NhdGlvbnM6IGNkay5MYXp5LmFueSh7IHByb2R1Y2U6ICgpID0+IHRoaXMucGFyc2VMb2NhdGlvbnMoKSB9KSxcbiAgICAgIG1heFNpemU6IHByb3BzLm1heFNpemUgPyBwcm9wcy5tYXhTaXplIDogMSxcbiAgICAgIG1pblNpemU6IHByb3BzLm1pblNpemUgPyBwcm9wcy5taW5TaXplIDogMCxcbiAgICAgIG5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgbmV3R2FtZVNlc3Npb25Qcm90ZWN0aW9uUG9saWN5OiBwcm9wcy5wcm90ZWN0TmV3R2FtZVNlc3Npb24gPyAnRnVsbFByb3RlY3Rpb24nIDogJ05vUHJvdGVjdGlvbicsXG4gICAgICBwZWVyVnBjQXdzQWNjb3VudElkOiBwcm9wcy5wZWVyVnBjICYmIHByb3BzLnBlZXJWcGMuZW52LmFjY291bnQsXG4gICAgICBwZWVyVnBjSWQ6IHByb3BzLnBlZXJWcGMgJiYgcHJvcHMucGVlclZwYy52cGNJZCxcbiAgICAgIHJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeTogdGhpcy5wYXJzZVJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeShwcm9wcyksXG4gICAgICBydW50aW1lQ29uZmlndXJhdGlvbjogdGhpcy5wYXJzZVJ1bnRpbWVDb25maWd1cmF0aW9uKHByb3BzKSxcbiAgICB9KTtcblxuICAgIHRoaXMuZmxlZXRJZCA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gICAgdGhpcy5mbGVldEFybiA9IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2ZsZWV0JyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5mbGVldElkLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBpbmdyZXNzIHJ1bGUgdG8gYWxsb3cgaW5ib3VuZCB0cmFmZmljIHRvIGFjY2VzcyBnYW1lIHNlc3Npb25zIG9uIHRoaXMgZmxlZXQuXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2UgQSByYW5nZSBvZiBhbGxvd2VkIElQIGFkZHJlc3Nlc1xuICAgKiBAcGFyYW0gcG9ydCBUaGUgcG9ydCByYW5nZSB1c2VkIGZvciBpbmdyZXNzIHRyYWZmaWNcbiAgICovXG4gIHB1YmxpYyBhZGRJbmdyZXNzUnVsZShzb3VyY2U6IElQZWVyLCBwb3J0OiBQb3J0KSB7XG4gICAgdGhpcy5hZGRJbnRlcm5hbEluZ3Jlc3NSdWxlKHtcbiAgICAgIHNvdXJjZTogc291cmNlLFxuICAgICAgcG9ydDogcG9ydCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgYWRkSW50ZXJuYWxJbmdyZXNzUnVsZShpbmdyZXNzUnVsZTogSW5ncmVzc1J1bGUpIHtcbiAgICBpZiAodGhpcy5pbmdyZXNzUnVsZXMubGVuZ3RoID09IDUwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIG1vcmUgdGhhbiA1MCBpbmdyZXNzIHJ1bGVzIGFyZSBhbGxvd2VkIHBlciBmbGVldCcpO1xuICAgIH1cbiAgICB0aGlzLmluZ3Jlc3NSdWxlcy5wdXNoKGluZ3Jlc3NSdWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VJbmdyZXNzUnVsZXMoKTogQ2ZuRmxlZXQuSXBQZXJtaXNzaW9uUHJvcGVydHlbXSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmluZ3Jlc3NSdWxlcyB8fCB0aGlzLmluZ3Jlc3NSdWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaW5ncmVzc1J1bGVzLm1hcChwYXJzZUluZ3Jlc3NSdWxlKTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlSW5ncmVzc1J1bGUoaW5ncmVzc1J1bGU6IEluZ3Jlc3NSdWxlKTogQ2ZuRmxlZXQuSXBQZXJtaXNzaW9uUHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uaW5ncmVzc1J1bGUucG9ydC50b0pzb24oKSxcbiAgICAgICAgLi4uaW5ncmVzc1J1bGUuc291cmNlLnRvSnNvbigpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn0iXX0=
|
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.60.0-alpha.0" };
|
|
19
19
|
/**
|
|
20
20
|
* The operating system that the game server binaries are built to run on.
|
|
21
21
|
*/
|
|
@@ -148,5 +148,5 @@ class Build extends BuildBase {
|
|
|
148
148
|
}
|
|
149
149
|
exports.Build = Build;
|
|
150
150
|
_b = JSII_RTTI_SYMBOL_1;
|
|
151
|
-
Build[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Build", version: "2.
|
|
151
|
+
Build[_b] = { fqn: "@aws-cdk/aws-gamelift-alpha.Build", version: "2.60.0-alpha.0" };
|
|
152
152
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJidWlsZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSwyQ0FBMkM7QUFHM0MsbUNBQW1DO0FBRW5DLHVDQUFvQztBQUNwQywyREFBb0Q7QUE0QnBEOztHQUVHO0FBQ0gsTUFBc0IsU0FBVSxTQUFRLEdBQUcsQ0FBQyxRQUFROztBQUFwRCw4QkFXQzs7O0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGVBSVg7QUFKRCxXQUFZLGVBQWU7SUFDekIsZ0RBQTZCLENBQUE7SUFDN0Isb0RBQWlDLENBQUE7SUFDakMsZ0RBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQUpXLGVBQWUsR0FBZix1QkFBZSxLQUFmLHVCQUFlLFFBSTFCO0FBcUZEOzs7Ozs7O0dBT0c7QUFDSCxNQUFhLEtBQU0sU0FBUSxTQUFTO0lBeUZsQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWlCO1FBQ3pELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsWUFBWSxFQUFFLEtBQUssQ0FBQyxTQUFTO1NBQzlCLENBQUMsQ0FBQzs7Ozs7OytDQTVGTSxLQUFLOzs7O1FBOEZkLElBQUksS0FBSyxDQUFDLFNBQVMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUMvRCxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLElBQUksRUFBRTtnQkFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLGNBQWMsQ0FBQyxDQUFDO2FBQ3BIO1NBQ0Y7UUFFRCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLElBQUksSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDMUQsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFD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QkFrSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBzMyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0ICogYXMgczNfYXNzZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMy1hc3NldHMnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ29udGVudCB9IGZyb20gJy4vY29udGVudCc7XG5pbXBvcnQgeyBDZm5CdWlsZCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1nYW1lbGlmdCc7XG5cbi8qKlxuICogWW91ciBjdXN0b20tYnVpbHQgZ2FtZSBzZXJ2ZXIgc29mdHdhcmUgdGhhdCBydW5zIG9uIEdhbWVMaWZ0IGFuZCBob3N0cyBnYW1lIHNlc3Npb25zIGZvciB5b3VyIHBsYXllcnMuXG4gKiBBIGdhbWUgYnVpbGQgcmVwcmVzZW50cyB0aGUgc2V0IG9mIGZpbGVzIHRoYXQgcnVuIHlvdXIgZ2FtZSBzZXJ2ZXIgb24gYSBwYXJ0aWN1bGFyIG9wZXJhdGluZyBzeXN0ZW0uXG4gKiBZb3UgY2FuIGhhdmUgbWFueSBkaWZmZXJlbnQgYnVpbGRzLCBzdWNoIGFzIGZvciBkaWZmZXJlbnQgZmxhdm9ycyBvZiB5b3VyIGdhbWUuXG4gKiBUaGUgZ2FtZSBidWlsZCBtdXN0IGJlIGludGVncmF0ZWQgd2l0aCB0aGUgR2FtZUxpZnQgc2VydmljZS5cbiAqIFlvdSB1cGxvYWQgZ2FtZSBidWlsZCBmaWxlcyB0byB0aGUgR2FtZUxpZnQgc2VydmljZSBpbiB0aGUgUmVnaW9ucyB3aGVyZSB5b3UgcGxhbiB0byBzZXQgdXAgZmxlZXRzLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1idWlsZC1jbGktdXBsb2FkaW5nLmh0bWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQnVpbGQgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBpYW0uSUdyYW50YWJsZSB7XG5cbiAgLyoqXG4gICAqIFRoZSBJZGVudGlmaWVyIG9mIHRoZSBidWlsZC5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBidWlsZFxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBidWlsZEFybjogc3RyaW5nO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgc2VydmVyIGJ1aWxkLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQnVpbGRCYXNlIGV4dGVuZHMgY2RrLlJlc291cmNlIGltcGxlbWVudHMgSUJ1aWxkIHtcbiAgLyoqXG4gICAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGJ1aWxkLlxuICAgICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYnVpbGRJZDogc3RyaW5nO1xuICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoZSBidWlsZC5cbiAgICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGJ1aWxkQXJuOiBzdHJpbmc7XG5cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGdyYW50UHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbDtcbn1cblxuLyoqXG4gKiBUaGUgb3BlcmF0aW5nIHN5c3RlbSB0aGF0IHRoZSBnYW1lIHNlcnZlciBiaW5hcmllcyBhcmUgYnVpbHQgdG8gcnVuIG9uLlxuICovXG5leHBvcnQgZW51bSBPcGVyYXRpbmdTeXN0ZW0ge1xuICBBTUFaT05fTElOVVggPSAnQU1BWk9OX0xJTlVYJyxcbiAgQU1BWk9OX0xJTlVYXzIgPSAnQU1BWk9OX0xJTlVYXzInLFxuICBXSU5ET1dTXzIwMTIgPSAnV0lORE9XU18yMDEyJ1xufVxuXG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEJ1aWxkIGNvbnRlbnQgZGVmaW5lZCBvdXRzaWRlIG9mIHRoaXMgc3RhY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRBdHRyaWJ1dGVzIHtcbiAgLyoqXG4gICAgICogVGhlIEFSTiBvZiB0aGUgYnVpbGRcbiAgICAgKlxuICAgICAqIEF0IGxlYXN0IG9uZSBvZiBgYnVpbGRBcm5gIGFuZCBgYnVpbGRJZGAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgYnVpbGRJZGAuXG4gICAgICovXG4gIHJlYWRvbmx5IGJ1aWxkQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgICogVGhlIGlkZW50aWZpZXIgb2YgdGhlIGJ1aWxkXG4gICAgKlxuICAgICogQXQgbGVhc3Qgb25lIG9mIGBidWlsZElkYCBhbmQgYGJ1aWxkQXJuYCAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICAqXG4gICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGJ1aWxkQXJuYC5cbiAgICAqL1xuICByZWFkb25seSBidWlsZElkPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIElBTSByb2xlIGFzc3VtZWQgYnkgR2FtZUxpZnQgdG8gYWNjZXNzIHNlcnZlciBidWlsZCBpbiBTMy5cbiAgICogQGRlZmF1bHQgdGhlIGltcG9ydGVkIGZsZWV0IGNhbm5vdCBiZSBncmFudGVkIGFjY2VzcyB0byBvdGhlciByZXNvdXJjZXMgYXMgYW4gYGlhbS5JR3JhbnRhYmxlYC5cbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYSBuZXcgYnVpbGRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWlsZFByb3BzIHtcbiAgLyoqXG4gICAgICogTmFtZSBvZiB0aGlzIGJ1aWxkXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBObyBuYW1lXG4gICAgICovXG4gIHJlYWRvbmx5IGJ1aWxkTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICAgKiBWZXJzaW9uIG9mIHRoaXMgYnVpbGRcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IE5vIHZlcnNpb25cbiAgICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgICAqIFRoZSBvcGVyYXRpbmcgc3lzdGVtIHRoYXQgdGhlIGdhbWUgc2VydmVyIGJpbmFyaWVzIGFyZSBidWlsdCB0byBydW4gb24uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBObyB2ZXJzaW9uXG4gICAgICovXG4gIHJlYWRvbmx5IG9wZXJhdGluZ1N5c3RlbT86IE9wZXJhdGluZ1N5c3RlbTtcblxuICAvKipcbiAgICAgKiBUaGUgZ2FtZSBidWlsZCBmaWxlIHN0b3JhZ2VcbiAgICAgKi9cbiAgcmVhZG9ubHkgY29udGVudDogQ29udGVudDtcblxuICAvKipcbiAgICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IHRvIGFjY2VzcyBzZXJ2ZXIgYnVpbGQgaW4gUzMuXG4gICAgKiBJZiBwcm92aWRpbmcgYSBjdXN0b20gcm9sZSwgaXQgbmVlZHMgdG8gdHJ1c3QgdGhlIEdhbWVMaWZ0IHNlcnZpY2UgcHJpbmNpcGFsIChnYW1lbGlmdC5hbWF6b25hd3MuY29tKSBhbmQgYmUgZ3JhbnRlZCBzdWZmaWNpZW50IHBlcm1pc3Npb25zXG4gICAgKiB0byBoYXZlIFJlYWQgYWNjZXNzIHRvIGEgc3BlY2lmaWMga2V5IGNvbnRlbnQgaW50byBhIHNwZWNpZmljIFMzIGJ1Y2tldC5cbiAgICAqIEJlbG93IGFuIGV4YW1wbGUgb2YgcmVxdWlyZWQgcGVybWlzc2lvbjpcbiAgICAqIHtcbiAgICAqICBcIlZlcnNpb25cIjogXCIyMDEyLTEwLTE3XCIsXG4gICAgKiAgXCJTdGF0ZW1lbnRcIjogW3tcbiAgICAqICAgICAgICBcIkVmZmVjdFwiOiBcIkFsbG93XCIsXG4gICAgKiAgICAgICAgXCJBY3Rpb25cIjogW1xuICAgICogICAgICAgICAgICBcInMzOkdldE9iamVjdFwiLFxuICAgICogICAgICAgICAgICBcInMzOkdldE9iamVjdFZlcnNpb25cIlxuICAgICogICAgICAgIF0sXG4gICAgKiAgICAgICAgXCJSZXNvdXJjZVwiOiBcImFybjphd3M6czM6OjpidWNrZXQtbmFtZS9vYmplY3QtbmFtZVwiXG4gICAgKiAgfV1cbiAgICAqfVxuICAgICpcbiAgICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9zZWN1cml0eV9pYW1faWQtYmFzZWQtcG9saWN5LWV4YW1wbGVzLmh0bWwjc2VjdXJpdHlfaWFtX2lkLWJhc2VkLXBvbGljeS1leGFtcGxlcy1hY2Nlc3Mtc3RvcmFnZS1sb2NcbiAgICAqXG4gICAgKiBAZGVmYXVsdCAtIGEgcm9sZSB3aWxsIGJlIGNyZWF0ZWQgd2l0aCBkZWZhdWx0IHBlcm1pc3Npb25zLlxuICAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBpYW0uSVJvbGU7XG59XG5cbi8qKlxuICogQSBHYW1lTGlmdCBidWlsZCwgdGhhdCBpcyBpbnN0YWxsZWQgYW5kIHJ1bnMgb24gaW5zdGFuY2VzIGluIGFuIEFtYXpvbiBHYW1lTGlmdCBmbGVldC4gSXQgY29uc2lzdHMgb2ZcbiAqIGEgemlwIGZpbGUgd2l0aCBhbGwgb2YgdGhlIGNvbXBvbmVudHMgb2YgdGhlIGdhbWUgc2VydmVyIGJ1aWxkLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1idWlsZC1jbGktdXBsb2FkaW5nLmh0bWxcbiAqXG4gKiBAcmVzb3VyY2UgQVdTOjpHYW1lTGlmdDo6QnVpbGRcbiAqL1xuZXhwb3J0IGNsYXNzIEJ1aWxkIGV4dGVuZHMgQnVpbGRCYXNlIHtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IEJ1aWxkIGZyb20gczMgY29udGVudFxuICAgKi9cbiAgc3RhdGljIGZyb21CdWNrZXQoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYnVja2V0OiBzMy5JQnVja2V0LCBrZXk6IHN0cmluZywgb2JqZWN0VmVyc2lvbj86IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgQnVpbGQoc2NvcGUsIGlkLCB7XG4gICAgICBjb250ZW50OiBDb250ZW50LmZyb21CdWNrZXQoYnVja2V0LCBrZXksIG9iamVjdFZlcnNpb24pLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBCdWlsZCBmcm9tIGFzc2V0IGNvbnRlbnRcbiAgICovXG4gIHN0YXRpYyBmcm9tQXNzZXQoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcGF0aDogc3RyaW5nLCBvcHRpb25zPzogczNfYXNzZXRzLkFzc2V0T3B0aW9ucykge1xuICAgIHJldHVybiBuZXcgQnVpbGQoc2NvcGUsIGlkLCB7XG4gICAgICBjb250ZW50OiBDb250ZW50LmZyb21Bc3NldChwYXRoLCBvcHRpb25zKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgICAqIEltcG9ydCBhIGJ1aWxkIGludG8gQ0RLIHVzaW5nIGl0cyBpZGVudGlmaWVyXG4gICAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRJZChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBidWlsZElkOiBzdHJpbmcpOiBJQnVpbGQge1xuICAgIHJldHVybiB0aGlzLmZyb21CdWlsZEF0dHJpYnV0ZXMoc2NvcGUsIGlkLCB7IGJ1aWxkSWQgfSk7XG4gIH1cblxuICAvKipcbiAgICAgKiBJbXBvcnQgYSBidWlsZCBpbnRvIENESyB1c2luZyBpdHMgQVJOXG4gICAgICovXG4gIHN0YXRpYyBmcm9tQnVpbGRBcm4oc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgYnVpbGRBcm46IHN0cmluZyk6IElCdWlsZCB7XG4gICAgcmV0dXJuIHRoaXMuZnJvbUJ1aWxkQXR0cmlidXRlcyhzY29wZSwgaWQsIHsgYnVpbGRBcm4gfSk7XG4gIH1cblxuICAvKipcbiAgICogSW1wb3J0IGFuIGV4aXN0aW5nIGJ1aWxkIGZyb20gaXRzIGF0dHJpYnV0ZXMuXG4gICAqL1xuICBzdGF0aWMgZnJvbUJ1aWxkQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogQnVpbGRBdHRyaWJ1dGVzKTogSUJ1aWxkIHtcbiAgICBpZiAoIWF0dHJzLmJ1aWxkSWQgJiYgIWF0dHJzLmJ1aWxkQXJuKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBidWlsZElkIG9yIGJ1aWxkQXJuIG11c3QgYmUgcHJvdmlkZWQgaW4gQnVpbGRBdHRyaWJ1dGVzJyk7XG4gICAgfVxuICAgIGNvbnN0IGJ1aWxkSWQgPSBhdHRycy5idWlsZElkID8/XG4gICAgICBjZGsuU3RhY2sub2Yoc2NvcGUpLnNwbGl0QXJuKGF0dHJzLmJ1aWxkQXJuISwgY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG5cbiAgICBpZiAoIWJ1aWxkSWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gYnVpbGQgaWRlbnRpZmllciBmb3VuZCBpbiBBUk46ICcke2F0dHJzLmJ1aWxkQXJufSdgKTtcbiAgICB9XG5cbiAgICBjb25zdCBidWlsZEFybiA9IGF0dHJzLmJ1aWxkQXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2J1aWxkJyxcbiAgICAgIHJlc291cmNlTmFtZTogYXR0cnMuYnVpbGRJZCxcbiAgICAgIGFybkZvcm1hdDogY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgIH0pO1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEJ1aWxkQmFzZSB7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRJZCA9IGJ1aWxkSWQhO1xuICAgICAgcHVibGljIHJlYWRvbmx5IGJ1aWxkQXJuID0gYnVpbGRBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWwgPSBhdHRycy5yb2xlID8/IG5ldyBpYW0uVW5rbm93blByaW5jaXBhbCh7IHJlc291cmNlOiB0aGlzIH0pO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHJvbGUgPSBhdHRycy5yb2xlO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBidWlsZEFybixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGJ1aWxkLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGJ1aWxkSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgYnVpbGQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYnVpbGRBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIElBTSByb2xlIEdhbWVMaWZ0IGFzc3VtZXMgdG8gYWNjY2VzcyBzZXJ2ZXIgYnVpbGQgY29udGVudC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByb2xlOiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmluY2lwYWwgdGhpcyBHYW1lTGlmdCBCdWlsZCBpcyB1c2luZy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEJ1aWxkUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHBoeXNpY2FsTmFtZTogcHJvcHMuYnVpbGROYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLmJ1aWxkTmFtZSAmJiAhY2RrLlRva2VuLmlzVW5yZXNvbHZlZChwcm9wcy5idWlsZE5hbWUpKSB7XG4gICAgICBpZiAocHJvcHMuYnVpbGROYW1lLmxlbmd0aCA+IDEwMjQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBCdWlsZCBuYW1lIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTAyNCBjaGFyYWN0ZXJzIGJ1dCBoYXMgJHtwcm9wcy5idWlsZE5hbWUubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMucm9sZSA9IHByb3BzLnJvbGUgPz8gbmV3IGlhbS5Sb2xlKHRoaXMsICdTZXJ2aWNlUm9sZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdnYW1lbGlmdC5hbWF6b25hd3MuY29tJyksXG4gICAgfSk7XG4gICAgdGhpcy5ncmFudFByaW5jaXBhbCA9IHRoaXMucm9sZTtcbiAgICBjb25zdCBjb250ZW50ID0gcHJvcHMuY29udGVudC5iaW5kKHRoaXMsIHRoaXMucm9sZSk7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDZm5CdWlsZCh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBuYW1lOiBwcm9wcy5idWlsZE5hbWUsXG4gICAgICB2ZXJzaW9uOiBwcm9wcy5idWlsZFZlcnNpb24sXG4gICAgICBvcGVyYXRpbmdTeXN0ZW06IHByb3BzLm9wZXJhdGluZ1N5c3RlbSxcbiAgICAgIHN0b3JhZ2VMb2NhdGlvbjoge1xuICAgICAgICBidWNrZXQ6IGNvbnRlbnQuczNMb2NhdGlvbiAmJiBjb250ZW50LnMzTG9jYXRpb24uYnVja2V0TmFtZSxcbiAgICAgICAga2V5OiBjb250ZW50LnMzTG9jYXRpb24gJiYgY29udGVudC5zM0xvY2F0aW9uLm9iamVjdEtleSxcbiAgICAgICAgb2JqZWN0VmVyc2lvbjogY29udGVudC5zM0xvY2F0aW9uICYmIGNvbnRlbnQuczNMb2NhdGlvbi5vYmplY3RWZXJzaW9uLFxuICAgICAgICByb2xlQXJuOiB0aGlzLnJvbGUucm9sZUFybixcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICByZXNvdXJjZS5ub2RlLmFkZERlcGVuZGVuY3kodGhpcy5yb2xlKTtcblxuICAgIHRoaXMuYnVpbGRJZCA9IHRoaXMuZ2V0UmVzb3VyY2VOYW1lQXR0cmlidXRlKHJlc291cmNlLnJlZik7XG4gICAgdGhpcy5idWlsZEFybiA9IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2J1aWxkJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5idWlsZElkLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gIH1cblxuXG59XG4iXX0=
|
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.60.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.60.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.60.0-alpha.0" };
|
|
113
113
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbnRlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyQ0FBMkM7QUFDM0MseUNBQXlDO0FBQ3pDLHVEQUF1RDtBQUN2RCxtQ0FBbUM7QUFHbkM7OztHQUdHO0FBQ0gsTUFBc0IsT0FBTztJQUMzQjs7Ozs7U0FLSztJQUNFLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBa0IsRUFBRSxHQUFXLEVBQUUsYUFBc0I7UUFDOUUsT0FBTyxJQUFJLFNBQVMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0tBQ2xEO0lBR0Q7Ozs7U0FJSztJQUNFLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBWSxFQUFFLE9BQWdDO1FBQ3BFLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0tBQ3hDOztBQW5CSCwwQkEwQkM7OztBQVlEOztHQUVHO0FBQ0gsTUFBYSxTQUFVLFNBQVEsT0FBTztJQUVwQyxZQUE2QixNQUFrQixFQUFVLEdBQVcsRUFBVSxhQUFzQjtRQUNsRyxLQUFLLEVBQUUsQ0FBQztRQURtQixXQUFNLEdBQU4sTUFBTSxDQUFZO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBRWxHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFO1lBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELENBQUMsQ0FBQztTQUNwRTtLQUNGO0lBRU0sSUFBSSxDQUFDLE1BQWlCLEVBQUUsSUFBZTtRQUM1QywrQ0FBK0M7UUFDL0MsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsQ0FBQztZQUNoRCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLO1lBQ3hCLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNoRCxPQUFPLEVBQUUsQ0FBQyxjQUFjLEVBQUUscUJBQXFCLENBQUM7U0FDakQsQ0FBQyxDQUFDLENBQUM7UUFFSixPQUFPO1lBQ0wsVUFBVSxFQUFFO2dCQUNWLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVU7Z0JBQ2xDLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRztnQkFDbkIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO2FBQ2xDO1NBQ0YsQ0FBQztLQUNIOztBQXhCSCw4QkF5QkM7OztBQUVEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsT0FBTztJQUd2Qzs7T0FFRztJQUNILFlBQTRCLElBQVksRUFBbUIsVUFBa0MsRUFBRztRQUM5RixLQUFLLEVBQUUsQ0FBQztRQURrQixTQUFJLEdBQUosSUFBSSxDQUFRO1FBQW1CLFlBQU8sR0FBUCxPQUFPLENBQThCO0tBRS9GO0lBRU0sSUFBSSxDQUFDLEtBQWdCLEVBQUUsSUFBZTtRQUMzQyx3RkFBd0Y7UUFDeEYsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFO2dCQUNqRCxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7Z0JBQ2YsR0FBRyxJQUFJLENBQUMsT0FBTzthQUNoQixDQUFDLENBQUM7U0FDSjthQUFNLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzNELE1BQU0sSUFBSSxLQUFLLENBQUMsbURBQW1ELEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEtBQUs7Z0JBQ3hHLGdEQUFnRCxDQUFDLENBQUM7U0FDckQ7UUFDRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFdkYsK0NBQStDO1FBQy9DLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUM7WUFDaEQsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSztZQUN4QixTQUFTLEVBQUUsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDekQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLHFCQUFxQixDQUFDO1NBQ2pELENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFO1lBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1NBQzVFO1FBRUQsT0FBTztZQUNMLFVBQVUsRUFBRTtnQkFDVixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO2dCQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2FBQ2xDO1NBQ0YsQ0FBQztLQUNIOztBQXhDSCxvQ0F5Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBzMyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0ICogYXMgczNfYXNzZXRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMy1hc3NldHMnO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4vKipcbiAqIEJlZm9yZSBkZXBsb3lpbmcgeW91ciBHYW1lTGlmdC1lbmFibGVkIG11bHRpcGxheWVyIGdhbWUgc2VydmVycyBmb3IgaG9zdGluZyB3aXRoIHRoZSBHYW1lTGlmdCBzZXJ2aWNlLCB5b3UgbmVlZCB0byB1cGxvYWQgeW91ciBnYW1lIHNlcnZlciBmaWxlcy5cbiAqIFRoZSBjbGFzcyBoZWxwcyB5b3Ugb24gcHJlcGFyaW5nIGFuZCB1cGxvYWRpbmcgY3VzdG9tIGdhbWUgc2VydmVyIGJ1aWxkIGZpbGVzIG9yIFJlYWx0aW1lIFNlcnZlcnMgc2VydmVyIHNjcmlwdCBmaWxlcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIENvbnRlbnQge1xuICAvKipcbiAgICAgKiBHYW1lIGNvbnRlbnQgYXMgYW4gUzMgb2JqZWN0LlxuICAgICAqIEBwYXJhbSBidWNrZXQgVGhlIFMzIGJ1Y2tldFxuICAgICAqIEBwYXJhbSBrZXkgVGhlIG9iamVjdCBrZXlcbiAgICAgKiBAcGFyYW0gb2JqZWN0VmVyc2lvbiBPcHRpb25hbCBTMyBvYiBqZWN0IHZlcnNpb25cbiAgICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQnVja2V0KGJ1Y2tldDogczMuSUJ1Y2tldCwga2V5OiBzdHJpbmcsIG9iamVjdFZlcnNpb24/OiBzdHJpbmcpOiBTM0NvbnRlbnQge1xuICAgIHJldHVybiBuZXcgUzNDb250ZW50KGJ1Y2tldCwga2V5LCBvYmplY3RWZXJzaW9uKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAgICogTG9hZHMgdGhlIGdhbWUgY29udGVudCBmcm9tIGEgbG9jYWwgZGlzayBwYXRoLlxuICAgICAqXG4gICAgICogQHBhcmFtIHBhdGggRWl0aGVyIGEgZGlyZWN0b3J5IHdpdGggdGhlIGdhbWUgY29udGVudCBidW5kbGUgb3IgYSAuemlwIGZpbGVcbiAgICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQXNzZXQocGF0aDogc3RyaW5nLCBvcHRpb25zPzogczNfYXNzZXRzLkFzc2V0T3B0aW9ucyk6IEFzc2V0Q29udGVudCB7XG4gICAgcmV0dXJuIG5ldyBBc3NldENvbnRlbnQocGF0aCwgb3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICAgKiBDYWxsZWQgd2hlbiB0aGUgQnVpbGQgaXMgaW5pdGlhbGl6ZWQgdG8gYWxsb3cgdGhpcyBvYmplY3QgdG8gYmluZFxuICAgICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgYmluZChzY29wZTogQ29uc3RydWN0LCByb2xlOiBpYW0uSVJvbGUpOiBDb250ZW50Q29uZmlnO1xuXG59XG5cbi8qKlxuICogUmVzdWx0IG9mIGJpbmRpbmcgYENvbnRlbnRgIGludG8gYSBgQnVpbGRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRlbnRDb25maWcge1xuICAvKipcbiAgICogVGhlIGxvY2F0aW9uIG9mIHRoZSBjb250ZW50IGluIFMzLlxuICAgKi9cbiAgcmVhZG9ubHkgczNMb2NhdGlvbjogczMuTG9jYXRpb247XG59XG5cbi8qKlxuICogR2FtZSBjb250ZW50IGZyb20gYW4gUzMgYXJjaGl2ZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFMzQ29udGVudCBleHRlbmRzIENvbnRlbnQge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYnVja2V0OiBzMy5JQnVja2V0LCBwcml2YXRlIGtleTogc3RyaW5nLCBwcml2YXRlIG9iamVjdFZlcnNpb24/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.
|
|
274
|
+
FleetBase[_a] = { fqn: "@aws-cdk/aws-gamelift-alpha.FleetBase", version: "2.60.0-alpha.0" };
|
|
275
275
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxlZXQtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZsZWV0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEseURBQXlEO0FBRXpELDJDQUEyQztBQUMzQyxtQ0FBbUM7QUFFbkMsbUNBQThDO0FBRTlDLDJGQUFzRTtBQTBZdEU7O0dBRUc7QUFDSCxNQUFzQixTQUFVLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFBcEQ7O1FBbURtQixjQUFTLEdBQWUsRUFBRSxDQUFDO0tBaU03QztJQWxQQzs7T0FFRztJQUNILE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFzQjs7Ozs7Ozs7OztRQUM3RSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFDckMsTUFBTSxJQUFJLEtBQUssQ0FBQyxnRUFBZ0UsQ0FBQyxDQUFDO1NBQ25GO1FBQ0QsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU87WUFDM0IsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFlBQVksQ0FBQztRQUVoRyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsS0FBSyxDQUFDLFFBQVEsR0FBRyxDQUFDLENBQUM7U0FDMUU7UUFFRCxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUMvRCxPQUFPLEVBQUUsVUFBVTtZQUNuQixRQUFRLEVBQUUsT0FBTztZQUNqQixZQUFZLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDM0IsU0FBUyxFQUFFLEdBQUcsQ0FBQyxT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O1lBQ2xFLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTztZQUNMLG1DQUFtQyxFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyw0QkFBNEIsRUFBRSxTQUFTLEVBQUU7WUFDekcsbUNBQW1DLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLG1DQUFtQztZQUNuRyxlQUFlLEVBQUUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUM7U0FDcEYsQ0FBQztRQUVGLFNBQVMsa0JBQWtCLENBQUMsYUFBNEI7WUFDdEQsT0FBTztnQkFDTCxVQUFVLEVBQUUsYUFBYSxDQUFDLFVBQVU7Z0JBQ3BDLFVBQVUsRUFBRSxhQUFhLENBQUMsVUFBVTtnQkFDcEMsb0JBQW9CLEVBQUUsYUFBYSxDQUFDLG9CQUFvQixJQUFJLENBQUM7YUFDOUQsQ0FBQztRQUNKLENBQUM7S0FDRjtJQUVTLDRCQUE0QixDQUFDLEtBQWdCO1FBQ3JELEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQztZQUNuQywwSkFBMEo7WUFDMUosNEVBQTRFO1lBQzVFLGtGQUFrRjtTQUNuRixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0tBQ2Y7O0FBblBILDhCQW9QQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGNsb3Vkd2F0Y2ggZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0ICogYXMgaWFtIGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQWxpYXMsIEFsaWFzT3B0aW9ucyB9IGZyb20gJy4vYWxpYXMnO1xuaW1wb3J0IHsgSUdhbWVTZXNzaW9uUXVldWVEZXN0aW5hdGlvbiB9IGZyb20gJy4vZ2FtZS1zZXNzaW9uLXF1ZXVlJztcbmltcG9ydCB7IEdhbWVMaWZ0TWV0cmljcyB9IGZyb20gJy4vZ2FtZWxpZnQtY2FubmVkLW1ldHJpY3MuZ2VuZXJhdGVkJztcbmltcG9ydCB7IENmbkZsZWV0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWdhbWVsaWZ0JztcblxuXG4vKipcbiAqIEN1cnJlbnQgcmVzb3VyY2UgY2FwYWNpdHkgc2V0dGluZ3MgaW4gYSBzcGVjaWZpZWQgZmxlZXQgb3IgbG9jYXRpb24uXG4gKiBUaGUgbG9jYXRpb24gdmFsdWUgbWlnaHQgcmVmZXIgdG8gYSBmbGVldCdzIHJlbW90ZSBsb2NhdGlvbiBvciBpdHMgaG9tZSBSZWdpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9jYXRpb25DYXBhY2l0eSB7XG4gIC8qKlxuICAgICAgICogVGhlIG51bWJlciBvZiBBbWF6b24gRUMyIGluc3RhbmNlcyB5b3Ugd2FudCB0byBtYWludGFpbiBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgICAgICogVGhpcyB2YWx1ZSBtdXN0IGZhbGwgYmV0d2VlbiB0aGUgbWluaW11bSBhbmQgbWF4aW11bSBzaXplIGxpbWl0cy5cbiAgICAgICAqXG4gICAgICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCB2YWx1ZSBpcyAwXG4gICAgICAgKi9cbiAgcmVhZG9ubHkgZGVzaXJlZENhcGFjaXR5PzogbnVtYmVyO1xuICAvKipcbiAgICAgICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgICAgICpcbiAgICAgICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IHZhbHVlIGlzIDFcbiAgICAgICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuICAvKipcbiAgICAgICAqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgICAgICpcbiAgICAgICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IHZhbHVlIGlzIDBcbiAgICAgICAqL1xuICByZWFkb25seSBtaW5TaXplPzogbnVtYmVyO1xufVxuXG4vKipcbiAgICogQSByZW1vdGUgbG9jYXRpb24gd2hlcmUgYSBtdWx0aS1sb2NhdGlvbiBmbGVldCBjYW4gZGVwbG95IEVDMiBpbnN0YW5jZXMgZm9yIGdhbWUgaG9zdGluZy5cbiAgICovXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uIHtcbiAgLyoqXG4gICAgICAgKiBBbiBBV1MgUmVnaW9uIGNvZGVcbiAgICAgICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcbiAgLyoqXG4gICAgICogQ3VycmVudCByZXNvdXJjZSBjYXBhY2l0eSBzZXR0aW5ncyBpbiBhIHNwZWNpZmllZCBmbGVldCBvciBsb2NhdGlvbi5cbiAgICAgKiBUaGUgbG9jYXRpb24gdmFsdWUgbWlnaHQgcmVmZXIgdG8gYSBmbGVldCdzIHJlbW90ZSBsb2NhdGlvbiBvciBpdHMgaG9tZSBSZWdpb24uXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBubyBjYXBhY2l0eSBzZXR0aW5ncyBvbiB0aGUgc3BlY2lmaWVkIGxvY2F0aW9uXG4gICAgICovXG4gIHJlYWRvbmx5IGNhcGFjaXR5PzogTG9jYXRpb25DYXBhY2l0eTtcbn1cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9mIGEgZmxlZXQgc2VydmVyIHByb2Nlc3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZXJQcm9jZXNzIHtcbiAgLyoqXG4gICAgICAgKiBUaGUgbnVtYmVyIG9mIHNlcnZlciBwcm9jZXNzZXMgdXNpbmcgdGhpcyBjb25maWd1cmF0aW9uIHRoYXQgcnVuIGNvbmN1cnJlbnRseSBvbiBlYWNoIGluc3RhbmNlLlxuICAgICAgICogTWluaW11bSBpcyBgMWBcbiAgICAgICAqXG4gICAgICAgKiBAZGVmYXVsdCAxXG4gICAgICAgKi9cbiAgcmVhZG9ubHkgY29uY3VycmVudEV4ZWN1dGlvbnM/OiBudW1iZXI7XG4gIC8qKlxuICAgICAgICogVGhlIGxvY2F0aW9uIG9mIGEgZ2FtZSBidWlsZCBleGVjdXRhYmxlIG9yIHRoZSBSZWFsdGltZSBzY3JpcHQgZmlsZSB0aGF0IGNvbnRhaW5zIHRoZSBJbml0KCkgZnVuY3Rpb24uIEdhbWUgYnVpbGRzIGFuZCBSZWFsdGltZSBzY3JpcHRzIGFyZSBpbnN0YWxsZWQgb24gaW5zdGFuY2VzIGF0IHRoZSByb290OlxuICAgICAgICogLSBXaW5kb3dzIChjdXN0b20gZ2FtZSBidWlsZHMgb25seSk6IGBDOlxcZ2FtZWAuIEV4YW1wbGU6IGBDOlxcZ2FtZVxcTXlHYW1lXFxzZXJ2ZXIuZXhlYFxuICAgICAgICogLSBMaW51eDogYC9sb2NhbC9nYW1lYC4gRXhhbXBsZXM6IGAvbG9jYWwvZ2FtZS9NeUdhbWUvc2VydmVyLmV4ZWAgb3IgYC9sb2NhbC9nYW1lL015UmVhbHRpbWVTY3JpcHQuanNgXG4gICAgICAgKi9cbiAgcmVhZG9ubHkgbGF1bmNoUGF0aDogc3RyaW5nO1xuXG4gIC8qKlxuICAgICAgICogQW4gb3B0aW9uYWwgbGlzdCBvZiBwYXJhbWV0ZXJzIHRvIHBhc3MgdG8gdGhlIHNlcnZlciBleGVjdXRhYmxlIG9yIFJlYWx0aW1lIHNjcmlwdCBvbiBsYXVuY2guXG4gICAgICAgKlxuICAgICAgICogQGRlZmF1bHQgbm8gcGFyYW1ldGVyc1xuICAgICAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBzdHJpbmc7XG59XG5cbi8qKlxuICAgKiBBIGNvbGxlY3Rpb24gb2Ygc2VydmVyIHByb2Nlc3MgY29uZmlndXJhdGlvbnMgdGhhdCBkZXNjcmliZSB0aGUgc2V0IG9mIHByb2Nlc3NlcyB0byBydW4gb24gZWFjaCBpbnN0YW5jZSBpbiBhIGZsZWV0LlxuICAgKiBTZXJ2ZXIgcHJvY2Vzc2VzIHJ1biBlaXRoZXIgYW4gZXhlY3V0YWJsZSBpbiBhIGN1c3RvbSBnYW1lIGJ1aWxkIG9yIGEgUmVhbHRpbWUgU2VydmVycyBzY3JpcHQuXG4gICAqIEdhbWVMaWZ0IGxhdW5jaGVzIHRoZSBjb25maWd1cmVkIHByb2Nlc3NlcywgbWFuYWdlcyB0aGVpciBsaWZlIGN5Y2xlLCBhbmQgcmVwbGFjZXMgdGhlbSBhcyBuZWVkZWQuXG4gICAqIEVhY2ggaW5zdGFuY2UgY2hlY2tzIHJlZ3VsYXJseSBmb3IgYW4gdXBkYXRlZCBydW50aW1lIGNvbmZpZ3VyYXRpb24uXG4gICAqXG4gICAqIEEgR2FtZUxpZnQgaW5zdGFuY2UgaXMgbGltaXRlZCB0byA1MCBwcm9jZXNzZXMgcnVubmluZyBjb25jdXJyZW50bHkuXG4gICAqIFRvIGNhbGN1bGF0ZSB0aGUgdG90YWwgbnVtYmVyIG9mIHByb2Nlc3NlcyBpbiBhIHJ1bnRpbWUgY29uZmlndXJhdGlvbiwgYWRkIHRoZSB2YWx1ZXMgb2YgdGhlIGBDb25jdXJyZW50RXhlY3V0aW9uc2AgcGFyYW1ldGVyIGZvciBlYWNoIGBTZXJ2ZXJQcm9jZXNzYC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ZsZWV0cy1tdWx0aXByb2Nlc3MuaHRtbFxuICAgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUnVudGltZUNvbmZpZ3VyYXRpb24ge1xuICAvKipcbiAgICAgICAqIFRoZSBtYXhpbXVtIGFtb3VudCBvZiB0aW1lIGFsbG93ZWQgdG8gbGF1bmNoIGEgbmV3IGdhbWUgc2Vzc2lvbiBhbmQgaGF2ZSBpdCByZXBvcnQgcmVhZHkgdG8gaG9zdCBwbGF5ZXJzLlxuICAgICAgICogRHVyaW5nIHRoaXMgdGltZSwgdGhlIGdhbWUgc2Vzc2lvbiBpcyBpbiBzdGF0dXMgYEFDVElWQVRJTkdgLlxuICAgICAgICpcbiAgICAgICAqIElmIHRoZSBnYW1lIHNlc3Npb24gZG9lcyBub3QgYmVjb21lIGFjdGl2ZSBiZWZvcmUgdGhlIHRpbWVvdXQsIGl0IGlzIGVuZGVkIGFuZCB0aGUgZ2FtZSBzZXNzaW9uIHN0YXR1cyBpcyBjaGFuZ2VkIHRvIGBURVJNSU5BVEVEYC5cbiAgICAgICAqXG4gICAgICAgKiBAZGVmYXVsdCBieSBkZWZhdWx0IGdhbWUgc2Vzc2lvbiBhY3RpdmF0aW9uIHRpbWVvdXQgaXMgMzAwIHNlY29uZHNcbiAgICAgICAqL1xuICByZWFkb25seSBnYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0PzogY2RrLkR1cmF0aW9uO1xuICAvKipcbiAgICAgICAqIFRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBpbiBzdGF0dXMgYEFDVElWQVRJTkdgIHRvIGFsbG93IG9uIGFuIGluc3RhbmNlLlxuICAgICAgICpcbiAgICAgICAqIFRoaXMgc2V0dGluZyBsaW1pdHMgdGhlIGluc3RhbmNlIHJlc291cmNlcyB0aGF0IGNhbiBiZSB1c2VkIGZvciBuZXcgZ2FtZSBhY3RpdmF0aW9ucyBhdCBhbnkgb25lIHRpbWUuXG4gICAgICAgKlxuICAgICAgICogQGRlZmF1bHQgbm8gbGltaXRcbiAgICAgICAqL1xuICByZWFkb25seSBtYXhDb25jdXJyZW50R2FtZVNlc3Npb25BY3RpdmF0aW9ucz86IG51bWJlcjtcblxuICAvKipcbiAgICAgICAqIEEgY29sbGVjdGlvbiBvZiBzZXJ2ZXIgcHJvY2VzcyBjb25maWd1cmF0aW9ucyB0aGF0IGlkZW50aWZ5IHdoYXQgc2VydmVyIHByb2Nlc3NlcyB0byBydW4gb24gZWFjaCBpbnN0YW5jZSBpbiBhIGZsZWV0LlxuICAgICAgICovXG4gIHJlYWRvbmx5IHNlcnZlclByb2Nlc3NlczogU2VydmVyUHJvY2Vzc1tdO1xufVxuXG4vKipcbiAqIEEgcG9saWN5IHRoYXQgbGltaXRzIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyBhIHBsYXllciBjYW4gY3JlYXRlIG9uIHRoZSBzYW1lIGZsZWV0LlxuICogVGhpcyBvcHRpb25hbCBwb2xpY3kgZ2l2ZXMgZ2FtZSBvd25lcnMgY29udHJvbCBvdmVyIGhvdyBwbGF5ZXJzIGNhbiBjb25zdW1lIGF2YWlsYWJsZSBnYW1lIHNlcnZlciByZXNvdXJjZXMuXG4gKiBBIHJlc291cmNlIGNyZWF0aW9uIHBvbGljeSBtYWtlcyB0aGUgZm9sbG93aW5nIHN0YXRlbWVudDogXCJBbiBpbmRpdmlkdWFsIHBsYXllciBjYW4gY3JlYXRlIGEgbWF4aW11bSBudW1iZXIgb2YgbmV3IGdhbWUgc2Vzc2lvbnMgd2l0aGluIGEgc3BlY2lmaWVkIHRpbWUgcGVyaW9kXCIuXG4gKlxuICogVGhlIHBvbGljeSBpcyBldmFsdWF0ZWQgd2hlbiBhIHBsYXllciB0cmllcyB0byBjcmVhdGUgYSBuZXcgZ2FtZSBzZXNzaW9uLlxuICogRm9yIGV4YW1wbGUsIGFzc3VtZSB5b3UgaGF2ZSBhIHBvbGljeSBvZiAxMCBuZXcgZ2FtZSBzZXNzaW9ucyBhbmQgYSB0aW1lIHBlcmlvZCBvZiA2MCBtaW51dGVzLlxuICogT24gcmVjZWl2aW5nIGEgYENyZWF0ZUdhbWVTZXNzaW9uYCByZXF1ZXN0LCBBbWF6b24gR2FtZUxpZnQgY2hlY2tzIHRoYXQgdGhlIHBsYXllciAoaWRlbnRpZmllZCBieSBDcmVhdG9ySWQpIGhhcyBjcmVhdGVkIGZld2VyIHRoYW4gMTAgZ2FtZSBzZXNzaW9ucyBpbiB0aGUgcGFzdCA2MCBtaW51dGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeSB7XG4gIC8qKlxuICAgICAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGdhbWUgc2Vzc2lvbnMgdGhhdCBhbiBpbmRpdmlkdWFsIGNhbiBjcmVhdGUgZHVyaW5nIHRoZSBwb2xpY3kgcGVyaW9kLlxuICAgICAgICpcbiAgICAgICAqIEBkZWZhdWx0IG5vIGxpbWl0IG9uIHRoZSBudW1iZXIgb2YgZ2FtZSBzZXNzaW9ucyB0aGF0IGFuIGluZGl2aWR1YWwgY2FuIGNyZWF0ZSBkdXJpbmcgdGhlIHBvbGljeSBwZXJpb2RcbiAgICAgICAqL1xuICByZWFkb25seSBuZXdHYW1lU2Vzc2lvbnNQZXJDcmVhdG9yPzogbnVtYmVyO1xuICAvKipcbiAgICAgKiBUaGUgdGltZSBzcGFuIHVzZWQgaW4gZXZhbHVhdGluZyB0aGUgcmVzb3VyY2UgY3JlYXRpb24gbGltaXQgcG9saWN5LlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgbm8gcG9saWN5IHBlcmlvZFxuICAgICAqL1xuICByZWFkb25seSBwb2xpY3lQZXJpb2Q/OiBjZGsuRHVyYXRpb24sXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIEdhbWVsaWZ0IGZsZWV0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUZsZWV0IGV4dGVuZHMgY2RrLklSZXNvdXJjZSwgaWFtLklHcmFudGFibGUsIElHYW1lU2Vzc2lvblF1ZXVlRGVzdGluYXRpb24ge1xuICAvKipcbiAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBmbGVldElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBmbGVldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBHcmFudCB0aGUgYGdyYW50ZWVgIGlkZW50aXR5IHBlcm1pc3Npb25zIHRvIHBlcmZvcm0gYGFjdGlvbnNgLlxuICAgKi9cbiAgZ3JhbnQoZ3JhbnRlZTogaWFtLklHcmFudGFibGUsIC4uLmFjdGlvbnM6IHN0cmluZ1tdKTogaWFtLkdyYW50O1xuXG4gIC8qKlxuICAgKiBSZXR1cm4gdGhlIGdpdmVuIG5hbWVkIG1ldHJpYyBmb3IgdGhpcyBmbGVldC5cbiAgICovXG4gIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEluc3RhbmNlcyB3aXRoIGBBQ1RJVkVgIHN0YXR1cywgd2hpY2ggbWVhbnMgdGhleSBhcmUgcnVubmluZyBhY3RpdmUgc2VydmVyIHByb2Nlc3Nlcy5cbiAgICogVGhlIGNvdW50IGluY2x1ZGVzIGlkbGUgaW5zdGFuY2VzIGFuZCB0aG9zZSB0aGF0IGFyZSBob3N0aW5nIG9uZSBvciBtb3JlIGdhbWUgc2Vzc2lvbnMuXG4gICAqIFRoaXMgbWV0cmljIG1lYXN1cmVzIGN1cnJlbnQgdG90YWwgaW5zdGFuY2UgY2FwYWNpdHkuXG4gICAqXG4gICAqIFRoaXMgbWV0cmljIGNhbiBiZSB1c2VkIHdpdGggYXV0b21hdGljIHNjYWxpbmcuXG4gICAqL1xuICBtZXRyaWNBY3RpdmVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogUGVyY2VudGFnZSBvZiBhbGwgYWN0aXZlIGluc3RhbmNlcyB0aGF0IGFyZSBpZGxlIChjYWxjdWxhdGVkIGFzIElkbGVJbnN0YW5jZXMgLyBBY3RpdmVJbnN0YW5jZXMpLlxuICAgKiBUaGlzIG1ldHJpYyBjYW4gYmUgdXNlZCBmb3IgYXV0b21hdGljIHNjYWxpbmcuXG4gICAqL1xuICBtZXRyaWNQZXJjZW50SWRsZUluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBUYXJnZXQgbnVtYmVyIG9mIGFjdGl2ZSBpbnN0YW5jZXMgdGhhdCBHYW1lTGlmdCBpcyB3b3JraW5nIHRvIG1haW50YWluIGluIHRoZSBmbGVldC5cbiAgICogV2l0aCBhdXRvbWF0aWMgc2NhbGluZywgdGhpcyB2YWx1ZSBpcyBkZXRlcm1pbmVkIGJhc2VkIG9uIHRoZSBzY2FsaW5nIHBvbGljaWVzIGN1cnJlbnRseSBpbiBmb3JjZS5cbiAgICogV2l0aG91dCBhdXRvbWF0aWMgc2NhbGluZywgdGhpcyB2YWx1ZSBpcyBzZXQgbWFudWFsbHkuXG4gICAqIFRoaXMgbWV0cmljIGlzIG5vdCBhdmFpbGFibGUgd2hlbiB2aWV3aW5nIGRhdGEgZm9yIGZsZWV0IG1ldHJpYyBncm91cHMuXG4gICAqL1xuICBtZXRyaWNEZXNpcmVkSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIEFjdGl2ZSBpbnN0YW5jZXMgdGhhdCBhcmUgY3VycmVudGx5IGhvc3RpbmcgemVybyAoMCkgZ2FtZSBzZXNzaW9ucy5cbiAgICogVGhpcyBtZXRyaWMgbWVhc3VyZXMgY2FwYWNpdHkgdGhhdCBpcyBhdmFpbGFibGUgYnV0IHVudXNlZC5cbiAgICogVGhpcyBtZXRyaWMgY2FuIGJlIHVzZWQgd2l0aCBhdXRvbWF0aWMgc2NhbGluZy5cbiAgICovXG4gIG1ldHJpY0lkbGVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcblxuICAvKipcbiAgICogTnVtYmVyIG9mIHNwb3QgaW5zdGFuY2VzIHRoYXQgaGF2ZSBiZWVuIGludGVycnVwdGVkLlxuICAgKi9cbiAgbWV0cmljSW5zdGFuY2VJbnRlcnJ1cHRpb25zKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWM7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBhbGxvd2VkIGZvciB0aGUgZmxlZXQuXG4gICAqIEEgZmxlZXQncyBpbnN0YW5jZSBtYXhpbXVtIGRldGVybWluZXMgdGhlIGNhcGFjaXR5IGNlaWxpbmcgZHVyaW5nIG1hbnVhbCBvciBhdXRvbWF0aWMgc2NhbGluZyB1cC5cbiAgICogVGhpcyBtZXRyaWMgaXMgbm90IGF2YWlsYWJsZSB3aGVuIHZpZXdpbmcgZGF0YSBmb3IgZmxlZXQgbWV0cmljIGdyb3Vwcy5cbiAgICovXG4gIG1ldHJpY01heEluc3RhbmNlcyhwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljO1xuXG4gIC8qKlxuICAgKiBNaW5pbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgYWxsb3dlZCBmb3IgdGhlIGZsZWV0LlxuICAgKiBBIGZsZWV0J3MgaW5zdGFuY2UgbWluaW11bSBkZXRlcm1pbmVzIHRoZSBjYXBhY2l0eSBmbG9vciBkdXJpbmcgbWFudWFsIG9yIGF1dG9tYXRpYyBzY2FsaW5nIGRvd24uXG4gICAqIFRoaXMgbWV0cmljIGlzIG5vdCBhdmFpbGFibGUgd2hlbiB2aWV3aW5nIGRhdGEgZm9yIGZsZWV0IG1ldHJpYyBncm91cHMuXG4gICAqL1xuICBtZXRyaWNNaW5JbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBHYW1lbGlmdCBmbGVldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZsZWV0UHJvcHMge1xuXG4gIC8qKlxuICAgICAqIEEgZGVzY3JpcHRpdmUgbGFiZWwgdGhhdCBpcyBhc3NvY2lhdGVkIHdpdGggYSBmbGVldC4gRmxlZXQgbmFtZXMgZG8gbm90IG5lZWQgdG8gYmUgdW5pcXVlLlxuICAgICAqL1xuICByZWFkb25seSBmbGVldE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQSBodW1hbi1yZWFkYWJsZSBkZXNjcmlwdGlvbiBvZiB0aGUgZmxlZXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGRlc2NyaXB0aW9uIGlzIHByb3ZpZGVkXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdG8gdXNlIE9uLURlbWFuZCBvciBTcG90IGluc3RhbmNlcyBmb3IgdGhpcyBmbGVldC5cbiAgICogQnkgZGVmYXVsdCwgZmxlZXQgdXNlIG9uIGRlbWFuZCBjYXBhY2l0eS5cbiAgICpcbiAgICogVGhpcyBwcm9wZXJ0eSBjYW5ub3QgYmUgY2hhbmdlZCBhZnRlciB0aGUgZmxlZXQgaXMgY3JlYXRlZC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2dhbWVsaWZ0LWVjMi1pbnN0YW5jZXMuaHRtbCNnYW1lbGlmdC1lYzItaW5zdGFuY2VzLXNwb3RcbiAgICpcbiAgICogQGRlZmF1bHQgR2FtZWxpZnQgZmxlZXQgdXNlIG9uIGRlbWFuZCBjYXBhY2l0eVxuICAgKi9cbiAgcmVhZG9ubHkgdXNlU3BvdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFByb21wdHMgR2FtZUxpZnQgdG8gZ2VuZXJhdGUgYSBUTFMvU1NMIGNlcnRpZmljYXRlIGZvciB0aGUgZmxlZXQuXG4gICAqIEdhbWVMaWZ0IHVzZXMgdGhlIGNlcnRpZmljYXRlcyB0byBlbmNyeXB0IHRyYWZmaWMgYmV0d2VlbiBnYW1lIGNsaWVudHMgYW5kIHRoZSBnYW1lIHNlcnZlcnMgcnVubmluZyBvbiBHYW1lTGlmdC5cbiAgICpcbiAgICogWW91IGNhbid0IGNoYW5nZSB0aGlzIHByb3BlcnR5IGFmdGVyIHlvdSBjcmVhdGUgdGhlIGZsZWV0LlxuICAgKlxuICAgKiBBZGRpdGlvbm5hbCBpbmZvOlxuICAgKiBBV1MgQ2VydGlmaWNhdGUgTWFuYWdlciAoQUNNKSBjZXJ0aWZpY2F0ZXMgZXhwaXJlIGFmdGVyIDEzIG1vbnRocy5cbiAgICogQ2VydGlmaWNhdGUgZXhwaXJhdGlvbiBjYW4gY2F1c2UgZmxlZXRzIHRvIGZhaWwsIHByZXZlbnRpbmcgcGxheWVycyBmcm9tIGNvbm5lY3RpbmcgdG8gaW5zdGFuY2VzIGluIHRoZSBmbGVldC5cbiAgICogV2UgcmVjb21tZW5kIHlvdSByZXBsYWNlIGZsZWV0cyBiZWZvcmUgMTMgbW9udGhzLCBjb25zaWRlciB1c2luZyBmbGVldCBhbGlhc2VzIGZvciBhIHNtb290aCB0cmFuc2l0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBUTFMvU1NMIGNlcnRpZmljYXRlIGFyZSBnZW5lcmF0ZWQgZm9yIHRoZSBmbGVldFxuICAgKi9cbiAgcmVhZG9ubHkgdXNlQ2VydGlmaWNhdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgICogVGhlIElBTSByb2xlIGFzc3VtZWQgYnkgR2FtZUxpZnQgZmxlZXQgaW5zdGFuY2VzIHRvIGFjY2VzcyBBV1MgcmVzc291cmNlcy5cbiAgICAqIFdpdGggYSByb2xlIHNldCwgYW55IGFwcGxpY2F0aW9uIHRoYXQgcnVucyBvbiBhbiBpbnN0YW5jZSBpbiB0aGlzIGZsZWV0IGNhbiBhc3N1bWUgdGhlIHJvbGUsIGluY2x1ZGluZyBpbnN0YWxsIHNjcmlwdHMsIHNlcnZlciBwcm9jZXNzZXMsIGFuZCBkYWVtb25zIChiYWNrZ3JvdW5kIHByb2Nlc3NlcykuXG4gICAgKiBJZiBwcm92aWRpbmcgYSBjdXN0b20gcm9sZSwgaXQgbmVlZHMgdG8gdHJ1c3QgdGhlIEdhbWVMaWZ0IHNlcnZpY2UgcHJpbmNpcGFsIChnYW1lbGlmdC5hbWF6b25hd3MuY29tKS5cbiAgICAqIE5vIHBlcm1pc3Npb24gaXMgcmVxdWlyZWQgYnkgZGVmYXVsdC5cbiAgICAqXG4gICAgKiBUaGlzIHByb3BlcnR5IGNhbm5vdCBiZSBjaGFuZ2VkIGFmdGVyIHRoZSBmbGVldCBpcyBjcmVhdGVkLlxuICAgICpcbiAgICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS9nYW1lbGlmdC1zZGstc2VydmVyLXJlc291cmNlcy5odG1sXG4gICAgKlxuICAgICogQGRlZmF1bHQgLSBhIHJvbGUgd2lsbCBiZSBjcmVhdGVkIHdpdGggZGVmYXVsdCB0cnVzdCB0byBHYW1lbGlmdCBzZXJ2aWNlIHByaW5jaXBhbC5cbiAgICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xuXG4gIC8qKlxuICAgKiBBIFZQQyBwZWVyaW5nIGNvbm5lY3Rpb24gYmV0d2VlbiB5b3VyIEdhbWVMaWZ0LWhvc3RlZCBnYW1lIHNlcnZlcnMgYW5kIHlvdXIgb3RoZXIgbm9uLUdhbWVMaWZ0IHJlc291cmNlcy5cbiAgICogVXNlIEFtYXpvbiBWaXJ0dWFsIFByaXZhdGUgQ2xvdWQgKFZQQykgcGVlcmluZyBjb25uZWN0aW9ucyB0byBlbmFibGUgeW91ciBnYW1lIHNlcnZlcnMgdG8gY29tbXVuaWNhdGUgZGlyZWN0bHkgYW5kIHByaXZhdGVseSB3aXRoIHlvdXIgb3RoZXIgQVdTIHJlc291cmNlcywgc3VjaCBhcyBhIHdlYiBzZXJ2aWNlIG9yIGEgcmVwb3NpdG9yeS5cbiAgICogWW91IGNhbiBlc3RhYmxpc2ggVlBDIHBlZXJpbmcgd2l0aCBhbnkgcmVzb3VyY2VzIHRoYXQgcnVuIG9uIEFXUyBhbmQgYXJlIG1hbmFnZWQgYnkgYW4gQVdTIGFjY291bnQgdGhhdCB5b3UgaGF2ZSBhY2Nlc3MgdG8uXG4gICAqIFRoZSBWUEMgbXVzdCBiZSBpbiB0aGUgc2FtZSBSZWdpb24gYXMgeW91ciBmbGVldC5cbiAgICpcbiAgICogV2FybmluZzpcbiAgICogQmUgc3VyZSB0byBjcmVhdGUgYSBWUEMgUGVlcmluZyBhdXRob3JpemF0aW9uIHRocm91Z2ggR2FtZWxpZnQgU2VydmljZSBBUEkuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9kZXZlbG9wZXJndWlkZS92cGMtcGVlcmluZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHZwYyBwZWVyaW5nXG4gICAqL1xuICByZWFkb25seSBwZWVyVnBjPzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIGFuIEFXUyBDbG91ZFdhdGNoIG1ldHJpYyBncm91cCB0byBhZGQgdGhpcyBmbGVldCB0by5cbiAgICogQSBtZXRyaWMgZ3JvdXAgaXMgdXNlZCB0byBhZ2dyZWdhdGUgdGhlIG1ldHJpY3MgZm9yIG11bHRpcGxlIGZsZWV0cy5cbiAgICogWW91IGNhbiBzcGVjaWZ5IGFuIGV4aXN0aW5nIG1ldHJpYyBncm91cCBuYW1lIG9yIHNldCBhIG5ldyBuYW1lIHRvIGNyZWF0ZSBhIG5ldyBtZXRyaWMgZ3JvdXAuXG4gICAqIEEgZmxlZXQgY2FuIGJlIGluY2x1ZGVkIGluIG9ubHkgb25lIG1ldHJpYyBncm91cCBhdCBhIHRpbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IEZsZWV0IG1ldHJpY3MgYXJlIGFnZ3JlZ2F0ZWQgd2l0aCBvdGhlciBmbGVldHMgaW4gdGhlIGRlZmF1bHQgbWV0cmljIGdyb3VwXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNHcm91cD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEdhbWVMaWZ0LXN1cHBvcnRlZCBBbWF6b24gRUMyIGluc3RhbmNlIHR5cGUgdG8gdXNlIGZvciBhbGwgZmxlZXQgaW5zdGFuY2VzLlxuICAgKiBJbnN0YW5jZSB0eXBlIGRldGVybWluZXMgdGhlIGNvbXB1dGluZyByZXNvdXJjZXMgdGhhdCB3aWxsIGJlIHVzZWQgdG8gaG9zdCB5b3VyIGdhbWUgc2VydmVycywgaW5jbHVkaW5nIENQVSwgbWVtb3J5LCBzdG9yYWdlLCBhbmQgbmV0d29ya2luZyBjYXBhY2l0eS5cbiAgICpcbiAgICogQHNlZSBodHRwOi8vYXdzLmFtYXpvbi5jb20vZWMyL2luc3RhbmNlLXR5cGVzLyBmb3IgZGV0YWlsZWQgZGVzY3JpcHRpb25zIG9mIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZXMuXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IGVjMi5JbnN0YW5jZVR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgRUMyIGluc3RhbmNlcyB0aGF0IHlvdSB3YW50IHRoaXMgZmxlZXQgdG8gaG9zdC5cbiAgICogV2hlbiBjcmVhdGluZyBhIG5ldyBmbGVldCwgR2FtZUxpZnQgYXV0b21hdGljYWxseSBzZXRzIHRoaXMgdmFsdWUgdG8gXCIxXCIgYW5kIGluaXRpYXRlcyBhIHNpbmdsZSBpbnN0YW5jZS5cbiAgICogT25jZSB0aGUgZmxlZXQgaXMgYWN0aXZlLCB1cGRhdGUgdGhpcyB2YWx1ZSB0byB0cmlnZ2VyIEdhbWVMaWZ0IHRvIGFkZCBvciByZW1vdmUgaW5zdGFuY2VzIGZyb20gdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAZGVmYXVsdCBEZWZhdWx0IGNhcGFjaXR5IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IGRlc2lyZWRDYXBhY2l0eT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyB0aGF0IGFyZSBhbGxvd2VkIGluIHRoZSBzcGVjaWZpZWQgZmxlZXQgbG9jYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBkZWZhdWx0IGlzIDBcbiAgICovXG4gIHJlYWRvbmx5IG1pblNpemU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpbnN0YW5jZXMgdGhhdCBhcmUgYWxsb3dlZCBpbiB0aGUgc3BlY2lmaWVkIGZsZWV0IGxvY2F0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCBpcyAxXG4gICAqL1xuICByZWFkb25seSBtYXhTaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIG9mIHRlcm1pbmF0aW9uIHByb3RlY3Rpb24gZm9yIGFjdGl2ZSBnYW1lIHNlc3Npb25zIG9uIHRoZSBmbGVldC5cbiAgICogQnkgZGVmYXVsdCwgbmV3IGdhbWUgc2Vzc2lvbnMgYXJlIHByb3RlY3RlZCBhbmQgY2Fubm90IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZSAtIEdhbWUgc2Vzc2lvbnMgaW4gYEFDVElWRWAgc3RhdHVzIGNhbm5vdCBiZSB0ZXJtaW5hdGVkIGR1cmluZyBhIHNjYWxlLWRvd24gZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwcm90ZWN0TmV3R2FtZVNlc3Npb24/IDogYm9vbGVhbjtcblxuICAvKipcbiAgICogQSBjb2xsZWN0aW9uIG9mIHNlcnZlciBwcm9jZXNzIGNvbmZpZ3VyYXRpb25zIHRoYXQgZGVzY3JpYmUgdGhlIHNldCBvZiBwcm9jZXNzZXMgdG8gcnVuIG9uIGVhY2ggaW5zdGFuY2UgaW4gYSBmbGVldC5cbiAgICogU2VydmVyIHByb2Nlc3NlcyBydW4gZWl0aGVyIGFuIGV4ZWN1dGFibGUgaW4gYSBjdXN0b20gZ2FtZSBidWlsZCBvciBhIFJlYWx0aW1lIFNlcnZlcnMgc2NyaXB0LlxuICAgKiBHYW1lTGlmdCBsYXVuY2hlcyB0aGUgY29uZmlndXJlZCBwcm9jZXNzZXMsIG1hbmFnZXMgdGhlaXIgbGlmZSBjeWNsZSwgYW5kIHJlcGxhY2VzIHRoZW0gYXMgbmVlZGVkLlxuICAgKiBFYWNoIGluc3RhbmNlIGNoZWNrcyByZWd1bGFybHkgZm9yIGFuIHVwZGF0ZWQgcnVudGltZSBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBBIEdhbWVMaWZ0IGluc3RhbmNlIGlzIGxpbWl0ZWQgdG8gNTAgcHJvY2Vzc2VzIHJ1bm5pbmcgY29uY3VycmVudGx5LlxuICAgKiBUbyBjYWxjdWxhdGUgdGhlIHRvdGFsIG51bWJlciBvZiBwcm9jZXNzZXMgaW4gYSBydW50aW1lIGNvbmZpZ3VyYXRpb24sIGFkZCB0aGUgdmFsdWVzIG9mIHRoZSBDb25jdXJyZW50RXhlY3V0aW9ucyBwYXJhbWV0ZXIgZm9yIGVhY2ggU2VydmVyUHJvY2Vzcy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL2ZsZWV0cy1tdWx0aXByb2Nlc3MuaHRtbFxuICAgKi9cbiAgcmVhZG9ubHkgcnVudGltZUNvbmZpZ3VyYXRpb246IFJ1bnRpbWVDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBBIHNldCBvZiByZW1vdGUgbG9jYXRpb25zIHRvIGRlcGxveSBhZGRpdGlvbmFsIGluc3RhbmNlcyB0byBhbmQgbWFuYWdlIGFzIHBhcnQgb2YgdGhlIGZsZWV0LlxuICAgKiBUaGlzIHBhcmFtZXRlciBjYW4gb25seSBiZSB1c2VkIHdoZW4gY3JlYXRpbmcgZmxlZXRzIGluIEFXUyBSZWdpb25zIHRoYXQgc3VwcG9ydCBtdWx0aXBsZSBsb2NhdGlvbnMuXG4gICAqIFlvdSBjYW4gYWRkIGFueSBHYW1lTGlmdC1zdXBwb3J0ZWQgQVdTIFJlZ2lvbiBhcyBhIHJlbW90ZSBsb2NhdGlvbiwgaW4gdGhlIGZvcm0gb2YgYW4gQVdTIFJlZ2lvbiBjb2RlIHN1Y2ggYXMgYHVzLXdlc3QtMmAuXG4gICAqIFRvIGNyZWF0ZSBhIGZsZWV0IHdpdGggaW5zdGFuY2VzIGluIHRoZSBob21lIHJlZ2lvbiBvbmx5LCBvbWl0IHRoaXMgcGFyYW1ldGVyLlxuICAgKlxuICAgKiBAZGVmYXVsdCBDcmVhdGUgYSBmbGVldCB3aXRoIGluc3RhbmNlcyBpbiB0aGUgaG9tZSByZWdpb24gb25seVxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb25zPzogTG9jYXRpb25bXTtcblxuICAvKipcbiAgICogQSBwb2xpY3kgdGhhdCBsaW1pdHMgdGhlIG51bWJlciBvZiBnYW1lIHNlc3Npb25zIHRoYXQgYW4gaW5kaXZpZHVhbCBwbGF5ZXIgY2FuIGNyZWF0ZSBvbiBpbnN0YW5jZXMgaW4gdGhpcyBmbGVldCB3aXRoaW4gYSBzcGVjaWZpZWQgc3BhbiBvZiB0aW1lLlxuICAgKlxuICAgKiBAZGVmYXVsdCBObyByZXNvdXJjZSBjcmVhdGlvbiBsaW1pdCBwb2xpY3lcbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeT86IFJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeTtcbn1cblxuLyoqXG4gKiBBIGZ1bGwgc3BlY2lmaWNhdGlvbiBvZiBhIGZsZWV0IHRoYXQgY2FuIGJlIHVzZWQgdG8gaW1wb3J0IGl0IGZsdWVudGx5IGludG8gdGhlIENESyBhcHBsaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGbGVldEF0dHJpYnV0ZXMge1xuICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoZSBmbGVldFxuICAgICAqXG4gICAgICogQXQgbGVhc3Qgb25lIG9mIGBmbGVldEFybmAgYW5kIGBmbGVldElkYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZGVyaXZlZCBmcm9tIGBmbGVldElkYC5cbiAgICAgKi9cbiAgcmVhZG9ubHkgZmxlZXRBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBpZGVudGlmaWVyIG9mIHRoZSBmbGVldFxuICAgKlxuICAgKiBBdCBsZWFzdCBvbmUgb2YgYGZsZWV0SWRgIGFuZCBgZmxlZXRBcm5gICBtdXN0IGJlIHByb3ZpZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkZXJpdmVkIGZyb20gYGZsZWV0QXJuYC5cbiAgICovXG4gIHJlYWRvbmx5IGZsZWV0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSBhc3N1bWVkIGJ5IEdhbWVMaWZ0IGZsZWV0IGluc3RhbmNlcyB0byBhY2Nlc3MgQVdTIHJlc3NvdXJjZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBpbXBvcnRlZCBmbGVldCBjYW5ub3QgYmUgZ3JhbnRlZCBhY2Nlc3MgdG8gb3RoZXIgcmVzb3VyY2VzIGFzIGFuIGBpYW0uSUdyYW50YWJsZWAuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogaWFtLklSb2xlO1xufVxuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIG5ldyBhbmQgaW1wb3J0ZWQgR2FtZUxpZnQgZmxlZXQuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGbGVldEJhc2UgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJRmxlZXQge1xuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZmxlZXQgZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tRmxlZXRBdHRyaWJ1dGVzKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIGF0dHJzOiBGbGVldEF0dHJpYnV0ZXMpOiBJRmxlZXQge1xuICAgIGlmICghYXR0cnMuZmxlZXRJZCAmJiAhYXR0cnMuZmxlZXRBcm4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRWl0aGVyIGZsZWV0SWQgb3IgZmxlZXRBcm4gbXVzdCBiZSBwcm92aWRlZCBpbiBGbGVldEF0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgZmxlZXRJZCA9IGF0dHJzLmZsZWV0SWQgPz9cbiAgICAgIGNkay5TdGFjay5vZihzY29wZSkuc3BsaXRBcm4oYXR0cnMuZmxlZXRBcm4hLCBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUpLnJlc291cmNlTmFtZTtcblxuICAgIGlmICghZmxlZXRJZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBmbGVldCBpZGVudGlmaWVyIGZvdW5kIGluIEFSTjogJyR7YXR0cnMuZmxlZXRBcm59J2ApO1xuICAgIH1cblxuICAgIGNvbnN0IGZsZWV0QXJuID0gYXR0cnMuZmxlZXRBcm4gPz8gY2RrLlN0YWNrLm9mKHNjb3BlKS5mb3JtYXRBcm4oe1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZmxlZXQnLFxuICAgICAgcmVzb3VyY2VOYW1lOiBhdHRycy5mbGVldElkLFxuICAgICAgYXJuRm9ybWF0OiBjZGsuQXJuRm9ybWF0LlNMQVNIX1JFU09VUkNFX05BTUUsXG4gICAgfSk7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgRmxlZXRCYXNlIHtcbiAgICAgIHB1YmxpYyByZWFkb25seSBmbGVldElkID0gZmxlZXRJZCE7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZmxlZXRBcm4gPSBmbGVldEFybjtcbiAgICAgIHB1YmxpYyByZWFkb25seSBncmFudFByaW5jaXBhbCA9IGF0dHJzLnJvbGUgPz8gbmV3IGlhbS5Vbmtub3duUHJpbmNpcGFsKHsgcmVzb3VyY2U6IHRoaXMgfSk7XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgcm9sZSA9IGF0dHJzLnJvbGU7XG5cbiAgICAgIGNvbnN0cnVjdG9yKHM6IENvbnN0cnVjdCwgaTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKHMsIGksIHtcbiAgICAgICAgICBlbnZpcm9ubWVudEZyb21Bcm46IGZsZWV0QXJuLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgICogVGhlIElkZW50aWZpZXIgb2YgdGhlIGZsZWV0LlxuICAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBmbGVldElkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBmbGVldC5cbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBmbGVldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZmxlZXQgaXMgdXNpbmcuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWw6IGlhbS5JUHJpbmNpcGFsO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9jYXRpb25zOiBMb2NhdGlvbltdID0gW107XG5cbiAgLyoqXG4gICAqIERlZmluZXMgYW4gYWxpYXMgZm9yIHRoaXMgZmxlZXQuXG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGRlY2xhcmUgY29uc3QgZmxlZXQ6IGdhbWVsaWZ0LkZsZWV0QmFzZTtcbiAgICpcbiAgICogZmxlZXQuYWRkQWxpYXMoJ0xpdmUnKTtcbiAgICpcbiAgICogLy8gSXMgZXF1aXZhbGVudCB0b1xuICAgKlxuICAgKiBuZXcgZ2FtZWxpZnQuQWxpYXModGhpcywgJ0FsaWFzTGl2ZScsIHtcbiAgICogICBhbGlhc05hbWU6ICdMaXZlJyxcbiAgICogICBmbGVldDogZmxlZXQsXG4gICAqIH0pO1xuICAgKiBgYGBcbiAgICpcbiAgICogQHBhcmFtIGFsaWFzTmFtZSBUaGUgbmFtZSBvZiB0aGUgYWxpYXNcbiAgICogQHBhcmFtIG9wdGlvbnMgQWxpYXMgb3B0aW9uc1xuICAgKi9cbiAgcHVibGljIGFkZEFsaWFzKGFsaWFzTmFtZTogc3RyaW5nLCBvcHRpb25zOiBBbGlhc09wdGlvbnMgPSB7fSkge1xuICAgIHJldHVybiBuZXcgQWxpYXModGhpcywgYEFsaWFzJHthbGlhc05hbWV9YCwge1xuICAgICAgYWxpYXNOYW1lLFxuICAgICAgZmxlZXQ6IHRoaXMsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICByZXNvdXJjZUFybnM6IFt0aGlzLmZsZWV0QXJuXSxcbiAgICAgIGdyYW50ZWU6IGdyYW50ZWUsXG4gICAgICBhY3Rpb25zOiBhY3Rpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG1ldHJpYyhtZXRyaWNOYW1lOiBzdHJpbmcsIHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiBuZXcgY2xvdWR3YXRjaC5NZXRyaWMoe1xuICAgICAgbmFtZXNwYWNlOiAnQVdTL0dhbWVMaWZ0JyxcbiAgICAgIG1ldHJpY05hbWU6IG1ldHJpY05hbWUsXG4gICAgICBkaW1lbnNpb25zTWFwOiB7XG4gICAgICAgIEZsZWV0SWQ6IHRoaXMuZmxlZXRJZCxcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KS5hdHRhY2hUbyh0aGlzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNBY3RpdmVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5hY3RpdmVJbnN0YW5jZXNBdmVyYWdlLCBwcm9wcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljUGVyY2VudElkbGVJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5wZXJjZW50SWRsZUluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNEZXNpcmVkSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MuZGVzaXJlZEluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNJZGxlSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MuaWRsZUluc3RhbmNlc0F2ZXJhZ2UsIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNJbnN0YW5jZUludGVycnVwdGlvbnMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5pbnN0YW5jZUludGVycnVwdGlvbnNTdW0sIHByb3BzKTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWNNYXhJbnN0YW5jZXMocHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYyB7XG4gICAgcmV0dXJuIHRoaXMuY2FubmVkTWV0cmljKEdhbWVMaWZ0TWV0cmljcy5tYXhJbnN0YW5jZXNBdmVyYWdlLCBwcm9wcyk7XG4gIH1cblxuICBwdWJsaWMgbWV0cmljTWluSW5zdGFuY2VzKHByb3BzPzogY2xvdWR3YXRjaC5NZXRyaWNPcHRpb25zKTogY2xvdWR3YXRjaC5NZXRyaWMge1xuICAgIHJldHVybiB0aGlzLmNhbm5lZE1ldHJpYyhHYW1lTGlmdE1ldHJpY3MubWluSW5zdGFuY2VzQXZlcmFnZSwgcHJvcHMpO1xuICB9XG5cbiAgcHJpdmF0ZSBjYW5uZWRNZXRyaWMoZm46IChkaW1zOiB7IEZsZWV0SWQ6IHN0cmluZyB9KSA9PiBjbG91ZHdhdGNoLk1ldHJpY1Byb3BzLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIC4uLmZuKHsgRmxlZXRJZDogdGhpcy5mbGVldElkIH0pLFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSkuYXR0YWNoVG8odGhpcyk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIEFSTiB0byBwdXQgaW50byB0aGUgZGVzdGluYXRpb24gZmllbGQgb2YgYSBnYW1lIHNlc3Npb24gcXVldWVcbiAgICovXG4gIHB1YmxpYyBnZXQgcmVzb3VyY2VBcm5Gb3JEZXN0aW5hdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5mbGVldEFybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcmVtb3RlIGxvY2F0aW9ucyB0byBkZXBsb3kgYWRkaXRpb25hbCBpbnN0YW5jZXMgdG8gYW5kIG1hbmFnZSBhcyBwYXJ0IG9mIHRoZSBmbGVldC5cbiAgICpcbiAgICogQHBhcmFtIHJlZ2lvbiBUaGUgQVdTIHJlZ2lvbiB0byBhZGRcbiAgICovXG4gIHB1YmxpYyBhZGRMb2NhdGlvbihyZWdpb246IHN0cmluZywgZGVzaXJlZENhcGFjaXR5PzogbnVtYmVyLCBtaW5TaXplPzogbnVtYmVyLCBtYXhTaXplPzogbnVtYmVyKSB7XG4gICAgdGhpcy5hZGRJbnRlcm5hbExvY2F0aW9uKHtcbiAgICAgIHJlZ2lvbjogcmVnaW9uLFxuICAgICAgY2FwYWNpdHk6IHtcbiAgICAgICAgZGVzaXJlZENhcGFjaXR5OiBkZXNpcmVkQ2FwYWNpdHksXG4gICAgICAgIG1pblNpemU6IG1pblNpemUsXG4gICAgICAgIG1heFNpemU6IG1heFNpemUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByZW1vdGUgbG9jYXRpb25zIHRvIGRlcGxveSBhZGRpdGlvbmFsIGluc3RhbmNlcyB0byBhbmQgbWFuYWdlIGFzIHBhcnQgb2YgdGhlIGZsZWV0LlxuICAgKlxuICAgKiBAcGFyYW0gbG9jYXRpb24gVGhlIGxvY2F0aW9uIHRvIGFkZFxuICAgKi9cbiAgcHVibGljIGFkZEludGVybmFsTG9jYXRpb24obG9jYXRpb246IExvY2F0aW9uKSB7XG4gICAgaWYgKHRoaXMubG9jYXRpb25zLmxlbmd0aCA9PSAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gbW9yZSB0aGFuIDEwMCBsb2NhdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGZsZWV0Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5sb2NhdGlvbnMucHVzaChsb2NhdGlvbik7XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VSZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kocHJvcHM6IEZsZWV0UHJvcHMpOiBDZm5GbGVldC5SZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3lQcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kgfHxcbiAgICAgICAgKCFwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kubmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvclxuICAgICAgICAgICAgJiYgIXByb3BzLnJlc291cmNlQ3JlYXRpb25MaW1pdFBvbGljeS5wb2xpY3lQZXJpb2QpKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBuZXdHYW1lU2Vzc2lvbnNQZXJDcmVhdG9yOiBwcm9wcy5yZXNvdXJjZUNyZWF0aW9uTGltaXRQb2xpY3kubmV3R2FtZVNlc3Npb25zUGVyQ3JlYXRvcixcbiAgICAgIHBvbGljeVBlcmlvZEluTWludXRlczogcHJvcHMucmVzb3VyY2VDcmVhdGlvbkxpbWl0UG9saWN5LnBvbGljeVBlcmlvZD8udG9NaW51dGVzKCksXG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxvY2F0aW9ucygpOiBDZm5GbGVldC5Mb2NhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eVtdIHzCoHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmxvY2F0aW9ucyB8fCB0aGlzLmxvY2F0aW9ucy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZiA9IHRoaXM7XG5cbiAgICByZXR1cm4gdGhpcy5sb2NhdGlvbnMubWFwKHBhcnNlTG9jYXRpb24pO1xuXG4gICAgZnVuY3Rpb24gcGFyc2VMb2NhdGlvbihsb2NhdGlvbjogTG9jYXRpb24pOiBDZm5GbGVldC5Mb2NhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBsb2NhdGlvbjogbG9jYXRpb24ucmVnaW9uLFxuICAgICAgICBsb2NhdGlvbkNhcGFjaXR5OiBzZWxmLnBhcnNlTG9jYXRpb25DYXBhY2l0eShsb2NhdGlvbi5jYXBhY2l0eSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCBwYXJzZUxvY2F0aW9uQ2FwYWNpdHkoY2FwYWNpdHk/OiBMb2NhdGlvbkNhcGFjaXR5KTogQ2ZuRmxlZXQuTG9jYXRpb25DYXBhY2l0eVByb3BlcnR5IHzCoHVuZGVmaW5lZCB7XG4gICAgaWYgKCFjYXBhY2l0eSB8fFxuICAgICAgICAoIWNhcGFjaXR5LmRlc2lyZWRDYXBhY2l0eVxuICAgICAgICAgICAgJiYgIWNhcGFjaXR5Lm1pblNpemVcbiAgICAgICAgICAgICYmICFjYXBhY2l0eS5tYXhTaXplKSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZGVzaXJlZEVjMkluc3RhbmNlczogY2FwYWNpdHkuZGVzaXJlZENhcGFjaXR5ID8/IDAsXG4gICAgICBtaW5TaXplOiBjYXBhY2l0eS5taW5TaXplID8/IDAsXG4gICAgICBtYXhTaXplOiBjYXBhY2l0eS5tYXhTaXplID8/IDEsXG4gICAgfTtcblxuICB9XG4gIHByb3RlY3RlZCBwYXJzZVJ1bnRpbWVDb25maWd1cmF0aW9uKHByb3BzOiBGbGVldFByb3BzKTogQ2ZuRmxlZXQuUnVudGltZUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSB8wqB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24gfHxcbiAgICAgICAgKCFwcm9wcy5ydW50aW1lQ29uZmlndXJhdGlvbi5nYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0XG4gICAgICAgICAgICAmJiAhcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24ubWF4Q29uY3VycmVudEdhbWVTZXNzaW9uQWN0aXZhdGlvbnNcbiAgICAgICAgICAgICYmIHByb3BzLnJ1bnRpbWVDb25maWd1cmF0aW9uLnNlcnZlclByb2Nlc3Nlcy5sZW5ndGggPT0gMCkpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBnYW1lU2Vzc2lvbkFjdGl2YXRpb25UaW1lb3V0U2Vjb25kczogcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24uZ2FtZVNlc3Npb25BY3RpdmF0aW9uVGltZW91dD8udG9TZWNvbmRzKCksXG4gICAgICBtYXhDb25jdXJyZW50R2FtZVNlc3Npb25BY3RpdmF0aW9uczogcHJvcHMucnVudGltZUNvbmZpZ3VyYXRpb24ubWF4Q29uY3VycmVudEdhbWVTZXNzaW9uQWN0aXZhdGlvbnMsXG4gICAgICBzZXJ2ZXJQcm9jZXNzZXM6IHByb3BzLnJ1bnRpbWVDb25maWd1cmF0aW9uLnNlcnZlclByb2Nlc3Nlcy5tYXAocGFyc2VTZXJ2ZXJQcm9jZXNzKSxcbiAgICB9O1xuXG4gICAgZnVuY3Rpb24gcGFyc2VTZXJ2ZXJQcm9jZXNzKHNlcnZlclByb2Nlc3M6IFNlcnZlclByb2Nlc3MpOiBDZm5GbGVldC5TZXJ2ZXJQcm9jZXNzUHJvcGVydHkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFyYW1ldGVyczogc2VydmVyUHJvY2Vzcy5wYXJhbWV0ZXJzLFxuICAgICAgICBsYXVuY2hQYXRoOiBzZXJ2ZXJQcm9jZXNzLmxhdW5jaFBhdGgsXG4gICAgICAgIGNvbmN1cnJlbnRFeGVjdXRpb25zOiBzZXJ2ZXJQcm9jZXNzLmNvbmN1cnJlbnRFeGVjdXRpb25zID8/IDEsXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB3YXJuVnBjUGVlcmluZ0F1dGhvcml6YXRpb25zKHNjb3BlOiBDb25zdHJ1Y3QpOiB2b2lkIHtcbiAgICBjZGsuQW5ub3RhdGlvbnMub2Yoc2NvcGUpLmFkZFdhcm5pbmcoW1xuICAgICAgJ1RvIGF1dGhvcml6ZSB0aGUgVlBDIHBlZXJpbmcsIGNhbGwgdGhlIEdhbWVMaWZ0IHNlcnZpY2UgQVBJIENyZWF0ZVZwY1BlZXJpbmdBdXRob3JpemF0aW9uKCkgb3IgdXNlIHRoZSBBV1MgQ0xJIGNvbW1hbmQgY3JlYXRlLXZwYy1wZWVyaW5nLWF1dGhvcml6YXRpb24uJyxcbiAgICAgICdNYWtlIHRoaXMgY2FsbCB1c2luZyB0aGUgYWNjb3VudCB0aGF0IG1hbmFnZXMgeW91ciBub24tR2FtZUxpZnQgcmVzb3VyY2VzLicsXG4gICAgICAnU2VlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2RldmVsb3Blcmd1aWRlL3ZwYy1wZWVyaW5nLmh0bWwnLFxuICAgIF0uam9pbignXFxuJykpO1xuICB9XG59Il19
|
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.60.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.60.0-alpha.0" };
|
|
271
271
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZS1zZXJ2ZXItZ3JvdXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnYW1lLXNlcnZlci1ncm91cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx5REFBeUQ7QUFDekQsMkNBQTJDO0FBQzNDLDJDQUEyQztBQUMzQyxtQ0FBbUM7QUFFbkMsMkRBQThEO0FBOEM5RDs7O0dBR0c7QUFDSCxJQUFZLFlBYVg7QUFiRCxXQUFZLFlBQVk7SUFDdEI7O1FBRUk7SUFDSiwyQ0FBMkIsQ0FBQTtJQUMzQjs7T0FFRztJQUNILDZDQUE2QixDQUFBO0lBQzdCOztPQUVHO0lBQ0gsaUNBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQWJXLFlBQVksR0FBWixvQkFBWSxLQUFaLG9CQUFZLFFBYXZCO0FBQ0Q7O0dBRUc7QUFDSCxJQUFZLGlCQW1CWDtBQW5CRCxXQUFZLGlCQUFpQjtJQUMzQjs7OztTQUlLO0lBQ0wsNENBQXVCLENBQUE7SUFDdkI7Ozs7T0FJRztJQUNILHNEQUFpQyxDQUFBO0lBQ2pDOzs7T0FHRztJQUNILHNEQUFpQyxDQUFBO0FBRW5DLENBQUMsRUFuQlcsaUJBQWlCLEdBQWpCLHlCQUFpQixLQUFqQix5QkFBaUIsUUFtQjVCO0FBcUNEOztHQUVHO0FBQ0gsTUFBc0IsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUFzQnJELEtBQUssQ0FBQyxPQUF1QixFQUFFLEdBQUcsT0FBaUI7UUFDeEQsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztZQUM5QixZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUM7WUFDdkMsT0FBTyxFQUFFLE9BQU87WUFDaEIsT0FBTyxFQUFFLE9BQU87U0FDakIsQ0FBQyxDQUFDO0tBQ0o7SUFFTSxNQUFNLENBQUMsVUFBa0IsRUFBRSxLQUFnQztRQUNoRSxPQUFPLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQztZQUMzQixTQUFTLEVBQUUsY0FBYztZQUN6QixVQUFVLEVB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QXNDO1lBQ3JFLE9BQU87Z0JBQ0wsWUFBWSxFQUFFLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7Z0JBQ3hELGdCQUFnQixFQUFFLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUU7YUFDeEQsQ0FBQztRQUNKLENBQUM7S0FDRjs7QUFwTEgsMENBcUxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2xvdWR3YXRjaCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWR3YXRjaCc7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBpYW0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBDZm5HYW1lU2VydmVyR3JvdXAgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZ2FtZWxpZnQnO1xuXG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBzZXR0aW5ncyBmb3IgaW50ZWxsaWdlbnQgYXV0b21hdGljIHNjYWxpbmcgdGhhdCB1c2VzIHRhcmdldCB0cmFja2luZy5cbiAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgYWxsIHVwZGF0ZXMgdG8gQXV0byBTY2FsaW5nIHBvbGljaWVzLCBpbmNsdWRpbmcgY2hhbmdpbmcgdGhpcyBwb2xpY3kgYW5kIGFkZGluZyBvciByZW1vdmluZyBvdGhlciBwb2xpY2llcywgaXMgZG9uZSBkaXJlY3RseSBvbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9TY2FsaW5nUG9saWN5IHtcbiAgLyoqXG4gICAgICogTGVuZ3RoIG9mIHRpbWUsIGl0IHRha2VzIGZvciBhIG5ldyBpbnN0YW5jZSB0byBzdGFydCBuZXcgZ2FtZSBzZXJ2ZXIgcHJvY2Vzc2VzIGFuZCByZWdpc3RlciB3aXRoIEdhbWVMaWZ0IEZsZWV0SVEuXG4gICAgICogU3BlY2lmeWluZyBhIHdhcm0tdXAgdGltZSBjYW4gYmUgdXNlZnVsLCBwYXJ0aWN1bGFybHkgd2l0aCBnYW1lIHNlcnZlcnMgdGhhdCB0YWtlIGEgbG9uZyB0aW1lIHRvIHN0YXJ0IHVwLCBiZWNhdXNlIGl0IGF2b2lkcyBwcmVtYXR1cmVseSBzdGFydGluZyBuZXcgaW5zdGFuY2VzLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgbm8gaW5zdGFuY2Ugd2FybXVwIGR1cmF0aW9uIHNldHRsZWRcbiAgICAgKi9cbiAgcmVhZG9ubHkgZXN0aW1hdGVkSW5zdGFuY2VXYXJtdXA/OiBjZGsuRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFNldHRpbmdzIGZvciBhIHRhcmdldC1iYXNlZCBzY2FsaW5nIHBvbGljeSBhcHBsaWVkIHRvIEF1dG8gU2NhbGluZyBncm91cC5cbiAgICogVGhlc2Ugc2V0dGluZ3MgYXJlIHVzZWQgdG8gY3JlYXRlIGEgdGFyZ2V0LWJhc2VkIHBvbGljeSB0aGF0IHRyYWNrcyB0aGUgR2FtZUxpZnQgRmxlZXRJUSBtZXRyaWMgYFBlcmNlbnRVdGlsaXplZEdhbWVTZXJ2ZXJzYCBhbmQgc3BlY2lmaWVzIGEgdGFyZ2V0IHZhbHVlIGZvciB0aGUgbWV0cmljLlxuICAgKlxuICAgKiBBcyBwbGF5ZXIgdXNhZ2UgY2hhbmdlcywgdGhlIHBvbGljeSB0cmlnZ2VycyB0byBhZGp1c3QgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGNhcGFjaXR5IHNvIHRoYXQgdGhlIG1ldHJpYyByZXR1cm5zIHRvIHRoZSB0YXJnZXQgdmFsdWUuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRUcmFja2luZ0NvbmZpZ3VyYXRpb246IG51bWJlcjtcblxufVxuLyoqXG4gKiBBbiBhbGxvd2VkIGluc3RhbmNlIHR5cGUgZm9yIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKiBBbGwgZ2FtZSBzZXJ2ZXIgZ3JvdXBzIG11c3QgaGF2ZSBhdCBsZWFzdCB0d28gaW5zdGFuY2UgdHlwZXMgZGVmaW5lZCBmb3IgaXQuXG4gKiBHYW1lTGlmdCBGbGVldElRIHBlcmlvZGljYWxseSBldmFsdWF0ZXMgZWFjaCBkZWZpbmVkIGluc3RhbmNlIHR5cGUgZm9yIHZpYWJpbGl0eS5cbiAqIEl0IHRoZW4gdXBkYXRlcyB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHdpdGggdGhlIGxpc3Qgb2YgdmlhYmxlIGluc3RhbmNlIHR5cGVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEluc3RhbmNlRGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgICAqIEFuIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZSBkZXNpZ25hdGlvbi5cbiAgICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2VUeXBlOiBlYzIuSW5zdGFuY2VUeXBlO1xuICAvKipcbiAgICogSW5zdGFuY2Ugd2VpZ2h0aW5nIHRoYXQgaW5kaWNhdGVzIGhvdyBtdWNoIHRoaXMgaW5zdGFuY2UgdHlwZSBjb250cmlidXRlcyB0byB0aGUgdG90YWwgY2FwYWNpdHkgb2YgYSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSW5zdGFuY2Ugd2VpZ2h0cyBhcmUgdXNlZCBieSBHYW1lTGlmdCBGbGVldElRIHRvIGNhbGN1bGF0ZSB0aGUgaW5zdGFuY2UgdHlwZSdzIGNvc3QgcGVyIHVuaXQgaG91ciBhbmQgYmV0dGVyIGlkZW50aWZ5IHRoZSBtb3N0IGNvc3QtZWZmZWN0aXZlIG9wdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F1dG9zY2FsaW5nL2VjMi91c2VyZ3VpZGUvYXNnLWluc3RhbmNlLXdlaWdodGluZy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IGRlZmF1bHQgdmFsdWUgaXMgMVxuICAgKi9cbiAgcmVhZG9ubHkgd2VpZ2h0PzogbnVtYmVyO1xufVxuLyoqXG4gKiBUaGUgdHlwZSBvZiBkZWxldGUgdG8gcGVyZm9ybS5cbiAqIFRvIGRlbGV0ZSBhIGdhbWUgc2VydmVyIGdyb3VwLCBzcGVjaWZ5IHRoZSBEZWxldGVPcHRpb24uXG4gKi9cbmV4cG9ydCBlbnVtIERlbGV0ZU9wdGlvbiB7XG4gIC8qKlxuICAgICogVGVybWluYXRlcyB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgYW5kIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwIG9ubHkgd2hlbiBpdCBoYXMgbm8gZ2FtZSBzZXJ2ZXJzIHRoYXQgYXJlIGluIFVUSUxJWkVEIHN0YXR1cy5cbiAgICAqL1xuICBTQUZFX0RFTEVURSA9ICdTQUZFX0RFTEVURScsXG4gIC8qKlxuICAgKiBUZXJtaW5hdGVzIHRoZSBnYW1lIHNlcnZlciBncm91cCwgaW5jbHVkaW5nIGFsbCBhY3RpdmUgZ2FtZSBzZXJ2ZXJzIHJlZ2FyZGxlc3Mgb2YgdGhlaXIgdXRpbGl6YXRpb24gc3RhdHVzLCBhbmQgdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKi9cbiAgRk9SQ0VfREVMRVRFID0gJ0ZPUkNFX0RFTEVURScsXG4gIC8qKlxuICAgKiBEb2VzIGEgc2FmZSBkZWxldGUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwIGJ1dCByZXRhaW5zIHRoZSBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cCBhcyBpcy5cbiAgICovXG4gIFJFVEFJTiA9ICdSRVRBSU4nLFxufVxuLyoqXG4gKiBJbmRpY2F0ZXMgaG93IEdhbWVMaWZ0IEZsZWV0SVEgYmFsYW5jZXMgdGhlIHVzZSBvZiBTcG90IEluc3RhbmNlcyBhbmQgT24tRGVtYW5kIEluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBlbnVtIEJhbGFuY2luZ1N0cmF0ZWd5IHtcbiAgLyoqXG4gICAgICogT25seSBTcG90IEluc3RhbmNlcyBhcmUgdXNlZCBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAgICogSWYgU3BvdCBJbnN0YW5jZXMgYXJlIHVuYXZhaWxhYmxlIG9yIG5vdCB2aWFibGUgZm9yIGdhbWUgaG9zdGluZywgdGhlIGdhbWUgc2VydmVyIGdyb3VwIHByb3ZpZGVzIG5vIGhvc3RpbmcgY2FwYWNpdHkgdW50aWwgU3BvdCBJbnN0YW5jZXMgY2FuIGFnYWluIGJlIHVzZWQuXG4gICAgICogVW50aWwgdGhlbiwgbm8gbmV3IGluc3RhbmNlcyBhcmUgc3RhcnRlZCwgYW5kIHRoZSBleGlzdGluZyBub252aWFibGUgU3BvdCBJbnN0YW5jZXMgYXJlIHRlcm1pbmF0ZWQgKGFmdGVyIGN1cnJlbnQgZ2FtZXBsYXkgZW5kcykgYW5kIGFyZSBub3QgcmVwbGFjZWQuXG4gICAgICovXG4gIFNQT1RfT05MWSA9ICdTUE9UX09OTFknLFxuICAvKipcbiAgICogU3BvdCBJbnN0YW5jZXMgYXJlIHVzZWQgd2hlbmV2ZXIgYXZhaWxhYmxlIGluIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICogSWYgU3BvdCBJbnN0YW5jZXMgYXJlIHVuYXZhaWxhYmxlLCB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgY29udGludWVzIHRvIHByb3ZpZGUgaG9zdGluZyBjYXBhY2l0eSBieSBmYWxsaW5nIGJhY2sgdG8gT24tRGVtYW5kIEluc3RhbmNlcy5cbiAgICogRXhpc3Rpbmcgbm9udmlhYmxlIFNwb3QgSW5zdGFuY2VzIGFyZSB0ZXJtaW5hdGVkIChhZnRlciBjdXJyZW50IGdhbWVwbGF5IGVuZHMpIGFuZCBhcmUgcmVwbGFjZWQgd2l0aCBuZXcgT24tRGVtYW5kIEluc3RhbmNlcy5cbiAgICovXG4gIFNQT1RfUFJFRkVSUkVEID0gJ1NQT1RfUFJFRkVSUkVEJyxcbiAgLyoqXG4gICAqIE9ubHkgT24tRGVtYW5kIEluc3RhbmNlcyBhcmUgdXNlZCBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqIE5vIFNwb3QgSW5zdGFuY2VzIGFyZSB1c2VkLCBldmVuIHdoZW4gYXZhaWxhYmxlLCB3aGlsZSB0aGlzIGJhbGFuY2luZyBzdHJhdGVneSBpcyBpbiBmb3JjZS5cbiAgICovXG4gIE9OX0RFTUFORF9PTkxZID0gJ09OX0RFTUFORF9PTkxZJyxcblxufVxuLyoqXG4gKiBSZXByZXNlbnQgYSBHYW1lTGlmdCBGbGVldElRIGdhbWUgc2VydmVyIGdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElHYW1lU2VydmVyR3JvdXAgZXh0ZW5kcyBjZGsuSVJlc291cmNlLCBpYW0uSUdyYW50YWJsZSB7XG4gIC8qKlxuICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdlbmVyYXRlZCBBdXRvU2NhbGluZyBncm91cFxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyYW50IHRoZSBgZ3JhbnRlZWAgaWRlbnRpdHkgcGVybWlzc2lvbnMgdG8gcGVyZm9ybSBgYWN0aW9uc2AuXG4gICAqL1xuICBncmFudChncmFudGVlOiBpYW0uSUdyYW50YWJsZSwgLi4uYWN0aW9uczogc3RyaW5nW10pOiBpYW0uR3JhbnQ7XG5cbiAgLyoqXG4gICAqIFJldHVybiB0aGUgZ2l2ZW4gbmFtZWQgbWV0cmljIGZvciB0aGlzIGZsZWV0LlxuICAgKi9cbiAgbWV0cmljKG1ldHJpY05hbWU6IHN0cmluZywgcHJvcHM/OiBjbG91ZHdhdGNoLk1ldHJpY09wdGlvbnMpOiBjbG91ZHdhdGNoLk1ldHJpYztcbn1cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBuZXcgYW5kIGltcG9ydGVkIEdhbWVMaWZ0IEZsZWV0SVEgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHYW1lU2VydmVyR3JvdXBCYXNlIGV4dGVuZHMgY2RrLlJlc291cmNlIGltcGxlbWVudHMgSUdhbWVTZXJ2ZXJHcm91cCB7XG5cbiAgLyoqXG4gICogVGhlIEFSTiBvZiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgKi9cbiAgcHVibGljIGFic3RyYWN0IHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaXMgdXNpbmcuXG4gICovXG4gIHB1YmxpYyBhYnN0cmFjdCByZWFkb25seSBncmFudFByaW5jaXBhbDogaWFtLklQcmluY2lwYWw7XG5cbiAgcHVibGljIGdyYW50KGdyYW50ZWU6IGlhbS5JR3JhbnRhYmxlLCAuLi5hY3Rpb25zOiBzdHJpbmdbXSk6IGlhbS5HcmFudCB7XG4gICAgcmV0dXJuIGlhbS5HcmFudC5hZGRUb1ByaW5jaXBhbCh7XG4gICAgICByZXNvdXJjZUFybnM6IFt0aGlzLmdhbWVTZXJ2ZXJHcm91cEFybl0sXG4gICAgICBncmFudGVlOiBncmFudGVlLFxuICAgICAgYWN0aW9uczogYWN0aW9ucyxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRyaWMobWV0cmljTmFtZTogc3RyaW5nLCBwcm9wcz86IGNsb3Vkd2F0Y2guTWV0cmljT3B0aW9ucyk6IGNsb3Vkd2F0Y2guTWV0cmljIHtcbiAgICByZXR1cm4gbmV3IGNsb3Vkd2F0Y2guTWV0cmljKHtcbiAgICAgIG5hbWVzcGFjZTogJ0FXUy9HYW1lTGlmdCcsXG4gICAgICBtZXRyaWNOYW1lOiBtZXRyaWNOYW1lLFxuICAgICAgZGltZW5zaW9uc01hcDoge1xuICAgICAgICBHYW1lU2VydmVyR3JvdXBBcm46IHRoaXMuZ2FtZVNlcnZlckdyb3VwQXJuLFxuICAgICAgfSxcbiAgICAgIC4uLnByb3BzLFxuICAgIH0pLmF0dGFjaFRvKHRoaXMpO1xuICB9XG5cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgR2FtZVNlcnZlckdyb3VwIGNvbnRlbnQgZGVmaW5lZCBvdXRzaWRlIG9mIHRoaXMgc3RhY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcyB7XG5cbiAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIGdhbWUgc2VydmVyIGdyb3VwXG4gICAgICpcbiAgICAgKiBBdCBsZWFzdCBvbmUgb2YgYGdhbWVTZXJ2ZXJHcm91cEFybmAgYW5kIGBnYW1lU2VydmVyR3JvdXBOYW1lYCBtdXN0IGJlIHByb3ZpZGVkLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZGVyaXZlZCBmcm9tIGBnYW1lU2VydmVyR3JvdXBBcm5gLlxuICAgICAqL1xuICByZWFkb25seSBnYW1lU2VydmVyR3JvdXBOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICAgKiBUaGUgQVJOIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgICAqXG4gICAgICogQXQgbGVhc3Qgb25lIG9mIGBnYW1lU2VydmVyR3JvdXBBcm5gIGFuZCBgZ2FtZVNlcnZlckdyb3VwTmFtZWAgbXVzdCBiZSBwcm92aWRlZC5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGRlcml2ZWQgZnJvbSBgZ2FtZVNlcnZlckdyb3VwTmFtZWAuXG4gICAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cEFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2VuZXJhdGVkIEF1dG9TY2FsaW5nIGdyb3VwXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBpbXBvcnRlZCBnYW1lIHNlcnZlciBncm91cCBkb2VzIG5vdCBoYXZlIGF1dG9zY2FsaW5nIGdyb3VwIGluZm9ybWF0aW9uXG4gICAqL1xuICByZWFkb25seSBhdXRvU2NhbGluZ0dyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcm9sZSB0aGF0IGFsbG93cyBBbWF6b24gR2FtZUxpZnQgdG8gYWNjZXNzIHlvdXIgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXBzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgaW1wb3J0ZWQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgY2Fubm90IGJlIGdyYW50ZWQgYWNjZXNzIHRvIG90aGVyIHJlc291cmNlcyBhcyBhbiBgaWFtLklHcmFudGFibGVgLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZT86IGlhbS5JUm9sZTtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIG5ldyBHYW1lbGlmdCBGbGVldElRIEdhbWUgc2VydmVyIGdyb3VwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2FtZVNlcnZlckdyb3VwUHJvcHMge1xuICAvKipcbiAgICAgKiBBIGRldmVsb3Blci1kZWZpbmVkIGlkZW50aWZpZXIgZm9yIHRoZSBnYW1lIHNlcnZlciBncm91cC5cbiAgICAgKiBUaGUgbmFtZSBpcyB1bmlxdWUgZm9yIGVhY2ggUmVnaW9uIGluIGVhY2ggQVdTIGFjY291bnQuXG4gICAgICovXG4gIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICAqIFRoZSBJQU0gcm9sZSB0aGF0IGFsbG93cyBBbWF6b24gR2FtZUxpZnQgdG8gYWNjZXNzIHlvdXIgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXBzLlxuICAgICpcbiAgICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2dhbWVsaWZ0L2xhdGVzdC9mbGVldGlxZ3VpZGUvZ3NnLWlhbS1wZXJtaXNzaW9ucy1yb2xlcy5odG1sXG4gICAgKlxuICAgICogQGRlZmF1bHQgLSBhIHJvbGUgd2lsbCBiZSBjcmVhdGVkIHdpdGggZGVmYXVsdCB0cnVzdCB0byBHYW1lbGlmdCBhbmQgQXV0b3NjYWxpbmcgc2VydmljZSBwcmluY2lwYWwgd2l0aCBhIGRlZmF1bHQgcG9saWN5IGBHYW1lTGlmdEdhbWVTZXJ2ZXJHcm91cFBvbGljeWAgYXR0YWNoZWQuXG4gICAgKi9cbiAgcmVhZG9ubHkgcm9sZT86IGlhbS5JUm9sZTtcblxuICAvKipcbiAgICogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGluIHRoZSBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cC5cbiAgICogRHVyaW5nIGF1dG9tYXRpYyBzY2FsaW5nIGV2ZW50cywgR2FtZUxpZnQgRmxlZXRJUSBhbmQgQW1hem9uIEVDMiBkbyBub3Qgc2NhbGUgZG93biB0aGUgZ3JvdXAgYmVsb3cgdGhpcyBtaW5pbXVtLlxuICAgKlxuICAgKiBJbiBwcm9kdWN0aW9uLCB0aGlzIHZhbHVlIHNob3VsZCBiZSBzZXQgdG8gYXQgbGVhc3QgMS5cbiAgICpcbiAgICogQWZ0ZXIgdGhlIEF1dG8gU2NhbGluZyBncm91cCBpcyBjcmVhdGVkLCB1cGRhdGUgdGhpcyB2YWx1ZSBkaXJlY3RseSBpbiB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHVzaW5nIHRoZSBBV1MgY29uc29sZSBvciBBUElzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCBpcyAwXG4gICAqL1xuICByZWFkb25seSBtaW5TaXplPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgICogVGhlIG1heGltdW0gbnVtYmVyIG9mIGluc3RhbmNlcyBhbGxvd2VkIGluIHRoZSBBbWF6b24gRUMyIEF1dG8gU2NhbGluZyBncm91cC4gRHVyaW5nIGF1dG9tYXRpYyBzY2FsaW5nIGV2ZW50cywgR2FtZUxpZnQgRmxlZXRJUSBhbmQgRUMyIGRvIG5vdCBzY2FsZSB1cCB0aGUgZ3JvdXAgYWJvdmUgdGhpcyBtYXhpbXVtLlxuICAgICpcbiAgICAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgdXBkYXRlIHRoaXMgdmFsdWUgZGlyZWN0bHkgaW4gdGhlIEF1dG8gU2NhbGluZyBncm91cCB1c2luZyB0aGUgQVdTIGNvbnNvbGUgb3IgQVBJcy5cbiAgICAqXG4gICAgKiBAZGVmYXVsdCB0aGUgZGVmYXVsdCBpcyAxXG4gICAgKi9cbiAgcmVhZG9ubHkgbWF4U2l6ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIFZQQyBuZXR3b3JrIHRvIHBsYWNlIHRoZSBnYW1lIHNlcnZlciBncm91cCBpbi5cbiAgICpcbiAgICogQnkgZGVmYXVsdCwgYWxsIEdhbWVMaWZ0IEZsZWV0SVEtc3VwcG9ydGVkIEF2YWlsYWJpbGl0eSBab25lcyBhcmUgdXNlZC5cbiAgICpcbiAgICogWW91IGNhbiB1c2UgdGhpcyBwYXJhbWV0ZXIgdG8gc3BlY2lmeSBWUENzIHRoYXQgeW91J3ZlIHNldCB1cC5cbiAgICpcbiAgICogVGhpcyBwcm9wZXJ0eSBjYW5ub3QgYmUgdXBkYXRlZCBhZnRlciB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaXMgY3JlYXRlZCxcbiAgICogYW5kIHRoZSBjb3JyZXNwb25kaW5nIEF1dG8gU2NhbGluZyBncm91cCB3aWxsIGFsd2F5cyB1c2UgdGhlIHByb3BlcnR5IHZhbHVlIHRoYXQgaXMgc2V0IHdpdGggdGhpcyByZXF1ZXN0LFxuICAgKiBldmVuIGlmIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgdXBkYXRlZCBkaXJlY3RseS5cbiAgICovXG4gIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIEdhbWUgc2VydmVyIGdyb3VwIHN1Ym5ldCBzZWxlY3Rpb25cbiAgICpcbiAgICogQGRlZmF1bHQgYWxsIEdhbWVMaWZ0IEZsZWV0SVEtc3VwcG9ydGVkIEF2YWlsYWJpbGl0eSBab25lcyBhcmUgdXNlZC5cbiAgICovXG4gIHJlYWRvbmx5IHZwY1N1Ym5ldHM/OiBlYzIuU3VibmV0U2VsZWN0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgc2V0IG9mIEFtYXpvbiBFQzIgaW5zdGFuY2UgdHlwZXMgdGhhdCBHYW1lTGlmdCBGbGVldElRIGNhbiB1c2Ugd2hlbiBiYWxhbmNpbmcgYW5kIGF1dG9tYXRpY2FsbHkgc2NhbGluZyBpbnN0YW5jZXMgaW4gdGhlIGNvcnJlc3BvbmRpbmcgQXV0byBTY2FsaW5nIGdyb3VwLlxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2VEZWZpbml0aW9uczogSW5zdGFuY2VEZWZpbml0aW9uW107XG5cbiAgLyoqXG4gICAqIFRoZSBBbWF6b24gRUMyIGxhdW5jaCB0ZW1wbGF0ZSB0aGF0IGNvbnRhaW5zIGNvbmZpZ3VyYXRpb24gc2V0dGluZ3MgYW5kIGdhbWUgc2VydmVyIGNvZGUgdG8gYmUgZGVwbG95ZWQgdG8gYWxsIGluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgdXBkYXRlIHRoaXMgdmFsdWUgZGlyZWN0bHkgaW4gdGhlIEF1dG8gU2NhbGluZyBncm91cCB1c2luZyB0aGUgQVdTIGNvbnNvbGUgb3IgQVBJcy5cbiAgICpcbiAgICogTk9URTpcbiAgICogSWYgeW91IHNwZWNpZnkgbmV0d29yayBpbnRlcmZhY2VzIGluIHlvdXIgbGF1bmNoIHRlbXBsYXRlLCB5b3UgbXVzdCBleHBsaWNpdGx5IHNldCB0aGUgcHJvcGVydHkgQXNzb2NpYXRlUHVibGljSXBBZGRyZXNzIHRvIGB0cnVlYC5cbiAgICogSWYgbm8gbmV0d29yayBpbnRlcmZhY2UgaXMgc3BlY2lmaWVkIGluIHRoZSBsYXVuY2ggdGVtcGxhdGUsIEdhbWVMaWZ0IEZsZWV0SVEgdXNlcyB5b3VyIGFjY291bnQncyBkZWZhdWx0IFZQQy5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXV0b3NjYWxpbmcvZWMyL3VzZXJndWlkZS9jcmVhdGUtbGF1bmNoLXRlbXBsYXRlLmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IGxhdW5jaFRlbXBsYXRlOiBlYzIuSUxhdW5jaFRlbXBsYXRlO1xuXG4gIC8qKlxuICAgKiBBIGZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBpbnN0YW5jZXMgaW4gdGhlIGdhbWUgc2VydmVyIGdyb3VwIGFyZSBwcm90ZWN0ZWQgZnJvbSBlYXJseSB0ZXJtaW5hdGlvbi5cbiAgICogVW5wcm90ZWN0ZWQgaW5zdGFuY2VzIHRoYXQgaGF2ZSBhY3RpdmUgZ2FtZSBzZXJ2ZXJzIHJ1bm5pbmcgbWlnaHQgYmUgdGVybWluYXRlZCBkdXJpbmcgYSBzY2FsZS1kb3duIGV2ZW50LCBjYXVzaW5nIHBsYXllcnMgdG8gYmUgZHJvcHBlZCBmcm9tIHRoZSBnYW1lLlxuICAgKiBQcm90ZWN0ZWQgaW5zdGFuY2VzIGNhbm5vdCBiZSB0ZXJtaW5hdGVkIHdoaWxlIHRoZXJlIGFyZSBhY3RpdmUgZ2FtZSBzZXJ2ZXJzIHJ1bm5pbmcgZXhjZXB0IGluIHRoZSBldmVudCBvZiBhIGZvcmNlZCBnYW1lIHNlcnZlciBncm91cCBkZWxldGlvbi5cbiAgICpcbiAgICogQW4gZXhjZXB0aW9uIHRvIHRoaXMgaXMgd2l0aCBTcG90IEluc3RhbmNlcywgd2hpY2ggY2FuIGJlIHRlcm1pbmF0ZWQgYnkgQVdTIHJlZ2FyZGxlc3Mgb2YgcHJvdGVjdGlvbiBzdGF0dXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGdhbWUgc2VydmVycyBydW5uaW5nIG1pZ2h0IGJlIHRlcm1pbmF0ZWQgZHVyaW5nIGEgc2NhbGUtZG93biBldmVudFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdGVjdEdhbWVTZXJ2ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIHNldHRpbmdzIHRvIGRlZmluZSBhIHNjYWxpbmcgcG9saWN5IGZvciB0aGUgQXV0byBTY2FsaW5nIGdyb3VwIHRoYXQgaXMgb3B0aW1pemVkIGZvciBnYW1lIGhvc3RpbmcuXG4gICAqIFRoZSBzY2FsaW5nIHBvbGljeSB1c2VzIHRoZSBtZXRyaWMgYFBlcmNlbnRVdGlsaXplZEdhbWVTZXJ2ZXJzYCB0byBtYWludGFpbiBhIGJ1ZmZlciBvZiBpZGxlIGdhbWUgc2VydmVycyB0aGF0IGNhbiBpbW1lZGlhdGVseSBhY2NvbW1vZGF0ZSBuZXcgZ2FtZXMgYW5kIHBsYXllcnMuXG4gICAqXG4gICAqIEFmdGVyIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAgaXMgY3JlYXRlZCwgdXBkYXRlIHRoaXMgdmFsdWUgZGlyZWN0bHkgaW4gdGhlIEF1dG8gU2NhbGluZyBncm91cCB1c2luZyB0aGUgQVdTIGNvbnNvbGUgb3IgQVBJcy5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gYXV0b3NjYWxpbmcgcG9saWN5IHNldHRsZWRcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9TY2FsaW5nUG9saWN5PzogQXV0b1NjYWxpbmdQb2xpY3k7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIGRlbGV0ZSB0byBwZXJmb3JtLiBUbyBkZWxldGUgYSBnYW1lIHNlcnZlciBncm91cCwgc3BlY2lmeSB0aGUgRGVsZXRlT3B0aW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IFNBRkVfREVMRVRFXG4gICAqL1xuICByZWFkb25seSBkZWxldGVPcHRpb24/OiBEZWxldGVPcHRpb247XG5cbiAgLyoqXG4gICAgKiBJbmRpY2F0ZXMgaG93IEdhbWVMaWZ0IEZsZWV0SVEgYmFsYW5jZXMgdGhlIHVzZSBvZiBTcG90IEluc3RhbmNlcyBhbmQgT24tRGVtYW5kIEluc3RhbmNlcyBpbiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAgKlxuICAgICogQGRlZmF1bHQgU1BPVF9QUkVGRVJSRURcbiAgICAqL1xuICByZWFkb25seSBiYWxhbmNpbmdTdHJhdGVneT86IEJhbGFuY2luZ1N0cmF0ZWd5O1xufVxuXG4vKipcbiAqIENyZWF0ZXMgYSBHYW1lTGlmdCBGbGVldElRIGdhbWUgc2VydmVyIGdyb3VwIGZvciBtYW5hZ2luZyBnYW1lIGhvc3Rpbmcgb24gYSBjb2xsZWN0aW9uIG9mIEFtYXpvbiBFQzIgaW5zdGFuY2VzIGZvciBnYW1lIGhvc3RpbmcuXG4gKiBUaGlzIG9wZXJhdGlvbiBjcmVhdGVzIHRoZSBnYW1lIHNlcnZlciBncm91cCwgY3JlYXRlcyBhbiBBdXRvIFNjYWxpbmcgZ3JvdXAgaW4geW91ciBBV1MgYWNjb3VudCwgYW5kIGVzdGFibGlzaGVzIGEgbGluayBiZXR3ZWVuIHRoZSB0d28gZ3JvdXBzLlxuICogWW91IGNhbiB2aWV3IHRoZSBzdGF0dXMgb2YgeW91ciBnYW1lIHNlcnZlciBncm91cHMgaW4gdGhlIEdhbWVMaWZ0IGNvbnNvbGUuXG4gKiBHYW1lIHNlcnZlciBncm91cCBtZXRyaWNzIGFuZCBldmVudHMgYXJlIGVtaXR0ZWQgdG8gQW1hem9uIENsb3VkV2F0Y2guXG4gKiBCZWZvcmUgY3JlYXRpbmcgYSBuZXcgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHlvdSBtdXN0IGhhdmUgdGhlIGZvbGxvd2luZzpcbiAqICAtIEFuIEFtYXpvbiBFQzIgbGF1bmNoIHRlbXBsYXRlIHRoYXQgc3BlY2lmaWVzIGhvdyB0byBsYXVuY2ggQW1hem9uIEVDMiBpbnN0YW5jZXMgd2l0aCB5b3VyIGdhbWUgc2VydmVyIGJ1aWxkLlxuICogIC0gQW4gSUFNIHJvbGUgdGhhdCBleHRlbmRzIGxpbWl0ZWQgYWNjZXNzIHRvIHlvdXIgQVdTIGFjY291bnQgdG8gYWxsb3cgR2FtZUxpZnQgRmxlZXRJUSB0byBjcmVhdGUgYW5kIGludGVyYWN0IHdpdGggdGhlIEF1dG8gU2NhbGluZyBncm91cC5cbiAqXG4gKiBUbyBjcmVhdGUgYSBuZXcgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIHNwZWNpZnkgYSB1bmlxdWUgZ3JvdXAgbmFtZSwgSUFNIHJvbGUgYW5kIEFtYXpvbiBFQzIgbGF1bmNoIHRlbXBsYXRlLCBhbmQgcHJvdmlkZSBhIGxpc3Qgb2YgaW5zdGFuY2UgdHlwZXMgdGhhdCBjYW4gYmUgdXNlZCBpbiB0aGUgZ3JvdXAuXG4gKiBZb3UgbXVzdCBhbHNvIHNldCBpbml0aWFsIG1heGltdW0gYW5kIG1pbmltdW0gbGltaXRzIG9uIHRoZSBncm91cCdzIGluc3RhbmNlIGNvdW50LlxuICogWW91IGNhbiBvcHRpb25hbGx5IHNldCBhbiBBdXRvIFNjYWxpbmcgcG9saWN5IHdpdGggdGFyZ2V0IHRyYWNraW5nIGJhc2VkIG9uIGEgR2FtZUxpZnQgRmxlZXRJUSBtZXRyaWMuXG4gKlxuICogT25jZSB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAgYW5kIGNvcnJlc3BvbmRpbmcgQXV0byBTY2FsaW5nIGdyb3VwIGFyZSBjcmVhdGVkLCB5b3UgaGF2ZSBmdWxsIGFjY2VzcyB0byBjaGFuZ2UgdGhlIEF1dG8gU2NhbGluZyBncm91cCdzIGNvbmZpZ3VyYXRpb24gYXMgbmVlZGVkLlxuICogU2V2ZXJhbCBwcm9wZXJ0aWVzIHRoYXQgYXJlIHNldCB3aGVuIGNyZWF0aW5nIGEgZ2FtZSBzZXJ2ZXIgZ3JvdXAsIGluY2x1ZGluZyBtYXhpbXVtL21pbmltdW0gc2l6ZSBhbmQgYXV0by1zY2FsaW5nIHBvbGljeSBzZXR0aW5ncywgbXVzdCBiZSB1cGRhdGVkIGRpcmVjdGx5IGluIHRoZSBBdXRvIFNjYWxpbmcgZ3JvdXAuXG4gKiBLZWVwIGluIG1pbmQgdGhhdCBzb21lIEF1dG8gU2NhbGluZyBncm91cCBwcm9wZXJ0aWVzIGFyZSBwZXJpb2RpY2FsbHkgdXBkYXRlZCBieSBHYW1lTGlmdCBGbGVldElRIGFzIHBhcnQgb2YgaXRzIGJhbGFuY2luZyBhY3Rpdml0aWVzIHRvIG9wdGltaXplIGZvciBhdmFpbGFiaWxpdHkgYW5kIGNvc3QuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZ2FtZWxpZnQvbGF0ZXN0L2ZsZWV0aXFndWlkZS9nc2ctaW50cm8uaHRtbFxuICpcbiAqIEByZXNvdXJjZSBBV1M6OkdhbWVMaWZ0OjpHYW1lU2VydmVyR3JvdXBcbiAqL1xuZXhwb3J0IGNsYXNzIEdhbWVTZXJ2ZXJHcm91cCBleHRlbmRzIEdhbWVTZXJ2ZXJHcm91cEJhc2Uge1xuXG4gIC8qKlxuICAgKiBJbXBvcnQgYW4gZXhpc3RpbmcgZ2FtZSBzZXJ2ZXIgZ3JvdXAgZnJvbSBpdHMgYXR0cmlidXRlcy5cbiAgICovXG4gIHN0YXRpYyBmcm9tR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcyhzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBhdHRyczogR2FtZVNlcnZlckdyb3VwQXR0cmlidXRlcyk6IElHYW1lU2VydmVyR3JvdXAge1xuICAgIGlmICghYXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJuICYmICFhdHRycy5nYW1lU2VydmVyR3JvdXBOYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBnYW1lU2VydmVyR3JvdXBOYW1lIG9yIGdhbWVTZXJ2ZXJHcm91cEFybiBtdXN0IGJlIHByb3ZpZGVkIGluIEdhbWVTZXJ2ZXJHcm91cEF0dHJpYnV0ZXMnKTtcbiAgICB9XG4gICAgY29uc3QgZ2FtZVNlcnZlckdyb3VwTmFtZSA9IGF0dHJzLmdhbWVTZXJ2ZXJHcm91cE5hbWUgPz9cbiAgICAgIGNkay5TdGFjay5vZihzY29wZSkuc3BsaXRBcm4oYXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJuISwgY2RrLkFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FKS5yZXNvdXJjZU5hbWU7XG5cbiAgICBpZiAoIWdhbWVTZXJ2ZXJHcm91cE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gZ2FtZSBzZXJ2ZXIgZ3JvdXAgbmFtZSBmb3VuZCBpbiBBUk46ICcke2F0dHJzLmdhbWVTZXJ2ZXJHcm91cEFybn0nYCk7XG4gICAgfVxuXG4gICAgY29uc3QgZ2FtZVNlcnZlckdyb3VwQXJuID0gYXR0cnMuZ2FtZVNlcnZlckdyb3VwQXJuID8/IGNkay5TdGFjay5vZihzY29wZSkuZm9ybWF0QXJuKHtcbiAgICAgIHNlcnZpY2U6ICdnYW1lbGlmdCcsXG4gICAgICByZXNvdXJjZTogJ2dhbWVzZXJ2ZXJncm91cCcsXG4gICAgICByZXNvdXJjZU5hbWU6IGF0dHJzLmdhbWVTZXJ2ZXJHcm91cE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcblxuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEdhbWVTZXJ2ZXJHcm91cEJhc2Uge1xuICAgICAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWUgPSBnYW1lU2VydmVyR3JvdXBOYW1lITtcbiAgICAgIHB1YmxpYyByZWFkb25seSBnYW1lU2VydmVyR3JvdXBBcm4gPSBnYW1lU2VydmVyR3JvdXBBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgYXV0b1NjYWxpbmdHcm91cEFybiA9IGF0dHJzLmF1dG9TY2FsaW5nR3JvdXBBcm47XG4gICAgICBwdWJsaWMgcmVhZG9ubHkgZ3JhbnRQcmluY2lwYWwgPSBhdHRycy5yb2xlID8/IG5ldyBpYW0uVW5rbm93blByaW5jaXBhbCh7IHJlc291cmNlOiB0aGlzIH0pO1xuICAgICAgcHVibGljIHJlYWRvbmx5IHJvbGUgPSBhdHRycy5yb2xlO1xuXG4gICAgICBjb25zdHJ1Y3RvcihzOiBDb25zdHJ1Y3QsIGk6IHN0cmluZykge1xuICAgICAgICBzdXBlcihzLCBpLCB7XG4gICAgICAgICAgZW52aXJvbm1lbnRGcm9tQXJuOiBnYW1lU2VydmVyR3JvdXBBcm4sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBnYW1lIHNlcnZlciBncm91cFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEFSTiBvZiB0aGUgZ2FtZSBzZXJ2ZXIgZ3JvdXAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZ2FtZVNlcnZlckdyb3VwQXJuOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBUk4gb2YgdGhlIGdlbmVyYXRlZCBBdXRvU2NhbGluZyBncm91cFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF1dG9TY2FsaW5nR3JvdXBBcm46IHN0cmluZztcblxuICAvKipcbiAgICAqIFRoZSBJQU0gcm9sZSB0aGF0IGFsbG93cyBBbWF6b24gR2FtZUxpZnQgdG8gYWNjZXNzIHlvdXIgQW1hem9uIEVDMiBBdXRvIFNjYWxpbmcgZ3JvdXBzLlxuICAgICovXG4gIHB1YmxpYyByZWFkb25seSByb2xlOiBpYW0uSVJvbGU7XG5cbiAgLyoqXG4gICAgKiBUaGUgcHJpbmNpcGFsIHRoaXMgR2FtZUxpZnQgZ2FtZSBzZXJ2ZXIgZ3JvdXAgaXMgdXNpbmcuXG4gICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGdyYW50UHJpbmNpcGFsOiBpYW0uSVByaW5jaXBhbDtcblxuICAvKipcbiAgICogVGhlIFZQQyBuZXR3b3JrIHRvIHBsYWNlIHRoZSBnYW1lIHNlcnZlciBncm91cCBpbi5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuXG4gIC8qKlxuICAgICogVGhlIGdhbWUgc2VydmVyIGdyb3VwJ3Mgc3VibmV0cy5cbiAgICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdnBjU3VibmV0cz86IGVjMi5TdWJuZXRTZWxlY3Rpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBwaHlzaWNhbE5hbWU6IHByb3BzLmdhbWVTZXJ2ZXJHcm91cE5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAoIWNkay5Ub2tlbi5pc1VucmVzb2x2ZWQocHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZSkpIHtcbiAgICAgIGlmIChwcm9wcy5nYW1lU2VydmVyR3JvdXBOYW1lLmxlbmd0aCA+IDEyOCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEdhbWVTZXJ2ZXJHcm91cCBuYW1lIGNhbiBub3QgYmUgbG9uZ2VyIHRoYW4gMTI4IGNoYXJhY3RlcnMgYnV0IGhhcyAke3Byb3BzLmdhbWVTZXJ2ZXJHcm91cE5hbWUubGVuZ3RofSBjaGFyYWN0ZXJzLmApO1xuICAgICAgfVxuXG4gICAgICBpZiAoIS9eW2EtekEtWjAtOS1cXC5dKyQvLnRlc3QocHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBHYW1lIHNlcnZlciBncm91cCBuYW1lICR7cHJvcHMuZ2FtZVNlcnZlckdyb3VwTmFtZX0gY2FuIGNvbnRhaW4gb25seSBsZXR0ZXJzLCBudW1iZXJzLCBoeXBoZW5zLCBiYWNrIHNsYXNoIG9yIGRvdCB3aXRoIG5vIHNwYWNlcy5gKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnZwYyA9IHByb3BzLnZwYztcbiAgICB0aGlzLnZwY1N1Ym5ldHMgPSBwcm9wcy52cGNTdWJuZXRzID8/IHsgc3VibmV0VHlwZTogZWMyLlN1Ym5ldFR5cGUuUFVCTElDIH07XG4gICAgY29uc3QgeyBzdWJuZXRJZHMgfSA9IHByb3BzLnZwYy5zZWxlY3RTdWJuZXRzKHRoaXMudnBjU3VibmV0cyk7XG5cbiAgICBpZiAocHJvcHMubWluU2l6ZSAmJiBwcm9wcy5taW5TaXplIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWluaW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwIGNhbm5vdCBiZSBsb3dlciB0aGFuIDAsIGdpdmVuICR7cHJvcHMubWluU2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMubWF4U2l6ZSAmJiBwcm9wcy5tYXhTaXplIDwgMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgbWF4aW11bSBudW1iZXIgb2YgaW5zdGFuY2VzIGFsbG93ZWQgaW4gdGhlIEFtYXpvbiBFQzIgQXV0byBTY2FsaW5nIGdyb3VwIGNhbm5vdCBiZSBsb3dlciB0aGFuIDEsIGdpdmVuICR7cHJvcHMubWF4U2l6ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAoc3VibmV0SWRzLmxlbmd0aCA+IDIwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIG1vcmUgdGhhbiAyMCBzdWJuZXRzIGFyZSBhbGxvd2VkIHBlciBnYW1lIHNlcnZlciBncm91cCwgZ2l2ZW4gJHtzdWJuZXRJZHMubGVuZ3RofWApO1xuICAgIH1cblxuICAgIC8vIEFkZCBhbGwgaW5zdGFuY2UgZGVmaW5pdGlvbnNcbiAgICBpZiAocHJvcHMuaW5zdGFuY2VEZWZpbml0aW9ucy5sZW5ndGggPiAyMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBtb3JlIHRoYW4gMjAgaW5zdGFuY2UgZGVmaW5pdGlvbnMgYXJlIGFsbG93ZWQgcGVyIGdhbWUgc2VydmVyIGdyb3VwLCBnaXZlbiAke3Byb3BzLmluc3RhbmNlRGVmaW5pdGlvbnMubGVuZ3RofWApO1xuICAgIH1cblxuICAgIHRoaXMucm9sZSA9IHByb3BzLnJvbGUgPz8gbmV3IGlhbS5Sb2xlKHRoaXMsICdTZXJ2aWNlUm9sZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5Db21wb3NpdGVQcmluY2lwYWwoXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZ2FtZWxpZnQuYW1hem9uYXdzLmNvbScpLFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoJ2F1dG9zY2FsaW5nLmFtYXpvbmF3cy5jb20nKSksXG4gICAgICBtYW5hZ2VkUG9saWNpZXM6IFtcbiAgICAgICAgaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKCdHYW1lTGlmdEdhbWVTZXJ2ZXJHcm91cFBvbGljeScpLFxuICAgICAgXSxcbiAgICB9KTtcbiAgICB0aGlzLmdyYW50UHJpbmNpcGFsID0gdGhpcy5yb2xlO1xuXG4gICAgY29uc3QgcmVzb3VyY2UgPSBuZXcgQ2ZuR2FtZVNlcnZlckdyb3VwKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIGdhbWVTZXJ2ZXJHcm91cE5hbWU6IHRoaXMucGh5c2ljYWxOYW1lLFxuICAgICAgYXV0b1NjYWxpbmdQb2xpY3k6IHRoaXMucGFyc2VBdXRvU2NhbGluZ1BvbGljeShwcm9wcyksXG4gICAgICBkZWxldGVPcHRpb246IHByb3BzLmRlbGV0ZU9wdGlvbixcbiAgICAgIGJhbGFuY2luZ1N0cmF0ZWd5OiBwcm9wcy5iYWxhbmNpbmdTdHJhdGVneSxcbiAgICAgIGdhbWVTZXJ2ZXJQcm90ZWN0aW9uUG9saWN5OiBwcm9wcy5wcm90ZWN0R2FtZVNlcnZlciA/ICdGVUxMX1BST1RFQ1RJT04nIDogJ05PX1BST1RFQ1RJT04nLFxuICAgICAgaW5zdGFuY2VEZWZpbml0aW9uczogdGhpcy5wYXJzZUluc3RhbmNlRGVmaW5pdGlvbnMocHJvcHMpLFxuICAgICAgbGF1bmNoVGVtcGxhdGU6IHRoaXMucGFyc2VMYXVuY2hUZW1wbGF0ZShwcm9wcyksXG4gICAgICBtaW5TaXplOiBwcm9wcy5taW5TaXplLFxuICAgICAgbWF4U2l6ZTogcHJvcHMubWF4U2l6ZSxcbiAgICAgIHJvbGVBcm46IHRoaXMucm9sZS5yb2xlQXJuLFxuICAgICAgdnBjU3VibmV0czogc3VibmV0SWRzLFxuICAgIH0pO1xuXG4gICAgdGhpcy5nYW1lU2VydmVyR3JvdXBOYW1lID0gdGhpcy5nZXRSZXNvdXJjZU5hbWVBdHRyaWJ1dGUocmVzb3VyY2UucmVmKTtcbiAgICB0aGlzLmdhbWVTZXJ2ZXJHcm91cEFybiA9IHRoaXMuZ2V0UmVzb3VyY2VBcm5BdHRyaWJ1dGUocmVzb3VyY2UuYXR0ckdhbWVTZXJ2ZXJHcm91cEFybiwge1xuICAgICAgc2VydmljZTogJ2dhbWVsaWZ0JyxcbiAgICAgIHJlc291cmNlOiAnZ2FtZXNlcnZlcmdyb3VwJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuU0xBU0hfUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcbiAgICB0aGlzLmF1dG9TY2FsaW5nR3JvdXBBcm4gPSB0aGlzLmdldFJlc291cmNlQXJuQXR0cmlidXRlKHJlc291cmNlLmF0dHJBdXRvU2NhbGluZ0dyb3VwQXJuLCB7XG4gICAgICBzZXJ2aWNlOiAnYXV0b3NjYWxpbmcnLFxuICAgICAgcmVzb3VyY2U6ICdhdXRvU2NhbGluZ0dyb3VwJyxcbiAgICAgIHJlc291cmNlTmFtZTogdGhpcy5waHlzaWNhbE5hbWUsXG4gICAgICBhcm5Gb3JtYXQ6IGNkay5Bcm5Gb3JtYXQuQ09MT05fUkVTT1VSQ0VfTkFNRSxcbiAgICB9KTtcblxuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlTGF1bmNoVGVtcGxhdGUocHJvcHM6IEdhbWVTZXJ2ZXJHcm91cFByb3BzKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkxhdW5jaFRlbXBsYXRlUHJvcGVydHkge1xuICAgIHJldHVybiB7XG4gICAgICBsYXVuY2hUZW1wbGF0ZUlkOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXVuY2hUZW1wbGF0ZUlkLFxuICAgICAgbGF1bmNoVGVtcGxhdGVOYW1lOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS5sYXVuY2hUZW1wbGF0ZU5hbWUsXG4gICAgICB2ZXJzaW9uOiBwcm9wcy5sYXVuY2hUZW1wbGF0ZS52ZXJzaW9uTnVtYmVyLFxuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgcGFyc2VBdXRvU2NhbGluZ1BvbGljeShwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpOiBDZm5HYW1lU2VydmVyR3JvdXAuQXV0b1NjYWxpbmdQb2xpY3lQcm9wZXJ0eSB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCFwcm9wcy5hdXRvU2NhbGluZ1BvbGljeSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZXN0aW1hdGVkSW5zdGFuY2VXYXJtdXA6IHByb3BzLmF1dG9TY2FsaW5nUG9saWN5LmVzdGltYXRlZEluc3RhbmNlV2FybXVwPy50b1NlY29uZHMoKSxcbiAgICAgIHRhcmdldFRyYWNraW5nQ29uZmlndXJhdGlvbjoge1xuICAgICAgICB0YXJnZXRWYWx1ZTogcHJvcHMuYXV0b1NjYWxpbmdQb2xpY3kudGFyZ2V0VHJhY2tpbmdDb25maWd1cmF0aW9uLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJvdGVjdGVkIHBhcnNlSW5zdGFuY2VEZWZpbml0aW9ucyhwcm9wczogR2FtZVNlcnZlckdyb3VwUHJvcHMpOiBDZm5HYW1lU2VydmVyR3JvdXAuSW5zdGFuY2VEZWZpbml0aW9uUHJvcGVydHlbXSB7XG4gICAgcmV0dXJuIHByb3BzLmluc3RhbmNlRGVmaW5pdGlvbnMubWFwKHBhcnNlSW5zdGFuY2VEZWZpbml0aW9uKTtcblxuICAgIGZ1bmN0aW9uIHBhcnNlSW5zdGFuY2VEZWZpbml0aW9uKGluc3RhbmNlRGVmaW5pdGlvbjogSW5zdGFuY2VEZWZpbml0aW9uKTogQ2ZuR2FtZVNlcnZlckdyb3VwLkluc3RhbmNlRGVmaW5pdGlvblByb3BlcnR5IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGluc3RhbmNlVHlwZTogaW5zdGFuY2VEZWZpbml0aW9uLmluc3RhbmNlVHlwZS50b1N0cmluZygpLFxuICAgICAgICB3ZWlnaHRlZENhcGFjaXR5OiBpbnN0YW5jZURlZmluaXRpb24ud2VpZ2h0Py50b1N0cmluZygpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn0iXX0=
|