@aws-cdk/region-info 2.17.0 → 2.20.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 +3 -4
- package/.jsii.tabl.json +29 -1
- package/lib/aws-entities.d.ts +0 -4
- package/lib/aws-entities.js +2 -13
- package/lib/built-ins.generated.d.ts +1 -1
- package/lib/built-ins.generated.js +5 -5
- package/lib/default.js +4 -7
- package/lib/fact.js +3 -3
- package/lib/region-info.js +1 -1
- package/package.json +4 -5
package/.jsii
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"stability": "stable"
|
|
13
13
|
},
|
|
14
14
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
15
|
-
"jsiiVersion": "1.
|
|
15
|
+
"jsiiVersion": "1.55.1 (build 07d2d90)",
|
|
16
16
|
"keywords": [
|
|
17
17
|
"aws",
|
|
18
18
|
"cdk"
|
|
@@ -57,8 +57,7 @@
|
|
|
57
57
|
},
|
|
58
58
|
"python": {
|
|
59
59
|
"classifiers": [
|
|
60
|
-
"Framework :: AWS CDK"
|
|
61
|
-
"Framework :: AWS CDK :: 1"
|
|
60
|
+
"Framework :: AWS CDK"
|
|
62
61
|
],
|
|
63
62
|
"distName": "aws-cdk.region-info",
|
|
64
63
|
"module": "aws_cdk.region_info"
|
|
@@ -1100,6 +1099,6 @@
|
|
|
1100
1099
|
"symbolId": "lib/region-info:RegionInfo"
|
|
1101
1100
|
}
|
|
1102
1101
|
},
|
|
1103
|
-
"version": "2.
|
|
1102
|
+
"version": "2.20.0",
|
|
1104
1103
|
"fingerprint": "**********"
|
|
1105
1104
|
}
|
package/.jsii.tabl.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "2",
|
|
3
|
-
"toolVersion": "1.
|
|
3
|
+
"toolVersion": "1.55.1",
|
|
4
4
|
"snippets": {
|
|
5
5
|
"5734a31089241ec7ba6bf5346086285ab04d4a69540970c2191a8315f25c3053": {
|
|
6
6
|
"translations": {
|
|
@@ -16,6 +16,10 @@
|
|
|
16
16
|
"source": "// Get the information for \"eu-west-1\":\nRegionInfo region = RegionInfo.get(\"eu-west-1\");\n\n// Access attributes:\nregion.getS3StaticWebsiteEndpoint(); // s3-website-eu-west-1.amazonaws.com\nregion.servicePrincipal(\"logs.amazonaws.com\");",
|
|
17
17
|
"version": "1"
|
|
18
18
|
},
|
|
19
|
+
"go": {
|
|
20
|
+
"source": "// Get the information for \"eu-west-1\":\nregion := regionInfo.regionInfo.get(jsii.String(\"eu-west-1\"))\n\n// Access attributes:\nregion.s3StaticWebsiteEndpoint // s3-website-eu-west-1.amazonaws.com\nregion.servicePrincipal(jsii.String(\"logs.amazonaws.com\"))",
|
|
21
|
+
"version": "1"
|
|
22
|
+
},
|
|
19
23
|
"$": {
|
|
20
24
|
"source": "// Get the information for \"eu-west-1\":\nconst region = regionInfo.RegionInfo.get('eu-west-1');\n\n// Access attributes:\nregion.s3StaticWebsiteEndpoint; // s3-website-eu-west-1.amazonaws.com\nregion.servicePrincipal('logs.amazonaws.com'); // logs.eu-west-1.amazonaws.com",
|
|
21
25
|
"version": "0"
|
|
@@ -64,6 +68,10 @@
|
|
|
64
68
|
"source": "String codeDeployPrincipal = Fact.find(\"us-east-1\", FactName.servicePrincipal(\"codedeploy.amazonaws.com\"));\n// => codedeploy.us-east-1.amazonaws.com\n\nString staticWebsite = Fact.find(\"ap-northeast-1\", FactName.S3_STATIC_WEBSITE_ENDPOINT);",
|
|
65
69
|
"version": "1"
|
|
66
70
|
},
|
|
71
|
+
"go": {
|
|
72
|
+
"source": "codeDeployPrincipal := regionInfo.fact.find(jsii.String(\"us-east-1\"), regionInfo.factName.servicePrincipal(jsii.String(\"codedeploy.amazonaws.com\")))\n// => codedeploy.us-east-1.amazonaws.com\n\nstaticWebsite := regionInfo.fact.find(jsii.String(\"ap-northeast-1\"), regionInfo.factName_S3_STATIC_WEBSITE_ENDPOINT())",
|
|
73
|
+
"version": "1"
|
|
74
|
+
},
|
|
67
75
|
"$": {
|
|
68
76
|
"source": "const codeDeployPrincipal = regionInfo.Fact.find('us-east-1', regionInfo.FactName.servicePrincipal('codedeploy.amazonaws.com'));\n// => codedeploy.us-east-1.amazonaws.com\n\nconst staticWebsite = regionInfo.Fact.find('ap-northeast-1', regionInfo.FactName.S3_STATIC_WEBSITE_ENDPOINT);\n// => s3-website-ap-northeast-1.amazonaws.com",
|
|
69
77
|
"version": "0"
|
|
@@ -113,6 +121,10 @@
|
|
|
113
121
|
"source": "public class MyFact implements IFact {\n public final Object region;\n public final Object name;\n public final Object value;\n}\n\nFact.register(new MyFact());",
|
|
114
122
|
"version": "1"
|
|
115
123
|
},
|
|
124
|
+
"go": {
|
|
125
|
+
"source": "type myFact struct {\n\tregion\n\tname\n\tvalue\n}\n\nregionInfo.fact.register(NewMyFact())",
|
|
126
|
+
"version": "1"
|
|
127
|
+
},
|
|
116
128
|
"$": {
|
|
117
129
|
"source": "class MyFact implements regionInfo.IFact {\n public readonly region = 'bermuda-triangle-1';\n public readonly name = regionInfo.FactName.servicePrincipal('s3.amazonaws.com');\n public readonly value = 's3-website.bermuda-triangle-1.nowhere.com';\n}\n\nregionInfo.Fact.register(new MyFact());",
|
|
118
130
|
"version": "0"
|
|
@@ -167,6 +179,10 @@
|
|
|
167
179
|
"source": "public class MyFact implements IFact {\n public final Object region;\n public final Object name;\n public final Object value;\n}\n\nFact.register(new MyFact(), true);",
|
|
168
180
|
"version": "1"
|
|
169
181
|
},
|
|
182
|
+
"go": {
|
|
183
|
+
"source": "type myFact struct {\n\tregion\n\tname\n\tvalue\n}\n\nregionInfo.fact.register(NewMyFact(), jsii.Boolean(true))",
|
|
184
|
+
"version": "1"
|
|
185
|
+
},
|
|
170
186
|
"$": {
|
|
171
187
|
"source": "class MyFact implements regionInfo.IFact {\n public readonly region = 'us-east-1';\n public readonly name = regionInfo.FactName.servicePrincipal('service.amazonaws.com');\n public readonly value = 'the-correct-principal.amazonaws.com';\n}\n\nregionInfo.Fact.register(new MyFact(), true /* Allow overriding information */);",
|
|
172
188
|
"version": "0"
|
|
@@ -222,6 +238,10 @@
|
|
|
222
238
|
"source": "public class MyFact implements IFact {\n public final Object region;\n public final Object name;\n public final Object value;\n}\n\nFact.register(new MyFact());",
|
|
223
239
|
"version": "1"
|
|
224
240
|
},
|
|
241
|
+
"go": {
|
|
242
|
+
"source": "type myFact struct {\n\tregion\n\tname\n\tvalue\n}\n\nregionInfo.fact.register(NewMyFact())",
|
|
243
|
+
"version": "1"
|
|
244
|
+
},
|
|
225
245
|
"$": {
|
|
226
246
|
"source": "class MyFact implements regionInfo.IFact {\n public readonly region = 'bermuda-triangle-1';\n public readonly name = regionInfo.FactName.servicePrincipal('s3.amazonaws.com');\n public readonly value = 's3-website.bermuda-triangle-1.nowhere.com';\n}\n\nregionInfo.Fact.register(new MyFact());",
|
|
227
247
|
"version": "0"
|
|
@@ -275,6 +295,10 @@
|
|
|
275
295
|
"source": "public class MyFact implements IFact {\n public final Object region;\n public final Object name;\n public final Object value;\n}\n\nFact.register(new MyFact());",
|
|
276
296
|
"version": "1"
|
|
277
297
|
},
|
|
298
|
+
"go": {
|
|
299
|
+
"source": "type myFact struct {\n\tregion\n\tname\n\tvalue\n}\n\nregionInfo.fact.register(NewMyFact())",
|
|
300
|
+
"version": "1"
|
|
301
|
+
},
|
|
278
302
|
"$": {
|
|
279
303
|
"source": "class MyFact implements regionInfo.IFact {\n public readonly region = 'bermuda-triangle-1';\n public readonly name = regionInfo.FactName.servicePrincipal('s3.amazonaws.com');\n public readonly value = 's3-website.bermuda-triangle-1.nowhere.com';\n}\n\nregionInfo.Fact.register(new MyFact());",
|
|
280
304
|
"version": "0"
|
|
@@ -328,6 +352,10 @@
|
|
|
328
352
|
"source": "// Get the information for \"eu-west-1\":\nRegionInfo region = RegionInfo.get(\"eu-west-1\");\n\n// Access attributes:\nregion.getS3StaticWebsiteEndpoint(); // s3-website-eu-west-1.amazonaws.com\nregion.servicePrincipal(\"logs.amazonaws.com\");",
|
|
329
353
|
"version": "1"
|
|
330
354
|
},
|
|
355
|
+
"go": {
|
|
356
|
+
"source": "// Get the information for \"eu-west-1\":\nregion := regionInfo.regionInfo.get(jsii.String(\"eu-west-1\"))\n\n// Access attributes:\nregion.s3StaticWebsiteEndpoint // s3-website-eu-west-1.amazonaws.com\nregion.servicePrincipal(jsii.String(\"logs.amazonaws.com\"))",
|
|
357
|
+
"version": "1"
|
|
358
|
+
},
|
|
331
359
|
"$": {
|
|
332
360
|
"source": "// Get the information for \"eu-west-1\":\nconst region = regionInfo.RegionInfo.get('eu-west-1');\n\n// Access attributes:\nregion.s3StaticWebsiteEndpoint; // s3-website-eu-west-1.amazonaws.com\nregion.servicePrincipal('logs.amazonaws.com'); // logs.eu-west-1.amazonaws.com",
|
|
333
361
|
"version": "0"
|
package/lib/aws-entities.d.ts
CHANGED
|
@@ -50,7 +50,3 @@ export interface Region {
|
|
|
50
50
|
readonly domainSuffix: string;
|
|
51
51
|
}
|
|
52
52
|
export declare function partitionInformation(region: string): Region;
|
|
53
|
-
/**
|
|
54
|
-
* Build a lookup map for all regions
|
|
55
|
-
*/
|
|
56
|
-
export declare function generateRegionMap(cb: (region: string) => string): Record<string, string>;
|
package/lib/aws-entities.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.partitionInformation = exports.regionsBefore = exports.before = exports.AWS_SERVICES = exports.AWS_REGIONS = exports.AWS_REGIONS_AND_RULES = exports.RULE_S3_WEBSITE_REGIONAL_SUBDOMAIN = exports.RULE_SSM_PRINCIPALS_ARE_REGIONAL = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* After this point, SSM only creates regional principals
|
|
6
6
|
*/
|
|
@@ -129,15 +129,4 @@ function partitionInformation(region) {
|
|
|
129
129
|
return PARTITION_MAP.default;
|
|
130
130
|
}
|
|
131
131
|
exports.partitionInformation = partitionInformation;
|
|
132
|
-
|
|
133
|
-
* Build a lookup map for all regions
|
|
134
|
-
*/
|
|
135
|
-
function generateRegionMap(cb) {
|
|
136
|
-
const ret = {};
|
|
137
|
-
for (const region of exports.AWS_REGIONS) {
|
|
138
|
-
ret[region] = cb(region);
|
|
139
|
-
}
|
|
140
|
-
return ret;
|
|
141
|
-
}
|
|
142
|
-
exports.generateRegionMap = generateRegionMap;
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWVudGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWVudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ1UsUUFBQSxnQ0FBZ0MsR0FBRyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQztBQUV0Rjs7OztHQUlHO0FBQ1UsUUFBQSxrQ0FBa0MsR0FBRyxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQztBQUUxRjs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBaUM7SUFDakUsV0FBVztJQUNYLFdBQVc7SUFDWCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsV0FBVztJQUNYLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsMENBQWtDO0lBQ2xDLFlBQVk7SUFDWixlQUFlO0lBQ2YsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixZQUFZO0lBQ1osV0FBVztJQUNYLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixZQUFZO0lBQ1osd0NBQWdDO0lBQ2hDLFdBQVc7SUFDWCxZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixlQUFlO0lBQ2YsWUFBWTtJQUNaLGdCQUFnQjtDQUNqQixDQUFDO0FBRUY7Ozs7R0FJRztBQUNVLFFBQUEsV0FBVyxHQUFHLDZCQUFxQjtLQUM3QyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQztLQUNwQyxJQUFJLEVBQXVCLENBQUM7QUFFL0I7Ozs7R0FJRztBQUNVLFFBQUEsWUFBWSxHQUFzQjtJQUM3Qyx5QkFBeUI7SUFDekIsYUFBYTtJQUNiLFlBQVk7SUFDWixLQUFLO0lBQ0wsUUFBUTtJQUNSLFFBQVE7SUFDUixNQUFNO0lBQ04sSUFBSTtJQUNKLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLFFBQVE7Q0FDVCxDQUFDLElBQUksRUFBRSxDQUFDO0FBRVQ7Ozs7R0FJRztBQUNILFNBQWdCLE1BQU0sQ0FBQyxNQUFjLEVBQUUsWUFBNkI7SUFDbEUsTUFBTSxNQUFNLEdBQUcsNkJBQXFCLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNELElBQUksTUFBTSxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDMUQ7SUFDRCxNQUFNLFFBQVEsR0FBRyw2QkFBcUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkQsT0FBTyxRQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztBQUNyRCxDQUFDO0FBUEQsd0JBT0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxZQUE2QjtJQUN6RCxNQUFNLE1BQU0sR0FBRyw2QkFBcUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDM0QsSUFBSSxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUMxRDtJQUNELE9BQU8sNkJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUM7U0FDMUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7U0FDNUMsSUFBSSxFQUFjLENBQUM7QUFDeEIsQ0FBQztBQVJELHNDQVFDO0FBSUQsTUFBTSxhQUFhLEdBQXlDO0lBQzFELFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRTtJQUM5RCxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRTtJQUNoRSxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUU7SUFDckUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFO0lBQy9ELFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRTtDQUN0RSxDQUFDO0FBRUYsU0FBZ0Isb0JBQW9CLENBQUMsTUFBYztJQUNqRCxLQUFLLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRTtRQUMxRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUM7U0FDYjtLQUNGO0lBQ0QsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO0FBQy9CLENBQUM7QUFQRCxvREFPQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsaUJBQWlCLENBQUMsRUFBOEI7SUFDOUQsTUFBTSxHQUFHLEdBQTJCLEVBQUUsQ0FBQztJQUN2QyxLQUFLLE1BQU0sTUFBTSxJQUFJLG1CQUFXLEVBQUU7UUFDaEMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztLQUMxQjtJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQU5ELDhDQU1DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBBZnRlciB0aGlzIHBvaW50LCBTU00gb25seSBjcmVhdGVzIHJlZ2lvbmFsIHByaW5jaXBhbHNcbiAqL1xuZXhwb3J0IGNvbnN0IFJVTEVfU1NNX1BSSU5DSVBBTFNfQVJFX1JFR0lPTkFMID0gU3ltYm9sKCdTU01fUFJJTkNJUEFMU19BUkVfUkVHSU9OQUwnKTtcblxuLyoqXG4gKiBBZnRlciB0aGlzIHBvaW50LCBTMyB3ZWJzaXRlIGRvbWFpbnMgbG9vayBsaWtlIGBzMy13ZWJzaXRlLlJFR0lPTi5zMy5hbWF6b25hd3MuY29tYFxuICpcbiAqIEJlZm9yZSB0aGlzIHBvaW50LCBTMyB3ZWJzaXRlIGRvbWFpbnMgbG9vayBsaWtlIGBzMy13ZWJzaXRlLVJFR0lPTi5zMy5hbWF6b25hd3MuY29tYC5cbiAqL1xuZXhwb3J0IGNvbnN0IFJVTEVfUzNfV0VCU0lURV9SRUdJT05BTF9TVUJET01BSU4gPSBTeW1ib2woJ1MzX1dFQlNJVEVfUkVHSU9OQUxfU1VCRE9NQUlOJyk7XG5cbi8qKlxuICogTGlzdCBvZiBBV1MgcmVnaW9uLCBvcmRlcmVkIGJ5IGxhdW5jaCBkYXRlIChvbGRlc3QgdG8gbmV3ZXN0KVxuICpcbiAqIFRoZSBzaWduaWZpY2FuY2Ugb2YgdGhpcyBpcyB0aGF0IHN0YW5kYXJkcyBhbmQgY29udmVudGlvbnMgY2hhbmdlIG92ZXIgdGltZS5cbiAqIEdlbmVyYWxseSwgYXMgcnVsZXMgYXJlIGNoYW5nZWQgdGhleSBvbmx5IGFwcGx5IHRvIG5ldyByZWdpb25zLCBhbmQgb2xkXG4gKiByZWdpb25zIGFyZSBsZWZ0IGFzLWlzLlxuICpcbiAqIFdlIG1peCB0aGUgbGlzdCBvZiByZWdpb25zIHdpdGggYSBsaXN0IG9mIHJ1bGVzIHRoYXQgd2VyZSBpbnRyb2R1Y2VkIG92ZXJcbiAqIHRpbWUgKHJ1bGVzIGFyZSBzeW1ib2xzKS5cbiAqXG4gKiBUaGVyZWZvcmUsIGlmIHdlIHdhbnQgdG8ga25vdyBpZiBhIHJ1bGUgYXBwbGllcyB0byBhIGNlcnRhaW4gcmVnaW9uLCB3ZVxuICogb25seSBuZWVkIHRvIGNoZWNrIGl0cyBwb3NpdGlvbiBpbiB0aGUgbGlzdCBhbmQgY29tcGFyZSBpdCB0byB3aGVuIGFcbiAqIHJ1bGUgd2FzIGludHJvZHVjZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBBV1NfUkVHSU9OU19BTkRfUlVMRVM6IHJlYWRvbmx5IChzdHJpbmcgfCBzeW1ib2wpW10gPSBbXG4gICd1cy1lYXN0LTEnLCAvLyBVUyBFYXN0IChOLiBWaXJnaW5pYSlcbiAgJ2V1LXdlc3QtMScsIC8vIEV1cm9wZSAoSXJlbGFuZClcbiAgJ3VzLXdlc3QtMScsIC8vIFVTIFdlc3QgKE4uIENhbGlmb3JuaWEpXG4gICdhcC1zb3V0aGVhc3QtMScsIC8vIEFzaWEgUGFjaWZpYyAoU2luZ2Fwb3JlKVxuICAnYXAtbm9ydGhlYXN0LTEnLCAvLyBBc2lhIFBhY2lmaWMgKFRva3lvKVxuICAndXMtZ292LXdlc3QtMScsIC8vIEFXUyBHb3ZDbG91ZCAoVVMtV2VzdClcbiAgJ3VzLXdlc3QtMicsIC8vIFVTIFdlc3QgKE9yZWdvbilcbiAgJ3NhLWVhc3QtMScsIC8vIFNvdXRoIEFtZXJpY2EgKFPDo28gUGF1bG8pXG4gICdhcC1zb3V0aGVhc3QtMicsIC8vIEFzaWEgUGFjaWZpYyAoU3lkbmV5KVxuICBSVUxFX1MzX1dFQlNJVEVfUkVHSU9OQUxfU1VCRE9NQUlOLFxuICAnY24tbm9ydGgtMScsIC8vIENoaW5hIChCZWlqaW5nKVxuICAndXMtaXNvLWVhc3QtMScsIC8vIEFXUyBJU09cbiAgJ2V1LWNlbnRyYWwtMScsIC8vIEV1cm9wZSAoRnJhbmtmdXJ0KVxuICAnYXAtbm9ydGhlYXN0LTInLCAvLyBBc2lhIFBhY2lmaWMgKFNlb3VsKVxuICAnYXAtc291dGgtMScsIC8vIEFzaWEgUGFjaWZpYyAoTXVtYmFpKVxuICAndXMtZWFzdC0yJywgLy8gVVMgRWFzdCAoT2hpbylcbiAgJ2NhLWNlbnRyYWwtMScsIC8vIENhbmFkYSAoQ2VudHJhbClcbiAgJ2V1LXdlc3QtMicsIC8vIEV1cm9wZSAoTG9uZG9uKVxuICAndXMtaXNvYi1lYXN0LTEnLCAvLyBBV1MgSVNPLUJcbiAgJ2NuLW5vcnRod2VzdC0xJywgLy8gQ2hpbmEgKE5pbmd4aWEpXG4gICdldS13ZXN0LTMnLCAvLyBFdXJvcGUgKFBhcmlzKVxuICAnYXAtbm9ydGhlYXN0LTMnLCAvLyBBc2lhIFBhY2lmaWMgKE9zYWthKVxuICAndXMtZ292LWVhc3QtMScsIC8vIEFXUyBHb3ZDbG91ZCAoVVMtRWFzdClcbiAgJ2V1LW5vcnRoLTEnLCAvLyBFdXJvcGUgKFN0b2NraG9sbSlcbiAgUlVMRV9TU01fUFJJTkNJUEFMU19BUkVfUkVHSU9OQUwsXG4gICdhcC1lYXN0LTEnLCAvLyBBc2lhIFBhY2lmaWMgKEhvbmcgS29uZylcbiAgJ21lLXNvdXRoLTEnLCAvLyBNaWRkbGUgRWFzdCAoQmFocmFpbilcbiAgJ2V1LXNvdXRoLTEnLCAvLyBFdXJvcGUgKE1pbGFuKVxuICAnYWYtc291dGgtMScsIC8vIEFmcmljYSAoQ2FwZSBUb3duKVxuICAndXMtaXNvLXdlc3QtMScsIC8vIFVTIElTTyBXZXN0XG4gICdldS1zb3V0aC0yJywgLy8gRXVyb3BlIChTcGFpbilcbiAgJ2FwLXNvdXRoZWFzdC0zJywgLy8gQXNpYSBQYWNpZmljIChKYWthcnRhKVxuXTtcblxuLyoqXG4gKiBUaGUgbmFtZXMgb2YgYWxsIChrbm93bikgQVdTIHJlZ2lvbnNcbiAqXG4gKiBOb3QgaW4gdGhlIGxpc3QgPT0+IG5vIGJ1aWx0LWluIGRhdGEgZm9yIHRoYXQgcmVnaW9uLlxuICovXG5leHBvcnQgY29uc3QgQVdTX1JFR0lPTlMgPSBBV1NfUkVHSU9OU19BTkRfUlVMRVNcbiAgLmZpbHRlcigoeCkgPT4gdHlwZW9mIHggPT09ICdzdHJpbmcnKVxuICAuc29ydCgpIGFzIHJlYWRvbmx5IHN0cmluZ1tdO1xuXG4vKipcbiAqIFBvc3NpYmx5IG5vbi1leGF1c3RpdmUgbGlzdCBvZiBhbGwgc2VydmljZSBuYW1lcywgdXNlZCB0byBsb2NhdGUgc2VydmljZSBwcmluY2lwYWxzLlxuICpcbiAqIE5vdCBpbiB0aGUgbGlzdCA9PT4gZGVmYXVsdCBzZXJ2aWNlIHByaW5jaXBhbCBtYXBwaW5ncy5cbiAqL1xuZXhwb3J0IGNvbnN0IEFXU19TRVJWSUNFUzogcmVhZG9ubHkgc3RyaW5nW10gPSBbXG4gICdhcHBsaWNhdGlvbi1hdXRvc2NhbGluZycsXG4gICdhdXRvc2NhbGluZycsXG4gICdjb2RlZGVwbG95JyxcbiAgJ2VjMicsXG4gICdldmVudHMnLFxuICAnbGFtYmRhJyxcbiAgJ2xvZ3MnLFxuICAnczMnLFxuICAnc3NtJyxcbiAgJ3NucycsXG4gICdzcXMnLFxuICAnc3RhdGVzJyxcbl0uc29ydCgpO1xuXG4vKipcbiAqIFdoZXRoZXIgb3Igbm90IGEgcmVnaW9uIHByZWRhdGVzIGEgZ2l2ZW4gcnVsZSAob3IgcmVnaW9uKS5cbiAqXG4gKiBVbmtub3duIHJlZ2lvbiA9PiB3ZSBoYXZlIHRvIGFzc3VtZSBuby5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGJlZm9yZShyZWdpb246IHN0cmluZywgcnVsZU9yUmVnaW9uOiBzdHJpbmcgfCBzeW1ib2wpIHtcbiAgY29uc3QgcnVsZUl4ID0gQVdTX1JFR0lPTlNfQU5EX1JVTEVTLmluZGV4T2YocnVsZU9yUmVnaW9uKTtcbiAgaWYgKHJ1bGVJeCA9PT0gLTEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcnVsZTogJHtTdHJpbmcocnVsZU9yUmVnaW9uKX1gKTtcbiAgfVxuICBjb25zdCByZWdpb25JeCA9IEFXU19SRUdJT05TX0FORF9SVUxFUy5pbmRleE9mKHJlZ2lvbik7XG4gIHJldHVybiByZWdpb25JeCA9PT0gLTEgPyBmYWxzZSA6IHJlZ2lvbkl4IDwgcnVsZUl4O1xufVxuXG4vKipcbiAqIFJldHVybiBhbGwgcmVnaW9ucyBiZWZvcmUgYSBnaXZlbiBydWxlIHdhcyBpbnRyb2R1Y2VkIChvciByZWdpb24pXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpb25zQmVmb3JlKHJ1bGVPclJlZ2lvbjogc3RyaW5nIHwgc3ltYm9sKTogc3RyaW5nW10ge1xuICBjb25zdCBydWxlSXggPSBBV1NfUkVHSU9OU19BTkRfUlVMRVMuaW5kZXhPZihydWxlT3JSZWdpb24pO1xuICBpZiAocnVsZUl4ID09PSAtMSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBydWxlOiAke1N0cmluZyhydWxlT3JSZWdpb24pfWApO1xuICB9XG4gIHJldHVybiBBV1NfUkVHSU9OU19BTkRfUlVMRVMuc2xpY2UoMCwgcnVsZUl4KVxuICAgIC5maWx0ZXIoKGVudHJ5KSA9PiB0eXBlb2YgZW50cnkgPT09ICdzdHJpbmcnKVxuICAgIC5zb3J0KCkgYXMgc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaW9uIHsgcmVhZG9ubHkgcGFydGl0aW9uOiBzdHJpbmcsIHJlYWRvbmx5IGRvbWFpblN1ZmZpeDogc3RyaW5nIH1cblxuY29uc3QgUEFSVElUSU9OX01BUDoge3JlYWRvbmx5IFtyZWdpb246IHN0cmluZ106IFJlZ2lvbiB9ID0ge1xuICAnZGVmYXVsdCc6IHsgcGFydGl0aW9uOiAnYXdzJywgZG9tYWluU3VmZml4OiAnYW1hem9uYXdzLmNvbScgfSxcbiAgJ2NuLSc6IHsgcGFydGl0aW9uOiAnYXdzLWNuJywgZG9tYWluU3VmZml4OiAnYW1hem9uYXdzLmNvbS5jbicgfSxcbiAgJ3VzLWdvdi0nOiB7IHBhcnRpdGlvbjogJ2F3cy11cy1nb3YnLCBkb21haW5TdWZmaXg6ICdhbWF6b25hd3MuY29tJyB9LFxuICAndXMtaXNvLSc6IHsgcGFydGl0aW9uOiAnYXdzLWlzbycsIGRvbWFpblN1ZmZpeDogJ2Mycy5pYy5nb3YnIH0sXG4gICd1cy1pc29iLSc6IHsgcGFydGl0aW9uOiAnYXdzLWlzby1iJywgZG9tYWluU3VmZml4OiAnc2Mycy5zZ292LmdvdicgfSxcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJ0aXRpb25JbmZvcm1hdGlvbihyZWdpb246IHN0cmluZyk6IFJlZ2lvbiB7XG4gIGZvciAoY29uc3QgW3ByZWZpeCwgaW5mb10gb2YgT2JqZWN0LmVudHJpZXMoUEFSVElUSU9OX01BUCkpIHtcbiAgICBpZiAocmVnaW9uLnN0YXJ0c1dpdGgocHJlZml4KSkge1xuICAgICAgcmV0dXJuIGluZm87XG4gICAgfVxuICB9XG4gIHJldHVybiBQQVJUSVRJT05fTUFQLmRlZmF1bHQ7XG59XG5cbi8qKlxuICogQnVpbGQgYSBsb29rdXAgbWFwIGZvciBhbGwgcmVnaW9uc1xuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVSZWdpb25NYXAoY2I6IChyZWdpb246IHN0cmluZykgPT4gc3RyaW5nKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gIGNvbnN0IHJldDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuICBmb3IgKGNvbnN0IHJlZ2lvbiBvZiBBV1NfUkVHSU9OUykge1xuICAgIHJldFtyZWdpb25dID0gY2IocmVnaW9uKTtcbiAgfVxuICByZXR1cm4gcmV0O1xufVxuIl19
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWVudGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYXdzLWVudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBOztHQUVHO0FBQ1UsUUFBQSxnQ0FBZ0MsR0FBRyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQztBQUV0Rjs7OztHQUlHO0FBQ1UsUUFBQSxrQ0FBa0MsR0FBRyxNQUFNLENBQUMsK0JBQStCLENBQUMsQ0FBQztBQUUxRjs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ1UsUUFBQSxxQkFBcUIsR0FBaUM7SUFDakUsV0FBVztJQUNYLFdBQVc7SUFDWCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixlQUFlO0lBQ2YsV0FBVztJQUNYLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsMENBQWtDO0lBQ2xDLFlBQVk7SUFDWixlQUFlO0lBQ2YsY0FBYztJQUNkLGdCQUFnQjtJQUNoQixZQUFZO0lBQ1osV0FBVztJQUNYLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixZQUFZO0lBQ1osd0NBQWdDO0lBQ2hDLFdBQVc7SUFDWCxZQUFZO0lBQ1osWUFBWTtJQUNaLFlBQVk7SUFDWixlQUFlO0lBQ2YsWUFBWTtJQUNaLGdCQUFnQjtDQUNqQixDQUFDO0FBRUY7Ozs7R0FJRztBQUNVLFFBQUEsV0FBVyxHQUFHLDZCQUFxQjtLQUM3QyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQztLQUNwQyxJQUFJLEVBQXVCLENBQUM7QUFFL0I7Ozs7R0FJRztBQUNVLFFBQUEsWUFBWSxHQUFzQjtJQUM3Qyx5QkFBeUI7SUFDekIsYUFBYTtJQUNiLFlBQVk7SUFDWixLQUFLO0lBQ0wsUUFBUTtJQUNSLFFBQVE7SUFDUixNQUFNO0lBQ04sSUFBSTtJQUNKLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLFFBQVE7Q0FDVCxDQUFDLElBQUksRUFBRSxDQUFDO0FBRVQ7Ozs7R0FJRztBQUNILFNBQWdCLE1BQU0sQ0FBQyxNQUFjLEVBQUUsWUFBNkI7SUFDbEUsTUFBTSxNQUFNLEdBQUcsNkJBQXFCLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNELElBQUksTUFBTSxLQUFLLENBQUMsQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLENBQUM7S0FDMUQ7SUFDRCxNQUFNLFFBQVEsR0FBRyw2QkFBcUIsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdkQsT0FBTyxRQUFRLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztBQUNyRCxDQUFDO0FBUEQsd0JBT0M7QUFFRDs7R0FFRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxZQUE2QjtJQUN6RCxNQUFNLE1BQU0sR0FBRyw2QkFBcUIsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDM0QsSUFBSSxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUMxRDtJQUNELE9BQU8sNkJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUM7U0FDMUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUM7U0FDNUMsSUFBSSxFQUFjLENBQUM7QUFDeEIsQ0FBQztBQVJELHNDQVFDO0FBSUQsTUFBTSxhQUFhLEdBQXlDO0lBQzFELFNBQVMsRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRTtJQUM5RCxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRTtJQUNoRSxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUU7SUFDckUsU0FBUyxFQUFFLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFO0lBQy9ELFVBQVUsRUFBRSxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBRTtDQUN0RSxDQUFDO0FBRUYsU0FBZ0Isb0JBQW9CLENBQUMsTUFBYztJQUNqRCxLQUFLLE1BQU0sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRTtRQUMxRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUM7U0FDYjtLQUNGO0lBQ0QsT0FBTyxhQUFhLENBQUMsT0FBTyxDQUFDO0FBQy9CLENBQUM7QUFQRCxvREFPQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQWZ0ZXIgdGhpcyBwb2ludCwgU1NNIG9ubHkgY3JlYXRlcyByZWdpb25hbCBwcmluY2lwYWxzXG4gKi9cbmV4cG9ydCBjb25zdCBSVUxFX1NTTV9QUklOQ0lQQUxTX0FSRV9SRUdJT05BTCA9IFN5bWJvbCgnU1NNX1BSSU5DSVBBTFNfQVJFX1JFR0lPTkFMJyk7XG5cbi8qKlxuICogQWZ0ZXIgdGhpcyBwb2ludCwgUzMgd2Vic2l0ZSBkb21haW5zIGxvb2sgbGlrZSBgczMtd2Vic2l0ZS5SRUdJT04uczMuYW1hem9uYXdzLmNvbWBcbiAqXG4gKiBCZWZvcmUgdGhpcyBwb2ludCwgUzMgd2Vic2l0ZSBkb21haW5zIGxvb2sgbGlrZSBgczMtd2Vic2l0ZS1SRUdJT04uczMuYW1hem9uYXdzLmNvbWAuXG4gKi9cbmV4cG9ydCBjb25zdCBSVUxFX1MzX1dFQlNJVEVfUkVHSU9OQUxfU1VCRE9NQUlOID0gU3ltYm9sKCdTM19XRUJTSVRFX1JFR0lPTkFMX1NVQkRPTUFJTicpO1xuXG4vKipcbiAqIExpc3Qgb2YgQVdTIHJlZ2lvbiwgb3JkZXJlZCBieSBsYXVuY2ggZGF0ZSAob2xkZXN0IHRvIG5ld2VzdClcbiAqXG4gKiBUaGUgc2lnbmlmaWNhbmNlIG9mIHRoaXMgaXMgdGhhdCBzdGFuZGFyZHMgYW5kIGNvbnZlbnRpb25zIGNoYW5nZSBvdmVyIHRpbWUuXG4gKiBHZW5lcmFsbHksIGFzIHJ1bGVzIGFyZSBjaGFuZ2VkIHRoZXkgb25seSBhcHBseSB0byBuZXcgcmVnaW9ucywgYW5kIG9sZFxuICogcmVnaW9ucyBhcmUgbGVmdCBhcy1pcy5cbiAqXG4gKiBXZSBtaXggdGhlIGxpc3Qgb2YgcmVnaW9ucyB3aXRoIGEgbGlzdCBvZiBydWxlcyB0aGF0IHdlcmUgaW50cm9kdWNlZCBvdmVyXG4gKiB0aW1lIChydWxlcyBhcmUgc3ltYm9scykuXG4gKlxuICogVGhlcmVmb3JlLCBpZiB3ZSB3YW50IHRvIGtub3cgaWYgYSBydWxlIGFwcGxpZXMgdG8gYSBjZXJ0YWluIHJlZ2lvbiwgd2VcbiAqIG9ubHkgbmVlZCB0byBjaGVjayBpdHMgcG9zaXRpb24gaW4gdGhlIGxpc3QgYW5kIGNvbXBhcmUgaXQgdG8gd2hlbiBhXG4gKiBydWxlIHdhcyBpbnRyb2R1Y2VkLlxuICovXG5leHBvcnQgY29uc3QgQVdTX1JFR0lPTlNfQU5EX1JVTEVTOiByZWFkb25seSAoc3RyaW5nIHwgc3ltYm9sKVtdID0gW1xuICAndXMtZWFzdC0xJywgLy8gVVMgRWFzdCAoTi4gVmlyZ2luaWEpXG4gICdldS13ZXN0LTEnLCAvLyBFdXJvcGUgKElyZWxhbmQpXG4gICd1cy13ZXN0LTEnLCAvLyBVUyBXZXN0IChOLiBDYWxpZm9ybmlhKVxuICAnYXAtc291dGhlYXN0LTEnLCAvLyBBc2lhIFBhY2lmaWMgKFNpbmdhcG9yZSlcbiAgJ2FwLW5vcnRoZWFzdC0xJywgLy8gQXNpYSBQYWNpZmljIChUb2t5bylcbiAgJ3VzLWdvdi13ZXN0LTEnLCAvLyBBV1MgR292Q2xvdWQgKFVTLVdlc3QpXG4gICd1cy13ZXN0LTInLCAvLyBVUyBXZXN0IChPcmVnb24pXG4gICdzYS1lYXN0LTEnLCAvLyBTb3V0aCBBbWVyaWNhIChTw6NvIFBhdWxvKVxuICAnYXAtc291dGhlYXN0LTInLCAvLyBBc2lhIFBhY2lmaWMgKFN5ZG5leSlcbiAgUlVMRV9TM19XRUJTSVRFX1JFR0lPTkFMX1NVQkRPTUFJTixcbiAgJ2NuLW5vcnRoLTEnLCAvLyBDaGluYSAoQmVpamluZylcbiAgJ3VzLWlzby1lYXN0LTEnLCAvLyBBV1MgSVNPXG4gICdldS1jZW50cmFsLTEnLCAvLyBFdXJvcGUgKEZyYW5rZnVydClcbiAgJ2FwLW5vcnRoZWFzdC0yJywgLy8gQXNpYSBQYWNpZmljIChTZW91bClcbiAgJ2FwLXNvdXRoLTEnLCAvLyBBc2lhIFBhY2lmaWMgKE11bWJhaSlcbiAgJ3VzLWVhc3QtMicsIC8vIFVTIEVhc3QgKE9oaW8pXG4gICdjYS1jZW50cmFsLTEnLCAvLyBDYW5hZGEgKENlbnRyYWwpXG4gICdldS13ZXN0LTInLCAvLyBFdXJvcGUgKExvbmRvbilcbiAgJ3VzLWlzb2ItZWFzdC0xJywgLy8gQVdTIElTTy1CXG4gICdjbi1ub3J0aHdlc3QtMScsIC8vIENoaW5hIChOaW5neGlhKVxuICAnZXUtd2VzdC0zJywgLy8gRXVyb3BlIChQYXJpcylcbiAgJ2FwLW5vcnRoZWFzdC0zJywgLy8gQXNpYSBQYWNpZmljIChPc2FrYSlcbiAgJ3VzLWdvdi1lYXN0LTEnLCAvLyBBV1MgR292Q2xvdWQgKFVTLUVhc3QpXG4gICdldS1ub3J0aC0xJywgLy8gRXVyb3BlIChTdG9ja2hvbG0pXG4gIFJVTEVfU1NNX1BSSU5DSVBBTFNfQVJFX1JFR0lPTkFMLFxuICAnYXAtZWFzdC0xJywgLy8gQXNpYSBQYWNpZmljIChIb25nIEtvbmcpXG4gICdtZS1zb3V0aC0xJywgLy8gTWlkZGxlIEVhc3QgKEJhaHJhaW4pXG4gICdldS1zb3V0aC0xJywgLy8gRXVyb3BlIChNaWxhbilcbiAgJ2FmLXNvdXRoLTEnLCAvLyBBZnJpY2EgKENhcGUgVG93bilcbiAgJ3VzLWlzby13ZXN0LTEnLCAvLyBVUyBJU08gV2VzdFxuICAnZXUtc291dGgtMicsIC8vIEV1cm9wZSAoU3BhaW4pXG4gICdhcC1zb3V0aGVhc3QtMycsIC8vIEFzaWEgUGFjaWZpYyAoSmFrYXJ0YSlcbl07XG5cbi8qKlxuICogVGhlIG5hbWVzIG9mIGFsbCAoa25vd24pIEFXUyByZWdpb25zXG4gKlxuICogTm90IGluIHRoZSBsaXN0ID09PiBubyBidWlsdC1pbiBkYXRhIGZvciB0aGF0IHJlZ2lvbi5cbiAqL1xuZXhwb3J0IGNvbnN0IEFXU19SRUdJT05TID0gQVdTX1JFR0lPTlNfQU5EX1JVTEVTXG4gIC5maWx0ZXIoKHgpID0+IHR5cGVvZiB4ID09PSAnc3RyaW5nJylcbiAgLnNvcnQoKSBhcyByZWFkb25seSBzdHJpbmdbXTtcblxuLyoqXG4gKiBQb3NzaWJseSBub24tZXhhdXN0aXZlIGxpc3Qgb2YgYWxsIHNlcnZpY2UgbmFtZXMsIHVzZWQgdG8gbG9jYXRlIHNlcnZpY2UgcHJpbmNpcGFscy5cbiAqXG4gKiBOb3QgaW4gdGhlIGxpc3QgPT0+IGRlZmF1bHQgc2VydmljZSBwcmluY2lwYWwgbWFwcGluZ3MuXG4gKi9cbmV4cG9ydCBjb25zdCBBV1NfU0VSVklDRVM6IHJlYWRvbmx5IHN0cmluZ1tdID0gW1xuICAnYXBwbGljYXRpb24tYXV0b3NjYWxpbmcnLFxuICAnYXV0b3NjYWxpbmcnLFxuICAnY29kZWRlcGxveScsXG4gICdlYzInLFxuICAnZXZlbnRzJyxcbiAgJ2xhbWJkYScsXG4gICdsb2dzJyxcbiAgJ3MzJyxcbiAgJ3NzbScsXG4gICdzbnMnLFxuICAnc3FzJyxcbiAgJ3N0YXRlcycsXG5dLnNvcnQoKTtcblxuLyoqXG4gKiBXaGV0aGVyIG9yIG5vdCBhIHJlZ2lvbiBwcmVkYXRlcyBhIGdpdmVuIHJ1bGUgKG9yIHJlZ2lvbikuXG4gKlxuICogVW5rbm93biByZWdpb24gPT4gd2UgaGF2ZSB0byBhc3N1bWUgbm8uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBiZWZvcmUocmVnaW9uOiBzdHJpbmcsIHJ1bGVPclJlZ2lvbjogc3RyaW5nIHwgc3ltYm9sKSB7XG4gIGNvbnN0IHJ1bGVJeCA9IEFXU19SRUdJT05TX0FORF9SVUxFUy5pbmRleE9mKHJ1bGVPclJlZ2lvbik7XG4gIGlmIChydWxlSXggPT09IC0xKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHJ1bGU6ICR7U3RyaW5nKHJ1bGVPclJlZ2lvbil9YCk7XG4gIH1cbiAgY29uc3QgcmVnaW9uSXggPSBBV1NfUkVHSU9OU19BTkRfUlVMRVMuaW5kZXhPZihyZWdpb24pO1xuICByZXR1cm4gcmVnaW9uSXggPT09IC0xID8gZmFsc2UgOiByZWdpb25JeCA8IHJ1bGVJeDtcbn1cblxuLyoqXG4gKiBSZXR1cm4gYWxsIHJlZ2lvbnMgYmVmb3JlIGEgZ2l2ZW4gcnVsZSB3YXMgaW50cm9kdWNlZCAob3IgcmVnaW9uKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaW9uc0JlZm9yZShydWxlT3JSZWdpb246IHN0cmluZyB8IHN5bWJvbCk6IHN0cmluZ1tdIHtcbiAgY29uc3QgcnVsZUl4ID0gQVdTX1JFR0lPTlNfQU5EX1JVTEVTLmluZGV4T2YocnVsZU9yUmVnaW9uKTtcbiAgaWYgKHJ1bGVJeCA9PT0gLTEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcnVsZTogJHtTdHJpbmcocnVsZU9yUmVnaW9uKX1gKTtcbiAgfVxuICByZXR1cm4gQVdTX1JFR0lPTlNfQU5EX1JVTEVTLnNsaWNlKDAsIHJ1bGVJeClcbiAgICAuZmlsdGVyKChlbnRyeSkgPT4gdHlwZW9mIGVudHJ5ID09PSAnc3RyaW5nJylcbiAgICAuc29ydCgpIGFzIHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlZ2lvbiB7IHJlYWRvbmx5IHBhcnRpdGlvbjogc3RyaW5nLCByZWFkb25seSBkb21haW5TdWZmaXg6IHN0cmluZyB9XG5cbmNvbnN0IFBBUlRJVElPTl9NQVA6IHtyZWFkb25seSBbcmVnaW9uOiBzdHJpbmddOiBSZWdpb24gfSA9IHtcbiAgJ2RlZmF1bHQnOiB7IHBhcnRpdGlvbjogJ2F3cycsIGRvbWFpblN1ZmZpeDogJ2FtYXpvbmF3cy5jb20nIH0sXG4gICdjbi0nOiB7IHBhcnRpdGlvbjogJ2F3cy1jbicsIGRvbWFpblN1ZmZpeDogJ2FtYXpvbmF3cy5jb20uY24nIH0sXG4gICd1cy1nb3YtJzogeyBwYXJ0aXRpb246ICdhd3MtdXMtZ292JywgZG9tYWluU3VmZml4OiAnYW1hem9uYXdzLmNvbScgfSxcbiAgJ3VzLWlzby0nOiB7IHBhcnRpdGlvbjogJ2F3cy1pc28nLCBkb21haW5TdWZmaXg6ICdjMnMuaWMuZ292JyB9LFxuICAndXMtaXNvYi0nOiB7IHBhcnRpdGlvbjogJ2F3cy1pc28tYicsIGRvbWFpblN1ZmZpeDogJ3NjMnMuc2dvdi5nb3YnIH0sXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gcGFydGl0aW9uSW5mb3JtYXRpb24ocmVnaW9uOiBzdHJpbmcpOiBSZWdpb24ge1xuICBmb3IgKGNvbnN0IFtwcmVmaXgsIGluZm9dIG9mIE9iamVjdC5lbnRyaWVzKFBBUlRJVElPTl9NQVApKSB7XG4gICAgaWYgKHJlZ2lvbi5zdGFydHNXaXRoKHByZWZpeCkpIHtcbiAgICAgIHJldHVybiBpbmZvO1xuICAgIH1cbiAgfVxuICByZXR1cm4gUEFSVElUSU9OX01BUC5kZWZhdWx0O1xufVxuIl19
|