@aws-cdk/app-staging-synthesizer-alpha 2.261.0-alpha.0 → 2.262.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 CHANGED
@@ -8,7 +8,7 @@
8
8
  "url": "https://aws.amazon.com"
9
9
  },
10
10
  "dependencies": {
11
- "aws-cdk-lib": "^2.261.0",
11
+ "aws-cdk-lib": "^2.262.0",
12
12
  "constructs": "^10.5.0"
13
13
  },
14
14
  "dependencyClosure": {
@@ -1150,6 +1150,19 @@
1150
1150
  }
1151
1151
  }
1152
1152
  },
1153
+ "aws-cdk-lib.aws_controlcatalog": {
1154
+ "targets": {
1155
+ "dotnet": {
1156
+ "namespace": "Amazon.CDK.AWS.ControlCatalog"
1157
+ },
1158
+ "java": {
1159
+ "package": "software.amazon.awscdk.services.controlcatalog"
1160
+ },
1161
+ "python": {
1162
+ "module": "aws_cdk.aws_controlcatalog"
1163
+ }
1164
+ }
1165
+ },
1153
1166
  "aws-cdk-lib.aws_controltower": {
1154
1167
  "targets": {
1155
1168
  "dotnet": {
@@ -1202,6 +1215,19 @@
1202
1215
  }
1203
1216
  }
1204
1217
  },
1218
+ "aws-cdk-lib.aws_dataexchange": {
1219
+ "targets": {
1220
+ "dotnet": {
1221
+ "namespace": "Amazon.CDK.AWS.DataExchange"
1222
+ },
1223
+ "java": {
1224
+ "package": "software.amazon.awscdk.services.dataexchange"
1225
+ },
1226
+ "python": {
1227
+ "module": "aws_cdk.aws_dataexchange"
1228
+ }
1229
+ }
1230
+ },
1205
1231
  "aws-cdk-lib.aws_datapipeline": {
1206
1232
  "targets": {
1207
1233
  "dotnet": {
@@ -3015,6 +3041,19 @@
3015
3041
  }
3016
3042
  }
3017
3043
  },
3044
+ "aws-cdk-lib.aws_outposts": {
3045
+ "targets": {
3046
+ "dotnet": {
3047
+ "namespace": "Amazon.CDK.AWS.Outposts"
3048
+ },
3049
+ "java": {
3050
+ "package": "software.amazon.awscdk.services.outposts"
3051
+ },
3052
+ "python": {
3053
+ "module": "aws_cdk.aws_outposts"
3054
+ }
3055
+ }
3056
+ },
3018
3057
  "aws-cdk-lib.aws_panorama": {
3019
3058
  "targets": {
3020
3059
  "dotnet": {
@@ -5464,6 +5503,22 @@
5464
5503
  }
5465
5504
  }
5466
5505
  },
5506
+ "aws-cdk-lib.interfaces.aws_controlcatalog": {
5507
+ "targets": {
5508
+ "dotnet": {
5509
+ "namespace": "Amazon.CDK.Interfaces.ControlCatalog"
5510
+ },
5511
+ "go": {
5512
+ "packageName": "interfacesawscontrolcatalog"
5513
+ },
5514
+ "java": {
5515
+ "package": "software.amazon.awscdk.interfaces.controlcatalog"
5516
+ },
5517
+ "python": {
5518
+ "module": "aws_cdk.interfaces.aws_controlcatalog"
5519
+ }
5520
+ }
5521
+ },
5467
5522
  "aws-cdk-lib.interfaces.aws_controltower": {
5468
5523
  "targets": {
5469
5524
  "dotnet": {
@@ -5528,6 +5583,22 @@
5528
5583
  }
5529
5584
  }
5530
5585
  },
5586
+ "aws-cdk-lib.interfaces.aws_dataexchange": {
5587
+ "targets": {
5588
+ "dotnet": {
5589
+ "namespace": "Amazon.CDK.Interfaces.DataExchange"
5590
+ },
5591
+ "go": {
5592
+ "packageName": "interfacesawsdataexchange"
5593
+ },
5594
+ "java": {
5595
+ "package": "software.amazon.awscdk.interfaces.dataexchange"
5596
+ },
5597
+ "python": {
5598
+ "module": "aws_cdk.interfaces.aws_dataexchange"
5599
+ }
5600
+ }
5601
+ },
5531
5602
  "aws-cdk-lib.interfaces.aws_datapipeline": {
5532
5603
  "targets": {
5533
5604
  "dotnet": {
@@ -7544,6 +7615,22 @@
7544
7615
  }
7545
7616
  }
7546
7617
  },
7618
+ "aws-cdk-lib.interfaces.aws_outposts": {
7619
+ "targets": {
7620
+ "dotnet": {
7621
+ "namespace": "Amazon.CDK.Interfaces.Outposts"
7622
+ },
7623
+ "go": {
7624
+ "packageName": "interfacesawsoutposts"
7625
+ },
7626
+ "java": {
7627
+ "package": "software.amazon.awscdk.interfaces.outposts"
7628
+ },
7629
+ "python": {
7630
+ "module": "aws_cdk.interfaces.aws_outposts"
7631
+ }
7632
+ }
7633
+ },
7547
7634
  "aws-cdk-lib.interfaces.aws_panorama": {
7548
7635
  "targets": {
7549
7636
  "dotnet": {
@@ -10772,6 +10859,6 @@
10772
10859
  "symbolId": "lib/default-staging-stack:UsingAppStagingSynthesizer"
10773
10860
  }
10774
10861
  },
10775
- "version": "2.261.0-alpha.0",
10862
+ "version": "2.262.0-alpha.0",
10776
10863
  "fingerprint": "**********"
10777
10864
  }
Binary file
@@ -17,7 +17,7 @@ const ENV_AWARE_STACKS = new app_global_1.AppScopedGlobal(() => new Set());
17
17
  */
18
18
  class AppStagingSynthesizer extends core_1.StackSynthesizer {
19
19
  props;
20
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.AppStagingSynthesizer", version: "2.261.0-alpha.0" };
20
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.AppStagingSynthesizer", version: "2.262.0-alpha.0" };
21
21
  /**
22
22
  * Default ARN qualifier
23
23
  */
@@ -235,7 +235,7 @@ class BoundAppStagingSynthesizer extends core_1.StackSynthesizer {
235
235
  displayName: asset.displayName,
236
236
  });
237
237
  if (dependencyStack) {
238
- this.boundStack.addDependency(dependencyStack, 'stack depends on the staging stack for staging resources');
238
+ this.boundStack.addStackDependency(dependencyStack, 'stack depends on the staging stack for staging resources');
239
239
  this.dependencyStacks.add(dependencyStack);
240
240
  }
241
241
  return this.cloudFormationLocationFromFileAsset(location);
@@ -252,10 +252,10 @@ class BoundAppStagingSynthesizer extends core_1.StackSynthesizer {
252
252
  displayName: asset.displayName,
253
253
  });
254
254
  if (dependencyStack) {
255
- this.boundStack.addDependency(dependencyStack, 'stack depends on the staging stack for staging resources');
255
+ this.boundStack.addStackDependency(dependencyStack, 'stack depends on the staging stack for staging resources');
256
256
  this.dependencyStacks.add(dependencyStack);
257
257
  }
258
258
  return this.cloudFormationLocationFromDockerImageAsset(location);
259
259
  }
260
260
  }
261
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXN0YWdpbmctc3ludGhlc2l6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhcHAtc3RhZ2luZy1zeW50aGVzaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVVBLDJDQUswQjtBQUMxQiw0RUFBeUc7QUFFekcsdURBQXlEO0FBRXpELG1FQUE4RDtBQUM5RCx1RUFBeUc7QUFDekcscURBQXVEO0FBQ3ZELG1EQUF1RDtBQUd2RCxNQUFNLGVBQWUsR0FBRyxJQUFJLDRCQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxHQUFHLEVBQVMsQ0FBQyxDQUFDO0FBQ3BFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSw0QkFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksR0FBRyxFQUFTLENBQUMsQ0FBQztBQXlFckU7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHVCQUFnQjtJQXVFcEI7O0lBdEVyQzs7T0FFRztJQUNJLE1BQU0sQ0FBVSxpQkFBaUIsR0FBRyxXQUFXLENBQUM7SUFFdkQ7O09BRUc7SUFDSSxNQUFNLENBQVUsK0JBQStCLEdBQUcsbUhBQW1ILENBQUM7SUFFN0s7O09BRUc7SUFDSSxNQUFNLENBQVUsdUJBQXVCLEdBQUcsaUhBQWlILENBQUM7SUFFbks7O09BRUc7SUFDSSxNQUFNLENBQVUsdUJBQXVCLEdBQUcsaUhBQWlILENBQUM7SUFFbks7O09BRUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBZ0M7Ozs7Ozs7Ozs7UUFDN0QsSUFBQSw0QkFBZ0IsRUFBQyxPQUFPLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztRQUVuRCxPQUFPLHFCQUFxQixDQUFDLGFBQWEsQ0FBQztZQUN6QyxPQUFPLEVBQUUsMkNBQW1CLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUM3QyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsb0JBQW9CO1lBQ2xELGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7WUFDOUMsVUFBVSxF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QUFTO1NBQ2xHLEVBQUU7WUFDRCxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxlQUFlLEVBQUUsMERBQTBELENBQUMsQ0FBQztZQUMzRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQywwQ0FBMEMsQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUNsRTtDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBEb2NrZXJJbWFnZUFzc2V0TG9jYXRpb24sXG4gIERvY2tlckltYWdlQXNzZXRTb3VyY2UsXG4gIEZpbGVBc3NldExvY2F0aW9uLFxuICBGaWxlQXNzZXRTb3VyY2UsXG4gIElCb3VuZFN0YWNrU3ludGhlc2l6ZXIgYXMgSUJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyLFxuICBJUmV1c2FibGVTdGFja1N5bnRoZXNpemVyLFxuICBJU3ludGhlc2lzU2Vzc2lvbixcbiAgU3RhY2ssXG59IGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHtcbiAgQXNzZXRNYW5pZmVzdEJ1aWxkZXIsXG4gIEJPT1RTVFJBUF9RVUFMSUZJRVJfQ09OVEVYVCxcbiAgU3RhY2tTeW50aGVzaXplcixcbiAgVG9rZW4sXG59IGZyb20gJ2F3cy1jZGstbGliL2NvcmUnO1xuaW1wb3J0IHsgU3RyaW5nU3BlY2lhbGl6ZXIsIHRyYW5zbGF0ZUNmblRva2VuVG9Bc3NldFRva2VuIH0gZnJvbSAnYXdzLWNkay1saWIvY29yZS9saWIvaGVscGVycy1pbnRlcm5hbCc7XG5pbXBvcnQgdHlwZSB7IEJvb3RzdHJhcFJvbGUsIEJvb3RzdHJhcFJvbGVzIH0gZnJvbSAnLi9ib290c3RyYXAtcm9sZXMnO1xuaW1wb3J0IHsgRGVwbG95bWVudElkZW50aXRpZXMgfSBmcm9tICcuL2Jvb3RzdHJhcC1yb2xlcyc7XG5pbXBvcnQgdHlwZSB7IERlZmF1bHRTdGFnaW5nU3RhY2tPcHRpb25zIH0gZnJvbSAnLi9kZWZhdWx0LXN0YWdpbmctc3RhY2snO1xuaW1wb3J0IHsgRGVmYXVsdFN0YWdpbmdTdGFjayB9IGZyb20gJy4vZGVmYXVsdC1zdGFnaW5nLXN0YWNrJztcbmltcG9ydCB7IFBlckVudmlyb25tZW50U3RhZ2luZ0ZhY3RvcnkgYXMgUGVyRW52aXJvbm1lbnRTdGFnaW5nRmFjdG9yeSB9IGZyb20gJy4vcGVyLWVudi1zdGFnaW5nLWZhY3RvcnknO1xuaW1wb3J0IHsgQXBwU2NvcGVkR2xvYmFsIH0gZnJvbSAnLi9wcml2YXRlL2FwcC1nbG9iYWwnO1xuaW1wb3J0IHsgdmFsaWRhdGVOb1Rva2VucyB9IGZyb20gJy4vcHJpdmF0ZS9uby10b2tlbnMnO1xuaW1wb3J0IHR5cGUgeyBJU3RhZ2luZ1Jlc291cmNlcywgSVN0YWdpbmdSZXNvdXJjZXNGYWN0b3J5LCBPYnRhaW5TdGFnaW5nUmVzb3VyY2VzQ29udGV4dCB9IGZyb20gJy4vc3RhZ2luZy1zdGFjayc7XG5cbmNvbnN0IEFHTk9TVElDX1NUQUNLUyA9IG5ldyBBcHBTY29wZWRHbG9iYWwoKCkgPT4gbmV3IFNldDxTdGFjaz4oKSk7XG5jb25zdCBFTlZfQVdBUkVfU1RBQ0tTID0gbmV3IEFwcFNjb3BlZEdsb2JhbCgoKSA9PiBuZXcgU2V0PFN0YWNrPigpKTtcblxuLyoqXG4gKiBPcHRpb25zIHRoYXQgYXBwbHkgdG8gYWxsIEFwcFN0YWdpbmdTeW50aGVzaXplciB2YXJpYW50c1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwcFN0YWdpbmdTeW50aGVzaXplck9wdGlvbnMge1xuICAvKipcbiAgICogV2hhdCByb2xlcyB0byB1c2UgdG8gZGVwbG95IGFwcGxpY2F0aW9uc1xuICAgKlxuICAgKiBUaGVzZSBhcmUgdGhlIHJvbGVzIHRoYXQgaGF2ZSBwZXJtaXNzaW9ucyB0byBpbnRlcmFjdCB3aXRoIENsb3VkRm9ybWF0aW9uXG4gICAqIG9uIHlvdXIgYmVoYWxmLiBCeSBkZWZhdWx0IHRoZXNlIGFyZSB0aGUgc3RhbmRhcmQgYm9vdHN0cmFwcGVkIENESyByb2xlcyxcbiAgICogYnV0IHlvdSBjYW4gY3VzdG9taXplIHRoZW0gb3IgdHVybiB0aGVtIG9mZiBhbmQgdXNlIHRoZSBDTEkgY3JlZGVudGlhbHNcbiAgICogdG8gZGVwbG95LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFRoZSBzdGFuZGFyZCBib290c3RyYXBwZWQgQ0RLIHJvbGVzXG4gICAqL1xuICByZWFkb25seSBkZXBsb3ltZW50SWRlbnRpdGllcz86IERlcGxveW1lbnRJZGVudGl0aWVzO1xuXG4gIC8qKlxuICAgKiBRdWFsaWZpZXIgdG8gZGlzYW1iaWd1YXRlIG11bHRpcGxlIGJvb3RzdHJhcHBlZCBlbnZpcm9ubWVudHMgaW4gdGhlIHNhbWUgYWNjb3VudFxuICAgKlxuICAgKiBUaGlzIHF1YWxpZmllciBpcyBvbmx5IHVzZWQgdG8gcmVmZXJlbmNlIGJvb3RzdHJhcHBlZCByZXNvdXJjZXMuIEl0IHdpbGwgbm90XG4gICAqIGJlIHVzZWQgaW4gdGhlIGNyZWF0aW9uIG9mIGFwcC1zcGVjaWZpYyBzdGFnaW5nIHJlc291cmNlczogYGFwcElkYCBpcyB1c2VkIGZvciB0aGF0XG4gICAqIGluc3RlYWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gVmFsdWUgb2YgY29udGV4dCBrZXkgJ0Bhd3MtY2RrL2NvcmU6Ym9vdHN0cmFwUXVhbGlmaWVyJyBpZiBzZXQsIG90aGVyd2lzZSBgREVGQVVMVF9RVUFMSUZJRVJgXG4gICAqL1xuICByZWFkb25seSBib290c3RyYXBRdWFsaWZpZXI/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3Igc3RhY2tQZXJFbnYgc3RhdGljIG1ldGhvZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlZmF1bHRSZXNvdXJjZXNPcHRpb25zIGV4dGVuZHMgQXBwU3RhZ2luZ1N5bnRoZXNpemVyT3B0aW9ucywgRGVmYXVsdFN0YWdpbmdTdGFja09wdGlvbnMge31cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjdXN0b21GYWN0b3J5IHN0YXRpYyBtZXRob2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDdXN0b21GYWN0b3J5T3B0aW9ucyBleHRlbmRzIEFwcFN0YWdpbmdTeW50aGVzaXplck9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGZhY3RvcnkgdGhhdCB3aWxsIGJlIHVzZWQgdG8gcmV0dXJuIHN0YWdpbmcgcmVzb3VyY2VzIGZvciBlYWNoIHN0YWNrXG4gICAqL1xuICByZWFkb25seSBmYWN0b3J5OiBJU3RhZ2luZ1Jlc291cmNlc0ZhY3Rvcnk7XG5cbiAgLyoqXG4gICAqIFJldXNlIHRoZSBhbnN3ZXIgZnJvbSB0aGUgZmFjdG9yeSBmb3Igc3RhY2tzIGluIHRoZSBzYW1lIGVudmlyb25tZW50XG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG9uY2VQZXJFbnY/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGN1c3RvbVJlc291cmNlcyBzdGF0aWMgbWV0aG9kXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tUmVzb3VyY2VzT3B0aW9ucyBleHRlbmRzIEFwcFN0YWdpbmdTeW50aGVzaXplck9wdGlvbnMge1xuICAvKipcbiAgICogVXNlIHRoZXNlIGV4YWN0IHN0YWdpbmcgcmVzb3VyY2VzIGZvciBldmVyeSBzdGFjayB0aGF0IHRoaXMgc3ludGhlc2l6ZXIgaXMgdXNlZCBmb3JcbiAgICovXG4gIHJlYWRvbmx5IHJlc291cmNlczogSVN0YWdpbmdSZXNvdXJjZXM7XG59XG5cbi8qKlxuICogSW50ZXJuYWwgcHJvcGVydGllcyBmb3IgQXBwU3RhZ2luZ1N5bnRoZXNpemVyXG4gKi9cbmludGVyZmFjZSBBcHBTdGFnaW5nU3ludGhlc2l6ZXJQcm9wcyBleHRlbmRzIEFwcFN0YWdpbmdTeW50aGVzaXplck9wdGlvbnMge1xuICAvKipcbiAgICogQSBmYWN0b3J5IG1ldGhvZCB0aGF0IGNyZWF0ZXMgYW4gSVN0YWdpbmdTdGFjayB3aGVuIGdpdmVuIHRoZSBzdGFjayB0aGVcbiAgICogc3ludGhlc2l6ZXIgaXMgYmluZGluZy5cbiAgICovXG4gIHJlYWRvbmx5IGZhY3Rvcnk6IElTdGFnaW5nUmVzb3VyY2VzRmFjdG9yeTtcbn1cblxuLyoqXG4gKiBBcHAgU3RhZ2luZyBTeW50aGVzaXplclxuICovXG5leHBvcnQgY2xhc3MgQXBwU3RhZ2luZ1N5bnRoZXNpemVyIGV4dGVuZHMgU3RhY2tTeW50aGVzaXplciBpbXBsZW1lbnRzIElSZXVzYWJsZVN0YWNrU3ludGhlc2l6ZXIge1xuICAvKipcbiAgICogRGVmYXVsdCBBUk4gcXVhbGlmaWVyXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfUVVBTElGSUVSID0gJ2huYjY1OWZkcyc7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgQ2xvdWRGb3JtYXRpb24gcm9sZSBBUk4uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfQ0xPVURGT1JNQVRJT05fUk9MRV9BUk4gPSAnYXJuOiR7QVdTOjpQYXJ0aXRpb259OmlhbTo6JHtBV1M6OkFjY291bnRJZH06cm9sZS9jZGstJHtRdWFsaWZpZXJ9LWNmbi1leGVjLXJvbGUtJHtBV1M6OkFjY291bnRJZH0tJHtBV1M6OlJlZ2lvbn0nO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGRlcGxveSByb2xlIEFSTi5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9ERVBMT1lfUk9MRV9BUk4gPSAnYXJuOiR7QVdTOjpQYXJ0aXRpb259OmlhbTo6JHtBV1M6OkFjY291bnRJZH06cm9sZS9jZGstJHtRdWFsaWZpZXJ9LWRlcGxveS1yb2xlLSR7QVdTOjpBY2NvdW50SWR9LSR7QVdTOjpSZWdpb259JztcblxuICAvKipcbiAgICogRGVmYXVsdCBsb29rdXAgcm9sZSBBUk4gZm9yIG1pc3NpbmcgdmFsdWVzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBERUZBVUxUX0xPT0tVUF9ST0xFX0FSTiA9ICdhcm46JHtBV1M6OlBhcnRpdGlvbn06aWFtOjoke0FXUzo6QWNjb3VudElkfTpyb2xlL2Nkay0ke1F1YWxpZmllcn0tbG9va3VwLXJvbGUtJHtBV1M6OkFjY291bnRJZH0tJHtBV1M6OlJlZ2lvbn0nO1xuXG4gIC8qKlxuICAgKiBVc2UgdGhlIERlZmF1bHQgU3RhZ2luZyBSZXNvdXJjZXMsIGNyZWF0aW5nIGEgc2luZ2xlIHN0YWNrIHBlciBlbnZpcm9ubWVudCB0aGlzIGFwcCBpcyBkZXBsb3llZCBpblxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBkZWZhdWx0UmVzb3VyY2VzKG9wdGlvbnM6IERlZmF1bHRSZXNvdXJjZXNPcHRpb25zKSB7XG4gICAgdmFsaWRhdGVOb1Rva2VucyhvcHRpb25zLCAnQXBwU3RhZ2luZ1N5bnRoZXNpemVyJyk7XG5cbiAgICByZXR1cm4gQXBwU3RhZ2luZ1N5bnRoZXNpemVyLmN1c3RvbUZhY3Rvcnkoe1xuICAgICAgZmFjdG9yeTogRGVmYXVsdFN0YWdpbmdTdGFjay5mYWN0b3J5KG9wdGlvbnMpLFxuICAgICAgZGVwbG95bWVudElkZW50aXRpZXM6IG9wdGlvbnMuZGVwbG95bWVudElkZW50aXRpZXMsXG4gICAgICBib290c3RyYXBRdWFsaWZpZXI6IG9wdGlvbnMuYm9vdHN0cmFwUXVhbGlmaWVyLFxuICAgICAgb25jZVBlckVudjogdHJ1ZSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2UgdGhlc2UgZXhhY3Qgc3RhZ2luZyByZXNvdXJjZXMgZm9yIGV2ZXJ5IHN0YWNrIHRoYXQgdGhpcyBzeW50aGVzaXplciBpcyB1c2VkIGZvclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBjdXN0b21SZXNvdXJjZXMob3B0aW9uczogQ3VzdG9tUmVzb3VyY2VzT3B0aW9ucykge1xuICAgIHJldHVybiBBcHBTdGFnaW5nU3ludGhlc2l6ZXIuY3VzdG9tRmFjdG9yeSh7XG4gICAgICBkZXBsb3ltZW50SWRlbnRpdGllczogb3B0aW9ucy5kZXBsb3ltZW50SWRlbnRpdGllcyxcbiAgICAgIGJvb3RzdHJhcFF1YWxpZmllcjogb3B0aW9ucy5ib290c3RyYXBRdWFsaWZpZXIsXG4gICAgICBvbmNlUGVyRW52OiBmYWxzZSxcbiAgICAgIGZhY3Rvcnk6IHtcbiAgICAgICAgb2J0YWluU3RhZ2luZ1Jlc291cmNlcygpIHtcbiAgICAgICAgICByZXR1cm4gb3B0aW9ucy5yZXNvdXJjZXM7XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1cHBseSB5b3VyIG93biBzdGFnaW5nU3RhY2tGYWN0b3J5IG1ldGhvZCBmb3IgY3JlYXRpbmcgYW4gSVN0YWdpbmdTdGFjayB3aGVuXG4gICAqIGEgc3RhY2sgaXMgYm91bmQgdG8gdGhlIHN5bnRoZXNpemVyLlxuICAgKlxuICAgKiBCeSBkZWZhdWx0LCBgb25jZVBlckVudiA9IHRydWVgLCB3aGljaCBtZWFucyB0aGF0IGEgbmV3IGluc3RhbmNlIG9mIHRoZSBJU3RhZ2luZ1N0YWNrXG4gICAqIHdpbGwgYmUgY3JlYXRlZCBpbiBuZXcgZW52aXJvbm1lbnRzLiBTZXQgYG9uY2VQZXJFbnYgPSBmYWxzZWAgdG8gdHVybiBvZmYgdGhhdCBiZWhhdmlvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY3VzdG9tRmFjdG9yeShvcHRpb25zOiBDdXN0b21GYWN0b3J5T3B0aW9ucykge1xuICAgIGNvbnN0IG9uY2VQZXJFbnYgPSBvcHRpb25zLm9uY2VQZXJFbnYgPz8gdHJ1ZTtcbiAgICBjb25zdCBmYWN0b3J5ID0gb25jZVBlckVudiA/IG5ldyBQZXJFbnZpcm9ubWVudFN0YWdpbmdGYWN0b3J5KG9wdGlvbnMuZmFjdG9yeSkgOiBvcHRpb25zLmZhY3Rvcnk7XG5cbiAgICByZXR1cm4gbmV3IEFwcFN0YWdpbmdTeW50aGVzaXplcih7XG4gICAgICBmYWN0b3J5LFxuICAgICAgYm9vdHN0cmFwUXVhbGlmaWVyOiBvcHRpb25zLmJvb3RzdHJhcFF1YWxpZmllcixcbiAgICAgIGRlcGxveW1lbnRJZGVudGl0aWVzOiBvcHRpb25zLmRlcGxveW1lbnRJZGVudGl0aWVzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSByb2xlczogUmVxdWlyZWQ8Qm9vdHN0cmFwUm9sZXM+O1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9wczogQXBwU3RhZ2luZ1N5bnRoZXNpemVyUHJvcHMpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgY29uc3QgZGVmYXVsdElkZW50aXRpZXMgPSBEZXBsb3ltZW50SWRlbnRpdGllcy5kZWZhdWx0Qm9vdHN0cmFwUm9sZXMoKTtcbiAgICBjb25zdCBpZGVudGl0aWVzID0gcHJvcHMuZGVwbG95bWVudElkZW50aXRpZXMgPz8gRGVwbG95bWVudElkZW50aXRpZXMuZGVmYXVsdEJvb3RzdHJhcFJvbGVzKCk7XG5cbiAgICB0aGlzLnJvbGVzID0ge1xuICAgICAgZGVwbG95bWVudFJvbGU6IGlkZW50aXRpZXMuZGVwbG95bWVudFJvbGUgPz8gZGVmYXVsdElkZW50aXRpZXMuZGVwbG95bWVudFJvbGUhLFxuICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Sb2xlOiBpZGVudGl0aWVzLmNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUm9sZSA/PyBkZWZhdWx0SWRlbnRpdGllcy5jbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblJvbGUhLFxuICAgICAgbG9va3VwUm9sZTogaWRlbnRpdGllcy5sb29rdXBSb2xlID8/IGlkZW50aXRpZXMubG9va3VwUm9sZSEsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgdmVyc2lvbiBvZiB0aGUgc3ludGhlc2l6ZXIgYm91bmQgdG8gYSBzdGFjay5cbiAgICovXG4gIHB1YmxpYyByZXVzYWJsZUJpbmQoc3RhY2s6IFN0YWNrKTogSUJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyIHtcbiAgICB0aGlzLmNoZWNrRW52aXJvbm1lbnRHbm9zdGljaXNtKHN0YWNrKTtcbiAgICBjb25zdCBxdWFsaWZpZXIgPSB0aGlzLnByb3BzLmJvb3RzdHJhcFF1YWxpZmllciA/P1xuICAgICAgc3RhY2subm9kZS50cnlHZXRDb250ZXh0KEJPT1RTVFJBUF9RVUFMSUZJRVJfQ09OVEVYVCkgPz9cbiAgICAgIEFwcFN0YWdpbmdTeW50aGVzaXplci5ERUZBVUxUX1FVQUxJRklFUjtcbiAgICBjb25zdCBzcGVjID0gbmV3IFN0cmluZ1NwZWNpYWxpemVyKHN0YWNrLCBxdWFsaWZpZXIpO1xuXG4gICAgY29uc3QgZGVwbG95Um9sZSA9IHRoaXMucm9sZXMuZGVwbG95bWVudFJvbGUuX3NwZWNpYWxpemUoc3BlYyk7XG5cbiAgICBjb25zdCBjb250ZXh0OiBPYnRhaW5TdGFnaW5nUmVzb3VyY2VzQ29udGV4dCA9IHtcbiAgICAgIGVudmlyb25tZW50U3RyaW5nOiBbXG4gICAgICAgIFRva2VuLmlzVW5yZXNvbHZlZChzdGFjay5hY2NvdW50KSA/ICdBQ0NPVU5UJyA6IHN0YWNrLmFjY291bnQsXG4gICAgICAgIFRva2VuLmlzVW5yZXNvbHZlZChzdGFjay5yZWdpb24pID8gJ1JFR0lPTicgOiBzdGFjay5yZWdpb24sXG4gICAgICBdLmpvaW4oJy0nKSxcbiAgICAgIGRlcGxveVJvbGVBcm46IGRlcGxveVJvbGUuX2FybkZvckNsb3VkRm9ybWF0aW9uKCksXG4gICAgICBxdWFsaWZpZXIsXG4gICAgfTtcblxuICAgIHJldHVybiBuZXcgQm91bmRBcHBTdGFnaW5nU3ludGhlc2l6ZXIoc3RhY2ssIHtcbiAgICAgIHN0YWdpbmdSZXNvdXJjZXM6IHRoaXMucHJvcHMuZmFjdG9yeS5vYnRhaW5TdGFnaW5nUmVzb3VyY2VzKHN0YWNrLCBjb250ZXh0KSxcbiAgICAgIGRlcGxveVJvbGUsXG4gICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblJvbGU6IHRoaXMucm9sZXMuY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Sb2xlLl9zcGVjaWFsaXplKHNwZWMpLFxuICAgICAgbG9va3VwUm9sZTogdGhpcy5yb2xlcy5sb29rdXBSb2xlLl9zcGVjaWFsaXplKHNwZWMpLFxuICAgICAgcXVhbGlmaWVyLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGZvciBsZWdhY3kgcHVycG9zZXM7IHRoaXMgd2lsbCBuZXZlciBiZSBjYWxsZWQuXG4gICAqL1xuICBwdWJsaWMgYmluZChfc3RhY2s6IFN0YWNrKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIGlzIGEgbGVnYWN5IEFQSSwgY2FsbCByZXVzYWJsZUJpbmQgaW5zdGVhZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGZvciBsZWdhY3kgcHVycG9zZXM7IHRoaXMgd2lsbCBuZXZlciBiZSBjYWxsZWQuXG4gICAqL1xuICBwdWJsaWMgc3ludGhlc2l6ZShfc2Vzc2lvbjogSVN5bnRoZXNpc1Nlc3Npb24pOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgaXMgYSBsZWdhY3kgQVBJLCBjYWxsIHJldXNhYmxlQmluZCBpbnN0ZWFkJyk7XG4gIH1cblxuICAvKipcbiAgICogSW1wbGVtZW50ZWQgZm9yIGxlZ2FjeSBwdXJwb3NlczsgdGhpcyB3aWxsIG5ldmVyIGJlIGNhbGxlZC5cbiAgICovXG4gIHB1YmxpYyBhZGRGaWxlQXNzZXQoX2Fzc2V0OiBGaWxlQXNzZXRTb3VyY2UpOiBGaWxlQXNzZXRMb2NhdGlvbiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIGlzIGEgbGVnYWN5IEFQSSwgY2FsbCByZXVzYWJsZUJpbmQgaW5zdGVhZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGZvciBsZWdhY3kgcHVycG9zZXM7IHRoaXMgd2lsbCBuZXZlciBiZSBjYWxsZWQuXG4gICAqL1xuICBwdWJsaWMgYWRkRG9ja2VySW1hZ2VBc3NldChfYXNzZXQ6IERvY2tlckltYWdlQXNzZXRTb3VyY2UpOiBEb2NrZXJJbWFnZUFzc2V0TG9jYXRpb24ge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBpcyBhIGxlZ2FjeSBBUEksIGNhbGwgcmV1c2FibGVCaW5kIGluc3RlYWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayB0aGF0IHdlJ3JlIG9ubHkgYmVpbmcgdXNlZCBmb3IgZXhjbHVzaXZlbHkgZ25vc3RpYyBvciBhZ25vc3RpYyBzdGFja3MuXG4gICAqXG4gICAqIFdlIGNhbiB0aGluayBhYm91dCB3aGV0aGVyIHRvIGxvb3NlbiB0aGlzIHJlcXVpcmVtZW50IGxhdGVyLlxuICAgKi9cbiAgcHJpdmF0ZSBjaGVja0Vudmlyb25tZW50R25vc3RpY2lzbShzdGFjazogU3RhY2spIHtcbiAgICBjb25zdCBpc0Fnbm9zdGljID0gVG9rZW4uaXNVbnJlc29sdmVkKHN0YWNrLmFjY291bnQpIHx8IFRva2VuLmlzVW5yZXNvbHZlZChzdGFjay5yZWdpb24pO1xuICAgIGNvbnN0IGFnbm9zdGljU3RhY2tzID0gQUdOT1NUSUNfU1RBQ0tTLmZvcihzdGFjayk7XG4gICAgY29uc3QgZW52QXdhcmVTdGFja3MgPSBFTlZfQVdBUkVfU1RBQ0tTLmZvcihzdGFjayk7XG5cbiAgICAoaXNBZ25vc3RpYyA/IGFnbm9zdGljU3RhY2tzIDogZW52QXdhcmVTdGFja3MpLmFkZChzdGFjayk7XG4gICAgaWYgKGFnbm9zdGljU3RhY2tzLnNpemUgPiAwICYmIGVudkF3YXJlU3RhY2tzLnNpemUgPiAwKSB7XG4gICAgICBjb25zdCBkZXNjcmliZVN0YWNrcyA9ICh4czogU2V0PFN0YWNrPikgPT4gQXJyYXkuZnJvbSh4cykubWFwKHMgPT4gcy5ub2RlLnBhdGgpLmpvaW4oJywgJyk7XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcihbXG4gICAgICAgICdJdCBpcyBub3Qgc2FmZSB0byB1c2UgQXBwU3RhZ2luZ1N5bnRoZXNpemVyIGZvciBib3RoIGVudmlyb25tZW50LWFnbm9zdGljIGFuZCBlbnZpcm9ubWVudC1hd2FyZSBzdGFja3MgYXQgdGhlIHNhbWUgdGltZS4nLFxuICAgICAgICAnUGxlYXNlIGVpdGhlciBzcGVjaWZ5IGVudmlyb25tZW50cyBmb3IgYWxsIHN0YWNrcyBvciBubyBzdGFja3MgaW4gdGhlIENESyBBcHAuJyxcbiAgICAgICAgYEF0IGxlYXN0IHRoZXNlIHN0YWNrcyB3aXRoIGVudmlyb25tZW50OiAke2Rlc2NyaWJlU3RhY2tzKGVudkF3YXJlU3RhY2tzKX0uYCxcbiAgICAgICAgYEF0IGxlYXN0IHRoZXNlIHN0YWNrcyB3aXRob3V0IGVudmlyb25tZW50OiAke2Rlc2NyaWJlU3RhY2tzKGFnbm9zdGljU3RhY2tzKX0uYCxcbiAgICAgIF0uam9pbignICcpKTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBJbnRlcm5hbCBwcm9wZXJ0aWVzIGZvciBCb3VuZEFwcFN0YWdpbmdTeW50aGVzaXplclxuICovXG5pbnRlcmZhY2UgQm91bmRBcHBTdGFnaW5nU3ludGhlc2l6ZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgYm9vdHN0cmFwIHF1YWxpZmllclxuICAgKi9cbiAgcmVhZG9ubHkgcXVhbGlmaWVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZXNvdXJjZXMgd2UgZW5kIHVwIHVzaW5nIGZvciB0aGlzIHN5bnRoZXNpemVyXG4gICAqL1xuICByZWFkb25seSBzdGFnaW5nUmVzb3VyY2VzOiBJU3RhZ2luZ1Jlc291cmNlcztcblxuICAvKipcbiAgICogVGhlIGRlcGxveSByb2xlXG4gICAqL1xuICByZWFkb25seSBkZXBsb3lSb2xlOiBCb290c3RyYXBSb2xlO1xuXG4gIC8qKlxuICAgKiBDbG91ZEZvcm1hdGlvbiBFeGVjdXRpb24gUm9sZVxuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Sb2xlOiBCb290c3RyYXBSb2xlO1xuXG4gIC8qKlxuICAgKiBMb29rdXAgUm9sZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9va3VwUm9sZTogQm9vdHN0cmFwUm9sZTtcbn1cblxuY2xhc3MgQm91bmRBcHBTdGFnaW5nU3ludGhlc2l6ZXIgZXh0ZW5kcyBTdGFja1N5bnRoZXNpemVyIGltcGxlbWVudHMgSUJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBzdGFnaW5nU3RhY2s6IElTdGFnaW5nUmVzb3VyY2VzO1xuICBwcml2YXRlIHJlYWRvbmx5IGFzc2V0TWFuaWZlc3QgPSBuZXcgQXNzZXRNYW5pZmVzdEJ1aWxkZXIoKTtcbiAgcHJpdmF0ZSByZWFkb25seSBxdWFsaWZpZXI6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBkZXBlbmRlbmN5U3RhY2tzOiBTZXQ8U3RhY2s+ID0gbmV3IFNldCgpO1xuXG4gIGNvbnN0cnVjdG9yKHN0YWNrOiBTdGFjaywgcHJpdmF0ZSByZWFkb25seSBwcm9wczogQm91bmRBcHBTdGFnaW5nU3ludGhlc2l6ZXJQcm9wcykge1xuICAgIHN1cGVyKCk7XG4gICAgc3VwZXIuYmluZChzdGFjayk7XG5cbiAgICB0aGlzLnF1YWxpZmllciA9IHByb3BzLnF1YWxpZmllcjtcbiAgICB0aGlzLnN0YWdpbmdTdGFjayA9IHByb3BzLnN0YWdpbmdSZXNvdXJjZXM7XG4gIH1cbiAgLyoqXG4gICAqIFRoZSBxdWFsaWZpZXIgdXNlZCB0byBib290c3RyYXAgdGhpcyBzdGFja1xuICAgKi9cbiAgcHVibGljIGdldCBib290c3RyYXBRdWFsaWZpZXIoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAvLyBOb3Qgc3VyZSB3aHkgd2UgbmVlZCB0aGlzLlxuICAgIHJldHVybiB0aGlzLnF1YWxpZmllcjtcbiAgfVxuXG4gIHB1YmxpYyBzeW50aGVzaXplKHNlc3Npb246IElTeW50aGVzaXNTZXNzaW9uKTogdm9pZCB7XG4gICAgY29uc3QgdGVtcGxhdGVBc3NldFNvdXJjZSA9IHRoaXMuc3ludGhlc2l6ZVRlbXBsYXRlKHNlc3Npb24sIHRoaXMucHJvcHMubG9va3VwUm9sZT8uX2FybkZvckNsb3VkQXNzZW1ibHkoKSk7XG4gICAgY29uc3QgdGVtcGxhdGVBc3NldCA9IHRoaXMuYWRkRmlsZUFzc2V0KHRlbXBsYXRlQXNzZXRTb3VyY2UpO1xuXG4gICAgY29uc3QgZGVwZW5kZW5jaWVzID0gQXJyYXkuZnJvbSh0aGlzLmRlcGVuZGVuY3lTdGFja3MpLmZsYXRNYXAoKGQpID0+IGQuYXJ0aWZhY3RJZCk7XG4gICAgY29uc3QgYXNzZXRNYW5pZmVzdElkID0gdGhpcy5hc3NldE1hbmlmZXN0LmVtaXRNYW5pZmVzdCh0aGlzLmJvdW5kU3RhY2ssIHNlc3Npb24sIHt9LCBkZXBlbmRlbmNpZXMpO1xuXG4gICAgY29uc3QgbG9va3VwUm9sZUFybiA9IHRoaXMucHJvcHMubG9va3VwUm9sZT8uX2FybkZvckNsb3VkQXNzZW1ibHkoKTtcblxuICAgIHRoaXMuZW1pdEFydGlmYWN0KHNlc3Npb24sIHtcbiAgICAgIGFzc3VtZVJvbGVBcm46IHRoaXMucHJvcHMuZGVwbG95Um9sZT8uX2FybkZvckNsb3VkQXNzZW1ibHkoKSxcbiAgICAgIGFkZGl0aW9uYWxEZXBlbmRlbmNpZXM6IFthc3NldE1hbmlmZXN0SWRdLFxuICAgICAgc3RhY2tUZW1wbGF0ZUFzc2V0T2JqZWN0VXJsOiB0ZW1wbGF0ZUFzc2V0LnMzT2JqZWN0VXJsV2l0aFBsYWNlaG9sZGVycyxcbiAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUm9sZUFybjogdGhpcy5wcm9wcy5jbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblJvbGU/Ll9hcm5Gb3JDbG91ZEFzc2VtYmx5KCksXG4gICAgICBsb29rdXBSb2xlOiBsb29rdXBSb2xlQXJuID8geyBhcm46IGxvb2t1cFJvbGVBcm4gfSA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBmaWxlIGFzc2V0IHRvIHRoZSBtYW5pZmVzdC5cbiAgICovXG4gIHB1YmxpYyBhZGRGaWxlQXNzZXQoYXNzZXQ6IEZpbGVBc3NldFNvdXJjZSk6IEZpbGVBc3NldExvY2F0aW9uIHtcbiAgICBjb25zdCB7IGJ1Y2tldE5hbWUsIGFzc3VtZVJvbGVBcm4sIHByZWZpeCwgZGVwZW5kZW5jeVN0YWNrIH0gPSB0aGlzLnN0YWdpbmdTdGFjay5hZGRGaWxlKGFzc2V0KTtcbiAgICBjb25zdCBsb2NhdGlvbiA9IHRoaXMuYXNzZXRNYW5pZmVzdC5kZWZhdWx0QWRkRmlsZUFzc2V0KHRoaXMuYm91bmRTdGFjaywgYXNzZXQsIHtcbiAgICAgIGJ1Y2tldE5hbWU6IHRyYW5zbGF0ZUNmblRva2VuVG9Bc3NldFRva2VuKGJ1Y2tldE5hbWUpLFxuICAgICAgYnVja2V0UHJlZml4OiBwcmVmaXgsXG4gICAgICByb2xlOiBhc3N1bWVSb2xlQXJuID8geyBhc3N1bWVSb2xlQXJuOiB0cmFuc2xhdGVDZm5Ub2tlblRvQXNzZXRUb2tlbihhc3N1bWVSb2xlQXJuKSB9IDogdW5kZWZpbmVkLFxuICAgIH0sIHtcbiAgICAgIGRpc3BsYXlOYW1lOiBhc3NldC5kaXNwbGF5TmFtZSxcbiAgICB9KTtcblxuICAgIGlmIChkZXBlbmRlbmN5U3RhY2spIHtcbiAgICAgIHRoaXMuYm91bmRTdGFjay5hZGREZXBlbmRlbmN5KGRlcGVuZGVuY3lTdGFjaywgJ3N0YWNrIGRlcGVuZHMgb24gdGhlIHN0YWdpbmcgc3RhY2sgZm9yIHN0YWdpbmcgcmVzb3VyY2VzJyk7XG4gICAgICB0aGlzLmRlcGVuZGVuY3lTdGFja3MuYWRkKGRlcGVuZGVuY3lTdGFjayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY2xvdWRGb3JtYXRpb25Mb2NhdGlvbkZyb21GaWxlQXNzZXQobG9jYXRpb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIGRvY2tlciBpbWFnZSBhc3NldCB0byB0aGUgbWFuaWZlc3QuXG4gICAqL1xuICBwdWJsaWMgYWRkRG9ja2VySW1hZ2VBc3NldChhc3NldDogRG9ja2VySW1hZ2VBc3NldFNvdXJjZSk6IERvY2tlckltYWdlQXNzZXRMb2NhdGlvbiB7XG4gICAgY29uc3QgeyByZXBvTmFtZSwgYXNzdW1lUm9sZUFybiwgZGVwZW5kZW5jeVN0YWNrIH0gPSB0aGlzLnN0YWdpbmdTdGFjay5hZGREb2NrZXJJbWFnZShhc3NldCk7XG4gICAgY29uc3QgbG9jYXRpb24gPSB0aGlzLmFzc2V0TWFuaWZlc3QuZGVmYXVsdEFkZERvY2tlckltYWdlQXNzZXQodGhpcy5ib3VuZFN0YWNrLCBhc3NldCwge1xuICAgICAgcmVwb3NpdG9yeU5hbWU6IHRyYW5zbGF0ZUNmblRva2VuVG9Bc3NldFRva2VuKHJlcG9OYW1lKSxcbiAgICAgIHJvbGU6IGFzc3VtZVJvbGVBcm4gPyB7IGFzc3VtZVJvbGVBcm46IHRyYW5zbGF0ZUNmblRva2VuVG9Bc3NldFRva2VuKGFzc3VtZVJvbGVBcm4pIH0gOiB1bmRlZmluZWQsXG4gICAgfSwge1xuICAgICAgZGlzcGxheU5hbWU6IGFzc2V0LmRpc3BsYXlOYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKGRlcGVuZGVuY3lTdGFjaykge1xuICAgICAgdGhpcy5ib3VuZFN0YWNrLmFkZERlcGVuZGVuY3koZGVwZW5kZW5jeVN0YWNrLCAnc3RhY2sgZGVwZW5kcyBvbiB0aGUgc3RhZ2luZyBzdGFjayBmb3Igc3RhZ2luZyByZXNvdXJjZXMnKTtcbiAgICAgIHRoaXMuZGVwZW5kZW5jeVN0YWNrcy5hZGQoZGVwZW5kZW5jeVN0YWNrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jbG91ZEZvcm1hdGlvbkxvY2F0aW9uRnJvbURvY2tlckltYWdlQXNzZXQobG9jYXRpb24pO1xuICB9XG59XG4iXX0=
261
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXN0YWdpbmctc3ludGhlc2l6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJhcHAtc3RhZ2luZy1zeW50aGVzaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQVVBLDJDQUswQjtBQUMxQiw0RUFBeUc7QUFFekcsdURBQXlEO0FBRXpELG1FQUE4RDtBQUM5RCx1RUFBeUc7QUFDekcscURBQXVEO0FBQ3ZELG1EQUF1RDtBQUd2RCxNQUFNLGVBQWUsR0FBRyxJQUFJLDRCQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxHQUFHLEVBQVMsQ0FBQyxDQUFDO0FBQ3BFLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSw0QkFBZSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksR0FBRyxFQUFTLENBQUMsQ0FBQztBQXlFckU7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHVCQUFnQjtJQXVFcEI7O0lBdEVyQzs7T0FFRztJQUNJLE1BQU0sQ0FBVSxpQkFBaUIsR0FBRyxXQUFXLENBQUM7SUFFdkQ7O09BRUc7SUFDSSxNQUFNLENBQVUsK0JBQStCLEdBQUcsbUhBQW1ILENBQUM7SUFFN0s7O09BRUc7SUFDSSxNQUFNLENBQVUsdUJBQXVCLEdBQUcsaUhBQWlILENBQUM7SUFFbks7O09BRUc7SUFDSSxNQUFNLENBQVUsdUJBQXVCLEdBQUcsaUhBQWlILENBQUM7SUFFbks7O09BRUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBZ0M7Ozs7Ozs7Ozs7UUFDN0QsSUFBQSw0QkFBZ0IsRUFBQyxPQUFPLEVBQUUsdUJBQXVCLENBQUMsQ0FBQztRQUVuRCxPQUFPLHFCQUFxQixDQUFDLGFBQWEsQ0FBQztZQUN6QyxPQUFPLEVBQUUsMkNBQW1CLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUM3QyxvQkFBb0IsRUFBRSxPQUFPLENBQUMsb0JBQW9CO1lBQ2xELGtCQUFrQixFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7WUFDOUMsVUFBVSxF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LFNBQVM7U0FDbEcsRUFBRTtZQUNELFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztTQUMvQixDQUFDLENBQUM7UUFFSCxJQUFJLGVBQWUsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUMsZUFBZSxFQUFFLDBEQUEwRCxDQUFDLENBQUM7WUFDaEgsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM3QyxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsMENBQTBDLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDbEU7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgRG9ja2VySW1hZ2VBc3NldExvY2F0aW9uLFxuICBEb2NrZXJJbWFnZUFzc2V0U291cmNlLFxuICBGaWxlQXNzZXRMb2NhdGlvbixcbiAgRmlsZUFzc2V0U291cmNlLFxuICBJQm91bmRTdGFja1N5bnRoZXNpemVyIGFzIElCb3VuZEFwcFN0YWdpbmdTeW50aGVzaXplcixcbiAgSVJldXNhYmxlU3RhY2tTeW50aGVzaXplcixcbiAgSVN5bnRoZXNpc1Nlc3Npb24sXG4gIFN0YWNrLFxufSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7XG4gIEFzc2V0TWFuaWZlc3RCdWlsZGVyLFxuICBCT09UU1RSQVBfUVVBTElGSUVSX0NPTlRFWFQsXG4gIFN0YWNrU3ludGhlc2l6ZXIsXG4gIFRva2VuLFxufSBmcm9tICdhd3MtY2RrLWxpYi9jb3JlJztcbmltcG9ydCB7IFN0cmluZ1NwZWNpYWxpemVyLCB0cmFuc2xhdGVDZm5Ub2tlblRvQXNzZXRUb2tlbiB9IGZyb20gJ2F3cy1jZGstbGliL2NvcmUvbGliL2hlbHBlcnMtaW50ZXJuYWwnO1xuaW1wb3J0IHR5cGUgeyBCb290c3RyYXBSb2xlLCBCb290c3RyYXBSb2xlcyB9IGZyb20gJy4vYm9vdHN0cmFwLXJvbGVzJztcbmltcG9ydCB7IERlcGxveW1lbnRJZGVudGl0aWVzIH0gZnJvbSAnLi9ib290c3RyYXAtcm9sZXMnO1xuaW1wb3J0IHR5cGUgeyBEZWZhdWx0U3RhZ2luZ1N0YWNrT3B0aW9ucyB9IGZyb20gJy4vZGVmYXVsdC1zdGFnaW5nLXN0YWNrJztcbmltcG9ydCB7IERlZmF1bHRTdGFnaW5nU3RhY2sgfSBmcm9tICcuL2RlZmF1bHQtc3RhZ2luZy1zdGFjayc7XG5pbXBvcnQgeyBQZXJFbnZpcm9ubWVudFN0YWdpbmdGYWN0b3J5IGFzIFBlckVudmlyb25tZW50U3RhZ2luZ0ZhY3RvcnkgfSBmcm9tICcuL3Blci1lbnYtc3RhZ2luZy1mYWN0b3J5JztcbmltcG9ydCB7IEFwcFNjb3BlZEdsb2JhbCB9IGZyb20gJy4vcHJpdmF0ZS9hcHAtZ2xvYmFsJztcbmltcG9ydCB7IHZhbGlkYXRlTm9Ub2tlbnMgfSBmcm9tICcuL3ByaXZhdGUvbm8tdG9rZW5zJztcbmltcG9ydCB0eXBlIHsgSVN0YWdpbmdSZXNvdXJjZXMsIElTdGFnaW5nUmVzb3VyY2VzRmFjdG9yeSwgT2J0YWluU3RhZ2luZ1Jlc291cmNlc0NvbnRleHQgfSBmcm9tICcuL3N0YWdpbmctc3RhY2snO1xuXG5jb25zdCBBR05PU1RJQ19TVEFDS1MgPSBuZXcgQXBwU2NvcGVkR2xvYmFsKCgpID0+IG5ldyBTZXQ8U3RhY2s+KCkpO1xuY29uc3QgRU5WX0FXQVJFX1NUQUNLUyA9IG5ldyBBcHBTY29wZWRHbG9iYWwoKCkgPT4gbmV3IFNldDxTdGFjaz4oKSk7XG5cbi8qKlxuICogT3B0aW9ucyB0aGF0IGFwcGx5IHRvIGFsbCBBcHBTdGFnaW5nU3ludGhlc2l6ZXIgdmFyaWFudHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcHBTdGFnaW5nU3ludGhlc2l6ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoYXQgcm9sZXMgdG8gdXNlIHRvIGRlcGxveSBhcHBsaWNhdGlvbnNcbiAgICpcbiAgICogVGhlc2UgYXJlIHRoZSByb2xlcyB0aGF0IGhhdmUgcGVybWlzc2lvbnMgdG8gaW50ZXJhY3Qgd2l0aCBDbG91ZEZvcm1hdGlvblxuICAgKiBvbiB5b3VyIGJlaGFsZi4gQnkgZGVmYXVsdCB0aGVzZSBhcmUgdGhlIHN0YW5kYXJkIGJvb3RzdHJhcHBlZCBDREsgcm9sZXMsXG4gICAqIGJ1dCB5b3UgY2FuIGN1c3RvbWl6ZSB0aGVtIG9yIHR1cm4gdGhlbSBvZmYgYW5kIHVzZSB0aGUgQ0xJIGNyZWRlbnRpYWxzXG4gICAqIHRvIGRlcGxveS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgc3RhbmRhcmQgYm9vdHN0cmFwcGVkIENESyByb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95bWVudElkZW50aXRpZXM/OiBEZXBsb3ltZW50SWRlbnRpdGllcztcblxuICAvKipcbiAgICogUXVhbGlmaWVyIHRvIGRpc2FtYmlndWF0ZSBtdWx0aXBsZSBib290c3RyYXBwZWQgZW52aXJvbm1lbnRzIGluIHRoZSBzYW1lIGFjY291bnRcbiAgICpcbiAgICogVGhpcyBxdWFsaWZpZXIgaXMgb25seSB1c2VkIHRvIHJlZmVyZW5jZSBib290c3RyYXBwZWQgcmVzb3VyY2VzLiBJdCB3aWxsIG5vdFxuICAgKiBiZSB1c2VkIGluIHRoZSBjcmVhdGlvbiBvZiBhcHAtc3BlY2lmaWMgc3RhZ2luZyByZXNvdXJjZXM6IGBhcHBJZGAgaXMgdXNlZCBmb3IgdGhhdFxuICAgKiBpbnN0ZWFkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFZhbHVlIG9mIGNvbnRleHQga2V5ICdAYXdzLWNkay9jb3JlOmJvb3RzdHJhcFF1YWxpZmllcicgaWYgc2V0LCBvdGhlcndpc2UgYERFRkFVTFRfUVVBTElGSUVSYFxuICAgKi9cbiAgcmVhZG9ubHkgYm9vdHN0cmFwUXVhbGlmaWVyPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHN0YWNrUGVyRW52IHN0YXRpYyBtZXRob2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZWZhdWx0UmVzb3VyY2VzT3B0aW9ucyBleHRlbmRzIEFwcFN0YWdpbmdTeW50aGVzaXplck9wdGlvbnMsIERlZmF1bHRTdGFnaW5nU3RhY2tPcHRpb25zIHt9XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgY3VzdG9tRmFjdG9yeSBzdGF0aWMgbWV0aG9kXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tRmFjdG9yeU9wdGlvbnMgZXh0ZW5kcyBBcHBTdGFnaW5nU3ludGhlc2l6ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBmYWN0b3J5IHRoYXQgd2lsbCBiZSB1c2VkIHRvIHJldHVybiBzdGFnaW5nIHJlc291cmNlcyBmb3IgZWFjaCBzdGFja1xuICAgKi9cbiAgcmVhZG9ubHkgZmFjdG9yeTogSVN0YWdpbmdSZXNvdXJjZXNGYWN0b3J5O1xuXG4gIC8qKlxuICAgKiBSZXVzZSB0aGUgYW5zd2VyIGZyb20gdGhlIGZhY3RvcnkgZm9yIHN0YWNrcyBpbiB0aGUgc2FtZSBlbnZpcm9ubWVudFxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBvbmNlUGVyRW52PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBjdXN0b21SZXNvdXJjZXMgc3RhdGljIG1ldGhvZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlc09wdGlvbnMgZXh0ZW5kcyBBcHBTdGFnaW5nU3ludGhlc2l6ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIFVzZSB0aGVzZSBleGFjdCBzdGFnaW5nIHJlc291cmNlcyBmb3IgZXZlcnkgc3RhY2sgdGhhdCB0aGlzIHN5bnRoZXNpemVyIGlzIHVzZWQgZm9yXG4gICAqL1xuICByZWFkb25seSByZXNvdXJjZXM6IElTdGFnaW5nUmVzb3VyY2VzO1xufVxuXG4vKipcbiAqIEludGVybmFsIHByb3BlcnRpZXMgZm9yIEFwcFN0YWdpbmdTeW50aGVzaXplclxuICovXG5pbnRlcmZhY2UgQXBwU3RhZ2luZ1N5bnRoZXNpemVyUHJvcHMgZXh0ZW5kcyBBcHBTdGFnaW5nU3ludGhlc2l6ZXJPcHRpb25zIHtcbiAgLyoqXG4gICAqIEEgZmFjdG9yeSBtZXRob2QgdGhhdCBjcmVhdGVzIGFuIElTdGFnaW5nU3RhY2sgd2hlbiBnaXZlbiB0aGUgc3RhY2sgdGhlXG4gICAqIHN5bnRoZXNpemVyIGlzIGJpbmRpbmcuXG4gICAqL1xuICByZWFkb25seSBmYWN0b3J5OiBJU3RhZ2luZ1Jlc291cmNlc0ZhY3Rvcnk7XG59XG5cbi8qKlxuICogQXBwIFN0YWdpbmcgU3ludGhlc2l6ZXJcbiAqL1xuZXhwb3J0IGNsYXNzIEFwcFN0YWdpbmdTeW50aGVzaXplciBleHRlbmRzIFN0YWNrU3ludGhlc2l6ZXIgaW1wbGVtZW50cyBJUmV1c2FibGVTdGFja1N5bnRoZXNpemVyIHtcbiAgLyoqXG4gICAqIERlZmF1bHQgQVJOIHF1YWxpZmllclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBERUZBVUxUX1FVQUxJRklFUiA9ICdobmI2NTlmZHMnO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IENsb3VkRm9ybWF0aW9uIHJvbGUgQVJOLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBERUZBVUxUX0NMT1VERk9STUFUSU9OX1JPTEVfQVJOID0gJ2Fybjoke0FXUzo6UGFydGl0aW9ufTppYW06OiR7QVdTOjpBY2NvdW50SWR9OnJvbGUvY2RrLSR7UXVhbGlmaWVyfS1jZm4tZXhlYy1yb2xlLSR7QVdTOjpBY2NvdW50SWR9LSR7QVdTOjpSZWdpb259JztcblxuICAvKipcbiAgICogRGVmYXVsdCBkZXBsb3kgcm9sZSBBUk4uXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfREVQTE9ZX1JPTEVfQVJOID0gJ2Fybjoke0FXUzo6UGFydGl0aW9ufTppYW06OiR7QVdTOjpBY2NvdW50SWR9OnJvbGUvY2RrLSR7UXVhbGlmaWVyfS1kZXBsb3ktcm9sZS0ke0FXUzo6QWNjb3VudElkfS0ke0FXUzo6UmVnaW9ufSc7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgbG9va3VwIHJvbGUgQVJOIGZvciBtaXNzaW5nIHZhbHVlcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgREVGQVVMVF9MT09LVVBfUk9MRV9BUk4gPSAnYXJuOiR7QVdTOjpQYXJ0aXRpb259OmlhbTo6JHtBV1M6OkFjY291bnRJZH06cm9sZS9jZGstJHtRdWFsaWZpZXJ9LWxvb2t1cC1yb2xlLSR7QVdTOjpBY2NvdW50SWR9LSR7QVdTOjpSZWdpb259JztcblxuICAvKipcbiAgICogVXNlIHRoZSBEZWZhdWx0IFN0YWdpbmcgUmVzb3VyY2VzLCBjcmVhdGluZyBhIHNpbmdsZSBzdGFjayBwZXIgZW52aXJvbm1lbnQgdGhpcyBhcHAgaXMgZGVwbG95ZWQgaW5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZGVmYXVsdFJlc291cmNlcyhvcHRpb25zOiBEZWZhdWx0UmVzb3VyY2VzT3B0aW9ucykge1xuICAgIHZhbGlkYXRlTm9Ub2tlbnMob3B0aW9ucywgJ0FwcFN0YWdpbmdTeW50aGVzaXplcicpO1xuXG4gICAgcmV0dXJuIEFwcFN0YWdpbmdTeW50aGVzaXplci5jdXN0b21GYWN0b3J5KHtcbiAgICAgIGZhY3Rvcnk6IERlZmF1bHRTdGFnaW5nU3RhY2suZmFjdG9yeShvcHRpb25zKSxcbiAgICAgIGRlcGxveW1lbnRJZGVudGl0aWVzOiBvcHRpb25zLmRlcGxveW1lbnRJZGVudGl0aWVzLFxuICAgICAgYm9vdHN0cmFwUXVhbGlmaWVyOiBvcHRpb25zLmJvb3RzdHJhcFF1YWxpZmllcixcbiAgICAgIG9uY2VQZXJFbnY6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVXNlIHRoZXNlIGV4YWN0IHN0YWdpbmcgcmVzb3VyY2VzIGZvciBldmVyeSBzdGFjayB0aGF0IHRoaXMgc3ludGhlc2l6ZXIgaXMgdXNlZCBmb3JcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgY3VzdG9tUmVzb3VyY2VzKG9wdGlvbnM6IEN1c3RvbVJlc291cmNlc09wdGlvbnMpIHtcbiAgICByZXR1cm4gQXBwU3RhZ2luZ1N5bnRoZXNpemVyLmN1c3RvbUZhY3Rvcnkoe1xuICAgICAgZGVwbG95bWVudElkZW50aXRpZXM6IG9wdGlvbnMuZGVwbG95bWVudElkZW50aXRpZXMsXG4gICAgICBib290c3RyYXBRdWFsaWZpZXI6IG9wdGlvbnMuYm9vdHN0cmFwUXVhbGlmaWVyLFxuICAgICAgb25jZVBlckVudjogZmFsc2UsXG4gICAgICBmYWN0b3J5OiB7XG4gICAgICAgIG9idGFpblN0YWdpbmdSZXNvdXJjZXMoKSB7XG4gICAgICAgICAgcmV0dXJuIG9wdGlvbnMucmVzb3VyY2VzO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdXBwbHkgeW91ciBvd24gc3RhZ2luZ1N0YWNrRmFjdG9yeSBtZXRob2QgZm9yIGNyZWF0aW5nIGFuIElTdGFnaW5nU3RhY2sgd2hlblxuICAgKiBhIHN0YWNrIGlzIGJvdW5kIHRvIHRoZSBzeW50aGVzaXplci5cbiAgICpcbiAgICogQnkgZGVmYXVsdCwgYG9uY2VQZXJFbnYgPSB0cnVlYCwgd2hpY2ggbWVhbnMgdGhhdCBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgSVN0YWdpbmdTdGFja1xuICAgKiB3aWxsIGJlIGNyZWF0ZWQgaW4gbmV3IGVudmlyb25tZW50cy4gU2V0IGBvbmNlUGVyRW52ID0gZmFsc2VgIHRvIHR1cm4gb2ZmIHRoYXQgYmVoYXZpb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGN1c3RvbUZhY3Rvcnkob3B0aW9uczogQ3VzdG9tRmFjdG9yeU9wdGlvbnMpIHtcbiAgICBjb25zdCBvbmNlUGVyRW52ID0gb3B0aW9ucy5vbmNlUGVyRW52ID8/IHRydWU7XG4gICAgY29uc3QgZmFjdG9yeSA9IG9uY2VQZXJFbnYgPyBuZXcgUGVyRW52aXJvbm1lbnRTdGFnaW5nRmFjdG9yeShvcHRpb25zLmZhY3RvcnkpIDogb3B0aW9ucy5mYWN0b3J5O1xuXG4gICAgcmV0dXJuIG5ldyBBcHBTdGFnaW5nU3ludGhlc2l6ZXIoe1xuICAgICAgZmFjdG9yeSxcbiAgICAgIGJvb3RzdHJhcFF1YWxpZmllcjogb3B0aW9ucy5ib290c3RyYXBRdWFsaWZpZXIsXG4gICAgICBkZXBsb3ltZW50SWRlbnRpdGllczogb3B0aW9ucy5kZXBsb3ltZW50SWRlbnRpdGllcyxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgcm9sZXM6IFJlcXVpcmVkPEJvb3RzdHJhcFJvbGVzPjtcblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEFwcFN0YWdpbmdTeW50aGVzaXplclByb3BzKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIGNvbnN0IGRlZmF1bHRJZGVudGl0aWVzID0gRGVwbG95bWVudElkZW50aXRpZXMuZGVmYXVsdEJvb3RzdHJhcFJvbGVzKCk7XG4gICAgY29uc3QgaWRlbnRpdGllcyA9IHByb3BzLmRlcGxveW1lbnRJZGVudGl0aWVzID8/IERlcGxveW1lbnRJZGVudGl0aWVzLmRlZmF1bHRCb290c3RyYXBSb2xlcygpO1xuXG4gICAgdGhpcy5yb2xlcyA9IHtcbiAgICAgIGRlcGxveW1lbnRSb2xlOiBpZGVudGl0aWVzLmRlcGxveW1lbnRSb2xlID8/IGRlZmF1bHRJZGVudGl0aWVzLmRlcGxveW1lbnRSb2xlISxcbiAgICAgIGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUm9sZTogaWRlbnRpdGllcy5jbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblJvbGUgPz8gZGVmYXVsdElkZW50aXRpZXMuY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Sb2xlISxcbiAgICAgIGxvb2t1cFJvbGU6IGlkZW50aXRpZXMubG9va3VwUm9sZSA/PyBpZGVudGl0aWVzLmxvb2t1cFJvbGUhLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIHZlcnNpb24gb2YgdGhlIHN5bnRoZXNpemVyIGJvdW5kIHRvIGEgc3RhY2suXG4gICAqL1xuICBwdWJsaWMgcmV1c2FibGVCaW5kKHN0YWNrOiBTdGFjayk6IElCb3VuZEFwcFN0YWdpbmdTeW50aGVzaXplciB7XG4gICAgdGhpcy5jaGVja0Vudmlyb25tZW50R25vc3RpY2lzbShzdGFjayk7XG4gICAgY29uc3QgcXVhbGlmaWVyID0gdGhpcy5wcm9wcy5ib290c3RyYXBRdWFsaWZpZXIgPz9cbiAgICAgIHN0YWNrLm5vZGUudHJ5R2V0Q29udGV4dChCT09UU1RSQVBfUVVBTElGSUVSX0NPTlRFWFQpID8/XG4gICAgICBBcHBTdGFnaW5nU3ludGhlc2l6ZXIuREVGQVVMVF9RVUFMSUZJRVI7XG4gICAgY29uc3Qgc3BlYyA9IG5ldyBTdHJpbmdTcGVjaWFsaXplcihzdGFjaywgcXVhbGlmaWVyKTtcblxuICAgIGNvbnN0IGRlcGxveVJvbGUgPSB0aGlzLnJvbGVzLmRlcGxveW1lbnRSb2xlLl9zcGVjaWFsaXplKHNwZWMpO1xuXG4gICAgY29uc3QgY29udGV4dDogT2J0YWluU3RhZ2luZ1Jlc291cmNlc0NvbnRleHQgPSB7XG4gICAgICBlbnZpcm9ubWVudFN0cmluZzogW1xuICAgICAgICBUb2tlbi5pc1VucmVzb2x2ZWQoc3RhY2suYWNjb3VudCkgPyAnQUNDT1VOVCcgOiBzdGFjay5hY2NvdW50LFxuICAgICAgICBUb2tlbi5pc1VucmVzb2x2ZWQoc3RhY2sucmVnaW9uKSA/ICdSRUdJT04nIDogc3RhY2sucmVnaW9uLFxuICAgICAgXS5qb2luKCctJyksXG4gICAgICBkZXBsb3lSb2xlQXJuOiBkZXBsb3lSb2xlLl9hcm5Gb3JDbG91ZEZvcm1hdGlvbigpLFxuICAgICAgcXVhbGlmaWVyLFxuICAgIH07XG5cbiAgICByZXR1cm4gbmV3IEJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyKHN0YWNrLCB7XG4gICAgICBzdGFnaW5nUmVzb3VyY2VzOiB0aGlzLnByb3BzLmZhY3Rvcnkub2J0YWluU3RhZ2luZ1Jlc291cmNlcyhzdGFjaywgY29udGV4dCksXG4gICAgICBkZXBsb3lSb2xlLFxuICAgICAgY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Sb2xlOiB0aGlzLnJvbGVzLmNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUm9sZS5fc3BlY2lhbGl6ZShzcGVjKSxcbiAgICAgIGxvb2t1cFJvbGU6IHRoaXMucm9sZXMubG9va3VwUm9sZS5fc3BlY2lhbGl6ZShzcGVjKSxcbiAgICAgIHF1YWxpZmllcixcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBmb3IgbGVnYWN5IHB1cnBvc2VzOyB0aGlzIHdpbGwgbmV2ZXIgYmUgY2FsbGVkLlxuICAgKi9cbiAgcHVibGljIGJpbmQoX3N0YWNrOiBTdGFjaykge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBpcyBhIGxlZ2FjeSBBUEksIGNhbGwgcmV1c2FibGVCaW5kIGluc3RlYWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBmb3IgbGVnYWN5IHB1cnBvc2VzOyB0aGlzIHdpbGwgbmV2ZXIgYmUgY2FsbGVkLlxuICAgKi9cbiAgcHVibGljIHN5bnRoZXNpemUoX3Nlc3Npb246IElTeW50aGVzaXNTZXNzaW9uKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIGlzIGEgbGVnYWN5IEFQSSwgY2FsbCByZXVzYWJsZUJpbmQgaW5zdGVhZCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEltcGxlbWVudGVkIGZvciBsZWdhY3kgcHVycG9zZXM7IHRoaXMgd2lsbCBuZXZlciBiZSBjYWxsZWQuXG4gICAqL1xuICBwdWJsaWMgYWRkRmlsZUFzc2V0KF9hc3NldDogRmlsZUFzc2V0U291cmNlKTogRmlsZUFzc2V0TG9jYXRpb24ge1xuICAgIHRocm93IG5ldyBFcnJvcignVGhpcyBpcyBhIGxlZ2FjeSBBUEksIGNhbGwgcmV1c2FibGVCaW5kIGluc3RlYWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbXBsZW1lbnRlZCBmb3IgbGVnYWN5IHB1cnBvc2VzOyB0aGlzIHdpbGwgbmV2ZXIgYmUgY2FsbGVkLlxuICAgKi9cbiAgcHVibGljIGFkZERvY2tlckltYWdlQXNzZXQoX2Fzc2V0OiBEb2NrZXJJbWFnZUFzc2V0U291cmNlKTogRG9ja2VySW1hZ2VBc3NldExvY2F0aW9uIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgaXMgYSBsZWdhY3kgQVBJLCBjYWxsIHJldXNhYmxlQmluZCBpbnN0ZWFkJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgdGhhdCB3ZSdyZSBvbmx5IGJlaW5nIHVzZWQgZm9yIGV4Y2x1c2l2ZWx5IGdub3N0aWMgb3IgYWdub3N0aWMgc3RhY2tzLlxuICAgKlxuICAgKiBXZSBjYW4gdGhpbmsgYWJvdXQgd2hldGhlciB0byBsb29zZW4gdGhpcyByZXF1aXJlbWVudCBsYXRlci5cbiAgICovXG4gIHByaXZhdGUgY2hlY2tFbnZpcm9ubWVudEdub3N0aWNpc20oc3RhY2s6IFN0YWNrKSB7XG4gICAgY29uc3QgaXNBZ25vc3RpYyA9IFRva2VuLmlzVW5yZXNvbHZlZChzdGFjay5hY2NvdW50KSB8fCBUb2tlbi5pc1VucmVzb2x2ZWQoc3RhY2sucmVnaW9uKTtcbiAgICBjb25zdCBhZ25vc3RpY1N0YWNrcyA9IEFHTk9TVElDX1NUQUNLUy5mb3Ioc3RhY2spO1xuICAgIGNvbnN0IGVudkF3YXJlU3RhY2tzID0gRU5WX0FXQVJFX1NUQUNLUy5mb3Ioc3RhY2spO1xuXG4gICAgKGlzQWdub3N0aWMgPyBhZ25vc3RpY1N0YWNrcyA6IGVudkF3YXJlU3RhY2tzKS5hZGQoc3RhY2spO1xuICAgIGlmIChhZ25vc3RpY1N0YWNrcy5zaXplID4gMCAmJiBlbnZBd2FyZVN0YWNrcy5zaXplID4gMCkge1xuICAgICAgY29uc3QgZGVzY3JpYmVTdGFja3MgPSAoeHM6IFNldDxTdGFjaz4pID0+IEFycmF5LmZyb20oeHMpLm1hcChzID0+IHMubm9kZS5wYXRoKS5qb2luKCcsICcpO1xuXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoW1xuICAgICAgICAnSXQgaXMgbm90IHNhZmUgdG8gdXNlIEFwcFN0YWdpbmdTeW50aGVzaXplciBmb3IgYm90aCBlbnZpcm9ubWVudC1hZ25vc3RpYyBhbmQgZW52aXJvbm1lbnQtYXdhcmUgc3RhY2tzIGF0IHRoZSBzYW1lIHRpbWUuJyxcbiAgICAgICAgJ1BsZWFzZSBlaXRoZXIgc3BlY2lmeSBlbnZpcm9ubWVudHMgZm9yIGFsbCBzdGFja3Mgb3Igbm8gc3RhY2tzIGluIHRoZSBDREsgQXBwLicsXG4gICAgICAgIGBBdCBsZWFzdCB0aGVzZSBzdGFja3Mgd2l0aCBlbnZpcm9ubWVudDogJHtkZXNjcmliZVN0YWNrcyhlbnZBd2FyZVN0YWNrcyl9LmAsXG4gICAgICAgIGBBdCBsZWFzdCB0aGVzZSBzdGFja3Mgd2l0aG91dCBlbnZpcm9ubWVudDogJHtkZXNjcmliZVN0YWNrcyhhZ25vc3RpY1N0YWNrcyl9LmAsXG4gICAgICBdLmpvaW4oJyAnKSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogSW50ZXJuYWwgcHJvcGVydGllcyBmb3IgQm91bmRBcHBTdGFnaW5nU3ludGhlc2l6ZXJcbiAqL1xuaW50ZXJmYWNlIEJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIGJvb3RzdHJhcCBxdWFsaWZpZXJcbiAgICovXG4gIHJlYWRvbmx5IHF1YWxpZmllcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVzb3VyY2VzIHdlIGVuZCB1cCB1c2luZyBmb3IgdGhpcyBzeW50aGVzaXplclxuICAgKi9cbiAgcmVhZG9ubHkgc3RhZ2luZ1Jlc291cmNlczogSVN0YWdpbmdSZXNvdXJjZXM7XG5cbiAgLyoqXG4gICAqIFRoZSBkZXBsb3kgcm9sZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95Um9sZTogQm9vdHN0cmFwUm9sZTtcblxuICAvKipcbiAgICogQ2xvdWRGb3JtYXRpb24gRXhlY3V0aW9uIFJvbGVcbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkRm9ybWF0aW9uRXhlY3V0aW9uUm9sZTogQm9vdHN0cmFwUm9sZTtcblxuICAvKipcbiAgICogTG9va3VwIFJvbGVcbiAgICovXG4gIHJlYWRvbmx5IGxvb2t1cFJvbGU6IEJvb3RzdHJhcFJvbGU7XG59XG5cbmNsYXNzIEJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyIGV4dGVuZHMgU3RhY2tTeW50aGVzaXplciBpbXBsZW1lbnRzIElCb3VuZEFwcFN0YWdpbmdTeW50aGVzaXplciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgc3RhZ2luZ1N0YWNrOiBJU3RhZ2luZ1Jlc291cmNlcztcbiAgcHJpdmF0ZSByZWFkb25seSBhc3NldE1hbmlmZXN0ID0gbmV3IEFzc2V0TWFuaWZlc3RCdWlsZGVyKCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgcXVhbGlmaWVyOiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVwZW5kZW5jeVN0YWNrczogU2V0PFN0YWNrPiA9IG5ldyBTZXQoKTtcblxuICBjb25zdHJ1Y3RvcihzdGFjazogU3RhY2ssIHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IEJvdW5kQXBwU3RhZ2luZ1N5bnRoZXNpemVyUHJvcHMpIHtcbiAgICBzdXBlcigpO1xuICAgIHN1cGVyLmJpbmQoc3RhY2spO1xuXG4gICAgdGhpcy5xdWFsaWZpZXIgPSBwcm9wcy5xdWFsaWZpZXI7XG4gICAgdGhpcy5zdGFnaW5nU3RhY2sgPSBwcm9wcy5zdGFnaW5nUmVzb3VyY2VzO1xuICB9XG4gIC8qKlxuICAgKiBUaGUgcXVhbGlmaWVyIHVzZWQgdG8gYm9vdHN0cmFwIHRoaXMgc3RhY2tcbiAgICovXG4gIHB1YmxpYyBnZXQgYm9vdHN0cmFwUXVhbGlmaWVyKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgLy8gTm90IHN1cmUgd2h5IHdlIG5lZWQgdGhpcy5cbiAgICByZXR1cm4gdGhpcy5xdWFsaWZpZXI7XG4gIH1cblxuICBwdWJsaWMgc3ludGhlc2l6ZShzZXNzaW9uOiBJU3ludGhlc2lzU2Vzc2lvbik6IHZvaWQge1xuICAgIGNvbnN0IHRlbXBsYXRlQXNzZXRTb3VyY2UgPSB0aGlzLnN5bnRoZXNpemVUZW1wbGF0ZShzZXNzaW9uLCB0aGlzLnByb3BzLmxvb2t1cFJvbGU/Ll9hcm5Gb3JDbG91ZEFzc2VtYmx5KCkpO1xuICAgIGNvbnN0IHRlbXBsYXRlQXNzZXQgPSB0aGlzLmFkZEZpbGVBc3NldCh0ZW1wbGF0ZUFzc2V0U291cmNlKTtcblxuICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IEFycmF5LmZyb20odGhpcy5kZXBlbmRlbmN5U3RhY2tzKS5mbGF0TWFwKChkKSA9PiBkLmFydGlmYWN0SWQpO1xuICAgIGNvbnN0IGFzc2V0TWFuaWZlc3RJZCA9IHRoaXMuYXNzZXRNYW5pZmVzdC5lbWl0TWFuaWZlc3QodGhpcy5ib3VuZFN0YWNrLCBzZXNzaW9uLCB7fSwgZGVwZW5kZW5jaWVzKTtcblxuICAgIGNvbnN0IGxvb2t1cFJvbGVBcm4gPSB0aGlzLnByb3BzLmxvb2t1cFJvbGU/Ll9hcm5Gb3JDbG91ZEFzc2VtYmx5KCk7XG5cbiAgICB0aGlzLmVtaXRBcnRpZmFjdChzZXNzaW9uLCB7XG4gICAgICBhc3N1bWVSb2xlQXJuOiB0aGlzLnByb3BzLmRlcGxveVJvbGU/Ll9hcm5Gb3JDbG91ZEFzc2VtYmx5KCksXG4gICAgICBhZGRpdGlvbmFsRGVwZW5kZW5jaWVzOiBbYXNzZXRNYW5pZmVzdElkXSxcbiAgICAgIHN0YWNrVGVtcGxhdGVBc3NldE9iamVjdFVybDogdGVtcGxhdGVBc3NldC5zM09iamVjdFVybFdpdGhQbGFjZWhvbGRlcnMsXG4gICAgICBjbG91ZEZvcm1hdGlvbkV4ZWN1dGlvblJvbGVBcm46IHRoaXMucHJvcHMuY2xvdWRGb3JtYXRpb25FeGVjdXRpb25Sb2xlPy5fYXJuRm9yQ2xvdWRBc3NlbWJseSgpLFxuICAgICAgbG9va3VwUm9sZTogbG9va3VwUm9sZUFybiA/IHsgYXJuOiBsb29rdXBSb2xlQXJuIH0gOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgZmlsZSBhc3NldCB0byB0aGUgbWFuaWZlc3QuXG4gICAqL1xuICBwdWJsaWMgYWRkRmlsZUFzc2V0KGFzc2V0OiBGaWxlQXNzZXRTb3VyY2UpOiBGaWxlQXNzZXRMb2NhdGlvbiB7XG4gICAgY29uc3QgeyBidWNrZXROYW1lLCBhc3N1bWVSb2xlQXJuLCBwcmVmaXgsIGRlcGVuZGVuY3lTdGFjayB9ID0gdGhpcy5zdGFnaW5nU3RhY2suYWRkRmlsZShhc3NldCk7XG4gICAgY29uc3QgbG9jYXRpb24gPSB0aGlzLmFzc2V0TWFuaWZlc3QuZGVmYXVsdEFkZEZpbGVBc3NldCh0aGlzLmJvdW5kU3RhY2ssIGFzc2V0LCB7XG4gICAgICBidWNrZXROYW1lOiB0cmFuc2xhdGVDZm5Ub2tlblRvQXNzZXRUb2tlbihidWNrZXROYW1lKSxcbiAgICAgIGJ1Y2tldFByZWZpeDogcHJlZml4LFxuICAgICAgcm9sZTogYXNzdW1lUm9sZUFybiA/IHsgYXNzdW1lUm9sZUFybjogdHJhbnNsYXRlQ2ZuVG9rZW5Ub0Fzc2V0VG9rZW4oYXNzdW1lUm9sZUFybikgfSA6IHVuZGVmaW5lZCxcbiAgICB9LCB7XG4gICAgICBkaXNwbGF5TmFtZTogYXNzZXQuZGlzcGxheU5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAoZGVwZW5kZW5jeVN0YWNrKSB7XG4gICAgICB0aGlzLmJvdW5kU3RhY2suYWRkU3RhY2tEZXBlbmRlbmN5KGRlcGVuZGVuY3lTdGFjaywgJ3N0YWNrIGRlcGVuZHMgb24gdGhlIHN0YWdpbmcgc3RhY2sgZm9yIHN0YWdpbmcgcmVzb3VyY2VzJyk7XG4gICAgICB0aGlzLmRlcGVuZGVuY3lTdGFja3MuYWRkKGRlcGVuZGVuY3lTdGFjayk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuY2xvdWRGb3JtYXRpb25Mb2NhdGlvbkZyb21GaWxlQXNzZXQobG9jYXRpb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIGRvY2tlciBpbWFnZSBhc3NldCB0byB0aGUgbWFuaWZlc3QuXG4gICAqL1xuICBwdWJsaWMgYWRkRG9ja2VySW1hZ2VBc3NldChhc3NldDogRG9ja2VySW1hZ2VBc3NldFNvdXJjZSk6IERvY2tlckltYWdlQXNzZXRMb2NhdGlvbiB7XG4gICAgY29uc3QgeyByZXBvTmFtZSwgYXNzdW1lUm9sZUFybiwgZGVwZW5kZW5jeVN0YWNrIH0gPSB0aGlzLnN0YWdpbmdTdGFjay5hZGREb2NrZXJJbWFnZShhc3NldCk7XG4gICAgY29uc3QgbG9jYXRpb24gPSB0aGlzLmFzc2V0TWFuaWZlc3QuZGVmYXVsdEFkZERvY2tlckltYWdlQXNzZXQodGhpcy5ib3VuZFN0YWNrLCBhc3NldCwge1xuICAgICAgcmVwb3NpdG9yeU5hbWU6IHRyYW5zbGF0ZUNmblRva2VuVG9Bc3NldFRva2VuKHJlcG9OYW1lKSxcbiAgICAgIHJvbGU6IGFzc3VtZVJvbGVBcm4gPyB7IGFzc3VtZVJvbGVBcm46IHRyYW5zbGF0ZUNmblRva2VuVG9Bc3NldFRva2VuKGFzc3VtZVJvbGVBcm4pIH0gOiB1bmRlZmluZWQsXG4gICAgfSwge1xuICAgICAgZGlzcGxheU5hbWU6IGFzc2V0LmRpc3BsYXlOYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKGRlcGVuZGVuY3lTdGFjaykge1xuICAgICAgdGhpcy5ib3VuZFN0YWNrLmFkZFN0YWNrRGVwZW5kZW5jeShkZXBlbmRlbmN5U3RhY2ssICdzdGFjayBkZXBlbmRzIG9uIHRoZSBzdGFnaW5nIHN0YWNrIGZvciBzdGFnaW5nIHJlc291cmNlcycpO1xuICAgICAgdGhpcy5kZXBlbmRlbmN5U3RhY2tzLmFkZChkZXBlbmRlbmN5U3RhY2spO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNsb3VkRm9ybWF0aW9uTG9jYXRpb25Gcm9tRG9ja2VySW1hZ2VBc3NldChsb2NhdGlvbik7XG4gIH1cbn1cbiJdfQ==
@@ -11,7 +11,7 @@ const app_staging_synthesizer_1 = require("./app-staging-synthesizer");
11
11
  */
12
12
  class BootstrapRole {
13
13
  roleArn;
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.BootstrapRole", version: "2.261.0-alpha.0" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.BootstrapRole", version: "2.262.0-alpha.0" };
15
15
  /**
16
16
  * Use the currently assumed role/credentials
17
17
  */
@@ -60,7 +60,7 @@ exports.BootstrapRole = BootstrapRole;
60
60
  * when deploying the App.
61
61
  */
62
62
  class DeploymentIdentities {
63
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.DeploymentIdentities", version: "2.261.0-alpha.0" };
63
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.DeploymentIdentities", version: "2.262.0-alpha.0" };
64
64
  /**
65
65
  * Use CLI credentials for all deployment identities.
66
66
  */
@@ -56,7 +56,7 @@ exports.DEPLOY_TIME_PREFIX = 'deploy-time/';
56
56
  * injested in our metrics like every other construct.
57
57
  */
58
58
  class UsingAppStagingSynthesizer extends constructs_1.Construct {
59
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.UsingAppStagingSynthesizer", version: "2.261.0-alpha.0" };
59
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.UsingAppStagingSynthesizer", version: "2.262.0-alpha.0" };
60
60
  constructor(scope, id) {
61
61
  super(scope, id);
62
62
  }
@@ -71,7 +71,7 @@ exports.UsingAppStagingSynthesizer = UsingAppStagingSynthesizer;
71
71
  */
72
72
  class DefaultStagingStack extends core_1.Stack {
73
73
  props;
74
- static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.DefaultStagingStack", version: "2.261.0-alpha.0" };
74
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "@aws-cdk/app-staging-synthesizer-alpha.DefaultStagingStack", version: "2.262.0-alpha.0" };
75
75
  /**
76
76
  * Return a factory that will create DefaultStagingStacks
77
77
  */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-cdk/app-staging-synthesizer-alpha",
3
3
  "private": false,
4
- "version": "2.261.0-alpha.0",
4
+ "version": "2.262.0-alpha.0",
5
5
  "description": "Cdk synthesizer for with app-scoped staging stack",
6
6
  "main": "lib/index.js",
7
7
  "types": "lib/index.d.ts",
@@ -89,15 +89,15 @@
89
89
  }
90
90
  },
91
91
  "devDependencies": {
92
- "aws-cdk-lib": "2.261.0",
93
- "@aws-cdk/integ-runner": "^2.199.0",
94
- "@aws-cdk/integ-tests-alpha": "2.261.0-alpha.0",
92
+ "aws-cdk-lib": "2.262.0",
93
+ "@aws-cdk/integ-runner": "^2.202.3",
94
+ "@aws-cdk/integ-tests-alpha": "2.262.0-alpha.0",
95
95
  "constructs": "^10.5.0",
96
- "@aws-cdk/cdk-build-tools": "2.261.0-alpha.0",
97
- "@aws-cdk/pkglint": "2.261.0-alpha.0"
96
+ "@aws-cdk/cdk-build-tools": "2.262.0-alpha.0",
97
+ "@aws-cdk/pkglint": "2.262.0-alpha.0"
98
98
  },
99
99
  "peerDependencies": {
100
- "aws-cdk-lib": "^2.261.0",
100
+ "aws-cdk-lib": "^2.262.0",
101
101
  "constructs": "^10.5.0"
102
102
  },
103
103
  "publishConfig": {