@fjall/components-infrastructure 0.48.0 → 0.49.1
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.
|
@@ -27,6 +27,10 @@ class StandardTagsAspect {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
processCfnResource(resource) {
|
|
30
|
+
// Skip SecretRotation resources as they create nested stacks with different tag requirements
|
|
31
|
+
if (resource.node.path.includes('SecretRotation')) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
30
34
|
// Comprehensive list of CloudFormation resource types that don't support tags
|
|
31
35
|
// This list is based on AWS CloudFormation documentation and known limitations
|
|
32
36
|
const unsupportedTypes = [
|
|
@@ -416,7 +420,15 @@ class StandardTagsAspect {
|
|
|
416
420
|
'AWS::WAFv2::RegexPatternSet',
|
|
417
421
|
'AWS::WAFv2::RuleGroup',
|
|
418
422
|
'AWS::WAFv2::WebACL',
|
|
419
|
-
'AWS::WAFv2::WebACLAssociation'
|
|
423
|
+
'AWS::WAFv2::WebACLAssociation',
|
|
424
|
+
// Serverless
|
|
425
|
+
'AWS::Serverless::Api',
|
|
426
|
+
'AWS::Serverless::Application',
|
|
427
|
+
'AWS::Serverless::Function',
|
|
428
|
+
'AWS::Serverless::HttpApi',
|
|
429
|
+
'AWS::Serverless::LayerVersion',
|
|
430
|
+
'AWS::Serverless::SimpleTable',
|
|
431
|
+
'AWS::Serverless::StateMachine'
|
|
420
432
|
];
|
|
421
433
|
if (unsupportedTypes.includes(resource.cfnResourceType)) {
|
|
422
434
|
return;
|
|
@@ -466,4 +478,4 @@ class StandardTagsAspect {
|
|
|
466
478
|
}
|
|
467
479
|
}
|
|
468
480
|
exports.StandardTagsAspect = StandardTagsAspect;
|
|
469
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmRUYWdzQXNwZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL3N0YW5kYXJkVGFnc0FzcGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBMEQ7QUFHMUQ7Ozs7Ozs7R0FPRztBQUNILE1BQWEsa0JBQWtCO0lBSTdCLFlBQVksWUFBdUM7UUFGbEMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBRzNELElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ25DLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBZ0I7UUFDcEIsNEJBQTRCO1FBQzVCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUVELGtDQUFrQztRQUNsQyxJQUFJLHlCQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQW1CLENBQUMsQ0FBQztZQUM3QyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQixDQUFDLFFBQXFCO1FBQzlDLDhFQUE4RTtRQUM5RSwrRUFBK0U7UUFDL0UsTUFBTSxnQkFBZ0IsR0FBRztZQUN2QixNQUFNO1lBQ04sa0NBQWtDO1lBRWxDLGNBQWM7WUFDZCwwQkFBMEI7WUFDMUIsa0NBQWtDO1lBQ2xDLDZCQUE2QjtZQUM3QixvQ0FBb0M7WUFDcEMsdUNBQXVDO1lBQ3ZDLGtDQUFrQztZQUNsQyx5QkFBeUI7WUFDekIsd0JBQXdCO1lBQ3hCLG1DQUFtQztZQUNuQywyQkFBMkI7WUFDM0IsK0JBQStCO1lBQy9CLCtCQUErQjtZQUMvQiwrQkFBK0I7WUFDL0IsZ0NBQWdDO1lBQ2hDLHdDQUF3QztZQUN4QywwQkFBMEI7WUFD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QyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBRUgsbUNBQW1DO1FBQ25DLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6RCxHQUFHLEVBQUUsR0FBRztZQUNSLEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0NBQ0Y7QUFuZ0JELGdEQW1nQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXNwZWN0LCBDZm5SZXNvdXJjZSwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IElDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIEFzcGVjdCB0byBlbmZvcmNlIGEgc3RhbmRhcmQgc2V0IG9mIHRhZ3Mgb24gZXZlcnkgdGFnLWNhcGFibGUgcmVzb3VyY2UgaW4gYSBjb25zdHJ1Y3QgdHJlZS5cbiAqIFxuICogVXBkYXRlZCBmb3IgQ0RLIHYyLjIwNi4wKyBjb21wYXRpYmlsaXR5OlxuICogLSBBdm9pZHMgdXNpbmcgYW55IHRhZ2dpbmcgQVBJcyBkdXJpbmcgYXNwZWN0IHZpc2l0YXRpb24gdG8gcHJldmVudCBpbmZpbml0ZSBsb29wc1xuICogLSBVc2VzIGEgc3ludGhlc2lzLXRpbWUgYXBwcm9hY2ggdG8gbW9kaWZ5IENsb3VkRm9ybWF0aW9uIHRlbXBsYXRlc1xuICogLSBNYWludGFpbnMgdGhlIHNhbWUgY2xlYW4gQVBJIGFuZCBhdXRvbWF0aWMgdGFnZ2luZyBiZW5lZml0c1xuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRUYWdzQXNwZWN0IGltcGxlbWVudHMgSUFzcGVjdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVxdWlyZWRUYWdzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICBwcml2YXRlIHJlYWRvbmx5IHRhZ2dlZFJlc291cmNlcyA9IG5ldyBXZWFrU2V0PElDb25zdHJ1Y3Q+KCk7XG5cbiAgY29uc3RydWN0b3IocmVxdWlyZWRUYWdzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KSB7XG4gICAgdGhpcy5yZXF1aXJlZFRhZ3MgPSByZXF1aXJlZFRhZ3M7XG4gIH1cblxuICB2aXNpdChub2RlOiBJQ29uc3RydWN0KTogdm9pZCB7XG4gICAgLy8gU2tpcCBpZiBhbHJlYWR5IHByb2Nlc3NlZFxuICAgIGlmICh0aGlzLnRhZ2dlZFJlc291cmNlcy5oYXMobm9kZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgXG4gICAgLy8gUHJvY2VzcyBMMSAoQ0ZOKSByZXNvdXJjZXMgb25seVxuICAgIGlmIChDZm5SZXNvdXJjZS5pc0NmblJlc291cmNlKG5vZGUpKSB7XG4gICAgICB0aGlzLnByb2Nlc3NDZm5SZXNvdXJjZShub2RlIGFzIENmblJlc291cmNlKTtcbiAgICAgIHRoaXMudGFnZ2VkUmVzb3VyY2VzLmFkZChub2RlKTtcbiAgICB9XG4gIH1cbiAgXG4gIHByaXZhdGUgcHJvY2Vzc0NmblJlc291cmNlKHJlc291cmNlOiBDZm5SZXNvdXJjZSk6IHZvaWQge1xuICAgIC8vIENvbXByZWhlbnNpdmUgbGlzdCBvZiBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlcyB0aGF0IGRvbid0IHN1cHBvcnQgdGFnc1xuICAgIC8vIFRoaXMgbGlzdCBpcyBiYXNlZCBvbiBBV1MgQ2xvdWRGb3JtYXRpb24gZG9jdW1lbnRhdGlvbiBhbmQga25vd24gbGltaXRhdGlvbnNcbiAgICBjb25zdCB1bnN1cHBvcnRlZFR5cGVzID0gW1xuICAgICAgLy8gQUNNXG4gICAgICAnQVdTOjpDZXJ0aWZpY2F0ZU1hbmFnZXI6OkFjY291bnQnLFxuICAgICAgXG4gICAgICAvLyBBUEkgR2F0ZXdheVxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheTo6QWNjb3VudCcsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpCYXNlUGF0aE1hcHBpbmcnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheTo6RGVwbG95bWVudCcsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpEb2N1bWVudGF0aW9uUGFydCcsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpEb2N1bWVudGF0aW9uVmVyc2lvbicsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpHYXRld2F5UmVzcG9uc2UnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheTo6TWV0aG9kJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXk6Ok1vZGVsJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXk6OlJlcXVlc3RWYWxpZGF0b3InLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheTo6UmVzb3VyY2UnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheVYyOjpBcGlNYXBwaW5nJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXlWMjo6QXV0aG9yaXplcicsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5VjI6OkRlcGxveW1lbnQnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheVYyOjpJbnRlZ3JhdGlvbicsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5VjI6OkludGVncmF0aW9uUmVzcG9uc2UnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheVYyOjpNb2RlbCcsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5VjI6OlJvdXRlJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXlWMjo6Um91dGVSZXNwb25zZScsXG4gICAgICBcbiAgICAgIC8vIEFwcFN5bmNcbiAgICAgICdBV1M6OkFwcFN5bmM6OkRhdGFTb3VyY2UnLFxuICAgICAgJ0FXUzo6QXBwU3luYzo6RnVuY3Rpb25Db25maWd1cmF0aW9uJyxcbiAgICAgICdBV1M6OkFwcFN5bmM6OlJlc29sdmVyJyxcbiAgICAgIFxuICAgICAgLy8gQXRoZW5hXG4gICAgICAnQVdTOjpBdGhlbmE6OlByZXBhcmVkU3RhdGVtZW50JyxcbiAgICAgIFxuICAgICAgLy8gQ2xvdWRGb3JtYXRpb25cbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpDdXN0b21SZXNvdXJjZScsXG4gICAgICAnQVdTOjpDbG91ZEZvcm1hdGlvbjo6TWFjcm8nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246Ok1vZHVsZURlZmF1bHRWZXJzaW9uJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpNb2R1bGVWZXJzaW9uJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpQdWJsaWNUeXBlVmVyc2lvbicsXG4gICAgICAnQVdTOjpDbG91ZEZvcm1hdGlvbjo6UHVibGlzaGVyJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpSZXNvdXJjZURlZmF1bHRWZXJzaW9uJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpSZXNvdXJjZVZlcnNpb24nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OlR5cGVBY3RpdmF0aW9uJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpXYWl0Q29uZGl0aW9uJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpXYWl0Q29uZGl0aW9uSGFuZGxlJyxcbiAgICAgIFxuICAgICAgLy8gQ2xvdWRXYXRjaFxuICAgICAgJ0FXUzo6Q2xvdWRXYXRjaDo6QWxhcm0nLFxuICAgICAgJ0FXUzo6Q2xvdWRXYXRjaDo6QW5vbWFseURldGVjdG9yJyxcbiAgICAgICdBV1M6OkNsb3VkV2F0Y2g6OkNvbXBvc2l0ZUFsYXJtJyxcbiAgICAgICdBV1M6OkNsb3VkV2F0Y2g6OkRhc2hib2FyZCcsXG4gICAgICAnQVdTOjpDbG91ZFdhdGNoOjpJbnNpZ2h0UnVsZScsXG4gICAgICAnQVdTOjpDbG91ZFdhdGNoOjpNZXRyaWNTdHJlYW0nLFxuICAgICAgXG4gICAgICAvLyBDb2RlQnVpbGRcbiAgICAgICdBV1M6OkNvZGVCdWlsZDo6UmVwb3J0R3JvdXAnLFxuICAgICAgJ0FXUzo6Q29kZUJ1aWxkOjpTb3VyY2VDcmVkZW50aWFsJyxcbiAgICAgIFxuICAgICAgLy8gQ29kZURlcGxveVxuICAgICAgJ0FXUzo6Q29kZURlcGxveTo6RGVwbG95bWVudENvbmZpZycsXG4gICAgICBcbiAgICAgIC8vIENvZGVQaXBlbGluZVxuICAgICAgJ0FXUzo6Q29kZVBpcGVsaW5lOjpDdXN0b21BY3Rpb25UeXBlJyxcbiAgICAgICdBV1M6OkNvZGVQaXBlbGluZTo6V2ViaG9vaycsXG4gICAgICBcbiAgICAgIC8vIENvZ25pdG9cbiAgICAgICdBV1M6OkNvZ25pdG86OklkZW50aXR5UG9vbFJvbGVBdHRhY2htZW50JyxcbiAgICAgICdBV1M6OkNvZ25pdG86OlVzZXJQb29sQ2xpZW50JyxcbiAgICAgICdBV1M6OkNvZ25pdG86OlVzZXJQb29sRG9tYWluJyxcbiAgICAgICdBV1M6OkNvZ25pdG86OlVzZXJQb29sR3JvdXAnLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xJZGVudGl0eVByb3ZpZGVyJyxcbiAgICAgICdBV1M6OkNvZ25pdG86OlVzZXJQb29sUmVzb3VyY2VTZXJ2ZXInLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xSaXNrQ29uZmlndXJhdGlvbkF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xVSUN1c3RvbWl6YXRpb25BdHRhY2htZW50JyxcbiAgICAgICdBV1M6OkNvZ25pdG86OlVzZXJQb29sVXNlcicsXG4gICAgICAnQVdTOjpDb2duaXRvOjpVc2VyUG9vbFVzZXJUb0dyb3VwQXR0YWNobWVudCcsXG4gICAgICBcbiAgICAgIC8vIENvbmZpZ1xuICAgICAgJ0FXUzo6Q29uZmlnOjpBZ2dyZWdhdGlvbkF1dGhvcml6YXRpb24nLFxuICAgICAgJ0FXUzo6Q29uZmlnOjpDb25maWd1cmF0aW9uQWdncmVnYXRvcicsXG4gICAgICAnQVdTOjpDb25maWc6OkNvbmZvcm1hbmNlUGFjaycsXG4gICAgICAnQVdTOjpDb25maWc6Ok9yZ2FuaXphdGlvbkNvbmZvcm1hbmNlUGFjaycsXG4gICAgICAnQVdTOjpDb25maWc6OlJlbWVkaWF0aW9uQ29uZmlndXJhdGlvbicsXG4gICAgICAnQVdTOjpDb25maWc6OlN0b3JlZFF1ZXJ5JyxcbiAgICAgIFxuICAgICAgLy8gRHluYW1vREJcbiAgICAgICdBV1M6OkR5bmFtb0RCOjpHbG9iYWxUYWJsZScsXG4gICAgICBcbiAgICAgIC8vIEVDMlxuICAgICAgJ0FXUzo6RUMyOjpDYXBhY2l0eVJlc2VydmF0aW9uRmxlZXQnLFxuICAgICAgJ0FXUzo6RUMyOjpDYXJyaWVyR2F0ZXdheScsXG4gICAgICAnQVdTOjpFQzI6OkRIQ1BPcHRpb25zJyxcbiAgICAgICdBV1M6OkVDMjo6RUMyRmxlZXQnLFxuICAgICAgJ0FXUzo6RUMyOjpFZ3Jlc3NPbmx5SW50ZXJuZXRHYXRld2F5JyxcbiAgICAgICdBV1M6OkVDMjo6RUlQQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpFbmNsYXZlQ2VydGlmaWNhdGVJYW1Sb2xlQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpGbG93TG9nJyxcbiAgICAgICdBV1M6OkVDMjo6R2F0ZXdheVJvdXRlVGFibGVBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6Okluc3RhbmNlQ29ubmVjdEVuZHBvaW50JyxcbiAgICAgICdBV1M6OkVDMjo6S2V5UGFpcicsXG4gICAgICAnQVdTOjpFQzI6OkxhdW5jaFRlbXBsYXRlJyxcbiAgICAgICdBV1M6OkVDMjo6TmV0d29ya0luc2lnaHRzQWNjZXNzU2NvcGUnLFxuICAgICAgJ0FXUzo6RUMyOjpOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZUFuYWx5c2lzJyxcbiAgICAgICdBV1M6OkVDMjo6TmV0d29ya0luc2lnaHRzQW5hbHlzaXMnLFxuICAgICAgJ0FXUzo6RUMyOjpOZXR3b3JrSW5zaWdodHNQYXRoJyxcbiAgICAgICdBV1M6OkVDMjo6TmV0d29ya0ludGVyZmFjZUF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6RUMyOjpOZXR3b3JrSW50ZXJmYWNlUGVybWlzc2lvbicsXG4gICAgICAnQVdTOjpFQzI6OlBsYWNlbWVudEdyb3VwJyxcbiAgICAgICdBV1M6OkVDMjo6Um91dGUnLFxuICAgICAgJ0FXUzo6RUMyOjpTZWN1cml0eUdyb3VwRWdyZXNzJyxcbiAgICAgICdBV1M6OkVDMjo6U2VjdXJpdHlHcm91cEluZ3Jlc3MnLFxuICAgICAgJ0FXUzo6RUMyOjpTdWJuZXRDaWRyQmxvY2snLFxuICAgICAgJ0FXUzo6RUMyOjpTdWJuZXROZXR3b3JrQWNsQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpTdWJuZXRSb3V0ZVRhYmxlQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheUF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheUNvbm5lY3QnLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheU11bHRpY2FzdERvbWFpbicsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwTWVtYmVyJyxcbiAgICAgICdBV1M6OkVDMjo6VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3RHcm91cFNvdXJjZScsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5UGVlcmluZ0F0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheVJvdXRlJyxcbiAgICAgICdBV1M6OkVDMjo6VHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlJyxcbiAgICAgICdBV1M6OkVDMjo6VHJhbnNpdEdhdGV3YXlSb3V0ZVRhYmxlQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVQcm9wYWdhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5VnBjQXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpFQzI6OlZlcmlmaWVkQWNjZXNzRW5kcG9pbnQnLFxuICAgICAgJ0FXUzo6RUMyOjpWZXJpZmllZEFjY2Vzc0dyb3VwJyxcbiAgICAgICdBV1M6OkVDMjo6VmVyaWZpZWRBY2Nlc3NJbnN0YW5jZScsXG4gICAgICAnQVdTOjpFQzI6OlZlcmlmaWVkQWNjZXNzVHJ1c3RQcm92aWRlcicsXG4gICAgICAnQVdTOjpFQzI6OlZvbHVtZUF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6RUMyOjpWUENDaWRyQmxvY2snLFxuICAgICAgJ0FXUzo6RUMyOjpWUENESENQT3B0aW9uc0Fzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OkVDMjo6VlBDRW5kcG9pbnRDb25uZWN0aW9uTm90aWZpY2F0aW9uJyxcbiAgICAgICdBV1M6OkVDMjo6VlBDRW5kcG9pbnRTZXJ2aWNlJyxcbiAgICAgICdBV1M6OkVDMjo6VlBDRW5kcG9pbnRTZXJ2aWNlUGVybWlzc2lvbnMnLFxuICAgICAgJ0FXUzo6RUMyOjpWUENHYXRld2F5QXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpFQzI6OlZQTkNvbm5lY3Rpb25Sb3V0ZScsXG4gICAgICAnQVdTOjpFQzI6OlZQTkdhdGV3YXlSb3V0ZVByb3BhZ2F0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gRUNSXG4gICAgICAnQVdTOjpFQ1I6OlB1YmxpY1JlcG9zaXRvcnknLFxuICAgICAgJ0FXUzo6RUNSOjpQdWxsVGhyb3VnaENhY2hlUnVsZScsXG4gICAgICAnQVdTOjpFQ1I6OlJlZ2lzdHJ5UG9saWN5JyxcbiAgICAgICdBV1M6OkVDUjo6UmVwbGljYXRpb25Db25maWd1cmF0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gRUNTXG4gICAgICAnQVdTOjpFQ1M6OkFjY291bnRTZXR0aW5nJyxcbiAgICAgICdBV1M6OkVDUzo6Q2FwYWNpdHlQcm92aWRlcicsXG4gICAgICAnQVdTOjpFQ1M6OkNsdXN0ZXJDYXBhY2l0eVByb3ZpZGVyQXNzb2NpYXRpb25zJyxcbiAgICAgICdBV1M6OkVDUzo6UHJpbWFyeVRhc2tTZXQnLFxuICAgICAgJ0FXUzo6RUNTOjpUYXNrU2V0JyxcbiAgICAgIFxuICAgICAgLy8gRUZTXG4gICAgICAnQVdTOjpFRlM6OkFjY2Vzc1BvaW50JyxcbiAgICAgICdBV1M6OkVGUzo6TW91bnRUYXJnZXQnLFxuICAgICAgXG4gICAgICAvLyBFS1NcbiAgICAgICdBV1M6OkVLUzo6QWRkb24nLFxuICAgICAgJ0FXUzo6RUtTOjpGYXJnYXRlUHJvZmlsZScsXG4gICAgICAnQVdTOjpFS1M6OklkZW50aXR5UHJvdmlkZXJDb25maWcnLFxuICAgICAgXG4gICAgICAvLyBFbGFzdGlDYWNoZVxuICAgICAgJ0FXUzo6RWxhc3RpQ2FjaGU6OlBhcmFtZXRlckdyb3VwJyxcbiAgICAgICdBV1M6OkVsYXN0aUNhY2hlOjpTZWN1cml0eUdyb3VwJyxcbiAgICAgICdBV1M6OkVsYXN0aUNhY2hlOjpTZWN1cml0eUdyb3VwSW5ncmVzcycsXG4gICAgICAnQVdTOjpFbGFzdGlDYWNoZTo6U3VibmV0R3JvdXAnLFxuICAgICAgXG4gICAgICAvLyBFbGFzdGljQmVhbnN0YWxrXG4gICAgICAnQVdTOjpFbGFzdGljQmVhbnN0YWxrOjpBcHBsaWNhdGlvblZlcnNpb24nLFxuICAgICAgJ0FXUzo6RWxhc3RpY0JlYW5zdGFsazo6Q29uZmlndXJhdGlvblRlbXBsYXRlJyxcbiAgICAgIFxuICAgICAgLy8gRWxhc3RpY0xvYWRCYWxhbmNpbmdWMlxuICAgICAgJ0FXUzo6RWxhc3RpY0xvYWRCYWxhbmNpbmdWMjo6TGlzdGVuZXInLFxuICAgICAgJ0FXUzo6RWxhc3RpY0xvYWRCYWxhbmNpbmdWMjo6TGlzdGVuZXJDZXJ0aWZpY2F0ZScsXG4gICAgICAnQVdTOjpFbGFzdGljTG9hZEJhbGFuY2luZ1YyOjpMaXN0ZW5lclJ1bGUnLFxuICAgICAgJ0FXUzo6RWxhc3RpY0xvYWRCYWxhbmNpbmdWMjo6VGFyZ2V0R3JvdXBBdHRhY2htZW50JyxcbiAgICAgIFxuICAgICAgLy8gRXZlbnRCcmlkZ2UgKEV2ZW50cylcbiAgICAgICdBV1M6OkV2ZW50czo6QXBpRGVzdGluYXRpb24nLFxuICAgICAgJ0FXUzo6RXZlbnRzOjpBcmNoaXZlJyxcbiAgICAgICdBV1M6OkV2ZW50czo6Q29ubmVjdGlvbicsXG4gICAgICAnQVdTOjpFdmVudHM6OkVuZHBvaW50JyxcbiAgICAgICdBV1M6OkV2ZW50czo6RXZlbnRCdXNQb2xpY3knLFxuICAgICAgJ0FXUzo6RXZlbnRzOjpSdWxlJyxcbiAgICAgIFxuICAgICAgLy8gRlN4XG4gICAgICAnQVdTOjpGU3g6OkRhdGFSZXBvc2l0b3J5QXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RlN4OjpTbmFwc2hvdCcsXG4gICAgICAnQVdTOjpGU3g6OlN0b3JhZ2VWaXJ0dWFsTWFjaGluZScsXG4gICAgICAnQVdTOjpGU3g6OlZvbHVtZScsXG4gICAgICBcbiAgICAgIC8vIEdhbWVMaWZ0XG4gICAgICAnQVdTOjpHYW1lTGlmdDo6R2FtZVNlcnZlckdyb3VwJyxcbiAgICAgICdBV1M6OkdhbWVMaWZ0OjpMb2NhdGlvbicsXG4gICAgICBcbiAgICAgIC8vIEdsdWVcbiAgICAgICdBV1M6OkdsdWU6OkNvbm5lY3Rpb24nLFxuICAgICAgJ0FXUzo6R2x1ZTo6RGF0YWJhc2UnLFxuICAgICAgJ0FXUzo6R2x1ZTo6RGF0YUNhdGFsb2dFbmNyeXB0aW9uU2V0dGluZ3MnLFxuICAgICAgJ0FXUzo6R2x1ZTo6UGFydGl0aW9uJyxcbiAgICAgICdBV1M6OkdsdWU6OlNjaGVtYVZlcnNpb24nLFxuICAgICAgJ0FXUzo6R2x1ZTo6U2NoZW1hVmVyc2lvbk1ldGFkYXRhJyxcbiAgICAgICdBV1M6OkdsdWU6OlNlY3VyaXR5Q29uZmlndXJhdGlvbicsXG4gICAgICAnQVdTOjpHbHVlOjpUYWJsZScsXG4gICAgICAnQVdTOjpHbHVlOjpVc2VyRGVmaW5lZEZ1bmN0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gR3VhcmREdXR5XG4gICAgICAnQVdTOjpHdWFyZER1dHk6OkRldGVjdG9yJyxcbiAgICAgICdBV1M6Okd1YXJkRHV0eTo6RmlsdGVyJyxcbiAgICAgICdBV1M6Okd1YXJkRHV0eTo6SVBTZXQnLFxuICAgICAgJ0FXUzo6R3VhcmREdXR5OjpNYXN0ZXInLFxuICAgICAgJ0FXUzo6R3VhcmREdXR5OjpNZW1iZXInLFxuICAgICAgJ0FXUzo6R3VhcmREdXR5OjpUaHJlYXRJbnRlbFNldCcsXG4gICAgICBcbiAgICAgIC8vIElBTVxuICAgICAgJ0FXUzo6SUFNOjpBY2Nlc3NLZXknLFxuICAgICAgJ0FXUzo6SUFNOjpHcm91cCcsXG4gICAgICAnQVdTOjpJQU06Okdyb3VwUG9saWN5JyxcbiAgICAgICdBV1M6OklBTTo6SW5zdGFuY2VQcm9maWxlJyxcbiAgICAgICdBV1M6OklBTTo6TWFuYWdlZFBvbGljeScsXG4gICAgICAnQVdTOjpJQU06Ok9JRENQcm92aWRlcicsXG4gICAgICAnQVdTOjpJQU06OlBvbGljeScsXG4gICAgICAnQVdTOjpJQU06OlJvbGUnLFxuICAgICAgJ0FXUzo6SUFNOjpSb2xlUG9saWN5JyxcbiAgICAgICdBV1M6OklBTTo6U0FNTFByb3ZpZGVyJyxcbiAgICAgICdBV1M6OklBTTo6U2VydmVyQ2VydGlmaWNhdGUnLFxuICAgICAgJ0FXUzo6SUFNOjpTZXJ2aWNlTGlua2VkUm9sZScsXG4gICAgICAnQVdTOjpJQU06OlVzZXInLFxuICAgICAgJ0FXUzo6SUFNOjpVc2VyUG9saWN5JyxcbiAgICAgICdBV1M6OklBTTo6VXNlclRvR3JvdXBBZGRpdGlvbicsXG4gICAgICAnQVdTOjpJQU06OlZpcnR1YWxNRkFEZXZpY2UnLFxuICAgICAgXG4gICAgICAvLyBJb1RcbiAgICAgICdBV1M6OklvVDo6QWNjb3VudEF1ZGl0Q29uZmlndXJhdGlvbicsXG4gICAgICAnQVdTOjpJb1Q6OkF1dGhvcml6ZXInLFxuICAgICAgJ0FXUzo6SW9UOjpDZXJ0aWZpY2F0ZScsXG4gICAgICAnQVdTOjpJb1Q6OkN1c3RvbU1ldHJpYycsXG4gICAgICAnQVdTOjpJb1Q6OkRpbWVuc2lvbicsXG4gICAgICAnQVdTOjpJb1Q6OkRvbWFpbkNvbmZpZ3VyYXRpb24nLFxuICAgICAgJ0FXUzo6SW9UOjpGbGVldE1ldHJpYycsXG4gICAgICAnQVdTOjpJb1Q6OkpvYlRlbXBsYXRlJyxcbiAgICAgICdBV1M6OklvVDo6TG9nZ2luZycsXG4gICAgICAnQVdTOjpJb1Q6Ok1pdGlnYXRpb25BY3Rpb24nLFxuICAgICAgJ0FXUzo6SW9UOjpQb2xpY3knLFxuICAgICAgJ0FXUzo6SW9UOjpQb2xpY3lQcmluY2lwYWxBdHRhY2htZW50JyxcbiAgICAgICdBV1M6OklvVDo6UHJvdmlzaW9uaW5nVGVtcGxhdGUnLFxuICAgICAgJ0FXUzo6SW9UOjpSZXNvdXJjZVNwZWNpZmljTG9nZ2luZycsXG4gICAgICAnQVdTOjpJb1Q6OlJvbGVBbGlhcycsXG4gICAgICAnQVdTOjpJb1Q6OlNjaGVkdWxlZEF1ZGl0JyxcbiAgICAgICdBV1M6OklvVDo6U2VjdXJpdHlQcm9maWxlJyxcbiAgICAgICdBV1M6OklvVDo6VGhpbmcnLFxuICAgICAgJ0FXUzo6SW9UOjpUaGluZ0dyb3VwJyxcbiAgICAgICdBV1M6OklvVDo6VGhpbmdQcmluY2lwYWxBdHRhY2htZW50JyxcbiAgICAgICdBV1M6OklvVDo6VGhpbmdUeXBlJyxcbiAgICAgICdBV1M6OklvVDo6VG9waWNSdWxlJyxcbiAgICAgICdBV1M6OklvVDo6VG9waWNSdWxlRGVzdGluYXRpb24nLFxuICAgICAgXG4gICAgICAvLyBLTVNcbiAgICAgICdBV1M6OktNUzo6QWxpYXMnLFxuICAgICAgJ0FXUzo6S01TOjpHcmFudCcsXG4gICAgICAnQVdTOjpLTVM6OlJlcGxpY2FLZXknLFxuICAgICAgXG4gICAgICAvLyBMYW1iZGFcbiAgICAgICdBV1M6OkxhbWJkYTo6Q29kZVNpZ25pbmdDb25maWcnLFxuICAgICAgJ0FXUzo6TGFtYmRhOjpFdmVudEludm9rZUNvbmZpZycsXG4gICAgICAnQVdTOjpMYW1iZGE6OkV2ZW50U291cmNlTWFwcGluZycsXG4gICAgICAnQVdTOjpMYW1iZGE6OkxheWVyVmVyc2lvbicsXG4gICAgICAnQVdTOjpMYW1iZGE6OkxheWVyVmVyc2lvblBlcm1pc3Npb24nLFxuICAgICAgJ0FXUzo6TGFtYmRhOjpQZXJtaXNzaW9uJyxcbiAgICAgICdBV1M6OkxhbWJkYTo6UHJvdmlzaW9uZWRDb25jdXJyZW5jeUNvbmZpZycsXG4gICAgICAnQVdTOjpMYW1iZGE6OlVybCcsXG4gICAgICAnQVdTOjpMYW1iZGE6OlZlcnNpb24nLFxuICAgICAgXG4gICAgICAvLyBMb2dzXG4gICAgICAnQVdTOjpMb2dzOjpBY2NvdW50UG9saWN5JyxcbiAgICAgICdBV1M6OkxvZ3M6OkRlc3RpbmF0aW9uJyxcbiAgICAgICdBV1M6OkxvZ3M6OkxvZ0dyb3VwJyxcbiAgICAgICdBV1M6OkxvZ3M6OkxvZ1N0cmVhbScsXG4gICAgICAnQVdTOjpMb2dzOjpNZXRyaWNGaWx0ZXInLFxuICAgICAgJ0FXUzo6TG9nczo6UXVlcnlEZWZpbml0aW9uJyxcbiAgICAgICdBV1M6OkxvZ3M6OlJlc291cmNlUG9saWN5JyxcbiAgICAgICdBV1M6OkxvZ3M6OlN1YnNjcmlwdGlvbkZpbHRlcicsXG4gICAgICBcbiAgICAgIC8vIE1hY2llXG4gICAgICAnQVdTOjpNYWNpZTo6QWxsb3dMaXN0JyxcbiAgICAgICdBV1M6Ok1hY2llOjpDdXN0b21EYXRhSWRlbnRpZmllcicsXG4gICAgICAnQVdTOjpNYWNpZTo6RmluZGluZ3NGaWx0ZXInLFxuICAgICAgJ0FXUzo6TWFjaWU6OlNlc3Npb24nLFxuICAgICAgXG4gICAgICAvLyBOZXB0dW5lXG4gICAgICAnQVdTOjpOZXB0dW5lOjpEQkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCcsXG4gICAgICAnQVdTOjpOZXB0dW5lOjpEQlBhcmFtZXRlckdyb3VwJyxcbiAgICAgICdBV1M6Ok5lcHR1bmU6OkRCU3VibmV0R3JvdXAnLFxuICAgICAgXG4gICAgICAvLyBPcmdhbml6YXRpb25zXG4gICAgICAnQVdTOjpPcmdhbml6YXRpb25zOjpBY2NvdW50JyxcbiAgICAgICdBV1M6Ok9yZ2FuaXphdGlvbnM6Ok9yZ2FuaXphdGlvbicsXG4gICAgICAnQVdTOjpPcmdhbml6YXRpb25zOjpPcmdhbml6YXRpb25hbFVuaXQnLFxuICAgICAgJ0FXUzo6T3JnYW5pemF0aW9uczo6UG9saWN5JyxcbiAgICAgICdBV1M6Ok9yZ2FuaXphdGlvbnM6OlJlc291cmNlUG9saWN5JyxcbiAgICAgIFxuICAgICAgLy8gUkRTXG4gICAgICAnQVdTOjpSRFM6OkRCQ2x1c3RlclBhcmFtZXRlckdyb3VwJyxcbiAgICAgICdBV1M6OlJEUzo6REJQYXJhbWV0ZXJHcm91cCcsXG4gICAgICAnQVdTOjpSRFM6OkRCU2VjdXJpdHlHcm91cCcsXG4gICAgICAnQVdTOjpSRFM6OkRCU2VjdXJpdHlHcm91cEluZ3Jlc3MnLFxuICAgICAgJ0FXUzo6UkRTOjpEQlN1Ym5ldEdyb3VwJyxcbiAgICAgICdBV1M6OlJEUzo6RXZlbnRTdWJzY3JpcHRpb24nLFxuICAgICAgJ0FXUzo6UkRTOjpHbG9iYWxDbHVzdGVyJyxcbiAgICAgICdBV1M6OlJEUzo6T3B0aW9uR3JvdXAnLFxuICAgICAgXG4gICAgICAvLyBSZWRzaGlmdFxuICAgICAgJ0FXUzo6UmVkc2hpZnQ6OkNsdXN0ZXJQYXJhbWV0ZXJHcm91cCcsXG4gICAgICAnQVdTOjpSZWRzaGlmdDo6Q2x1c3RlclNlY3VyaXR5R3JvdXAnLFxuICAgICAgJ0FXUzo6UmVkc2hpZnQ6OkNsdXN0ZXJTZWN1cml0eUdyb3VwSW5ncmVzcycsXG4gICAgICAnQVdTOjpSZWRzaGlmdDo6Q2x1c3RlclN1Ym5ldEdyb3VwJyxcbiAgICAgICdBV1M6OlJlZHNoaWZ0OjpFbmRwb2ludEFjY2VzcycsXG4gICAgICAnQVdTOjpSZWRzaGlmdDo6RW5kcG9pbnRBdXRob3JpemF0aW9uJyxcbiAgICAgICdBV1M6OlJlZHNoaWZ0OjpFdmVudFN1YnNjcmlwdGlvbicsXG4gICAgICAnQVdTOjpSZWRzaGlmdDo6U2NoZWR1bGVkQWN0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gUm91dGU1M1xuICAgICAgJ0FXUzo6Um91dGU1Mzo6RE5TU0VDJyxcbiAgICAgICdBV1M6OlJvdXRlNTM6OkhlYWx0aENoZWNrJyxcbiAgICAgICdBV1M6OlJvdXRlNTM6Okhvc3RlZFpvbmUnLFxuICAgICAgJ0FXUzo6Um91dGU1Mzo6S2V5U2lnbmluZ0tleScsXG4gICAgICAnQVdTOjpSb3V0ZTUzOjpSZWNvcmRTZXQnLFxuICAgICAgJ0FXUzo6Um91dGU1Mzo6UmVjb3JkU2V0R3JvdXAnLFxuICAgICAgXG4gICAgICAvLyBSb3V0ZTUzUmVzb2x2ZXJcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6RmlyZXdhbGxEb21haW5MaXN0JyxcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6RmlyZXdhbGxSdWxlR3JvdXAnLFxuICAgICAgJ0FXUzo6Um91dGU1M1Jlc29sdmVyOjpGaXJld2FsbFJ1bGVHcm91cEFzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6UmVzb2x2ZXJDb25maWcnLFxuICAgICAgJ0FXUzo6Um91dGU1M1Jlc29sdmVyOjpSZXNvbHZlckROU1NFQ0NvbmZpZycsXG4gICAgICAnQVdTOjpSb3V0ZTUzUmVzb2x2ZXI6OlJlc29sdmVyUXVlcnlMb2dnaW5nQ29uZmlnJyxcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6UmVzb2x2ZXJRdWVyeUxvZ2dpbmdDb25maWdBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpSb3V0ZTUzUmVzb2x2ZXI6OlJlc29sdmVyUnVsZScsXG4gICAgICAnQVdTOjpSb3V0ZTUzUmVzb2x2ZXI6OlJlc29sdmVyUnVsZUFzc29jaWF0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gUzNcbiAgICAgICdBV1M6OlMzOjpBY2Nlc3NQb2ludCcsXG4gICAgICAnQVdTOjpTMzo6QnVja2V0UG9saWN5JyxcbiAgICAgICdBV1M6OlMzOjpNdWx0aVJlZ2lvbkFjY2Vzc1BvaW50JyxcbiAgICAgICdBV1M6OlMzOjpNdWx0aVJlZ2lvbkFjY2Vzc1BvaW50UG9saWN5JyxcbiAgICAgICdBV1M6OlMzOjpTdG9yYWdlTGVucycsXG4gICAgICBcbiAgICAgIC8vIFNEQlxuICAgICAgJ0FXUzo6U0RCOjpEb21haW4nLFxuICAgICAgXG4gICAgICAvLyBTZWNyZXRzTWFuYWdlclxuICAgICAgJ0FXUzo6U2VjcmV0c01hbmFnZXI6OlJlc291cmNlUG9saWN5JyxcbiAgICAgICdBV1M6OlNlY3JldHNNYW5hZ2VyOjpSb3RhdGlvblNjaGVkdWxlJyxcbiAgICAgICdBV1M6OlNlY3JldHNNYW5hZ2VyOjpTZWNyZXRUYXJnZXRBdHRhY2htZW50JyxcbiAgICAgIFxuICAgICAgLy8gU2VjdXJpdHlIdWJcbiAgICAgICdBV1M6OlNlY3VyaXR5SHViOjpIdWInLFxuICAgICAgXG4gICAgICAvLyBTZXJ2aWNlQ2F0YWxvZ1xuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OkFjY2VwdGVkUG9ydGZvbGlvU2hhcmUnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OkxhdW5jaE5vdGlmaWNhdGlvbkNvbnN0cmFpbnQnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OkxhdW5jaFJvbGVDb25zdHJhaW50JyxcbiAgICAgICdBV1M6OlNlcnZpY2VDYXRhbG9nOjpMYXVuY2hUZW1wbGF0ZUNvbnN0cmFpbnQnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlBvcnRmb2xpb1ByaW5jaXBhbEFzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OlNlcnZpY2VDYXRhbG9nOjpQb3J0Zm9saW9Qcm9kdWN0QXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlBvcnRmb2xpb1NoYXJlJyxcbiAgICAgICdBV1M6OlNlcnZpY2VDYXRhbG9nOjpSZXNvdXJjZVVwZGF0ZUNvbnN0cmFpbnQnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlNlcnZpY2VBY3Rpb24nLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlNlcnZpY2VBY3Rpb25Bc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6U3RhY2tTZXRDb25zdHJhaW50JyxcbiAgICAgICdBV1M6OlNlcnZpY2VDYXRhbG9nOjpUYWdPcHRpb24nLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlRhZ09wdGlvbkFzc29jaWF0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gU0VTXG4gICAgICAnQVdTOjpTRVM6OkNvbmZpZ3VyYXRpb25TZXQnLFxuICAgICAgJ0FXUzo6U0VTOjpDb25maWd1cmF0aW9uU2V0RXZlbnREZXN0aW5hdGlvbicsXG4gICAgICAnQVdTOjpTRVM6OkNvbnRhY3RMaXN0JyxcbiAgICAgICdBV1M6OlNFUzo6RGVkaWNhdGVkSXBQb29sJyxcbiAgICAgICdBV1M6OlNFUzo6RW1haWxJZGVudGl0eScsXG4gICAgICAnQVdTOjpTRVM6OlJlY2VpcHRGaWx0ZXInLFxuICAgICAgJ0FXUzo6U0VTOjpSZWNlaXB0UnVsZScsXG4gICAgICAnQVdTOjpTRVM6OlJlY2VpcHRSdWxlU2V0JyxcbiAgICAgICdBV1M6OlNFUzo6VGVtcGxhdGUnLFxuICAgICAgJ0FXUzo6U0VTOjpWZG1BdHRyaWJ1dGVzJyxcbiAgICAgIFxuICAgICAgLy8gU05TXG4gICAgICAnQVdTOjpTTlM6OlN1YnNjcmlwdGlvbicsXG4gICAgICAnQVdTOjpTTlM6OlRvcGljUG9saWN5JyxcbiAgICAgIFxuICAgICAgLy8gU1FTXG4gICAgICAnQVdTOjpTUVM6OlF1ZXVlUG9saWN5JyxcbiAgICAgIFxuICAgICAgLy8gU1NNXG4gICAgICAnQVdTOjpTU006OkFzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OlNTTTo6RG9jdW1lbnQnLFxuICAgICAgJ0FXUzo6U1NNOjpNYWludGVuYW5jZVdpbmRvdycsXG4gICAgICAnQVdTOjpTU006Ok1haW50ZW5hbmNlV2luZG93VGFyZ2V0JyxcbiAgICAgICdBV1M6OlNTTTo6TWFpbnRlbmFuY2VXaW5kb3dUYXNrJyxcbiAgICAgICdBV1M6OlNTTTo6UGFyYW1ldGVyJyxcbiAgICAgICdBV1M6OlNTTTo6UGF0Y2hCYXNlbGluZScsXG4gICAgICAnQVdTOjpTU006OlJlc291cmNlRGF0YVN5bmMnLFxuICAgICAgJ0FXUzo6U1NNOjpSZXNvdXJjZVBvbGljeScsXG4gICAgICBcbiAgICAgIC8vIFNTT1xuICAgICAgJ0FXUzo6U1NPOjpBc3NpZ25tZW50JyxcbiAgICAgICdBV1M6OlNTTzo6SW5zdGFuY2VBY2Nlc3NDb250cm9sQXR0cmlidXRlQ29uZmlndXJhdGlvbicsXG4gICAgICAnQVdTOjpTU086OlBlcm1pc3Npb25TZXQnLFxuICAgICAgXG4gICAgICAvLyBTdGVwRnVuY3Rpb25zXG4gICAgICAnQVdTOjpTdGVwRnVuY3Rpb25zOjpBY3Rpdml0eScsXG4gICAgICBcbiAgICAgIC8vIFdBRi9XQUZ2MlxuICAgICAgJ0FXUzo6V0FGOjpCeXRlTWF0Y2hTZXQnLFxuICAgICAgJ0FXUzo6V0FGOjpJUFNldCcsXG4gICAgICAnQVdTOjpXQUY6OlJ1bGUnLFxuICAgICAgJ0FXUzo6V0FGOjpTaXplQ29uc3RyYWludFNldCcsXG4gICAgICAnQVdTOjpXQUY6OlNxbEluamVjdGlvbk1hdGNoU2V0JyxcbiAgICAgICdBV1M6OldBRjo6V2ViQUNMJyxcbiAgICAgICdBV1M6OldBRjo6WHNzTWF0Y2hTZXQnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OkJ5dGVNYXRjaFNldCcsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6R2VvTWF0Y2hTZXQnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OklQU2V0JyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpSYXRlQmFzZWRSdWxlJyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpSZWdleFBhdHRlcm5TZXQnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OlJ1bGUnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OlNpemVDb25zdHJhaW50U2V0JyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpTcWxJbmplY3Rpb25NYXRjaFNldCcsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6V2ViQUNMJyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpXZWJBQ0xBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6WHNzTWF0Y2hTZXQnLFxuICAgICAgJ0FXUzo6V0FGdjI6OklQU2V0JyxcbiAgICAgICdBV1M6OldBRnYyOjpMb2dnaW5nQ29uZmlndXJhdGlvbicsXG4gICAgICAnQVdTOjpXQUZ2Mjo6UmVnZXhQYXR0ZXJuU2V0JyxcbiAgICAgICdBV1M6OldBRnYyOjpSdWxlR3JvdXAnLFxuICAgICAgJ0FXUzo6V0FGdjI6OldlYkFDTCcsXG4gICAgICAnQVdTOjpXQUZ2Mjo6V2ViQUNMQXNzb2NpYXRpb24nXG4gICAgXTtcbiAgICBcbiAgICBpZiAodW5zdXBwb3J0ZWRUeXBlcy5pbmNsdWRlcyhyZXNvdXJjZS5jZm5SZXNvdXJjZVR5cGUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIFxuICAgIC8vIEFkZCBhIHN5bnRoZXNpcyBob29rIHRvIG1vZGlmeSB0aGUgQ2xvdWRGb3JtYXRpb24gdGVtcGxhdGVcbiAgICBjb25zdCBzdGFjayA9IFN0YWNrLm9mKHJlc291cmNlKTtcbiAgICBjb25zdCBsb2dpY2FsSWQgPSBzdGFjay5nZXRMb2dpY2FsSWQocmVzb3VyY2UpO1xuICAgIFxuICAgIC8vIFVzZSBhZGRUcmFuc2Zvcm0gdG8gYWRkIHRhZ3MgZHVyaW5nIHN5bnRoZXNpc1xuICAgIHJlc291cmNlLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ1RhZ3MnLCB0aGlzLmJ1aWxkVGFnc0FycmF5KHJlc291cmNlKSk7XG4gIH1cbiAgXG4gIHByaXZhdGUgYnVpbGRUYWdzQXJyYXkocmVzb3VyY2U6IENmblJlc291cmNlKTogYW55W10ge1xuICAgIGNvbnN0IHRhZ01hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgXG4gICAgLy8gR2V0IGFueSBleGlzdGluZyB0YWdzIGlmIHRoZXkgZXhpc3RcbiAgICBjb25zdCBleGlzdGluZ1RhZ3MgPSAocmVzb3VyY2UgYXMgYW55KS50YWdzIHx8IFtdO1xuICAgIFxuICAgIC8vIFByb2Nlc3MgZXhpc3RpbmcgdGFncyBpZiB0aGV5J3JlIGluIGFycmF5IGZvcm1hdFxuICAgIGlmIChBcnJheS5pc0FycmF5KGV4aXN0aW5nVGFncykpIHtcbiAgICAgIGV4aXN0aW5nVGFncy5mb3JFYWNoKCh0YWc6IGFueSkgPT4ge1xuICAgICAgICBpZiAodGFnICYmIHR5cGVvZiB0YWcgPT09ICdvYmplY3QnICYmICdLZXknIGluIHRhZyAmJiAnVmFsdWUnIGluIHRhZykge1xuICAgICAgICAgIHRhZ01hcC5zZXQodGFnLktleSwgdGFnLlZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YWcgJiYgdHlwZW9mIHRhZyA9PT0gJ29iamVjdCcgJiYgJ2tleScgaW4gdGFnICYmICd2YWx1ZScgaW4gdGFnKSB7XG4gICAgICAgICAgdGFnTWFwLnNldCh0YWcua2V5LCB0YWcudmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgXG4gICAgLy8gQ2hlY2sgZm9yIGRpcmVjdCB0YWdzIGluIG1ldGFkYXRhXG4gICAgY29uc3QgbWV0YWRhdGEgPSByZXNvdXJjZS5ub2RlLm1ldGFkYXRhO1xuICAgIGNvbnN0IGRpcmVjdFRhZ3NNZXRhZGF0YSA9IG1ldGFkYXRhLmZpbHRlcihtID0+IG0udHlwZSA9PT0gJ2ZqYWxsOmRpcmVjdC10YWdzJyk7XG4gICAgZGlyZWN0VGFnc01ldGFkYXRhLmZvckVhY2gobSA9PiB7XG4gICAgICBpZiAobS5kYXRhICYmIHR5cGVvZiBtLmRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIE9iamVjdC5lbnRyaWVzKG0uZGF0YSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHRhZ01hcC5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBcbiAgICAvLyBBZGQgcmVxdWlyZWQgdGFncyAob3ZlcndyaXRpbmcgaWYgdGhleSBleGlzdClcbiAgICBPYmplY3QuZW50cmllcyh0aGlzLnJlcXVpcmVkVGFncykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICB0YWdNYXAuc2V0KGtleSwgdmFsdWUpO1xuICAgIH0pO1xuICAgIFxuICAgIC8vIENvbnZlcnQgdG8gQ2xvdWRGb3JtYXRpb24gZm9ybWF0XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGFnTWFwLmVudHJpZXMoKSkubWFwKChba2V5LCB2YWx1ZV0pID0+ICh7XG4gICAgICBLZXk6IGtleSxcbiAgICAgIFZhbHVlOiB2YWx1ZVxuICAgIH0pKTtcbiAgfVxufVxuIl19
|
|
481
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmRUYWdzQXNwZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vbGliL3V0aWxzL3N0YW5kYXJkVGFnc0FzcGVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBMEQ7QUFHMUQ7Ozs7Ozs7R0FPRztBQUNILE1BQWEsa0JBQWtCO0lBSTdCLFlBQVksWUFBdUM7UUFGbEMsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBYyxDQUFDO1FBRzNELElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO0lBQ25DLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBZ0I7UUFDcEIsNEJBQTRCO1FBQzVCLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNuQyxPQUFPO1FBQ1QsQ0FBQztRQUVELGtDQUFrQztRQUNsQyxJQUFJLHlCQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQW1CLENBQUMsQ0FBQztZQUM3QyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqQyxDQUFDO0lBQ0gsQ0FBQztJQUVPLGtCQUFrQixDQUFDLFFBQXFCO1FBQzlDLDZGQUE2RjtRQUM3RixJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDbEQsT0FBTztRQUNULENBQUM7UUFFRCw4RUFBOEU7UUFDOUUsK0VBQStFO1FBQy9FLE1BQU0sZ0JBQWdCLEdBQUc7WUFDdkIsTUFBTTtZQUNOLGtDQUFrQztZQUVsQyxjQUFjO1lBQ2QsMEJBQTBCO1lBQzFCLGtDQUFrQztZQUNsQyw2QkFBNkI7WUFDN0Isb0NBQW9DO1lBQ3BDLHVDQUF1QztZQUN2QyxrQ0FBa0M7WUFDbEMseUJBQXlCO1lBQ3pCLHdCQUF3QjtZ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QkFDSCxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILGdEQUFnRDtRQUNoRCxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ3pELE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBRUgsbUNBQW1DO1FBQ25DLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN6RCxHQUFHLEVBQUUsR0FBRztZQUNSLEtBQUssRUFBRSxLQUFLO1NBQ2IsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0NBQ0Y7QUFqaEJELGdEQWloQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXNwZWN0LCBDZm5SZXNvdXJjZSwgU3RhY2sgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IElDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIEFzcGVjdCB0byBlbmZvcmNlIGEgc3RhbmRhcmQgc2V0IG9mIHRhZ3Mgb24gZXZlcnkgdGFnLWNhcGFibGUgcmVzb3VyY2UgaW4gYSBjb25zdHJ1Y3QgdHJlZS5cbiAqIFxuICogVXBkYXRlZCBmb3IgQ0RLIHYyLjIwNi4wKyBjb21wYXRpYmlsaXR5OlxuICogLSBBdm9pZHMgdXNpbmcgYW55IHRhZ2dpbmcgQVBJcyBkdXJpbmcgYXNwZWN0IHZpc2l0YXRpb24gdG8gcHJldmVudCBpbmZpbml0ZSBsb29wc1xuICogLSBVc2VzIGEgc3ludGhlc2lzLXRpbWUgYXBwcm9hY2ggdG8gbW9kaWZ5IENsb3VkRm9ybWF0aW9uIHRlbXBsYXRlc1xuICogLSBNYWludGFpbnMgdGhlIHNhbWUgY2xlYW4gQVBJIGFuZCBhdXRvbWF0aWMgdGFnZ2luZyBiZW5lZml0c1xuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRUYWdzQXNwZWN0IGltcGxlbWVudHMgSUFzcGVjdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVxdWlyZWRUYWdzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9O1xuICBwcml2YXRlIHJlYWRvbmx5IHRhZ2dlZFJlc291cmNlcyA9IG5ldyBXZWFrU2V0PElDb25zdHJ1Y3Q+KCk7XG5cbiAgY29uc3RydWN0b3IocmVxdWlyZWRUYWdzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9KSB7XG4gICAgdGhpcy5yZXF1aXJlZFRhZ3MgPSByZXF1aXJlZFRhZ3M7XG4gIH1cblxuICB2aXNpdChub2RlOiBJQ29uc3RydWN0KTogdm9pZCB7XG4gICAgLy8gU2tpcCBpZiBhbHJlYWR5IHByb2Nlc3NlZFxuICAgIGlmICh0aGlzLnRhZ2dlZFJlc291cmNlcy5oYXMobm9kZSkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgXG4gICAgLy8gUHJvY2VzcyBMMSAoQ0ZOKSByZXNvdXJjZXMgb25seVxuICAgIGlmIChDZm5SZXNvdXJjZS5pc0NmblJlc291cmNlKG5vZGUpKSB7XG4gICAgICB0aGlzLnByb2Nlc3NDZm5SZXNvdXJjZShub2RlIGFzIENmblJlc291cmNlKTtcbiAgICAgIHRoaXMudGFnZ2VkUmVzb3VyY2VzLmFkZChub2RlKTtcbiAgICB9XG4gIH1cbiAgXG4gIHByaXZhdGUgcHJvY2Vzc0NmblJlc291cmNlKHJlc291cmNlOiBDZm5SZXNvdXJjZSk6IHZvaWQge1xuICAgIC8vIFNraXAgU2VjcmV0Um90YXRpb24gcmVzb3VyY2VzIGFzIHRoZXkgY3JlYXRlIG5lc3RlZCBzdGFja3Mgd2l0aCBkaWZmZXJlbnQgdGFnIHJlcXVpcmVtZW50c1xuICAgIGlmIChyZXNvdXJjZS5ub2RlLnBhdGguaW5jbHVkZXMoJ1NlY3JldFJvdGF0aW9uJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgXG4gICAgLy8gQ29tcHJlaGVuc2l2ZSBsaXN0IG9mIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGVzIHRoYXQgZG9uJ3Qgc3VwcG9ydCB0YWdzXG4gICAgLy8gVGhpcyBsaXN0IGlzIGJhc2VkIG9uIEFXUyBDbG91ZEZvcm1hdGlvbiBkb2N1bWVudGF0aW9uIGFuZCBrbm93biBsaW1pdGF0aW9uc1xuICAgIGNvbnN0IHVuc3VwcG9ydGVkVHlwZXMgPSBbXG4gICAgICAvLyBBQ01cbiAgICAgICdBV1M6OkNlcnRpZmljYXRlTWFuYWdlcjo6QWNjb3VudCcsXG4gICAgICBcbiAgICAgIC8vIEFQSSBHYXRld2F5XG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpBY2NvdW50JyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXk6OkJhc2VQYXRoTWFwcGluZycsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpEZXBsb3ltZW50JyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXk6OkRvY3VtZW50YXRpb25QYXJ0JyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXk6OkRvY3VtZW50YXRpb25WZXJzaW9uJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXk6OkdhdGV3YXlSZXNwb25zZScsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpNZXRob2QnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheTo6TW9kZWwnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheTo6UmVxdWVzdFZhbGlkYXRvcicsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5OjpSZXNvdXJjZScsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5VjI6OkFwaU1hcHBpbmcnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheVYyOjpBdXRob3JpemVyJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXlWMjo6RGVwbG95bWVudCcsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5VjI6OkludGVncmF0aW9uJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXlWMjo6SW50ZWdyYXRpb25SZXNwb25zZScsXG4gICAgICAnQVdTOjpBcGlHYXRld2F5VjI6Ok1vZGVsJyxcbiAgICAgICdBV1M6OkFwaUdhdGV3YXlWMjo6Um91dGUnLFxuICAgICAgJ0FXUzo6QXBpR2F0ZXdheVYyOjpSb3V0ZVJlc3BvbnNlJyxcbiAgICAgIFxuICAgICAgLy8gQXBwU3luY1xuICAgICAgJ0FXUzo6QXBwU3luYzo6RGF0YVNvdXJjZScsXG4gICAgICAnQVdTOjpBcHBTeW5jOjpGdW5jdGlvbkNvbmZpZ3VyYXRpb24nLFxuICAgICAgJ0FXUzo6QXBwU3luYzo6UmVzb2x2ZXInLFxuICAgICAgXG4gICAgICAvLyBBdGhlbmFcbiAgICAgICdBV1M6OkF0aGVuYTo6UHJlcGFyZWRTdGF0ZW1lbnQnLFxuICAgICAgXG4gICAgICAvLyBDbG91ZEZvcm1hdGlvblxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OkN1c3RvbVJlc291cmNlJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpNYWNybycsXG4gICAgICAnQVdTOjpDbG91ZEZvcm1hdGlvbjo6TW9kdWxlRGVmYXVsdFZlcnNpb24nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246Ok1vZHVsZVZlcnNpb24nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OlB1YmxpY1R5cGVWZXJzaW9uJyxcbiAgICAgICdBV1M6OkNsb3VkRm9ybWF0aW9uOjpQdWJsaXNoZXInLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OlJlc291cmNlRGVmYXVsdFZlcnNpb24nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OlJlc291cmNlVmVyc2lvbicsXG4gICAgICAnQVdTOjpDbG91ZEZvcm1hdGlvbjo6VHlwZUFjdGl2YXRpb24nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OldhaXRDb25kaXRpb24nLFxuICAgICAgJ0FXUzo6Q2xvdWRGb3JtYXRpb246OldhaXRDb25kaXRpb25IYW5kbGUnLFxuICAgICAgXG4gICAgICAvLyBDbG91ZFdhdGNoXG4gICAgICAnQVdTOjpDbG91ZFdhdGNoOjpBbGFybScsXG4gICAgICAnQVdTOjpDbG91ZFdhdGNoOjpBbm9tYWx5RGV0ZWN0b3InLFxuICAgICAgJ0FXUzo6Q2xvdWRXYXRjaDo6Q29tcG9zaXRlQWxhcm0nLFxuICAgICAgJ0FXUzo6Q2xvdWRXYXRjaDo6RGFzaGJvYXJkJyxcbiAgICAgICdBV1M6OkNsb3VkV2F0Y2g6Okluc2lnaHRSdWxlJyxcbiAgICAgICdBV1M6OkNsb3VkV2F0Y2g6Ok1ldHJpY1N0cmVhbScsXG4gICAgICBcbiAgICAgIC8vIENvZGVCdWlsZFxuICAgICAgJ0FXUzo6Q29kZUJ1aWxkOjpSZXBvcnRHcm91cCcsXG4gICAgICAnQVdTOjpDb2RlQnVpbGQ6OlNvdXJjZUNyZWRlbnRpYWwnLFxuICAgICAgXG4gICAgICAvLyBDb2RlRGVwbG95XG4gICAgICAnQVdTOjpDb2RlRGVwbG95OjpEZXBsb3ltZW50Q29uZmlnJyxcbiAgICAgIFxuICAgICAgLy8gQ29kZVBpcGVsaW5lXG4gICAgICAnQVdTOjpDb2RlUGlwZWxpbmU6OkN1c3RvbUFjdGlvblR5cGUnLFxuICAgICAgJ0FXUzo6Q29kZVBpcGVsaW5lOjpXZWJob29rJyxcbiAgICAgIFxuICAgICAgLy8gQ29nbml0b1xuICAgICAgJ0FXUzo6Q29nbml0bzo6SWRlbnRpdHlQb29sUm9sZUF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xDbGllbnQnLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xEb21haW4nLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xHcm91cCcsXG4gICAgICAnQVdTOjpDb2duaXRvOjpVc2VyUG9vbElkZW50aXR5UHJvdmlkZXInLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xSZXNvdXJjZVNlcnZlcicsXG4gICAgICAnQVdTOjpDb2duaXRvOjpVc2VyUG9vbFJpc2tDb25maWd1cmF0aW9uQXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpDb2duaXRvOjpVc2VyUG9vbFVJQ3VzdG9taXphdGlvbkF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6Q29nbml0bzo6VXNlclBvb2xVc2VyJyxcbiAgICAgICdBV1M6OkNvZ25pdG86OlVzZXJQb29sVXNlclRvR3JvdXBBdHRhY2htZW50JyxcbiAgICAgIFxuICAgICAgLy8gQ29uZmlnXG4gICAgICAnQVdTOjpDb25maWc6OkFnZ3JlZ2F0aW9uQXV0aG9yaXphdGlvbicsXG4gICAgICAnQVdTOjpDb25maWc6OkNvbmZpZ3VyYXRpb25BZ2dyZWdhdG9yJyxcbiAgICAgICdBV1M6OkNvbmZpZzo6Q29uZm9ybWFuY2VQYWNrJyxcbiAgICAgICdBV1M6OkNvbmZpZzo6T3JnYW5pemF0aW9uQ29uZm9ybWFuY2VQYWNrJyxcbiAgICAgICdBV1M6OkNvbmZpZzo6UmVtZWRpYXRpb25Db25maWd1cmF0aW9uJyxcbiAgICAgICdBV1M6OkNvbmZpZzo6U3RvcmVkUXVlcnknLFxuICAgICAgXG4gICAgICAvLyBEeW5hbW9EQlxuICAgICAgJ0FXUzo6RHluYW1vREI6Okdsb2JhbFRhYmxlJyxcbiAgICAgIFxuICAgICAgLy8gRUMyXG4gICAgICAnQVdTOjpFQzI6OkNhcGFjaXR5UmVzZXJ2YXRpb25GbGVldCcsXG4gICAgICAnQVdTOjpFQzI6OkNhcnJpZXJHYXRld2F5JyxcbiAgICAgICdBV1M6OkVDMjo6REhDUE9wdGlvbnMnLFxuICAgICAgJ0FXUzo6RUMyOjpFQzJGbGVldCcsXG4gICAgICAnQVdTOjpFQzI6OkVncmVzc09ubHlJbnRlcm5ldEdhdGV3YXknLFxuICAgICAgJ0FXUzo6RUMyOjpFSVBBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OkVuY2xhdmVDZXJ0aWZpY2F0ZUlhbVJvbGVBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OkZsb3dMb2cnLFxuICAgICAgJ0FXUzo6RUMyOjpHYXRld2F5Um91dGVUYWJsZUFzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OkVDMjo6SW5zdGFuY2VDb25uZWN0RW5kcG9pbnQnLFxuICAgICAgJ0FXUzo6RUMyOjpLZXlQYWlyJyxcbiAgICAgICdBV1M6OkVDMjo6TGF1bmNoVGVtcGxhdGUnLFxuICAgICAgJ0FXUzo6RUMyOjpOZXR3b3JrSW5zaWdodHNBY2Nlc3NTY29wZScsXG4gICAgICAnQVdTOjpFQzI6Ok5ldHdvcmtJbnNpZ2h0c0FjY2Vzc1Njb3BlQW5hbHlzaXMnLFxuICAgICAgJ0FXUzo6RUMyOjpOZXR3b3JrSW5zaWdodHNBbmFseXNpcycsXG4gICAgICAnQVdTOjpFQzI6Ok5ldHdvcmtJbnNpZ2h0c1BhdGgnLFxuICAgICAgJ0FXUzo6RUMyOjpOZXR3b3JrSW50ZXJmYWNlQXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpFQzI6Ok5ldHdvcmtJbnRlcmZhY2VQZXJtaXNzaW9uJyxcbiAgICAgICdBV1M6OkVDMjo6UGxhY2VtZW50R3JvdXAnLFxuICAgICAgJ0FXUzo6RUMyOjpSb3V0ZScsXG4gICAgICAnQVdTOjpFQzI6OlNlY3VyaXR5R3JvdXBFZ3Jlc3MnLFxuICAgICAgJ0FXUzo6RUMyOjpTZWN1cml0eUdyb3VwSW5ncmVzcycsXG4gICAgICAnQVdTOjpFQzI6OlN1Ym5ldENpZHJCbG9jaycsXG4gICAgICAnQVdTOjpFQzI6OlN1Ym5ldE5ldHdvcmtBY2xBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OlN1Ym5ldFJvdXRlVGFibGVBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5QXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5Q29ubmVjdCcsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5TXVsdGljYXN0RG9tYWluJyxcbiAgICAgICdBV1M6OkVDMjo6VHJhbnNpdEdhdGV3YXlNdWx0aWNhc3REb21haW5Bc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5TXVsdGljYXN0R3JvdXBNZW1iZXInLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheU11bHRpY2FzdEdyb3VwU291cmNlJyxcbiAgICAgICdBV1M6OkVDMjo6VHJhbnNpdEdhdGV3YXlQZWVyaW5nQXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5Um91dGUnLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGUnLFxuICAgICAgJ0FXUzo6RUMyOjpUcmFuc2l0R2F0ZXdheVJvdXRlVGFibGVBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpFQzI6OlRyYW5zaXRHYXRld2F5Um91dGVUYWJsZVByb3BhZ2F0aW9uJyxcbiAgICAgICdBV1M6OkVDMjo6VHJhbnNpdEdhdGV3YXlWcGNBdHRhY2htZW50JyxcbiAgICAgICdBV1M6OkVDMjo6VmVyaWZpZWRBY2Nlc3NFbmRwb2ludCcsXG4gICAgICAnQVdTOjpFQzI6OlZlcmlmaWVkQWNjZXNzR3JvdXAnLFxuICAgICAgJ0FXUzo6RUMyOjpWZXJpZmllZEFjY2Vzc0luc3RhbmNlJyxcbiAgICAgICdBV1M6OkVDMjo6VmVyaWZpZWRBY2Nlc3NUcnVzdFByb3ZpZGVyJyxcbiAgICAgICdBV1M6OkVDMjo6Vm9sdW1lQXR0YWNobWVudCcsXG4gICAgICAnQVdTOjpFQzI6OlZQQ0NpZHJCbG9jaycsXG4gICAgICAnQVdTOjpFQzI6OlZQQ0RIQ1BPcHRpb25zQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpWUENFbmRwb2ludENvbm5lY3Rpb25Ob3RpZmljYXRpb24nLFxuICAgICAgJ0FXUzo6RUMyOjpWUENFbmRwb2ludFNlcnZpY2UnLFxuICAgICAgJ0FXUzo6RUMyOjpWUENFbmRwb2ludFNlcnZpY2VQZXJtaXNzaW9ucycsXG4gICAgICAnQVdTOjpFQzI6OlZQQ0dhdGV3YXlBdHRhY2htZW50JyxcbiAgICAgICdBV1M6OkVDMjo6VlBOQ29ubmVjdGlvblJvdXRlJyxcbiAgICAgICdBV1M6OkVDMjo6VlBOR2F0ZXdheVJvdXRlUHJvcGFnYXRpb24nLFxuICAgICAgXG4gICAgICAvLyBFQ1JcbiAgICAgICdBV1M6OkVDUjo6UHVibGljUmVwb3NpdG9yeScsXG4gICAgICAnQVdTOjpFQ1I6OlB1bGxUaHJvdWdoQ2FjaGVSdWxlJyxcbiAgICAgICdBV1M6OkVDUjo6UmVnaXN0cnlQb2xpY3knLFxuICAgICAgJ0FXUzo6RUNSOjpSZXBsaWNhdGlvbkNvbmZpZ3VyYXRpb24nLFxuICAgICAgXG4gICAgICAvLyBFQ1NcbiAgICAgICdBV1M6OkVDUzo6QWNjb3VudFNldHRpbmcnLFxuICAgICAgJ0FXUzo6RUNTOjpDYXBhY2l0eVByb3ZpZGVyJyxcbiAgICAgICdBV1M6OkVDUzo6Q2x1c3RlckNhcGFjaXR5UHJvdmlkZXJBc3NvY2lhdGlvbnMnLFxuICAgICAgJ0FXUzo6RUNTOjpQcmltYXJ5VGFza1NldCcsXG4gICAgICAnQVdTOjpFQ1M6OlRhc2tTZXQnLFxuICAgICAgXG4gICAgICAvLyBFRlNcbiAgICAgICdBV1M6OkVGUzo6QWNjZXNzUG9pbnQnLFxuICAgICAgJ0FXUzo6RUZTOjpNb3VudFRhcmdldCcsXG4gICAgICBcbiAgICAgIC8vIEVLU1xuICAgICAgJ0FXUzo6RUtTOjpBZGRvbicsXG4gICAgICAnQVdTOjpFS1M6OkZhcmdhdGVQcm9maWxlJyxcbiAgICAgICdBV1M6OkVLUzo6SWRlbnRpdHlQcm92aWRlckNvbmZpZycsXG4gICAgICBcbiAgICAgIC8vIEVsYXN0aUNhY2hlXG4gICAgICAnQVdTOjpFbGFzdGlDYWNoZTo6UGFyYW1ldGVyR3JvdXAnLFxuICAgICAgJ0FXUzo6RWxhc3RpQ2FjaGU6OlNlY3VyaXR5R3JvdXAnLFxuICAgICAgJ0FXUzo6RWxhc3RpQ2FjaGU6OlNlY3VyaXR5R3JvdXBJbmdyZXNzJyxcbiAgICAgICdBV1M6OkVsYXN0aUNhY2hlOjpTdWJuZXRHcm91cCcsXG4gICAgICBcbiAgICAgIC8vIEVsYXN0aWNCZWFuc3RhbGtcbiAgICAgICdBV1M6OkVsYXN0aWNCZWFuc3RhbGs6OkFwcGxpY2F0aW9uVmVyc2lvbicsXG4gICAgICAnQVdTOjpFbGFzdGljQmVhbnN0YWxrOjpDb25maWd1cmF0aW9uVGVtcGxhdGUnLFxuICAgICAgXG4gICAgICAvLyBFbGFzdGljTG9hZEJhbGFuY2luZ1YyXG4gICAgICAnQVdTOjpFbGFzdGljTG9hZEJhbGFuY2luZ1YyOjpMaXN0ZW5lcicsXG4gICAgICAnQVdTOjpFbGFzdGljTG9hZEJhbGFuY2luZ1YyOjpMaXN0ZW5lckNlcnRpZmljYXRlJyxcbiAgICAgICdBV1M6OkVsYXN0aWNMb2FkQmFsYW5jaW5nVjI6Okxpc3RlbmVyUnVsZScsXG4gICAgICAnQVdTOjpFbGFzdGljTG9hZEJhbGFuY2luZ1YyOjpUYXJnZXRHcm91cEF0dGFjaG1lbnQnLFxuICAgICAgXG4gICAgICAvLyBFdmVudEJyaWRnZSAoRXZlbnRzKVxuICAgICAgJ0FXUzo6RXZlbnRzOjpBcGlEZXN0aW5hdGlvbicsXG4gICAgICAnQVdTOjpFdmVudHM6OkFyY2hpdmUnLFxuICAgICAgJ0FXUzo6RXZlbnRzOjpDb25uZWN0aW9uJyxcbiAgICAgICdBV1M6OkV2ZW50czo6RW5kcG9pbnQnLFxuICAgICAgJ0FXUzo6RXZlbnRzOjpFdmVudEJ1c1BvbGljeScsXG4gICAgICAnQVdTOjpFdmVudHM6OlJ1bGUnLFxuICAgICAgXG4gICAgICAvLyBGU3hcbiAgICAgICdBV1M6OkZTeDo6RGF0YVJlcG9zaXRvcnlBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpGU3g6OlNuYXBzaG90JyxcbiAgICAgICdBV1M6OkZTeDo6U3RvcmFnZVZpcnR1YWxNYWNoaW5lJyxcbiAgICAgICdBV1M6OkZTeDo6Vm9sdW1lJyxcbiAgICAgIFxuICAgICAgLy8gR2FtZUxpZnRcbiAgICAgICdBV1M6OkdhbWVMaWZ0OjpHYW1lU2VydmVyR3JvdXAnLFxuICAgICAgJ0FXUzo6R2FtZUxpZnQ6OkxvY2F0aW9uJyxcbiAgICAgIFxuICAgICAgLy8gR2x1ZVxuICAgICAgJ0FXUzo6R2x1ZTo6Q29ubmVjdGlvbicsXG4gICAgICAnQVdTOjpHbHVlOjpEYXRhYmFzZScsXG4gICAgICAnQVdTOjpHbHVlOjpEYXRhQ2F0YWxvZ0VuY3J5cHRpb25TZXR0aW5ncycsXG4gICAgICAnQVdTOjpHbHVlOjpQYXJ0aXRpb24nLFxuICAgICAgJ0FXUzo6R2x1ZTo6U2NoZW1hVmVyc2lvbicsXG4gICAgICAnQVdTOjpHbHVlOjpTY2hlbWFWZXJzaW9uTWV0YWRhdGEnLFxuICAgICAgJ0FXUzo6R2x1ZTo6U2VjdXJpdHlDb25maWd1cmF0aW9uJyxcbiAgICAgICdBV1M6OkdsdWU6OlRhYmxlJyxcbiAgICAgICdBV1M6OkdsdWU6OlVzZXJEZWZpbmVkRnVuY3Rpb24nLFxuICAgICAgXG4gICAgICAvLyBHdWFyZER1dHlcbiAgICAgICdBV1M6Okd1YXJkRHV0eTo6RGV0ZWN0b3InLFxuICAgICAgJ0FXUzo6R3VhcmREdXR5OjpGaWx0ZXInLFxuICAgICAgJ0FXUzo6R3VhcmREdXR5OjpJUFNldCcsXG4gICAgICAnQVdTOjpHdWFyZER1dHk6Ok1hc3RlcicsXG4gICAgICAnQVdTOjpHdWFyZER1dHk6Ok1lbWJlcicsXG4gICAgICAnQVdTOjpHdWFyZER1dHk6OlRocmVhdEludGVsU2V0JyxcbiAgICAgIFxuICAgICAgLy8gSUFNXG4gICAgICAnQVdTOjpJQU06OkFjY2Vzc0tleScsXG4gICAgICAnQVdTOjpJQU06Okdyb3VwJyxcbiAgICAgICdBV1M6OklBTTo6R3JvdXBQb2xpY3knLFxuICAgICAgJ0FXUzo6SUFNOjpJbnN0YW5jZVByb2ZpbGUnLFxuICAgICAgJ0FXUzo6SUFNOjpNYW5hZ2VkUG9saWN5JyxcbiAgICAgICdBV1M6OklBTTo6T0lEQ1Byb3ZpZGVyJyxcbiAgICAgICdBV1M6OklBTTo6UG9saWN5JyxcbiAgICAgICdBV1M6OklBTTo6Um9sZScsXG4gICAgICAnQVdTOjpJQU06OlJvbGVQb2xpY3knLFxuICAgICAgJ0FXUzo6SUFNOjpTQU1MUHJvdmlkZXInLFxuICAgICAgJ0FXUzo6SUFNOjpTZXJ2ZXJDZXJ0aWZpY2F0ZScsXG4gICAgICAnQVdTOjpJQU06OlNlcnZpY2VMaW5rZWRSb2xlJyxcbiAgICAgICdBV1M6OklBTTo6VXNlcicsXG4gICAgICAnQVdTOjpJQU06OlVzZXJQb2xpY3knLFxuICAgICAgJ0FXUzo6SUFNOjpVc2VyVG9Hcm91cEFkZGl0aW9uJyxcbiAgICAgICdBV1M6OklBTTo6VmlydHVhbE1GQURldmljZScsXG4gICAgICBcbiAgICAgIC8vIElvVFxuICAgICAgJ0FXUzo6SW9UOjpBY2NvdW50QXVkaXRDb25maWd1cmF0aW9uJyxcbiAgICAgICdBV1M6OklvVDo6QXV0aG9yaXplcicsXG4gICAgICAnQVdTOjpJb1Q6OkNlcnRpZmljYXRlJyxcbiAgICAgICdBV1M6OklvVDo6Q3VzdG9tTWV0cmljJyxcbiAgICAgICdBV1M6OklvVDo6RGltZW5zaW9uJyxcbiAgICAgICdBV1M6OklvVDo6RG9tYWluQ29uZmlndXJhdGlvbicsXG4gICAgICAnQVdTOjpJb1Q6OkZsZWV0TWV0cmljJyxcbiAgICAgICdBV1M6OklvVDo6Sm9iVGVtcGxhdGUnLFxuICAgICAgJ0FXUzo6SW9UOjpMb2dnaW5nJyxcbiAgICAgICdBV1M6OklvVDo6TWl0aWdhdGlvbkFjdGlvbicsXG4gICAgICAnQVdTOjpJb1Q6OlBvbGljeScsXG4gICAgICAnQVdTOjpJb1Q6OlBvbGljeVByaW5jaXBhbEF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6SW9UOjpQcm92aXNpb25pbmdUZW1wbGF0ZScsXG4gICAgICAnQVdTOjpJb1Q6OlJlc291cmNlU3BlY2lmaWNMb2dnaW5nJyxcbiAgICAgICdBV1M6OklvVDo6Um9sZUFsaWFzJyxcbiAgICAgICdBV1M6OklvVDo6U2NoZWR1bGVkQXVkaXQnLFxuICAgICAgJ0FXUzo6SW9UOjpTZWN1cml0eVByb2ZpbGUnLFxuICAgICAgJ0FXUzo6SW9UOjpUaGluZycsXG4gICAgICAnQVdTOjpJb1Q6OlRoaW5nR3JvdXAnLFxuICAgICAgJ0FXUzo6SW9UOjpUaGluZ1ByaW5jaXBhbEF0dGFjaG1lbnQnLFxuICAgICAgJ0FXUzo6SW9UOjpUaGluZ1R5cGUnLFxuICAgICAgJ0FXUzo6SW9UOjpUb3BpY1J1bGUnLFxuICAgICAgJ0FXUzo6SW9UOjpUb3BpY1J1bGVEZXN0aW5hdGlvbicsXG4gICAgICBcbiAgICAgIC8vIEtNU1xuICAgICAgJ0FXUzo6S01TOjpBbGlhcycsXG4gICAgICAnQVdTOjpLTVM6OkdyYW50JyxcbiAgICAgICdBV1M6OktNUzo6UmVwbGljYUtleScsXG4gICAgICBcbiAgICAgIC8vIExhbWJkYVxuICAgICAgJ0FXUzo6TGFtYmRhOjpDb2RlU2lnbmluZ0NvbmZpZycsXG4gICAgICAnQVdTOjpMYW1iZGE6OkV2ZW50SW52b2tlQ29uZmlnJyxcbiAgICAgICdBV1M6OkxhbWJkYTo6RXZlbnRTb3VyY2VNYXBwaW5nJyxcbiAgICAgICdBV1M6OkxhbWJkYTo6TGF5ZXJWZXJzaW9uJyxcbiAgICAgICdBV1M6OkxhbWJkYTo6TGF5ZXJWZXJzaW9uUGVybWlzc2lvbicsXG4gICAgICAnQVdTOjpMYW1iZGE6OlBlcm1pc3Npb24nLFxuICAgICAgJ0FXUzo6TGFtYmRhOjpQcm92aXNpb25lZENvbmN1cnJlbmN5Q29uZmlnJyxcbiAgICAgICdBV1M6OkxhbWJkYTo6VXJsJyxcbiAgICAgICdBV1M6OkxhbWJkYTo6VmVyc2lvbicsXG4gICAgICBcbiAgICAgIC8vIExvZ3NcbiAgICAgICdBV1M6OkxvZ3M6OkFjY291bnRQb2xpY3knLFxuICAgICAgJ0FXUzo6TG9nczo6RGVzdGluYXRpb24nLFxuICAgICAgJ0FXUzo6TG9nczo6TG9nR3JvdXAnLFxuICAgICAgJ0FXUzo6TG9nczo6TG9nU3RyZWFtJyxcbiAgICAgICdBV1M6OkxvZ3M6Ok1ldHJpY0ZpbHRlcicsXG4gICAgICAnQVdTOjpMb2dzOjpRdWVyeURlZmluaXRpb24nLFxuICAgICAgJ0FXUzo6TG9nczo6UmVzb3VyY2VQb2xpY3knLFxuICAgICAgJ0FXUzo6TG9nczo6U3Vic2NyaXB0aW9uRmlsdGVyJyxcbiAgICAgIFxuICAgICAgLy8gTWFjaWVcbiAgICAgICdBV1M6Ok1hY2llOjpBbGxvd0xpc3QnLFxuICAgICAgJ0FXUzo6TWFjaWU6OkN1c3RvbURhdGFJZGVudGlmaWVyJyxcbiAgICAgICdBV1M6Ok1hY2llOjpGaW5kaW5nc0ZpbHRlcicsXG4gICAgICAnQVdTOjpNYWNpZTo6U2Vzc2lvbicsXG4gICAgICBcbiAgICAgIC8vIE5lcHR1bmVcbiAgICAgICdBV1M6Ok5lcHR1bmU6OkRCQ2x1c3RlclBhcmFtZXRlckdyb3VwJyxcbiAgICAgICdBV1M6Ok5lcHR1bmU6OkRCUGFyYW1ldGVyR3JvdXAnLFxuICAgICAgJ0FXUzo6TmVwdHVuZTo6REJTdWJuZXRHcm91cCcsXG4gICAgICBcbiAgICAgIC8vIE9yZ2FuaXphdGlvbnNcbiAgICAgICdBV1M6Ok9yZ2FuaXphdGlvbnM6OkFjY291bnQnLFxuICAgICAgJ0FXUzo6T3JnYW5pemF0aW9uczo6T3JnYW5pemF0aW9uJyxcbiAgICAgICdBV1M6Ok9yZ2FuaXphdGlvbnM6Ok9yZ2FuaXphdGlvbmFsVW5pdCcsXG4gICAgICAnQVdTOjpPcmdhbml6YXRpb25zOjpQb2xpY3knLFxuICAgICAgJ0FXUzo6T3JnYW5pemF0aW9uczo6UmVzb3VyY2VQb2xpY3knLFxuICAgICAgXG4gICAgICAvLyBSRFNcbiAgICAgICdBV1M6OlJEUzo6REJDbHVzdGVyUGFyYW1ldGVyR3JvdXAnLFxuICAgICAgJ0FXUzo6UkRTOjpEQlBhcmFtZXRlckdyb3VwJyxcbiAgICAgICdBV1M6OlJEUzo6REJTZWN1cml0eUdyb3VwJyxcbiAgICAgICdBV1M6OlJEUzo6REJTZWN1cml0eUdyb3VwSW5ncmVzcycsXG4gICAgICAnQVdTOjpSRFM6OkRCU3VibmV0R3JvdXAnLFxuICAgICAgJ0FXUzo6UkRTOjpFdmVudFN1YnNjcmlwdGlvbicsXG4gICAgICAnQVdTOjpSRFM6Okdsb2JhbENsdXN0ZXInLFxuICAgICAgJ0FXUzo6UkRTOjpPcHRpb25Hcm91cCcsXG4gICAgICBcbiAgICAgIC8vIFJlZHNoaWZ0XG4gICAgICAnQVdTOjpSZWRzaGlmdDo6Q2x1c3RlclBhcmFtZXRlckdyb3VwJyxcbiAgICAgICdBV1M6OlJlZHNoaWZ0OjpDbHVzdGVyU2VjdXJpdHlHcm91cCcsXG4gICAgICAnQVdTOjpSZWRzaGlmdDo6Q2x1c3RlclNlY3VyaXR5R3JvdXBJbmdyZXNzJyxcbiAgICAgICdBV1M6OlJlZHNoaWZ0OjpDbHVzdGVyU3VibmV0R3JvdXAnLFxuICAgICAgJ0FXUzo6UmVkc2hpZnQ6OkVuZHBvaW50QWNjZXNzJyxcbiAgICAgICdBV1M6OlJlZHNoaWZ0OjpFbmRwb2ludEF1dGhvcml6YXRpb24nLFxuICAgICAgJ0FXUzo6UmVkc2hpZnQ6OkV2ZW50U3Vic2NyaXB0aW9uJyxcbiAgICAgICdBV1M6OlJlZHNoaWZ0OjpTY2hlZHVsZWRBY3Rpb24nLFxuICAgICAgXG4gICAgICAvLyBSb3V0ZTUzXG4gICAgICAnQVdTOjpSb3V0ZTUzOjpETlNTRUMnLFxuICAgICAgJ0FXUzo6Um91dGU1Mzo6SGVhbHRoQ2hlY2snLFxuICAgICAgJ0FXUzo6Um91dGU1Mzo6SG9zdGVkWm9uZScsXG4gICAgICAnQVdTOjpSb3V0ZTUzOjpLZXlTaWduaW5nS2V5JyxcbiAgICAgICdBV1M6OlJvdXRlNTM6OlJlY29yZFNldCcsXG4gICAgICAnQVdTOjpSb3V0ZTUzOjpSZWNvcmRTZXRHcm91cCcsXG4gICAgICBcbiAgICAgIC8vIFJvdXRlNTNSZXNvbHZlclxuICAgICAgJ0FXUzo6Um91dGU1M1Jlc29sdmVyOjpGaXJld2FsbERvbWFpbkxpc3QnLFxuICAgICAgJ0FXUzo6Um91dGU1M1Jlc29sdmVyOjpGaXJld2FsbFJ1bGVHcm91cCcsXG4gICAgICAnQVdTOjpSb3V0ZTUzUmVzb2x2ZXI6OkZpcmV3YWxsUnVsZUdyb3VwQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6Um91dGU1M1Jlc29sdmVyOjpSZXNvbHZlckNvbmZpZycsXG4gICAgICAnQVdTOjpSb3V0ZTUzUmVzb2x2ZXI6OlJlc29sdmVyRE5TU0VDQ29uZmlnJyxcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6UmVzb2x2ZXJRdWVyeUxvZ2dpbmdDb25maWcnLFxuICAgICAgJ0FXUzo6Um91dGU1M1Jlc29sdmVyOjpSZXNvbHZlclF1ZXJ5TG9nZ2luZ0NvbmZpZ0Fzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6UmVzb2x2ZXJSdWxlJyxcbiAgICAgICdBV1M6OlJvdXRlNTNSZXNvbHZlcjo6UmVzb2x2ZXJSdWxlQXNzb2NpYXRpb24nLFxuICAgICAgXG4gICAgICAvLyBTM1xuICAgICAgJ0FXUzo6UzM6OkFjY2Vzc1BvaW50JyxcbiAgICAgICdBV1M6OlMzOjpCdWNrZXRQb2xpY3knLFxuICAgICAgJ0FXUzo6UzM6Ok11bHRpUmVnaW9uQWNjZXNzUG9pbnQnLFxuICAgICAgJ0FXUzo6UzM6Ok11bHRpUmVnaW9uQWNjZXNzUG9pbnRQb2xpY3knLFxuICAgICAgJ0FXUzo6UzM6OlN0b3JhZ2VMZW5zJyxcbiAgICAgIFxuICAgICAgLy8gU0RCXG4gICAgICAnQVdTOjpTREI6OkRvbWFpbicsXG4gICAgICBcbiAgICAgIC8vIFNlY3JldHNNYW5hZ2VyXG4gICAgICAnQVdTOjpTZWNyZXRzTWFuYWdlcjo6UmVzb3VyY2VQb2xpY3knLFxuICAgICAgJ0FXUzo6U2VjcmV0c01hbmFnZXI6OlJvdGF0aW9uU2NoZWR1bGUnLFxuICAgICAgJ0FXUzo6U2VjcmV0c01hbmFnZXI6OlNlY3JldFRhcmdldEF0dGFjaG1lbnQnLFxuICAgICAgXG4gICAgICAvLyBTZWN1cml0eUh1YlxuICAgICAgJ0FXUzo6U2VjdXJpdHlIdWI6Okh1YicsXG4gICAgICBcbiAgICAgIC8vIFNlcnZpY2VDYXRhbG9nXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6QWNjZXB0ZWRQb3J0Zm9saW9TaGFyZScsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6TGF1bmNoTm90aWZpY2F0aW9uQ29uc3RyYWludCcsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6TGF1bmNoUm9sZUNvbnN0cmFpbnQnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OkxhdW5jaFRlbXBsYXRlQ29uc3RyYWludCcsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6UG9ydGZvbGlvUHJpbmNpcGFsQXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlBvcnRmb2xpb1Byb2R1Y3RBc3NvY2lhdGlvbicsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6UG9ydGZvbGlvU2hhcmUnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlJlc291cmNlVXBkYXRlQ29uc3RyYWludCcsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6U2VydmljZUFjdGlvbicsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6U2VydmljZUFjdGlvbkFzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OlNlcnZpY2VDYXRhbG9nOjpTdGFja1NldENvbnN0cmFpbnQnLFxuICAgICAgJ0FXUzo6U2VydmljZUNhdGFsb2c6OlRhZ09wdGlvbicsXG4gICAgICAnQVdTOjpTZXJ2aWNlQ2F0YWxvZzo6VGFnT3B0aW9uQXNzb2NpYXRpb24nLFxuICAgICAgXG4gICAgICAvLyBTRVNcbiAgICAgICdBV1M6OlNFUzo6Q29uZmlndXJhdGlvblNldCcsXG4gICAgICAnQVdTOjpTRVM6OkNvbmZpZ3VyYXRpb25TZXRFdmVudERlc3RpbmF0aW9uJyxcbiAgICAgICdBV1M6OlNFUzo6Q29udGFjdExpc3QnLFxuICAgICAgJ0FXUzo6U0VTOjpEZWRpY2F0ZWRJcFBvb2wnLFxuICAgICAgJ0FXUzo6U0VTOjpFbWFpbElkZW50aXR5JyxcbiAgICAgICdBV1M6OlNFUzo6UmVjZWlwdEZpbHRlcicsXG4gICAgICAnQVdTOjpTRVM6OlJlY2VpcHRSdWxlJyxcbiAgICAgICdBV1M6OlNFUzo6UmVjZWlwdFJ1bGVTZXQnLFxuICAgICAgJ0FXUzo6U0VTOjpUZW1wbGF0ZScsXG4gICAgICAnQVdTOjpTRVM6OlZkbUF0dHJpYnV0ZXMnLFxuICAgICAgXG4gICAgICAvLyBTTlNcbiAgICAgICdBV1M6OlNOUzo6U3Vic2NyaXB0aW9uJyxcbiAgICAgICdBV1M6OlNOUzo6VG9waWNQb2xpY3knLFxuICAgICAgXG4gICAgICAvLyBTUVNcbiAgICAgICdBV1M6OlNRUzo6UXVldWVQb2xpY3knLFxuICAgICAgXG4gICAgICAvLyBTU01cbiAgICAgICdBV1M6OlNTTTo6QXNzb2NpYXRpb24nLFxuICAgICAgJ0FXUzo6U1NNOjpEb2N1bWVudCcsXG4gICAgICAnQVdTOjpTU006Ok1haW50ZW5hbmNlV2luZG93JyxcbiAgICAgICdBV1M6OlNTTTo6TWFpbnRlbmFuY2VXaW5kb3dUYXJnZXQnLFxuICAgICAgJ0FXUzo6U1NNOjpNYWludGVuYW5jZVdpbmRvd1Rhc2snLFxuICAgICAgJ0FXUzo6U1NNOjpQYXJhbWV0ZXInLFxuICAgICAgJ0FXUzo6U1NNOjpQYXRjaEJhc2VsaW5lJyxcbiAgICAgICdBV1M6OlNTTTo6UmVzb3VyY2VEYXRhU3luYycsXG4gICAgICAnQVdTOjpTU006OlJlc291cmNlUG9saWN5JyxcbiAgICAgIFxuICAgICAgLy8gU1NPXG4gICAgICAnQVdTOjpTU086OkFzc2lnbm1lbnQnLFxuICAgICAgJ0FXUzo6U1NPOjpJbnN0YW5jZUFjY2Vzc0NvbnRyb2xBdHRyaWJ1dGVDb25maWd1cmF0aW9uJyxcbiAgICAgICdBV1M6OlNTTzo6UGVybWlzc2lvblNldCcsXG4gICAgICBcbiAgICAgIC8vIFN0ZXBGdW5jdGlvbnNcbiAgICAgICdBV1M6OlN0ZXBGdW5jdGlvbnM6OkFjdGl2aXR5JyxcbiAgICAgIFxuICAgICAgLy8gV0FGL1dBRnYyXG4gICAgICAnQVdTOjpXQUY6OkJ5dGVNYXRjaFNldCcsXG4gICAgICAnQVdTOjpXQUY6OklQU2V0JyxcbiAgICAgICdBV1M6OldBRjo6UnVsZScsXG4gICAgICAnQVdTOjpXQUY6OlNpemVDb25zdHJhaW50U2V0JyxcbiAgICAgICdBV1M6OldBRjo6U3FsSW5qZWN0aW9uTWF0Y2hTZXQnLFxuICAgICAgJ0FXUzo6V0FGOjpXZWJBQ0wnLFxuICAgICAgJ0FXUzo6V0FGOjpYc3NNYXRjaFNldCcsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6Qnl0ZU1hdGNoU2V0JyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpHZW9NYXRjaFNldCcsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6SVBTZXQnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OlJhdGVCYXNlZFJ1bGUnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OlJlZ2V4UGF0dGVyblNldCcsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6UnVsZScsXG4gICAgICAnQVdTOjpXQUZSZWdpb25hbDo6U2l6ZUNvbnN0cmFpbnRTZXQnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OlNxbEluamVjdGlvbk1hdGNoU2V0JyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpXZWJBQ0wnLFxuICAgICAgJ0FXUzo6V0FGUmVnaW9uYWw6OldlYkFDTEFzc29jaWF0aW9uJyxcbiAgICAgICdBV1M6OldBRlJlZ2lvbmFsOjpYc3NNYXRjaFNldCcsXG4gICAgICAnQVdTOjpXQUZ2Mjo6SVBTZXQnLFxuICAgICAgJ0FXUzo6V0FGdjI6OkxvZ2dpbmdDb25maWd1cmF0aW9uJyxcbiAgICAgICdBV1M6OldBRnYyOjpSZWdleFBhdHRlcm5TZXQnLFxuICAgICAgJ0FXUzo6V0FGdjI6OlJ1bGVHcm91cCcsXG4gICAgICAnQVdTOjpXQUZ2Mjo6V2ViQUNMJyxcbiAgICAgICdBV1M6OldBRnYyOjpXZWJBQ0xBc3NvY2lhdGlvbicsXG4gICAgICBcbiAgICAgIC8vIFNlcnZlcmxlc3NcbiAgICAgICdBV1M6OlNlcnZlcmxlc3M6OkFwaScsXG4gICAgICAnQVdTOjpTZXJ2ZXJsZXNzOjpBcHBsaWNhdGlvbicsXG4gICAgICAnQVdTOjpTZXJ2ZXJsZXNzOjpGdW5jdGlvbicsXG4gICAgICAnQVdTOjpTZXJ2ZXJsZXNzOjpIdHRwQXBpJyxcbiAgICAgICdBV1M6OlNlcnZlcmxlc3M6OkxheWVyVmVyc2lvbicsXG4gICAgICAnQVdTOjpTZXJ2ZXJsZXNzOjpTaW1wbGVUYWJsZScsXG4gICAgICAnQVdTOjpTZXJ2ZXJsZXNzOjpTdGF0ZU1hY2hpbmUnXG4gICAgXTtcbiAgICBcbiAgICBpZiAodW5zdXBwb3J0ZWRUeXBlcy5pbmNsdWRlcyhyZXNvdXJjZS5jZm5SZXNvdXJjZVR5cGUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIFxuICAgIC8vIEFkZCBhIHN5bnRoZXNpcyBob29rIHRvIG1vZGlmeSB0aGUgQ2xvdWRGb3JtYXRpb24gdGVtcGxhdGVcbiAgICBjb25zdCBzdGFjayA9IFN0YWNrLm9mKHJlc291cmNlKTtcbiAgICBjb25zdCBsb2dpY2FsSWQgPSBzdGFjay5nZXRMb2dpY2FsSWQocmVzb3VyY2UpO1xuICAgIFxuICAgIC8vIFVzZSBhZGRUcmFuc2Zvcm0gdG8gYWRkIHRhZ3MgZHVyaW5nIHN5bnRoZXNpc1xuICAgIHJlc291cmNlLmFkZFByb3BlcnR5T3ZlcnJpZGUoJ1RhZ3MnLCB0aGlzLmJ1aWxkVGFnc0FycmF5KHJlc291cmNlKSk7XG4gIH1cbiAgXG4gIHByaXZhdGUgYnVpbGRUYWdzQXJyYXkocmVzb3VyY2U6IENmblJlc291cmNlKTogYW55W10ge1xuICAgIGNvbnN0IHRhZ01hcCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmc+KCk7XG4gICAgXG4gICAgLy8gR2V0IGFueSBleGlzdGluZyB0YWdzIGlmIHRoZXkgZXhpc3RcbiAgICBjb25zdCBleGlzdGluZ1RhZ3MgPSAocmVzb3VyY2UgYXMgYW55KS50YWdzIHx8IFtdO1xuICAgIFxuICAgIC8vIFByb2Nlc3MgZXhpc3RpbmcgdGFncyBpZiB0aGV5J3JlIGluIGFycmF5IGZvcm1hdFxuICAgIGlmIChBcnJheS5pc0FycmF5KGV4aXN0aW5nVGFncykpIHtcbiAgICAgIGV4aXN0aW5nVGFncy5mb3JFYWNoKCh0YWc6IGFueSkgPT4ge1xuICAgICAgICBpZiAodGFnICYmIHR5cGVvZiB0YWcgPT09ICdvYmplY3QnICYmICdLZXknIGluIHRhZyAmJiAnVmFsdWUnIGluIHRhZykge1xuICAgICAgICAgIHRhZ01hcC5zZXQodGFnLktleSwgdGFnLlZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmICh0YWcgJiYgdHlwZW9mIHRhZyA9PT0gJ29iamVjdCcgJiYgJ2tleScgaW4gdGFnICYmICd2YWx1ZScgaW4gdGFnKSB7XG4gICAgICAgICAgdGFnTWFwLnNldCh0YWcua2V5LCB0YWcudmFsdWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgXG4gICAgLy8gQ2hlY2sgZm9yIGRpcmVjdCB0YWdzIGluIG1ldGFkYXRhXG4gICAgY29uc3QgbWV0YWRhdGEgPSByZXNvdXJjZS5ub2RlLm1ldGFkYXRhO1xuICAgIGNvbnN0IGRpcmVjdFRhZ3NNZXRhZGF0YSA9IG1ldGFkYXRhLmZpbHRlcihtID0+IG0udHlwZSA9PT0gJ2ZqYWxsOmRpcmVjdC10YWdzJyk7XG4gICAgZGlyZWN0VGFnc01ldGFkYXRhLmZvckVhY2gobSA9PiB7XG4gICAgICBpZiAobS5kYXRhICYmIHR5cGVvZiBtLmRhdGEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIE9iamVjdC5lbnRyaWVzKG0uZGF0YSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHRhZ01hcC5zZXQoa2V5LCB2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBcbiAgICAvLyBBZGQgcmVxdWlyZWQgdGFncyAob3ZlcndyaXRpbmcgaWYgdGhleSBleGlzdClcbiAgICBPYmplY3QuZW50cmllcyh0aGlzLnJlcXVpcmVkVGFncykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICB0YWdNYXAuc2V0KGtleSwgdmFsdWUpO1xuICAgIH0pO1xuICAgIFxuICAgIC8vIENvbnZlcnQgdG8gQ2xvdWRGb3JtYXRpb24gZm9ybWF0XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGFnTWFwLmVudHJpZXMoKSkubWFwKChba2V5LCB2YWx1ZV0pID0+ICh7XG4gICAgICBLZXk6IGtleSxcbiAgICAgIFZhbHVlOiB2YWx1ZVxuICAgIH0pKTtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fjall/components-infrastructure",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.49.1",
|
|
4
4
|
"bin": {
|
|
5
5
|
"infrastructure": "bin/infrastructure.js"
|
|
6
6
|
},
|
|
@@ -35,9 +35,8 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@aws-sdk/client-cost-explorer": "^3.717.0",
|
|
37
37
|
"@aws-sdk/client-organizations": "^3.716.0",
|
|
38
|
-
"@fjall/util": "^0.
|
|
38
|
+
"@fjall/util": "^0.49.1",
|
|
39
39
|
"@pepperize/cdk-organizations": "^0.7.135",
|
|
40
|
-
"aws-lambda": "^1.0.7",
|
|
41
40
|
"cdk-time-sleep": "^1.0.0",
|
|
42
41
|
"constructs": "^10.0.0",
|
|
43
42
|
"source-map-support": "^0.5.21",
|
|
@@ -46,7 +45,7 @@
|
|
|
46
45
|
"overrides": {
|
|
47
46
|
"@smithy/core": "2.5.5"
|
|
48
47
|
},
|
|
49
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "7414a7747a51a60c7196f8ffe4810aa9eeda5e94",
|
|
50
49
|
"peerDependencies": {
|
|
51
50
|
"aws-cdk": "^2.206.0",
|
|
52
51
|
"aws-cdk-lib": "^2.206.0",
|